【机器学习300问】70、向量化技术来计算神经网络时维度如何确保正确?

一、向量化技术在进行神经网络计算时的优势

向量化是一种优化技术,通过使用数组操作代替for循环,可以大大提高代码的性能和效率。在深度学习中尤其明显,可以提高计算效率、简化代码、优化内存使用。

二、如何确保计算时维度是正确的?

(1)先回顾一下神经网络的计算

用简单的逻辑回归来举例,用圆圈表示神经网络的计算单元,逻辑回归的计算有两个步骤:

  1. 首先你按步骤计算出
  2. 然后通过激活函数g计算出a

一个神经网络只是这样子重复做了好多次计算。

以一个两层的神经网络为例:

它的第一层计算公式如下:

(2)权重矩阵的维度

对于权重矩阵的维度而言:

  • 行维度是神经网络第层节点的个数
  • 列维度是前一层节点的个数

举例说明:对于第一层权重矩阵来说,它的前一层是输出层,所以输出层节点的个数是特征的数量。如下图

(3)输入矩阵的维度

如果输入的是一个样本,那么还不能叫做输入矩阵,还只是输入列向量

如果输入的是训练集(个样本),此时就能称为输入矩阵。

对于输入矩阵也写作而言:

  • 行维度是特征的数量;
  • 列维度是样本的数量;

(4)各层输出矩阵的维度

如果只有一个样本,那么各层的输出也只是一个列向量

如果有个样本参与训练,那么此时就能成为输出矩阵

  • 行的维度是第层节点的个数
  • 列的维度是训练样本的个数

(5)偏置列向量的维度

偏置是一个列向量,它在参与计算的时候会通过python的广播机制,变成一个矩阵。

对于第层偏置列向量而言,它的维度是

相关推荐
Dreamshop_AI4 分钟前
电商视觉时代:如何用Dreamshop重构“人-货-场”?
大数据·人工智能·经验分享·ai作画·aigc
渡我白衣5 分钟前
计算机组成原理(4):计算机的层次结构与工作原理
运维·c语言·网络·c++·人工智能·笔记·硬件架构
路边草随风9 分钟前
llama_index简单使用
人工智能·python·llama
zqy02279 分钟前
质量保障追求敏捷与快速交付
人工智能
瀚岳-诸葛弩10 分钟前
对比tensorflow,从0开始学pytorch(一)
人工智能·pytorch·tensorflow
宝贝儿好11 分钟前
【强化学习】第二章:老虎机问题、ε-greedy算法、指数移动平均
人工智能·python·算法
AI视觉网奇11 分钟前
实时 数字人 DH_live 半身
人工智能·计算机视觉
美狐美颜SDK开放平台11 分钟前
跨平台直播美颜SDK开发:iOS/Android/WebGL实现要点
android·人工智能·ios·美颜sdk·第三方美颜sdk·视频美颜sdk·美狐美颜sdk
2401_8414956414 分钟前
【自然语言处理】自然语言理解的分层处理机制与程序语言编译器的对比研究
人工智能·python·深度学习·自然语言处理·自然语言理解·分层处理机制·程序语言编译器
泰迪智能科技15 分钟前
图书推荐|堪称教材天花板,深度学习教材-PyTorch与深度学习实战
人工智能·pytorch·深度学习