翻訳者|朱 仙中 レビュー | Chonglou 近年、 ChatGPTやBardなどの生成AIツールのリリースにより、大規模言語モデル(LLM)は機械学習コミュニティで世界的に激しい議論を巻き起こしています。これらのソリューションの背後にある中心的なアイデアの 1 つは、テキストや画像などの非構造化データの数値表現を計算し、これらの表現間の類似点を見つけることです。 ただし、これらすべての概念を本番環境に適用すると、独自の機械学習エンジニアリングの課題が生じます。
1. 文変換子を使用して埋め込みを生成するまず、入力データをベクトルに変換する方法を見つける必要があります。これを埋め込みと呼びます (埋め込みの概念について詳しく知りたい場合は、 Boykis の記事「埋め込みとは何か? 」、参考文献3 : https://vickiboykis.com/what_are_embeddings/about.htmlを読むことをお勧めします)。 まず、 NPR データセットを使用してどのようなデータを処理できるかを見てみましょう。 NPRデータセットから提供されたサンプルデータ(画像は著者が生成) NPRデータセットは、記事のタイトルや本文などの興味深いテキスト データを提供します。以下に示すように、埋め込み生成中にこれらを使用できます。 埋め込み生成プロセス(画像は著者提供) したがって、入力データからテキスト機能を定義したら、数値表現を生成するための埋め込みモデルを構築する必要があります。幸いなことに、 HuggingFaceのようなサイトがあり、特定の言語やタスク向けに事前トレーニングされたモデルを探すことができます。私たちの場合、ブラジル系ポルトガル語でトレーニングされたneuralmind/bert-base-portuguese-casedモデルを次のタスクに使用できます。
ここでのコード ロジックによれば、サンプル入力データが与えられると、タイトルとラベルの内容を 1 つのテキストに連結し、それをエンコーダーに渡してテキスト埋め込みを生成できます。 注意:上記のプロセスは、マシンの処理能力に応じて時間がかかる場合があります。 すべてのニュース記事の埋め込みが完了したら、次に、それらを保存するための戦略を定義できます。 2. ストレージの埋め込み埋め込みの生成はコストのかかるプロセスになる可能性があるため、ベクターデータベースを使用してこれらの埋め込みを保存し、さまざまな戦略に基づいてクエリを実行することができます。 このタスクを実行できるベクターデータベース ソフトウェアはいくつかありますが、この記事では、 Python、Go、Typescript などのいくつかの一般的なプログラミング言語の APIサポートを提供するオープン ソース ソリューションである Qdrant を使用することにします。これらのベクターデータベースをより詳細に比較するには、引用文献4 を参照してください。 Qdrant セットアップの準備すべての Qdrant 操作を処理するには、ベクター データベースを指すクライアント オブジェクトを作成する必要があります。 Qdrant では、データベースへのリモート接続をテストするための無料レベルのサービスを作成できますが、簡単にするために、データベースをローカルに作成して永続化することを選択しました。 この接続が確立されると、ニュース記事の埋め込みを保存するためのコレクションをデータベースに作成できます。 コード内のベクトル構成パラメータはコレクションの作成に使用されることに注意してください。これらのパラメーターは、ベクトルのサイズや、ベクトルを比較するときに使用する距離メトリックなど、ベクトルのいくつかの特性を Qdrant に伝えます(ここではコサイン類似度を使用しますが、内積やユークリッド距離などの他の計算戦略を使用することもできます)。 ベクトルポイントを生成する最終的にデータベースに保存する前に、適切なアップロード オブジェクトを作成する必要があります。 Qdrantデータベースでは、 PointStruct クラスを使用してベクトルを保存できます。このクラスでは、次のプロパティを定義できます。
ベクターをアップロード最後に、すべての情報をポイント構造に変換した後、それらをチャンク単位でデータベースにアップロードできます。 3. クエリベクトルベクターにコレクションが入ったので、データベースのクエリを開始できます。データベースを照会するために情報を入力する方法は多数ありますが、次の2 つが非常に便利だと思います。
3.1 入力ベクトルを使用してベクトルを照会する上記の検索エンジン用のベクトルデータベースを正常に構築できたと仮定すると、ユーザーの入力を入力テキストにして、最も関連性の高いコンテンツを返す必要があります。 ベクトルデータベース内のすべての操作はベクトルを使用して実装されているため、まずユーザーの入力テキストをベクトルに変換して、入力に基づいて類似のコンテンツを見つける必要があります。テキストデータを埋め込みにエンコードするために文変換器を使用したことを思い出してください。したがって、同じエンコーダーを使用して、ユーザーの入力テキストの数値表現を生成することもできます。 NPR にはニュース記事が含まれているので、ユーザーが米国の選挙について知るために「ドナルド・トランプ」と入力すると仮定します。 入力クエリ ベクトルが計算されると、コレクション内で最も近いベクトルを検索し、newsId、タイトル、件名など、これらのベクトルからどのような出力を得たいかを定義できます。 注: デフォルトでは、Qdrant は近似最近傍アルゴリズムを使用して埋め込みをすばやくスキャンしますが、完全スキャンを実行して正確な最近傍データを取り込むこともできます。ただし、これはよりコストのかかる操作であることに注意してください。 上記を実行すると、次の出力ヘッダーが生成されます (理解しやすいように英語に翻訳されています)。
3.2 入力ベクトルIDを使用してベクトルを照会する最後に、ベクターデータベースに、特定の望ましいベクターIDに近いが、望ましくないベクターIDからは遠いコンテンツを「推奨」するように要求できます。期待される ID と予期しない ID はそれぞれポジティブサンプルとネガティブサンプルと呼ばれ、推奨されるシードサンプルと見なされます。 たとえば、次の陽性サンプルID があるとします。 次に、このサンプルに似たものをリクエストします。 上記を実行した後、翻訳された出力タイトルは次のようになります。
結論はこの記事では、 LLM とベクトルデータベースを組み合わせてニュース推奨システムを構築する方法を説明します。特に、 NPRデータセット内のテキストニュース記事から数値表現(埋め込み)を生成するための文変換器の使用について言及されています。これらの埋め込みが計算されると、 Qdrant などのベクトルデータベースにデータを入力するのに使用できるようになります。これは、さまざまな戦略を通じてベクトルクエリを実装するのに非常に役立ちます。 最後に、この記事で提供されている基本的な例に基づいて、次のような多くの改善を行うことができます。
つまり、 LLM 推奨技術に基づいて機械学習エンジニアリングを改善するためのアイデアは数多く考えられます。したがって、これらの改善についてのご意見を共有したい場合は、遠慮なくメッセージをお送りください。 私について私はブラジルのメディアテクノロジー企業、Globoのシニアデータサイエンティストです。会社のレコメンデーション チームで働いている私は、G1、GE、Globoplay などのデジタル製品を通じて何百万人ものユーザーにパーソナライズされたコンテンツを届けるために懸命に働く、素晴らしい才能のあるチームに囲まれています。彼らの不可欠な助けがなければ、この記事を読者の皆さんにお届けすることは不可能だったでしょう。 参考文献[ 1 ] N. reimersとI. Gurevych、「Sentence-BERT:Siamese BERTネットワークを使用した文の埋め込み」(2019年)、計算言語学協会。 [ 2 ] J. Pinho、J. Silva、L. Figueiredo、「NPR:ニュースポータル推奨データセット(2023)」、ACM Conference on Recommender Systems 。 [ 3 ] V. Boykis、「埋め込みとは何か?」個人ブログ。 [ 4 ] M. Ali、「ベクターデータベースのトップ5(2023)」 、 DataCampブログ。 翻訳者紹介Zhu Xianzhong 氏は、51CTO のコミュニティ エディターであり、51CTO の専門ブロガー兼講師であり、濰坊の大学のコンピューター教師であり、フリーランス プログラミング コミュニティのベテランです。 原題:ニュース推奨のための大規模言語モデルとベクトルデータベース、著者: João Felipe Guedes |
<<: 自動生成された小さなデータセットを使用してエンコーディング LLM をトレーニングする方法
コンピューターの専門家がまた一人亡くなりました! 著名なコンピューター科学者で、MITのコンピュータ...
[[346111]]序文再帰は非常に重要なアルゴリズムの考え方です。フロントエンド開発者であっても、...
[[399013]]人間と魚の写真で訓練された AI は、初めて人魚の写真を見たときにどのように反応...
近年、大企業への入社要件はますます高くなり、アルゴリズムに対する要求も徐々に高まっています。アルゴリ...
CAPとはCAP理論についてはすでに多くの背景情報が語られているので、ここでは詳しくは触れません。ど...
Analytics Vidhya は最近、3 月の GitHub で上位 5 つのデータ サイエンス...
人工知能の目標の 1 つは、コンピューターが人間の視覚、聴覚、触覚などの知覚能力をシミュレートし、画...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
解決すべきデータ関連の問題があるとします。機械学習アルゴリズムの素晴らしさについて聞いたことがあるの...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
有名なアニメーション会社ディズニーは、近々人工知能とロボット工学の分野に参入すると発表しました。ディ...