神經網路中由於傳入物件所以能夠通過修改物件的值從而修改權重
阿新 • • 發佈:2021-02-07
技術標籤:深度學習
import numpy as np
class obj:
def __init__(self,x):
self.x=x
def printselfx(self):
print(self.x['a'])
x=np.array([1,3,5])
dict = {'a': x}
temp=obj(dict)
temp.printselfx()
x+=1
dict= {'a': x}
temp.printselfx()
輸出結果:
如上所示,因為x是一個物件,所以x的值改變會影響到類當中的self.x
我一開始以為沒有改變,因為神經網路中在對self.params梯度下降後,並沒有出現對affine層的W直接修改,其實就是上面所示的情況了