2-02 1層目、6層目の係数とバイアスの整数化

●セーブした学習モデルをロードする

 前章で学習モデル(重み係数とバイアス)をCSV形式でセーブしました。図2‐05ではまずw1.csv(1層目の重み係数)を読み込んでいます。

 重み係数の行列を順番に読んでいき、float(tmpval) * 256の後、int(tmpval)で整数化します。これで1層目の重み係数の整数化は終了です。

図2-05 元々小数だった1層目の重みを整数に

●バイアスは256×256倍する

 b1.csvには1層目のバイアスの値があります。図2‐06のように読み込んで、今度は256×256倍して整数化します。バイアスは256倍だけでは足りないので注意しましょう(ここ参照)。

図2‐06 1層目のバイアス。256×256倍して整数化

●6層目の整数化

 図2‐07は6層目の重み係数とバイアスの部分です。1層目と同様に整数化しますが、この層は全結合層なので重み行列の形状が違います。

図2‐07 6層目の重みとバイアス(全結合層)

●セーブした係数を開いてみる

 整数化した係数はCSVファイルにセーブされます。図2‐08はw1_int.csv(1層目の重み係数)です。-256〜+255の範囲に収まっているので符号付9ビットになります。

図2‐08 256倍されて整数になった

次のページへ

目次へ戻る