人工智能 解析解法解决多元线性回归问题

人工智能 解析解法解决多元线性回归问题

1.导入所需模块

Import numpy as np

2.准备训练集X,Y(利用np.random创建虚拟数据集)

#创建随机数种子,保证每次生成随机数的方法一致,方便测试模型

np.random seed(1)

#创建训练集X矩阵,X.shape=(n,m)

X=3*np.random randn(5,100) #randn(n,m):随机生成服从标准正态分布的一系列的随机数,n行m列二维矩阵

#创建截距项b做准备,b=w0*X0

X0=np.ones((1,100))

#将X0与X拼接到一起

X_b=np.vstack([X0,X])

#创建真实w用于创建真实的Y

w_real=np.array([3,3,4,5,1,2]).reshape(6,1)

#创建训练集中的Y矩阵,即Y的真实集Y=Y_hat+error

Y=w_real.T.dot(X_b)+np.random.randn(1,100)

3.解析解法求参数w

#解析解法求出模型w

w_model=np.linalg.inv(X_b.dot(X_b.T)).dot(X_b).dot(Y.t) #np.linalg.inv:求逆矩阵

print(w_modle)

4.给定一组新X,预测Y

X_new=np.array([1,0.5,0.3,0.6,0.7,0.2,0.4,0.9,0.5,1.5]).reshape(5,2)

print(X_new)

X_new_b=np.vstack([np.ones((1,2)),X_new])

print(X_new_b)

Y_hat=w_model.T.dot(X_new_b)

print(Y_hat)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ZSup{A}

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

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

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

打赏作者

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

抵扣说明:

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

余额充值