python - 张量运算的导数
问题描述
我正在读一本关于深度学习的书,我对作者提到的一个想法有点困惑。
我不明白为什么我们从权重中减去 -step * gradient (f) (W0) 而不仅仅是 -step,因为 -step * gradient (f) (W0) 表示损失,而 -step 是参数(即x 值,即重量的微小变化)
解决方案
梯度告诉您要移动的方向,步长将有助于控制您移动的幅度,以便您的序列收敛。
我们不能只是减去step
。回想一下,这step
只是一个标量数。W0
是张量。我们不能用标量数减去张量。梯度是一个与 和 相同大小的张量,W0
这将使减法定义良好。
阅读梯度下降可能有助于您的理解。
推荐阅读
- sql - 在 Oracle 中的两个 Unix 日期之间
- c# - 检查“...\HiQPdf.dep”资源文件可以在 HiQPdf.dll 程序集附近找到,并且用户具有该文件的读取和执行权限
- mongodb - 在 mongoDB 中提交数据
- php - php 7.4 上的 openssl_cipher_iv_length 错误
- php - 我们发现“Spreadsheet.xlsx”中的某些内容存在问题。你想让我们尽可能多地恢复吗?
- python - How to use multiprocessing in Python on for loop to generate nested dictionary?
- c# - 即使元素确实存在,LINQ to XML Elements() 和 Descendants() 也没有产生任何结果
- c++ - 从其他类访问 Qt ui 的最佳方式
- python - 如何保存包括所有权重的 TensorFlow 2 对象检测模型?
- ag-grid - 对列标题上的多个列进行排序,单击 ag-grid