以下内容是在学习过程中的一些笔记,难免会有错误和纰漏的地方。如果造成任何困扰,很抱歉。
回归,指研究一组随机变量 (Y1 ,Y2 ,…,Yi) 和另一组 (X1,X2,…,Xk) 变量之间关系的统计分析方法,回归分析是一种数学模型,当因变量和自变量为线性关系时,它是一种特殊的线性模型。
线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jObYK71m-1668351864196)(https://csdn-pic-1301850093.cos.ap-guangzhou.myqcloud.com/csdn-pic/机器学习入门-线性回归模型公式-3.png)]
b为误差服从均值为0的正态分布,如果只有一个自变量的情况下就叫一元回归
,如果有多个自变量的情况下就叫多元回归
;
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B3zlQut0-1668351864197)(https://csdn-pic-1301850093.cos.ap-guangzhou.myqcloud.com/csdn-pic/多元线性回归的简单公式-1.png)]
回归的目的是预测数组型的目标值,其应用范围有股票预测
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c7INm1n0-1668351864197)(https://csdn-pic-1301850093.cos.ap-guangzhou.myqcloud.com/csdn-pic/机器学习-股票预测示例样图-1.png)]
天气、PM2.5、温湿度预测等
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YYJ2OuZy-1668351864197)(https://csdn-pic-1301850093.cos.ap-guangzhou.myqcloud.com/csdn-pic/机器学习-天气预测示例样图-1.png)]
不引用深度学习框架,通过简单的数学公式完成一元回归案例
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
np.random.seed(0)
area = 2.5 * np.random.randn(100) + 25
price = 25 * area + 5 + np.random.randint(20, 50, size=len(area))
data = np.array([area, price])
data = pd.DataFrame(data=data.T, columns=['area', 'price'])
# 绘图
# plt.scatter(data['area'], data['price'])
# plt.show()
W = sum(price * (area - np.mean(area))) / sum((area - np.mean(area)) ** 2)
b = np.mean(price) - W * np.mean(area)
# print("计算回归系数", W, b)
y_pred = W * area + b
# 绘图
plt.plot(area, y_pred, color='red', label="forecast")
plt.scatter(data['area'], data['price'], label="train")
plt.xlabel("areaX")
plt.ylabel("priceY")
plt.legend()
plt.show()
绘图输出
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ou2wqvTL-1668351864198)(https://csdn-pic-1301850093.cos.ap-guangzhou.myqcloud.com/csdn-pic/连续值预测-一元线性简单效果图-1.png)]
对于线性模型的定义公式为:f(x) = w0 + w1·x1 + w2·x2 + … + wn·xn
当通过矩阵表示时:f(x) = XW,W是根据要求得到的非输入式参数,X是输入的数据矩阵
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Zb47VWUN-1668351864198)(https://csdn-pic-1301850093.c