broadcasting意义
broadcasting用于优化计算,由于维度不同不能进行四则运算,采用broadcasting的方法可以智能化添加维度来保持维度的一致性(broadcasting不占用内存)便于计算
broadcasting的用法
- broadcasting默认从最小维度(最右侧)对齐,依次向最大维度(最左侧)进行添加维度。如对于一个[4,28,28,3]的数据,如想要加[1],则将[1]先扩充为[3],再扩充为[28,3],再扩充为[28,28,3],再扩充为[4,28,28,3]
- 不是所有的数据间计算broadcasting都可用,只有维度值相同或为1才可以进行复制扩充(基于broadcasting)。如数据[28,28,3]和数据[4,1]就不可以用broadcasting来优化,因为[4,1]再扩充为[4,3]后不能扩充为[28,3]