机器学习 作业5 线性回归算法
1.本节重点知识点用自己的话总结出来,可以配上图片,以及说明该知识点的重要性
(1)机器学习分类,本次学习内容为监督学习中的回归算法。
(2)回归算法:回归是统计学中最有力的工具之一。
(3)监督学习
(4)线性回归应用:
(5)多元线性回归
(6)线性回归定义
(7)矩阵知识
(8)损失函数
(9)回归算法优化
(10)最小二乘法之梯度下降
(11)线性回归示例:
import random import matplotlib.pyplot as plt xs = [0.1*x for x in range(0,10)] ys = [12*i+4 for i in xs] print(xs) print(ys) w = random.random() b = random.random() a1=[] b1=[] for i in range(100): for x,y in zip(xs,ys): o = w*x + b e = (o-y) loss = e**2 dw = 2*e*x db = 2*e*1 w = w - 0.1*dw b = b - 0.1*db print('loss={0}, w={1}, b={2}'.format(loss,w,b)) a1.append(i) b1.append(loss) plt.plot(a1,b1) plt.pause(0.1) plt.show()
2.思考线性回归算法可以用来做什么?(大家尽量不要写重复)
对房价进行预测,判断信用评价,电影票房预估
3.自主编写线性回归算法 ,数据可以自己造,或者从网上获取。(加分题)
应用线性回归算法预测波士顿房价
#应用线性回归算法预测波士顿房价 from sklearn.datasets import load_boston from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt # 获取波士顿房价数据 data = load_boston() data_all = data['data'] x = data_all[:, 5:6] y = data['target'] # 训练模型 model_LR = LinearRegression().fit(x,y) # 模型预测 pre = model_LR.predict(x) # 绘制图形 plt.scatter(x,y) plt.plot(x,pre,c='r') plt.legend(['real','pre']) plt.show()