文章目录
课程简介
本节课主要是使用【Pokemon精灵攻击力预测】的例子来讲述回归算法的应用

回归定义和应用例子
回归定义
Regression 就是找到一个函数 f u n c t i o n function function ,通过输入特征 x x x,输出一个数值 S c a l a r Scalar Scalar。
应用举例
- 股市预测(Stock market forecast)
- 输入:过去10年股票的变动、新闻咨询、公司并购咨询等
- 输出:预测股市明天的平均值
- 自动驾驶(Self-driving Car)
- 输入:无人车上的各个sensor的数据,例如路况、测出的车距等
- 输出:方向盘的角度
- 商品推荐(Recommendation)
- 输入:商品A的特性,商品B的特性
- 输出:购买商品B的可能性
- Pokemon精灵攻击力预测(Combat Power of a pokemon):
- 输入:进化前的CP值、物种(Bulbasaur)、血量(HP)、重量(Weight)、高度(Height)
- 输出:进化后的CP值
模型建立的3个基本步骤
- step1:模型假设,选择模型框架(线性模型)
- step2:模型评估,如何判断众多模型的好坏(损失函数)
- step3:模型优化,如何筛选最优的模型(梯度下降)
Pokemon精灵攻击力预测建模详细步骤
Step 1:模型假设 - 线性模型
一元线性模型(单个特征)
以一个特征 x c p x_{cp} xcp 为例,线性模型假设 y = b + w ⋅ x c p y = b + w·x_{cp} y=b+w⋅xcp ,所以 w w w 和 b b b 可以猜测很多模型:
f 1 : y = 10.0 + 9.0 ⋅ x c p f 2 : y = 9.8 + 9.2 ⋅ x c p f 3 : y = − 0.8 − 1.2 ⋅ x c p ⋅ ⋅ ⋅ f_1: y = 10.0 + 9.0·x_{cp} \\ f_2: y = 9.8 + 9.2·x_{cp} \\ f_3: y = - 0.8 - 1.2·x_{cp} \\ ··· f1:y=10.0+9.0⋅xcpf2:y=9.8+9.2⋅xcpf3:y=−0.8−1.2⋅xcp⋅⋅⋅
虽然可以做出很多假设,但在这个例子中,显然 f 3 : y = − 0.8 − 1.2 ⋅ x c p f_3: y = - 0.8 - 1.2·x_{cp} f3:y=−0.8−1.2⋅xcp 的假设是不合理的
,不能进化后CP值是个负值吧~~
多元线性模型(多个特征)
在实际应用中,输入特征肯定不止 x c p x_{cp} xcp 这一个。例如,进化前的CP值、物种(Bulbasaur)、血量(HP)、重量(Weight)、高度(Height)等,特征会有很多。

所以我们假设 线性模型 Linear model: y = b