machine-learning - Matmul 输入和权重矩阵顺序?

标签 machine-learning matrix-multiplication

我看到许多机器学习教程通过构造两个矩阵、权重矩阵和输入(或激活)矩阵来解释全连接网络,并执行矩阵到矩阵乘法(matmul)以形成线性方程。

我看到的所有示例都将输入作为 matmul 的第一个参数,将权重张量作为第二个参数。这是为什么?为什么我不能执行权重乘以输入(假设权重矩阵已正确创建,列数等于输入矩阵行数)?

最佳答案

要获得 (nx1) 输出 对于 (nx1) 输入,您应该将输入与左侧的 (nxn) 矩阵或右侧的 (1x1) 矩阵相乘。

如果将输入与标量((1x1) 矩阵)相乘,则每个神经元从输入到输出都有一个连接。如果将其与矩阵相乘,对于每个输出单元,我们会得到输入神经元的加权和。换句话说,输入中的每个神经元都连接到输出中的每个神经元,并且完全连接

enter image description here

通过保留此逻辑,如何排列权重矩阵并不重要。

关于machine-learning - Matmul 输入和权重矩阵顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59548959/

相关文章:

machine-learning - 深度学习中CNN的窗口大小如何选择?

python-3.x - 绘制均匀连续分布的 CDF

python - xgboost CV和树数

python - numpy中的逐行乘法

c - C语言矩阵乘法

machine-learning - OneHotEncoder 中的 active_features_ 属性

nlp - 如何检测文本中是否发生了事件/ Action ?

c++ - |9|错误 : invalid use of non-static data member 'Matrix::row' |9|error: array bound is not an integer constant before ']' token|

python - 如何在 PyTorch 中乘以矩阵?

algorithm - 矩阵乘法的时间复杂度