« 使わないと忘れてしまうもの | メイン | こんな季節だから語りたい“お神輿”の話 »

2024年1月15日 (月)

Embeddingを試してみる

こんにちは、イノベーション開発部の森です。
今回は最近私が学んだ面白いトピックについてお話ししたいと思います。それは「Embedding」(エンベディング)です。
そもそもEmbeddingって何でしょうか?
簡単に言うと、これはデータをコンピュータが理解しやすい形に変換する方法の一つです。
Embeddingとは、単語や文、画像などの情報を、その単語や文の意味を表現するベクトル空間に配置することです。配置することで、その位置関係から要素同士の関係性を数値で扱える様になり、検索エンジンやレコメンド機能、チャットボットなど様々なものに利用できます。
例えば検索エンジンで利用する場合、キーワード検索では、キーワードが含まれている文しか検索できませんが、キーワードの持つ意味で検索をすれば、近接する意味の単語を含む文も検索できます。ネットショッピングのとき、「これもおすすめです」という商品の推薦を見たことがあるかと思います。これはEmbeddingの一例で、コンピューターが私たちの購買履歴や好みを分析して、新しい商品を提案してくれます。
今日では、上記のネットショッピングのレコメンドのほかにも様々なサービスにおいてEmbedding技術は利用されています。

では次に、Embeddingではデータの関連性をどのように導き出しているのでしょうか。実際にEmbeddingを使って画像データを3D空間にマッピングしてみました。
今回の目的は3つのジャンル、動物、乗り物、キッチン用品の画像からそれぞれ特徴抽出させて、各ジャンルがどのように分布するかを図示することです。手順としては画像の情報を単純化したベクトルデータに変換し、そのベクトルに沿ってマッピングするという手順になります。
通常、画像からベクトルデータに変換する際にはもっと高次元の複雑なデータが得られますが、今回はデモンストレーションのために3次元に次元削減してみました。
そして実際にマッピングしてみた結果が以下の画像です。

Image



動物、乗り物、キッチン用品といった異なるカテゴリの画像が、それぞれ固まっている様子が3Dマッピングで視覚化されました。
Embeddingでは、それぞれの点の近さがその類似性を表します。近ければ近いほど類似性があるということになります。
そのため動物同士でもいろんな種類がありますが、乗り物やキッチン用品に比べれば動物内の座標の方がより近いように見えます。
これは乗り物やキッチン用品と比べれば、動物同士のほうが類似性があるという結果です。

今回は単純に画像データをベクトルデータに変換してマッピングしましたが、それだけで画像の類似性がわかりやすくマッピングされたかと思います。
しかも、Embeddingでは画像に限らずテキスト、音声、動画をベクトルデータによって表現するためファイルの形式、データの形にとらわれることなく類似性を測ることができるのです。

このEmbeddingの技術は、近年私たちが利用している多くのデジタルサービスにおいて非常に重要な技術です。
さらに話題の生成AIにおいてもEmbeddingは活用されており、テキストや画像、音声データから特徴を抽出して、新しいコンテンツの生成をしています。

今回はEmbeddingについて紹介しましたが、弊社においてもお客様に便利だと思っていただけるようなサービスの開発のため、今後も勉強を重ねてまいります。
株式会社リーガルを今後ともよろしくお願いいたします。

2024年4月

  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        

検索

 
 
 
各製品Webサイト