矢野千紘, 塚越駿, 笹野遼平, 武田浩一 (2024) 日本語文埋め込みの文書検索性能と検索補助付き生成での評価. 言語処理学会発表論文集, 2024/03.
理解できたかどうかは別にして、読んだものはなんでも記録しておこうということで…
文書検索における文埋め込み手法の性能を比較したという発表。文埋め込みを使った密ベクトル検索、およびRAGに注目する。意外にも、日本語での評価は「ほとんど行われていない」由。えええ、そういうもんなんですか?
評価対象となるモデルは以下の通り。
- ベースライン
- BM25: 疎ベクトル検索の手法。Pyserimiで実装、Kuromojiで分かち書き
- cl-tohoku/bert-base-japanese-v3: 密ベクトル検索。東北大BERT-base。出力埋め込み表現の平均をとったものを評価したとのこと。[HaggingFaceだと tohoku-nlp/bert-base-japanese-v3 ね]
- 日本語文埋め込みモデル [知識不足でよくわからんのだが、GLuCoSE以外は全部東北大BERTに基づいているのでは]
- llm-book/bpr-aio-base: 既存の密ベクトル検索モデル。[名称からして、書籍「大規模言語モデル入門」のサポートとして公開されているものなんじゃないかと思うのだが、huggingfaceには見当たらなかった]
- cl-nagoya/{sup,unsup}-simsce-ja-{base, large}: 名大SimSCE。細かい違いがあって全部で6種類。
- pkshatech/GlLuCoSE-base-ja: PKSHA社によるGLuCoSE。日本語LUKEというのに基づいているのだそうだ。
- pkshatech/simcse-ja-bert-base-clcmlp: PKSHA社によるSimSCE。
- 多言語文埋め込みモデル
- intfloat/multilingual-e5-{small, base, large}: mE5。[Microsoftのやつね]
- sentence-transformers/LaBSE: LaBSE。[Googleのやつ]
- sentence-transformers/stsb-xlm-r-multilingual: XLM-R。[Metaのやつ]
- 商用システム
- OpenAI (text-embedding-ada-002)
3つのデータセットを使って、文書検索、ならびにRAGでの評価を試す。モデルの多くはこれらのデータセットを使って学習していて、文書検索においてはそういうモデルが勝つんだけど、なかでもmE5の性能が良かった由。
[どのモデルの学習にも一切使われていないようなデータセットを使って検証すればよかったのでは? と思ったんだけど、この分野における常識が全然わからないので、なんともいえない]
————
正直、こういうテクニカルな話を私ごときが読んでもしょうがないんだけど、なんとなく雰囲気がつかめたのでよしとしよう。
日本語に特化したモデルのほうが勝つのかと思ったら、そうでもないんですね。とりあえずE5使っとけ、ってことなのかなあ。
RAGにおける性能を評価する手順がややこしく、LLMの評価研究って大変なんだなあと思いました。(小学生の社会科見学みたいな感想だ)
まあとにかく、知識不足で、細かいことはよくわかんない。もう少し勉強しなきゃな。