回归即是输入特征,训练机器对目标值的拟合能力,在传统线性回归当中,目标值为数值型变量,有回归变种例如逻辑回归,目标值为分类变量
股市预测(Stock market forecast)
输入:过去10年股票的变动、新闻咨询、公司并购咨询等
输出:预测股市明天的平均值
自动驾驶(Self-driving Car)
输入:无人车上的各个sensor的数据,例如路况、测出的车距等
输出:方向盘的角度
商品推荐(Recommendation)
输入:商品A的特性,商品B的特性
输出:购买商品B的可能性
Pokemon精灵攻击力预测(Combat Power of a pokemon):
输入:进化前的CP值、物种(Bulbasaur)、血量(HP)、重量(Weight)、高度(Height)
输出:进化后的CP值
step1:模型假设,选择模型框架(线性模型)
step2:模型评估,如何判断众多模型的好坏(损失函数)
step3:模型优化,如何筛选最优的模型(梯度下降)
例如一元线性回归:模型假设:Y=wX+b
在多元线性回归场景,有多个特征X,类似在金融风控场景,特征可以包含客户的年龄,性别(woe化或二值化),信用情况等等,如上便有假设:Y=b+∑wiXi(w为权重)
在喂入真实的数据集后,拟合出了特征X和目标Y的对应关系,后续需要有具体评估模型的方式,即真实值与预测值的距离差,如绝对值差(不常用)或者mse.该类测量模型性能的函数统称为损失函数loss_function,当损失函数越小,代表预测值离真实值越接近,模型效果越好,ps:排除了过拟合情况
基础方法:梯度下降
首先在这里引入一个概念 学习率 :移动的步长
1:随机选取一个 w^0w
2:计算微分,也就是当前的斜率,根据斜率来判定移动的方向
大于0向左移动(增加w)
小于0向右移动(减少w)
步骤3:根据学习率移动
重复步骤2和步骤3,直到找到最低点(有可能是局部最低)
图解梯度下降寻找最优点
1.每一条线围成的圈就是等高线,代表损失函数的值,颜色约深的区域代表的损失函数越小
2.红色的箭头代表等高线的法线方向
当然梯度下降也有一定问题:
问题1:当前最优(Stuck at local minima)
问题2:等于0(Stuck at saddle point)
问题3:趋近于0(Very slow at the plateau)
例如xgb,lgb损失函数使用2阶导数便是对便于在梯度下降当中可以进行二阶求导,在得到二阶导数的信息后可以更好的把控下降的速度更快的找到最优点
在现有数据集当中拆分成训练集和测试集,在训练集拟合,在测试集测试,在金融风控当中会讲时间线上距当前最近数据提前截出作为最终验证集,在不同数据集中计算损失函数用做评价指标比较差异.
1.拟合良好:各份数据集上评价指标相近切达到预期
2.过拟合:训练集评价指标良好,测试集与训练集评价指标差异过大(这里的差异指测试比比训练集差)
3.欠拟合:反正就是都很垃圾,机器啥也没学出来