プロジェクト画面:学習結果タブの使い方

Friday, November 03, 2017

App

Posted by Yoshiyuki Kobayashi

学習結果タブでは、現在の学習進捗状況の確認や複数の学習結果の比較を行います。

 

1 学習の進捗状況を確認するには

学習進捗情報、グラフモニタ、ログを参照します。

 

学習進捗情報のEPOCHは、コンフィグタブで指定した学習完了までの最適化の世代数(Max Epoch)のうち、現時点で何世代目まで完了しているかを示します。

 

学習進捗情報のElapsed、Remaining、Totalはそれぞれ、学習開始時点から現時点までに経過した時間、現時点から学習終了予測時間までの時間、学習開始時点から学習終了予測時間までの時間を示します。

 

グラフモニタのLearning Curveは、学習曲線を示します。横軸は学習世代数、左縦軸は学習データにおけるコスト関数の値、右縦軸は学習データおよび評価データにおける誤差関数の値を示します。

 

ログは、Neural Network Librariesの出力したログを示します。

 

ご参考

学習エンジンの設定不備、ネットワークの不整合、データセットの不整合、学習パラメータの異常その他の原因により学習中に何らかのエラーが生じた場合は、ログを参照することで原因を特定できる場合があります。詳しくはFAQをご参照ください。

 

2 実行中の学習を停止するには

コントローラのStopボタンをクリックします。

もしくは、キーボードのShiftキーを押しながらF5キーを押します。

 

3 過去の学習結果すべての誤差、コストのトレードオフ関係を表示するには

グラフ設定のTrade-off Graphをクリックして選択します。

 

グラフモニタに縦軸を誤差、横軸をデフォルトでは乗加算回数とし、各点が1つの学習結果を表すトレードオフ関係のグラフが表示されます。

 

ご参考

グラフ設定のTrade-Off Graph右のコンボボックスからPareto Onlyを選択することで、表示するデータ点を過去のすべての学習結果の中から誤差、乗加算回数いずれかの指標で他の学習結果を上回っている結果だけに限定することができます。

 

ご参考

グラフ設定のTrade-Off Graph右のコンボボックスからPreviousを選択することで、表示するデータ点を現在選択している学習結果より以前の結果だけに限定することができます。

 

4 Trade-Off Graphの横軸を変更するには

Trade-Off Graph横軸のラベル(デフォルトではCostMultiplyAdd)をクリックして表示されるコンボボックスから横軸を選択します。

 

5 過去の学習結果のうち特定の学習結果を確認するには

学習結果リストに表示される過去の学習結果一覧から、確認対象の学習結果をクリックして選択します。

もしくは、グラフモニタに表示したTrade-Off Graph上のデータ点をクリックします。

 

選択した学習結果について、学習進捗状況、グラフモニタ、ネットワークビューワ、ログの内容が更新されます。

 

6 学習結果ファイルの格納されたフォルダを開くには

  1. 学習結果リストで、フォルダを開く学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからOpen Result Locationを選択します。
    もしくは、フォルダを開く学習結果をダブルクリックします。

 

ご参考

学習結果ファイルは、プロジェクトファイル名の拡張子を除いたものに、”.files”を付加した名前のフォルダの下、さらに学習を実行した日付・時刻の名前のフォルダの下に保存されています。

 

7 学習結果の名前を変更するには

  1. 学習結果リストに表示される過去の学習結果一覧から、名前を変更する学習結果を2度クリックします。

もしくは、学習結果リストを右クリックして表示されるポップアップメニューからRenameを選択します。

  1. 新しい名前を入力してキーボードのEnterキーを押します。

 

8 学習結果の一覧を最新の情報に更新するには

学習結果リストを右クリックして表示されるポップアップメニューからRefreshを選択します。
 

9 2つの学習結果の間の学習曲線の比較を行うには

  1. 学習結果リストで、比較元に用いる学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからOpen Learning Curve for Comparisonを選択します。
  3. 学習結果リストで、比較先に用いる学習結果をクリックして選択します。

 

グラフモニタのLearning Curveにおいて、比較元の学習曲線が薄い線で、比較先の学習結果が通常の線で表示されます。

 

10 2つの学習結果の間の学習曲線の比較を終了するには

学習結果リストを右クリックして表示されるポップアップメニューからClear Learning Curve for Comparisonを選択します。

 

11 グラフモニタに表示する項目を変更するには

グラフモニタを右クリックして表示されるポップアップメニューからViewを選択し、さらに表示する項目を以下の3つから選択します。

項目 解説
Training & Validation(デフォルト) 学習データおよび評価データ両方の誤差関数の値を表示します。
Training 学習データでの誤差関数の値のみ表示します。
Validation 評価データでの誤差関数の値のみ表示します。

 

12 グラフモニタの縦軸を対数軸に切り替えるには

グラフ設定のLog Scaleをクリックして選択します。

対数軸から線形軸に戻すには、Linear Scaleをクリックします。

 

13 グラフモニタの縦軸を拡大縮小するには

  1. グラフモニタをクリックして選択します。
  2. キーボードのCtrlキーを押しながらマウスホイールを操作します。もしくは、グラフモニタ上を右クリックして表示されるポップアップメニューからZoomを選択し、さらにZoom InもしくはZoom Outを選択します。もしくは、キーボードのCtrlキーを押しながら「+」(プラス)キーもしくは「-」(マイナス)キーを押します。

 

14 グラフモニタの縦軸の拡大率を元に戻すには

  1. グラフモニタをクリックして選択します。
  2. キーボードのCtrlキーを押しながら「0」(ゼロ)キーを押します。

もしくは、ネットワークグラフ上を右クリックして表示されるポップアップメニューからZoomを選択し、さらにDefaultを選択します。

 

15 グラフモニタで表示中のグラフの値をCSVファイル形式で保存するには

  1. グラフモニタを右クリックして表示されるポップアップメニューからSave CSV as…を選択します。
  2. 保存先のCSVファイル名を指定します。

16 グラフモニタで表示中のグラフを画像として保存するには

  1. グラフモニタを右クリックして表示されるポップアップメニューからSave Graph BMP as…を選択します。
  2. 保存先の画像ファイル名を指定します。

 

ご参考

保存される画像の解像度は1280×720pixelになります(固定)。

 

17 学習済みモデルをnnp (Neural Network Libraries file format)形式で出力するには

  1. 学習結果リストで、nnp形式で出力する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからExport->NNP (Neural Network Libraries file format)を選択します。

nnpファイルは、学習結果ファイルの格納されたフォルダに”model.nnp”のファイル名で生成されます。

 

ご参考
nnpファイルは、Neural Network Librariesの扱うニューラルネットワークの構造、学習の設定、学習済みパラメータなどが含まれたファイルです。
nnp形式で出力したモデルは、Neural Network LibrariesのPython API、コマンドラインインターフェイス、C++コマンドラインインターフェイスを通じて利用することができます。

 

18 学習済みモデルをnnb (NNabla C Runtime file format)形式で出力するには

  1. 学習結果リストで、nnb形式で出力する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからExport->NNB (NNabla C Runtime file format)を選択します。

nnbファイルは、学習結果ファイルの格納されたフォルダに”model.nnb”のファイル名で生成されます。

 

ご参考
nnbファイルは、Neural Network LibrariesのNNabla C Runtimeが扱う、ニューラルネットワークの構造と学習済みパラメータが含まれたファイルです。
nnb形式で出力したモデルは、Neural Network LibrariesのNNabla C Runtimeを通じて利用することができます。

 

19 学習済みモデルをONNX形式で出力するには

  1. 学習結果リストで、ONNX形式で出力する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからExport->ONNXを選択します。

ONNXファイルは、学習結果ファイルの格納されたフォルダに”model.onnx”のファイル名で生成されます。

 

ご参考
ONNX(Open Neural Network Exchange Format)は、Deep Learningのモデルを異なるソフトウェア間で共有可能にするオープンなファイルフォーマットです。
https://onnx.ai/
ONNX形式で出力したモデルは、ONNXフォーマットに対応した各種ソフトウェアを通じて利用することができます。

 

20 学習済みモデルをpb形式で出力するには(beta)

  1. 学習結果リストで、pb (TensorFlow frozen graph)形式で出力する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからExport-> pb (TensorFlow frozen graph)を選択します。

pbファイルは、学習結果ファイルの格納されたフォルダに”model.pb”のファイル名で生成されます。

 

21 学習結果のレポートをpptx形式で出力するには(beta)

  1. 学習結果リストで、pptx形式で出力する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからExport->pptx betaを選択します。

出力されたpptxファイルが関連付けられたアプリで開きます。

 

22 学習結果のレポートをhtml形式で出力するには(beta)

  1. 学習結果リストで、html形式で出力する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからExport->html betaを選択します。

出力されたhtmlファイルが関連付けられたアプリで開きます。

 

23 学習未完了のネットワークを学習完了状態にするには

  1. 学習結果リストで、学習未完了(Incomplete)の学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからForce Completeを選択します。
  3. 確認を行うダイアログボックスでOKを選択します。

 

ご参考

本機能は、学習を完了前に中断したネットワークにおいて評価の実行を可能にするためなどに利用します。

 

24 過去の学習結果に含まれるネットワーク構造で再度学習を実行するには

  1. 学習結果リストで、再度学習を行う学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからRetrain (in place)(選択中の学習結果フォルダを上書きする場合)、もしくはRetrain (not in place)(新しい学習結果フォルダを作成し、そこに学習結果を保存する場合)を選択します。
  3. in placeを選択した場合、学習実行の確認を行うダイアログボックスでOKを選択します。

 

25 過去の全ての学習結果に含まれるネットワーク構造で再度学習を実行するには

  1. 学習結果リストを右クリックして表示されるポップアップメニューからRetrain All (in place)を選択します。
  2. 学習実行の確認を行うダイアログボックスでOKを選択します。

 

ご注意

既存の全ての学習結果は新しい学習結果で上書きされます。

 

26 予約された学習をキャンセルするには

  1. 学習結果リストで、予約された学習をキャンセルするアイテムをクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからCancel Scheduleを選択します。

 

27 全ての予約された学習をキャンセルするには

学習結果リストを右クリックして表示されるポップアップメニューからCancel All Scheduled Taskを選択します。

 

28 学習停止状態で予約された学習の実行を再開するには

学習結果リストを右クリックして表示されるポップアップメニューからResume Scheduled Taskを選択します。

 

29 過去の学習結果をディスクから削除するには

  1. 学習結果リストで、ディスクから削除する学習結果をクリックして選択します。
  2. 学習結果リストを右クリックして表示されるポップアップメニューからDelete from Diskを選択します。
  3. 削除の確認を行うダイアログボックスでOKを選択します。

 

ご注意

この操作を行うと、学習結果はごみ箱を介さず直接ディスクから削除されます。

 

30 学習が完了していないすべての学習結果をディスクから削除するには

  1. 学習結果リストを右クリックして表示されるポップアップメニューからDelete All Incomplete Results from Diskを選択します。
  2. 削除の確認を行うダイアログボックスでOKを選択します。

 

ご注意

この操作を行うと、学習結果はごみ箱を介さず直接ディスクから削除されます。

 

31 ネットワークビューワで複数のネットワークの表示を切り替えるには

ネットワークビューワ右上のネットワーク切り替えボタンをクリックします。

 

32 学習済みパラメータをプロットして確認するには

  1. 学習結果リストで、パラメータを確認するネットワークを含んだ学習結果をクリックして選択します。
  2. ネットワークビューワで、パラメータを確認するレイヤーをダブルクリックします。もしくは、パラメータを確認するレイヤーをクリックして選択後、右クリックして表示されるポップアップメニューからPlot Weightを選択します。

 

グラフモニタにVisualizeされたパラメータと、パラメータの主成分分析結果から求めたパラメータの寄与率が表示されます。寄与率のグラフの横軸はパラメータの次元数、縦軸は累積寄与率を示します。

 

33 学習済みパラメータのプロットをスクロールするには

グラフモニタ右に表示されるスクロールバーをドラッグします。

もしくは、マウスホイールを操作します。

 

34 学習済みパラメータのプロットを拡大縮小するには

  1. グラフモニタをクリックして選択します。
  2. キーボードのCtrlキーを押しながらマウスホイールを操作します。もしくは、グラフモニタ上を右クリックして表示されるポップアップメニューからZoomを選択し、さらにZoom InもしくはZoom Outを選択します。

もしくは、キーボードのCtrlキーを押しながら「+」(プラス)キーもしくは「-」(マイナス)キーを押します。

 

35 学習済みパラメータのプロットの拡大率を元に戻すには

  1. グラフモニタをクリックして選択します。
  2. キーボードのCtrlキーを押しながら「0」(ゼロ)キーを押します。

もしくは、グラフモニタ上を右クリックして表示されるポップアップメニューからZoomを選択し、さらにDefaultを選択します。

 

36 学習済みパラメータのプロットを正規化表示するには

Normalizeをチェックします。

 

37 学習済みパラメータのプロットのゲインを変更するには

Gainを左右にドラッグします。

 

38 過去の学習結果に含まれるネットワーク構造を編集タブに読み込むには

  1. 学習結果リストで、読み込むネットワーク構造を含んだ学習結果をクリックして選択します。
  2. 学習結果リスト、もしくはネットワークビューワを右クリックして表示されるポップアップメニューからOpen in EDIT Tabを選択します。編集タブにネットワークビューアで表示中のネットワーク構造が読み込まれます。

 

39 過去の学習結果に含まれるネットワーク構造をパラメータ付きで編集タブに読み込むには

  1. 学習結果リストで、読み込むネットワーク構造を含んだ学習結果をクリックして選択します。
  2. 学習結果リスト、もしくはネットワークビューワを右クリックして表示されるポップアップメニューからOpen in EDIT Tab with Weightを選択します。編集タブにネットワークビューアで表示中のネットワーク構造がConvolution、AffineなどのWeight(W.File)、Bias(b.File)に学習済みネットワークのパラメータファイルが入力された状態で読み込まれます。

 

40 Neural Network Librariesが使用可能なコマンドプロンプトを起動するには

  1. 学習結果リストで、コマンドプロンプトを起動するフォルダの学習結果をクリックして選択します。
  2. 学習結果リスト、もしくはネットワークビューワを右クリックして表示されるポップアップメニューからMoreTools->Command Promptを選択します。