深度学习篇---非线性回归任务
机器学习中,针对非线性回归问题可选用不同神经网络:1)全连接神经网络(MLP)适合基础非线性关系,如二手手机价格预测;2)循环神经网络(RNN/LSTM)处理时序数据,如气温预测;3)卷积神经网络(CNN)擅长分析网格数据,如卫星云图降雨预测;4)Transformer适用于复杂关联数据,如文本情感分析。选择依据是数据特征:无序列用MLP,时序用RNN,网格用CNN,复杂关联用Transforme
在机器学习中,“简单回归任务” 的核心目标是:根据输入的特征(比如房子面积、年限),预测一个连续的数值结果(比如房子价格、未来温度)。传统的 “简单回归” 通常指线性回归(用直线 / 平面拟合数据),但当数据存在 “非线性关系”(比如价格随面积增长不是匀速的,而是先慢后快)时,线性回归就不够用了。
此时可以用神经网络替代,它们的核心优势是能 “自动学习数据中的复杂规律”,无需人工设计非线性公式。下面用 “通俗易懂 + 场景化举例” 的方式,介绍 4 类最常用的替代神经网络,从简单到复杂逐步说明:
一、最基础的替代:全连接神经网络(MLP)——“万能拟合小工具”
全连接神经网络(也叫多层感知机,简称 MLP)是最入门的神经网络,本质是 “多层线性计算 + 非线性激活” 的叠加,能解决大部分 “特征和结果非线性相关” 的回归问题。
1. 为什么能替代线性回归?
线性回归像 “用一根直线套数据”,而 MLP 像 “用一根能自由弯曲的线套数据”:
- 线性回归:只能表达
y = a*x1 + b*x2 + c(a、b 是系数,x 是特征); - MLP:通过 “多层计算”,能表达
y = 激活函数(a1*(激活函数(a2*x1 + b2*x2) + b1)),相当于把 “直线” 掰弯,适应非线性数据。
2. 适合的回归场景(简单非线性)
比如:
- 预测 “手机使用年限(x1)+ 电池循环次数(x2)” 对应的 “二手手机价格(y)”(价格随年限增长,下降速度会越来越快,是非线性的);
- 预测 “学生每日学习时长(x1)+ 刷题量(x2)” 对应的 “考试分数(y)”(分数不会随学习时长无限增长,到一定程度会趋近上限)。
3. 结构有多简单?
哪怕只有 “1 层输入 + 1 层隐藏层 + 1 层输出”,就是一个能工作的 MLP:
- 输入层:放特征(比如 2 个特征,就有 2 个神经元);
- 隐藏层:“掰弯直线” 的核心(比如放 5-10 个神经元,数量越多,拟合能力越强);
- 输出层:只有 1 个神经元(因为回归任务只预测 1 个连续值)。
二、处理 “序列特征” 的替代:循环神经网络(RNN/LSTM/GRU)——“记得过去的预测器”
如果回归任务的输入是 “按时间 / 顺序排列的数据”(比如用过去 7 天的气温预测明天的气温),全连接就会 “丢失顺序信息”—— 它分不清 “今天 30℃、昨天 25℃” 和 “昨天 30℃、今天 25℃” 的区别。
此时需要 RNN 类网络,它们的核心能力是 “记住前面的信息”,像 “读句子一样按顺序处理数据”。
1. 3 种常用类型(从基础到优化)
| 类型 | 特点(通俗理解) | 适合场景 |
|---|---|---|
| 基础 RNN | “短期记忆”:只能记住最近几步的信息,远的会忘 | 简单短序列(比如用前 2 天数据预测明天气温) |
| LSTM(长短期记忆) | “长短记忆都能存”:解决了 RNN “忘得快” 的问题,能记住更早的信息 | 长序列(比如用前 30 天股票数据预测明天股价) |
| GRU(门控循环单元) | 比 LSTM 简单,计算更快,效果接近 LSTM | 数据量较大、需要节省时间的场景(比如预测城市 1 个月后的用电量) |
2. 举个直观例子
预测 “明天的 PM2.5 浓度”:
- 输入特征:过去 7 天的 “PM2.5 值、风速、湿度”(按时间顺序排列,共 7 组数据);
- LSTM 会 “按天依次处理”:先看第 1 天数据,再结合第 1 天的信息看第 2 天,直到第 7 天,最后综合 7 天的信息预测明天的 PM2.5。
三、处理 “网格特征” 的替代:卷积神经网络(CNN)——“擅长找局部规律的专家”
如果回归任务的输入是 “网格状数据”(比如图片、二维表格的空间特征),全连接会 “浪费信息”—— 它会把网格拆成单个点,忽略相邻点的关系(比如图片中 “像素 A 和像素 B 相邻,可能都是天空的蓝色”)。
CNN 的核心能力是 “捕捉局部关联”,像 “用放大镜看图片,先找小细节(比如边缘、纹理),再拼出大规律”。
1. 为什么适合回归?
比如用 “卫星云图(图片)预测未来 24 小时的降雨量”:
- 卫星云图是网格状的像素(每个像素代表一个区域的云量);
- CNN 会先 “扫描局部区域”:识别出 “哪里有厚云层(局部特征)、哪里有云团移动方向(局部关联)”;
- 再把这些局部特征整合,最终预测出每个区域的降雨量(连续数值,属于回归任务)。
2. 其他适合的场景
- 用 “产品外观图片” 预测 “产品的耐用度评分”(图片是网格,耐用度是连续值);
- 用 “城市交通路况图(网格状,每个格子代表一条路的拥堵程度)” 预测 “1 小时后的平均车速”。
四、“终极” 替代:Transformer(含 BERT/GPT 的思路)——“全局信息一把抓的高手”
如果回归任务的输入特征之间 “关联很复杂”(比如输入是 “一篇产品评价文本”,预测 “用户对产品的满意度分数”—— 分数是连续值,属于回归),前面的 RNN/CNN 会有局限:
- RNN 处理文本时,“前面的词会影响后面的词,但后面的词很难影响前面的词”(比如 “这个手机很好,但续航差”——“但” 后面的内容会推翻前面,RNN 处理到 “很好” 时,还不知道后面有 “但”);
- CNN 处理文本时,“只能抓局部短语的关联,抓不到长句子的全局逻辑”。
Transformer 的核心能力是 “全局注意力”—— 它能 “同时看所有输入信息,计算每个信息之间的关联强度”,比如读句子时,能立刻知道 “但” 后面的 “续航差” 和前面的 “很好” 是转折关系。
1. 适合的回归场景(复杂关联)
- 文本回归:用 “电影评论文本” 预测 “评分(1-10 分,连续值)”、用 “客户投诉文本” 预测 “客户的不满程度(0-100 分)”;
- 多模态回归:用 “商品的文字描述 + 图片 + 用户历史评价” 预测 “商品的月销量(连续值)”。
2. 为什么不一开始就用?
Transformer 的 “全局注意力” 需要大量计算(比如处理长文本时,要计算每个词和所有词的关联),如果数据简单(比如只用 “面积” 预测 “房价”),用 MLP 甚至线性回归就够了 ——“杀鸡不用牛刀”。
总结:怎么选?看输入数据的 “特点”
| 输入数据特点 | 推荐用的神经网络 | 简单例子 |
|---|---|---|
| 无顺序、无网格(比如 “面积 + 年限”) | 全连接神经网络(MLP) | 预测房价、预测考试分数 |
| 有时间 / 顺序(比如 “过去 7 天气温”) | RNN/LSTM/GRU | 预测明天气温、预测股票价格 |
| 有网格(比如图片、路况图) | 卷积神经网络(CNN) | 用云图预测降雨量、图片预测耐用度 |
| 关联复杂(比如长文本、多模态) | Transformer | 文本预测满意度、多信息预测销量 |
核心逻辑:神经网络的结构是为了 “适配数据的特点” —— 数据有什么规律,就用能捕捉这个规律的网络。
更多推荐
所有评论(0)