翻訳者|朱 仙中 レビュー | Chonglou 導入信頼性の高いモデル評価はMLOP と LLMop の中核であり、どのモデルまたはプロンプトを展開するか (および展開するかどうか) などの重要な決定を導く役割を果たします。本稿では、さまざまなヒントキーワードを使用して、 Google ResearchのFLAN-T5大規模言語モデルに指示を与え、テキストを丁寧か不丁寧かに分類することを試みます。 手がかり候補の中で、観察されたテスト精度に基づいて最も優れていると思われた手がかり単語が、実際には他の手がかり候補よりも劣っていることがよくあることがわかりました。テストデータを詳しく調べたところ、これは信頼性の低い注釈によるものであることが判明しました。したがって、実際のアプリケーションでは、信頼性を確保するためにテスト データをクリーンアップしない限り、大規模な言語モデルに対して最適ではない手がかり単語を選択してしまう(または、モデル評価によって導かれる他の最適ではない選択を行う)可能性があります。 適切な手がかり語を選択することは、大規模な言語モデルからの正確な応答を保証するために重要である。 ノイズの多い注釈の危険性はトレーニング データでは十分に特徴付けられていますが、この論文では、テスト データでは見落とされがちな結果を示しています。 現在、Cleanlab でデータ サイエンティストとして働いていますが、大規模言語モデルに最適なヒントを選択できるようにするために、高品質のテスト データの重要性について共有できることを嬉しく思っています。 概要この記事のテストデータはリンクからダウンロードできます。 この論文では、スタンフォード ポライトネス データセット (CC BY ライセンス v4.0 で使用) のバイナリ分類バリアントを研究します。このデータセットでは、テキスト フレーズが礼儀正しいか礼儀正しくないかのいずれかとしてラベル付けされます。 700 フレーズの固定テスト データセットを使用してモデルを評価します。 テキストと真実の丁寧さラベルを示すデータセットのスナップショット 標準的な方法は、分類モデルを特定のラベル、つまりトレーニング中にモデルが検出しなかった例(「テスト」、「評価」、または「検証」データと呼ばれることが多い)と比較して、分類モデルの「良さ」を評価することです。これにより、モデル A とモデル B の良し悪しを測定する数値メトリックが提供されます。モデル A のテスト精度が高い場合、モデル A の方が優れていると評価し、モデル B よりもモデル A を展開することを選択します。モデルの選択に加えて、ハイパーパラメータ設定 A または B、ヒント A または B、機能セット A または B のどちらを使用するかなど、他の選択にも同じ意思決定フレームワークを適用できます。 実際のテスト データでよくある問題は、人間の注釈エラー、データ処理エラー、センサー ノイズなどの要因により、一部の例に誤ったラベルが付いていることです。この場合、テスト精度はモデル A とモデル B 間の相対的なパフォーマンスを示す信頼性の低い指標になります。これを非常に簡単な例で説明してみましょう。テストデータセットに失礼なテキストの例が 2 つあるが、気付かないうちに (誤って) 「礼儀正しい」とラベル付けされていると想像してください。たとえば、スタンフォード礼儀正しさデータセットでは、実際の人間の注釈者が「ここは頭がおかしいのか?一体何が起こっているんだ?」という文を、明らかに非常に興奮した言葉遣いであったにもかかわらず、誤って「礼儀正しい」タイプとしてラベル付けしていました。 ここで、あなたの仕事は、これらの例を分類するための最適なモデルを選択することです。モデルA は両方のインスタンスが失礼であることを示しますが、モデル B は両方のインスタンスが丁寧であることを示します。これらの (誤った) ラベルに基づくと、モデル A のスコアは 0%、モデル B のスコアは 100% です。モデル B を展開することを選択します。しかし、ちょっと考えてみてください。どちらのモデルが実際に強いのでしょうか? このような影響は些細なものであり、現実世界のデータにはラベル エラーがたくさんあることを多くの人が認識していますが、多くの場合、トレーニング データ内のノイズの多いラベルにのみ焦点が当てられ、テスト データが重要な決定を導く場合でも、テスト データを慎重にキュレートすることを忘れてしまいます。この論文では、実際のデータを使用して、大規模言語モデルのプロンプト選択を導く上での高品質のテストデータの重要性を示し、アルゴリズム技術によってデータ品質を簡単に向上させる方法を示します。 観察テストの精度と洗浄テストの精度ここでは、ラベルの一部(約 30%)のみが異なる同じテキスト例のセットから構築された 2 つのテスト セットを検討します。精度を評価するために使用する一般的なデータを表す 1 つのバージョンには、各例に対して単一の注釈 (人間の評価者) から派生したラベルがあり、このバージョンで計算されたモデル予測の精度がObserved Test Accuracyとして報告されます。同じテスト セットの 2 番目のよりクリーンなバージョンには、各例に対する多数の一貫した注釈 (複数の人間の評価者から得られたもの) 間の合意を通じて構築された高品質のラベルがあります。クリーン バージョンで測定された精度をClean Test Accuracyとして報告します。したがって、クリーンなテスト精度は、あなたが重視する点 (実際のモデル展開パフォーマンス) をより正確に反映しますが、ほとんどのアプリケーションでは、最初にテスト データをクリーンアップしない限り、テスト精度を観察することしかできません。 以下は、1 人の人間の注釈者が例に誤ったラベルを付けたが、多数の人間の注釈者のグループが正しいラベル付けに同意した 2 つのテスト例です。 注意点として、単一の注釈者から収集されたオレンジ色の注釈は、収集コストは低くなりますが、不正確な場合が多くなります。青い注釈は複数の注釈者から収集されます。これはより高価ですが、一般的にはより正確です。 実際のプロジェクトでは、通常、このような「クリーンな」ラベルにアクセスできないため、観察テストの精度を測定することしかできません。このメトリックに基づいて、どの大規模言語モデルまたはプロンプトを使用するかなどの重要な決定を行う場合は、まずラベルの品質が高いことを確認してください。そうしないと、次に示すように、丁寧さの分類プロンプトを選択するときに誤った決定を下す可能性があることがわかりました。 騒音評価データの影響テキストの丁寧さを分類するための予測モデルとして、事前にトレーニングされた大規模言語モデル (LLM) を使用するのが自然です。ここでは、データ サイエンティストに人気の大規模言語モデルである、オープン ソースの FLAN-T5 モデルを具体的に使用しました。大規模な言語モデルがテキストの丁寧さの特性を正確に予測するには、適切な手がかりを提供する必要があります。ヒントエンジニアリングは非常に繊細であり、小さな変更が精度に大きな影響を与える可能性があります。 以下に示すプロンプト A と B (強調表示されたテキスト) は、大規模な言語モデルがその丁寧さの特性を分類できるように、任意のテキスト サンプルの先頭に追加できる思考連鎖プロンプトの 2 つの異なる例です。これらのプロンプトは、いくつかのショットと指示プロンプト(これについては後で詳しく説明します)を組み合わせて、例、正しい応答、および大規模言語モデルが推論を説明する根拠を提供します。 2 つのプロンプトの唯一の違いは、強調表示されたテキストが実際には大規模な言語モデルから応答を受け取ることです。いくつかのショットの例と理由は同じままです。 思考連鎖プロンプトは、与えられたテキスト例ごとに、なぜその答えが正しいのかという推論をモデルに提供します。 どのキューが優れているかを判断する自然な方法は、観察されたテスト精度に基づくことです。 FLAN-T5大規模言語モデルのヒントとして使用すると、ヒント A はヒント B よりも元のテスト セットで高い観測テスト精度で分類を生成することが以下でわかります。したがって、ヒント A を使用して大規模言語モデルを展開する必要があることは明らかですね。答えは、「そんなに早く決めないでください!」です。 各プロンプトのクリーンテスト精度を評価したところ、プロンプト B はプロンプト A よりも大幅に優れていることがわかりました (4.5 パーセントポイントの改善)。クリーンなテスト精度は、私たちが本当に重視する実際のパフォーマンスをより反映するため、ラベルの品質を確認せずに生のテスト データのみに依存すると、間違った判断を下すことになります。 観測された精度を使用すると、プロンプトA をより適切に選択できます。ただし、クリーンなテスト セットで評価すると、ヒント B の方が実際にはより優れたヒントになります。 これは単なる統計的な変動なのでしょうか?McNemar 検定は、ML 精度の差の統計的有意性を評価するために推奨される方法です。このテストを適用して、700 個のテキスト例におけるプロンプト A とプロンプト B のクリーン テスト精度の 4.5% の差を評価したところ、その差は統計的に非常に有意でした (p 値 = 0.007、X² = 7.086)。したがって、すべての証拠は、ヒント B が有意に優れた選択であることを示しています。これは、元のテスト データを慎重に検討せずに選択すべきではなかった選択です。 これは、これら 2 つのプロンプトが偶然に発生した単なる偶然の結果でしょうか?他の種類のプロンプトも見て、2 つの思考連鎖プロンプトの結果が単なる偶然であるかどうかを確認しましょう。 コマンドプロンプトこのタイプのヒントは、大規模言語モデルに対して、特定のテキスト例をどのように処理する必要があるかについての指示を提供するだけです。私たちが選択したいと思うかもしれない次の 2 つのプロンプトを検討してください。 少数ショットのヒントこのタイプのヒントは、プレフィックスとサフィックスの 2 つの指示を使用し、大規模な言語モデルへの望ましい入力出力マッピングを明確に示すために、テキスト コーパスから 2 つの (事前に選択された) 例も含めます。私たちが選択したいと思うかもしれない次の 2 つのプロンプトを検討してください。 テンプレート化されたプロンプトこのタイプのプロンプトでは、複数選択形式に加えて、オプションのプレフィックスとサフィックスの 2 つの指示が使用されるため、モデルは予測クラスで直接応答するのではなく、複数選択の回答として分類できます。私たちが選択したいと思うかもしれない次の 2 つのプロンプトを検討してください。 さまざまなタイプのプロンプトの結果の比較これに加えて、これら 3 つの追加タイプの手がかりを使用して、同じFLAN-T5大規模言語モデルの分類パフォーマンスも評価します。観測されたテスト精度と、以下のすべてのプロンプトによって達成されたクリーン テスト精度をプロットすると、多くのプロンプト ペアが前述の同じ問題に悩まされていることがわかります。つまり、観測された検出精度に依存すると、実際にはより悪いプロンプトが選択されてしまうのです。 利用可能なテスト データで作業するキュー エンジニアとして、左上隅の灰色の A キュー (観測された最高の精度) を選択する場合があります。ただし、最適なキューは、実際には右上隅の灰色の B キュー (クリーンな最高の精度) です。 観察されたテスト精度のみに基づくと、各タイプのプロンプトにおいて「B」プロンプトよりも「A」プロンプトを選択する傾向があります。しかし、各チップ タイプの中で、実際に優れたチップはチップ B (クリーニング テストの精度が高かった) でした。これらのヒントのそれぞれは、テスト データの品質を検証する必要性を強調しています。そうしないと、ノイズの多い注釈などのデータの問題により、最適ではない決定を下す可能性があります。 すべての A キューは、観測された精度が高いため優れているように見えますが、実際のテスト データで評価すると、すべての B キューが客観的に優れています。 この図では、すべての A キューの観測精度が丸で囲まれていることもわかります。これは、A キューの精度が B キューよりも高いことを意味します。同様に、B プロンプトのクリーニング精度はすべて丸で囲まれており、これはそれらの精度が B プロンプトの精度よりも高いことを意味します。この記事の冒頭の簡単な例のように、実際には B のヒントの方が優れているにもかかわらず、A のヒントをすべて選択する傾向があります。 より信頼性の高い評価を可能にするために利用可能なテストデータを改善する高品質な評価データの重要性が明らかになったと思います。利用可能なテスト データを修正する方法をいくつか見てみましょう。 手動調整テスト データの品質を確保する最も簡単な方法は、手動で確認することです。各例を注意深く確認し、正しくラベル付けされていることを確認してください。テスト セットのサイズによっては、これが可能になる場合と不可能になる場合があります。テスト セットが比較的小さい場合 (約100 例)、テスト セットを注意深く確認し、必要な修正を行うことができます。テスト セットが大きい場合 (例が 1000 個以上)、これを手動で実行すると時間がかかり、労力もかかります。テスト セットはかなり大きいため、このアプローチは使用しません。 アルゴリズム修正利用可能な(ノイズの多い可能性のある)テスト セットを評価する別の方法は、データ中心の AI アルゴリズムを使用して、解決できる問題を診断し、同じデータセットのより信頼性の高いバージョンを取得することです(多くの追加の人間による注釈を収集する必要はありません)。ここでは、Confident Learning アルゴリズム (オープンソースの cleanlab パッケージ経由) を使用してテスト データを調べ、どの例が誤ってラベル付けされているかを自動的に推定します。次に、自動的に検出されたラベル付けの問題のみを検査し、必要に応じてラベルを修正して、テスト データセットのより高品質なバージョンを作成します。このバージョンのテスト データセットを CL テスト精度と呼びます。 CL テストの精度はすべてのB キューで高くなりました。 CL を使用して元のテスト データを修正し、モデルを信頼してタイムリーな意思決定を行えるようになりました。 この新しいCL 補正テスト セットをモデル評価に使用すると、以前のすべての B キューが A キューよりも高い精度を正しく示していることがわかります。これは、CL 補正されたテスト セットに基づいて行われた決定が、ノイズの多い元のテスト データに基づいて行われた決定よりも信頼性が高いと信頼できることを意味します。 もちろん、自信のある学習では、データセット内のすべてのエラーを魔法のように識別できるわけではありません。アルゴリズムがラベル付けエラーをどの程度適切に検出するかは、ベースライン ML モデルの適切な予測に依存しますが、それでも、システムによって導入されたエラーの一部は検出されないままになります (たとえば、2 つのクラスの定義を完全に入れ替えた場合など)。 自信のある学習が機能することを証明する数学的仮定の正確なリストについては、Northcutt らによるオリジナルの論文を参照してください。多くの現実世界のテキスト/画像/音声/表データセットでは、このアルゴリズムは、大規模なデータセット内の最も疑わしい例に限られたデータレビューリソースを集中させる効果的な方法を少なくとも提供しているようです。 したがって、常に「完璧な」評価セットをキュレートするために時間やリソースを費やす必要はありません。Confident Learning などのアルゴリズムを使用して、利用可能なテスト セット内の潜在的な問題を診断および修正することで、最適なヒントとモデル選択を保証する高品質のデータを提供できます。 最後に、特に記載がない限り、この記事のすべての画像は著者から提供されたものです。 翻訳者紹介Zhu Xianzhong 氏は、51CTO のコミュニティ エディターであり、51CTO の専門ブロガー兼講師であり、濰坊の大学のコンピューター教師であり、フリーランス プログラミング コミュニティのベテランです。 原題:モデル評価における信頼できないデータに注意してください: Flan-T5 を使用した LLM プロンプト選択のケーススタディ、著者: Chris Mauck |
私はテスラの「純粋なビジュアルルート」に常に懐疑的でした。疑問なのは、アルゴリズムの進歩によってカメ...
長い待ち時間を経て、ついに『オッペンハイマー』が国内で公開される。ノーラン監督は映画の細部と品質に細...
海外メディアの報道によると、過去3年間、グーグルの元ロボット工学部長であるアーロン・エドシンガー博士...
[[396949]]近年、新世代の通信およびナビゲーション技術の継続的な進歩を背景に、我が国のドロー...
ロボットが人類の脅威にならないようにする6つの戦略ウィル・スミス主演のアメリカ映画「アイ,ロボット」...
[[408123]]最近、Google Brain チームは Vision Transformer ...
執筆者 | 王 瑞平AutoGPT に続いて、GPT ファミリーに新しいメンバーである GPT-En...
従来、パラメータの数が満たすべき方程式の数より多い場合は常に、パラメータ化されたモデルを使用してデー...
標準ルーティングテーブル1.次駅経路選定の基本的な考え方ルーティング テーブルは、宛先までの完全なパ...
大規模言語モデル (LLM) の機能を最大限に活用するには、効果的なプロンプト設計ソリューションが不...
SF元年である2020年が静かに到来し、小説の中のSFシーンにさらに近づいているのかもしれません。...
2018年が近づいてきました。2018年のテーマを大胆に予想すると、間違いなく人工知能が人気のテーマ...
編集者注: OpenAI は数日前に突然 Twitch でライブ放送を開始しました。これまで、Ope...