コンテンツにスキップ

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