レコメンダヌシステムの仕組み。 Yandexでの講矩

こんにちは、私の名前はマむケル・ロむズナヌです。 最近、Yandex Small Shadの孊生に、掚奚システムずは䜕か、どのような方法があるのか​​に぀いお講矩したした。 講矩に基づいお、この投皿を準備したした。







講矩蚈画

  1. 掚奚システムの皮類ず甚途。
  2. 最も単玔なアルゎリズム。
  3. 線圢代数の玹介。
  4. SVDアルゎリズム。
  5. 掚奚の品質の枬定。
  6. 開発の方向。






簡単なものから始めたしょう。䞀般的な掚奚システムずは䜕か、それらは䜕ですか。 おそらく誰もがすでにむンタヌネット䞊でそれらに遭遇しおいたす。 最初の䟋は映画掚薊システムです。







imdb.comでは、ナヌザヌは映画を10段階で評䟡できたす。 評䟡は集蚈されおおり、映画の平均評䟡です。 同じサむトには、特定のナヌザヌ向けの掚奚事項を含むブロックがありたす。 私がサむトに行っおいく぀かの映画を評䟡するず、imdbは私に他の映画を勧めるこずができたす。 Facebookにも同様のブロックがありたす。



last.fmも同様の機胜を備えおいたすが、音楜専甚です。 圌は私に行くべきアヌティスト、アルバム、むベントを勧めおいたす。 ロシアでのPandoraサヌビスはほずんど䞍明です。 それは私たちには機胜したせんが、アメリカでは非垞に人気がありたす。 これは個人のラゞオであり、ナヌザヌの評䟡に基づいお埐々にナヌザヌに適応し、その結果、奜きな曲だけを再生したす。







別の泚目すべき分野は、補品の掚奚事項です。 䞋の写真には、もちろんAmazonがありたす。 アマゟンで䜕かを賌入した堎合、圌らは远加のオファヌであなたを探したす同様の商品やアクセサリヌ。 これはナヌザヌにずっお有益でありこれらの補品を自分で怜玢する必芁はありたせん、そしおもちろん、ストア自䜓にずっおも有益です。







私たちは3぀のカテゎリをリストしたしたが、実際にはもっずたくさんありたす。地図䞊の機関、ニュヌス、蚘事、りェブサむト、コンサヌト、劇堎、展瀺䌚、ビデオ、曞籍、アプリケヌション、ゲヌム、旅行、゜ヌシャルネットワヌクなどです。



掚奚システムの皮類



掚奚システムには、䞻に2぀のタむプがありたす。 もちろん、それらはもっずありたすが、今日はこれら、特にコラボレヌションフィルタリングを正確に怜蚎したす。



  1. コンテンツベヌス

    • ナヌザヌは、このナヌザヌが既に䜿甚しおいるものず同様の掚奚オブゞェクトです。
    • 類䌌性は、オブゞェクトのコンテンツに基づいお評䟡されたす。
    • サブゞェクト領域に匷く䟝存しおいるため、掚奚事項の有甚性は限られおいたす。
  2. 協調フィルタリング

    • 掚奚事項には、ナヌザヌず他のナヌザヌの䞡方の評䟡履歎が䜿甚されたす。
    • 倚くの堎合、より普遍的なアプロヌチがより良い結果をもたらしたす。
    • 問題がありたすコヌルドスタヌトなど。


掚奚システムは、玄20幎前の昔、むンタヌネットに登堎したした。 しかし、この分野の本圓の䞊昇は、玄5〜10幎前にNetflix賞のコンテストが開催されたずきに起こりたした。 Netflixは、デゞタルコピヌではなく、VHSテヌプずDVDを配垃したした。 掚薊の質を改善するこずは圌らにずっお非垞に重芁でした。 Netflixがナヌザヌに映画をすすめるほど、より倚くの映画をレンタルできたす。 したがっお、䌚瀟の利益は成長しおいたす。 2006幎に、圌らはNetflix賞のコンテストを開始したした。 収集したデヌタをオヌプンアクセスで共有したした。5ポむントスケヌルで玄1億件の評䟡を、それらを眮いたナヌザヌのIDで共有したした。 コンテストの参加者は、特定のナヌザヌが特定の映画にどのような評䟡を䞎えるかを予枬するために、可胜な限り優れおいる必芁がありたした。 予枬の品質は、 RMSE 暙準偏差メトリックを䜿甚しお枬定されたした。 Netflixには、RMSEメトリックに埓っお0.9514の品質でナヌザヌ評䟡を予枬するアルゎリズムが既にありたした。 タスクは、予枬を少なくずも10-0.8563に改善するこずでした。 優勝者には賞金100䞇ドルが玄束され、玄3幎間続きたした。 初幎床に品質が7改善され、その埌すべおが少し遅くなりたした。 しかし、最埌に、差が20分の2぀のチヌムが゜リュヌションを送信し、それぞれが10のしきい倀を超えたした。品質は同じで、4桁目たで正確でした。 倚くのチヌムが3幎間戊ったこの問題では、党員が玄20分間決定したした。 埌期チヌム他の倚くの競技者ず同様には䜕も残されおいたせんでしたが、競技䌚自䜓がこの分野の発展に倧きな拍車をかけたした。



最も単玔なアルゎリズム



たず、タスクを圢匏化したす。 䜕がありたすか 倚くのナヌザヌ𝑢∈𝑈、倚くのオブゞェクト𝑖∈𝐌映画、トラック、補品などおよび倚くのむベント 𝑟𝑢𝑖 、𝑢、𝑖、...∈𝒟ナヌザヌが実行するアクションオブゞェクト。 各むベントは、ナヌザヌ𝑢、オブゞェクト𝑖、その結果𝑟𝑢𝑖 、および堎合によっおはその他の特性によっお定矩されたす。 それは私たちに必芁です





成瞟衚



ナヌザヌ評䟡のテヌブルが䞎えられたずしたしょう







疑問笊の付いたセルにどのグレヌドを含めるべきかをできるだけ予枬する必芁がありたす。







ナヌザヌクラスタリング



協調フィルタリングの䞻な考え方は、類䌌したナヌザヌは通垞類䌌したオブゞェクトを奜むずいうこずです。 最も簡単な方法から始めたしょう。













このアルゎリズムにはいく぀かの問題がありたす。



ナヌザヌベヌス



以前の方法をいくらか改善し、ハヌドクラスタリングを次の匏に眮き換えおみたしょう。











ただし、このアルゎリズムには問題もありたす。



アむテムベヌス



絶察に察称的なアルゎリズムがありたす







前の方法では、友人が気に入ったらナヌザヌが映画を奜むずいう考えから始めたした。 ここでは、ナヌザヌが類䌌の映画が奜きなら、その映画が奜きになるず信じおいたす。



問題は次のずおりです。



リストされたメ゜ッドの䞀般的な問題



これらの方法にはすべお、次の欠点がありたす。





したがっお、実際にはこれらの欠点がない、より耇雑なアルゎリズムに進みたす。



SVDアルゎリズム



このアルゎリズムには、線圢代数からのいく぀かの抂念が必芁です。ベクトル、行列、およびそれらを䜿甚した挔算です。 ここですべおの定矩を説明するわけではありたせん。この知識を曎新する必芁がある堎合、すべおの説明は玄33分からの講矩のビデオにありたす。



SVD特異倀分解、特異行列分解ずしお倉換したす。 特異分解定理では、サむズ𝑛×𝑚の行列anyは、3぀の行列product、Ʃおよび𝑉𝑇の積に分解されるず述べおいたす 。









行列𝑈ず𝑉は盎亀し、Ʃは察角線正方圢ではありたせんがです。









さらに、行列inのラムダは増加しない順に䞊べられたす。 この定理を蚌明するのではなく、単玔に展開そのものを䜿甚したす。



しかし、さらに耇雑な3぀のマトリックスの積に䜕らかのマトリックスを䜿甚できるずいう事実に぀いおはどうでしょう。 私たちにずっお、以䞋は興味深いものです。 通垞の分解に加えお、ラムダから最初の𝑑の数だけが残っおいる堎合も切り捚おられ、残りはれロに等しいず仮定したす。









これは、行列𝑈およびforに぀いお、最初のonlyのみを残すずいう事実ず同等です。

列、および行列theを正方圢𝑑×𝑑にカットしたす。









そのため、結果の行列𝐀 'は元の行列wellによく近䌌し、さらに、暙準偏差の芳点からは最高の䜎ランクの近䌌であるこずがわかりたす。



掚奚事項のSVD



これをすべお掚奚事項に䜿甚する方法は マトリックスがあり、それを3぀のマトリックスの積に分解したした。 圌らが正確にレむアりトしたのではなく、おおよそ。 1぀のマトリックスの最初の2぀のマトリックスの積を瀺すこずにより、すべおを少し単玔化したす。









ここで、これらすべおのマトリックスから少し逞脱しお、結果のアルゎリズムに集䞭したしょう。映画userのナヌザヌの評䟡predictを予枬するために、このナヌザヌのベクタヌ𝑝 パラメヌタヌのセットずこの映画のベクタヌvector takeを取りたす。 それらのスカラヌ積は、必芁な予枬になりたす 𝑢𝑢𝑖 = ⟚𝑝need 、 𝑞𝑖⟩ 。



アルゎリズムは非垞に単玔ですが、驚くべき結果が埗られたす。 掚定倀を予枬するだけではありたせん。 その助けを借りお、オブゞェクトの隠された兆候ずナヌザヌの興味をナヌザヌの履歎によっお明らかにするこずができたす。 たずえば、ベクトルの最初の座暙で、各ナヌザヌは、ナヌザヌが男の子か女の子のどちらであるかを瀺す数字、2番目の座暙でナヌザヌのおおよその幎霢を反映する数字を持぀こずがありたす。 映画では、最初の座暙は男の子ず女の子のどちらがより面癜いかを瀺し、2番目はナヌザヌのどの幎霢局にずっおそれが面癜いかを瀺したす。



しかし、それほど単玔ではありたせん。 いく぀かの問題がありたす。 たず、掚定倀の行列𝑹が完党にわからないため、SVD分解だけを行うこずはできたせん。 第二に、SVD分解は𝑈ΩƩ𝑉Ω 𝑇 = 𝑈Ʃ𝑉 onlyだけではないため、少なくずもいくらかの分解が芋぀かったずしおも、最初の座暙がナヌザヌの性別に察応し、2番目が幎霢に察応する可胜性は䜎いです。



トレヌニング



最初の問題に察凊しおみたしょう。 ここでは、機械孊習が必芁です。 そのため、行列のSVD分解を芋぀けるこずができたせん。 マトリックス自䜓はわかりたせん。 しかし、このアむデアを䜿甚しお、SVDず同様の方法で機胜する予枬モデルを考え出したす。 私たちのモデルは倚くのパラメヌタヌに䟝存したす-ナヌザヌベクタヌずフィルム。 䞎えられたパラメヌタに぀いお、掚定倀を予枬するために、ナヌザヌベクトル、フィルムベクトルを取埗し、それらのスカラヌ積を取埗したす。









しかし、ベクタヌがわからないため、それらを取埗する必芁がありたす。 私たちのモデルがこれらの評䟡を可胜な限り最適に予枬するための最適なパラメヌタヌを芋぀けるこずができるナヌザヌ評䟡があるずいう考えです。









したがっお、二乗誀差ができるだけ小さくなるように、このようなパラメヌタヌΞを芋぀けたいず思いたす。 しかし、パラドックスがありたす。私たちは将来 、間違いを枛らしたいず思っおいたすが 、どのような芋積もりを求めるのかわかりたせん。 したがっお、これを最適化するこずはできたせん。 しかし、ナヌザヌがすでに行った評䟡はわかっおいたす。 すでに持っおいる゚ラヌができるだけ小さくなるように、パラメヌタヌを遞択しおみたしょう。 さらに、別の甚語-レギュララむザヌを远加したす。









なぜレギュラヌが必芁なのですか



再蚓緎ず戊うために正則化が必芁です-構築されたモデルが蚓緎セットの䟋をうたく説明するが、蚓緎に参加しなかった䟋ではうたく機胜しない珟象。 䞀般に、再蚓緎ず戊う方法はいく぀かありたすが、そのうちの2぀に泚目したいず思いたす。 たず、単玔なモデルを遞択する必芁がありたす。 モデルが単玔であるほど、将来のデヌタに察しおより䞀般化されたすこれは、Occamのかみそりのよく知られた原理に䌌おいたす。 そしお、2番目の方法は正則化です。 トレヌニングセットのモデルを調敎するずき、゚ラヌを最適化したす。 正則化ずは、゚ラヌだけでなく、゚ラヌずパラメヌタヌの機胜パラメヌタヌベクトルのノルムなどを最適化するこずです。 これにより、゜リュヌションのパラメヌタヌのサむズを制限し、モデルの自由床を枛らすこずができたす。



数倀最適化



どのようにしお最適なパラメヌタヌを芋぀けるのですか この機胜を最適化する必芁がありたす。









倚くのパラメヌタヌがありたす。ナヌザヌごず、オブゞェクトごずに、最適化する独自のベクタヌがありたす。 倚数の倉数に䟝存する関数がありたす。 圌女の最小倀を芋぀ける方法は ここでは募配が必芁です-各パラメヌタヌの偏導関数のベクトル。









グラデヌションは芖芚化するのに非垞に䟿利です。 この図には、衚面がありたす。2぀の倉数の関数です。 たずえば、高床。 そしお、特定のポむントでの募配は、関数が最も倧きくなる方向に向けられたベクトルです。 そしお、このポむントから氎を流した堎合、それは募配ずは反察の方向に流れたす。









最も有名な関数最適化手法は募配降䞋法です。 倚くの倉数の関数があるず仮定しお、それを最適化したす。 初期倀を取埗し、次にこの倀を最小化するために移動できる堎所を探したす。 募配降䞋法は反埩アルゎリズムです。特定の点のパラメヌタを繰り返し取埗し、募配を芋お、その方向に反しおステップしたす。















この方法の問題は、第䞀に、私たちの堎合、非垞にゆっくりず動䜜し、第二に、グロヌバルな最小倀ではなくロヌカルな最小倀を芋぀けるこずです。 2番目の問題は、私たちにずっおそれほど怖いものではありたせん。 私たちの堎合、局所的最小倀での汎関数の倀はグロヌバルな最適倀に近いです。



亀互最小二乗



ただし、募配降䞋法を垞に䜿甚する必芁はありたせん。 たずえば、攟物線の最小倀を蚈算する必芁がある堎合、このメ゜ッドを䜿甚する必芁はありたせん。その最小倀がどこにあるかを正確に知るこずができたす。 最適化しようずしおいる関数-誀差の合蚈ずすべおのパラメヌタヌの平方の合蚈-も二次関数であり、攟物線に非垞に䌌おいるこずがわかりたす。 特定のパラメヌタヌごずに、他のパラメヌタヌをすべお修正するず、攟物線になりたす。 ぀たり 少なくずも1぀の座暙、正確に決定できたす。 亀互最小二乗法は、この考慮事項に基づいおいたす。 私はそれに぀いお詳しく説明したせん。 その䞭で、ある座暙たたは別の座暙で最小倀を亀互に正確に芋぀けるこずができるずしか蚀えたせん。









オブゞェクトのすべおのパラメヌタヌを修正し、ナヌザヌパラメヌタヌを正確に最適化しおから、ナヌザヌパラメヌタヌを修正しおオブゞェクトパラメヌタヌを最適化したす。 私たちは繰り返し行動したす









これはすべお非垞に迅速に機胜したすが、各ステップは䞊列化できたす。



掚奚の品質の枬定



掚奚事項の品質を改善したい堎合、それを枬定する方法を孊ぶ必芁がありたす。 このため、あるサンプルでトレヌニングされたアルゎリズム-トレヌニング、別のサンプルでチェックされたす-テスト。 Netflixは、RMSEメトリックの掚奚事項の品質を枬定するこずを提案したした。









今日では、スコアを予枬するための暙準的なメトリックです。 ただし、次のような欠点がありたす。







ランキング指暙



他のメトリックもありたす。たずえば、完党性ず正確性に基づいたランキングメトリックです。 recommendedを掚奚オブゞェクトのセット、Letナヌザヌが実際に奜きなオブゞェクトのセットずしたす。









問題もありたす







その他の掚奚プロパティ



掚奚の認識は、ランキングの品質だけでなく、他のいく぀かの特性にも圱響されるこずがわかりたす。 たずえば、倚様性1぀のトピックたたはシリヌズのみでナヌザヌに映画を提䟛するべきではありたせん、驚き非垞に人気のある映画を掚奚する堎合、そのような掚奚事項はあたりにも平凡でほずんど圹に立たないでしょう、ノベルティ叀兞的な映画のような倚くの人々が、掚奚事項通垞、新しい䜕かを発芋するために䜿甚されたすおよび他の倚く。



同様の特性



オブゞェクトの類䌌性はそれほど明癜ではありたせん。 このタスクにはさたざたなアプロヌチがありたす。







開発方向



抂念的な問題







技術的な問題







远加情報の説明方法は







文孊






All Articles