求人サむトの掚奚事項を䜜成したす。 Yandexでの講矩

最近、私たちは䞻に参加者の芳点からそれらを考慮しお、機械孊習競技に぀いお倚くを曞きたす。 しかし、競争を正しく組織し、実斜するこずも困難な課題です。 䌁業は間違いから孊び、次回は競争の構造を倉えたす。 たずえば、過去数幎の経隓を考慮したRecSys Challenge 2017は、2぀の連続した段階で実斜されたした。 AvitoのAndrey Ostapetsが、これらの段階、ナヌザヌの行動の履歎に基づくさたざたな機胜、および問題を解決するために垞に耇雑なモデルを䜿甚する必芁があるかどうかに぀いお語っおいたす。 AndreiのチヌムはRecSys Challengeで7䜍になりたした。





-みなさん、こんにちは 私の名前はアンドレむです。私はAvitoで働いおいたす。今日は、RecSys Challenge 2017コンテストぞのチヌムの参加に぀いおお話したす。



最初に、コンテスト自䜓ずどのタスクが解決されたかに぀いお説明したす。 次に、チヌムの決定に぀いお、そしお最終的には結果に぀いおお話したす。



RecSys Challengeは、RecSys Conferenceの䞀環ずしお開催されるコンテストです。 これは倧きな䌚議であり、今幎は11回目の開催ずなりたす。 䌚議には倚くの科孊報告がありたすが、䞻催者は圓初から勧告に関する競争を開催する䌝統がありたした。 毎幎、䌁業がコンテストを開催し、さたざたなチヌムが参加したす。 その結果、党員がワヌクショップに来お、自分の決定に぀いお話したす。 これは、Kaggleず比范しおプラスです。アルゎリズムに぀いお話し、䌚議のワヌクショップ専甚の別の雑誌に蚘事を公開し、コンテスト䞻催者から詳现を調べ、他の参加者が䜿甚した゜リュヌションを確認できたす。



昚幎だけでなく、今幎も、コンテストはXINGによっお開催されたした。 これは、ドむツのLinkedInに察応するものであり、仕事の掚奚に専念しおいたす。 昚幎、AvitoチヌムもRecSys Challengeに参加したした。私たちは7䜍になり、ShADのトレヌニングセッションでこれに぀いお話したした。 ここに私たちの物語ぞのリンクがありたす。



昚幎、かなり暙準的なタスクが䞎えられたした。 幎間を通しおやり取りが行われ、サむトのナヌザヌがクリックする空垭を予枬する必芁がありたした。 かなり良い結果が埗られ、分解マシンを䜿甚し、すべおが十分でしたが、オヌガナむザヌにもいく぀かの問題がありたした。



たず、これらのアルゎリズムはうたく機胜し、XINGプラットフォヌムが掚奚するものの䞭から最適な空宀を遞択したした。 既知の事実掚奚事項はナヌザヌの行動に圱響したす。 したがっお、アルゎリズムはうたく機胜し、プラットフォヌムが䜕を瀺すかを予枬しようずし、これに基づいおランクが配眮されたした。 䞀方で、これは悪いこずではありたせんが、そのようなアルゎリズムを実皌働環境で実装しようずするず、そのアルゎリズムが本質的に別のアルゎリズムに䟝存しおいるずきに問題が発生したす。



2番目の問題は、ナヌザヌが頻繁にクリックを繰り返すこずでした。 クリックの玄30が繰り返し発生したした。 そしお、それはかなり匷力な機胜でした。 ナヌザヌが特定の空宀をクリックしたこずがある堎合は、再床空宀を掚奚したす。 これはそれほど倧きな問題ではないかもしれたせんが、掚奚事項のナヌザヌが既にクリックしたアむテムのみを芋たいずは考えにくいでしょう。 おそらく、圌らは䜕か新しいものを芋たいず思っおいたす。



2017幎、XINGはこれらの問題を修正したした。 最初の問題を解決するために、圌らは2段階の競争を組織したした。 オフラむン-すべおが暙準で、トレヌニングセットが提䟛され、テストセットが過去のものであるため、゜リュヌションを送信し、ナヌザヌがどのようにクリックしたかを掚枬する必芁がありたす。 これはすべお履歎デヌタに基づいおいたす。



2番目のステヌゞはオンラむンステヌゞで、各チヌムに個別のトラフィックセクションが䞎えられ、チヌムの掚奚事項のみが衚瀺されたす。 したがっお、すべおのトラフィックはチヌムに完党に䟝存し、すべおのクリックはチヌムが提瀺した掚奚事項に䟝存しおいたした。



繰り返しクリックの問題を解決するために、䞻催者は空垭に関するコヌルドスタヌトのタスクに焊点を合わせたした。 レむアりトされた空垭はすべお新しいものでした。 それらのクリック履歎はありたせんでした。欠員の内容のみに䟝存するこずができたした。



オンラむンステヌゞの掚進に関心がある可胜性のあるナヌザヌを特定する必芁がありたした。 チヌムが゜リュヌションを送信した埌、ナヌザヌは、アプリケヌションがむンストヌルされおいる堎合、プッシュを受信したした。 圌らはこの欠員をクリックするこずができたす。



指定された空垭の適切な候補者であるナヌザヌを識別する必芁がありたした。 これに぀いおは埌で詳しく説明したす。



2぀のステヌゞでは、ほが同じメトリックずデヌタセットが䜿甚されたした。 オフラむンステヌゞは、競争の第2ステヌゞでのチヌムの遞択ずしおのみ機胜したした。 䞊䜍を占めたチヌムは第2段階に進み、掚奚事項を送信できるトラフィックのセクションが既に割り圓おられおいたした。 第2段階は5週間続きたした。 毎日、掚奚事項を送信する必芁がありたした。 最終結果は、最高の2週間の合蚈です。



掚奚事項の䜿甚方法



オフラむン段階では、すべおが明確であり、これは履歎デヌタです。 ゜リュヌションず共にファむルを送信するず、すぐに結果が埗られたす。 唯䞀の制限空垭に぀いお掚奚できるナヌザヌは100人たでです。 オンラむン段階では、すべおがより興味深いものです。 オヌガナむザヌは、タヌゲットナヌザヌにタヌゲットの空垭をレむアりトしたした。これらのナヌザヌず空垭を含む提出ファむルを準備するのに24時間かかりたした。 空垭ごずに、255人以䞋のナヌザヌのリストを提䟛できたす。 これは、すべおの掚奚事項がこの空宀に行ったずきに䞀郚の空宀が歪たないようにするためです。 ナヌザヌが掚奚事項に飜きないように、ナヌザヌに負担をかけないように、ナヌザヌは1日に1回だけプッシュを受け取るこずができたす。



掚奚事項には4぀の異なる配信方法がありたした。 最初は掚奚事項のリストです。 これはデスクトップ版です。 ナヌザヌがモバむル版をむンストヌルしおいた堎合、ナヌザヌはプッシュされ、リンクをたどっお、すぐに自分に掚奚されおいる求人を芋぀けたした。 デスクトップバヌゞョンがあれば、ゞョブリンクがありたした。 新しい掚奚事項が来るず、これらすべおがサむト䞊で曎新され、ナヌザヌは新しい欠員を芋るこずができたした。



さらに掚奚事項がホヌムペヌゞに衚瀺されたした。 ナヌザヌがサむトにアクセスするず、ニュヌスが衚瀺され、その䞭に掚奚事項が衚瀺されたす。



3番目のオプションは電子メヌルです。 䞻催者は、ナヌザヌがサむトにアクセスしなかったこずに気付いた堎合、新しい欠員が掚奚されるこずを知らせるメヌルを圌に送信したした。 興味がある堎合は、リンクをたどっおください。



4番目の郚分は非垞に興味深いものです。 これは採甚担圓者の掚奚シヌトです。 XINGはナヌザヌだけでなくリクルヌタヌにも向けられおいるため、空垭ごずに、XINGが提䟛する掚奚事項をリクルヌタヌが確認できる個別のペヌゞがありたす。 XINGによるず、この欠員に適したナヌザヌが含たれたす。 ここでは、リクルヌタヌが圌がこの欠員に適しおいるず考える堎合、各人に぀いお、圌の珟圚の仕事、以前の仕事、およびその人に連絡する胜力が瀺されたす。







スラむドには、参加者に提䟛されたデヌタがありたす。







ナヌザヌの堎合、デヌタは䞻にアンケヌトから取埗されたした。 興味深いのは、䞻催者がナヌザヌの珟圚たたはおそらく以前の䜜品からキヌワヌドを提䟛したが、圌ら自身がテキストを凊理し、デヌタが自然数のリストの圢匏で提䟛されたこずです。 これにより、テキストの䜜業範囲が瞮小されたした。 倚くのこずを適甚できたしたが、ここでは元の単語がわからず、これらの数字が元の単語なのかバむグラム、トラむグラムなどなのかわかりたせんでした。



珟圚のキャリアレベルも提䟛されたした。1〜6の自然数です。高いほど、キャリアレベルは高くなりたす。 芏埋、産業、地理など



オフラむンステヌゞに興味深い機胜が提䟛されたした-転職ぞの関心。 しかし、圌女はもう第二段階ではありたせんでした。 ナヌザヌはプレミアムであり、XINGのお金を支払うこずができたす。 これは機胜ず品質に圱響したす。







空宀に぀いおは、同様の属性が提䟛されたした。 違いは、キヌワヌドが空垭ヘッダヌず䌚瀟説明から取埗されたこずです。 他のすべおの兆候は䌌おいたす。 たた、空宀は有償たたは無料です。







むンタラクションファむルには、どのナヌザヌがどの空宀をクリックしたか、い぀、どのタむプのむンタラクションであったかずいう4぀のフィヌルドのみが含たれおいたした。 党郚で6皮類ありたした。 最初はショヌですナヌザヌはこの空垭を瀺されたした。 2぀目はブックマヌクするオプションです。ナヌザヌは埌で戻るために空宀を予玄したした。 第䞉に、圌は「リクルヌタヌに連絡する」ボタンをクリックしたした。 第四に、圌は欠員を削陀し、私はもはや興味がないず蚀った、私はもうそれを芋たくない。 最埌の1぀は採甚担圓者の関心です。採甚担圓者は自分のペヌゞからこのナヌザヌのプロフィヌルに切り替えたした。



小さな統蚈に぀いおは、オンラむンステヌゞでのトレヌニングサンプルの分垃が衚瀺されたす。 トレヌニングには、100䞇人のナヌザヌ、75䞇人の空垭、玄9,000䞇のむンプレッション、玄400䞇のむンタラクションがありたした。 ぀たり、ナヌザヌがクリックする頻床は少なく、ほずんどのむンタラクションはクリックです。 2番目は、掚奚事項の削陀です。 ナヌザヌは頻繁に掚奚事項を削陀し、それ以䞊芋たくないず蚀いたす。 残りのタむプは少なかった。







どの品質機胜が䜿甚されたしたか 圌はかなり普通ではなかった。 参加者は、各欠員に察する掚奚事項のリストを提䟛する必芁がありたした。 決定が受け取った合蚈金額は、すべおの空宀に぀いお考慮されたした。 たた、各欠員の評䟡は2぀の郚分に分けられたした。ナヌザヌの成功ナヌザヌにずっおの成功床を決定するずアむテムの成功-この掚奚リストがこの欠員に察しお成功したかどうかです。



ナヌザヌの成功はシンプルだず考えられおいたした。 䞀郚のナヌザヌが空宀をクリックするず、1ポむントが取埗されたした。 [ブックマヌクに远加]たたは[返信]ボタン-5ポむントをクリックし、䞡方のアクションを実行するず、5ポむントだけが远加されたす。 リクルヌタヌが圌に興味を瀺した堎合、20ポむントがスコアに远加されたした。 ナヌザヌが欠員を削陀した堎合-マむナス10ポむント。 たた、ナヌザヌがプレミアムでXINGのお金を支払った堎合、このすべおの金額に2が掛けられたす。



アむテムの成功により、物事はもう少し興味深いものになりたす。 空垭ごずにナヌザヌのリストが提䟛され、少なくずも1人のナヌザヌに察しお掚奚が成功した堎合、アむテムが支払われた堎合は50ポむント、無料の堎合は25ポむントずなりたす。空宀の候補が成功しなかった堎合、 1人がクリックせず、0を超える金額を受け取っおいない堎合、芋積もりに0が远加されたため、䜕も受け取りたせんでした。



問題はすぐに発生する可胜性がありたす。この機胜に基づいお、1぀のナヌザヌず空垭のペアに察しおどのような最倧スコアを取埗できたすか 102.欠員をクリックしたす-プラス1、ブックマヌクに远加-プラス5、リクルヌタヌは興味を瀺したした-プラス20、プレミアムナヌザヌ-2を掛けたす。 52を取埗し、このナヌザヌは、この空宀の成功した掚奚事項です。 アむテムが支払われた堎合、合蚈50ポむント、合蚈102ポむントを獲埗したす。



明らかに、掚奚事項の最小倀は1ポむントのみです。 これは、ナヌザヌが空宀をクリックしたばかりで、この空宀ですでに成功しおいるアむテムがある堎合です。



䞻催者からの課題は䜕ですか



ナヌザヌず採甚担圓者の利益のバランスは、高品質の機胜に基づいおいたす。 ナヌザヌのクリックは䜕の意味もありたせん。リクルヌタヌが圌に興味を瀺した堎合、それははるかに有益です。



2番目の課題は、関連性ず収益のバランスです。 瀺されおいるように、スコアは、ナヌザヌずアむテムがプレミアムかどうか、XINGプラットフォヌムがそれらからお金を受け取るかどうかに倧きく䟝存しおいたした。



3番目はコヌルドスタヌトの問題です。 すべおの空垭には履歎がありたせん。広告のコンテンツのみを䜿甚できるため、これはより困難な䜜業です。



4番目-スマヌトプッシュパッケヌゞ。 プッシュするナヌザヌ、プッシュしないナヌザヌ、プッシュするナヌザヌを決定する必芁がありたす。 それに぀いおは埌で。







圓初、䞻催者は、倚くの競技䌚ず同様に、ベヌスラむンを提䟛したした。 圌は非垞にシンプルでしたが、良い結果を瀺したした。 その䞭には6぀の兆候しかありたせんでしたが、そのうち5぀はバむナリでした。ナヌザヌのタむトルず空垭の䞀臎数、自然数、そしお芏埋、キャリアレベル、産業、囜、地域の単玔な䞀臎です。 トレヌニングには、盞​​互䜜甚のみが䜿甚されたした。 ナヌザヌが欠員を削陀した堎合、タヌゲット倉数はれロであるこずが刀明し、ナヌザヌが肯定的なアクションを実行した堎合-1。 XGBoostでトレヌニングし、リヌダヌボヌドで10,000を獲埗したした。 かなりいい。







オフラむンの段階ですべおのゞョブに察しお最もアクティブな䞊䜍100人のナヌザヌを単に掚奚する堎合、結果519が埗られたす。



サンプルサむズは 合蚈3億のむンタラクション、掚奚事項を䜜成する必芁があった7500䞇のタヌゲットナヌザヌ、および玄5䞇のタヌゲット空宀。



すぐに芋るこずができるデヌタセットの機胜の1぀盞互䜜甚には膚倧な数の完党な耇補が含たれおいたす。 それらをきれいにすれば、2億2,000䞇のむンタラクションが既に埗られ、アルゎリズムを高速化するこずができたした。 盞互䜜甚に぀いおのみ孊習したす。 やり取りは少なく、わずか600䞇人です。トレヌニングサンプルは600䞇人です。



プロセスを高速化するために、ペアの予枬は、ヘッダヌに亀差がある堎合にのみ行われたした。 その結果、XGBoostが予枬を構築するサンプルは玄5,000䞇です。このベヌスラむンを再珟しようずするず、XGBoostがサヌバヌ䞊で機胜しないずいう問題に遭遇し、それを2に曞き盎したしたが、これは゜リュヌションに倧きな圱響を䞎えたせんでした。







論理的なこずは、このベヌスラむンに新しい機胜を単玔に远加するこずだず思われたす。 5぀のバむナリ機胜は良い結果をもたらすので、機胜をスロヌしおより良い結果を取埗したしょう。



さらに19を远加しお25を埗た埌、結果をわずかに改善するこずができたした。 圌は玄1侇1千人になりたしたが、それ以䞊の改善は機胜したせんでした。 最埌に、さたざたな実隓が行われたしたトレヌニングサンプルを異なる方法で構成し、異なるむベントに異なる重みを䞎えるために、削陀の重みよりも肯定的なアクションよりも小さい小さな重みでビュヌを远加するだけです。 しかし、これらすべおにより、最終的に5000を匕いた結果が埗られるたで、スコアが䜎䞋するずいう事実に至りたした。







なぜこれが起こったのですか おそらく2぀の問題がありたす。 たず、ネガティブサンプリングを蚭定できたせんでした。 私がちょうどビュヌを投げたずき、アルゎリズムは単玔なビュヌに぀いお倚くの予枬を䞎え始めたした。



2番目の問題は、XGBoostの暙準偏差を最適化したこずです。これはおそらく悪いこずです。 機胜はお金に焊点を圓おおおり、RMSEを最適化したす。 しかし、これで䜕かをしなければなりたせんでした。



明らかに、远加された属性は論理的であり、スコアを改善するはずです。 そこで、簡単なアルゎリズムを䜿甚しお属性の品質をチェックするこずにしたした。 ナヌザヌず空宀のペアのグレヌドを蚈算するために、3぀のタむプの合蚈を䜿甚したしたが、これも劥圓です。 ナヌザヌプロファむルず空宀プロファむルの近接性—それらの間で䞀臎するコンテンツのみを調べたす。



次に、ナヌザヌの履歎に基づいお、パラメヌタヌにさたざたな関心を構築したす。 ナヌザヌプロファむルは䞀切䜿甚せず、クリックしたものず削陀したもののみを確認したす。



オフラむンステヌゞに関連する3番目の郚分䞀郚のアむテムずナヌザヌに぀いおは、以前の盞互䜜甚が瀺されたした。 それらの数は少なかったが、それでも圌らは少しスコアを䞊げるこずを蚱した。



5䞇人のナヌザヌず5䞇人の空垭がある堎合、すべおをスキャンするこずはできたせん。 適切なセットを遞択する必芁がありたす。 予枬の量を枛らすために、次のヒュヌリスティックが䜿甚されたしたペアでは、空垭ヘッダヌずナヌザヌプロフィヌルに亀差がある堎合、たたはナヌザヌが空垭ず亀差する広告を衚瀺しおいる堎合にのみ、芋積もりを蚈算したす。 たずえば、ナヌザヌは自分がアナリストであり、か぀おデヌタサむ゚ンティストを1回クリックしただけだず蚀いたす。 掚奚される候補は、「アナリスト」、「デヌタサむ゚ンティスト」ずいう蚀葉を含む欠員です。それだけです。 明らかに、これは最良のヒュヌリスティックではありたせんが、予枬を構築する必芁があるサンプルのサむズを倧幅に削枛できたす。







さたざたな近接性はどのように考慮されたしたか 䟋ずしお、空垭芋出しぞのキヌワヌドの近接性を怜蚎したす。 䞻なアむデアは、特定のIDFアナログを3぀の蟞曞で䜿甚できるずいうこずです。぀たり、ナヌザヌプロファむルずアむテムタむトル、およびアむテムタグからの単語がありたす。 圌らのためにIDFアナログが蚈算されたした。 トヌクンの発生に察する䞀意のトヌクンの数の察数を単玔に取埗し、トヌクンが発生する頻床が少ないほど、受け取る重みが倧きくなりたす。 プロファむルによる近接性を考慮する堎合、䞀意のナヌザヌキヌワヌドの数に単玔に正芏化したす。 圌が持っおいるキヌワヌドが少ないほど、この量の重みは倧きくなりたす。



アフィニティの各タむプに぀いお、重みWを遞択したす。その結果、ナヌザヌず空垭のペアの最終評䟡は、これらの重みを持぀空垭ヘッダヌからのナヌザヌのキヌワヌドのすべおのリストの合蚈ずしお蚈算されたす。 このような金額は、ナヌザヌプロファむルず空宀で指定されたすべおの可胜なオプションに぀いお蚈算されたした。 すでに倚くの兆候がありたす。







テキストをカりントする別のオプションは、空いおいるヘッダヌからのキヌワヌド、キヌワヌドの完党なネストです。 これは、たずえば、ナヌザヌが「アナリスト」ず蚀い、空垭が「銀行のアナリスト」である堎合にも論理的に芋えたす。 これもおそらくシグナルです。 しかし、ここでの特城は、ストップワヌドを削陀したかどうかに関係なく、䞻催者がこれらのキヌワヌドをどのように受け取ったかがわからないこずです。 したがっお、かなり暙準的なアプロヌチが䜿甚され、非垞にうたく機胜したした。







他の特性によっお近接性はどのように考慮されたしたか キャリアレベルでは、すべおが非垞に単玔でした。1から6でした。したがっお、プロファむルによっお、違いを簡単に考慮するこずができたす。 差が小さい堎合-重量を増やし、倧きい堎合-枛らしたす。 孊生であるこずを瀺したナヌザヌが、䌚瀟の取締圹が必芁な求人を時々芋たこずもありたす。 , , - . , . — . .



, . . : , 1, .



, , . , , . , . , . , , , , . , 95% , . .







. . , score, — : , , . . , , - , — .



, : , . , . - , , . , - VIP. .



? . -, , , , . . , .



, P , . — , .



. « », , . : -. - , . , user success, - . , . 70% . , . , , . — - .



-, , , , . .







. 20 ., 32 . score , .







. , , 30 19 ., .



, , — , , , , . . , , — IDF. , . , , .







-20 . , , 18 , -.







- : XING , . XING , , 24 . 24 . , . 24 , .



. 7 , , - , 8 — . .







, . 11 . , , , , , . , , score .



, score . .







. , : , , 10 , .







, , , score . 4800, 3800, . , , , , 50 . , 10 . . , 50 . — . , , — .



Avito, : . , . LCE, Avito Data Science meetup — .



, 8%, . , .



, score .







: score . 5 . , 2 . , , , , , . . , - , , score . , 21 , . , , , score , .



, , , . , , , , score. score — .







score , 300 . , , .







8700 . — 11 . . , . — 9700, 8700, . 1700 . , , , , , , . , score. ? , .



: , , - , , , 18 . , 18 .







, , , .



?



— . , 1 , 50. , , - , , , . — score -. .



— . , , — , . -, - , . , score . . , -, score.



— -. . /-: 50 . , , , — , , , 25 . . . score , , . , , .



, , — , , , score 7 . , 7 . : .



— . , — — - . score , . , , , .



All Articles