numpy广播

本文介绍了如何使用NumPy进行矩阵运算,并详细解释了广播机制在矩阵加法、减法、乘法及除法中的应用。通过两个实例展示了广播的具体操作过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(m,n)   +,-,*,/  (m,1)

先将(m,1)复制n次,构成(m,n)矩阵,然后再进行+,-,*,/运算

(m,n)   +,-,*,/  (1,n)

先将 (1,n)复制m次,构成(m,n)矩阵,然后再进行+,-,*,/运算

(m,1)  +,-,*,/   real(一个实数)

先将实数复制m次,构成(m,1) 矩阵,然后再进行+,-,*,/运算

(1,n) +,-,*,/   real(一个实数)

先将实数复制n次,构成(1,n)矩阵,然后再进行+,-,*,/运算

 

demo1

import numpy as np

A=np.array([[56.0,0.0,4.4,68.0],
[1.2,104.0,52.0,8.0],
[1.8,135.0,99.0,0.9]])
print(A)

# 每列求和

cal=A.sum(axis=0)  # axis=0:垂直方向(求和)

                               # axis=1:水平方向(求和)
print(cal)

 

percentage=100*A/cal.reshape(1,4)      # 这里,reshape(1,4)其实可以不必使用;但使用可以确保矩阵(向量)的维数是我们想要的大小

           # A是一个3*4的矩阵,而cal是一个1*4的矩阵,这里,用到了广播
print(percentage)

demo2

# logistic regression中,前向传播

z(i)=wT*x(i)+b

Z=wT*X+b    # b也是一个广播

转载于:https://www.cnblogs.com/ceceliahappycoding/p/8253086.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值