Ahogrammer

Deep Dive Into NLP, ML and Cloud

2023-01-01から1年間の記事一覧

多言語E5をファインチューニングして検索性能を向上させる

多言語のテキスト埋め込み用のモデルであるMultilingual-E5[1]をファインチューニングして、検索性能が向上するか否かを日本語のデータセット検証してみました。結果としては、ファインチューニングすることで、OpenAIのtext-embedding-ada-002を上回る性能…

ハイブリッド検索で必ずしも検索性能が上がるわけではない

最近では、RAG(Retrieval Augmented Generation)を使って、検索して得られた文書を生成時に活用することがありますが、その性能を改善するための手法の1つとしてハイブリッド検索が知られています。ハイブリッド検索は、2つ以上の異なる検索技術を組み合わ…

ウォータールー大学による基盤モデルに関する読書リスト

今週号のData Science Weeklyにて、ウォータールー大学が開講している基盤モデルに関する講座が載っていたので紹介します。同講座では、トピックごとに整理された論文のリストが公開されているので、関心のあるトピックについて読み進めるのに適しています。…

検索性能を改善するハイブリッド検索で使えるランク融合アルゴリズム

Risk-Reward Trade-offs in Rank Fusionを読んでいて、検索システムの結果を統合するために使える教師なしのランク融合アルゴリズムについて書きたくなったのでまとめました。最近では、RAGの性能を改善するためにハイブリッド検索が使われることがあります…

LLMを用いたクエリ書き換えによる検索性能の変化を検証する

Rewrite-Retrieve-Readの論文[1]の構成で検索性能が改善するか試してみました。内容としては、RAGの内部で検索するときに、ユーザーのクエリを書き換えると性能が上がるという話です。ユーザーのクエリが検索に適しているとは限らないため、LLMで書き換えて…

LLMを用いたマルチクエリ生成による検索性能の改善

近年、大規模言語モデル(LLM)の進化は、自然言語処理の分野において画期的な変化をもたらしています。とくに、OpenAIのGPT-4のようなLLMは、その応用範囲の広さと精度の高さで注目を集めており、多くの研究者や開発者が新たな利用方法を模索しています。本…

LangChainを使ってHyDEによるクエリ変換の効果を検証する

ChatGPTやGPT-4をはじめとする大規模言語モデルの能力が向上し、多くの注目を集めています。とくにRAG(Retrieval Augmented Generation)と呼ばれる手法を使って、手元のデータを生成時に活用する手法がよく使われていますが、その性能を改善する方法は様々…

LangChain Templatesを使ってRAGを秒速で作る

本記事では、LangChain Templates[1]を利用し、RAGを簡単かつ迅速に構築する方法を紹介します。LangChainはLLMを使ったアプリケーションを実装するためのツールですが、LangChain Templatesを活用することで、煩雑なプロセスを大幅に簡略化できます。本記事…

文書検索におけるリランキングの効果を検証する

日本語でのキーワード検索とベクトル検索に対して、検索結果のリランキングを適用して性能を評価してみました。 リランキングとは? 文書検索では検索クエリにマッチングした文書を順位付けして返しますが、その結果を何らかのモデルを使って並び替えること…

Cohereの多言語用の埋め込みモデルを日本語で評価してみる

Cohereが提供を開始した多言語用のテキスト埋め込み用のモデルであるembed-multilingual-v3.0の性能を日本語の文類似度と検索のデータセットで評価してみました。 Cohere Embed v3とは CohereのEmbed v3はテキストを埋め込むためのモデルです[1]。これまでも…

ranxを使って検索システムのオフライン評価をする

ranxはPythonで実装されたランキング評価用のライブラリです。検索システムの評価に使える以下のような指標が用意されていたり、それらの結果をRRFのようなアルゴリズムで組み合わせたり、論文用にテーブルをエクスポートする機能を備えています。本記事では…

OpenAIの埋め込みよりも高性能?多言語E5を日本語で評価してみる

多言語のテキスト埋め込み用のモデルであるMultilingual-E5-largeの性能を日本語のデータセットで評価してみました。 E5とは E5とはEmbEddings from bidirEctional Encoder rEpresentationsの略で、テキストの埋め込み用のモデルです[1]。Web上から収集した…

生成したテキストをGPT-4で評価している論文

最近は、ChatGPTやGPT-4に関する記事が多数公開されています。とくに、自社の持つ文書に対して問い合わせをし、そこから回答を抽出したり、要約を生成するようなユースケースを見かけることが多い気がしています。こういったユースケースの場合、伝統的な評…