ML(1)——机器学习简述
简述
机器学习是人工智能的一种实现方式;深度学习是一种实现机器学习的技术,或者说是一种特殊的机器学习方法,可以说广义上的机器学习也包括了深度学习,三者的关系如下图所示:

从判别垃圾邮件到无人驾驶技术,机器学习在众多领域都有着广泛的应用,机器学习成就了今天的人工智能。
机器学习的本质
在以往的工程项目中,我们认为计算机程序只能严格执行我们让它做的事情——输入数据,输出计算结果。为了得出正确的结果,需要在程序中写大量的循环和判断,但是对于某些问题,这种方式将无法处理,比如如何判断一张照片中有没有大树?
对于人类来讲,可能在会走路的时候就认识了大树,然而我们并没有试图给小孩子灌输大树的定义,实际上大多数人都不能准确定义什么是大树,但是我们依然能够分辨:“哦,这就是大树”。联想小孩子学习的过程,是经过家长无数次的教导,告诉他:“嘿,宝贝,这一棵大树”,然后他慢慢学会了:“哦,这种东西就是大树”。当然,这种方式有时可能会出错,比如我的小孩在最近才能分清老虎和猫咪。
机器学习的本质就是让计算机模拟上述过程,让计算机“学习”,从而获得某种认知,通过这种认知判断新的事物。这种认知称为模型,用数学表示将是一个函数。
上述过程可以简述为:输入一堆相关数据,让计算机自行学习,得到一个可以判断新事物的模型:

使用机器学习时需要考虑三点:
- 必须存在一个模型;
- 这个存在的模型无法正确写出;
- 手里有足够多的关于这个模型的数据。
举例来说:
- 预测刚会走路的小孩会往哪个方向前进(不存在模型,前进方向不可预测)
- 计算加减乘除混合运算(可以正确写出模型)
- 外星人是否来袭(没有足够多的数据提供参考)
- 判断一个人的信誉是否优良以便对其发放信用卡(可以使用机器学习)
需要注意的是,除了第三点外,即使1,2都不是机器学习的必要条件,只是此时机器学习不是最佳实现方案。
在机器学习开始时,我们应当掌握多少数据?理论上,数据量应当能够恰好完美的得到某个模型;然而实际上可能只有很少的数据,但这并不妨碍开始机器学习。所以问题的答案只能是“具体情况具体分析”。
机器学习的种类
通常,机器学习可分为监督学习、非监督学习和强化学习。
监督学习
数据集中的每个样本有相应的“正确答案”,根据训练集得出模型,从而预测新数据。对于连续型数据的预测称为回归,对于离散型数据的预测称为分类。
非监督学习
给出一堆数据,我也不知道要预测什么,总之你自己预测吧,祝你好运。
强化学习
不断尝试新输入,对输出进行评分,每次都选取最高分,渐渐地,机器会只给出高分的答案。这和处于探索阶段的小孩子一样,碰到了仙人球,知道了坏的结果,从此将远离仙人球,然后不断尝试碰触新东西,逐渐知道很多东西不能碰。
作者:我是8位的
出处:http://www.cnblogs.com/bigmonkey
本文以学习、研究和分享为主,如需转载,请联系本人,标明作者和出处,非商业用途!
扫描二维码关注公众号“我是8位的”

需要注意的是,除了第三点外,即使1,2都不是机器学习的必要条件,只是此时机器学习不是最佳实现方案。
ML(1)——机器学习简述的更多相关文章
- AI Boot Camp 分享之 ML.NET 机器学习指南
今天在中国七城联动,全球134场的AI BootCamp胜利落幕,广州由卢建晖老师组织,我参与分享了一个主题<ML.NET 机器学习指南和Azure Kinect .NET SDK概要>, ...
- C# .NET ML.NET 机器学习 图像分类
一. 准备工作 IDE是 VS2019.先下载好"resnet_v2_50_299.meta"这个文件,放入"C:\Users\jk\AppData\Local\Temp ...
- 机器学习 - ML
CNCC - 2016 | 机器学习(原文链接) Machine Learning - ML,机器学习起源于人工智能,是AI的一个分支. 机器学习的理论基础:计算学习理论 - Computationa ...
- 一个开源的,跨平台的.NET机器学习框架ML.NET
微软在Build 2018大会上推出的一款面向.NET开发人员的开源,跨平台机器学习框架ML.NET. ML.NET将允许.NET开发人员开发他们自己的模型,并将自定义ML集成到他们的应用程序中,而无 ...
- 使用ML.NET + Azure DevOps + Azure Container Instances打造机器学习生产化
介绍 Azure DevOps,以前称为Visual Studio Team Services(VSTS),可帮助个人和组织更快地规划,协作和发布产品.其中一项值得注意的服务是Azure Pipeli ...
- 开源的,跨平台的.NET机器学习框架ML.NET
微软在Build 2018大会上推出的一款面向.NET开发人员的开源,跨平台机器学习框架ML.NET. ML.NET将允许.NET开发人员开发他们自己的模型,并将自定义ML集成到他们的应用程序中,而无 ...
- 机器学习、深度学习以及人工智能正在快速演进(ML、DL、AI)
机器学习.深度学习以及人工智能正在快速演进 机器学习.深度学习和人工智能(ML.DL和AI)是彼此相关的概念,他们正在改变不知多少行业,改变其自身管理模式,同时改变做出决策的方式.显然,ML.DL和A ...
- 机器学习 - ML + 深度学习 - DL
机器学习 CNCC - 2016 | 机器学习(原文链接) Machine Learning - ML,机器学习起源于人工智能,是AI的一个分支. 机器学习的理论基础:计算学习理论 - Computa ...
- iOS 11: CORE ML—浅析
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/OWD5UEiVu5JpYArcd2H9ig 作者:l ...
随机推荐
- win10下安装scala流程及问题
第一步:Java 设置 检测方法前文已说明,这里不再描述. 如果还为安装,可以参考我们的Java 开发环境配置. 接下来,我们可以从 Scala 官网地址 http://www.scala-lang. ...
- python文件和文件流操作
f = open(r'C:\Users\wangxue2\Desktop\somefile.txt', 'w') #r'C:\Users\wangxue2\Desktop\somefile.txt'中 ...
- global $GLOBALS 区别
PHP代码 复制代码 代码如下: <?php // 例子1 function test_global() { global $var1, $var2; $var2 =& $var1; } ...
- java学习笔记20(Arraylist复习,Collection接口方法,迭代器,增强型for循环)
集合:集合是Java提供的一种容器,可以用来存储多个数据: 集合与数组的区别:集合的长度是可变的,数组的长度是固定的 集合中存储的数据必须是引用类型数据: ArrayList回顾: public cl ...
- 在dosbox窗口显示a~z
assume cs:code stack segment db 128 dup (0) stack ends code segment start: mov ax,stack mov ss,ax mo ...
- WSDL 文档-一个简单的 XML 文档
WSDL 文档是利用这些主要的元素来描述某个 web service 的: <portType>-web service 执行的操作 <message>-web service ...
- SpringBatch Sample (三)(XML文件操作)
前篇关于Spring Batch的文章,讲述了Spring Batch 对CSV文件的读写操作. 本文将通过一个完整的实例,与大家一起讨论运用Spring Batch对XML文件的读写操作.实例流程是 ...
- php防止sql注入的方法(转)
[一.在服务器端配置] 安全,PHP代码编写是一方面,PHP的配置更是非常关键. 我们php手手工安装的,php的默认配置文件在 /usr/local/apache2/conf/php.ini,我们最 ...
- Python网络爬虫之requests模块(2)
session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 有些时候,我们在使用爬 ...
- MySQL最基本的DML语句
一.什么叫DML? DML(Data Manipulation Language):数据操作语言.主要操作数据表中的数据,使用DML可以完成以后三件事: 插入数据 修改数据 查询数据 二.具体的语句操 ...