从数学角度而言,图中涉及到如下数学表达式,前两个表达式为线性运算。wkj的大小表明了输入xj对输出的贡献程度;bk的作用则是调整激活函数的输入。一个神经网络的训练算法就是调整权值到最佳,以使得整个网络的预测效果最好,也就是提高网络的泛化能力。
从矩阵的角度而言,输入和权值均可用行或列向量的形式表示,进而,上述第一个表达式就可以直接用矩阵运算表示,如下图所示。
从Python角度而言,Numpy package增强了Python对矩阵运算的支持。上述矩阵乘法可方便地调用Python中的np.dot完成,如下图所示。
观察np.array中的表示形式,不难看出,这是一个列表。因此,可以先定义一个列表,再通过np.asarray将其转换为矩阵,如下图所示。
文 | Lauren 图 | Lauren
Copyright @ Lauren的FPGA
转载事宜请私信 | 获得授权后方可转载