エンベディングとエンコーディングを分けるのは包含関係ではなく、数値の近さに意味があるか

エンベディングはエンコーディングの一種。この覚え方は間違いではありませんが、二つを見分ける役にはほとんど立ちません。袋の大小を言っているだけで、中身の違いを言っていないからです。実際に二つを分けている性質は、変換した後の数値どうしの近さに意味があるかどうかです。この記事では、その軸で二つを整理し直し、名前だけで判断すると迷う場面と、言葉の範囲がずれたまま議論が進むと何が起きるかを考えます。

エンコーディングは、決まった規則で形をそろえる変換です

エンコーディング(Encoding)は、情報をある形式から別の形式に変える処理全般を指します。大規模言語モデルの文脈では、主にテキストをモデルが扱える形に変えることを言います。

  • 文字エンコーディング: 文字を数値に変える。UTF-8、UTF-16、ASCIIなど
  • トークナイゼーション: テキストを単語、サブワード、文字などのトークンに分ける。BPE(Byte Pair Encoding)、WordPieceなど
  • 位置エンコーディング: トークンの並び順の情報を加える。トランスフォーマーで使われる
  • 特殊トークンの追加: 文の開始や終了、長さをそろえる詰め物(パディング)を示す記号を加える
  • マルチモーダルエンコーディング: 画像や音声もあわせて変換する

文字コードやトークンの番号に共通するのは、数値の大小や近さに意味がないことです。UTF-8で隣り合う番号の二文字が似た意味を持つわけではなく、トークンの番号が一つ違う二語が似ているわけでもありません。番号は名札であって、住所ではないのです。

エンベディングは、近さに意味を込める変換です

エンベディング(Embedding)は、単語のような離散的なデータを、連続的な高次元ベクトルの空間に置く手法です。狙いは、意味や文法の情報を、点と点の距離として表すことにあります。似た意味の語は近くに、遠い意味の語は離れて置かれます。

  • 単語エンベディング: 単語を固定長のベクトルにする。Word2Vec、GloVe、FastText
  • 文エンベディング: 文全体をベクトルにする。InferSent、Universal Sentence Encoder
  • 文脈エンベディング: 同じ単語でも文脈に応じて違うベクトルを作る。ELMo、BERT、GPT

この近さは、規則で決めたものではなく、学習で得たものです。Word2Vecは中心の単語から周りを予測するSkip-gramや、周りから中心を予測するCBOWで、GloVeは単語が一緒に現れる統計で、FastTextは単語を文字の断片の集まりとして扱うことで、それぞれ近さを学びます。ELMoは双方向のLSTMで、BERTは双方向の自己注意で、GPTはトランスフォーマーのデコーダー部分だけを使い、前の単語から次を予測する形で、文脈に応じたベクトルを作ります。一つのモデルの中では、すべてのトークンのベクトルが同じ次元数にそろえられます。注意機構などの計算をまとめて行うためです。

名前だけで判断すると、二つの境目で迷います

近さに意味があるか、という軸で見ると、名前と中身が食い違う場面が見えてきます。

名前中身
位置エンコーディングトランスフォーマーの論文ではサイン波とコサイン波の規則で作ったが、BERTのように位置ごとのベクトルを学習で決めるモデルもある。名前はエンコーディングでも、作り方はエンベディングに近い
エンコーダートランスフォーマーの部品としてのエンコーダーが出力するのは、文脈を反映したベクトル、つまりエンベディングの一種
BPEどこで区切るかの規則はコーパスの統計から学ぶが、区切った後の番号の近さに意味はない

エンコーダーがエンベディングを出力し、位置エンコーディングが学習される。名前で分類しようとすると、ここで必ず混乱します。用語の使い方は分野や論文によって揺れていて、誰もが従う一つの定義があるわけではありません。名前を暗記するより、その変換の後で、数値の近さに意味が生まれているかを見るほうが、境目で迷いにくくなります。

ただし、この軸にも限界があります。エンベディングの近さに意味がある、と言っても、どの次元が何の意味を担っているのかは、人には読み取れません。近いことは分かっても、なぜ近いのかは、多くの場合、作った側にも正確には説明できません。近さに意味がある、というのは、意味が人に読める形で入っている、ということではないのです。

テキストがモデルに入るまでの順番で並べます

  1. 生のテキストを、トークナイゼーションでトークンに分ける(番号を振る)
  2. 必要に応じて特殊トークンを加える
  3. 各トークンの番号を、エンベディングでベクトルに置き換える(近さに意味が生まれる)
  4. 位置エンコーディングで並び順の情報を加える
  5. モデルの内部で、文脈に応じたベクトルが作られる

番号から座標へ切り替わるのが三番目です。エンベディングは、検索での文書の順位付け、感情の分類、機械翻訳、推薦などで使われ、エンコーディングは、音声認識の前処理、画像と言葉を組み合わせたキャプション生成、安全な形式での保存や転送などに関わります。

言葉の範囲がずれたままでは、議論は一致しているように見えるだけです

この混同は、技術用語に限りません。会議でエンベディングを強化しましょう、と誰かが言い、全員がうなずいたとします。ある人は検索に使う埋め込みのモデルを替える話だと思い、別の人はトークンの区切り方を見直す話だと思っています。全員がうなずいたのに、翌週には誰も同じことをしていない。この会議が失敗した理由は、言葉が一致していて中身が一致していなかったことです。合意したのは単語であって、範囲ではありません。

AIに資料をまとめさせるときも同じです。前提となる言葉の範囲を渡さなければ、AIは手持ちの知識で空白を埋め、もっともらしい一般的な意味で読みます。返ってくるのは、あなたの組織の意味ではなく、平均的な意味でまとめた結論です。言葉の範囲をどこまで細かく決めればよいかに、一般的な答えはありません。ただ、決めなかった言葉は、誰かが勝手に決めています。

あなたの会議で、全員が使っているのに、指している範囲を誰も確かめたことのない言葉は何でしょうか。その言葉を一行で定義してみたら、隣の人と同じ一行になるでしょうか。

この記事の背景にある考え方は、拙著『GoogleのAI NotebookLM 意思決定の強化書』の1章1節「意思決定の構造と前提の要素」に書きました。前提を対象、目的、制約、評価基準の四つで書き出し、そこで使う大事な言葉の意味を短く固定した定義辞書を作る、という節で、業務効率化という一語から、残業の削減を思い浮かべる人もいれば、ミスをなくすことを期待する人もいる、という例を挙げています。そこには「AIは、こちらが入力した言葉の定義に従って推論します。」とあります。この節を読むと、会議でうなずき合った言葉のうち、どれに一行の定義が要るのかを、自分で見つけられるようになります。

同じ資料を見ているのに、なぜ結論が割れるのか。

GoogleのAI NotebookLM 意思決定の強化書 表紙

『GoogleのAI NotebookLM 意思決定の強化書』

前提が結論を決める。意思決定を根拠、前提、結論の三層に分け、前提を対象、目的、制約、評価基準の四つで言葉にする本です。

読み終えたとき、手元に残るもの

  • 意思決定の設計図になる前提リスト
  • 資料を事実、意見、噂、ゴミに仕分けるFORT
  • 同じ物差しで比べる選択肢表と採点表
  • 始める条件と止める条件を書いた決定書

NotebookLMは2026年7月にGemini Notebookへ名称が変わりました。本の手法は、使うAIの種類を問いません。

Amazonで見る

著者プロフィール・お問い合わせ