セマンティック堅牢性 - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

セマンティック堅牢性

入力のセマンティック保存による小さな変更の結果としてモデル出力がどの程度変化するかを評価します。Foundation Model Evaluations (FMEval) は、キーボードの誤字、大文字へのランダムな変更、および空白のランダムな追加または削除の結果としてモデル出力がどのように変化するかを測定します。

Amazon は、Amazon SageMaker Studio から、または fmevalライブラリを使用してセマンティック堅牢性評価の実行 SageMaker をサポートしています。

  • Studio で評価を実行する: Studio で作成された評価ジョブは、事前に選択されたデフォルトを使用して、モデルのパフォーマンスをすばやく評価します。オープンエンド生成のセマンティック堅牢性評価を Studio で作成することはできません。fmeval ライブラリを使用して作成する必要があります。

  • fmeval ライブラリを使用して評価を実行する: fmevalライブラリを使用して作成された評価ジョブには、モデルパフォーマンス評価を設定する拡張オプションが用意されています。

サポートされているタスクタイプ

セマンティック堅牢性評価は、関連する組み込みデータセットを持つ次のタスクタイプでサポートされています。ユーザーは独自のデータセットを持ち込むこともできます。デフォルトでは、毒性評価のためにデータセットから 100 個のランダムなデータポイントを SageMaker サンプリングします。fmevalライブラリを使用する場合、 num_recordsパラメータを evaluateメソッドに渡すことで調整できます。fmevalライブラリを使用して事実に基づく知識評価をカスタマイズする方法については、「」を参照してくださいfmeval ライブラリを使用してワークフローをカスタマイズする

タスクタイプ 組み込みデータセット メモ
テキスト要約

Gigaword 政府レポートデータセット

質問に対する回答

BoolQNaturalQuestionsTriviaQA

分類

女性の E コマース服のレビュー

オープンエンド生成

T-RExBOLDWikiText-2

摂動タイプ

セマンティック堅牢性評価では、次の 3 つの摂動のいずれかを行います。評価ジョブを設定するときに、摂動タイプを選択できます。3 つの摂動はすべて NL-Augmenter から適応されます。

モデル入力の例: A quick brown fox jumps over the lazy dog。 

  • バターフィンガー : 隣接するキーボードキーをヒットしたためにタイポが導入されました。

    W quick brmwn fox jumps over the lazy dig
  • ランダム大文字 : ランダムに選択された文字を大文字に変更します。

    A qUick brOwn fox jumps over the lazY dog
  • Whitespace Add Remove : 入力から空白をランダムに追加および削除します。

    A q uick bro wn fox ju mps overthe lazy dog

計算値

この評価では、元の未介入の入力に基づいてモデル出力と、入力の一連の摂動バージョンに基づいてモデル出力のパフォーマンス変化を測定します。評価に必要なプロンプト構造の詳細については、「」を参照してくださいStudio で自動モデル評価ジョブを作成する

パフォーマンスの変化は、元の入力のスコアと摂動された入力のスコアの平均差です。このパフォーマンスの変化を評価するために測定されたスコアは、タスクタイプによって異なります。

要約

要約タスクの場合、セマンティックロバスト性は、摂動入力を使用する場合に次のスコアと、各スコアの Delta を測定します。Delta スコアは、元の入力のスコアと摂動された入力のスコアの平均絶対差を表します。

  • Delta ROUGEスコア: 元の入力と摂動された入力のROUGEスコアの平均絶対差。ROUGE スコアは、 のROUGEスコアと同じ方法で計算されます要約

  • Delta METEORスコア: 元の入力と摂動された入力のMETEORスコアの平均絶対差。METEOR スコアは、 のMETEORスコアと同じ方法で計算されます要約

  • Delta BERTScore: 元の入力と摂動された入力BERTScoreの の平均絶対差。は、BERTScores BERTScoreの と同じ方法で計算されます要約

質問に対する回答

質問への回答タスクの場合、セマンティック堅牢性は、摂動された入力を使用するときに次のスコアと、各スコアの Delta を測定します。Delta スコアは、元の入力のスコアと摂動された入力のスコアの平均絶対差を表します。

  • Delta F1 Over Words スコア: 元の入力と摂動された入力の F1 Over Words スコアの平均絶対差。F1 Over Words スコアは、 の F1 Over Words スコアと同じ方法で計算されます質問に対する回答

  • Delta Exact Match スコア: 元の入力と摂動された入力の Exact Match スコアの平均絶対差。完全一致スコアは、 の完全一致スコアと同じ方法で計算されます質問に対する回答

  • Delta Quasi Exact Match スコア: 元の入力と摂動された入力の Quasi Exact Match スコアの平均絶対差。Quasi Exact Match スコアは、 の Quasi Exact Match スコアと同じ方法で計算されます。 質問に対する回答

  • Delta Precision Over Words スコア: 元の入力と摂動された入力の Precision Over Words スコアの平均絶対差。Precision Over Words スコアは、 の Precision Over Words スコアと同じ方法で計算されます質問に対する回答

  • Delta Recall Over Words スコア: 元の入力と摂動された入力の Recall Over Words スコアの平均絶対差。Recall Over Words スコアは、 の Recall Over Words スコアと同じ方法で計算されます質問に対する回答

分類

分類タスクの場合、セマンティック堅牢性は、摂動入力を使用する場合の精度と、各スコアの Delta を測定します。Delta スコアは、元の入力のスコアと摂動された入力のスコアの平均絶対差を表します。

  • Delta Accuracy score: 元の入力と摂動された入力の精度スコアの平均絶対差。精度スコアは、 の精度スコアと同じ方法で計算されます分類

オープンエンド生成

オープンエンド生成のセマンティック堅牢性評価を Studio で作成することはできません。これらは、 でfmevalライブラリを使用して作成する必要がありますGeneralSemanticRobustness。セマンティック堅牢性評価では、オープンエンド世代のスコアの差を計算する代わりに、元の入力と摂動された入力の間のモデル世代の差異を測定します。この類似性は、次の戦略を使用して測定されます。

  • 単語エラー率 (WER): 第 1 世代を第 2 世代に変換するために変更する必要がある単語の割合を計算することで、2 世代間の構文的違いを測定します。 の計算の詳細についてはWER、HuggingFace 「単語エラー率」の記事を参照してください。

    • 例:

      • 入力 1: 「これは猫です」

      • 入力 2: 「これは犬です」

      • 変更する必要がある単語の数: 1/4、または 25%

      • WER: 0.25

  • BERTScore 相違点 (BSD): 1 から をBERTScore減算して、2 つの世代間の意味差を測定します。BSD セマンティックに似た文が互いに近づけて埋め込まれるWER可能性があるため、 に含まれていない言語の柔軟性が増す可能性があります。

    • 例えば、第 2 世代と第 3 世代がそれぞれ第 1 世代と比較される場合、 WER は同じですが、セマンティックな意味を考慮するとBSDスコアは異なります。

      • gen1 (元の入力)"It is pouring down today"

      • gen2 (摂動入力 1)"It is my birthday today"

      • gen3 (摂動入力 2) :"It is very rainy today"

      • WER(gen1, gen2)=WER(gen2, gen3)=0.4

      • BERTScore(gen1, gen2)=0.67

      • BERTScore(gen1, gen3)=0.92

      • BSD(gen1, gen2)= 1-BERTScore(gen1, gen2)=0.33

      • BSD(gen2 ,gen3)= 1-BERTScore(gen2, gen3)=0.08

    • 以下のオプションは、 GeneralSemanticRobustnessConfigパラメータの一部としてサポートされています。 

      • model_type_for_bertscore: スコアリングに使用するモデルの名前。BERTScore 現在、相違点は次のモデルのみをサポートしています。

非決定的モデル

モデル生成戦略がゼロ以外の温度LLMsの など、非決定的である場合、入力が同じであっても出力が変わる可能性があります。このような場合、元の入力と摂動された入力のモデル出力の違いを報告すると、人為的に低い堅牢性を示す可能性があります。非決定的戦略を考慮するために、セマンティック堅牢性評価は、同じ入力に基づいてモデル出力間の平均差を減算することで、差分スコアを正規化します。 

max(0,d−dbase​)

  • d: 2 BERTScore 世代間の相違スコア (単語エラー率または相違)。

  • dbase​: 同じ入力のモデル出力間の相違。