标题使用sklearn构建完整的机器学习项目流程
一般来说,一个完整的机器学习项目分为以下步骤:
明确项目任务:回归/分类
1.收集数据集并选择合适的特征。
2.选择度量模型性能的指标。
3.选择具体的模型并进行训练以优化模型。
(1)线性回归模型 最小二乘
最小化损失函数
我们需要衡量真实值与线性回归模型的预测值之间的差距,在这里我们和使用二范数的平方和L(w)来描述这种差距
推广:非线性模型
多项式回归、广义可加模型(GAM)
广义可加模型GAM实际上是线性模型推广至非线性模型的一个框架,在这个框架中,每一个变量都用一个非线性函数来代替,但是模型本身保持整体可加性。GAM模型不仅仅可以用在线性回归的推广,还可以将线性分类模型进行推广
GAM模型的优点与不足:
- 优点:简单容易操作,能够很自然地推广线性回归模型至非线性模型,使得模型的预测精度有所上升;由于模型本身是可加的,因此GAM还是能像线性回归模型一样把其他因素控制不变的情况下单独对某个变量进行推断,极大地保留了线性回归的易于推断的性质。
- 缺点:GAM模型会经常忽略一些有意义的交互作用,比如某两个特征共同影响因变量,不过GAM还是能像线性回归一样加入交互项进行建模;但是GAM模型本质上还是一个可加模型,如果我们能摆脱可加性模型形式,可能还会提升模型预测精度。
(2)回归树
(3)支持向量机回归(SVR)
KKT条件、对偶条件