机器学习——回归算法

目录

回归问题的判定

线性回归

线性模型

线性回归

损失函数(误差大小)

 最小二乘法之正规方程(不做要求)

最小二乘法之梯度下降(理解过程)

sklearn线性回归方程、梯度下降API

正规方程

梯度下降

案例

回归性能评估

 过拟合与欠拟合

欠拟合原因及解决办法

过拟合原因及解决方法

L2正则化

岭回归(Ridge)——带有正则化的线性回归


回归问题的判定

目标值连续——迭代算法

线性回归

寻找一种能预测的趋势

线性关系:二维——直线当中

                  三维——特征、目标值,平面当中

线性模型

试图学得一个通过属性的线性组合来进行预测的函数:

 f(x)=w_1+w_2x_2+...+w_dx_d+b

w为权重,b称为偏置项,可以理解为:w_0\times 1

属性和权重一种组合来预测模型

线性回归

定义:线性回归通过一个或者多个自变量因变量之间进行模型的回归分析。其中特点为一个或多个称为回归系数的模型参数的线性组合

一元线性回归:涉及到的变量只有一个

多元线性回归:涉及到的变量两个或两个以上

通用公式:h(w)=w_0+w_1x_1+w_2x_2+...=w^Tx

其中 w,x为矩阵:

w=\begin{pmatrix} w_0\\w_1 \\ w_2 \end{pmatrix}x=\begin{pmatrix} 1\\ x_1 \\ x_2 \end{pmatrix}

数组 矩阵
0维 5
1维 [1,2,3,4]
2维 [[1,2,3,4]] 必须是2维
3维

[

[[1,2]]

[[3,4]]

]

数组的运算:加法、乘法

矩阵的运算:矩阵乘法

import numpy as np
a = [[1,2,3,4],[5,6,7,8],[2,3,7,9]]
b = [2,3,4,2]
c = np.multiply(a,b) # 每一行对应数相乘,权重相乘
print(c)
d = [[2],[2],[2],[2]]
e = np.dot(a,d) #(3,4)*(4,1)=(3,1)矩阵乘法
print(e)

预测结果与真实值是有一定是有误差的

损失函数(误差大小)

y_i为第i个训练样本的真实值

h_w(x_i)为第i个训练样本特征值组合预测函数

总损失定义:

### 关于机器学习中的回归分析 #### 回归分析的概念 回归分析是一种统计学上研究变量之间相互关系的方法,旨在通过构建数学模型来描述因变量(目标变量)与自变量(特征变量)之间的依赖关系。在机器学习领域内,线性回归是最基础也是最常用的回归方法之一[^1]。 对于给定的数据集 \((X, y)\),其中 \(X\) 表示输入样本矩阵而 \(y\) 是对应的标签向量,线性回归试图找到一条直线使得这条直线上下波动最小化从而最好地拟合这些点的位置分布情况;当存在多个维度时,则寻找超平面来进行最佳匹配。 #### 实现方法技术栈 为了实现上述提到的各种类型的回归算法,在Python编程环境中可以借助多种库完成: - **Pandas**: 提供高效灵活的数据结构以及数据分析工具,方便读取、清洗并预处理原始数据文件; - **Scikit-Learn (sklearn)**: 这是一个非常流行的开源软件包,它实现了众多经典的监督式非监督式的机器学习算法,并提供了简单易用的应用接口以便快速搭建实验环境或生产系统; 下面给出一段简单的代码片段展示如何利用scikit-learn进行线性回归建模过程: ```python from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression import pandas as pd # 加载数据集 data = pd.read_csv('your_dataset.csv') X = data.drop(columns=['target']) y = data['target'] # 划分训练集测试集 X_train, X_test, y_train, y_test = train_test_split(X, y) # 创建模型实例 model = LinearRegression() # 训练模型 model.fit(X_train, y_train) # 输出模型参数 print(f'Coefficients: {model.coef_}') print(f'Intercept: {model.intercept_}') # 预测新数据的结果 predictions = model.predict(X_test) ``` 此外还有其他一些重要的组件如`matplotlib` `seaborn` 可用于绘制图表辅助理解数据特性及验证模型效果等操作[^2]。 #### 应用场景举例 回归分析广泛应用于各个行业当中解决实际问题,以下是几个典型例子: - **房价预测**:基于房屋面积大小、地理位置等因素估计房产价值; - **销售额度估算**:根据历史销售记录推测未来某段时间内的收入水平; - **医疗健康监测**:依据患者生理指标变化趋势判断疾病发展趋势或者治疗方案的有效程度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

非零因子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值