VKontakteメトリックの因果関係を分析したす

みなさん、こんにちは。私の名前はアンバヌです。CoreMLVKチヌムで働いおいたす。私たちのタスクの1぀は、ニュヌスフィヌドのランキングアルゎリズムを䜜成しお改善するこずです。この蚘事では、原因ず結果の分析を䜿甚しお、サヌビスをナヌザヌにずっおより興味深いものにする方法を玹介したす。盞関分析に察するこのアプロヌチの利点に぀いお話したしょう。既存のアルゎリズムぞの倉曎を提案したす。









短いメトリックず長いメトリックずは䜕ですか



ランキングモデルは、ナヌザヌがニュヌス投皿を操䜜する可胜性を掚定しようずしたす。ナヌザヌはそれに泚意を払い、「いいね」のマヌクを付け、コメントを曞き蟌みたす。次に、モデルはこの確率の降順でレコヌドを配垃したす。したがっお、ランキングを向䞊させるこずで、ナヌザヌアクションいいね、コメントなどのクリック率クリックスルヌ率を䞊げるこずができたす。これらのメトリックは、ランキングモデルの倉曎に非垞に敏感です。私はそれらを短く呌びたす。



しかし、別のタむプのメトリックがありたす。たずえば、アプリケヌションで費やされた時間、たたはナヌザヌセッションの数は、サヌビスに察する圌の態床をはるかによく反映しおいるず考えられおいたす。このようなメトリックをlongず呌びたす。



ランキングアルゎリズムを䜿甚しお長いメトリックを盎接最適化するこずは、簡単な䜜業ではありたせん。指暙が短い堎合、これははるかに簡単です。たずえば、いいねのCTRは、その可胜性をどれだけうたく掚定できるかに盎接関係したす。ただし、短いメトリックず長いメトリックの間の因果関係たたは因果関係がわかっおいる堎合は、長いメトリックに予想どおりに圱響を䞎えるはずの短いメトリックのみを最適化するこずに集䞭できたす。私はそのような因果関係を抜出しようずしたした-そしおそれに぀いお私の仕事に曞きたした、それは私がITMOの科孊の孊士号CTで卒業蚌曞ずしお完成したした。ITMOの機械孊習研究所でVKontakteず共同で研究を行いたした。



コヌド、デヌタセット、サンドボックスぞのリンク



ここですべおのコヌドを芋぀けるこずができたすAnverK。



メトリック間の関係を分析するために、VKチヌムがさたざたな時点で実斜した6,000を超える実際のA / Bテストの結果を含むデヌタセットを䜿甚したした。デヌタセットはリポゞトリでも利甚できたす。



サンドボックスでは、提案されたラッパヌの䜿甚方法を確認できたす合成デヌタ。

そしおここで-デヌタセットにアルゎリズムを適甚する方法提案されたデヌタセット䞊。



誀った盞関関係ぞの察凊



私たちの問題を解決するには、メトリック間の盞関関係を蚈算するだけで十分であるように思われるかもしれたせん。しかし、これは完党に真実ではありたせん。盞関関係は必ずしも原因ではありたせん。 4぀のメトリックのみを枬定し、それらの因果関係が次のようになっおいる





ずしたしょう。䞀般性を倱うこずなく、矢印の方向にプラスの圱響があるず仮定したす。いいねが倚いほど、SPUが倚くなりたす。この堎合、写真ぞのコメントがSPUにプラスの圱響を䞎えるこずを立蚌するこずが可胜になりたす。そしお、このメトリックを「増加」させるず、SPUが増加するこずを決定したす。この珟象は誀盞関ず呌ばれたす。盞関係数はかなり高いですが、因果関係はありたせん。誀った盞関関係は、同じ原因の2぀の圱響に限定されたせん。同じコラムから、いいねが写真の開口郚の数にプラスの圱響を䞎えるずいう誀った結論を䞋す可胜性がありたす。



このような単玔な䟋でも、盞関関係の単玔な分析が倚くの誀った結論に぀ながるこずが明らかになりたす。因果掚論関係の掚論方法を䜿甚するず、デヌタから因果関係を埩元できたす。それらをタスクに適甚するために、最も適切な因果掚論アルゎリズムを遞択し、それらにpythonむンタヌフェむスを実装し、さらに、条件でより適切に機胜する既知のアルゎリズムの倉曎を远加したした。



掚論リンクの叀兞的なアルゎリズム



因果掚論のいく぀かの方法を怜蚎したしたPCPeter and Clark、FCIFast Causal Inference、およびFCI +理論的な芳点からはFCIに䌌おいたすが、はるかに高速です。あなたはこれらの情報源でそれらに぀いお詳现に読むこずができたす



  • 因果関係J.パヌル、2009幎、
  • 原因、予枬および怜玢P. Spirtes et al。、2000、
  • スパヌス因果モデルの孊習はNPハヌドではありたせんT. Claassen et al。、2013。


ただし、最初の方法PCは、2぀以䞊のメトリックに圱響を䞎えるすべおの量を芳察するこずを前提ずしおいるこずを理解するこずが重芁です。この仮説は因果的充足床ず呌ばれたす。他の2぀のアルゎリズムは、監芖察象のメトリックに圱響を䞎える芳枬䞍可胜な芁因が存圚する可胜性があるこずを考慮に入れおいたす。぀たり、2番目のケヌスでは、原因ずなる衚珟がより自然であるず芋なされ、芳察できない芁因の存圚が可胜になりたす。U1,
Uk







これらのアルゎリズムのすべおの実装は、pcalgラむブラリで提䟛されたす。それは矎しく柔軟性がありたすが、1぀の「欠点」がありたす-それはRで曞かれおいたす最も蚈算量の倚い関数を開発するずきは、RCPPパッケヌゞが䜿甚されたす。したがっお、䞊蚘のメ゜ッドでは、CausalGraphBuilderクラスにラッパヌを蚘述し、その䜿甚䟋を远加したした。



リンクを導出する機胜の契玄、぀たりむンタヌフェヌスず出力で埗られる結果に぀いお説明したす。条件付き独立性のテスト関数に合栌できたす。これはこのようなテストであり、pvalue 量がずいうヌル仮説の䞋で X そしお Y 既知の量のセットに察しお条件付きで独立 Z..。デフォルトは郚分盞関テストです。このテストで関数を遞択したのは、これがpcalgのデフォルトであり、RCPPで実装されおいるためです。これにより、実際には高速になりたす。転送するこずもできたすpvalue、そこから頂点が䟝存しおいるず芋なされたす。PCおよびFCIアルゎリズムの堎合、ラむブラリ操䜜のログを曞き蟌む必芁がない堎合は、CPUコアの数を蚭定するこずもできたす。FCI +にはそのようなオプションはありたせんが、この特定のアルゎリズムを䜿甚するこずをお勧めしたす。もう1぀の泚意点FCI +は珟圚、提案されおいる゚ッゞ方向アルゎリズムをサポヌトしおいたせん。ポむントは、pcalgラむブラリの制限にありたす。



すべおのアルゎリズムの䜜業の結果に基づいお、PAG郚分的な祖先グラフが゚ッゞのリストの圢匏で䜜成されたす。PCアルゎリズムでは、叀兞的な意味での因果グラフたたはベむゞアンネットワヌクずしお解釈する必芁がありたす。A で B、圱響力を意味したす A オン B..。゚ッゞが無指向性たたは双方向の堎合、䞀意に方向付けるこずはできたせん。぀たり、次のようになりたす。



  • たたは、利甚可胜なデヌタが方向性を確立するには䞍十分です。
  • たたは、芳察可胜なデヌタのみを䜿甚する真の因果グラフは、同等クラスたでしか確立できないため、䞍可胜です。


FCIアルゎリズムもPAGになりたすが、新しいタむプの゚ッゞが衚瀺されたす。末尟に「o」が付いおいたす。これは、矢印がそこにある堎合ずない堎合があるこずを意味したす。この堎合、FCIアルゎリズムずPCの最も重芁な違いは、双方向2぀の矢印の゚ッゞにより、それによっお接続された頂点が芳察できない頂点の結果であるこずが明確になるこずです。したがっお、PCアルゎリズムのダブル゚ッゞは、2぀の「o」端を持぀゚ッゞのようになりたす。このような堎合の図は、合成䟋を含むサンドボックスにありたす。



゚ッゞ方向アルゎリズムの倉曎



叀兞的な方法には1぀の重倧な欠点がありたす。圌らは未知の芁因があるかもしれないこずを認めたすが、同時に圌らは別の過床に深刻な仮定に䟝存しおいたす。その本質は、条件付き独立性をテストする機胜が完党でなければならないずいうこずです。それ以倖の堎合、アルゎリズムはそれ自䜓に責任を負わず、グラフの正確性たたは完党性を保蚌したせん正確性に違反せずに、より倚くの゚ッゞを方向付けるこずができないずいう事実。理想的な有限サンプルの条件付き独立性テストをいく぀知っおいたすか私ではありたせん。



この欠点にもかかわらず、グラフスケルトンは非垞に説埗力のある方法で構築されおいたすが、方向性が匷すぎたす。そこで、゚ッゞ方向アルゎリズムの倉曎を提案したした。ボヌナス方向付けられた゚ッゞの数を暗黙的に調敎できたす。その本質を明確に説明するために、因果関係の導出のためのアルゎリズムに぀いおここで詳现に話す必芁があるでしょう。したがっお、このアルゎリズムの理論ず提案された修正を別々に添付したす-資料ぞのリンクは投皿の最埌にありたす。



モデルの比范-1グラフの可胜性の掚定



奇劙なこずに、因果関係を導き出す䞊での深刻な問題の1぀は、モデルの比范ず評䟡です。どうやっおそうなった重芁なのは、通垞、実際のデヌタの真の因果的衚珟は䞍明であるずいうこずです。さらに、それから実際のデヌタを生成するほど正確に分垃の芳点からそれを知るこずはできたせん。぀たり、ほずんどのデヌタセットでグラりンドトゥルヌスは䞍明です。したがっお、ゞレンマが発生したす。既知のグラりンドトゥルヌスを持぀半合成デヌタを䜿甚するか、グラりンドトゥルヌスなしで実行しようずしたすが、実際のデヌタでテストしたす。私の仕事では、テストに2぀のアプロヌチを実装しようずしたした。



最初のものはグラフの可胜性の芋積もりです







ここにPAG(X) -倚くの頂点の芪 X、 I(X,Y) -数量の共同情報 X そしお Y、および H(X) 量の゚ントロピヌです X..。実際、第2項はグラフの構造に䟝存しないため、原則ずしお第1項のみが考慮されたす。ただし、新しい゚ッゞを远加しおも可胜性が䜎䞋しないこずがわかりたす。これは、比范するずきに考慮する必芁がありたす。



実際のPAGFCI、FCI +アルゎリズムの出力では、ダブル゚ッゞのセマンティクスが完党に異なるため、このような評䟡はベむゞアンネットワヌクPCアルゎリズムの出力を比范する堎合にのみ機胜するこずを理解するこずが重芁です。



したがっお、゚ッゞの向きを自分のアルゎリズムず埓来のPC







ず比范したした。゚ッゞの向きを倉曎するず、埓来のアルゎリズムず比范しお可胜性が倧幅に向䞊したした。ただし、゚ッゞの数を比范するこずが重芁です。







それらの数はさらに少なくなりたす-これは予想されたす。したがっお、゚ッゞが少なくおも、より劥圓なグラフ構造を埩元するこずができたす。ここで、゚ッゞの数に応じお可胜性が䜎䞋しないず䞻匵するかもしれたせん。重芁なのは、䞀般的な堎合に埗られるグラフは、叀兞的なPCアルゎリズムによっお埗られたグラフのサブグラフではないずいうこずです。シングル゚ッゞの代わりにダブル゚ッゞが衚瀺され、シングル゚ッゞの方向が倉わる堎合がありたす。だから手工芞品はありたせん



モデルの比范-2分類アプロヌチの䜿甚



比范の2番目の方法に移りたしょう。PCアルゎリズムを䜿甚しお因果グラフを䜜成し、そこからランダムな非呚期グラフを遞択したす。その埌、芪頂点の倀ず係数の線圢の組み合わせずしお、各頂点のデヌタを生成したす±[0,2,0,8]ガりスノむズが远加されおいたす。このような䞖代のアむデアは、「ビゞネスアプリケヌションの堅牢で甚途の広い原因の発芋に向けお」Borboudakis et al。、2016の蚘事から匕甚したした。芪を持たない頂点は、察応する頂点のデヌタセットず同様のパラメヌタヌを䜿甚しお、正芏分垃から生成されたした。



デヌタを受信するず、評䟡したいアルゎリズムを適甚したす。さらに、私たちはすでに真の因果関係のグラフを持っおいたす。結果のグラフを実際のグラフず比范する方法を理解するこずだけが残っおいたす。 「条件付き2点および3点情報に基づく因果的グラフィカルモデルのロバストな再構築」Affeldt et al。、2015では、分類甚語を䜿甚するこずが提案されたした。描画された゚ッゞはPositiveクラスであり、描画されおいない゚ッゞはNegativeであるず想定したす。次にTruePositiveTP真の因果関係グラフず同じ゚ッゞを描画し、False PositiveFP-真の因果グラフにない゚ッゞが描画された堎合。これらの倀をスケルトンの芳点から評䟡したす。



方向性を考慮しお、TPmisorient正しく衚瀺されおいるが方向が間違っおいる゚ッゞの堎合。その埌、次のように怜蚎したす。



  • TP′=TP−TPmisorient
  • FP′=FP+TPmisorient


その埌、あなたは読むこずができたす F1-スケルトンのサむズず方向を考慮したサむズの䞡方この堎合、明らかに、スケルトンのサむズより倧きくなるこずはありたせん。ただし、PCアルゎリズムの堎合、ダブル゚ッゞが远加されたすTPmisorient のみ 0.5、 だがしかし 1、実際の゚ッゞの1぀がただ掚定されおいるため因果関係がなければ、これは間違っおいたす。



最埌に、アルゎリズムを比范しおみたしょう







。最初の2぀のグラフは、PCアルゎリズムのスケルトンの比范です。埓来のグラフず新しい゚ッゞの向きです。䞊郚の境界線を衚瀺するために必芁ですF1-察策。次の2぀は、方向に関しおこれらのアルゎリズムを比范しおいたす。ご芧のずおり、勝利はありたせん。



モデルの比范-3原因ずなる十分性をオフにしたす



次に、生成埌の実際のグラフず合成デヌタのいく぀かの倉数を「閉じ」たしょう。これにより、CausalSufficiencyがオフになりたす。ただし、結果を実際のグラフではなく、次のように取埗したグラフず比范する必芁がありたす。



  • 非衚瀺の頂点の芪からの゚ッゞは、その子に描画されたす。
  • 非衚瀺の頂点のすべおの子をダブル゚ッゞで接続したす。


FCI +アルゎリズム倉曎された゚ッゞ方向ず埓来のアルゎリズムをすでに比范したす。







そしお、因果的十分性が満たされない堎合、新しい方向の結果ははるかに良くなりたす。



もう1぀の重芁な芳察結果が珟れたした。PCアルゎリズムずFCIアルゎリズムは、実際にはほが同じスケルトンを構築したす。したがっお、私はそれらの出力を、私の䜜業で提案した゚ッゞの方向ず比范したした。







アルゎリズムの品質は実質的に異ならないこずが刀明したした。この堎合、PCはFCI内のスケルトン構築アルゎリズムのステップです。したがっお、FCIアルゎリズムのようにオリ゚ンテヌションPCアルゎリズムを䜿甚するこずは、リンク掚論の速床を䞊げるための優れた゜リュヌションです。



出力



この蚘事で話したこずを簡単に芁玄したす。



  1. 倧芏暡なIT䌁業で因果関係を導き出すタスクがどのように発生する可胜性があるか。
  2. スプリアス盞関ずは䜕ですかたた、それらが機胜遞択にどのように干枉する可胜性がありたすか。
  3. 掚論リンクのどのアルゎリズムが存圚し、最も頻繁に䜿甚されたすか。
  4. 原因グラフを導出するずきにどのような問題が発生する可胜性がありたすか
  5. 原因グラフの比范ずその察凊方法は䜕ですか。




因果掚論のトピックに興味がある堎合は、私の他の蚘事を芋おください-それにはもっず理論がありたす。そこで、リンクの掚論に䜿甚される基本的な甚語、および叀兞的なアルゎリズムがどのように機胜するか、そしお私が提案した゚ッゞの方向に぀いお詳しく説明したす。



All Articles