このサイトのコンテンツは、人工知能(AI)または機械翻訳技術を使用して翻訳されており、誤りが含まれている場合があります。

Skip to content

Inside the Tech – 多言語・セマンティック検索の課題解決

Inside the Tech - Multilingual Search (Ravali K.) - v2
「Inside the Tech」は、当社のポッドキャスト「Tech Talks」に併設されたブログシリーズです。ポッドキャストの第19回「International」では、RobloxのCEOであるDavid Baszuckiが、プロダクト担当シニアディレクターのZhen Fangと対談し、Robloxの国際戦略や、世界中の数千万人のユーザーにローカライズされた体験を提供するために解決している技術的課題について語りました。 今回の「Inside the Tech」では、エンジニアリング・マネージャーのラバリ・カンドゥル氏にインタビューを行い、そうした技術的課題の一つである多言語・セマンティック検索について詳しく伺いました。また、グロースチームの取り組みが、世界中のRobloxユーザーがプラットフォーム上で探しているものを検索し、素早く見つけるのにどのように役立っているかについても解説します。
第19話

国際

国際部門責任者、Zhen Fang氏との対談

国際部門責任者のZhen FangがCEOのDavid Baszuckiと共に、世界中のすべてのRobloxユーザーに真にローカライズされた体験を提供するために当社が取り組んでいることについて語ります。言語翻訳から決済オプション、文化的に適切なコンテンツに至るまで、ますます国際化が進むコミュニティに合わせてプラットフォームがどのように適応しているかを探ります。

御チームが取り組んでいる最大の技術的課題は何ですか?

約1年前まで、Robloxの検索機能はユーザーの検索クエリと結果を照合するために語彙ベースのシステムを使用しており、つまりテキストの一致のみに焦点を当てていました。しかし、検索行動は急速に変化しており、ユーザーに関連性の高いコンテンツを提供するには、そのアプローチではもはや不十分です。同時に、Robloxユーザーの中には、検索クエリで誤ったスペルを使用する場合もあります。そのため、ユーザーが探しているものに合致する結果を提案できるようにする必要があり、それはユーザーの意図を理解することを意味します。

検索におけるもう一つの大きな問題は、多言語にわたるトレーニングデータの不足です。セマンティック検索を導入する前は、Robloxシステム内の機械翻訳を活用することが最初のステップでした。翻訳結果をインデックス化し、テキスト照合を行っていました。しかし、これだけでは常にユーザーに関連性の高いコンテンツを表示するには不十分です。そこで、私たちは「生徒-教師モデル」と呼ばれる最先端の機械学習技術を採用しました。このモデルでは、教師モデルが特定のシナリオにおける最大の文脈情報源から学習します。 

Robloxで最も使用されている言語は英語です。そのため、私たちは英語(ティーチャーモデル)で可能な限り多くの意味的関係を学習し、それを他の言語に拡張することで、その知識をスチューデントモデルに集約しています。これにより、特定の言語でデータが十分にない場合でも、この問題を解決することが可能になります。この取り組みにより、日本における検索経由のプレイ数は15%増加しました。 

最近では、「đua xe(レース)」のようなカタログ検索をより適切にサポートできるよう取り組んでいます。しかし、ユーザーからは「ドラゴンと、それと戦っている女の子が出てくるゲームをプレイした記憶があるんだけど、それを見つけてくれる?」といった、長文で自由形式のクエリが頻繁に寄せられています。これにはより高度な技術的課題が伴いますが、私たちはこの方向性でシステムの改善を続けています。

文脈やセマンティック検索をより取り入れるための革新的なアプローチにはどのようなものがありますか?

私たちは、語彙検索と、セマンティック検索やクエリの意図理解を活用した機械学習(ML)技術・モデルを組み合わせたハイブリッド検索システムを構築しました。文脈理解の強化、複雑なクエリへの対応、関連性の高いコンテンツの提供を実現するため、システムの進化を継続的に進めています。

セマンティック検索の真髄は、Robloxのあらゆる場所から得られる多様なシグナルを豊かに表現した「埋め込み(エンベディング)」にあります。例えば、ユーザー属性、ユーザーのクエリ、その長さ、あるいはそのユニークな側面といったシグナルを取り入れています。 

また、エクスペリエンス、アバターアイテム、エンゲージメントといったコンテンツシグナルも分析対象としています。具体的には、そのゲームがどれくらいの頻度でプレイされたか、ユーザー数はどれくらいか、また何カ国からアクセスがあったかといった点です。さらに、収益化や継続利用率といった指標に加え、エクスペリエンスのタイトル、説明文、クリエイターといったメタデータも含まれます。 これらすべての情報を、BERTベースのトランスフォーマーアーキテクチャに通し、最終段階で多層パーセプトロンMLP)を用いて埋め込みベクトルを生成します。これが私たちの「真実の源」となります。 

もう一つの革新は、自社開発の類似性検索システムです。ユーザーが検索クエリを入力すると、密接に関連する埋め込みベクトルを抽出し、ユーザーの検索意図に合致するようランク付けを行います。その後、検索結果をユーザーに返します。

この技術的な取り組みを通じて、どのような重要なことを学びましたか?

どの言語にも固有の課題があります。特に検索においては、世界各地のユーザーが何を求めているかを理解し、最も関連性の高い結果を提示する必要があります。そのためには、言語の様々な要素を理解しなければなりません。例えば、日本語の複数の方言を理解する上で、事前学習済みのトランスフォーマーは不可欠でした。

第二に、検索クエリのパターンはかなり変化しており、それに追いつくために技術スタックを絶えず進化させなければなりません。同時に、ユーザーは気づいていない可能性があるため、プラットフォームで何が可能かをユーザーに伝える必要があります。例えば、検索では「フリースタイルクエリ」(レースゲームや人気のフードゲームなど)にも対応しており、ユーザーが求めていることを理解して適切な結果を返すことができると伝えることができます。 

あなたのチームは、Robloxのどの価値観に最も共感していますか?

長期的な視点を持つことは私たちのチームの核心であり、私がRobloxで働くことを愛する理由の一つです。

私のチームの一例として、ML(機械学習)とNLP(自然言語処理)を基盤とした検索システム——事前学習済みの大規模モデルを活用したセマンティック検索、オートコンプリート、スペル修正——から構成されるテックスタックが挙げられます。

私たちは、毎日数千万人のアクティブユーザーが実行する様々な種類の検索において、再利用性を念頭に置いてこれを構築しました。つまり、異なる種類のデータ(例えば、エクスペリエンスの代わりにアバターアイテムなど)を組み込んでも、最小限の変更で機能するはずです。 

私たちは体験向けのセマンティック検索を組み込み、マーケットプレイスなどの他の分野とも共有しました。彼らは既存のアーキテクチャにすぐに乗り換えることができました。完全にプラグアンドプレイというわけではありませんが、微調整を行うことで、さまざまなユースケースに適応させることができます。

Robloxとあなたのチームが向かっている方向性の中で、最もワクワクする点はどこですか?

検索は、ユーザーが明確な意図を表現する唯一の場です。つまり、ユーザーが何を求めているかを理解し、最も関連性の高い検索結果を提供することが不可欠です。そのため、その意図を理解し、時にはユーザー自身が気づく前に、何が可能かをユーザーに伝える取り組みに携われることは、私にとって非常に刺激的です。 

どの国のユーザーであっても、何かを尋ねれば、そのユーザーが求めているもの、そしてそのユーザーにとって最も関連性の高いものを正確に提供できます。これにより信頼が築かれ、ひいてはユーザー定着率の向上につながります。検索機能を改善してその信頼を築き、Robloxが10億人のユーザー獲得という目標を達成できるよう支援するという課題に取り組めることは、私にとって非常に刺激的です。