当前位置:   article > 正文

DL之simpleNet:利用自定义的simpleNet(设好权重)对新样本进行预测、评估、输出梯度值_python simplenet()

python simplenet()

DL之simpleNet:利用自定义的simpleNet(设好权重)对新样本进行预测、评估、输出梯度值

导读
理解神经网络内部的数学机制

 

 

目录

输出结果

核心代码


 

 

 

输出结果

输出权重参数: [[-0.94465146 -1.22617291  0.89064915]
 [-0.36625531  1.57482914  0.82170746]]
输出预测: [-0.89642065  0.68164248  1.27392621]
最大值的索引: 2
loss: 0.5111458955952319
求出梯度值: 
 [[ 0.04107652  0.19903878 -0.2401153 ]
 [ 0.06161477  0.29855818 -0.36017295]]

 

核心代码

  1. class simpleNet:
  2. def __init__(self):
  3. self.W = np.random.randn(2,3) #用高斯分布进行初始化
  4. def predict(self, x):
  5. return np.dot(x, self.W)
  6. def loss(self, x, t):
  7. z = self.predict(x)
  8. y = softmax(z)
  9. loss = cross_entropy_error(y, t)
  10. return loss
  11. net = simpleNet()
  12. x = np.array([0.6, 0.9])
  13. p = net.predict(x)
  14. t= np.array([0, 0, 1])
  15. print('loss:',net.loss(x, t))
  16. f = lambda w: net.loss(x, t)
  17. dW = numerical_gradient(f, net.W)
  18. print('求出梯度值:','\n',dW)

相关文章
DL之simpleNet:利用自定义的simpleNet(设好权重)对新样本进行预测、评估、输出梯度值​​​​​​​

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/537963
推荐阅读
相关标签
  

闽ICP备14008679号