捜狐、Milvusでパーソナライズド・ニュースレコメンデーションを強化

10倍速い
ベクトル検索速度
> 95%
ニュースの分類精度において
メモリ消費量の低減
迅速な対応とコスト削減のために
ユーザー体験の向上
パーソナライズされたレコメンデーション
Milvus has not only streamlined but also remarkably expedited the retrieval of millions of semantic vectors, showcasing a nearly tenfold improvement compared to our previous experience with other vector similarity search engines.
Tingting Wang
##捜狐ニュースについて
捜狐はNASDAQに上場しているインターネットサービス企業で、広告、メディア、検索サービスなど、多様なオンラインサービスを提供していることで知られている。捜狐の主要部門である捜狐新聞は、広範なニュースと情報サービスを提供する大手メディア事業として際立っている。進化するユーザーニーズに対応するため、捜狐ニュースは、ベクトルベースのセマンティック検索など、高度なAIアルゴリズムとテクノロジーを採用し、ユーザーの興味や嗜好に基づいて、おすすめのコンテンツをパーソナライズしています。イノベーションとリアルタイムのニュース配信に尽力する捜狐新聞は、中国のインターネット業界のダイナミックな状況を積極的に形成する先駆者としての地位を確立しています。
課題短文ニュースの遅くて不正確なベクトル検索と誤分類
インターネットやモバイル技術の進歩に伴い、情報へのアクセスに対するユーザーの要求は、受動的な受信から、自分の興味に沿ったニュースを積極的に追求するものへと進化している。このようなニーズの変化に対応するため、捜狐新聞は、ユーザーの興味や嗜好に基づいて最新のニュースを推薦することができる推薦システムを構築し、最終的にニュースのクリック率や閲覧時間を向上させました。
しかし、以前のベクトル検索スタックには課題があった。大規模なデータセットを検索する際にはより高速である必要があり、ユーザーの関心に沿わない不正確な推薦を提供していた。また、このスタックはセマンティック検索を行う際に過剰なメモリを消費し、さらに悪いことに、レスポンスがさらに遅くなっていました。Sohu Newsは、膨大で増え続ける非構造化データを処理し、高速でパーソナライズされたニュースを推薦するレコメンダーシステムをサポートするために、高性能でメモリ効率の高いベクトル検索テクノロジーを緊急に必要としていました。
もうひとつの課題は、短文ニュースの分類であった。ベクトル検索の前に各ニュース記事を正確に分類することは、有益なコンテンツ推薦を提供する上で極めて重要である。しかし、短いニュース記事は長いテキストニュースよりも特徴量が少なく、正確な分類が難しい。そのため、捜狐ニュースでは、短いニュース記事を正確に分類し、以前に誤って分類されたものを識別できる、堅牢なベクトル検索エンジンを必要としていた。
解決策強力なベクトル検索エンジンの構築にMilvusを選択
慎重に検討した結果、捜狐ニュースチームはニュース推薦システムのベクトル検索エンジンを構築するためにMilvusを選択した。オープンソースのベクトルデータベースであるMilvusは、数十億のベクトルポイントを扱うことができ、高い想起率で電光石火のパフォーマンスを提供します。また、FLAT、HNSW、ScaNNなど11の主流インデックスをサポートしており、精度、パフォーマンス、コストのバランスをより柔軟に見つけることができる。
ニュース推薦システムの仕組みとMilvusのサポートについて
推薦システムは、ベクトル検索エンジンに二重タワー構造を採用しており、各タワーはそれぞれユーザーの嗜好とニュースの意味ベクトルを表している。
捜狐ニュースチームは、既存のニュース記事を意味ベクトルに変換するためにBERT-as-service埋め込みモデルを選択し、これらのベクトルをMilvusベクトルデータベースに格納した。新しく生成されたニュース記事に関しては、Kafkaを介して送信され、その後、同様の意味ベクトルへの変換が行われる。これらのベクトルはその後、Milvusベクトルデータベースに挿入される。
ユーザーのプロファイルと嗜好には、ユーザーのニュース閲覧履歴と、ユーザーの興味に基づいてラベル付けされたタグキーワードが含まれる。これらのキーワードと閲覧データも、BERT-as-service 埋め込みモデルを使用して意味ベクトルに変換され、意味的類似性検索のために Milvus に送信される。
Milvusは、2種類の意味ベクトルの余弦類似度を比較し、余弦類似度が最も高い(つまり、これらの結果がユーザーの興味や嗜好に最も類似している)Top-Kの結果を返し、推奨ニュース候補プールに配置する。その後、システムはこのプール内のニュースのクリックスルー率を推定してランク付けし、予測されるクリックスルー率が最も高いニュースをユーザーに配信する。
Milvusが短文ニュースの分類を強化する方法
ベクトル検索の前に各ニュース記事を正確に分類することは、価値あるコンテンツ推薦を提供するために最も重要です。短いニュースには限られた情報しか含まれていないことが多く、誤分類が起こりやすい難しい状況です。捜狐ニュースは、短文ニュース分類の複雑さを認識し、Milvusを活用してニュース分類の精度を大幅に向上させました。
チームはBERT-as-serviceモデルを採用して、長いニュース記事を意味ベクトルに変換し、これらのベクトルをシームレスにMilvusに取り込みます。同時に、短いニュース記事も意味ベクトルに変換され、Milvusに送信され、コサイン類似度が最も高い上位20の長いニュース記事が検索される。
チームは次に、クエリーされた短いニュースと意味的に最も類似しているこれら20の長いニュース記事のカテゴリーを分析する。これらの記事のうち18本以上が一貫したカテゴリーを共有しているが、クエリされた短いニュースに割り当てられたカテゴリーからはずれているとする。その場合、短いニュースのカテゴリー分類に潜在的な誤りがあることを知らせる。このような場合、チームは速やかにこれらのエラーを修正する。このプロセスにMilvusを組み込むことで、分類精度は95%を超えた。
この革新的なアプローチは、Milvusの機能との相乗効果により、短文ニュースの分類の課題に効果的に対処するだけでなく、将来の短文分類器を訓練するための貴重なコーパスの開発にも貢献している。
結果より速いレスポンス、より高いレコメンデーション精度、より良いユーザーエクスペリエンス
捜狐はMilvusとのコラボレーションにより、ニュース推薦システムを大幅に変革し、ユーザーによりパーソナライズされた魅力的な体験を提供できるようになりました。Milvusの導入により、捜狐ニュースのレコメンデーションシステムはベクトル検索速度が10倍速くなり、レコメンデーション精度が著しく向上しました。特に、Milvusはショートニュースの分類精度を95%以上に高めています。
Milvusは、主流のインデックスをサポートし、膨大なデータセットで高いリコールを保証し、精度、パフォーマンス、コストのバランスをより柔軟に提供します。メモリ消費の効率性と大量のデータを処理する能力は、捜狐の運用ニーズにシームレスに合致している。
このケーススタディは、SohuのNLPアルゴリズムエンジニアであるTingting Wangによって最初に書かれ、許可を得て編集され、ここで公開されます。