透过现象看机器学习:奥卡姆剃刀,没有免费的午餐,丑小鸭定理等

一只小狐狸带你解锁炼丹术&NLP 秘籍

本文对PAC学习理论、没有免费的午餐定理、丑小鸭定理、奥卡姆剃刀原理等机器学习中有名的理论或定理进行了详细的梳理。

在机器学习中,有一些非常有名的理论或定理,这些理论不仅有助于我们从本质理解机器学习特性,更好地学习相关理论,更重要的是可以有助于我们理解很多生活哲学,比如奥卡姆剃刀原理所延伸的极简主义:如无必要,勿增实体的理念,让我们一起细品吧。

没有免费午餐定理

没有免费午餐定理(NFL)是由Wolpert 和Macerday在最优化理论中提出的。没有免费午餐定理证明:对于基于迭代的最优化算法,不存在某种算法对所有问题(有限的搜索空间内)都有效。
如果一个算法对某些问题有效,那么它一定在另外一些问题上比纯随机搜索算法更差。也就是说,不能脱离具体问题来谈论算法的优劣,任何算法都有局限性,必须要“具体问题具体分析”。

没有免费午餐定理对于机器学习算法也同样适用。不存在一种机器学习算法适合于任何领域或任务。如果有人宣称自己的模型在所有问题上都好于其他模型,那么他肯定是在吹牛。

丑小鸭定理

丑小鸭定理(Ugly Duckling Theorem)是1969 年由渡边慧提出的[Watanable,1969]。“丑小鸭与白天鹅之间的区别和两只白天鹅之间的区别一样大”。这个定理初看好像不符合常识,但是仔细思考后是非常有道理的。

因为世界上不存在相似性的客观标准,一切相似性的标准都是主观的。

如果从体型大小或外貌的角度来看,丑小鸭和白天鹅的区别大于两只白天鹅的区别;但是如果从基因的角度来看,丑小鸭与它父母的差别要小于它父母和其他白天鹅之间的差别。

奥卡姆剃刀原理

奥卡姆剃刀原理是由14 世纪逻辑学家William of Occam提出的一个解决问题的法则:“如无必要,勿增实体“。
奥卡姆剃刀的思想和机器学习上正则化思想十分类似:简单的模型泛化能力更好。如果有两个性能相近的模型,我们应该选择更简单的模型。

因此,在机器学习的学习准则上,我们经常会引入参数正则化来限制模型能力,避免过拟合。奥卡姆剃刀的一种形式化是最小描述长度(Minimum Description Length,MDL)原则,即对一个数据集????,最好的模型???? ∈ ℱ 是会使得数据集的压缩效果最好,即编码长度最小。

最小描述长度也可以通过贝叶斯学习的观点来解释[MacKay, 2003]。模型???? 在数据集???? 上的对数后验概率为其中− log ????(????) 和− log ????(????|????) 可以分别看作是模型???? 的编码长度和在该模型下数据集???? 的编码长度。也就是说,我们不但要使得模型???? 可以编码数据集????,也要使得模型???? 尽可能简单。

PAC 学习理论

当使用机器学习方法来解决某个特定问题时,通常靠经验或者多次试验来选择合适的模型、训练样本数量以及学习算法收敛的速度等。
但是经验判断或多次试验往往成本比较高,也不太可靠,因此希望有一套理论能够分析问题难度、计算模型能力,为学习算法提供理论保证,并指导机器学习模型和学习算法的设计。
这就是计算学习理论, 计算学习理论(Computational Learning Theory)是关于机器学习的理论基础,其中最基础的理论就是可能近似正确(Probably Approximately Correct,PAC)学习理论。

机器学习中一个很关键的问题是期望错误和经验错误之间的差异,称为泛化错误(Generalization Error)。泛化错误可以衡量一个机器学习模型???? 是否可以很好地泛化到未知数据。根据大数定律,当训练集大小|????| 趋向于无穷大时,泛化错误趋向于0,即经验风险趋近于期望风险。由于我们不知道真实的数据分布????(????, ????),也不知道真实的目标函数????(????),因此期望从有限的训练样本上学习到一个期望错误为0 的函数????(????) 是不切实际的。
因此,需要降低对学习算法能力的期望,只要求学习算法可以以一定的概率学习到一个近似正确的假设,即PAC 学习(PAC Learning)。
一个PAC 可学习(PACLearnable)的算法是指该学习算法能够在多项式时间内从合理数量的训练数据中学习到一个近似正确的????(????)。

PAC 学习可以分为两部分:

  • “近似正确”(Approximately Correct):一个假设???? ∈ ℱ 是“近似正确”的,是指其在泛化错误???????? (????)小于一个界限????。????一般为0到1/2之间的数,0 < ???? < 1/2。如果???????? (????) 比较大,说明模型不能用来做正确的“预测”。

  • “可能”(Probably):一个学习算法???? 有“可能”以1 − ???? 的概率学习到这样一个“近似正确”的假设。???? 一般为0 到1/2之间的数,0 < ???? < 1/2。

PAC 学习可以下面公式描述:其中????,???? 是和样本数量???? 以及假设空间ℱ 相关的变量。如果固定????、????,可以反过来计算出需要的样本数量:其中|ℱ| 为假设空间的大小. 从上面公式可以看出,模型越复杂,即假设空间ℱ 越大,模型的泛化能力越差。
要达到相同的泛化能力,越复杂的模型需要的样本数量越多。为了提高模型的泛化能力,通常需要正则化(Regularization)来限制模型复杂度。

PAC 学习理论也可以帮助分析一个机器学习方法在什么条件下可以学习到一个近似正确的分类器。从上述公式可以看出,如果希望模型的假设空间越大,泛化错误越小,其需要的样本数量越多。

归纳偏置

在机器学习中,很多学习算法经常会对学习的问题做一些假设,这些假设就称为归纳偏置(Inductive Bias)[Mitchell, 1997]。
比如在最近邻分类器中,我们会假设在特征空间中,一个小的局部区域中的大部分样本都同属一类。
在朴素贝叶斯分类器中,我们会假设每个特征的条件概率是互相独立的。归纳偏置在贝叶斯学习中也经常称为先验(Prior)。

本文摘编自复旦大学邱锡鹏教授的《神经网络与深度学习》,经出版方授权发布。自2016年在复旦大学计算机学院开设了《神经网络与深度学习》这门课程后,邱锡鹏老师的讲义便广为流传。经过4年的打磨,这份让周志华、李航联袂推荐的实体书,值得学习。

夕小瑶的卖萌屋

_

关注&星标小夕,带你解锁AI秘籍

订阅号主页下方「撩一下」有惊喜哦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480505.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NAACL 2019最佳论文:量子概率驱动的神经网络

今天要介绍的文章与当前大火的 BERT 同获最佳论文&#xff0c;摘得 NAACL 2019 最佳可解释NLP论文&#xff08;Best Explainable NLP Paper&#xff09;。NAACL 与 ACL 和 EMNLP 并称之为 NLP 三大顶会&#xff0c;去年 ELMO 获得 outstanding paper&#xff0c;今年一共有五篇…

互联网优秀架构师必读书单V2.0

一篇文章搞懂高级程序员、架构师、技术经理、技术总监、CTO&#xff0c;从薪资到技能要领的区别&#xff0c;我提到了架构师的准确定义和所需工作年限&#xff0c;以及最重要的架构师的职责等。 从程序员进阶到架构师&#xff0c;6大核心技能详解&#xff0c;提到了从程序员进…

领域应用 | NLP 和知识图谱:金融科技领域的“双子星”

本文转载自公众号&#xff1a;恒生技术之眼。自然语言处理&#xff08;Natural Language Processing, NLP&#xff0c;语义计算&#xff09;和知识图谱&#xff08;Knowledge Graph, KG&#xff0c;知识计算&#xff09;作为认知智能的关键技术&#xff0c;正成为智能金融浪潮中…

数据结构--单链表single linked list(无表头哨兵)重写

针对上次写的单链表中不足的地方进行修改&#xff1a; 1.构造函数需要让用户输入&#xff08;bad&#xff09; 2.函数功能不单一&#xff0c;既操作链表&#xff0c;还打印输出&#xff08;bad&#xff09; 代码链接&#xff08;包含无头\有头单链表、循环单链表、双链表、循…

别再蒸馏3层BERT了!变矮又能变瘦的DynaBERT了解一下

一只小狐狸带你解锁炼丹术&NLP秘籍神经网络模型除了部署在远程服务器之外&#xff0c;也会部署在手机、音响等智能硬件上。比如在自动驾驶的场景下&#xff0c;大部分模型都得放在车上的终端里&#xff0c;不然荒山野岭没有网的时候就尴尬了。对于BERT这类大模型来说&#…

LS-GAN:把GAN建立在Lipschitz密度上

最近很多关心深度学习最新进展&#xff0c;特别是生成对抗网络的朋友可能注意到了一种新的GAN-- Wasserstein GAN。其实在WGAN推出的同时&#xff0c;一种新的LS-GAN (Loss Sensitive GAN&#xff0c;损失敏感GAN)也发表在预印本 [1701.06264] Loss-Sensitive Generative Adver…

java程序员必看经典书单,以及各个阶段学习建议

最近&#xff0c;部分读者一直希望我给大家推荐java程序员必读书籍&#xff0c;以及java程序员每个阶段的学习建议。 今天&#xff0c;先给大家推荐1.0版本&#xff0c;后面再不断完善程序员必读书籍2.0版本。 希望&#xff0c;你早日成为牛逼的程序员。 程序员进阶之路 上图是…

数据结构--链表--单链表归并排序mergesort

思路&#xff1a; 1.将链表的中点找到&#xff0c;对其切分成2条 2.继续步骤1&#xff0c;切成4条&#xff0c;8条。。。,直至每段链表只有1个元素 3.归并操作&#xff0c;对两两链表进行合并排序&#xff0c;并返回回并后的链表的头结点&#xff0c;依次向上递归回去 C代码…

我们的实践:事理图谱,下一代知识图谱

原文链接&#xff1a;https://mp.weixin.qq.com/s/iLfXeVeWE5CCs_sM_NAOSw 一、人工智能与认知智能 当前人工智能时代下&#xff0c;机器与人类之间的博弈一直在进行着。如图1所示&#xff0c;从1956年达特茅斯会议的召开标志人工智能诞生到深度学习模型在若干人工智能领域大规…

领域应用 | 偷偷告诉你,那些二次元萌妹都有个叫知识图谱的爸爸

本文转载自公众号&#xff1a;AI 时间。《AI108将》是AI时间全新的AI行业人物专访栏目。艾伦麦席森图灵说&#xff1a;有时&#xff0c;那些人们对他们并不抱有期望的人&#xff0c;却能做到人们不敢期望的事情。Sometimes Its very people who no one imagines angthing of wh…

白话生成对抗网络 GAN,50 行代码玩转 GAN 模型!【附源码】

今天&#xff0c;带大家一起来了解一下如今非常火热的深度学习模型&#xff1a;生成对抗网络&#xff08;Generate Adversarial Network&#xff0c;GAN&#xff09;。GAN 非常有趣&#xff0c;我就以最直白的语言来讲解它&#xff0c;最后实现一个简单的 GAN 程序来帮助大家加…

java架构师进阶之独孤九剑(一)-算法思想与经典算法

“ 这是整个架构师连载系列&#xff0c;分为9大步骤&#xff0c;我们现在还在第一个步骤&#xff1a;程序设计和开发->数据结构与算法。 我们今天讲解重点讲解算法。 算法思想 1 贪心思想 顾名思义&#xff0c;贪心算法总是作出在当前看来最好的选择。也就是说贪心算法并…

数据结构--链表--单链表中环的检测,环的入口,环的长度的计算

就如数字6一样的单链表结构&#xff0c;如何检测是否有6下部的○呢&#xff0c;并且求交叉点位置 思路 使用快慢指针&#xff08;一个一次走2步&#xff0c;一个走1步&#xff09;&#xff0c;若快慢指针第一次相遇&#xff0c;则有环 慢指针路程 sabs absab 快指针路程 2sa…

ACL 2010-2020研究趋势总结

一只小狐狸带你解锁 炼丹术&NLP 秘籍作者&#xff1a;哈工大SCIR 车万翔教授导读2020年5月23日&#xff0c;有幸受邀在中国中文信息学会青年工作委员会主办的AIS&#xff08;ACL-IJCAI-SIGIR&#xff09;2020顶会论文预讲会上介绍了ACL会议近年来的研究趋势&#xff0c;特整…

架构师进阶之独孤九剑:设计模式详解

我们继续架构师进阶之独孤九剑进阶&#xff0c;目前我们仍然在第一阶段&#xff1a;程序设计和开发环节。 “ 设计模式不仅仅只是一种规范&#xff0c;更多的是一种设计思路和经验总结&#xff0c;目的只有一个&#xff1a;提高你高质量编码的能力。以下主要分为三个环节&…

知识表示发展史:从一阶谓词逻辑到知识图谱再到事理图谱

研究证实&#xff0c;人类从一出生即开始累积庞大且复杂的数据库&#xff0c;包括各种文字、数字、符码、味道、食物、线条、颜色、公式、声音等&#xff0c;大脑惊人的储存能力使我们累积了海量的资料&#xff0c;这些资料构成了人类的认知知识基础。实验表明&#xff0c;将数…

领域应用 | 基于知识图谱的警用安保机器人大数据分析技术研究

本文转载自公众号&#xff1a;警察技术杂志。 郝久月 樊志英 汪宁 王欣 摘 要&#xff1a;构建大数据支撑下的智能应用是公安信息化发展的趋势&#xff0c;警用安保机器人大数据分析平台的核心功能包括机器人智能人机交互和前…

数据挖掘学习指南!!

入门数据挖掘&#xff0c;必须理论结合实践。本文梳理了数据挖掘知识体系&#xff0c;帮助大家了解和提升在实际场景中的数据分析、特征工程、建模调参和模型融合等技能。完整项目实践&#xff08;共100多页&#xff09;后台回复 数据挖掘电子版 获取数据分析探索性数据分析&am…

数据结构--栈--顺序栈/链式栈(附: 字符括号合法配对检测)

栈结构&#xff1a;先进后出&#xff0c;后进先出&#xff0c;像叠盘子一样&#xff0c;先叠的后用。 代码github地址 https://github.com/hitskyer/course/tree/master/dataAlgorithm/chenmingming/stack 1.顺序栈&#xff08;数组存储&#xff0c;需给定数组大小&#xff0c…

银行计考试-计算机考点2-计算机系统组成与基本工作原理

版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/sinat_33363493/article/details/53647129 </div><link rel"stylesheet" href"https://csdnimg.cn/release/pho…