欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    对比机器学习和程序语言的发展史.doc

    • 资源ID:3433028       资源大小:18.50KB        全文页数:3页
    • 资源格式: DOC        下载积分:2
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要2
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    对比机器学习和程序语言的发展史.doc

    对比机器学习和程序语言的发展史编者按:Microsoft Semantic Machines资深研究科学家、UC Berkeley计算机科学博士Jacob Andreas对比了机器学习和程序语言的发展史,提出可组合性、模块化是神经网络的重要发展方向。应用机器学习简史:每当我们用能力更强、特征更简单、结构性限制更少的模型替换能力更弱、附带手工编写的结构性限制的模型时,模型质量提升了(模型更小,开发用时更短,在未见数据上的概括性更好)。从NLP领域我们就能举出很多例子:线性模型取代了决策列表;Jelinek说:“我每开掉一个语言学家,语音识别系统的表现就会提高一点”;基于统计的机器翻译;最近一大波论文的实质是“将log-linear模型(双层神经网络)替换为一个三层神经网络”。程序语言简史:每当我们用带有少量高层构件的语言替换带有大量简单构件的语言时,程序质量提升了(同等复杂度的程序更短了,开发用时更短,包含bug的可能性降低)。所有人都不写汇编了,接着,所有人都不写C了。(显然这是粗暴的过度概括,因为还有很多人在写汇编和C。争议更少的说法是使用底层语言写程序的人越来越少,使用底层语言更难写对程序。)不知道你注意到了没有,在以上两个情形中,我们移动的都是同一个滑块只不过方向不同。机器学习和程序语言设计最终目标是一致的:让特定的问题求解机器(不管是人类还是优化算法)产生正确的代码。在现实世界中,我们并不是因为机器学习内在地比手写代码更纯粹或者更美才偏爱机器学习我们使用机器学习是因为它高效。如果今天有人发布了一个包含一些可组合的视觉原语的库,接着突然之间Facebook发现实习生可以比神经网络更高效地解决所有的图像标记问题,那么明天神经网络就会被弃之门外。实际上,我们现在能够写出这样的库吗?澄清一下,我指的不是类似OpenCV的东西,让你选择为特定任务预先实现的模型,然后在后处理部分加上你想要的操作。相反,我想要的是一些视觉原语,基于这些原语我们可以这样编写一个分类器:load(image) andThendetectObjects andThenorderBy(salience) andThenhead andThenname或者这样给图像自动加上说明:load(image) andThendetectObjects andThendescribeAll或者这样识别人脸:load(image) andThendetectObjects andThenfilter(name(_) = Face) andThendrawBoundariesdetectObjects、describeAll等函数看起来是什么样?目前的经验提示它们应该是神经网络,但不是特定种类的神经网络:它们并不是为完成某个具体任务(比如给图像加上说明)而训练的,而是以可自由组合的方式进行训练:describeAll承诺可以接受任何“检测结果列表之类”的输入(可以直接来自detectObjects,也可以是经过后续过滤的),并生成一个字符串。这些函数的输入和输出都是实向量。无法结构化地强制“检测结果列表之类”的东西实际具有所需的语义,相反,我们完全依赖训练过程。在当前的真实世界实现中,将网络层视为模块化、预先规定的单元,而将网络视为为特定任务定制的单一模型(需要端到端训练)。不过,一旦我们转移到模块化网络上,我们可以开始进行不存在训练数据的任务。例如,使用上面指定的原语“为图像中的人添加说明”:load(image) andThendetectObjects andThenfilter(name(_) = Face)andThen describeAll其实我们已经向这个方向迈步了:人们使用图像分类网络的前若干层初始化几乎所有视觉任务;尽管“注意力”是一系列组合多个网络层的复杂操作,人们在描述模型时突然开始将其用作原语。Roger Grosse关于矩阵分解模型的语法的出色论文(arXiv:1210.4856)也多少是这个风格,还有Christopher Olah对视作可复用模块组合的神经网络的类型理论细节的讨论(git.io/fAn4J)。回到我们之前的程序语言讨论,我们观察到:手工编写人类检测器对人类来说很难,但对神经网络而言很容易。给定功能恰当的视觉原语,编写人类描述器很容易。但从头训练完成这一任务的神经网络需要大量人类描述的样本。(我们也许可以说,对人类来说“容易”,对神经网络来说“困难”。)更进一步,有很多更类似人类而不是神经网络的机器学习技术,使用很小的数据集以及良好的预先指定的原语,比如,程序推导和语义解析。如果我们真的只在乎最少的人类干预,我们可以将指定的视觉原语交给机器学习子系统自动推导。所以让我们编写这个库!这里有一些问题需要研究:首先,提供给人们的功能原语(或用于程序推导的模块)的正确组合是什么?接着,这些共享的表示真的可以被学习吗?我们如何基于现有的标记数据为这些模块搜寻参数配置?作为概念证明,我和一些研究人员合作,写了三篇关于可组合模块化神经网络的论文:Neural Module Networks(arXiv:1511.02799)Learning to Compose Neural Networks for Question Answering(arXiv:1601.01705)Modeling Relationships in Referential Expressions with Compositional Modular Networks(arXiv:1611.09978)

    注意事项

    本文(对比机器学习和程序语言的发展史.doc)为本站会员(白大夫)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开