nprtool関数を​用いてプロットしたR​OC曲線のAUCの算​出方法について

10 Ansichten (letzte 30 Tage)
hiroki komiya
hiroki komiya am 27 Dez. 2017
Bearbeitet: hiroki komiya am 14 Jan. 2018
Neural Network Toolboxの中のnprtool関数についての質問です。 nprtool関数を実行するとニューラルネットワークのguiが立ち上がると思います。 このguiのTrain NetworkというページにPlot ROCというボタンがあり、これを押すとROC曲線が表示されますが、このROC曲線のAUC(Area Under the Curve)はどのように求めたらよいのでしょう? nprtoolのguiではAUCは求められないのでしょうか?

Akzeptierte Antwort

michio
michio am 4 Jan. 2018
残念ながら nprtoolのGUIでは求めることはできません。 コマンドベースで実行する必要がありますが、例えば roc 関数 (Neural Network Toolbox) で各出力クラスの受信者動作特性を計算した後に、trapz関数 (MATLAB本体)で簡単に積分して AUCを計算することができるかと思います。下記は roc関数のドキュメンテーションページのサンプルプログラムからですが、、
load iris_dataset
net = patternnet(20);
net = train(net,irisInputs,irisTargets);
irisOutputs = sim(net,irisInputs);
[tpr,fpr,thresholds] = roc(irisTargets,irisOutputs)
AUC1 = trapz(fpr{1}, tpr{1})
など。
  1 Kommentar
hiroki komiya
hiroki komiya am 14 Jan. 2018
Bearbeitet: hiroki komiya am 14 Jan. 2018
nprtoolのGUIでtargetとoutputの値を返させてその値を用いるわけですね。 提案していただいた方法でAUCを求めることができました。回答ありがとうございました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

mizuki
mizuki am 31 Dez. 2017
nprtool の GUI では AUC を求めることができません. Statistics and Machine Learning Toolbox をお持ちであれば, perfcurve 関数を使用してAUCを求めることができます.
  1 Kommentar
hiroki komiya
hiroki komiya am 14 Jan. 2018
なるほど,やはりGUI上では求められないのですね. 回答ありがとうございます.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!