# 回归

## 回归问题是什么？

回归问题是机器学习三大基本模型中很重要的一环，其功能是建模和分析变量之间的关系。

回归问题多用来预测一个具体的数值，如预测房价、未来的天气情况等等。例如我们根据一个地区的若干年的PM2.5数值变化来估计某一天该地区的PM2.5值大小，预测值与当天实际数值大小越接近，回归分析算法的可信度越高。

面对一个回归问题，我们可简要描述其求解流程：

1. 选定**训练模型**，即我们为程序选定一个求解框架，如线性回归模型(Linear Regression)等。
2. 导入**训练集 train\_set**，即给模型提供大量可供学习参考的正确数据。
3. 选择合适的**学习算法**，通过训练集中大量输入输出结果让程序不断优化输入数据与输出数据间的关联性，从而提升模型的预测准确度。
4. 在训练结束后即可让模型**预测结果**，我们为程序提供一组新的输入数据，模型根据训练集的学习成果来预测这组输入对应的输出值。

![](/files/yPlZiMH6Mq7PHNWYeN7Z)

## 线性回归（Linear Regression）

常规字母代表标量，粗体字母代表向量，大写粗体字母代表矩阵，[参考1](https://zhuanlan.zhihu.com/p/44591359)，[参考2](https://zhuanlan.zhihu.com/p/127972563)

![](/files/9KU8KdUDZKWh7ABpiQVb)

## 逻辑回归（logistics regression）

逻辑回归虽然名字里面有回归，但是主要用来解决分类问题。

### 如何用连续的数值去预测离散的标签值呢？

线性回归的输出是一个数值，而不是一个标签，显然不能直接解决二分类问题。那我如何改进我们的回归模型来预测标签呢？

一个最直观的办法就是设定一个阈值，比如0，如果我们预测的数值 y > 0 ，那么属于标签A，反之属于标签B，采用这种方法的模型又叫做**感知机**（Perceptron）。

另一种方法，我们不去直接预测标签，而是去预测标签为A概率，我们知道概率是一个\[0,1]区间的连续数值，那我们的输出的数值就是标签为A的概率。一般的如果标签为A的概率大于0.5，我们就认为它是A类，否则就是B类。这就是**逻辑回归模型** (Logistics Regression)。

### 损失函数（Loss Function）

损失函数就是用来衡量模型的输出与真实输出的差别。

### 最大似然估计MLE(Maximum Likelihood Estimation)

![](/files/WQwY9Uzxur1xHaBaFjRg)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.1024cx.top/ai/machine_learning/regression.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
