エンベディング: 低次元空間への翻訳

エンベディングとは、 翻訳できる次元が比較的低次元のスペースです。 高次元ベクトルに分割できます。高次元と高次元の 低次元データについては、カテゴリ データ 説明します。

エンベディングを使用すると、大規模なデータセットで ML を実行しやすくなります。 特徴ベクトル: 食事の項目を表すスパース ベクトルとして、 前のセクションをご覧ください。エンべディングで取得できるデータの一部は 意味が似ている入力を近い位置に配置することで、入力のセマンティクスを エンべディング空間に出力されます。たとえば適切なエンべディングでは、 「車」という言葉「ガレージ」の近くより正確に表現できます。エンべディングはトレーニングと モデル間で再利用できます。

エンベディング ベクトルが情報をどのように表現するかを理解するために、 トレーニングした料理を 1 次元で表現した例を ホットドッグ ピザ サラダ shawarma Borscht 「クラウド コンピューティング モデル」の サンドイッチ 「サンドイッチのようなもの」にします。"サンドイッチ"単一のディメンションです。

図 3. サンドイッチの軸に沿って、小さい方から大きい方へ並べます。
    ボルシチ、サラダ、ピザ、ホットドッグ、シャワルマ
図 3. 「サンドイッチ」という想像上の側面に沿った食品。

この行のどこに リンゴ シュトゥルーデル 秋?hot dogshawarma の間に配置します。しかし、リンゴは また、シュトゥルーデルには甘さの別の側面があるようです または「デザート」という呼び名を含む 他のオプションとは大きく異なります。次の図は、この 「デザート」という商品を追加してディメンション:

図 4. 先ほどと同じ画像ですが、縦軸が
    あります。アップル シュトゥルーデルはホットドッグとシャワルマの間ですが、
    横軸は上の方に表示されていますが、デザート性の軸は上にあります。
図 4. 「サンドイッチ」と「サンドイッチ」の両方のグラフに示された食品検索します

エンベディングは、n 次元空間内の各項目を n で表します。 浮動小数点数(通常は -1 ~ 1 または 0 ~ 1) たとえば、図 4 のエンベディングは、 2 つの座標を持つ 2 次元空間です。アイテム「リンゴ シュトゥルーデル」が次にある: グラフの右上の象限であり、点(0.5, 0.3)を割り当てることができ、 「ホットドッグ」はグラフの右下の象限にある ポイント(0.2、–0.5)を割り当てることができます。

エンべディングでは、任意の 2 つのアイテム間の距離を計算できる 数学的には、 これら 2 つの相対的な類似性として解釈できます あります。近くにある 2 つのデバイス(shawarmahot dog など) 図 4 では、遠く離れた 2 つの物事よりも密接に関連しています。 apple strudelborscht など。

また、図 4 の 2D 空間では、apple strudel の方がはるかに遠くになっています。 shawarmahot dog から、1 次元空間よりも apple strudel はホットドッグやシャワルマほどではない 犬とシャワルマの関係です。

次に、他の品目よりもはるかに流動性が高いボルシチについて考えてみましょう。この は、3 つ目の次元である流動性(食べ物がどのくらい流動しているか)を示唆しています。 このディメンションを追加すると、アイテムを以下のように 3D で可視化できます。

図 5. 前と同じ画像だが、流動性の第 3 軸がある
    他方の 2 つに直角な方向で、ボルシチはその軸に沿って遠くに移動しています。
図 5. 「sandwichness」でプロットされた食品、「デザート」および 「流動性」です。

この 3D 空間で、 タンギャンに行きますか?です。 スープのようなボルシチ、リンゴのシュトゥルーデルなどの甘いデザートです サンドイッチではありません次のような配置が可能です。

図 6. 前と同じ画像だが、タンギャンを高い位置に配置している
    デザートと流動性があり、サンドイッチが少ないのです。
図 6. 前の画像にタンギュアンを追加 "デザート"「流動性」低めの「サンドイッチ」です

この 3 つの次元で表現される情報量に注目してください。 「meatiness」や「bakedness」などのディメンションを追加することも考えられます。

実世界のエンベディング空間

上の食品の例で見たように、小さな多次元空間であっても 意味的に類似したアイテムをグループ化し、 モデルにフィードできますベクトルの位置(距離と方向) セマンティクスを適切なエンベディングにエンコードできます。たとえば、次のようになります。 実際のエンべディングを可視化すると、 単語を国と首都と区別するためです。ご覧のとおり、この距離は 「カナダ」から「オタワ」に変更「トルコ」からの距離とほぼ同じですから 「アンカラ」。

図 7. 単語を表す単語エンベディングの 3 つの例
      性別(男/女と王/女王は大まかに
      動詞時制(歩く/歩くと泳ぐ/泳ぐ)はおおよそ
      、首都(トルコ/アンカラ、ベトナム/ハノイ)を
      ほぼ同じ長さになります)。 <ph type="x-smartling-placeholder">
</ph> 図 7.エンべディングは、優れたたとえ話を生み出すことができます。

意味のあるエンベディング空間は ML モデルによるパターン検出を支援 必要があります。

エクササイズ

この演習では、エンべディング Projector ツールを使用して単語を可視化する word2vec というエンベディング ベクトル空間で 70,000 以上の英単語を数値で表す。

タスク 1

次の作業を行ってから、次の質問に答えてください。

  1. Embedding Projector ツールを開きます。

  2. 右側のパネルで、[検索] フィールドに「atom」と入力します。その後 下の結果([4 件の一致] の下)で「Atom」をクリックします。お客様の 画面は図 8 のようになります

    図 8. 「atom」と表示された、プロジェクター埋め込みツールのスクリーンショット
    (赤い丸で囲んだ部分)を入力します。スライドの
    ツールの中心に、ポイントの 1 つに「Atom」というアノテーションが付けられ、
    近隣の地点に単語の注釈を追加します「Nearest」に
    点数list、単語「原子」、「分子」、「電子」リストにある
    ベクトル空間で「Atom」に最も近い単語として表現されます。 <ph type="x-smartling-placeholder">
    </ph> 図 8.埋め込みプロジェクター ツール、「atom」という言葉追加済み 」と入力します(赤い丸で囲んだ部分)。
  3. 右側のパネルで、[101 個のポイントを分離] ボタン(上図)をクリックします。 Search フィールドなど)を使用して、Atom に最も近い 100 の単語を表示します。画面 図 9 のようになります

    図 9. Embedding Projector ツールのスクリーンショット
    &#39;101 点を切り分ける&#39;クリックされた状態を表します(赤い丸で囲まれたボタン)。可視化
    今度は、図 8 の「atom」という単語だけが表示されるよう
    ベクトル空間内の最も近い 100 個の単語。これには「atoms」という単語が含まれます。
    「nucleus」、「particle」の 3 つです。 <ph type="x-smartling-placeholder">
    </ph> 図 9.プロジェクター ツールの埋め込みに「101 ポイントを分離」を追加 クリックされた状態(赤い丸で囲まれた部分)を表します。

[元のスペースの最も近いポイント] の下に表示された単語を確認します。 次の単語をどのように説明しますか。

こちらをクリックして回答をご覧ください

単語に最も近い単語の大半が、確率的に関連する 複数形の「atoms」のように、Atom 型の単語が、 「電子」「分子」「核」です。

タスク 2

次の作業を行ってから、次の質問に答えてください。

  1. 右側のパネルにある [Show All Data] ボタンをクリックしてデータをリセットします 可視化を行います。

  2. 右側のパネルの [検索] フィールドに「uranium」と入力します。 画面が図 10 のようになります。

    図 10. 「uranium」と記載された埋め込みプロジェクター・ツールのスクリーンショット
    入力します。画面中央の可視化は
    ツールがポイントの一つに「uranium」という注釈を付け、
    単語の注釈が付けられます。[最も近いポイント] に追加list の場合、
    「石炭」、「同位体」、「ニッケル」、「酸化物」、「鉱石」、「亜鉛」などの単語
    &#39;マンガン&#39;ベクトル空間に最も近い単語としてリストされます。
    「ウラン」です。 <ph type="x-smartling-placeholder">
    </ph> 図 10.埋め込みプロジェクター ツール、「uranium」という言葉 入力します。

[元のスペースの最も近いポイント] に表示されている単語を確認します。方法 これらの単語は「Atom」に最も近い単語と異なりますか?

こちらをクリックして回答をご覧ください

ウランとは、 化学元素 最も近い単語の多くは、他の元素である亜鉛、マンガン、 3 種類あります

タスク 3

次の作業を行ってから、次の質問に答えてください。

  1. 右側のパネルにある [Show All Data] ボタンをクリックしてデータをリセットします 可視化を行います。

  2. 右側のパネルで、[検索] フィールドに「オレンジ」と入力します。お客様の 図 11 のようになります

    図 11. Projector ツール埋め込みツールのスクリーンショット(オレンジ)
    入力します。ツールの中央にある可視化
    ポイントの 1 つに「orange」という語のアノテーションを付け、
    アノテーションが表示されます。[最も近いポイント] に追加list、
    「黄色」、「緑」、「青」、「紫」、「色」という単語がリストにある
    ベクトル空間で「オレンジ」に最も近い単語です。 <ph type="x-smartling-placeholder">
    </ph> 図 11.埋め込みプロジェクター ツール、「orange」という言葉 入力します。

[元のスペースの最も近いポイント] に表示されている単語を確認します。 ここに表示される単語の種類と、その種類について、どのようなことに気付きましたか? 表示されない場合は

こちらをクリックして回答をご覧ください

単語に最も近いものはほぼすべて「黄色」や「緑」 「青」「紫」「red」が表示されます。最も近い単語(「ジュース」)のうちの 1 つだけ その言葉の他の意味(柑橘類の果物)を指す。その他の果物 たとえば「apple」は「banana」をリストに入っていません 検索します。

この例は、静的エンベディングの主な欠点の一つを示しています。 使用できます。ある単語の考えられるすべての意味が、単一の ベクトル空間内の点です。したがって、「オレンジ」の類似度分析を行うと、です 特定の記号に対して最も近い点を分離できない 「オレンジ」など「オレンジ」ではなく(色)。