VKユーザーの年齢、またはソーシャルグラフで他に何がわかるかを調べます

「あなたの友人が誰であるか教えてください。あなたが誰であるかを教えます。」

ユーリピデス紀元前480〜406年 e。



長い間、私はAPI VKを洗濯機の猫と見ていました-私たちの生活の多くの分野に浸透した最大のソーシャルネットワークの1つで、ある種の研究を行う機会に催眠術をかけられました。 そして、質問が生まれたら、ソーシャルネットワークのユーザーのソーシャルサークルによって彼の年齢を判断することは可能ですか?









隠された時代を知りたい人のために、以前は小さなハックがありました。 ユーザーの検索を使用し、目的のプロファイルがSERPに分類されるように狭いパラメーターを指定し、バイナリ検索を使用して年齢範囲を決定するだけです。 または、連絡先情報が卒業年を突然示していることがわかります。 また、スクリプトを記述する必要はありません。 しかし、隠された時代と間接的な情報は歪曲される可能性があり、最も重要なことは、この記事はまだ、より多くの個人情報を取得する方法に関するものではありません。 この記事では、ソーシャルグラフの側面の1つを分析することを提案しています。



プロフィールの接続を検討する際に最初に頭に浮かぶことの1つは、クラスメートとクラスメートの年齢を見てみましょう。このユーザーの大半は+-1歳です。 このため、普遍的な中等教育のおかげで。 注意点が1つだけあります。クラスメートを特定することです。 卒業から時間が経過すればするほど、年齢の輪がまだらになり始めます。 学校の友達は過去の生活にいるように見えますが、今では彼らは多くの新しい友達の間ではほとんど気づかないようです。 成熟した年齢の人々のプロファイルは、彼らが研究したフローを理解することができますか?



だから、クラスメートとクラスメートのサブセットを決定するとして、ユーザーの年齢を決定するタスクを見てみましょう。 つまり、年齢がプロファイルの年齢にほぼ相当する特定の数のクラスメートが友人にいると仮定しました。 もちろん例外もありますが、まれです。 人は10年間ベルからベルへと学校に通い、この期間中に多くの社会的接触が確立されました。 要するに、誰もがお互いを知っているが、この社会的もつれでの年齢の広がりは最小限である。 将来、人が他のグループに参加する場合、原則として、仕事、スポーツ活動、または興味のあるクラブであるかどうかにかかわらず、それらの年齢の広がりは重要です。 この違いに基づいて、必要な社会的グループを特定しようとします。



多くの友人とVKプロファイルの1つを見てみましょう。 friends.getクエリを使用して、ユーザーの友達リストを取得します。 指定した年齢のプロファイルのみを考慮し、年ごとのヒストグラムの形でタイムラインに配置します。 多くの友人を年次間隔に分割する方法にはわずかなニュアンスがあります。 結局のところ、クラスメートが1つの間隔を入力し、2つの隣接する間隔に分散しないようにする必要があります。 秋は、年を破るのが最善であることが実験的に確立されたため、黄色の季節に誕生日が設定されているユーザーは、すぐに2つの隣接する間隔に入ります。 つまり、9月から11月までの15か月の間隔が12か月単位で取得されます。



oXはユーザーの年齢、oYは特定の間隔内にあるユーザーの数です。



毎年最大数の友人がいる5年間の高原を観察します。 この5年間で1歳のグループを見つけることは、まったく明らかではありません。 実際、そのような写真は典型的ではありません。 多くの場合、クラスメート/クラスメートの誕生年は、より多くの友人によって際立っています。 しかし、困難なケースでは、各ユーザーが、年次グループ内の友情と、元のユーザーの他の友人とのつながりの数の比率を見つけましょう。 その後、各年のこの指標を平均します。 これを正規化された接続係数と呼びます。



oXはユーザーの年齢、oYは特定の間隔の正規化された接続係数です。



状況は変わっており、指導者は1年です。 均一な年齢のチームには大きな割合があります。したがって、ユーザーはその一部であるため、彼は同じ年齢であると期待する権利があります。 しかし、この集団の人が、クラスメートではなく、教師などの特別な役割を果たしているとしたらどうでしょうか? 確かに、教師/トレーナーの場合、狭い年齢範囲でつながりの密度が高いサブグループが存在する場合があります。 一部には、グループを選択するときに、最高の接続性ではなく、十分に大きい接続性を持つグループの中で最高の年齢である場合に、このケースを処理できます。 言い換えれば、人生の道を歩む人はまず普通の学生でなければならず、それから「均一な年齢のチーム」で際立った役割を果たすという論理を使用します。



より詳細な説明といくつかの式
グラフ現象で数値的に検出された表現。 F0は、年齢が計算されるユーザーの友人のセットを示します。 Fi-任意のプロファイルの多くの友人。 Fi、yは、年間隔yで指定された生年月日を持つプロフィールの友人のセットです。 i、yは、間隔プロファイルiの接続です。





Ciy= frac|F0 capFiy||F0 capFi|







yは、すべてのプロファイルの区間yにおける接続の正規化されていない係数です。





Cy= sumiF0yCiy







そして最後に、希望する誕生年:





 DeclareMathOperator argmaxargmaxyear of birth= argmaxy fracCy|F0y|Cy geq0.7 maxy inYCy









また、この接続またはその接続がどのタイプに属するかを検討するというアイデアもありました。 接続の種類が学校または大学の友人である場合は、重みを増やして検討してください。 そして、同僚、親s、その他すべての種類の場合、一般的にそのような関係を考慮しないでください。 ただし、そのような情報をダウンロードするクエリを使用する場合、待ち時間は5倍になります。さらに、接続の種類を指定することは一般的な方法ではないため、このような情報を要求するのは友人の少ないプロファイルのみです。



上記のアルゴリズムから、年齢を決定するアプローチの適用性の自然な限界が続きます。 ユーザーが学年の懐かしさに苦しんでおらず、クラスメート/クラスメートの友人がいない場合、別の方法を使用する必要があります。



ビジネスでこの混乱を試してみてはいかがですか? コミックサービスがVKグループ「Fortune Teller of the Age」に実装されました。 そこで、上記のアルゴリズムを使用して、閉じていないVKプロファイルにリンクをドロップすると、フレンドリーボットの年齢が失われます。



サービスはどのように配置されていますか
占い師の仕事の最初のリンクは、VKグループのメッセージメカニズムです。 グループ設定では、コールバックAPIは独自のサーバーに接続されます。 送信されるイベントの種類として、「受信メッセージ」を選択します。 このようにして、グループメッセージはサーバー上の要求に変わります。 あなたが私のようなフロントエンドと友達ではない場合、これは素晴らしいオプションです。 次に、サーバーからVK APIが呼び出され、問題のプロファイルのusers.getリクエストと、生年月日が既知のプロファイルのフレンドのfriends.getが要求されます。 実装には、アクセストークンVKアプリケーションが必要です。 ユーザーのアクセス許可のリクエストをロードしないように、ユーザー権限の確認を必要とするリクエストは使用しませんでした。 推定年齢が計算された後、グループからの要求に対する応答が生成され、占い師のユーザーはダイアログで答えを確認します。 安くて陽気な。



アルゴリズム自体の改善に関しては、特定の年齢のプロファイルからトレーニングデータセットを収集し、プロファイルフレンド間の年齢グラフの隣接行列などに基づいて回帰モデルをトレーニングし、さらに先へ進むことを妨げるものはありません。 サンプルが十分に大きい場合、結果はヒューリスティックよりも正確になると確信しています。 上で述べたように、私は基本的な考え方を確認したいので、この方向を発展させるつもりはありません。



結論として、私は倫理の側面に触れたいと思います。 私の意見では、Fortuneteller of Ageは私生活の境界にありますが、分析のためにオープンデータを使用しているため、まだそれを越えていません。 したがって、実際には、非表示のプロファイルを持つユーザーの場合、サービスは機能しません。



検索エンジンやSearchFaceなど、あらゆる種類の「年齢の占い師」という感じがあります。これらは社会的に透明な世界の最初の兆候にすぎません。 ある程度、これは基本への回帰と呼ぶことができます。 長い間、人間は小さな社会に存在し、そこでは誰もがお互いに見えていました。 開かれた評判は、社会規制のメカニズムの不可欠な部分でした。 はい。新しいツールにより、徐々にグローバルレベルでのみ、人の社会的相互作用を完全に表示できるようになります。 はい、他のツールと同様に、それは損害に使用することができます。 誰でもアクセスできるようにする必要がありますか? 知りません しかし、そのようなツールが限られた人々にしか利用できない場合、建設的な使用へのバランスは間違いなく変わらないでしょう。



All Articles