AI学习预备知识-数据操作(3)广播机制

AI学习预备知识-数据操作(3)广播机制

提示:本系列持续更新中

文章目录

  • AI学习预备知识-数据操作(3)广播机制
  • 前言
  • 广播机制
  • 总结


前言

随着开始人工智能的学习越来越多,那么再学习过程中,我们应该有一定的基础知识储备,本系列为基础知识储备介绍,在以往系列中我们提到了相同形状的张量按元素操作,那不同形状的张量操作就涉及到本文主要讲解AI学习储备知识–广播机制。


广播机制

提示:默认使用python,数据操作使用mxnet
以往系列中讲解了如何在相同形状的两个张量上执行按元素操作。 在某些情况下,即使形状不同,我们仍然可以通过调用 广播机制(broadcasting mechanism)来执行按元素操作。 这种机制的工作方式如下:

  1. 通过适当复制元素来扩展一个或两个数组,以便在转换之后,两个张量具有相同的形状
  2. 对生成的数组执行按元素操作

大部分情况,我们将按照长度为1的轴进行广播

# 广播机制
# 生成X轴张量数据
broadX = np.arange(2).reshape(1, 2)
# 生成Y轴张量数据
broadY = np.arange(3).reshape(3, 1)
# 打印张量元素 broadX
print(broadX)
# 张量元素为[[0 1]]
# 打印张量元素 broadY
print(broadY)
# 张量元素为[[0]
#          [1]
#          [2]]
# 张量元素相加 broadX + broadY
broadresult = broadX + broadY
# 打印张量元素
print(broadresult)
# 张量元素为[[0 1]
#          [1 2]
#          [2 3]]

由于broadX和broadY分别是1X2和3X1矩阵,形状不匹配张量运算,其逻辑为先将矩阵进行广播扩大,扩大成相同矩阵形状后再进行相加,如:矩阵broadX将复制行, 矩阵broadY将复制列,然后再按元素相加

总结

本章为张量操作-广播机制,针对学习过程中需要使用到的基本数据操作进行讲解,后续将会逐步完善本系列,旨在为AI学习打好基础

你可能感兴趣的:(人工智能,学习)