什么是机器学习?(上)
什么是机器学习?在搜索框内输入“机器学习”,检索出了这样的解释:“机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度等多门学科。机器学习专门研究计算机怎么模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能”。
机器真的可以像人一样学习吗?1959年,美国的Samuel设计了一款下棋程序,这个程序具有学习能力,可以在对弈中不断改善自己的棋艺。四年后,这个程序战胜了设计者本人。又过了三年,这个程序战胜了美国的保持了8年不败纪录的棋手。这个程序第一次向世人展示了机器强大的学习能力,也开启了机器学习的新纪元。
机器究竟是怎么学习的呢?
其实,机器学习是一种概念,你不需要写任何与问题有关的特定代码,一种叫作“泛型算法”(Genetic Algorithm)的工具就可以告诉你一些关于数据的结论。你只需要输入数据,就能建立数据的逻辑。(注:遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。)
其中一种算法叫作“分类”算法,顾名思义,它的功能就是给数据分组。分类算法可以用来区分垃圾邮件和非垃圾邮件,也能区分手写数字。只要给同样的算法输入不同的训练数据,就赋予了它不同的分类逻辑。
机器学习就是大量泛型算法的集合。
机器学习算法可以分为两类,一种是有监督机器学习(Supervised Machine Learning),一种是无监督机器学习(Unsupervised Machine Learning)。
你可以通过它们的名字了解到,它们最大的区别在于是否具有监督,那么“监督”究竟是什么呢。
让我们通过一个例子介绍一下它们各自代表什么。
如果你是一名房地产经纪人,你雇佣了一批新员工。但是,虽然你可以凭经验一眼估算出房子的价格,这批新员工面对房子却毫无头绪。于是,你不得不给新员工进行一次培训。
比如,写一个小程序,让它可以根据房子的大小、地段以及同类房子的成交价格等因素来评估价格。具体怎么做呢?首先,你需要收集过去三个月内售出的房子信息,包括地段、面积、卧室数量,最重要的是成交价。
当你获得了这些数据之后,你就有了训练数据,这些训练数据是编写估价小程序的基础,你希望根据这些历史数据预测其他房子的成交价格。
这种利用已知数据推测未知样本的方法,就是有监督机器学习。它的核心思想是你已经知道了结果(房子成交价格),通过总结结果与特征(房子各项指标)之间的规律,找出其中的关联,从而实现可以预测未知样本(新入市房子)的成交价格。
你已经了解了这种机器学习技术的逻辑,那么具体如何操作呢?
最常用的方法是,你把已经成交的房子的各项数据输入机器学习的算法,算法会尝试找出能够计算出该结果的运算方法。就像小学时做过的数学题,已知计算结果,但是运算符号都被抹掉了,你需要不断尝试填出适当的符号。
有监督机器学习所做的,就是帮你找到这些数值之间的关系,一旦确定了运算符号,只要输入新的数据,就输出了结果。
然而,如果你没有历史成交价格这列数据怎么办?
你只知道房子的位置、面积、卧室数量等特征数据,却唯独缺失了成交价格这一列,历史数据都没有,估算新入市房子的价格成了天方夜谭,你只能另谋他路。那么,这些数据可以用来做什么?
首先,你可以先利用算法从数据中划分出不同的细分市场。你会发现,当地大学附近的购房者喜欢小户型、卧室多的房子,而郊区的购房者往往偏好大户型。了解这些购房偏好能够帮助你更好地营销。
这种将无标签(成交价)数据进行聚类的方法,就是无监督机器学习。由此,你可以得出结论,有监督机器学习和无监督机器学习所说的“监督”就是指导或者干预,比如房子估价这个例子中的成交价,就是一种具有明确指向性的参数。没有这项指标时,机器学习能做的就是根据房子的特征对其进行分类,但是机器并不知道这些类别的成交价有何差别,因为没有结果可以参考。我们把这些带有明确指向性的参考叫作“标签”。
不过,房子估价真的能看成是“学习”吗?
让我们来回想一下人们是怎么学习的吧。学习,是指通过阅读、听讲、思考、研究、实践等途径获得知识或技能的过程。狭义的学习是一种可以得到持续变化(知识和技能、方法与过程、情感与价值的改善和升华)的行为方式。广义的学习是通过获得经验产生的行为或行为潜能的相对持久的行为方式。
从这个意义上讲,机器通过大量数据的训练获得预测、推荐能力的过程,很显然可以被归入“学习”的范畴。
回到上文房子估价的例子,如果你做房地产经纪人的时间足够长,你对于房子的合适定价、房屋的最佳营销方式以及客户感兴趣的户型都会形成一种直觉,机器学习的目的,就是让机器也能习得这样的能力。
不过,目前的机器学习还只能在有限的特定问题上有效。在这种情况下,“学习”的定义也许更贴近“基于少量样本找到一个公式解决特定问题”。于是,我们给这种技术起了一个形象的名字:机器学习。
相关文章
什么是机器学习?(下)
人工智能(AI)经历了怎样的发展历程?
什么是机器学习?(上)相关推荐
- 分类素材(part4)--大话Python机器学习(上)
学习笔记,仅供参考,有错必纠 文章目录 逻辑回归 基于Sigmoid函数的分类 使用梯度下降法求最优解 对数似然函数 最大似然 梯度下降法求解参数 正则化 逻辑回归 基于Sigmoid函数的分类
- 史上最萌最认真的机器学习/深度学习/模式识别入门指导手册(一)
喵喵喵~大家元宵节快乐噢.有没有要陪小夕出去看烟花的吖... 小夕借此给热爱学习的喵喵们献上这篇拙文,希望不要嫌弃哦~ 还有,小夕画的封面图是不是很棒呀( ̄∇ ̄) 小夕发现现在想进军人工智能领域的程序 ...
- 人工智能不再是未来,机器学习靠什么来实现?
随着科学技术的迅猛发展,人们想用机器做越来越多的事,人们能做的,不能做的,懒得做的,统统都想让机器来帮助完成."人工智能"这个曾经只能出现在好莱坞科幻电影里的事,已经变得不再遥远, ...
- 移动应用AI化成新战场?详解苹果最新Core ML模型构建基于机器学习的智能应用...
Google刚刚息鼓,苹果又燃战火!这一战,来自移动应用的AI化之争. 近日,苹果发布专为移动端优化的Core ML后,移动开发者对此的需求到底有多强烈?去年大获成功的AI应用Prisma又能告诉我们 ...
- 200 个工具分析机器学习十年:开源是大势,工程师是核心
[编者按]人工智能和机器学习经过十年多的发展,在过去的几年间,各类工具数量迎来了持续的爆发式的增长,机器学习也正式由科研走进工业生产阶段.本文作者 -- 来自硅谷一家初创公司的计算机科学家 Chip ...
- 自动机器学习:团队如何在自动学习项目中一起工作?(附链接)
来源 | 数据派THU 作者 | Francesca Lazzeri 翻译 | 王琦 责编 | Carol 出品 | AI科技大本营(ID:rgznai100) 去年11月,我写了一篇关于使用自动机器 ...
- 陈天奇:我是如何从机器学习小白一步一步成长为你们心目中的大神的
来源 | 知乎 编辑 | 海边的拾遗者 链接 | https://zhuanlan.zhihu.com/p/74249758 十年前,MSRA的夏天,我刚开始尝试机器学习研究,面对科研巨大的不确定性, ...
- 机器学习科研的十年,希望让你少走一些坑
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自 | 视觉算法 陈天奇是机器学习领域著名的青年华人学者之一 ...
- 为何python攀上数据科学巅峰?调查显示Python超越R
根据KDnuggets 2017年最新调查,Python生态系统已经超过了R,成为了数据分析.数据科学与机器学习的第一大语言.本文对KDnuggets的此项调查结果做了介绍,并补充了一篇文章讲解为何P ...
- 汽车之家机器学习平台的架构与实践
导读:汽车之家机器学习平台是为算法工程师打造的一站式机器学习服务平台,集数据导入.数据处理.模型开发.模型训练.模型评估.服务上线等功能于一体,提供一站式全方位的机器学习建模流程,快速打造智能业务.本 ...
最新文章
- mybatis中like模糊查询的几种写法及注意点
- python可以修图吗_会照片处理的不只是ps,还有Python!
- 2021年阳光高考成绩查询,高考攻略 | 2021年阳光高考月历来了!
- CentOs7安装apache以及遇到的问题
- mybatis传参数
- java getselecteditem_Java JComboBox.getSelectedItem方法代碼示例
- 函数动态参数实现format
- react常用知识点总结
- React开发(200):三种截取字符串的方法
- 所有科研人都应该收藏的论文下载网站,不是sci-hub!
- Intel 64/x86_64/IA-32/x86处理器 - SIMD指令集 - SSE扩展(10) - MXCSR状态控制指令
- python中列表的排序方法_在python中对小列表进行排序的最快方法
- Spring整合Struts2,Hibernate的xml方式
- 猪猪的机器学习笔记(十五)主题模型
- linux tensorflow例子,基于Docker的TensorFlow机器学习框架搭建和实例源码解读
- JAVA 阶乘 n!
- Restarting data prefetching from start repeated many times one by one. why?
- Linux 短链timeout状态,Linux命令——timeout
- word 文档如何加密
- 车子Linux系统,Linux车载系统Automotive Grade Linux
热门文章
- Liferay 中Minifier Filter的minifyCss 奥秘窥探
- HappyAA服务器部署笔记1(nginx+tomcat的安装与配置)
- python 赋值操作的知识点
- 微软Tech·Ed与中国IT行业一同成长
- 512抗击震灾捐款背后的思考
- 沉睡两三年,醒来又一春
- matlab打开时总闪一下才打开_大家装窗帘轨道时,是不是多数都是下面这样的: 打开网易新闻 查看更多图片 或者做个窗帘盒,遮盖一下?...
- flutter 真机无法调试 sdk报错_老许,你要转Flutter不要?只要你开金口,面试题现在就给你送来...
- Python扑克牌发牌(用类实现)
- python exceptions怎么用_Python基础介绍 | Exceptions异常