これは長時間の撮影ですが、私は大量のword2vecモデルを効率よく生産に持ち込む方法をいくつかアドバイスしたいと思っています環境。Word2Vecモデルをプロダクションサービスに効率的に持ち込む
私たちは300のディメンションを持つ訓練されたw2vモデルの範囲を持っています。根底にあるデータ - POSタグ付き単語を持つ巨大なコーパス。これらのモデルは非常に大きくなりました。私たちは現在、インフラストラクチャーに高すぎる価格を支払うことなくユーザーにこれらを公開する効果的な方法を模索しています。
明らかに、ボキャブラリのサイズをよりよく制御しようとすることに加えて、特徴ベクトルの次元削減はオプションになります。誰もがその周りの出版物を知っていますか?これがモデル品質にどのように影響するか、そしてこれを最も良く測定するにはどうすればよいでしょうか?
もう1つの選択肢は、各ボキャブラリーワードに最上位の最も類似したワードを事前に計算し、ルックアップテーブルを提供することです。モデルのサイズがそれほど大きいので、これも現在非常に非効率的です。 n x n-1から必要な距離計算の回数を減らすために使用できるヒューリスティックがありますか?
ありがとうございました!
ANNOYライブラリと関連する質問への詳細な回答、アイデア、リンクをありがとうございました!残念ながら、私たちはProductionでJavaバインドされており、Pythonサービスを実行することはできません。私はしかし、float16の操作のアイデアを調査します。私たちの目的のために、私たちは実際には低頻度の類似単語に非常に興味があるので、フィルタリングは躊躇しています。私はいくつかのアイデアを試してみることにしました。私はこの論文で見つけました:https://rd.springer.com/chapter/10.1007/978-3-319-30671-1_15。モデルの品質の変化を評価するために独自の評価データセットを設定する必要があると私は考えています。 – Matthias