#Week8 Advice for applying ML & ML System Design

一、Evaluating a Learning Algorithm

训练后测试时如果发现模型表现很差,可以有很多种方法去更改:

  1. 用更多的训练样本;
  2. 减少/增加特征数目;
  3. 尝试多项式特征;
  4. 增大/减小正则化参数 λ \lambda λ
    那么该怎么去选择采用哪种方式呢?
    一般将70%的数据作为训练集,30%的数据作为测试集。
    先用训练集最小化 J t r a i n ( Θ ) J_{train}(\Theta) Jtrain(Θ),得到一组参数值 Θ \Theta Θ
    然后计算测试集误差 J t e s t ( Θ ) J_{test}(\Theta) Jtest(Θ)
    对于线性回归
    在这里插入图片描述
    对于逻辑回归
    在这里插入图片描述
    测试集的平均误差(分类错误的比率):
    在这里插入图片描述
    假设要选择用几次多项式 d d d去作为假设函数,那么做法就是不断尝试 d d d,选择一个在测试集上损失最小的 d d d,以此作为模型泛化能力的衡量。但是这样是有问题的,因为 d d d相当于是被测试集训练的,再用测试集去测试,很不公平。所以一般将数据集分为3部分:60%训练集、20%交叉验证集、20%测试集:
    #Week8 Advice for applying ML & ML System Design_第1张图片

二、Bias vs. Variance

看图:
#Week8 Advice for applying ML & ML System Design_第2张图片
#Week8 Advice for applying ML & ML System Design_第3张图片
正则化和Bias/Variance的关系:
#Week8 Advice for applying ML & ML System Design_第4张图片
训练集大小与Bias/Variance的关系:
#Week8 Advice for applying ML & ML System Design_第5张图片
#Week8 Advice for applying ML & ML System Design_第6张图片

三、Error Analysis

Andrew推荐的流程:
#Week8 Advice for applying ML & ML System Design_第7张图片

四、Handling Skewed Data

如果数据集中正负类的数据规模差距过大,只用误差衡量模型是不可靠的,此时需要查准率和召回率两个指标。
#Week8 Advice for applying ML & ML System Design_第8张图片
如何权衡这两个指标,一般使用 F 1 F1 F1得分:
F 1 = 2 P R P + R F_1=2\frac{PR}{P+R} F1=2P+RPR

你可能感兴趣的:(Machine,Learning)