【机器学习基础】机器学习中的三个技巧原则

奥卡姆剃刀原则(Occam‘s Razor)

有一句话是这样说的,"An explanation of the data should be mad as simple as possible,but no simpler"。

在机器学习中其意义就是,对数据最简单的解释也就是最好的解释(The simplest model that fits the data is also the most plausible)。

比如上面的图片,右边是不是比左边解释的更好呢?显然不是这样的。

如无必要,勿增实体

奥卡姆剃刀定律,即简单有效原则,说的是,切勿浪费较多东西去做,用较少的东西,同样可以做好的事情。

所以,相比复杂的假设,我们更倾向于选择简单的、参数少的假设;同时,我们还希望选择更加简单的模型,使得有效的假设的数量不是很多。

另一种解释是,假设有一个简单的假设H,如果它可以很好的区分一组数据,那么说明这组数据确实是存在某种规律性。

抽样偏差(Sampling Bias)

If the data is sampled in a biased way,learning will produce a similarily biased outcome.

这句话告诉我们,如果抽样的数据是有偏差的,那么学习的效果也是有偏差的,这种情形称作是抽样偏差。

在实际情况中,我们需要训练数据和测试数据来自同一分布。

为了避免这样的问题,我们可以做的是要了解测试环境,让训练环境或者说是训练数据和测试环境尽可能的接近。

数据窥探(Data Snooping)

你在使用数据任何过程都是间接的窥探了数据,所以你在下决策的时候,你要知道,这些数据可能已经被你头脑中的模型复杂度所污染。

有效避免这种情况的方法有:

  • 做决定之前不要看数据
  • 要时刻存有怀疑

转载请注明作者Jason Ding及其出处

Github主页(http://jasonding1354.github.io/)

CSDN博客(http://blog.csdn.net/jasonding1354)

简书主页(http://www.jianshu.com/users/2bd9b48f6ea8/latest_articles)

时间: 2024-12-20 03:22:48

【机器学习基础】机器学习中的三个技巧原则的相关文章

python机器学习基础 机器学习实战

python机器学习基础,以Python语言介绍.主要内容包括:机器学习的基本概念及其应用:实践中最常用的机器学习算法以及这些算法的优缺点:在机器学习中待处理数据的呈现方式的重要性,以及应重点关注数据的哪些方面:模型评估和调参的高级方法,交叉验证和网格搜索:管道的概念:如何应用到文本数据上,文本特有的处理方法. 机器学习实战,切入日常工作任务,摒弃学术化语言,利用高效的可复用Python代码来阐释如何处理统计数据,进行数据分析及可视化.通过实例从中学会机器学习的核心算法,并能将其运用于一些策略性

机器学习基础与实践(三)----数据降维之PCA

写在前面:本来这篇应该是上周四更新,但是上周四写了一篇深度学习的反向传播法的过程,就推迟更新了.本来想参考PRML来写,但是发现里面涉及到比较多的数学知识,写出来可能不好理解,我决定还是用最通俗的方法解释PCA,并举一个实例一步步计算,然后再进行数学推导,最后再介绍一些变种以及相应的程序.(数学推导及变种下次再写好了) 正文: 在数据处理中,经常会遇到特征维度比样本数量多得多的情况,如果拿到实际工程中去跑,效果不一定好.一是因为冗余的特征会带来一些噪音,影响计算的结果:二是因为无关的特征会加大计

机器学习基础——机器学习概述

一. 什么是机器学习 机器学习是从人工智能中产生的一个重要学科分支,是实现智能化的关键. 机器学习是一门多领域的交叉学科,设计概率论,统计学,逼近论,凸分析,算法复杂度理论等多门学科,专门研究计算机怎样模拟或实现人类的学习行为,以获取新知识或技能,重新组织已有的知识结构使之不断改善自身的性能. ——百度百科 二. 发展历程 三. 机器学习方法 1. 有监督学习 有监督学习分为分类和回归. 分类形象地说就像是做考试的选择题,在训练集中满足这个条件的一堆,满足那个条件的一堆.....,最后根据你给出

javascript函数中的三个技巧【一】

在学习javascript中,函数是非常重要的,现在我来谈谈对函数的理解以及在工作和用法中的一些技巧 技巧一. [作用域安全的构造函数] 构造函数其实就是一个使用new操作调用的函数 function Person(name,age,job){ this.name=name; this.age=age; this.job=job; } var person=new Person('match',28,'Software Engineer'); console.log(person.name);/

javascript函数中的三个技巧【三】

技巧三: [函数绑定] 在javascript与DOM交互中经常需要使用函数绑定,定义一个函数然后将其绑定到特定DOM元素或集合的某个事件触发程序上,绑定函数经常和回调函数及事件处理程序一起使用,以便把函数作为变量传递的同时保留代码执行环境 <button id="btn">按钮</button> <script> var handler={ message:"Event handled.", handlerFun:functio

javascript函数中的三个技巧【二】

技巧二: [惰性载入函数] 因为浏览器之间的行为的差异,我们经常会在函数中包含了大量的if语句,以检查浏览器特性,解决不同浏览器的兼容问题,比如,我们最常见的为dom节点添加时间的函数 function addEvent(type, element, fun) { if (element.addEventListener) { element.addEventListener(type, fun, false); } else if(element.attachEvent){ element.a

【机器学习实战】第1章 机器学习基础

第1章 机器学习基础 机器学习 概述 机器学习就是把无序的数据转换成有用的信息. 获取海量的数据 从海量数据中获取有用的信息 我们会利用计算机来彰显数据背后的真实含义,这才是机器学习的意义. 机器学习 场景 例如:识别动物猫 模式识别(官方标准):人们通过大量的经验,得到结论,从而判断它就是猫. 机器学习(数据学习):人们通过阅读进行学习,观察它会叫.小眼睛.两只耳朵.四条腿.一条尾巴,得到结论,从而判断它就是猫. 深度学习(深入数据):人们通过深入了解它,发现它会'喵喵'的叫.与同类的猫科动物

机器学习实战之第一章 机器学习基础

第1章 机器学习基础 机器学习 概述 机器学习就是把无序的数据转换成有用的信息. 获取海量的数据 从海量数据中获取有用的信息 我们会利用计算机来彰显数据背后的真实含义,这才是机器学习的意义. 机器学习 场景 例如:识别动物猫 模式识别(官方标准):人们通过大量的经验,得到结论,从而判断它就是猫. 机器学习(数据学习):人们通过阅读进行学习,观察它会叫.小眼睛.两只耳朵.四条腿.一条尾巴,得到结论,从而判断它就是猫. 深度学习(深入数据):人们通过深入了解它,发现它会'喵喵'的叫.与同类的猫科动物

第一章:机器学习基础

第一部分:分类 本书前两部分主要探讨监督学习(supervisedieaming).在监督学习的过程中,我们只需要给定输入样本集,机器就可以从中推演出指定目标变量的可能结果.监督学习相对比较简单,机器只需从输入数据中预测合适的模型,并从中计算出目标变量的结果.      监督学习一般使用两种类型的目标变量:标称型和数值型.标称型目标变量的结果只在有限目标集中取值,如真与假.动物分类集合{爬行类.鱼类.哺乳类.两栖类.植物.真菌};数值型目标变量则可以从无限的数值集合中取值,如0.100.42.0