文档章节

教你如何快速理解机器学习

ABBYY
 ABBYY
发布于 2017/08/24 14:56
字数 2204
阅读 10
收藏 0

近年来,机器学习和大数据领域的突破进展使人工智能运维急速回温,训练计算机模拟甚至实现人类的学习行为则是目前人工智能领域最受关注的研究课题之一。

  很多人都难以想象,看似冷冰冰的机器如何能在短时间内学得一身本领的?

大数据、分析、物联网、云技术……最近的几年里,没有这些术语你就无法参与到关于科技的讨论和对话中。它们已经成了科技中主要的参与者,影响着商务的方方面面。

  变化似乎正在以极快的速度发生着,并且没有减速的迹象。 如今,科技中唯一不变的就是变化本身了。不断的变化需要不断的创新,因此就需要引入更多的新技术。进入科技话题的新技术之一是机器学习。

  Gartner指出机器学习是2016年十大技术趋势之一,毫无疑问这是一个热点话题。但是,无论是专业从业者还是业余爱好者都必须弄清楚一个问题:什么是机器学习?

  作为机器学习领域的先驱,Arthur Samuel在 IBM Journal of Research and Development期刊上发表了一篇名为《Some Studies in Machine Learning Using the Game of Checkers》的论文中,将机器学习非正式定义为:

  “在不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域。”

  而后,Tom Mitchell在他的《Machine Learning(中文版:计算机科学丛书:机器学习 )》一书的序言开场白中又给出了一个更为广泛引用的定义:

  “机器学习这门学科所关注的问题是:计算机程序如何随着经验积累自动提高性能。”

  他在引言中多次重复提到一个简短的形式体系:“对于某类任务T和性能度量P,如果一个计算机程序在T上以P衡量的性能随着经验E而自我完善,那么我们称这个计算机程序在从经验E学习。”

  是不是看得一头雾水?不要让术语的定义把你吓跑,这是一个非常有用的形式体系。

  我们把这一形式体系作为一个模版,把经验E、任务T和性能度量P列在一张表的顶部,并且列出带有更少歧义的复杂问题。它可以作为一个设计工具来帮助我们清楚的思考收集什么样的数据(E),需要做出什么样的决策(T),以及如何评价结果(P)。

  举个例子吧,想象一下有一个邮箱过滤程序接受到一封邮件,该程序如何判断这封邮件是不是垃圾邮件呢?首先这封邮件先观察你之前标记过是不是垃圾邮件的邮件,基于这个学习到的经验,该过滤程序为你过滤掉垃圾邮件了。

  在这个任务中:

  判断邮件是不是垃圾邮件,这个是任务T;

  观察到你之前标记过是不是垃圾邮件的邮件,这个是经验E;

  正确分类垃圾邮件与非垃圾邮件的数量,这个是性能P。

  如果还是不懂,那么,看来是时候祭出这个古老经典的买芒果例子了:

  假设有一天你去购买芒果,老板摆了满满的芒果,你会挑选一些芒果后让老板称重,然后根据重量付款购买。

教你如何快速理解机器学习

  显然,你希望挑选相对更成熟更甜一些的芒果(因为你是根据重量付款而不是根据质量),所以你应该怎么挑选芒果呢?你想起来你妈妈曾教过你,亮黄色的芒果比暗黄色的芒果更甜一些,所以你有了一个简单的规则:只挑选亮黄色的芒果。

  是不是So easy ?并不是。。。生活总会更加复杂。

  你回家吃了这些芒果之后,也许会觉得有的芒果味道并不好......很显然,你妈妈教给你的方法很片面,挑选芒果的因素有很多而不只是根据颜色。

  在经过大量思考(并且试吃了很多不同类型的芒果)之后,你又得出一个结论:相对更大的亮黄色芒果肯定是甜的,同时,相对较小的亮黄色芒果只有一半是甜的。你会很开心自己得出的结论,然后下次去买芒果的时候就根据这个结论去买芒果。

  但是下次又去买芒果的时候,你喜欢的那家店不卖了......

  所以你只能买别家的芒果,不过别家的芒果和之前你常去的那家的芒果不是一个产地的。然后你发现你之前得出的结论不适用了。你不知道能不能迁移过去(transfer learning),于是你从头再开始尝试吧,发现这里小的,浅黄色的是最甜的!

  这时候呢假设你有朋友来家里了,你摆了一些芒果给他们吃,但是你朋友说他并不是很在意芒果甜不甜,他更加喜欢多汁的芒果(这个朋友是不是很烦?)。

  又一次,你根据你的经验,又尝了所有类型的芒果,然后发现: 软一点的芒果比较多汁。

  然后后来你又因为工作或其他原因要搬家了,在新的地方你发现这里的芒果和家乡的芒果又不一样,这里的芒果绿色的实际上会比黄色的更甜一点......

  然后你家里来了个妹妹,结果妹妹竟然不喜欢芒果,喜欢苹果。所以你只得去买苹果,你之前所有实践得出的芒果的知识都没用了。你需要根据之前挑芒果的经验,用相同的办法重新研究一遍哪些苹果的口感最好。

  现在呢想象一下,你在写一个程序帮助你挑选芒果(或者苹果),你会写到类似如下的规则:

  if ( color is bright yellow and size is big and sold is vendor1 ): mango is sweet ;

  if ( soft ): mango is juicy ;

  etc.

  这就是你挑芒果时用到的规则了。把它发给你的弟弟,想必他也能帮你买到对你口味的芒果。

  但问题在于,每回你在试验之后得出了观察结果,你都得把规则做一番修正。你还得明察秋毫地了解清楚都有那些因素在影响芒果的品质。如果问题复杂起来的话,你在上面耗费的心血甚至都有可能为你拿个 “芒果科学” 的 PhD 下来(如果有的话)......

  写个机器学习算法吧

  机器学习算法是普通算法的进化版,它们让你的程序变得 “更聪明”,能从你提供的数据里自动学到东西。

  你在市场上随机选择了某个品种的芒果(training data),把每个芒果的物理特征都写进了一个表格——颜色、大小、形状、产地、所属果摊等(features),甜度、多汁程度、成熟度(output variables)也做了记录。你把这些数据都放进了一个机器学习算法(classification/regression),然后这个算法就会自动从芒果的物理特征和品质之间得出一个相关性模型。

  等到下一回你到市场的时候,你把在售的芒果的特征信息都收集起来,再扔进你的机器学习算法,它就会利用之前计算出来的模型来预测哪些芒果是甜的、熟的、以及/或多汁的了。该算法可能会使用和你曾经手写的差不多的规则,也有可能使用的规则会更有相关性,不管怎样,在很大程度上你都不用操太多心了。

  现在,算法在手,你就可以挺直身板去买芒果去了。更重要的是,你的算法还能继续演进(reinforcement learning),读取更多的训练数据,准确率也更高,每预测错误后再进行自我修正。

  更妙的是,你还能用同一个算法来训练不同的模型,预测预测苹果、橙子、香蕉、葡萄、樱桃、西瓜什么的......

      了解更多关于IT运营管理方面的内容或者工具,欢迎大家前往Service Hot进行了解。

© 著作权归作者所有

共有 人打赏支持
ABBYY
粉丝 6
博文 347
码字总数 188111
作品 0
南京
私信 提问
机器学习笔记(一)welcome

机器学习目前供大于求,人才缺口大。主要讲解机器学习问题的主要类型及算法,主要的机器学习术语,理解不同的机器学习算法,每个算法是在什么时候合适的。机器学习定义,,,,,(太古板),...

Tom杰
2017/05/31
0
0
入门 | TensorFlow的动态图工具Eager怎么用?这是一篇极简教程

  选自Github   作者:Madalina Buzau   机器之心编译   参与:王淑婷、泽南      去年 11 月,Google Brain 团队发布了 Eager Execution,一个由运行定义的新接口,为 TensorFl...

机器之心
2018/06/14
0
0
深度学习最佳图书推荐(2019版)

你是否希望深入学习深度学习?如果你有这方面的意愿,请不要辜负我的整理工作,这是2019年最佳机器学习和深度学习书籍清单: ·Deep Learning by Ian Goodfellow, Yoshua Bengio, Aaron Cou...

【方向】
昨天
0
0
教你20分钟用机器学习建语言检测模型!

  【IT168 资讯】这个内容是一个分步指南,指导如何在20分钟内使用机器学习(最终达到97%的准确率)建立语言检测模型。      语言检测对机器学习来说是一个很好的用例,更具体地说,就是...

it168网站
2018/04/28
0
0
福利丨吴恩达机器学习新书免费领!

继今年 2 月 Deep Learning Specialization 最后一课上线之后,吴恩达又捡起了之前荒废已久的项目—— Machine Learning Yearning。 这本书此前已经出到了第 14 章,不过因为 Deep Learning ...

r1unw1w
2018/04/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Go Timer实现原理剖析

简介 快速使用 操作介绍

恋恋美食
20分钟前
2
0
记录一个奇怪的问题

环境:jdk1.8虚拟机参数:-verbose:gc -XX:+PrintGCDetails -Xmx20m -Xms20m -Xmn10m -XX:SurvivorRatio=8  -XX:+HeapDumpOnOutOfMemoryError 可以看出,eden占8M却放不下6M数据,发生了......

暗中观察
49分钟前
2
0
【git搭建】创建多个git账号

实习开发中我们可能一个机子上配置多个git账号,如github.com,oschina.com 或者工作账号,私人账号,这时候就2个账号用一个key,肯定会冲突,有一个会提示没权限(账号和密码对应不上) ssh ...

echojson
51分钟前
2
0
rabbitmq安装教程

RabbitMQ有Windows与Linux版本的,这里先写Windows版本的安装。 以前安装软件总是在百度上找某某安装教程,结果能按照教程安装好的软件真的不多。想起先前以为大牛说的一句话,去官网按照官网...

em_aaron
今天
7
0
Android 贝塞尔曲线实践——波浪式运动

一、波浪效果如下 贝塞尔曲线自定义波浪效果的案例很多,同样方法也很简单,大多数和本案例一样使用二次贝塞尔曲线实现,同样还有一种是PathMeasure的方式,这里我们后续补充,先来看贝塞尔曲...

IamOkay
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部