NVIDIAのレコメンダー チームがおススメする、成功するための戦略

投稿者: Rick Merritt

業界トップクラスのチャレンジで連勝した NVIDIA のエキスパートが、世界に通用するレコメンダー システムを構築する秘訣をご紹介

今年度のレコメンデーション システムにおける最難関のデータ サイエンス コンペティションに、NVIDIAのチームがデータを提出したのは、締め切りの 5 分前のことでした。NVIDIAの同チームが今年コンペティションに参加したのは、これで3回目となります。RecSys と呼ばれるコンピューター サイエンスの中では比較的新しい分野は、機械学習で最も広く使用されているアプリケーションを生み出し、数百万もの人々が視聴したいコンテンツ、購入したいもの、楽しみたいことを見つけるために役立っています。

チームは 6 つの AI モデルを組み合わせ、計7 億 5,000 万のデータ ポイントを調査して得られたスマートさを、コンテストの上限である 20 ギガバイトに詰め込みました。このコンペ独自の珍しいルールとして、モデルはクラウド CPU のシングル コアで 24 時間以内に実行する必要がありました。

チームは送信ボタンをクリックし、結果を待ちました。

23 時間 40 分後に届いたメールには、リーダーボードで 1 位という結果が記されていたのです。

制限時間ギリギリに申請

正式な結果が出たのは 6 月 28 日、7 人のメンバーから成る NVIDIA チームが ACM RecSys Challenge2 度目の優勝を果たしました。

「(受領確認) メールが届いたのは締め切り直前でした。あと20 分遅ければ、失格になっていたところです」と話すのはメンバーの 1 人、クリス デオート (Chris Deotte) です。彼はデータ サイエンスのオンライン オリンピックとも言える、 Kaggle コンペティションでGrandmasterの称号を獲得したチームメンバーでもあります。

「本当にギリギリの状態でした」と話すのは、チームメイトのベネディクト シフェラー (Benedikt Schifferer) です。彼は、ユーザーが独自のレコメンダー システムを迅速に構築するのに役立つフレームワークである NVIDIA Merlin の設計をサポートしています。

GPU であれば、ほんのわずかな時間で推論ジョブを実行することができたでしょう。ブラジルからこのチームに携わった、同じくKaggle のGrandmasterであるギルバート「ギバ」ティテリッツ (Gilberto “Giba” Titericz) は、この作業を CPU コア 1 基で処理させることは「遠い過去に戻るようなものでした」と述べています。

このチームは実際、コンペティション終了後、CPU コア 1 基で 24 時間近くかかった推論ジョブが、NVIDIA A100 Tensor コア GPU 1 基を使うとわずか 7 分で実行できることを実証しました。

1 日に 数百万ものデータ ポイントを整理する

このコンペティションのために、Twitter は参加者に 1 日あたり数百万のデータ ポイントを28 日間分提供し、ユーザーがどのツイートに「いいね」をするか、またはリツイートをするか予測するよう参加者に求めました。RecSys をテーマとした主要なテクニカル カンファレンスで課された、業界レベルのチャレンジであり、Facebook、Google、Spotify などの企業の名だたるトップ エンジニアが参加しました。

NVIDIAのRecSys Challenge チームメンバーの一部 (左上から時計回りに) リュウ ハク (Bo Liu)、ベネディクト シフェラー (Benedikt Schifferer)、ギルバート ティテリッツ (Gilberto Titericz)、クリス デオート (Chris Deotte)

このようなチャレンジへの取り組みは大変であると同時に、役立つものでもあります。レコメンダー システムは、デジタル エコノミーを促進し、従来の検索よりも迅速かつスマートな提案を提供します。

また、業界レベルのコンペティションの開催によって、この分野がさらに進展することになり、例えばパートナーにぴったりのプレゼントを探している人や、オンラインで旧友を見つけようとしている人など、すべての人に役立つことになります。

5ヵ月間で 3 勝

今年初めに開催された Booking.com Challenge で、NVIDIA チームは全体で 40 のフィールドを制しました。彼らは数百万もの匿名化されたデータ ポイントを使用して、ヨーロッパを訪れた観光客の最終目的地となる都市を正しく予測しました。

6 月には、これもレコメンダー システムにおける最高峰のコンテストである SIGIR eCommerce Data Challenge が開催され、さらに難度の高い課題が設定されました。

情報検索分科会 (Special Interest Group on Information Retrieval、SIGIR) の年次総会には、Alibaba から Walmart Labs まで、さまざまな企業から専門家が集まります。2021 年のチャレンジでは、オンライン ショッピングに基づく 3,700 万のデータ ポイントが提供され、参加者はユーザーが購入する製品を予測するよう求められました。

このチャレンジの開催期間はACM コンテストと重複していたため、NVIDIA チームは 2 つのグループに分かれ、コンテスト間で調整を図りながら取り組みました。さらなるプレッシャーとして、何人かのチームメンバーは ACM RecSys カンファレンスに向けて必死に論文を書いていました。

快挙につながった、チーム一体の仕事術

ブラジル、カナダ、フランス、米国に分散しているメンバーから成る 5 人の NVIDIA チームが総合的に最高の成績を収め、すべてのリーダーボードで 1 位または 2 位となりましたが、この快挙には 2 つの要因がありました。自然言語処理用に開発されレコメンダー システムでも徐々に採用が進んでいる Transformer モデルで大きな賭けに出たこと、そして、互いに仕事を引き継ぎながら行う術を身につけたことです。

Merlin グループのリーダーであるイーブン オルドリッジ (Even Oldridge) は次のように述べています。「あるメンバーが就寝する時間帯に、別のメンバーが別のタイムゾーンで作業を引き受けます。」

「すべてがうまくはまると、非常に効率よく進みます。昨年は社内の知識を吸い上げるシステム作りに成功し、レコメンダー システム コミュニティでの地位を築き上げて、5 か月で 3 つの大きなコンテストに勝つことができました。この結果に驚いています。」

ユーザーのプライバシー尊重

SIGIR eCommerce Data Challengeでは、ユーザーの現在のブラウジング セッションの情報以外、何もバックグラウンドの情報がない状態でモデルが予測を行う必要がありました。

NVIDIA の SIGIR チームのリーダーで Merlin のシニア リサーチャーである、サンパウロのガブリエル モレイラ (Gabriel Moreira) は次のように述べています。「これは重要なタスクです。ユーザーは匿名で検索したいこともありますし、履歴情報へのアクセスを制限するプライバシー法もあるからです。」

このコンテストで、チームは初めて、チャレンジのカギとなる部分に Transformer モデルのみを使用しました。モレイラのチームが目指すのは、Merlin のすべてのユーザーが大規模なニューラルネットワークをより簡単に利用できるようにすることです。

4 度目の勝利を達成

6 月 30 日、NVIDIAはRecSys における 4 度目の勝利を達成しました。業界のベンチマーク グループである MLPerf は、NVIDIA とそのパートナー企業が、レコメンダー システムを含むすべての最新のトレーニング ベンチマークで記録を樹立したことを発表しました。

多大な努力の背景として、14台 の NVIDIA DGX システムで 1 分以内にレコメンダー システムをトレーニングする作業についてチームが説明しています。この数字は、1 年前に MLPerf に提出した結果と比較して 3.3 倍スピードアップしています。

これまでの経験の共有

こうしたコンテストによって新しい技術のアイデアが触発され、Merlin のようなレコメンダー システムのフレームワークや、関連ツール、論文、NVIDIA Deep Learning Institute が提供しているオンライン トレーニングなどに取り入れられていきます。究極の目標は「皆の成功を手助けする」ことです。

さまざまなインタビューで、NVIDIA のレコメンダー システムのエキスパートが、サイエンスをはじめとするノウハウについて自由に語っています。

RecSys で成功する秘訣

ベスト プラクティスの 1 つは、アンサンブルとして機能する多様なモデルを使用することです。

ACM RecSys Challenge では、チームは決定木モデルとニューラルネットワーク モデルの両方を使用しました。スタッキングと呼ばれるプロセスでは、あるステージからの出力が次のステージへの入力になります。

「単一のモデルではデータ エラーや収束の問題が原因でミスを犯す可能性がありますが、複数のモデルによるアンサンブルの形をとれば非常に強力になります」と、NVIDIA の Kaggle grandmaster チームに最近加入したリュウ ハク (Bo Liu) は述べています。

Recsys エキスパートが登壇するウェビナー

太平洋時間7 月 29 日に、Facebook、NVIDIA、TensorFlow からの RecSys エキスパートによるウェビナーが開催されます。こちらに参加して、優れたレコメンダー システムを構築する方法をぜひ学んでください。