埋め込み(エンベディング)とは?モデルはどうして言葉が似ているとわかるの?
埋め込み(エンベディング)は、言葉やトークンを「意味の空間」の中の1つの点として置く数字のリストです。「ネコ」と「子ネコ」のように似た文で使われる言葉は近くに集まり、関係のない言葉は遠くはなれます。方向にも意味があり、「王様 − 男性 + 女性」は「女王」の近くに着地します。モデルは、この点の位置を文章から学びます。
▶ やってみようなぜ大切なのか
トークンIDはただの名札です。埋め込みはそれを位置に変えるので、モデルは「子犬」が「イヌ」に似ていて「バス」とはまるでちがうとわかります。検索やおすすめも同じしかけを使っています。
6分後にできるようになること
- 入力した言葉ではなく、言いたかったことで検索結果が見つかるとき、たいてい埋め込みが働いています。
- 「イヌ」と「ホットドッグ」のように見た目が似ていても遠いことがあります。意味は見た目ではなく使われ方から生まれます。
- 埋め込みは人の文章から学ぶので、ツールがステレオタイプをどう確かめているか聞いてみましょう。
練習する内容
近い?遠い?
Vireoの意味の地図で、この組み合わせは近くにある?それとも遠くはなれている?
- ネコ・子ネコ → 近い
- 車・バナナ → 遠い
- 医師・看護師 → 近い
- 熱い・冷たい → 近い
- イカ・スイカ → 遠い
- パリ・ローマ → 近い
意味の地図
それぞれの言葉を、ふさわしいと思う場所へドラッグしましょう。それから言葉の計算に挑戦します。地図は2次元にかんたんにしたもので、本物の埋め込みには何千もの方向があります。
- 子犬 → イヌ, ネコ. 子犬は小さなイヌで、同じ文に出てくるので、動物たちのところに着地します。
- ホットドッグ → パン, チーズ. 位置を決めるのは見た目ではなく意味です。名前に「ドッグ(犬)」が入っていても食べ物なので、イヌから遠く、パンのそばに着地します。
- 自転車 → 車, 電車. 自転車は、道路、乗る、交通といった文に出てくるので、ほかの乗り物の近くにいます。
- 楽しい → うれしい, 悲しい. 「楽しい」は「うれしい」とほとんど同じように使われるので、2つはお隣さんです。
- 王様 − 男性 + 女性 ≈ 女王 (男性 → 王様). 「男性」から「王様」への矢印は、だいたい「王族」を意味する方向です。「女性」から同じだけ進むと、「女王」の近くに着地します。
- 東京 − 日本 + イタリア ≈ ローマ (国 → 首都). 国から首都への一歩は、たくさんの国で同じ向きを指します。イタリアから進むと、ミラノではなくローマに着地します。
埋め込みに出会う場所
ヘルプサイトで「お金を返してほしい」と検索したら、「返金について」というページが見つかりました。どうして?
- 言葉はちがっても、埋め込みが近いから (答え)
- だれかが言いかえを全部手で入力したから
古い文章から学んだ埋め込みが、ある仕事を女性より男性に強く結びつけています。どうすべき?
- チームが偏見をテストして直す必要がある (答え)
- 何もしなくていい。数学に偏見はないから
覚えておこう
埋め込みは、トークンそれぞれに意味の空間の住所をつけます。近いほど似ていて、方向は関係を表します。
トークンはどれも、意味の空間の点になります。近い点は使われ方が似ていて、方向は関係を表します。
押さえておきたい事実
- 言葉の意味はまわりの言葉から生まれる、という考えは、1957年に「言葉は、その仲間を見ればわかる」とまとめられました。 · 出典: J. R. Firth, A Synopsis of Linguistic Theory, 1957
- 文章から学んだ単語ベクトルで、単純な計算が関係をとらえることが示されました。「王様 − 男性 + 女性」は「女王」の近くに着地します。 · 出典: Mikolov et al., Google, Linguistic Regularities in Continuous Space Word Representations, NAACL 2013
- いちばん大きなGPT-3では、トークン1つが12,288個の数字のリストに変えられていました。 · 出典: Brown et al., OpenAI, Language Models are Few-Shot Learners, 2020
- ニュースの文章で学んだ単語の埋め込みが、仕事についての性別のステレオタイプを持っていることが示され、それを減らす方法が提案されました。 · 出典: Bolukbasi et al., Man is to Computer Programmer as Woman is to Homemaker?, NeurIPS 2016
更新日:
よくある質問
埋め込みとは、かんたんに言うと何ですか?
言葉や文章のかけらの住所のように働く、数字のリストです。意味が似たものには近い住所がつくので、コンピューターはどれくらい似ているかを測れます。
埋め込みは何次元あるのですか?
絵にかいた2次元よりずっと多いです。大規模言語モデルは、トークン1つに数百から何千もの数字を使います。2次元の地図は、かんたんにした絵にすぎません。
埋め込みは何に使われているのですか?
言語モデルの中では、読むための最初の一歩です。外では、意味で探す検索、おすすめ、似た文書のグループ分け、重複の発見に使われています。
「王様 − 男性 + 女性」は、本当に「女王」になるのですか?
だいたいそうなります。昔ながらの単語の埋め込みでは、結果はほかのほとんどの言葉より「女王」の近くに着地します。空間の方向に意味があることを示す有名な例ですが、どんな例でもうまくいくわけではありません。
関連用語
