Skip to the content.

最終更新日:2026年8月26日

G検定トップ > One-hotとEmbeddingの違いとは?【G検定対策】

まず結論

One-hotとEmbeddingは、単語などの離散的な対象をどうベクトル化するかの違いです。

  • One-hot:該当要素だけ1、他は0の高次元・疎な表現
  • Embedding:学習によって得られる低次元・密な実数ベクトル

G検定では、「1か0」か「学習された実数ベクトル」かで切ると分かりやすいです。

直感的な説明

One-hotは出席番号のようなものです。

番号が違うことは分かりますが、番号だけから「犬と猫は近い」といった関係は分かりません。

Embeddingは、学習によって作られる座標のようなものです。

学習目的に応じて、似た使われ方をする単語が近いベクトルになることがあります。

定義・仕組み

One-hot

語彙数が10,000なら、基本的に10,000次元のベクトルを使います。

犬 → [1, 0, 0, ...]
猫 → [0, 1, 0, ...]

特徴は次のとおりです。

  • 高次元になりやすい
  • ほとんどが0なので疎(スパース)
  • 単語間の類似関係をベクトル自体には持たない

Embedding

Embeddingでは、各単語IDに対応する低次元の実数ベクトルを持ちます。

犬 → [0.21, -0.14, 0.82, ...]
猫 → [0.24, -0.10, 0.79, ...]

このベクトルは、タスクの学習中に更新したり、Word2Vecなどで事前学習したものを利用したりできます。

重要なのは、Embeddingだから自動的に完全な意味を持つわけではなく、学習データと目的に依存することです。

いつ使う?(得意・不得意)

One-hot

  • カテゴリを単純に区別したい
  • 表現を分かりやすく保ちたい

ただし、語彙が大きいと次元数も大きくなります。

Embedding

  • ニューラルネットワークへ単語IDを入力したい
  • 低次元の密な表現を使いたい
  • 単語間の関係を学習に利用したい

Embedding層の仕組みはEmbedding層で確認できます。

G検定ひっかけポイント

One-hotは類似度を表現できる

基本的には誤りです。

異なる単語は別々の軸に置かれるため、意味的な近さを直接表しません。

Embeddingは必ず固定値

誤りです。

ニューラルネットワークのEmbedding層では、通常は学習可能なパラメータとして更新できます。事前学習済みベクトルを固定して使う設定もあるため、「常に更新される」と断定するのも避けます。

Embeddingは単語の出現回数

誤りです。出現回数中心の表現はBoW、頻度と珍しさの重み付けはTF-IDFです。

判断基準

  • 「該当位置だけ1」→ One-hot
  • 「語彙数と同程度の高次元」→ One-hot
  • 「低次元の実数ベクトル」→ Embedding
  • 「学習可能なベクトル表」→ Embedding層

まとめ(試験直前用)

  • One-hot=高次元・疎・1か0
  • Embedding=低次元・密・実数ベクトル
  • Embeddingは学習や事前学習で得られる
  • 「類似性を直接持つか」で違いを見る
  • One-hotは識別、Embeddingは学習可能な表現と切る

© 2024-2026 stemtazoo. All rights reserved.