{二つ}{embedding}{アイデア}{検索精度}{言語モデル}{レコメンド}{検索}(7)

{応向分離 K#EDD2/1690}

おそらく一般的には応類向類は同じ言語モデルで生成して検索に用いるのだが、応類向類で異なる言語モデルを用いることで以下の利点が得られる。

  • 利用者の動向から向類を学習させ、漸次的に検索精度を向上させる
  • 利用者の動向から向類を学習させ、漸次的に個々の利用者に対して検索結果を変化させる
  • 上記をしつつ、更新費用が高くなる応類を不変あるいは低頻度での更新と出来る

レコメンドにおいても同様のことができ、同じような利点が得られる。


Two-Towerモデルと同一。

{Cartesian Genetic Programmingで文章の類似度を学習}{再帰的な処理}{再帰的な構造}{Attention}{Transformer}{tzmtwtr/tw-posts-ja}{knownetにベクトル検索を実装}{GPGPU}{言語モデル}(9)

{あれ K#EDD2/4078}

遺伝的プログラミングで文章の類似度を学習させるの、CPUで一から学習させるには計算量が全然足りない。GPGPUで学習させたいが、再起的な構造と処理によって文章を処理しているために、GPGPUとは相性が悪い。構造から手をつけるべきか。

Transformerを参考にすると良さそうだが、あれを理解するのに手間取っている。さらに言えばAttentionも理解できていない。あり物のモデルを使ったり学習させるだけなら理解は不要だが、遺伝的プログラミングに組み込もうとすると十分に理解する必要がある。

普通の言語モデルも一から学習させると相応に時間がかかるだろうし、一晩で学習が進まないのを嘆くのは気が早すぎるかもしれない。私の投稿を学習データ化した物でさえ、一晩でやっと一巡できる程度だ。Wikipediaも学習データに含み出すととんでもない時間がかかる。

{言語モデル}

{}