python - numpy 数组是如何做到这一点的,它是否正确?
问题描述
我正在查看用 numpy 用 python 编写的神经网络的一些代码,我注意到当通过激活函数传递神经元的结果时:
def sigmoid(x):
return 1 / ( 1 + np.exp(-x))
而不是一个一个地传递权重,那个人用 np.array 作为参数调用了这个函数!
像这样:
import numpy as np
def sigmoid(x):
return 1.0/(1.0 + np.exp(-x))
x = np.zeros((2,2))
print "Before\n",x
x = sigmoid(x)
print "After\n",x
令我惊讶的是,这奏效了。我总是为每个权重单独调用一个循环激活函数,因为该函数将单个数字作为输入。
输出:
Before
[[ 0. 0.]
[ 0. 0.]]
After
[[ 0.5 0.5]
[ 0.5 0.5]]
我还尝试了其他一些操作,它们似乎工作正常。
这个对吗'?在某些情况下这不起作用还是 numpy 数组旨在做到这一点?我真正想知道的是,我可以使用它还是做我以前做的更好?
解决方案
推荐阅读
- angular - 如何在 Angular Material 的单列中添加多个值?
- google-sheets - 在谷歌表格中添加新标签时,如何在主表格上自动填充信息?
- git - Git 删除提交而不删除合并提交
- python-3.x - Python Pytest 模拟三个函数
- javascript - 浏览器如何暴露当前正在播放的音频?
- java - Spring Data JPA 不会在运行模式下持久化对象,但它会在调试模式下持久化
- javascript - 获取脚本中 var 的值
- reactjs - 我已经使用 React 扫描了二维码。它显示了结果。我的代码没问题。但我想将结果保存在变量中。我如何使用反应来做到这一点?
- reactjs - 如何在 nextjs 中使用 keycloak?
- php - 使用 preg_replace 用 PHP 重新格式化文本中的金额