当前位置:首页>编程日记>正文

每个人都应该了解的“机器学习”

每个人都应该了解的“机器学习” 配图01

1 导 语


理解机器学习的概念对每个人都是有益的,机器学习根本不接受你输入的指令,相反,它接受你输入的数据! 也就是说,机器学习是一种让计算机利用数据而不是指令来进行各种工作。

2 传统算法


计算机的主要任务应该是为人类解决问题。传统的方法是通过“编程”来解决;通俗的讲,是由我们告诉计算机一个合适的解决问题的算法,这个算法是对程序的详细描述。待解决的问题可以通过算法有效地描述。就好像在上小学的时候,我们都学习利用算法对两个数进行加减操作。算法能够快速、完美的解决问题,这一优点计算机远远优于人类。

每个人都应该了解的“机器学习” 配图02

但是,程序也有其局限性。我们如何识别一只猫的照片呢?这个看似简单的问题,但难以构建一个适合的算法。让我们思考一下。即便是简单的指令,如“有四条腿”或“有两只眼睛”但这样的描述并不准确,因为做罗列的这些特征可能被隐藏,或者照片可能只显示了猫的一部分。然后,我们面对如何识别腿部或眼睛,这与识别一只猫同样困难。

3 机器学习


这时候就体现出了机器学习的魅力。计算机并不是必须使用算法解决问题,它可以使用示例学习算法。我们利用样品训练计算机。以猫为例,这意味着要使用大量图片训练系统,这些图片描绘了相应标记的猫(即,监督学习,样本上都打有标记)。通过这种方式,算法逐步成熟,最终能够识别出图片上的猫。

每个人都应该了解的“机器学习” 配图03

事实上,在这种情况下,计算机通常不会像模型中的参数那样学习经典程序,例如网络中的边缘权重。这个原则与我们大脑中的学习过程进行比较,神经细胞可以适应它们之间的联系。像大脑一样,与经典程序不同,具有边缘权重的网络几乎不可能被人类解释。

每个人都应该了解的“机器学习” 配图04

深度学习中的人工神经网络已被证明非常成功的。深度学习是实现机器学习的一种技术,而机器学习又是人工智能的一个分支学科,是计算机科学研究的一个主要分支。早在2012年,一个谷歌研究团队成功地训练了一个由16,000台计算机组成的网络,利用深度学习,从1000万个YouTube视频从图像中识别猫(和其他对象类别)。

每个人都应该了解的“机器学习” 配图05

现实中更多的问题都类似于“识别猫”而不是“数字运算”,因此不能用人类编写算法的方法充分解决。这种问题通常是识别某些数据中的特征,例如:识别图像中的对象、识别自然语言中的文本或交易数据中的欺诈行为。


我们一起来看一个简单的案例:预测性维护。想象一下,许多传感器发送数据流,偶尔机器发生故障。接下来的难点是:学习最终导致故障的数据流中的特征。一旦学习了这种特征,就可以在正常操作时识别它,从而预测和防止潜在的故障。

虽然,机器学习的原理并不是近期提出的,但目前它受欢迎程度仍在不断的提升。有以下三个主要原因: 首先,应用和训练需要大量的有效数据(“大数据”);其次,拥有满足我们需求的巨大的计算能力,特别是在云端;第三,一系列开源项目已经导致算法或多或少地被人们访问。

每个人都应该了解的“机器学习” 配图06

4 机器学习 VS 传统算法


机器学习并不是取代了传统的编程,而是对它的补充。它提供的工具能够帮我们解决迄今为止难以解决的一大类问题。总的来说,它为我们提供了新的机会,同时越来越多现有的系统也能够适应机器学习功能。


遵循特征的重复操作是一个典型的例子。设想一下,计算机程序具有通过一系列复杂菜单访问一百个功能,但您每天主要使用的只是其中的一些。通过观察通常为以下步骤,计算机学会预测人们的下一步行动,从而提高效率。或者,进行数据的分配和转换(例如,用于填充数据仓库的ETL工作);在计算机“学习”重复数据和对象的部分,许多步骤可以自动、快速的进行。

5 应 用


几乎每个领域都有很多这样的例子:针对不同层次学生的学习材料(特别像是“大规模开放式在线课程”或MOOCs),疾病的早期诊断,针对线上营销的适合目标群体,客户流失,自动识别数据质量问题,或通过用户资料匹配的约会服务

每个人都应该了解的“机器学习” 配图07

借助先进的工具,Spark(与Hadoop结合使用)已成为机器学习领域领先的大数据框架。Talend也在采用这种方法,但它是通过对工作进行建模(包括培训和生产部署)来提高水平。建模降低了复杂性,同时导致与底层技术的一定程度的独立性,这些技术持续快速的变化,因此只有少数专家才能掌握。

 只有少数专家需要真正了解机器学习领域中最精细的算法细节。另一方面,理解机器学习的概念对每个人都是有益的。机器学习的基础是从示例中学习特征,并且能够在新数据集上使用它们。最终,这扩大了利用机器解决的问题类别和其自动化程度:尤其是使用决策的过程。这正是计算机学到的东西,它根据从训练数据中积累的知识,对新出具做出决定。一方面,利用自动化决策这一优势,另一方面,利用机器分析出的恒定数据结果,以优化他们的业务。

计算机现在不仅能够遵循明确的指令,而且能够通过示例自己学习(如,通过训练样本识别猫的图片)。通过以无限种方式组合程序,最终为自动化带来更多机会。

6 结 语

机器学习是继专家系统之后人工智能应用的又一重要研究领域,也是人工智能和神经计算的核心研究课题之一。对机器学习的讨论和机器学习研究的进展,必将促使人工智能和整个科学技术的进一步发展 。

 

每个人都应该了解的“机器学习” 配图08

长按二维码 ▲

订阅「架构师小秘圈」公众号

如有启发,帮我点个在看,谢谢↓


http://www.coolblog.cn/news/9b809881df635623.html

相关文章:

  • asp多表查询并显示_SpringBoot系列(五):SpringBoot整合Mybatis实现多表关联查询
  • s7day2学习记录
  • 【求锤得锤的故事】Redis锁从面试连环炮聊到神仙打架。
  • 矿Spring入门Demo
  • 拼音怎么写_老师:不会写的字用圈代替,看到孩子试卷,网友:人才
  • Linux 实时流量监测(iptraf中文图解)
  • Win10 + Python + GPU版MXNet + VS2015 + RTools + R配置
  • 美颜
  • shell访问php文件夹,Shell获取某目录下所有文件夹的名称
  • 如何优雅的实现 Spring Boot 接口参数加密解密?
  • LeCun亲授的深度学习入门课:从飞行器的发明到卷积神经网络
  • Mac原生Terminal快速登录ssh
  • java受保护的数据与_Javascript类定义语法,私有成员、受保护成员、静态成员等介绍...
  • mysql commit 机制_1024MySQL事物提交机制
  • 支撑微博千亿调用的轻量级RPC框架:Motan
  • jquery 使用小技巧
  • 2019-9
  • 法拉利虚拟学院2010 服务器,法拉利虚拟学院2010
  • vscode pylint 错误_将实际未错误的py库添加到pylint白名单
  • 科学计算工具NumPy(3):ndarray的元素处理
  • 工程师在工作电脑存 64G 不雅文件,被公司开除后索赔 41 万,结果…
  • linux批量创建用户和密码
  • newinsets用法java_Java XYPlot.setInsets方法代碼示例
  • js常用阻止冒泡事件
  • 气泡图在开源监控工具中的应用效果
  • 各类型土地利用图例_划重点!国土空间总体规划——土地利用
  • php 启动服务器监听
  • dubbo简单示例
  • 【设计模式】 模式PK:策略模式VS状态模式
  • [iptables]Redhat 7.2下使用iptables实现NAT
  • Ubuntu13.10:[3]如何开启SSH SERVER服务
  • CSS小技巧——CSS滚动条美化
  • JS实现-页面数据无限加载
  • 阿里巴巴分布式服务框架 Dubbo
  • 最新DOS大全
  • Django View(视图系统)
  • 阿里大鱼.net core 发送短信
  • 程序员入错行怎么办?
  • 两张超级大表join优化
  • 第九天函数
  • Linux软件安装-----apache安装
  • HDU 5988 最小费用流
  • Sorenson Capital:值得投资的 5 种 AI 技术
  • 《看透springmvc源码分析与实践》读书笔记一
  • 正式开课!如何学习相机模型与标定?(单目+双目+鱼眼+深度相机)
  • Arm芯片的新革命在缓缓上演
  • nagios自写插件—check_file
  • python3 错误 Max retries exceeded with url 解决方法
  • 行为模式之Template Method模式
  • 通过Spark进行ALS离线和Stream实时推荐