我正在编码以进行一些深度学习工作。一开始,我的代码运行良好,准确性约为98.1%。但是当我从
更改一行代码时,它的使用率确实很低(大约32%)self.W[i-1] -= eta * self.layers[key].dW
到
self.W[i-1] = self.W[i-1] - eta * self.layers[key].dW
让其他代码完全一样。
我检查了一些文档,说a = a - 2
等效于a -= 2
。但是我仍然不知道准确性低。它们之间或其他之间有什么区别吗?
class SGD(object):
def __init__(self, sizes, layers, params):
self.size_len = len(sizes)
self.layers = layers
(self.W, self.b) = params
def update(self, eta, nabla=1.0):
for i in range(1, self.size_len):
key = "Affine" + str(i)
# self.W[i-1] = self.W[i-1] - eta * self.layers[key].dW
self.W[i-1] -= eta * self.layers[key].dW
self.b[i-1] -= eta * self.layers[key].db
请帮助我,非常感谢。