本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
準確性
此評估會比較模型輸出與資料集中包含的地面真相答案,藉此測量模型在任務中的執行準確度。
Amazon SageMaker 支援從 Amazon SageMaker Studio 或使用 fmeval
程式庫執行準確性評估。
-
在 Studio 中執行評估:在 Studio 中建立的評估任務會使用預先選取的預設值來快速評估模型效能。
-
使用
fmeval
程式庫執行評估:使用fmeval
程式庫建立的評估任務提供擴充選項來設定模型效能評估。
支援的任務類型
下列任務類型及其相關聯的內建資料集支援準確性評估。內建資料集包含用於測量準確度的地面實況元件。使用者也可以攜帶自己的資料集。如需在資料集中包含地面實況元件的詳細資訊,請參閱 自動模型評估。
根據預設,從資料集 SageMaker 取樣 100 個隨機提示以進行準確性評估。使用fmeval
程式庫時,可以透過將 num_records
參數傳遞至 evaluate
方法來調整。如需使用fmeval
程式庫自訂事實知識評估的相關資訊,請參閱 使用 fmeval程式庫自訂工作流程。
任務類型 | 內建資料集 | 備註 |
---|---|---|
文字摘要 | Gigaword |
內建資料集僅提供英文版本,但部分指標與語言無關。您可以用任何語言引入資料集。 |
回答問題 | BoolQ |
內建資料集僅提供英文版本,但部分指標與語言無關。您可以用任何語言引入資料集。 |
分類 | 女性電子商務服裝評論 |
運算值
根據任務類型,評估準確度變更所測量的分數。如需評估所需的提示結構資訊,請參閱 在 Studio 中建立自動模型評估任務。
摘要
對於摘要任務,準確性評估會測量模型總結文字的準確度。根據預設,此評估會針對包含輸入文字對和地面真相答案的兩個內建資料集,對模型進行基準測試。然後,使用三個內建指標來測量摘要的相似程度,比較模型產生的摘要與地面事實答案。所有這些分數都會在整個資料集中平均。
-
ROUGE 分數:ROUGE分數是一類指標,可在模型產生的摘要與地面真相摘要之間計算重疊單字單位 (N 克),以測量摘要品質。評估ROUGE分數時,分數越高表示模型能夠建立更好的摘要。
-
值範圍從
0
(不相符) 到1
(完美相符)。 -
這些指標不區分大小寫。
-
限制 :可能不依賴抽象的摘要任務,因為分數依賴確切的字重疊。
-
範例 ROUGE Bigram 計算
-
地面實況摘要:「狗在公園中用球來擷取。」
-
產生的摘要:「使用球播放的狗」。
-
ROUGE-2:計算參考和候選者之間共同的 Bigram 數目 (兩個相鄰的單字)。共有 4 個常見的 Bigram ("狗"、"狗玩"、"帶"、"球")。
-
將地面真相摘要中的 Bigram 總數除以 :9
-
ROUGE-2 = 4/9 = 0.444
-
-
ROUGE Studio 自動模型評估任務中的分數預設值
當您使用 Studio 建立自動模型評估任務時, SageMaker 會使用
N=2
作為ROUGE分數計算中使用的 N 克。因此,模型評估任務會使用 Bigram 進行比對。Studio 任務也會使用 Porter 幹細胞,從所有提示中除去字尾。例如,字串被 raining
截斷為rain
。 -
ROUGE
fmeval
程式庫中可用的分數選項您可以使用
fmeval
程式庫設定如何使用SummarizationAccuracyConfig
參數計算ROUGE分數。支援下列選項:-
rouge_type
:要比對的 N 克長度。三個支援的值為:-
ROUGE_1
符合單一單字 (單位) -
ROUGE_2
符合單字對 (大圖)。這是預設值。 -
ROUGE_L
符合最長的常見子序列。 若要計算最長的常見子序列,會考慮單字順序,但連續性不是-
例如:
-
模型摘要 = ‘It is autumn’
-
參考 = '再次是秋天'
-
Longest common subsequence(prediction, reference)=3
.
-
-
-
-
use_stemmer_for_rouge
:如果True
(預設), 會使用 Porterstemmer來分割字尾。 -
例如:「降雨」被截斷為「降雨」。
-
-
-
-
以明確 ORdering(METEOR) 分數評估翻譯的指標:METEOR類似於 ROUGE-1,但也包含定律和同義詞比對。它提供比 更全面的摘要品質檢視ROUGE,其僅限於簡單的 n 克比對。METEOR 分數越高,通常表示準確度越高。
-
限制 :可能不依賴抽象的摘要任務,因為分數依賴確切的單字和同義字重疊。
-
-
BERTScore:BERTScore使用 BERT 系列的額外 ML 模型來計算句子嵌入並比較其餘弦相似性。此分數旨在比 ROUGE 和 更具有語言靈活性,METEOR因為類似句子可能彼此更接近嵌入。
-
限制:
-
繼承用於比較段落的模型限制。
-
變更單一重要單字時,可能無法用於短文字比較。
-
-
BERTScoreStudio 自動模型評估任務中的預設值
當您使用 Studio 建立自動模型評估任務時, SageMaker 會使用
deberta-xlarge-mnli
模型來計算 BERTScore。 -
BERTScore 程式庫中
fmeval
可用的選項您可以使用
fmeval
程式庫,設定如何使用 參數計算SummarizationAccuracyConfig
BERTScore。支援下列選項:-
model_type_for_bertscore
:用於評分的模型名稱。BERTScore 目前僅支援下列模型:-
"microsoft/deberta-xlarge-mnli
(default)"
-
-
-
回答問題
對於問題回答任務,準確度評估會比較模型產生的答案與給定的地面真相答案,以不同的方式測量模型的問題回答 (QA) 效能。所有這些分數都會在整個資料集上進行平均。
注意
這些指標的計算方式是比較完全相符的產生和地面真相答案。因此,對於可以改述答案而不修改其意義的問題,它們可能不可靠。
-
Precision Over Words 分數:介於
0
(最差) 和1
(最佳) 之間的數值分數。若要計算此分數,模型輸出和地面真相會先標準化再進行比較。在計算精確度之前,此評估會移除任何新行字元,以說明幾個不同段落的詳細答案。如果您上傳自己的資料集,就可以用任何語言評估精確度。-
precision = true positives / (true positives + false positives)
-
true positives
:模型輸出中也包含在地面真理中的單字數目。 -
false positives
:模型輸出中不包含在地面真理中的單字數。
-
-
-
Recall Over Words 分數:介於
0
(最差) 和1
(最佳) 之間的數字分數。若要計算此分數,在比較之前會先標準化模型輸出和地面真相。在運算召回之前,此評估會移除任何新行字元,以考慮幾個不同段落的動詞答案。由於召回只會檢查答案是否包含地面真相,並且不會懲罰動詞,因此我們建議您使用動詞模型的召回。如果您上傳自己的資料集,則可以用任何語言評估召回。-
recall = true positives / (true positives + false negatives)
-
true positives
:模型輸出中也包含在地面真理中的單字數目。 -
false negatives
:模型輸出中遺失的單字數目,但包含在地面真理中。
-
-
-
F1 Over Words 分數:介於
0
(最差) 和1
(最佳) 之間的數字分數。F1 是精確度和召回的諧波平均值。若要計算此分數,模型輸出和地面真相會先標準化再進行比較。在運算 F1 之前,此評估會移除任何新行字元,以考慮幾個不同段落的措辭答案。如果您上傳自己的資料集,則可以用任何語言評估文字上的 F1。-
F1 = 2*((precision * recall)/(precision + recall))
-
precision
:精確度的計算方式與精確度分數相同。 -
recall
:召回的計算方式與召回分數相同。
-
-
-
Exact Match (EM) 分數:二進位分數,指出模型輸出是否完全符合地面真相答案。如果您上傳自己的資料集,則可以用任何語言評估完全相符。
-
0
:不是完全相符。 -
1
:完全相符。 -
範例:
-
問題 :
“
where is the world's largest ice sheet located today?”
-
地面實況:「南極」
-
產生的答案:「在南極」
-
分數:0
-
-
產生的答案:「南極」
-
分數:1
-
-
-
-
Quasi Exact Match 分數:二進位分數的計算方式與 EM 分數類似,但在比較之前模型輸出和地面真相會標準化。對於兩者,輸出會將其轉換為小寫,然後移除文章、標點符號和多餘的空格來標準化。
-
0
:不是準完全相符。 -
1
:準完全相符。 -
範例:
-
問題 :
“
where is the world's largest ice sheet located today?”
-
地面實況:「南極」
-
產生的答案:「南美洲」
-
分數:0
-
-
產生的答案:「在南極大陸」
-
分數:1
-
-
-
分類
對於分類任務,準確度評估會將預測的輸入類別與其指定的標籤進行比較。所有這些分數都會在整個資料集上個別平均。
-
準確度分數:二進位分數,指出模型預測的標籤是否完全符合輸入的指定標籤。
-
0
:不是完全相符。 -
1
:完全相符。
-
-
精準分數:介於
0
(最差) 和1
(最佳) 之間的數值分數。-
precision = true positives / (true positives + false positives)
-
true positives
:模型預測其各自輸入的指定標籤的數字輸入。 -
false positives
:模型預測的標籤與其個別輸入的指定標籤不相符的輸入數目。
-
-
Studio 自動模型評估任務中的精確度分數預設值
當您使用 Studio 建立自動模型評估任務時, 會透過計算真陽性、假陰性和假陽性總數,在全球所有類別中 SageMaker 計算精確度。
-
程式庫中
fmeval
可用的精確分數選項使用
fmeval
程式庫,您可以設定如何使用 參數計算ClassificationAccuracyConfig
精確度分數。支援下列選項:-
multiclass_average_strategy
決定分數在多類別分類設定中如何跨類別彙總。可能的值為{'micro', 'macro', 'samples', 'weighted', 'binary'}
或None
(default='micro'
)。 在預設情況下micro'
,透過計算真陽性、假陰性和假陽性總數,在所有類別中全域計算精確度。如需所有其他選項,請參閱sklearn.metrics.precision_score。注意
對於二進位分類,我們建議您使用
'binary'
平均策略,其對應於精確度的傳統定義。
-
-
-
召回分數:範圍介於
0
(最差) 和1
(最佳) 的數值分數。-
recall = true positives / (true positives + false negatives)
-
true positives
:模型預測其個別輸入的指定標籤的輸入數目。 -
false negatives
:模型無法預測其個別輸入的指定標籤的輸入數目。
-
-
Studio 自動模型評估任務中的召回分數預設值
當您使用 Studio 建立自動模型評估任務時, 會透過計算真陽性、假陰性和假陽性總數,來 SageMaker 計算所有類別的全域召回。
-
程式庫中
fmeval
可用的召回分數選項您可以使用
fmeval
程式庫,設定如何使用ClassificationAccuracyConfig
參數計算召回分數。支援下列選項:-
multiclass_average_strategy
決定分數在多類別分類設定中如何跨類別彙總。可能的值為{'micro', 'macro', 'samples', 'weighted', 'binary'}
或None
(default='micro'
)。 在預設情況下micro'
,透過計算真陽性、假陰性和假陽性總數,在所有類別中全域計算召回。如需所有其他選項,請參閱sklearn.metrics.precision_score。注意
對於二進位分類,我們建議您使用
'binary'
平均策略,其對應於回收的傳統定義。
-
-
-
平衡的分類準確性:介於
0
(最差) 和1
(最佳) 之間的數值分數。-
對於二進位分類 :此分數的計算方式與準確性相同。
-
對於多類別分類 :此分數會平均所有類別的個別召回分數。
-
針對下列範例輸出:
檢閱文字 Ground Truth 標籤 類別名稱 預測標籤 美味的蛋糕!會再次購買。 3 布朗尼 3 美味蛋糕!R Ecommended。 2 磅蛋糕 2 可怕!總蛋糕。 1 磅蛋糕 2 -
類別 1 召回:0
-
第 2 類召回:1
-
第 3 類召回:1
-
平衡的分類準確度:(0+1+1)/3=0.66
-
-
-