Coursea-吴恩达-machine learning学习笔记(十一)【week 6之Machine Learning System Design】

建立机器学习系统举例(垃圾邮件分类):
从邮件的训练集中,为每个邮件建立一个向量,每个元素代表一个单词,一般从训练集中找到最常用的 10000 10000 50000 50000 个单词组成向量,如果在邮件中找到该单词,向量对应位置用 1 1 表示,否则用0表示,构建完所有的向量,使用监督学习的逻辑回归模型训练。

常用的提高分类精度的方法:

  1. 收集大量的数据;
  2. 设计复杂的特征值(例如使用邮件名);
  3. 设计算法改变输入形式(例如识别邮件中的错误拼写)。

但很难说哪个方法一定有效。

构建机器学习系统的建议方法

  1. 从一个可以快速实现的简单算法开始,实现后在交叉验证集上测试;
  2. 画出学习曲线,看是高偏差还是高方差来决定是增加样本数还是增加特征值;
  3. 误差分析,手动检查被算法分错的交叉验证集中的样本,查看出现了哪些系统性错误。

误差分析可能无法帮你决定是否可以提高性能,唯一的方法是去试试,然后看是否有效果。

在交叉验证集上做误差分析,而不是测试集。

用一个具体数值来评价算法错误率很有必要,作为算法度量值。

偏斜类:正样本和负样本数量相差悬殊。
对于偏斜类,用分类精确度评价并不准确。

查准率/召回率
这里写图片描述
查准率:对于预测 y=1 y = 1 的,有多大比例真的为1.

True PositivePredicted Positive T r u e   P o s i t i v e P r e d i c t e d   P o s i t i v e
其中 Predicted Positive=True Positive+False Positive P r e d i c t e d   P o s i t i v e = T r u e   P o s i t i v e + F a l s e   P o s i t i v e

召回率:对于实际 y=1 y = 1 的,有多大比例预测为1

True PositiveActual Positive T r u e   P o s i t i v e A c t u a l   P o s i t i v e
其中 Actual Positive=True Positive+False Negative A c t u a l   P o s i t i v e = T r u e   P o s i t i v e + F a l s e   N e g a t i v e

一般,我们将实际发生次数较少的类定义为 y=1 y = 1

实际设计机器学习系统时,应平衡查准率和召回率:
以癌症预测为例:
逻辑回归模型: 0hθ(x)1 0 ⩽ h θ ( x ) ⩽ 1
如果 hθ(x)0.5 h θ ( x ) ⩾ 0.5 ,则预测为1;
如果 hθ(x)<0.5 h θ ( x ) < 0.5 ,则预测为0。
y=1 y = 1 时,预测有癌症。

若将阈值从 0.5 0.5 调高至 0.7 0.7 ,在交叉验证集上测试,查准率提升,但召回率下降;
若将阈值从 0.5 0.5 调低至 0.3 0.3 ,在交叉验证集上测试,召回率提升,但查准率下降。

如果 hθ(x)threshold h θ ( x ) ⩾ t h r e s h o l d ,则预测为1,设 Precision(P) P r e c i s i o n ( P ) 为查准率, Recall(R) R e c a l l ( R ) 为召回率,则:
F1 score F 1   s c o r e 2PRP+R 2 P R P + R 该值越大越好。
完美的算法: P=1R=1F1 score=1 P = 1 R = 1 F 1   s c o r e = 1

具备以下条件时,增加训练样本数有助于提高算法精度:

  1. 特征值 x x 包含足够的信息来准确预测y
  2. 假设函数包含很多参数。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值