2017-08-06 8 views
2
Word2Vecで

、私はCBOWの両方とスキップグラムは、ベクトル(cmiiw)を作成するために、ワンホットエンコーディング値を生成することを学んだ、私は計算したりへのワンホットエンコーディング値を表しする方法を疑問に思う実数値このことから :例えば、ベクター、(DistrictDataLab's Blog about Distributed Representationsソース): One-Hot Encoding's example へ: One-Hot Encoding's example 助けてください、私は、この情報を見つけることに苦労しました。ワンホットエンコーディング値を実数ベクトルに換算する方法は?

答えて

4

word2vecアルゴリズム自体はインクリメンタル多様な寸法値で、実数値ベクトルを学習するものです。ワンホットエンコーディングとは対照的に

は、これらのベクターはしばしば「密埋め込み」と呼ばれています。多くのディメンションとほとんどゼロの値を持つ「まばらな」ワンホットエンコードとは異なり、ディメンションは少なく、ゼロ値はありません。別の連続座標系に個別の単語セットを「埋め込む」ため、「埋め込み」です。

あなたは密な埋め込みが行われているかの完全な正式な説明についてはoriginal word2vec paperを読みたいと思います。

しかし、密集したベクトルは完全にランダムに開始するので、最初はアルゴリズムの内部神経回路網は隣接する単語を予測するのに役に立たない。しかし、テキストコーパスからの各(文脈)→(ターゲット)単語訓練例は、ネットワークに対して試行され、所望の予測との差が、より良い予測のために小さなナッジを適用するために使用されるたびに、および内部ネットワーク重み値が含まれます。

初めに大きなナッジ(より高い学習率)を繰り返し、次により小さなナッジを使用すると、密度の高いベクトルは、最初のランダム性から有用な相対配置まで座標を並べ替えます。モデル自体の限界を考慮して、トレーニングテキストを予測することが可能です。つまり、いくつかの例では予測を改善し、他のものはそれを悪化させ、他の人には悪化させるため、訓練を検討することもできます)。

次に、結果の密な埋め込み実数値ベクトルをモデルから読み込み、近くの単語の予測以外の目的でそれらを使用してください。

+0

あなたが再び私を助けてgojomoありがとうございました。およそ密埋め込み上記のご説明を参照して、私は右だ、Word2Vecは実数値ベクトルとしてワンホットエンコーディングが、ランダム密な埋め込みを生産されていないことをもらいますか? – aryswisnu

+1

Word2Vecは、訓練の例がどのように表現されているかのように、高次元のワンホットエンコーディングをとって、訓練時間低次元高密度埋め込み(ゼロ次元がほとんどない実数値ベクトル)で学習すると考えることができます。それらの*スタート*ランダムしかし、トレーニングのプロセスは、それらが他の目的のためにも有用に整理することが判明した単語予測をうまくするように強制します。 – gojomo

関連する問題