
Kaggle挑戦記(25/01/24) WSDM Cup - Multilingual Chatbot Arena #1
こんにちわ。久しぶりにKaggleを再開したいと思います。
今年からは今までの反省を活かして、記録をつけていきたいと思います。
今日からは、WSDMに挑戦したいと思います。LLMコンペですね。
まずは、概要から記録用に残していきたいと思います。
このコンペに参加しようかなって思ってる方は、どうぞご覧ください
概要
このコンペティションでは、大規模言語モデル(LLMs)を搭載したチャットボット同士の対決において、ユーザーがどちらの応答を好むかを予測することが求められます。
提供されるデータセットには、Chatbot Arenaから収集された会話が含まれており、そこでは異なるLLMがユーザープロンプトに対する回答を生成しています。
勝利する機械学習モデルを開発することで、チャットボットが人間とより良い形で対話できるように改善し、人間の好みにより適合するよう支援することができます。
このコンペティションは、英語の会話に焦点を当てた最初のHuman Preference Predictionコンペの続編です。今回は、多言語での会話に取り組むことが求められます。
本コンペティションはWSDM Cup 2025に選ばれています。第18回ACM国際会議(Web Search and Data Mining)は、2025年3月10日から14日にかけてドイツのハノーファーで開催されます。
説明
大規模言語モデル(LLMs)は急速に私たちの生活に取り入れられつつありますが、ユーザーに響く応答を提供できるかどうかは、成功する対話の鍵となります。
このコンペティションは、現実世界のデータを活用してこの課題に取り組み、LLMの能力と人間の好みのギャップを埋めるためのユニークな機会を提供します。
私たちは、Chatbot Arenaから収集した大規模なデータセットを使用しました。この場では、ユーザーが2つの匿名のLLMと対話し、どちらの応答を好むかを選びます。
このコンペティションでのあなたのタスクは、これらの「直接対決」でユーザーがどちらの応答を好むかを予測することです。
この課題は、人間のフィードバックに基づく強化学習(RLHF)における「報酬モデル」や「嗜好モデル」という概念と一致します。
これまでの研究では、既存のLLMを直接プロンプトして嗜好を予測することには限界があると指摘されています。こうした限界には、以下のようなバイアスが含まれます:
位置バイアス: 最初に提示された応答を好む傾向
冗長性バイアス: 必要以上に冗長な応答を好む傾向
自己優越バイアス: 自己アピールが強い応答を好む傾向
さまざまな機械学習技術を活用し、ユーザーの嗜好を効果的に予測できるモデルを構築することをお勧めします。あなたの取り組みは、LLMがユーザーごとの嗜好に合わせた応答を生成するための重要な礎となり、最終的には、よりユーザーフレンドリーで広く受け入れられるAI搭載会話システムの開発につながるでしょう。
評価
提出物は**分類の精度(categorization accuracy)**に基づいて評価されます。
分類の精度(categorization accuracy) とは、分類タスクにおいて、モデルが予測したラベルが正しいラベルと一致した割合を指します。簡単に言うと、モデルが「正解」できた回数の割合です。
注意点
分類精度はシンプルな評価指標ですが、クラスの不均衡がある場合には適切ではないことがあります。例えば、「正例」より「負例」が圧倒的に多い場合、全てを「負例」と予測しても高い精度が得られる可能性があります。このような場合には、F1スコアやROC-AUCなど他の指標を併用することが望ましいです。
計算式
分類精度は次のように計算されます:
分類精度=正しく分類されたサンプル数全サンプル数\text{分類精度} = \frac{\text{正しく分類されたサンプル数}}{\text{全サンプル数}}分類精度=全サンプル数正しく分類されたサンプル数
提出ファイル
テストセット内の各idに対して、ターゲットクラスを予測する必要があります。ファイルにはヘッダーが含まれており、以下の形式で提出する必要があります:
id,winner
123,model_a
456,model_b
789,model_a
etc
データセットの説明
このコンペティションのデータセットは、ChatBot Arena(旧称 LMSYS)から収集されたユーザーとの対話データで構成されています。
各ユーザーとの対話では、判定者が1つのプロンプトを2つの異なる大規模言語モデル(LLM)に提示し、それぞれのモデルが生成した応答のうち、どちらがより満足のいく応答だったかを示します。
このコンペティションはコードコンペティションです。提出物がスコアリングされる際、例示用のテストデータは本番用のテストセットに置き換えられます。
コンペティションのフェーズとデータ更新
このコンペティションは、以下の2つのフェーズで進行します:
モデル訓練フェーズ
歴史的なデータを用いたテストセットが提供されます。このテストセットには約10,000行のデータが含まれています。
予測フェーズ
提出期限後に収集されるテストセットを用います。このテストセットには最大25,000行のデータが含まれる見込みですが、スケジュールの都合上、それより少ない場合もあります。
また、Chatbot Arenaチームは、モデル訓練フェーズ中に追加のデータを公開する可能性があります。
ファイルの説明
train.parquet
id: 各行に割り当てられた一意の文字列識別子。
prompt: 両モデルに入力として与えられたプロンプト。
response_[a/b]: モデル[a]またはモデル[b]がプロンプトに対して生成した応答。
winner: 判定者が選択した勝者(正解ラベル列)。
model_[a/b]: モデル[a]およびモデル[b]の識別情報(train.parquetにのみ含まれる)。
language: プロンプトで使用された言語(train.parquetにのみ含まれる)。
test.parquet
id: 各行に割り当てられた一意の整数識別子。
prompt: モデルに与えられたプロンプト。
response_[a/b]: モデル[a]およびモデル[b]が生成した応答。
scored:
モデル訓練フェーズでは、パブリックリーダーボード用に使用される行についてtrueになります。
予測フェーズでは、プライベートリーダーボード用に使用される行についてtrueになります。
sample_submission.csv
正しいフォーマットでの提出ファイルの例です。
id: テストデータの行の識別子。
winner: 各行で勝者と予測されるモデル(aまたはb)。
提出例:
id,winner
1,a
2,b
3,a
...
いいなと思ったら応援しよう!
