更多机器学习知识请查收于: https://blog.csdn.net/weixin_45316122/article/details/109854595
Trick:纯demo,心在哪里,结果就在那里
# -*- coding: utf-8 -*- # Author : szy # Create Date : 2019/10/16 import numpy as np import matplotlib.pyplot as plt # 回归,有监督学习,X,y X = np.random.rand(100, 1) print(X) # y模拟出来真实数据,也就是y_hat 和error y = 5 + 4 * X + np.random.randn(100, 1) # c_表示连接,为了求W0截距,加上一个全为1的XO X_b = np.c_[np.ones((100, 1)), X] # 实现公式来解θ θ = (x^x)^-1*x^T*y 这里的.T就是 transpose 转置的作用, # dot 就是向量点乘, np.linalg.inv是矩阵求逆 θ = np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y) print(θ) # 创建一个模型做预测 X_new = np.array([ [0], [2] ]) X_new_b = np.c_[np.ones((2, 1)), X_new] print(X_new_b) y_predict = X_new_b.dot(θ) print(y_predict) plt.plot(X_new, y_predict, 'r-') plt.plot(X, y, "b.") plt.axis([0, 2, 0, 15]) plt.show()