吴恩达deeplearning.ai:矩阵运算代码实战

神经网络向量化指的是将输入数据转化为向量形式,以便于神经网络的处理。向量化的作用包括以下几点:

提高计算效率:使用向量化的输入数据可以进行并行计算,加速神经网络的训练和推断过程。

减少存储空间:向量化可以将原始数据压缩为更小的向量形式,减少内存占用,提高存储效率。

简化数据处理:向量化将复杂的输入数据转化为向量形式,简化了数据的处理方式,使得神经网络可以更好地处理和识别模式。

支持多样化的输入类型:通过向量化,可以将不同类型的输入数据转化为统一的向量格式,使得神经网络可以接受多样化的输入,如图像、文本、音频等。

提高神经网络的表达能力:向量化的方式可以提取输入数据的特征信息,增加神经网络的表达能力,提高模型的性能和准确率。

总而言之,神经网络向量化的作用是提高计算效率、减少存储空间、简化数据处理、支持多样化的输入类型,以及提高神经网络的表达能力。
让我们进入神经网络的向量化实现吧
以下内容有任何不理解可以翻看我之前的博客哦

Numpy中的矩阵乘法运算

我们先定义一个矩阵A:

A = np.array([[1, -1, 0.1],
              [2, -2, 0.2]])              

那么矩阵A的转置AT就为:

AT = A.T

我们再定义一个矩阵W:

W = ([[3, 5, 7, 9],
      [4, 6, 8, 0]])

那么 Z = A T ⋅ W Z=A^T\cdot W Z=ATW代码为:

Z = np.matmul(AT, W)

matmul()是numpy中一个负责矩阵点积运算的函数。
该函数还有另一种写法:

Z = AT @ W

前向传播向量化

还是经典煮咖啡例子,200度17分钟:
在这里插入图片描述
先变量初始化一下

AT = np.array([[200, 17]])
W = np.array([[1, -3, 5],
           	  [-2, 4, 6]])
b = np.array([[-1, 1, 2]])           	 

再定义层:

def dense(AT, W, b, g):
  z = np.matmal(AT, W) + b
  a_out = g(z)
  return a_out#a_out==[[1, 0, 1]]

为了给读者你造成不必要的麻烦,博主的所有视频都没开仅粉丝可见,如果想要阅读我的其他博客,可以点个小小的关注哦。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江安的猪猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值