翻訳者 | 朱 仙中 レビュー | Chonglou 制作:51CTO テクノロジースタック(WeChat ID:blog) この記事では、OpenAI の複数の埋め込みモデルと複数のオープンソースの多言語埋め込みモデルを包括的に比較し、最終的に最も適したビッグデータ開発モデルを選択できるようにします。 1. はじめにOpenAI は最近、Embedding v3 と呼ばれる次世代の埋め込みモデルをリリースしました。同社では、このモデルを多言語パフォーマンスが向上したこれまでで最も高性能な埋め込みモデルであると説明しています。これらのモデルは、text-embedding-3-mall と呼ばれる小さいモデルと、text-embedding-3-large と呼ばれるより大きく強力なモデルの 2 つのカテゴリに分けられます。 これらのモデルがどのように設計され、トレーニングされるかについては、ほとんど情報が公開されていません。以前リリースされた埋め込みモデル(2022 年 12 月、モデル クラス ada-002 経由)と同様に、OpenAI は再びクローズド ソース市場戦略を選択し、これらのモデルには有料 API 経由でのみアクセスできるようになりました。 しかし、これらのモデルは人々がお金を払うほど優れているのでしょうか? この投稿の目的は、これらの新しいモデルのパフォーマンスをオープンソース モデルのパフォーマンスと経験的に比較することです。ユーザークエリに応じてコーパス内で最も関連性の高いドキュメントを検索するデータ取得ワークフローを使用して比較します。 私たちのコーパスは、現在最終検証段階にある EU 人工知能法 (https://artificialintelligenceact.eu/) になります。このコーパスの興味深い特徴は、AI に関する世界初の法的枠組みであることに加えて、24 の言語で利用できることです。これにより、異なる言語ファミリー間でのデータ取得精度を比較できるようになります。 この記事では、主に次の 2 つの手順を実行します。
この論文で提示されたすべての結果を再現するためのコードと関連データは、Github リポジトリ (https://github.com/Yannael/multilingual-embeddings) で提供されています。この論文で採用されているアプローチは、EU AI 指令を例にしていますが、他のデータ コーパスにも適用できることに注意してください。 2. カスタム質問応答データセットを生成するまず、さまざまな埋め込みモデルのパフォーマンスを評価するために使用されるカスタム データ、つまり質問応答 (Q/a) データセットを生成することから始めましょう。カスタムの質問応答データセットを生成する利点は 2 つあります。 まず、データセットが埋め込みモデルのトレーニングの一部にならないようにすることでバイアスを回避します。これは、MTEB などの参照ベンチマークで発生する可能性があります (https://huggingface.co/spaces/mteb/leaderboard)。 2 番目に、検索拡張アプリケーション (RAG) の場合などに関連する可能性のある特定のデータ コーパスに対する評価が可能になります。 Llama Index のドキュメントで提案されている簡単なプロセスに従います。まず、コーパスをチャンクのグループに分割します。次に、各チャンクに対して、大規模言語モデル (LLM) を通じて合成質問のセットが生成され、回答が対応するチャンクに含まれるようになります。プロセスは次のとおりです。 写真 Llama Indexメソッドを使用して、データの質問応答データセットを生成します。 上記の戦略を実装するのは、Llama Index などの LLM データ フレームワークを使用すると簡単です。次のコードに示すように、高レベル関数を使用すると、コーパスをロードしてテキストをセグメント化するのは簡単です。 この場合、コーパスは EU AI 指令の英語版であり、公式 URL (https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A52021PC0206) を使用して Web から直接入手できます。 最終版はまだすべてのヨーロッパ言語で利用可能ではないため、2021 年 4 月のドラフト版を使用します。このバージョンでは、URL 内の英語を他の 23 の EU 公用語のいずれかに置き換えて、別の言語のテキストを取得できます (ブルガリア語の場合は BG、スペイン語の場合は ES、チェコ語の場合は CS など)。 写真 EU AI指令をEU公式24言語でダウンロードする(EU公式ウェブサイトから) PensioneSplitter オブジェクトを使用して、ドキュメントを 1000 トークンのチャンクに分割します。英語の場合、約 100 個のチャンクが生成されます。 各チャンクは、次のプロンプト (Llama インデックス ライブラリで提案されるデフォルトのプロンプト) のコンテキストとして提供されます。 プロンプトは、まるで教師が今後のクイズを準備しているかのように、ドキュメントの塊に関する質問を生成するように設計されています。各チャンクに対して生成される質問の数は、パラメータ「num_questions_per_chunk」として渡され、その値は 2 に設定されます。次に、Llama インデックス ライブラリの generate_qa_embedding_pairs を呼び出して質問を生成できます。 このタスクでは、OpenAI の GPT-3.5-turbo-0125 モデルを使用します。OpenAI によれば、このモデルはファミリーのフラッグシップ モデルであり、16K サイズのコンテキスト ウィンドウをサポートし、ダイアログ ボックス用に最適化されています (https://platform.openai.com/docs/models/gpt-3-5-turbo)。 結果のオブジェクト「qa_dataset」には、質問と回答(チャンク)のペアが含まれます。生成された質問の例として、最初の 2 つの質問の結果を以下に示します (「回答」は最初のテキスト ブロックです)。 1)説明覚書によると、人工知能に関する統一規則を定める規則(人工知能法)の提案の主な目的は何ですか? 大まかな中国語の意味は次のとおりです。説明覚書によると、人工知能に関する統一規則を確立するための規制案(「人工知能法」)の主な目的は何ですか? 2) コンテキスト情報で概説されているように、人工知能に関する規制の提案は、欧州連合における AI の導入を促進しながら、AI の使用に関連するリスクにどのように対処することを目指していますか? 大まかな中国語の意味は次のとおりです。コンテキスト情報に記載されているように、AI規制の提案は、EUでのAIの導入を促進しながら、AIの使用に関連するリスクにどのように対処することを目指していますか? チャンクと質問の数は言語によって異なり、英語では約 100 チャンクと 200 質問、ハンガリー語では 200 チャンクまたは 400 質問になります。 3. OpenAI埋め込みモデルの評価私たちの評価関数は、Llama Index のドキュメントに従っており、次のようになります。 (https://docs.llamaindex.ai/en/stable/examples/finetuning/embeddings/finetune_embedding.html)、 これには主に 2 つのステップが含まれます。 まず、すべての回答 (ドキュメント チャンク) の埋め込みが VectorStoreIndex に保存され、効率的に検索できるようになります。次に、評価関数はすべてのクエリをループし、最も類似する上位 k 個のドキュメントを取得し、MRR (平均逆順位) に基づいて検索の精度を評価します。 埋め込みモデルは、「embed_mode」パラメータを介して評価関数に渡されます。 OpenAI モデルの場合、このパラメーターはモデル名とモデル寸法で初期化された OpenAIEmbedding オブジェクトです。 API パラメータ dimensions を使用すると、埋め込みの概念的表現プロパティを失うことなく、埋め込みを短縮できます (つまり、シーケンスの末尾からいくつかの数字を削除します)。たとえば、OpenAI は発表の中で、MTEB ベンチマークでは埋め込みをサイズ 256 に短縮しても、サイズ 1536 の短縮されていない text-embedding-ada-002 埋め込みよりも優れたパフォーマンスを発揮できることを示唆しました。 私たちは、4 つの異なる OpenAI 埋め込みモデルで評価関数を実行しました。 ltext-embedding-3-largeの2つのバージョン:1つは可能な限り低い次元(256)で、 もう 1 つは、最も高い次元 (3072) を持ちます。これらは「OAI-large256」および「OAI-Large3072」と呼ばれます。 lOAI-small: サイズが 1536 の text-embedding-3-small 埋め込みモデル。 lOAI-ada-002: サイズ 1536 の従来の text-embedding-ada-002 モデル。 各モデルは、英語 (EN)、フランス語 (FR)、チェコ語 (CS)、ハンガリー語 (HU) の 4 つの異なる言語で評価され、それぞれゲルマン語、ロマンス語、キリル語、ウラル語をカバーします。 MRR 結果に基づく精度レポートは次のとおりです。 OpenAIモデルのパフォーマンス概要 予想どおり、大規模モデルでは埋め込みサイズが 3072 と大きいほどパフォーマンスが向上します。ただし、小型の従来の Ada モデルと比較すると、大型モデルは予想よりも小さくなります。比較のために、MTEB ベンチマークで OpenAI モデルによって得られたパフォーマンスも以下に報告します。 OpenAI の埋め込みモデルのパフォーマンス (公式発表で説明されているとおり) 私たちの評価では、大規模モデル、小規模モデル、および Ada モデル間のパフォーマンスの違いは、MTEB ベンチマークの場合ほど顕著ではないことは注目に値します。これは、大規模なベンチマークで観察された平均パフォーマンスが、必ずしもカスタム データセットで得られたパフォーマンスを反映するわけではないという事実を反映しています。 4. オープンソース埋め込みモデルの評価現在、埋め込みに関するオープンソースの研究は非常に活発で、新しいモデルが定期的に公開されています。最新リリースモデルの最新情報を入手するには、Hugging Face MTEB リーダーボード (https://huggingface.co/spaces/mteb/leaderboard) が最適です。 本論文では比較のために、最近(2024 年)公開された 4 つの埋め込みモデルのセットを選択しました。選考基準は、MTEB リーダーボードの平均スコアと多言語データを処理する能力でした。選択されたモデルの主な特徴は以下の通りです。 選択されたオープンソース埋め込みモデル lE5-Mistral-7B-instruct (E5-Mistral-7B): Microsoft のこの E5 埋め込みモデル (https://huggingface.co/intfloat/e5-mistral-7b-instruct) は、Mistral-7B-v0.1 から初期化され、多言語データセットの混合で微調整されています。このモデルは MTEB リーダーボードで最高のパフォーマンスを発揮しますが、これまでで最大のモデル (14GB) でもあります。 lmultilingual-e5-large-instruct (ML-e5-larg): 多言語データをより適切に処理できるように設計された、Microsoft の別の e5 モデル。これは xlm-roberta-large から初期化され、多言語データセットの混合でトレーニングされます。これは E5-Mistral よりもはるかに小さい (10 倍) ですが、コンテキスト サイズもはるかに小さくなります (514)。 lBGE-M3: このモデル (https://huggingface.co/BAAI/bge-m3) は北京人工知能アカデミーによって設計され、100 を超える作業言語をサポートする最も高度な多言語データ埋め込みモデルです。 2024年2月22日現在、MTEBリーダーボードではベンチマークされていません。 lnomic-embed-text-v1 (nomic-embed): このモデルは Nomic (https://home.nomic.ai/) によって設計され、OpenAI Ada-002 や text-embedding-3-small よりも優れたパフォーマンスを発揮すると主張していますが、サイズはわずか 0.55GB です。興味深いことに、このモデルは完全に再現可能で監査可能な最初のモデルです (オープン データとオープン ソースのトレーニング コード)。 これらのオープンソース モデルを評価するために使用されるコードは、OpenAI モデルに使用されるコードと似ています。主な変更点はモデル仕様にあり、最大コンテキスト長やプーリング タイプなどの追加の詳細を指定する必要があります。次に、4 つの言語ごとに各モデルを評価します。 MRR に基づく精度レポートは次のとおりです。 オープンソースモデルのパフォーマンス概要 上記のグラフからわかるように、BGE-M3 のパフォーマンスが最も高く、次いで ML-E5-Large、E5-mistral-7b、Nomic Embed となっています。 BGE-M3 モデルは MTEB リーダーボードでベンチマークされていませんが、結果から、他のモデルよりも上位にランクされる可能性があることが示唆されています。 BGE-M3 は多言語データに最適化されていますが、英語でも他のモデルよりも優れたパフォーマンスを発揮する点に注目すべきです。 以下では、各埋め込みモデルの処理時間も報告します。 英語の質問応答データセットを閲覧するための処理時間(秒) E5-mistral-7b は他のモデルよりも 10 倍以上大きく、はるかに遅いモデルであることが簡単にわかります。 5. 結論ここで、同じ図でテストした 8 つのモデルのパフォーマンスを比較してみましょう。 8つのテストモデルのパフォーマンス比較 上記の結果から、次のような主な結論が得られます。
この結論に基づいて、有料の OpenAI に加入するべきでしょうか、それともホストされたオープンソースの埋め込みモデルを使用することを選択するべきでしょうか? OpenAI の最近の価格改定 (https://openai.com/pricing) により、API へのアクセスがより手頃になり、現在のコストは 100 万トークンあたり 0.13 ドルとなっています。したがって、1 か月あたり 100 万のクエリを処理するコスト (各クエリに約 1K のトークンが関係すると想定) は約 130 ドルになります。したがって、使用方法によっては、独自の組み込みサーバーをレンタルして維持することはコスト効率が良くない可能性があります。 ただし、コスト効率だけが考慮されるわけではありません。レイテンシ、プライバシー、データ処理ワークフローの制御など、他の要素も考慮する必要があるかもしれません。対照的に、オープンソース モデルは、完全なデータ制御、強化されたプライバシー、カスタマイズなどの利点を提供します。一方、OpenAI の API にもレイテンシの問題があり、応答時間が長くなることがあります。 要約すると、オープンソース モデルと OpenAI のような独自のソリューションの選択については、まだ簡単な答えはありません。明らかに、オープンソースの埋め込みは、パフォーマンスとデータのより優れた制御を組み合わせるという利点を備えた魅力的な代替手段を提供します。むしろ、OpenAI の製品は、特にプライバシーの懸念が二の次である場合、利便性を優先する人々にとって依然として魅力的である可能性があります。 主な参考文献コンパニオン Github リポジトリ: https://github.com/Yannael/multilingual-embeddings 文の埋め込みについて知りたいことすべて(そしておそらくそれ以上のこと): https://osanseviero.github.io/hackerllama/blog/posts OpenAI ブログ投稿: 新しい埋め込みモデルと API の更新 https://openai.com/blog/new-embedding-models-and-api-updates 埋め込み: OpenAI ガイド 埋め込みモデル MTEB: 大規模テキスト埋め込みベンチマークと Hugging Face MTEB リーダーボード https://huggingface.co/spaces/mteb/leaderboard テキスト埋め込み: 総合ガイド https://towardsdatascience.com/text-embeddings-comprehensive-guide-afd97fce8fb5 検索強化生成 (RAG) 実践ガイド https://cameronrwolfe.substack.com/p/a-practitioners-guide-to-retrieval. RAG に最適な多言語埋め込みモデルを見つける方法 https://towardsdatascience.com/how-to-find-the-best-multilingual-embedding-model-for-your-rag-40325c308ebb 翻訳者紹介Zhu Xianzhong 氏は、51CTO のコミュニティ エディターであり、51CTO の専門ブロガー兼講師であり、濰坊の大学のコンピューター教師であり、フリーランス プログラミング コミュニティのベテランです。 オリジナルリンク: https://towardsdatascience.com/openai-vs-open-source-multilingual-embedding-models-e5ccb7c90f05 |
<<: クラウドAI市場は2028年までに2,700億ドルに達すると予想
データ注釈はほとんどの人工知能の基盤であり、機械学習とディープラーニング モデルの品質を決定します。...
[[377176]] 2020年の新型コロナウイルスの世界的な蔓延は、人類にとって永遠の記憶となるこ...
ガートナーの 2021 年人工知能ハイプ サイクルの 4 つのトレンドが、短期的な AI イノベーシ...
[[269741]] 01 数日前、あるニュースが私の周りの多くの人々に反省と心配を抱かせました。 ...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
[[266831]]臨床医は世界で最も困難な仕事の一つです。彼らは、高齢の患者層に対応するために24...
休暇で旅行するときは、写真を撮ることが必須です。しかし、景勝地で撮影した写真の多くは、背景に何かが写...
AI スタートアップのアイデアは、わずか 2 か月の作業で商品化できるのでしょうか?今年のイノベーシ...
写真を 3D に変換するのにかかる時間はわずか2 分です。さまざまな視点から見て、質感の品質と一貫性...
わずか 13 億のパラメータを持つ大規模なモデルが、なぜインターネット上で白熱した議論を引き起こした...
Shopify の不正防止機械学習から Salesforce の Einstein まで、過去数年...
C# データ構造とアルゴリズムの線形リストとは何ですか?まず、C# のデータ構造とアルゴリズムにおけ...
2019年10月26日、Testinが主催する第2回NCTS中国クラウドテスト業界サミットが北京で開...