web-dev-qa-db-ja.com

ケラスは「精度」と「損失」をどのように定義しますか?

Kerasが「精度」と「損失」をどのように定義しているかわかりません。異なるメトリック(たとえば、mse、クロスエントロピー)を指定できることは知っていますが、kerasは標準の「精度」を出力します。それはどのように定義されていますか?同様に損失についても、さまざまな種類の正則化を指定できることはわかっていますが、それらは損失に含まれていますか?

理想的には、それを定義するために使用した方程式を印刷したいと思います。そうでない場合は、ここで回答します。

30
SRobertJames

metrics.py をご覧ください。さまざまな精度を含む、利用可能なすべてのメトリックの定義を見つけることができます。モデルのコンパイル時に精度を目的のメトリックのリストに追加しない限り、精度は出力されません。

正則化は、定義により損失に追加されます。たとえば、Layerclassの add_loss メソッドを参照してください。

更新

accuracyのタイプは目的関数に基づいて決定されます。 training.py を参照してください。デフォルトの選択は categorical_accuracy です。目的関数がバイナリまたはスパースの場合、binary_accuracysparse_categorical_accuracyなどの他のタイプが選択されます。

29