本文是吴恩达《机器学习》视频笔记第60篇,对应第6周第2个视频。
“Advice for applying machine learning:——Evaluating a hypothesis”
01
—
笔记
一个问题可能有很多算法可以解决,一个算法也可以用来解决很多问题。具体到你碰到的某个任务上时,你如何选择合适的算法呢?换个思路,你如何知道某个算法(包括这个算法得到的模型)是否适用于你碰到的这个问题呢?
过拟合问题
前面我们也大致接触过过拟合、欠拟合这俩词,咋回事呢?如下图。这样一组训练样本,需要有一条曲线来拟合它们的走势,怎么弄?
如果训练误差足够小,那么肯定是一条完美地穿过每个点的曲线最好了。如下图。
但是,这样有个麻烦事。就是这条曲线对于当前这几个训练样本是很完美的、误差很小的,但是一旦碰到实际场合就麻烦了。就像武术表扬,架子挺漂亮但实战的时候打不赢散打那种简单实用的技击技巧。这就是所谓的过拟合了。
怎样判断是否过拟合了呢?
上面那种简单的二维平面的例子,可以直接画画假设函数h(x)的曲线就能直观的看出是否过拟合。但是如果研究对象的自变量(特征)过多,怎么办呢?一个比较简单的办法,将训练集进行拆分,拆分成训练集和测试集。
一个例子,房价和面积的关系。训练集和测试集的样本数的比例一般是7:3. 当然,对于一些样本,我们需要按比例随机抽取训练集和测试集。
以线性回归为例
针对回归问题的测试集。
第一步:通过训练集得出线性回归模型的参数;
第二步:计算上一步的模型对测试集的预测误差。
逻辑回归的测试
即是对于分类问题,测试集的使用。
步骤和回归问题的一样,只是计算测试集上的预测误差的方程式不同。
其本质就是通过一个计算值反映训练集上得到的模型对测试集的点分类正确率。
这一点,回归模型和分类模型的测试是一样的。
02
—
视频
http://mpvideo.qpic.cn/0bf2yub32aadxyapwk5ofzpvhrodxxcqhpia.f10004.mp4?dis_k=d0dd1503378d4d0cb1775b7e44ab50b6&dis_t=1614741390&spec_id=MzAxMDYwMTc4Nw==1614741390&vid=wxv_1603885413801197571&format_id=10004