- https://github.com/oreilly-japan/deep-learning-from-scratch-2/blob/84cb914a6469bffcc0ea5302f86df98c453a5767/common/time_layers.py#L7-L36
- https://github.com/oreilly-japan/deep-learning-from-scratch-3/blob/06419d7fb2e7ea19aa3719efc27795edbdc41a1f/dezero/layers.py#L221-L246
を見比べると「ゼロつく 2」での実装はややこしい。テンソルに対応する専用のクラスを作っていない分、計算グラフを各クラスで分担しないとならないし、back prop をテンソルクラスに任せられないので随時実装しないとならなくて backward
が難しい感じになっている。
「ゼロつく 3」での DeZero
フレームワークは正直 Chainer
や PyTorch
の理解に役立つと考えていたし、だから写経したけど、それ以上に各クラスが煩雑になるのを避ける、計算グラフをテンソルクラスに連鎖の中に隠蔽できるという枠組みを作る上でも良いものだったんだな。