Shi*_*ngh -1 python artificial-intelligence
我目前正在阅读 Harrison Kinsley 的 nnfs 书,在描述反向传播中 ReLU 函数的导数时,他使用了这段代码
\ndrelu \xe2\x80\x8b= \xe2\x80\x8bdvalues.copy()\ndrelu[z \xe2\x80\x8b<= \xe2\x80\x8b0\xe2\x80\x8b] \xe2\x80\x8b= \xe2\x80\x8b0\nRun Code Online (Sandbox Code Playgroud)\n他实质上是用零替换 drelu 的所有值,其中 z 中的相应元素小于或等于 0。第二行的含义/作用是什么,发生了什么特定的事情(只是询问以便我能理解什么)正在进行中并将其用于未来的项目)。
\n顺便说一句,Python
\n我得到了一个与 z 数组等效的 np 数组,但每个 <=0 的值都是 0 (预期输出)
\nz <= 0z创建一个布尔数组,其大小与这些位置中的 True和其他位置中的 False完全相同z <= 0。
drelu[a_boolean_array] = 0 drelu仅在布尔数组为 True 的位置设置为 0。如果两个数组的大小不同,则会发生各种广播,但这不是问题。
结合这两者,您可以看到在小于或等于 0 的位置drelu[z <= 0] = 0设置为 0;dreluz
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |