5-02 extras-3, 4層目のEXCEL化
●extras-3層目のEXCELを開く
extras層は全部で8つあります。これは3層目をEXCEL化したものです。
シートは1つ(exW3_Bias)だけで、これは重み係数のシートです(図5‐11)。入力は512チャネルありますが、カーネルが1x1=1なので512行、出力は128チャネルあるので128列あります。
係数は-8, -4, -2, -1, +1, +2, +4, +8の8種類に制限しています。全て2の累乗なのでビットシフトで乗算を達成できます(乗算器の節約になる)。またこの層もバイアスは省略するのでありません。 |
図5-11 extras-3層目の係数。カーネルが1×1であることに注意
●64枚のシートに入力512チャネル
VBAのModule1を実行すると、ex2out_000.csv〜ex2out_511.csv(extras-2層目の出力、これを解凍して同じディレクトリに置く)が新しいシートに転写され、それら(inCh00〜inCh63)がextra-3層目の入力になります(図5-12)。
この層の入力は512チャネルですが、生成されるシートは64枚、すなわち1枚のシートに8チャネルぶんの画像が張り付けられています(*1)。extras-2層目の出力は10×10なので10列、各シート8チャネルぶんあるので10x8=80行になります。
(*1)シート数があまりにも多いとEXCELが重くなり、パソコンのメモリを圧迫するのでシート数を節約する。 |
図5‐12 64×8=全部で512チャネル
●im2colxxシートも64枚に512チャネルぶん
Module02を実行するとim2col00〜63が生成されます(図5‐13)。カーネルは1×1、各シート8チャネルぶんあるので1×8=8列、行数は10×10=100行になります。 |
図5‐13 各シート100行×8列になる
●extras‐3層目の出力の答え合わせ
Module03〜07を順番に実行します。図5‐14はoutCh000シートとex3out_000.csv(Pythonで計算したextras-3層目のチャネル0)を比較しています(これを解凍して開く)。出力は128チャネルあり、それぞれピタリ一致することを確認します。(*3)
(*3)EXCELではoutCh000〜003まで計算。outCh004以降を計算させるにはここを参考。 |
図5‐14 EXCEL化してもPythonの結果と変わらない
次のページへ
目次へ戻る |