データフォーマット¶
ネットワーク構造と学習済みパラメータを交換するためのデータフォーマットです。
ネットワーク構造¶
ネットワーク構造とパラメータは Google Protocol Buffer 形式として内部的に格納されます。
概要¶
ネットワーク構造の全体像を以下のように定義します。
- NNablaProtoBuf
NNabla ネットワーク構造のルートメッセージです。このメッセージには GlobalConfig 、 TrainingConfig 、 Network 、 Parameter 、 Dataset 、 Optimizer 、 Monitor 、 Executor 等が格納されます。
- Variable
ニューラルネットワーク I / O のためのテンソルとパラメータを格納する内部データ構造です。
- GlobalConfig
学習や推論を実行指示するための環境設定です。
- TrainingConfig
学習の設定です。
- Network
ネットワーク構造です。
- Parameter
学習結果を格納する特別な変数 ( 例 : アフィン層の重みやバイアス値 ) です。
- Dataset
学習のためのデータセットを指定します。
- Optimizer
学習のためのネットワーク、データセット、入出力変数を定義します。
- Monitor
学習状況を監視するネットワーク、データセット、入出力変数を定義します。
- Executor
学習のためのネットワーク、入出力変数を定義します。
学習の構造¶
TBD
推論の構造¶
TBD
全体構造¶
Parameter¶
パフォーマンスの観点から、パラメータは HDF 5 形式で保存されます。
ファイル形式と拡張子¶
- Protocol buffer がシリアライズされたバイナリファイル
.nntxt または .prototxt
- Protocol buffer text 形式ファイル
.protobuf
- HDF5
.h5
- NNP ( 上記形式での ZIP 形式ファイル )
.nnp