0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

RAGでは「巨人の星」を理解しているのか

Posted at

はじめに

LLMを使ったRAGが大流行です。
そこで気になったのがRAGでのLLMは日本語をどの程度理解してくれているのか、です。

日本に住む平均的な人であれば
「私は巨人の星が好きです」
に対して以下の2つの文
①「私は漫画が好きです」
②「私は星が好きです」
があれば、①の方が類似度が高いと判断できるでしょう。

「巨人の星」は「漫画」の一つであり、「巨人の星」の上位概念の一つは「漫画」だからです。

いや、年代によっては「巨人の星」を知らないかもですが。

intfloat/multilingual-e5-large

では
「私は巨人の星が好きです」
に対して以下の2つの文
①「私は漫画が好きです」
②「私は星が好きです」
の類似度をmultilingual-e5-largeで比較してみます。

比較1

「私は巨人の星が好きです」

①「私は漫画が好きです」

の比較結果(ベクトルのコサイン類似度)は

0.8799271583557129

でした。

次に

「私は巨人の星が好きです」

②「私は星が好きです」

の比較結果(ベクトルのコサイン類似度)は

0.9378243684768677

でした。

考察1

あらら... multilingual-e5-large ではこの文を正しく比較はできないようです。
multilingual-e5-large では固有名詞を含む文に対しての「類似度」の判定が難しいのだと思われます。

対策

固有名詞である「巨人の星」を別の語で置き換えてみましょう。
国語辞書に「巨人の星」の定義は無いと思われるので、みんな大好きWikipediaを見てみます。

image.png

Wikipediaには以下の文がありました。

『巨人の星』(きょじんのほし)は、原作:梶原一騎・作画:川崎のぼるによる日本の漫画作品。

この定義を基に

「巨人の星」→「原作:梶原一騎・作画:川崎のぼるによる日本の漫画作品。」

に置き換えて比較してみましょう。(※「星」という文字も消してあります)

比較2

「私は(原作:梶原一騎・作画:川崎のぼるによる日本の漫画作品。)が好きです」

①「私は漫画が好きです」

の比較結果(ベクトルのコサイン類似度)は

0.8921971321105957

でした。

次に

「私は(原作:梶原一騎・作画:川崎のぼるによる日本の漫画作品。)が好きです」

②「私は星が好きです」

の比較結果(ベクトルのコサイン類似度)は

0.8658530712127686

でした。

考察2

おお、比較の結果が逆転しました。

つまり「固有名詞を含む文を multilingual-e5-largeを用いて類似度を計算すると、固有名詞の意味が反映されていないようであるが、固有名詞を「固有名詞を説明する文」に置き換えると、結構いい感じで類似度を出してくれる可能性が高い」ということではないかと思います。


以上。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?