numpyテンソル操作コマンド¶
softneuroの入力として利用可能なnumpyテンソルの操作コマンドを解説します。
Tensor Specification¶
numpyテンソルの指定形式であるTensor Specificationについて解説します。
Tensor Specificationはカンマで連結されたキー・バリューペアです。例:'key1=val1,key2=val2,...'
指定可能キー
キー名 | 内容 |
---|---|
shape | テンソルのシェイプです。x で連結された整数値で指定できます。(例:1x224x224x3 ) |
dtype | テンソルのデータタイプです。デフォルトは float32 です。 |
val | テンソルの要素値です。定数またはある範囲の乱数値を指定できます。乱数値の範囲は.. で連結された2つの数値で指定できます。(例:0.0..1.0 ) |
使用例
1x128x128x16
のシェイプ、float32
のデータタイプ、要素が-1.0から1.0の乱数値のテンソルは以下のように指定します。
shape=1x128x128x16,val=-1.0..1.0
以下のようにヘルプも参照可能です。
$ softneuro help tensor_spec
usage: shape=SHAPE[,dtype=DTYPE][,val=VAL]
The tensor specification.
[REQUIRED]
SHAPE a shape of tensor. It is given as numbers concatenated by 'x' (e.g.
1x224x224x3).
[OPTIONS]
DTYPE a data type. The default is 'float32'.
VAL element values. It is given as a number for constant values (e.g.
0.5) or two numbers concatenated by '..' for random values between a
range (e.g. 0.0..1.0). The default is '-1..1'.
[EXAMPLE]
shape=1x128x128x16,val=-0.5..2
represetns a tensor whose shape is 1x128x128x16, data type is 'float32'
and elements have random value from -0.5 to 2.
mknpy¶
テンソルを作成しnumpyファイルとして保存します。
使い方
usage: softneuro mknpy [--help] SPEC ONPY
引数
引数名 | 内容 |
---|---|
SPEC | 作成するテンソルのTensor Specificationです。 |
ONPY | 出力されるnumpyファイルのファイル名です。 |
オプション
オプション | 効果 |
---|---|
-h, --help | 本コマンドのヘルプを表示します。 |
使用例
実行ディレクトリにtensor.npyが生成されます。
※コマンドライン上への出力はありません
$ softneuro mknpy "shape=128x128x16,val=-1.0..1.0" tensor.npy
attrnpy¶
テンソルの属性情報を表示します。
属性情報は以下の通りです。
- NAME : ファイル名
- DTYPE : データタイプ
- SHAPE : シェイプ
- RANGE : 要素値の範囲
- AVERAGE : 平均値
- STDEV : 標準偏差
使い方
usage: softneuro attrnpy [--help] NPY...
引数
引数名 | 内容 |
---|---|
NPY | 属性情報を表示するnumpyファイル名です。 |
オプション
オプション | 効果 |
---|---|
-h, --help | 本コマンドのヘルプを表示します。 |
使用例
$ softneuro attrnpy tensor.npy
NAME DTYPE SHAPE RANGE AVERAGE STDEV
tensor.npy float32 128x128x16 -0.999991:0.999995 0.00036936 0.576519
viewnpy¶
numpyテンソルの値を表示します。
使い方
usage: softneuro viewnpy [--from INDICES] [--cols COLS] [--help] NPY
引数
引数名 | 内容 |
---|---|
NPY | 出力numpyファイル名。 |
オプション
オプション | 効果 |
---|---|
--from INDICES | INDICES で指定された位置の値を表示します。 |
--cols COLS | 表示の際の列数をCOLS で指定できます。 |
-h, --help | 本コマンドのヘルプを表示します。 |
使用例
$ softneuro viewnpy --from "127,127,10" tensor.npy
(127,127,10) -0.459925, -0.40616,
(127,127,12) 0.89318, -0.275693, -0.337535, 0.115791]
cmpnpy¶
2つのnumpyテンソルの値を比較し、S/N比(db)を表示します。
目安としては100db以上で一致、60db以上でほぼ一致、20db以上で概ね一致、それ未満は不一致となります。
両方の入力にディレクトリを指定することで、両ディレクトリに含まれる同名のnumpy同士を比較できます。
この機能はrun
コマンドで --dump
オプションを指定するなどした場合に各レイヤーの中間出力がディレクトリに保存されるので、
その結果同士を比較する場合などに利用できます。
使い方
usage: softneuro cmpnpy [--axis A] [--help] TRUENPY TGTNPY
引数
引数名 | 内容 |
---|---|
TRUENPY | 真値のnumpyファイルまたはnumpyファイル群を含むディレクトリ。 |
TGTNPY | 比較対象となるnumpyファイルまたはnumpyファイル群を含むディレクトリ。 |
オプション
オプション | 効果 |
---|---|
--axis A | 比較を行うnumpyテンソルの軸をA で指定できます。 |
-h, --help | 本コマンドのヘルプを表示。 |
使用例
$ softneuro cmpnpy tensor.npy tensor2.npy
SNR(db) PSNR(db) MIN:MAX
> 200 > 200 -1:1