一、如何改进一个机器学习算法
假设你已经训练出一个机器学习算法,但是效果不太好,那么有以下几种改进方法:
1、获得更多的训练数据
2、选用更少的特征
3、增加特征量
4、增加高次项
5、增大或减小正则化参数lambda的值
很多人只是随机选择上述方法的一种,即浪费时间又没有效果。所以接下来会介绍模型的评估及机器学习的诊断法。
二、模型评估(Evaluating a Hypothesis)
1、评估假设:
一个训练误差最小的假设有时并不是一个好的假设,而且当特征过多时,我们很难画出假设函数来观察。
有一种标准方法,将训练数据分成两部分,第一部分是训练集,第二部分是测试集,一般是7:3左右。
2、具体步骤:
那么我们训练模型的流程可以有如下两个部分:
(1)使用训练集来训练模型参数θ,(最小化代价函数Jtrain(Θ))
(2)使用测试集来计算误差Jtest(Θ)
对于线性回归来说,误差:
对于逻辑回归来说,误差: