April 2020
Intermediate to advanced
552 pages
6h 13m
Japanese
DeZeroの基盤はすでに完成しました。今では、計算グラフを作り、自動で微分を求めることができます。これから行う作業は、DeZeroをより使いやすくすることです。ここでは、その最初のステップとして、Variableクラスを一段と使いやすくします。
これから先、私たちは多くの変数を扱います。それらの大量にある変数に対して、区別できるものがあると便利です。そこで変数に「名前」を設定できるようにします。それには、次のようにVariableクラスにnameというインスタンス変数を追加します。
steps/step19.py
classVariable:def__init__(self,data,name=None):ifdataisnotNone:ifnotisinstance(data,np.ndarray):raiseTypeError('{} is not supported'.format(type(data)))self.data=dataself.name=nameself.grad=Noneself.creator=Noneself.generation=0...
上記のように、初期化の引数にname=Noneを追加し、それをインスタンス変数のnameに設定します。これで、たとえば、x = Variable(np.array(1.0), 'input_x')と書くことで、input_xという名前を付けられます。特に何も名前を与えなければ、名前はNoneとなり、無名の変数になります。
|
変数に名前を設定できることで、たとえば、計算グラフの可視化を行うときに、変数の名前をグラフに描画できます。計算グラフの可視化は、 ... |
Read now
Unlock full access