前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >0x01机器学习简史

0x01机器学习简史

作者头像
上善若水.夏
发布于 2018-09-28 03:31:10
发布于 2018-09-28 03:31:10
1K0
举报
文章被收录于专栏:上善若水上善若水

about 全面介绍机器学习的发展史,从感知机、神经网络、决策树、SVM、Adaboost到随机森林、Deep Learning。

机器学习是人工智能最重要发展分支之一,在科研领域和工业界都是非常热门的课题。

机器学习是一门跨学科领域,涉及到统计学、计算机科学、最优化理论、信息理论、神经科学、理论物理以及其他领域。同时,机器学习也是一门非常年轻的学科。机器学习的大规模应用仅仅开始于过去二十年。当今,数据科学应用已成为一种职业。就像西部开发一样,拥有则无尽的机会,同时也有伴随着很多迷惑与问题。

image

  1. 普遍推广机器学习的第一人Hebb,在1949年提出了基于神经心理学习方法,被称为Hebbian学习理论。通过简单的解释,研究递归神经网络(RNN)节点之间的相关性。它记录网络上的共性,像记忆一样工作。
  2. 在1952年,IBM的亚瑟·塞缪尔(Arthur Samuel)开发了一个西洋棋的程序。 该程序能够通过棋子的位置学习一个隐式模型,为下一步棋提供比较好的走法。 塞缪尔与这个程序对局了很多次,并观察到这个程序在经过一段时间的学习后可以发挥得更好。 塞缪尔用这个程序驳倒了机器无法超越书面代码,并像人类一样学习模式的论断。 他创造并定义了“机器学习”: 机器学习是一个能使计算机不用显示编程就能获得能力的研究领域。
  3. 1957年,Rosenblatt再次提出以神经科学为背景的第二个机器学习模型——感知器,它与今天的机器学习模型更像。当时,这是非常激动人心的发现,实际上它比Hebbian的想法更容易实现。 Rosenblatt用下面几句话介绍了感知器模型: 感知器模型的设计是针对于一般智能系统的一些基本特性,而不会纠缠于一些特定生物体通常情况下未知的特性。[2]
  4. 3 年后,Widrow [发明的Delta学习规则载入机器学习史册,该规则很快被用作感知器训练的实践程序。它也被称为最小二乘问题。这两个想法的结合创造了一个很好的线性分类器。 然而,感知器模型的热度在1969年被Minsky [3]所取代。他提出了著名的XOR问题,感知器无法对线性不可分割的数据进行分类。 这是Minsky对神经网络社区的反驳。 此后,神经网络的研究一直止步不前,到在80年代才有所突破。

image

  1. 尽管早在1973年由Linnainmaa [5] 以“反向自动差异化模式”为名提出了BP思想,但是直到1981年,Werbos [6]才提出将神经网络特定反向传播(BP)算法应用到多层感知器(MLP)。BP仍然是当今神经网络架构的关键组成部分。有了这些新想法,神经网络的研究再次加速。1985年至1986年间,神经网络研究人员相继提出了采用BP训练多层感知器(MLP)的理念(Rumelhart,Hinton,Williams [7] – Hetch,Nielsen [8])

From Hetch and Nielsen

  1. 另一个学派,在1986年,J.R.Quinlan [9]提出了另一个非常著名的ML算法,我们称之为决策树,更具体地说是ID3算法。这是机器学习另一个主流的闪光点。此外,ID3以软件的形式发布,能够以简单的规则及其明确的推论更好地应用到实际生活中,与黑匣子神经网络模型相反。 在ID3之后,社区探索了很多不同的可用方案和算法改进(例如ID4,回归树,CART …),而且仍然是机器学习中的活跃话题之一。

image

  1. 机器学习领域最重要突破之一是Vapnik和Cortes [10]在1995年提出的支持向量机(网络)(SVM),它具有非常强的理论论证和实证结果。SVM将机器学习社区分为NN(神经网络)和SVM两个派别。 然而在2000年左右,SVM内核化版本提出之后,NN在这两个派别之间的竞争并不容易(我无法找到关于该主题的第一篇文章)。SVM在很多之前用NN模型解决的问题上得出了最佳结果。 此外,与NN模型相比,SVM能够充分利用凸优化,泛化边际理论和内核化的所有深奥知识。 因此,它可以从不同学科中获得巨大的推动力,促进理论和实践的快速发展。

image

  1. NN模型受到的另一次重创是1 9 9 1年Hochreiter的论文[40]和2001年Hochreiter等人的论文[11],表明在使用BP算法时,NN单位饱和后会发生梯度损失。简单来说,训练NN模型时由于单位饱和,在迭代超过一定数量后冗余,因此NN非常倾向于在短时间的时期过度拟合。
  2. 不久之前,Freund和Schapire在1997年提出了另一个实体机器学习模型,该模型采用增强的弱分类器组合,称为Adaboost。当时给这项工作的作者颁发了戈德尔奖。 Adaboost通过易于训练的弱分类器进行训练,给那些难的样本更高的权重。这种模型是许多不同任务的基础,如面部识别和检测。它也是PAC(Probably Approximately Correct)理论的一种实现。通常,所谓的弱分类器被Adaboost选为简单的判决树(单个决策树节点)。他们这样介绍Adaboost; 我们研究的模型可以解释为一个广泛的,抽象的扩展的研究在线预测模型到一般决策理论的设置[11]

2001年,Breiman [2001]探索了另一个综合模型,该模型集合了多个决策树,其中每个决策树的训练集都是从实例集合中随机选择的,每个节点的特征都是从特征集合随机选择的。基于这些特性,该模型被称为随机森林(RF)。RF从理论上和实际上都证明不会产生过拟合。甚至AdaBoost在数据集中有过拟合和离群点时,随机森林能有更好的鲁棒性(有关RF的更多详细信息,请参阅我的旧帖子http://www.erogol.com/randomness-randomforests/)。随机森林在许多不同的领域,如Kaggle比赛中也有很出色的表现。

随机森林是树预测因子的组合,每棵树取决于独立采样的随机向量,并且森林中的所有树都具有相同的分布。森林的泛化误差a随着森林中树木数量增多而收敛[12]

随着时间向今天靠近,神经网络(NN)的一个新时代——深度学习已经被商业化了。这个短语只是指具有许多广泛连续层的NN模型。三层的NN模型崛起大致在2005年,由近期和现在的Hinton,LeCun,Bengio,Andrew Ng和诸多大师结合了许多不同的发现。

下面我列举了一些机器学习领域重要的概念
  • GPU编程
  • 卷积NN [18][20] [40]
  • 解卷积网络[21]
  • 算法优化
  • 随机梯度下降[19][22]
  • BFGS和L-BFGS [23]
  • 共轭梯度下降[24]
  • 反向传播[40][19]
  • 整流器单元
  • 稀疏性[15][16]
  • Dropout网 [26]
  • Maxout网[25]
  • 无监督的NN模型[14]
  • 深度信念网[13]
  • 堆叠式自动编码器[16][39]
  • 去噪NN模型[17]

结合所有这些想法和未列出的想法,NN 模型能够在对象识别、语音识别、NLP等不同的任务中击败之前的技术。但是应该注意的是,这并不意味着其他ML流派的结束。虽然深度学习的成功故事还在接二连三的上演,但是它在训练成本和调整模型的外部参数方面还有很多争议。此外,由于其简单性,SVM的使用依然非常普遍。 (据说可能会引起很大争议)

在结束之前,我需要再介绍一个比较前沿的 ML 趋势。随着WWW和社交媒体的发展,一个新的术语——大数据出现了,并大大影响了ML研究。由于大数据的数据规模都很大,许多强大的ML算法在相当多的系统中(当然对大型技术公司来说不是这样)是无用的。因此,研究人员提出了一套新的简单模型——dubbed Bandit Algorithms,被称为强盗算法[27 – 38](通常都基于在线学习),使学习更容易,适应大规模问题。

我只是总结了机器学习的发展史。如果你发现错误,不足或没有添加引用的地方,请不要犹豫,可以通过各种方式告诉我。

参考文章
  1. 原文:Brief History of Machine Learning
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.05.23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Echarts分段折线图图例样式visualMap颜色修改
王小婷
2025/05/19
1260
Echarts分段折线图图例样式visualMap颜色修改
【前端统计图】echart折线图ajax请求json数据
先上图,写了一个echart折线图ajax请求json数据的小demo,帮助自己更好的理解图表知识。
王小婷
2019/07/16
1.4K0
【前端统计图】echart折线图ajax请求json数据
Echarts统计图自适应
之前做折线图的时候,y轴数据都是写成固定了的,如果是统计步数的话,y轴坐标就要根据走了多少步来自适应了,如果没写的话,就会出现以下的这种情况,折线超出了整个坐标抽,就是一个bug了,只要修改一下属性即可,今天写一下Echarts统计图自适应。
王小婷
2019/11/27
1K0
Echarts柱状图折线图混合使用
前面用到的更多的是单个统计图,有些统计图里面,使用柱状图折线图混合使用的,下面写的是用ajax+json本地模拟数据,发送请求,渲染出一个柱状图折线图混合图表。
王小婷
2025/05/19
1000
Echarts柱状图折线图混合使用
SSH攻击ip列表【不定时更新】
  有时我们的linux主机经常被ssh攻击,主要是密码爆破,ytkah通过查看centos登录记录发现一个异常ip是112.85.42.181,搜索了相关资料发现已经有人也碰到类似情况,以下是收集的SSH攻击IP列表,有遇到相同问题的朋友建议屏蔽下列ip
ytkah
2020/09/01
3.2K7
Echarts请求不同格式的json数据处理
在前面已经说到过关于Echarts请求json数据处理: 【前端统计图】echart折线图ajax请求json数据: https://www.jianshu.com/p/9e5c7e2cff05
王小婷
2019/10/15
3.2K0
Echarts请求不同格式的json数据处理
【前端统计图】echart多条折线图ajax请求json数据
关于echart折线图,用到的地方和场景也很多,昨天写的demo,基础之上可以继续扩展,今天的demo是echart多条折线图ajax请求json数据。
王小婷
2019/07/18
2K0
【前端统计图】echart多条折线图ajax请求json数据
欧拉计划——方阵中的最大乘积
08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00 81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65 52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91 22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80 24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50 32 98 81 28 64 23 67 10 26 38 40 67 59 54 70 66 18 38 64 70 67 26 20 68 02 62 12 20 95 63 94 39 63 08 40 91 66 49 94 21 24 55 58 05 66 73 99 26 97 17 78 78 96 83 14 88 34 89 63 72 21 36 23 09 75 00 76 44 20 45 35 14 00 61 33 97 34 31 33 95 78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92 16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57 86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58 19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40 04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66 88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69 04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36 20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16 20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54 01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
lop
2019/03/13
5840
欧拉计划 Problem11
题目: 方阵中的最大乘积 在如下的20×20方阵中,有四个呈对角线排列的数被标红了。
Max超
2019/01/21
4250
ECharts折线图渲染json格式数据(格式为数组)
ECharts折线图渲染json格式数据(json格式,为数组) 需要对数组进行循环取值,将取到的值分别赋值给x轴和y轴
王小婷
2021/04/09
3.3K0
ECharts折线图渲染json格式数据(格式为数组)
ajax+json实现echarts多个统计图显示
前端时常会遇到这样的问题,有一个单独的模块用作统计图,将多个折线或者柱状图,混合使用,下面的例子是用ajax+json模拟了调用接口实现echarts多个统计图显示。 样式布局暂时就不放在上面了,以下是从项目里面复制过来的一个小的demo,代码仅供参考。
王小婷
2019/09/19
2.7K0
Echarts统计图标题居中显示
title: { text: '健康人数统计', // subtext:'', x: 'center', y: '7px', textStyle: { color: '#3A7BD5',
王小婷
2020/11/24
4.3K0
Echarts统计图标题居中显示
AkShare-股票数据-终止和暂停上市股票
作者寄语 新增终止和暂停上市股票数据接口 更新接口 "stock_info_sh_delist" # 上海证券交易所暂停和终止上市 "stock_info_sz_delist" # 深证证券交易所暂停和终止上市 终止(暂停)上市-深证 接口: stock_info_sz_delist 目标地址: 深证证券交易所 描述: 获取深证证券交易所终止(暂停)上市股票 限量: 单次获取深证证券交易所终止(暂停)上市股票 输入参数 名称 类型 必选 描述 indicator str Y indicator="终止上
数据科学实战
2020/07/23
7220
Echarts+ajax实现叠堆柱状图
示例代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <!--统计图 --> <div class="row"> <div id="main" style="width: 900px; height: 350px; margin-top:80px;"></div>
王小婷
2019/12/11
9140
算法科普:神秘的 DES 加密算法
DES 算法是一种常见的分组加密算法,由IBM公司在1971年提出。DES 算法是分组加密算法的典型代表,同时也是应用最为广泛的对称加密算法。本文将详细讲述DES 的原理以及实现过程。
五分钟学算法
2019/09/03
8.4K1
算法科普:神秘的 DES 加密算法
xx外买APP设备指纹风控分析
电商行业的各个业务场景面临不同的风险种类:客户端漏洞利用、协议逆向、注册小号、商品信息被抓取、推广渠道作弊、营销活动被薅羊毛、商品秒杀等。 大多的防御方案是通过端上安全、链路安全、接口和数据传输安全保护,再借助设备安全核验技术、人机识别及时发现各种模拟行为和异操作风险、同时集合风控策略实现多节点防护。
我是小三
2021/10/13
7.6K1
[资源分享]计算机科学速成课
推荐 程序员的你一定要看,不是程序员的也可以看看,我已经安利刚中考完的我妹妹看了(培养程序媛...)
爬虫
2018/07/25
9920
[资源分享]计算机科学速成课
每天学一个 Linux 命令(115):accton
accton 命令是 Linux 系统进程管理命令之一,它的作用是打开进程统计,如果命令后面不带任何参数,就是关闭进程统计。
民工哥
2021/04/21
7790
使用 ZoomEye 寻找 APT 攻击的蛛丝马迹
作者:Heige(a.k.a Superhei)@知道创宇404实验室 时间:2020年5月25日
Seebug漏洞平台
2020/05/29
6560
使用 ZoomEye 寻找 APT 攻击的蛛丝马迹
键盘中断事件及其相关---小记
当我们在按下按键时,键盘会把按键的扫描码发送到主板的接口电路中,具体说就是端口60H。
书童小二
2018/09/03
1.6K0
键盘中断事件及其相关---小记
推荐阅读
相关推荐
Echarts分段折线图图例样式visualMap颜色修改
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档