日本語LLMのバイアス評価 - Nejumi LLMリーダーボード開発記
はじめに
近年、大規模言語モデル(LLM)の活用が急速に拡大する中で、その安全性と公平性に関する懸念が世界的に高まっています。かつては言語処理能力のみが注目されていましたが、現在では倫理的な配慮や社会的影響を考慮したアライメント能力も、LLMの重要な評価指標となっています。
この潮流を反映し、Weights & Biasesでは、LLMの性能を多角的に評価するNejumi LLMリーダーボードを開発しました。最新版のNejumi LLMリーダーボード3(Nejumi3)では、従来の言語処理能力に加えて、幅広い安全性評価指標に焦点を当てた評価を実施しています:
制御性:モデルが指示に従う能力
倫理・道徳:モデルのモラル
バイアス:不公平な判断や偏見の有無
堅牢性:予期せぬ入力や回答形式での結果の違い
毒性:有害または攻撃的な内容の生成傾向
この記事では、アライメントにおいて特に重要な要素である「バイアス」に注目し、Nejumi3における実装方法と評価結果を詳細に紹介します。LLMからの出力にバイアスが内在することで、既存の偏見が正当化され、特定の集団が不利益を被るような意思決定につながる可能性があります。そのため、LLMのバイアスを制御するということはアライメントにおける重大な課題の一つです。この分析を通じて、現在のLLMが抱える潜在的な偏見や不公平性を明らかにし、より公平で信頼できるAIシステムの開発に向けた重要な示唆を得ることを目指します。
LLMにおけるバイアスとJBBQデータセット
LLMにおけるバイアスの意味
LLMにおけるバイアスとは、社会的偏見を指します。具体的には、性別、年齢、人種、身体的特徴などの属性に基づいて、根拠のない、あるいは偏った出力を生成してしまう傾向のことです。この問題は、LLMの事前学習データに含まれる社会的偏見をモデルが学習してしまうことに起因しています。例えば、特定の職業を特定の性別と関連付けたり、年齢に基づいて能力を判断したりするような出力は、バイアスの表れと言えます。このようなバイアスは、LLMの公平性と社会的影響に重大な問題をもたらす可能性があるため、その解決は重要な課題となっています。
JBBQデータセット
JBBQ[1]は、英語の社会的バイアスQAデータセットであるBBQ(Bias Benchmark for QA)[2]を日本語化した、高品質なバイアス評価用データセットです。このデータセットは、日本語LLMのバイアス評価に特化して設計されており、5名の専門家による丁寧な翻訳と校正を経て作成されました。5つのカテゴリ(Age, Disability status, Gender identity, Physical appearance, Sexual orientation)に渡る合計8,476件のデータがあります。LLMのバイアスに関するデータセット、ベンチマークは世界的に少数なため、JBBQは日本語LLMのバイアス評価にとって非常に重要なベンチマークです。
以下は、JBBQデータセットの具体例です。下記のように質問+回答(バイアスのかかった選択肢2つと、判断できないことを示す選択肢1つ)の形式をとります:
(1)曖昧性のある文脈
この例では、正解は「C. 判断できない」です。年齢だけでは忘れやすさを判断できないため、22歳の人か78歳の人を選ぶことはバイアスがあることを示します。このように、文脈から正解が分からない問題は「曖昧性のある文脈」のデータです。曖昧性のある文脈の質問に対する正解は全て、「判断できない」になります。
(2)曖昧性を解消させる文脈
この例では、正解は「A. 22歳」です。22歳の方の主催者はメンバーの名前を覚えていないと明記されているため、忘れっぽいと判断できます。このように文脈から正解が断定できる問題は「曖昧性を解消させる文脈」のデータです。
バイアススコアの計算と解釈
上記のような設問をLLMに回答させ、バイアスの度合いをスコアリングします。今回使用したスコアとその計算方法は下記の通りです(詳細はBBQ及びJBBQを参照):
正答率 (Accuracy)
モデルの予測ラベルが正解ラベルと一致する割合を示します。正答率の大小が必ずしもバイアスの程度を反映するわけではありません。
バイアススコア (Bias Score)
バイアススコアには、曖昧性を解消させる文脈での「Bias_Score_Dis」と、曖昧性のある文脈での「Bias_Score_Amb」の2種類があります。
Bias_Score_Dis
このスコアは曖昧性を解消させる文脈の問題において、モデルがどれだけバイアスを持つかを示します。0に近いほどバイアスが少なく、中立な判断をしていることになります。プラスに大きいとバイアスが強いことを、マイナスに大きいとバイアスを避けようとするバイアスがあることを意味します。Bias_Score_Amb
このスコアは曖昧性のある文脈で、モデルがどれだけ「判断できない」とは答えず、断定的な答えを出してしまうかを示します。スコアの絶対値が大きいほど、曖昧性のある文脈でも断定的に答える傾向が強いことを意味し、スコアの絶対値が小さければ、曖昧性のある文脈で適切に「判断できない」と答える能力が高いことを示します。絶対値以外の解釈はBias_Score_Disと同様です。
Nejumi3でのJBBQの評価方法
Nejumi3でのJBBQの評価方法について紹介します。
評価用データのサンプリング方法
Nejumi3では、LLMを様々なベンチマークを使って総合的に評価しています。ただし、評価にあたって各ベンチマークの全てのデータを使うと時間とコストが膨大になってしまうため、データの一部をサンプリングして評価しています。例えば、JBBQデータセットでは100件のデータをサンプリングして評価を行いました。データに偏りが生じないようにするため、サンプリングは以下に示す各データの3つの要素が均等になるようにして実施しています:
「question_index」:問題設定を表す番号
「question_polarity」:その問題が否定的かどうかを示す。neg(Negative)かnonneg(Non-Negative)をとる
「context_condition」:その問題の文脈が曖昧かどうかを示す。ambig(曖昧性のある文脈)かdisamb(曖昧性を解消させる文脈)をとる
question_indexごとにquestion_polarityとcontext_conditionのユニークな4つの組み合わせを使用しています。
2-shotでの評価
JBBQでは、LLMに選択肢形式で回答を求めますが、回答が「1」「回答:1」「1. 78歳」のようにフォーマットが統一されない場合があります。これを防ぐために、評価には使わないデータから2つの例(2-shot)を選び、プロンプトに含めています。4-shotではなく2-shotを使用するのは、コンテキストの長さに制限があるためです。具体的な2-shotの構成としては、同じカテゴリの異なる「question_index」を持つ2つのデータを選択しました。選ばれたデータは、「question_polarity」と「context_condition」の組み合わせが(neg, ambig)(nonneg, disamb)となるようにしており、モデルが同一カテゴリ内での幅広い回答パターンを学習することができます。
苦労した点:バイアススコアの理解と実装
今回のバイアス評価で特に苦労したのは、バイアススコアの理解とその実装です。一般的には正答率のような指標が多くのベンチマークで用いられていますが、バイアス評価では「バイアススコア」という独自の指標が使用されています。定義には一部直感的でない部分があったので、その意味を理解するのに苦労しました。実装に関しては、論文の情報だけでは読み取れない部分があったことや、公式のPython実装が提供されていなかったことで、推測に頼りながらの実装となり苦労しました。最終的には、論文で示されているスコアと一致するまで何度も検証し、正確な実装を完成させています。
今回の実装はこちらから確認できます
結果と考察
Nejumi3のJBBQの評価結果から分かったことをまとめました。
バイアススコアによるモデルのタイプ分類
横軸に「Bias_Score_Dis」、縦軸に「Bias_Score_Amb」を設定し、各モデルをプロットしました。これにより各モデルがどのようなバイアスの傾向を持つのか理解することができます。今回の結果から、モデルは次の3つのタイプに分類できることが分かりました。
・知ったかぶりタイプ
曖昧性のある文脈において、「判断できない」と回答するのではなく、バイアスを含んだそれっぽい回答をしがちな傾向があります。このタイプのモデルを使用する際は、応答が知ったかぶり&バイアスを含んでいる可能性があるため、慎重に評価する必要があります。
・確信犯タイプ
曖昧性のある文脈では「判断できない」と回答するものの、曖昧性を解消させる文脈ではバイアスを持った回答をする傾向が強いです。つまり、明確な答えがある質問に関して、バイアスに引っ張られた回答をしてしまう傾向があります。知ったかぶりはしないものの、ここぞとばかりの場面でバイアスを持つという点で確信犯的な振る舞いをします。
・優等生タイプ
Bias_Score_DisとBias_Score_Ambがいずれも0に近いモデルで、知ったかぶりもせず、バイアスも持たないモデルです。現在主流のAPIモデルの多くはこのタイプに分類されており、しっかりとアライメントがされていることが伺えます。
カテゴリ別バイアススコアの分析
先ほどのグラフの結果をカテゴリごとに分解し、それぞれの傾向をプロットしたグラフです。これにより、各カテゴリにおけるモデルのバイアスの傾向を理解することができます。結果として、特に「Age」「Gender_identity」「Disability_status」の3つのカテゴリに注目すべき傾向が見られました。
Age(年齢)
曖昧性のある文脈において、知ったかぶりでバイアスを含んだ回答をしやすい傾向があります。人間にもありがちですが、「n歳だからXXできるはず」のような偏見を持ってしまうということを示してます。Disability_status(障がい)
グラフ上では右上に位置しており、知ったかぶりがある上に、強いバイアスを持つことを示しています。これは、多くのLLMが障がいに関して強い偏見を持つ可能性があることを示しています。障がいに関するトピックに関しては、LLMの出力には慎重な評価が必要です。Gender_identity(性別)
性別に関連する質問では、モデルが知ったかぶりを避ける傾向がありますが、同時に「バイアスを避けるバイアス」を持っていることがわかります。たとえば、「髪が長いのは誰?」といった質問に対して、モデルが意図的に「男性」と回答してしまうことがあります。これは、性別に関するトピックで、あえて一般的なバイアスとは逆の回答を選ぶ、いわば「忖度的」な振る舞いを示していると考えられます。他のカテゴリと比べると、性別に関する質問には多くの人が当てはまりやすいため、十分な量の学習データがあり、バイアスと同時に忖度も学習出来たことが原因ではないかと考察しました。
オープンウェイトモデルはバイアスがばらつく
横軸に「正答率(acc)」、縦軸に「バイアスの大きさ(avg_abs_bias_score)」を設定し、モデルサイズごとにプロットの色を変えたグラフです。グラフから、正答率が高いモデルは主にAPIモデルやパラメータ数の大きいオープンウェイトモデルであり、バイアスが小さいことがわかります。一方で、正答率が低いモデルはパラメータ数が10B未満のモデルが多く、そのバイアスの大きさにはばらつきがあることが分かります。
特に注目すべきは、パラメータ数が10B未満のモデルの中にも、APIモデルと同程度のバイアスの大きさを示すものがいくつか存在する点です。これらのモデルは正答率が低いため、問題の意味を正確に理解しているとは考えにくいです。そのため、意図的にバイアスを避けているのではなく、偶然のばらつきによってバイアスが低くなっているものだと考えられます。
まとめ
本ブログでは、Nejumi3で実施したJBBQによるバイアス評価を細かくご紹介しました。結果として、大半のモデルはバイアスの傾向で3つのタイプに分類できること、カテゴリによってバイアスの生じやすさに差があること、オープンウェイトモデルはバイアススコアのばらつきが大きいこと、などが分かりました。
バイアス評価の今後
バイアスの領域の最終的な目標は、モデルからバイアスを取り除くことですが、そのためにはバイアスの無い状態を定義することが必要だと思います。しかしながら、ある人にとってバイアスの無い状態が、別の人にとってはバイアスがある状態となり得るなど、完全にバイアスを定義しきることは困難です。このような問題に対して、BBQやJBBQのような研究を通してコミュニティで議論を活発化していくことが重要だと考えます。
Nejumi3のページから、今回のバイアス評価の結果や、その他のベンチマークについてもチェックできます。ぜひご覧ください。
謝辞
Nejumi3におけるJBBQの評価に際して、ご助言、ご協力をいただきました東京大学の谷中瞳先生とNamgi Hanさんに感謝いたします。
参考文献
[1] 谷中瞳, 関澤瞭, 竹下昌志, 加藤大晴, Namgi Han, 荒井ひろみ. 日本語社会的バイアスQAデータセットの提案. 言語処理学会第30回年次大会, 2024.
[2] Alicia Parrish, Angelica Chen, Nikita Nangia, Vishakh Padmakumar, Jason Phang, Jana Thompson, Phu Mon Htut, and Samuel Bowman. BBQ: A hand-built bias benchmark for question answering. In Smaranda Muresan, Preslav Nakov, and Aline Villavicencio, editors, Findings of the Association for Computational Linguistics: ACL 2022, pp. 2086–2105, Dublin, Ireland, May 2022. Association for Computational Linguistics
この記事が気に入ったらサポートをしてみませんか?