机器学习策略 ML strategy

觉得有用的话,欢迎一起讨论相互学习~Follow Me

1.1 什么是ML策略

机器学习策略简介

情景模拟

  • 假设你正在训练一个分类器,你的系统已经达到了90%准确率,但是对于你的应用程序来说还不够好,此时你有很多的想法去继续改善你的系统
  • 收集更多训练数据
  • 训练集的多样性不够,收集更多的具有多样性的实验数据和更多样化的反例集.
  • 使用梯度下降法训练更长的时间
  • 尝试一个不同的优化算法,例如Adam优化算法.
  • 尝试更大的神经网络或者更小的神经网络
  • 尝试dropout
  • 尝试L2正则化
  • 改变神经网络的结构:
    • 修改激活函数
    • 改变隐藏单元的数目
  • 如果你使用了错误的方向,不仅会浪费大量的时间,而且不会有所改善.

课程目的

  • 希望在这门课中,教一些策略,分析机器学习中遇到的问题,指引朝着最有希望的方向前进.

1.2 Orthogonalization正交化

正交化

  • 正交性或正交性是一种系统设计属性,它确保修改指令或算法的组成部分不会对系统的其他组件产生或传播副作用。独立地验证算法变得更加容易,它减少了测试和开发的时间。

    当一个受监督的学习系统在设计时,这四个假设必须是正确的和正交的。
  1. 成本函数在训练集上有好的表现

    • 对于一些应用而言,这可能意味着要达到人类水平的表现
    • 如果它不合适,那么使用更大的神经网络或者切换到更好的优化算法可能会有所帮助。
  2. 成本函数在开发集上有好的表现
    • 如果不合适,规范化或使用更大的训练集可能会有所帮助。
  3. 成本函数在测试集上有好的表现
    • 如果不合适,使用更大的开发集可能会有所帮助。
  4. 在实际系统中表现良好
    • 如果性能不好,开发测试集分布设置不正确,或者成本函数测量的尺度不正确.

1.3 单一数字评估指标

Single number evaluation metric

单实数评估指标

  • 无论是在调整超参数,或者尝试不同的机器学习的算法,或者搭建机器学习系统时尝试不同手段,你会发现,如果你有一个单实数评估指标,你的进展会快很多,它可以快速的告诉你,新尝试的手段比之前的手段好还是坏.

机器学习系统的迭代过程

我们通常有一个想法,编程序,跑实验,看看效果如何.然后使用这些试验结果来改善你的想法.然后继续走这个循环,不断改进你的算法.

查准率,查全率,F1分数

  • 假设现在你需要识别猫的图片,并且你已经开发出了A和B两个分类器.评估你的分类器的方式是观察他的查准率(precesion)和查全率(recall)

  • Precision 查准率 在你的分类器标记为猫的例子中,有多少真的是猫.95% 的机会表示当你的分类器认为这是一只猫时,95%的机会分类正确.
  • Recall 查全率 在所有真的是猫的图片中,你的分类器正确识别出的图片的百分比,实际为猫的图片中,被正确划分出类的个数.
  • 事实证明,虽然使用查准率和查全率来评估一个分类器是十分合理的,但是查准率和查重率之间往往需要一个折衷.
  • 例如如果出现A分类器在查全率上表现得更好,但是B分类器在查准率上表现得更好.

  • F1分数 在机器学习的文献中,权衡查准率P和查全率R的方法是计算P和R的调和平均值(harmonic mean)即F1分数.\[F1=\frac{2}{\frac{1}{P}+\frac{1}{R}}\]

平均误差

对于同一模型,在不同的状态下也许会产生不同的误差,这时候我们可以使用平均误差这个单一数值评估指标评价机器学习模型.

Summary

很多机器学习团队都是这样,有一个开发集,用于测量查准率和查全率还会定义一个单一数值评估指标(单实数评估指标)能让你快速从众多分类器中挑选合适的分类器.加速机器学习算法的迭代过程.

[DeeplearningAI笔记]ML strategy_1_1正交化/单一数字评估指标的更多相关文章

  1. ubuntu之路——day10.2单一数字评估指标与满足和优化的评估指标

    单一数字评估指标: 我们在平时常用到的模型评估指标是精度(accuracy)和错误率(error rate),错误率是:分类错误的样本数站样本总数的比例,即E=n/m(如果在m个样本中有n个样本分类错 ...

  2. [DeeplearningAI笔记]ML strategy_1_2开发测试集评价指标

    机器学习策略 ML strategy 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.4 满足和优化指标 Stisficing and optimizing metrics 有时候把你要考 ...

  3. [DeeplearningAI笔记]ML strategy_2_1误差分析

    机器学习策略-误差分析 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.1 误差分析 训练出来的模型往往没有达到人类水平的效果,为了得到人类水平的结果,我们对原因进行分析,这个过程称为误差 ...

  4. [DeeplearningAI笔记]ML strategy_1_3可避免误差与改善模型方法

    机器学习策略 ML strategy 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.8 为什么是人的表现 今天,机器学习算法可以与人类水平的表现性能竞争,因为它们在很多应用程序中更有生产 ...

  5. [DeeplearningAI笔记]ML strategy_2_3迁移学习/多任务学习

    机器学习策略-多任务学习 Learninig from multiple tasks 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.7 迁移学习 Transfer Learninig 神 ...

  6. [DeeplearningAI笔记]ML strategy_2_4端到端学习

    机器学习策略-端到端学习 End-to-end deeplearning 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.9 什么是端到端学习-What is End-to-end dee ...

  7. [DeeplearningAI笔记]ML strategy_2_2训练和开发/测试数据集不匹配问题

    机器学习策略-不匹配的训练和开发/测试数据 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.4在不同分布上训练和测试数据 在深度学习时代,越来越多的团队使用和开发集/测试集不同分布的数据来 ...

  8. Spark ML机器学习库评估指标示例

    本文主要对 Spark ML库下模型评估指标的讲解,以下代码均以Jupyter Notebook进行讲解,Spark版本为2.4.5.模型评估指标位于包org.apache.spark.ml.eval ...

  9. [DeeplearningAI笔记]神经网络与深度学习2.11_2.16神经网络基础(向量化)

    觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.11向量化 向量化是消除代码中显示for循环语句的艺术,在训练大数据集时,深度学习算法才变得高效,所以代码运行的非常快十分重要.所以在深度学 ...

随机推荐

  1. JavaSE(八)之集合练习一

    前面把Collection家族给学习完毕了,接下来我们通过几个练习来巩固前面的知识. 一.产生10个1-20之间的随机数要求随机数不能重复 import java.util.HashSet; impo ...

  2. CTF---Web入门第一题 what a fuck!这是什么鬼东西?

    what a fuck!这是什么鬼东西?分值:10 来源: DUTCTF 难度:易 参与人数:7942人 Get Flag:3358人 答题人数:3475人 解题通过率:97% what a fuck ...

  3. AtCoder Grand Contest 017

    noi前橙名计划失败.全程搞C而gg…… A - Biscuits 题意:背包,求价值为奇/偶的方案数. #include<cstdio> #include<queue> #i ...

  4. 数位DP入门:(bzoj1833+3209)

    //我是来看文章创建时间的= = 膜拜了一下蔡大神.... 人生第一道自己写的数位DP...好吧以前是看题解然后也不知道为什么就过了的>_< 虽然说现在还是只会裸题= = 数位DP介绍: ...

  5. class 文件反编译器的 java 实现

    最近由于公司项目需要,了解了很多关于类加载方面的知识,给项目带来了一些热部署方面的突破. 由于最近手头工作不太忙,同时驱于对更底层知识的好奇与渴求,因此决定学习了一下 class 文件结构,并通过一周 ...

  6. Spring框架学习笔记(4)——配置bean more

    1.配置List属性 <!-- 配置List属性 --> <bean id="person4" class="com.broadtext.beans.c ...

  7. jquery dataTimePicker日历插件(精确到小时)

    效果图:      下载地址:https://github.com/WangChangyao/jquery-dataTimePicker.git <!DOCTYPE html> <h ...

  8. 开始使用 HBuilder 和 Mui - 1 - 分析 index.html ;

    转自:http://ask.dcloud.net.cn/article/240 好吧,在比较了 Codenameone 和 HBuilder 以后,俺反复考虑后,终于还是决定使用 HBuilder 这 ...

  9. 在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问--解决办法

    在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问的原因是阿里云平台为了安全设置了安全组策略,必须我们授权的端口,其他计算机才能通过http访问 解决办法:(这里以阿里轻量应用服务器为 ...

  10. UserView--第二种方式(避免第一种方式Set饱和),基于Spark算子的java代码实现

      UserView--第二种方式(避免第一种方式Set饱和),基于Spark算子的java代码实现   测试数据 java代码 package com.hzf.spark.study; import ...