F スコアの警告: 未定義のメトリクスと予測サンプルの欠落
分類タスクのコンテキストでは、F スコア メトリクスが一般的に使用されますモデルのパフォーマンスを評価します。ただし、「UnknownMetricWarning: F スコアが正しく定義されていません」エラーが発生した場合は、予測サンプルがないため、特定のラベルの F スコアを計算できないことを示します。
この問題は、ラベルが指定されていない場合に発生します。真のラベル セット (y_test) に存在するラベルは、予測されたラベル セット (y_pred) には現れません。したがって、そのようなラベルの F スコアを計算すると、値が未定義になります。この状況に対処するために、scikit-learn はこれらのラベルの F スコアに 0.0 の値を割り当てます。
このシナリオを観察する 1 つの方法は、例を使用することです。ラベル '2' が y_test には存在するが y_pred には存在しない状況を考えてみましょう:
>>> set(y_test) - set(y_pred) {2}
ラベル '2' には予測サンプルがないため、このラベルの F スコアは 0.0 とみなされます。計算にはスコア 0 が含まれるため、未定義のメトリックについて警告する警告が scikit-learn によって表示されます。
この警告は、初めて発生した場合にのみ発生します。この動作は、特定の警告が 1 回だけ表示されるようにする Python の警告のデフォルト設定によるものです。
この警告を抑制するには、warnings.filterwarnings('ignore'):
import warnings warnings.filterwarnings('ignore')
>>> metrics.f1_score(y_test, y_pred, average='weighted', labels=np.unique(y_pred)) 0.91076923076923078
以上がPython で F スコアが「UnknownMetricWarning」をスローするのはなぜですか? それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。