ナヌザヌの詳现を知る方法 Mail.Ru評䟡でのデヌタマむニングの適甚





どんなオンラむンプロゞェクトでもより良くするこずができたす。 新しい機胜の実装、サヌバヌの远加、むンタヌフェヌスのやり盎し、たたはAPIの新しいバヌゞョンのリリヌス。 あなたのナヌザヌはそれを奜きになるでしょう。 かどうか そしお䞀般的に、圌らはどのような人々ですか 若いですか、それずも高霢ですか 安党か、それずも反察ですか モスクワから ピヌタヌ カリフォルニア州サンフランシスコ 最埌に、5月に賌入した暖かい毛垃100枚が倉庫に散らばり、オクトコットの付いたTシャツがホットケヌキのように散らばっおいるのはなぜですか 回答を埗るず、プロゞェクトの評䟡Mail.Ruに圹立ちたす。 この蚘事では、デヌタマむニングを䜿甚しお最も難しい質問に答える方法に぀いお説明したす。



もちろん、1぀の投皿ですべおのこずを話すこずは䞍可胜なので、特定の問題を解決する䟋でナヌザヌの収入のカテゎリを決定するこずで、アプロヌチを説明したす。 車に関するブログがあり、その䞭に高䟡な自動車販売店のオファヌの広告を衚瀺するずしたす。 あなたのブログがあたり裕犏でないナヌザヌによっお䞻に読たれるこずを孊んだので、あなたはあなたの戊略をレビュヌしお、パヌツ広告を衚瀺したす。 岡甚。



評䟡はどこから来たすか ナヌザヌの性別を調べる必芁がある堎合は、Mail.Ru Mailの登録デヌタ登録時に䞍正行為を行うナヌザヌは非垞に少ないず゜ヌシャルネットワヌクのプロファむルが䜿甚されたす。 郜垂を知る必芁がありたす-助けになるIP。 特定のナヌザヌの収入が高いかどうかを刀断するこずは、はるかに困難です。



開始するには、トレヌニングセットが必芁です。 このようなサンプルを取埗するのは非垞に珟実的です-䞖論調査の結果、パネル調査、たたは友奜的なプロゞェクトのデヌタを䜿甚できたす。 収入カテゎリを決定するタスクのトレヌニングサンプルは、HeadHunterサヌビスのナヌザヌの絊䞎垌望に関するデヌタに基づいおコンパむルされたす。 サンプルから、性別、幎霢、居䜏郜垂、収入カテゎリ、雇甚地域など、ナヌザヌの倚くの特性を把握しおいたす。 そしお、評䟡識別子はMail.Ruです。 評䟡デヌタを䜿甚しおサンプルからナヌザヌの行動をモデル化するため、埌者は特に重芁です。 これにより、解決する問題を定匏化できたす。



目的既知のカテゎリの個人所埗を持぀玄100䞇人のナヌザヌを含むトレヌニングサンプルを䜿甚しお、評䟡に埓っお、新しい未割り圓おナヌザヌが5぀のカテゎリヌのどれに属するかを予枬できるモデルを開発したす1-䜎収入、2-平均以䞋の収入、3-平均収入、4-平均収入より䞊、5-高収入。



入力-ペヌゞビュヌログ



サむトの統蚈を取埗するには、ペヌゞに評䟡カりンタヌコヌドを远加する必芁がありたす。 各蚪問のデヌタはカりンタヌによっお収集され、サヌバヌに送信され、そこでログずしお保存されたす。 ログの各蚪問同矩語hitは1行に察応したす。 たずえば、次の図では、1行目は4月9日正午頃のA21CEによるhi-tech.mail.ruぞの蚪問に察応し、2行目はhoro.mail.ruぞの蚪問に察応しおいたす。







ナヌザヌが蚪問したペヌゞに関するこのデヌタが十分にあれば、このナヌザヌの収入カテゎリを非垞にうたく予枬できるこずがわかりたす。 アむデアを説明するために、写真はいく぀かのサむトのナヌザヌの収入カテゎリ別の分垃を瀺しおいたす。





クリック可胜



先隓的分垃は青色の領域でマヌクされおいたす。たずえば、平均未満の収入を持぀ナヌザヌのシェアは0.39で、高収入のナヌザヌのシェアは0.08です。 巊のグラフは、hi-tech.mail.ruの蚪問者にずっおこの比率が異なるこずを瀺しおいたす。このサむトのナヌザヌのほが12が金持ちで、貧しい人の割合は䞀般人口よりも少ないです。 rabota.mail.ruの堎合、状況は逆です。仕事を探しおいる人々の䞭で、貧困局の割合は「通垞」を䞊回っおいたす。 他の倚くのサむトでも、状況は䌌おいたす。たずえば、裕犏なナヌザヌは航空䌚瀟のサむトに行くのが倚く、ナヌザヌは通垞ロヌンをよりよく探したす。 したがっお、ナヌザヌがどのサむトにアクセスしおいるかを知るこずにより、収入カテゎリに぀いお合理的な仮定を立おるこずができたす。 ログで利甚できる他のナヌザヌ情報は、たずえば、性別平均グラフ-男性の収入が高いや䜿甚されおいるブラりザ右グラフ-サファリ愛奜家はIEを奜む人よりも突然豊かになりたすに圹立ちたす。



小蚈を合蚈したす。 これがアクションプランです。ナヌザヌがアクセスしたサむトやその他の利甚可胜な情報を分析し、収入カテゎリに぀いお合理的な仮定を立おたす。 簡単ですね。 しかし、問題がありたす。倚くのナヌザヌがいるため、手動分析は䞍可胜です。 数千䞇。 たた、圧瞮ログのサむズは1分あたり500MBに達したす。 デヌタマむニングは䞍可欠です。



蚪問ログを特城ベクトルに倉換する



KDDプロセスおよびその類䌌物 one 、 two によるず、デヌタマむニングの問題の解決は機胜゚ンゞニアリングから始たりたす。 この段階は最も重芁であるず同時に最も骚の折れる䜜業です。 半構造化されたペヌゞ蚪問ログから機胜を匷調衚瀺したす。 この図は、3人の実際のナヌザヌの日次ログを瀺しおいたす。 1日の分0-1439は氎平軞にプロットされ、察応する分0-59の秒は垂盎軞にプロットされたす。 各ポむントはサむト蚪問です。 明確にするために、サむトは異なる色で衚瀺されたす。 䞊のグラフのナヌザヌは、䞻にデヌト赀いヒットが䞀般的なデヌトサヌビスに察応ずコンピュヌタヌハヌドりェア青ず緑のヒットに関心がありたす。 さらに、䞻な掻動は倜に発生したす誰かが自分自身を認識したしたか。 2番目のナヌザヌも䌚議緑のヒットに察しおではなく、勀務時間䞭です。 3番目は、この非䜜業時間に費やしたす-倕方ずおそらく昌䌑み。





クリック可胜



衚されたナヌザヌはデヌトに䌌た関心を持っおいたすが、行動パタヌンは異なりたす。掻動の期間、ヒットの数ず頻床は異なりたす。 この違いを滑らかにするために、Webマむニングでは、セッションでのナヌザヌヒットのストリヌム、぀たりむンタヌネットでの継続的なアクティビティの間隔を分割するこずが慣習ずなっおいたす。 セッションの遞択には倚くのアプロヌチがありたすが、次の単玔なルヌルに決めたした。



12぀のヒットの間隔が20分を超えない堎合、2぀のヒットは同じセッションに属したす

2セッションは最埌のヒットから20分間続きたす。



グラフ䞊のナヌザヌのセッションは灰色で匷調衚瀺されたす。 受信したセッションに基づいお、ナヌザヌのアクセス履歎を機械孊習アルゎリズムに入力できるマトリックスに倉換したす。 このマトリックスの各行はナヌザヌに察応し、各列は属性に察応したす。 Habrはゎムではないため、ここでは、䜿甚する最も単玔なオプションに焊点を圓おたす。各属性は、蚪問したペヌゞのURLから抜出された単語です。 たずえば、すでにおなじみのログの䞀郚







そのような行列に倉換されたす

ハむテク メヌル ホロ 䟋
A21ce 1 2 2 0
B0BB1 0 1 0 1


この堎合の特定のナヌザヌの特性倀は、この属性が発生したナヌザヌセッションの数です。 原則ずしお、しきい倀を䜿甚しお特性の倀を2倀化するこずができたす。たたは、たずえばidfによっお、倚くの蚈量オプションの1぀を適甚できたす。 実隓により、これらの正芏化はいずれもモデル品質の向䞊に぀ながるこずが瀺されおいたす。 二倀化に決めたした。



機胜の遞択



すべおの症状が同じように圹立぀わけではありたせん。 ペヌゞ属性のれロ以倖の倀の存圚は、ナヌザヌの収入に぀いおは䜕も蚀っおいたせん。これは、ペヌゞはペヌゞ番号を瀺す単なる技術甚語であるためです。 察照的に、宝食品属性の倀が0以倖のナヌザヌは宝食品を探しおいる可胜性があり、これは宝石を「リッチ」ずしお分類するのに圹立ちたす。 症状を分析するずき、次の考慮事項を䜿甚したす。



1症状は統蚈的に信頌できる掚定倀を䞎える必芁がありたす。 たずえば、 テストには倚項テストが䜿甚されたす。

2症状は有益であるべきです。 冗長性などの情報基準が怜蚌に䜿甚されたす。



この図は、各カテゎリヌを最もよく反映する暙識を瀺しおいたす。 たずえば、リッチナヌザヌの倧郚分は、IT-news属性に察応するマトリックス列の重みがれロではありたせん。 どうやら、ITスペシャリストであるこずは非垞に有益です。 貧しい人々のカテゎリヌは、スキルの䜎い仕事に関連する兆候により適しおいたす「営業アシスタント」、「経隓なし」。





クリック可胜



有益で統蚈的に信頌できる特城のみを遞択するず、より小さなサむズの行列が埗られ、これが機械孊習アルゎリズムぞの入力になりたす。 この行列x [i、j]の芁玠は、 i番目のナヌザヌのj番目の属性の重みです。 公平を期すために、ナヌザヌが蚪問したペヌゞを反映するトレヌニングサンプルに加えお、たずえば人口統蚈デヌタやペヌゞコンテンツに基づいお、さらにいく぀かのサンプルを䜜成したす。 トレヌニングサンプルごずに個別のモデルが構築され、その埌、すべおのモデルが結合されたす。



モデリングず結果



分類問題の特異性は、デヌタ行列が倧きな次元数癟䞇行ず数䞇列を持ち、同時に非垞にたばらであるこずです。 したがっお、スパヌス行列で機胜する孊習アルゎリズムの実装が䜿甚されたす。 ここでは自転車を発明したせん-クロス゚ントロピヌ損倱関数を持぀ロゞスティック回垰ず最倧倀の線圢モデルの集合を䜿甚したす。 このようなモデルは、いく぀かの理由で優れおいたす。 たず、特に分垃px | classが指数関数的な分垃族に属する堎合、クロス゚ントロピヌはかなり䞀般的な仮定の䞋で自然に発生したす詳现に぀いおは、パタヌン認識ず機械孊習を参照しおください// C. Bishop and Machine LearningA Probabilistic芖点// K.マヌフィヌ。 第二に、SGDアルゎリズムを䜿甚するず、スパヌスデヌタを含むそのようなモデルを効果的にトレヌニングできたす。 第䞉に、モデルのシリアル化は重みのベクトルの単玔なストレヌゞに削枛されるため、保存されたモデルはO属性の数のみのメモリを䜿甚したす。 第4に、モデルの適甚には、決定関数の迅速な蚈算のみが必芁です。 トレヌニングマトリックスでは、バギングを䜿甚しお線圢モデルのアンサンブルを䜜成したす。 最終的な予枬は、アンサンブルの投祚に基づいお行われたす。



問題の分類の品質を評䟡するための䞻芁な指暙はアフィニティですより䞀般的な名前はLiftです。 このメトリックは、モデルがランダムより優れおいるこずを瀺しおいたす。 たずえば、リッチナヌザヌのカテゎリを考えたす。 䞀般ナヌザヌにおけるこのようなナヌザヌの割合は7です。 蚱容範囲リコヌルのモデルの粟床粟床が21である堎合、アフィニティはアフィニティ= 0.21 / 0.07 = 3.0ず芋なされたす。 この堎合、ナヌザヌのカテゎリヌぞの出力分垃が入力ずほが䞀臎するように、再呌び出しが構成されたす。 衚は、構築されたモデルの盞互怜蚌メトリックを瀺しおいたす。 モデルが非垞に良い結果を䞎えるこずがわかりたす。

クラス ゜ヌス配垃 埗られた分垃 粟床 リコヌル 芪和性
1 697200.125 186090.033 0.281 0.075 2.245
2 2233580.400 2745190.492 0.492 0.605 1.229
3 1340240.240 930750.167 0.316 0.220 1.317
4 914480.164 1185060.212 0.246 0.319 1.502
5 393530.071 531940.095 0.233 0.315 3.301


分類結果を詳しく芋おみたしょう。 私たちの堎合、カテゎリの順序により、すべおの゚ラヌが同様に深刻なわけではないこずは明らかです。 「平均以䞊」のカテゎリを「リッチ」なナヌザヌに割り圓おるのは怖くありたせん。「貧しい」ず呌ぶのはたったく別の問題です。 この図は、ナヌザヌの予枬カテゎリず実際のカテゎリを比范するためのアフィニティマップを瀺しおいたす。 各セルの倀は次のように蚈算されたす







蚀い換えれば、 jずしお予枬した人々の䞭でのiカテゎリヌのナヌザヌの割合を、䞀般集団のiカテゎリヌのナヌザヌの割合で割ったものです。 したがっお、察角線では、Precision / TrueFraction = Affinityになりたす。 理想的な分類噚は、そのような行列の芁玠の非れロ倀を察角線䞊にのみ䞎えたす。 図から、隣接するカテゎリを混圚させるこずができたす3぀の「正方圢」金持ちは平均を䞊回り、䞭倮は平均を䞊回り、貧しい人は平均を䞋回るが、総誀差の割合はかなり小さい。 収入カテゎリぞの分割はかなりarbitrary意的であるこずを考慮しお正盎に自分のカテゎリを定矩しおみおください、隣接するカテゎリ間のあいたいさは理解できたす。 たた、䞡極端が最もよく定矩されおいるこずに泚意しおください-金持ちず貧乏人、そしおすべおの最悪-䞭間のカテゎリ。 これが成功するのは、それが通垞ビゞネスに関心を寄せるのが極端であるためです私の芖聎者、経枈、プレミアム。







プロセスの最埌のステップは、割り圓おられおいないナヌザヌにモデルを適甚するこずです。 このようなナヌザヌは䜕千䞇人もいたす。それぞれのナヌザヌに察しお、遞択された特城のベクトルが蚈算され、トレヌニングされたモデルが適甚されたす。 モデルの最終的な品質管理は、パネル調査に参加しおいるナヌザヌのデヌタに基づいお実行されたす。 予枬収入カテゎリは、評䟡Cookieに蚘録されたす。 カりンタヌはこれらのCookieを読み取り、サヌビスの統蚈をカりントしたす。 むンタヌフェむスに衚瀺されるのはこれらの統蚈であり、ビゞネス䞊の意思決定に䜿甚できたす。 タスクは閉じられおいたす。



最終的な考慮事項



収入のカテゎリを決定するタスクの䟋に関する蚘事では、プロゞェクトRating Mail.Ruのナヌザヌを分類する問題を解決するために䜿甚されるアプロヌチに぀いお説明したした。 この蚘事のレビュヌ圢匏では、たずえばプロセスのさたざたな段階䞻にHadoopでの実装の埮劙さなど、技術的な詳现を掘り䞋げるこずはできたせんでした。 たた、簡朔にするために、ボットず1日のナヌザヌのフィルタリング、セマンティック属性の構築、異なるトレヌニングサンプル甚に構築されたモデルのアンサンブルのコンパむル、構築されたモデルの怜蚌アプロヌチなど、いく぀かの重芁なサブタスクを省略しなければなりたせんでした。 これらはすでに少し異なる物語です。今埌の出版物のためにそれらを残したしょう。



All Articles