0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MIT使用贝叶斯推理让计算机程序编写专门为数据分析设计的新程序

DPVg_AI_era 来源:lq 2019-01-21 08:43 次阅读

MIT的研究人员使用贝叶斯推理,让计算机程序编写专门为数据分析设计的新程序。其目的是减轻那些本身不是人工智能专家的数据科学家的负担。

最近有个非常流行的话题:如何让普通人(普通人指既不是程序员,也不是IT管理员,更不是机器学习科学家的人群)更容易接近人工智能?

比较流行的一种方法是将所有的复杂性抽象到云计算操作中。

然而,本周MIT提出了另一种方法:让机器学习自己完成更多的工作,发明自己的程序,在时间序列分析等特定应用程序中处理数据。

这本身就是人工智能的一个热门领域,让机器建立模型,进而从数据中归纳出答案。

计算机程序设计自动化方法中,“第一个概率程序的贝叶斯合成”

研究人员描述了一种自动创建推断数据模式的程序的方法,这意味着数据科学家不再需要找出适合所研究数据的“模型”。

这项工作发表在计算机协会网站上的一篇论文中,题为《用于自动数据建模的贝叶斯合成概率程序》(Bayesian Synthesis of Probabilistic Programs for Automatic Data Modeling)。

其作者分别是MIT的Feras A. Saad、Marco F. Cusumano-Towner、Ulrich Schaechtle、Martin C. Rinard和Vikash K. Mansinghka。

Saad和他的同事们所要攻克的问题是:找到正确的程序来分析给定的数据集所需的所有工作。

正如他们在文章当中所述,要解决这个问题,将面临如下方面的困难:

用户需要手动选择模型或程序结构;

需要大量的建模专业知识;

建模能力有限;

如果用户没有探索足够广泛的模型或程序结构,可能会丢失数据的重要方面。

为了解决这个问题,他们打算让计算机做决定。

Saad和他的同事们继承了近年来“合成”计算机程序的传统,让一个程序生成另一个程序。

在这方面,有很多值得借鉴的例子,例如Google DeepMind科学家2014年为建立“神经图灵机”所做的努力。 该项目使用所谓的“循环神经网络”来发现简单的计算机算法,例如复制和粘贴文本。

作者的同事通过设计“概率”程序而不是经典的“确定性”程序来做区分。

这意味着在给定特定输入的情况下,程序不一定会产生可预测的输出。相反,程序的输出将反映输入它们的数据的噪声和不确定性。

为了实现这一点,作者使用了贝叶斯统计方法。他们对大量的计算机程序进行取样,并对每个程序的可能性进行评分,以此作为处理想要研究的数据的可能解决方案。

正如作者所说,在所有的计算机程序设计自动化方法中,他们的方法是“第一个概率程序的贝叶斯合成”。

“领域特定语言”构建的程序是关键

帮助研究人员实现这一壮举的是他们做出的一个关键选择:他们开始构建,或“合成”,不仅仅是任意一般类型的计算机程序,而是由“领域特定语言”构建的程序。

MIT的研究人员描述了他们的贝叶斯推理方法在特定领域的语言中搜索表达式的过程,以组合一组可以分析特定类型数据的算法。

DSL是在某种程度上可以匹配它们处理数据的语言。例如,有一些“数据建模”语言可以帮助表示数据中的关系。Yang就是这样一种数据建模语言的名称,用于计算机网络的建模。

通过将他们的方法限制在DSL上,作者适当缩小了计算机程序的“搜索空间”,从而提高了他们找到解决方案的几率,而不是像神经图灵机那样采用更通用的方法。

一旦贝叶斯推理过程装配了一些Winning Program,这些程序就能够对数据进行推理。

例如,作者描述了适合分析多年飞行里程的程序。这是一个时间序列分析问题,所谓的高斯统计过程是合适的。

因此,他们的贝叶斯推断综合了包含高斯过程操作的算法,以找到那些有可能拟合数据的算法组合。

与“卷积神经网络”等一些通用机器学习模型不同,这种方法的一大好处是,合成的程序在某种意义上是可以解释的,它们不是AI中令人恐惧的“黑匣子”。

这是因为程序是特定于领域的,所以它们的操作会“泄露”它们在数据中发现的内容。

正如作者所描述的,“领域特定语言中合成的程序提供了紧凑的数据模型,使定性属性在程序的表面语法中变得明显。”

同时,作者还展示了如何使这些DSL程序能够对新数据进行泛化。

他们使用一个解释器程序将单个算法转换成一种叫做Venture的东西,这是一种更加广泛和通用的概率编程语言。然后Venture就可以在更广泛的应用程序中对数据进行推断。

当然,这项工作有进一步的方向。研究人员特别指出,他们的工作在未来可能会纳入用户对数据应如何处理或分析的具体要求。

这意味着人类对数据的智能与机器技能的融合,或许是人与人工智能的理想结合。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1792

    文章

    47409

    浏览量

    238923
  • 机器学习
    +关注

    关注

    66

    文章

    8424

    浏览量

    132764
  • 数据分析
    +关注

    关注

    2

    文章

    1452

    浏览量

    34076

原文标题:MIT实现机器自动建模,数据分析分分钟搞定

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    计算在大数据分析中的应用

    计算在大数据分析中的应用广泛且深入,它为用户提供了存储、计算分析和预测的强大能力。以下是对云计算在大
    的头像 发表于 10-24 09:18 506次阅读

    计算机接口位于什么之间

    计算机接口是计算机硬件和软件之间、计算机与外部设备之间以及计算机各部件之间传输数据、控制信息和状态信息的硬件设备和软件
    的头像 发表于 10-14 14:02 443次阅读

    计算机存储系统的构成

    计算机存储系统是计算机中用于存放程序数据的设备或部件的集合,它构成了计算机信息处理的基础。一个完整的
    的头像 发表于 09-26 15:25 1097次阅读

    计算机存储器的分类及其区别

    计算机存储器是计算机系统中不可或缺的重要部分,用于存放程序数据。随着科技的进步,存储器的种类越来越多,功能和性能也日益丰富。一般来说,计算机
    的头像 发表于 09-05 10:40 1774次阅读

    计算机程序的三种基本控制结构是什么

    计算机程序的三种基本控制结构是: 顺序结构(Sequence Structure) :顺序结构是最基本的控制结构,也是最简单的结构。它按照程序中语句的书写顺序,自上而下地依次执行,即每个语句按书写
    的头像 发表于 09-04 17:00 1333次阅读

    计算机进行程序控制工作的基本原理是怎样的

    控制的基础。 中央处理器(CPU) :计算机的大脑,负责解释和执行指令。 内存(RAM) :临时存储数据程序指令。 存储设备(如硬盘、固态硬盘) :长期存储数据
    的头像 发表于 09-04 16:57 577次阅读

    微处理器如何控制计算机系统

    微处理器,作为计算机系统的核心部件,承担着控制整个计算机系统运行的重要任务。它不仅是计算机的运算中心,还是控制中心,负责执行程序指令、处理数据
    的头像 发表于 08-22 14:21 520次阅读

    滤波和卡尔曼滤波的区别

    先验概率和观测数据相结合,来估计系统的状态。滤波的核心思想是:在给定观测数据的情况下,系统状态的后验概率可以通过
    的头像 发表于 08-01 15:25 705次阅读

    数据分析除了spss还有什么

    Sciences)是一款非常流行的统计分析软件,但除了SPSS之外,还有许多其他数据分析工具和方法。 引言 数据分析是一个跨学科的领域,涉及到统计学、计算机科学、
    的头像 发表于 07-05 15:01 647次阅读

    计算机控制器的结构和功能

    随着信息威廉希尔官方网站 的迅猛发展,计算机已经深入我们生活的方方面面。而计算机控制器,作为计算机系统的核心部件之一,承担着协调各部件工作、指挥整个计算机程序
    的头像 发表于 06-17 15:47 1723次阅读

    工业控制计算机的体系结构是什么

    工业控制计算机是一种专门工业自动化控制领域设计的计算机系统,具有高性能、高可靠性、实时性、可扩展性等特点。本文将详细介绍工业控制计算机的体
    的头像 发表于 06-16 11:38 1051次阅读

    工业计算机与普通计算机的区别

    在信息化和自动化日益发展的今天,计算机已经成为了我们日常生活和工作中不可或缺的工具。然而,在计算机领域中,工业计算机和普通计算机虽然都具备基本的计算
    的头像 发表于 06-06 16:45 1474次阅读

    【量子计算机重构未来 | 阅读体验】+ 了解量子叠加原理

    如何生产制造。。。。。。 近来通过阅读《量子计算机—重构未来》一书,结合网络资料,了解了一点点量子叠加知识,分享给大家。 先提一下电子计算机,电子计算机使用二进制表示信息数据,二进制的
    发表于 03-13 17:19

    【量子计算机重构未来 | 阅读体验】+ 初识量子计算机

    欣喜收到《量子计算机——重构未来》一书,感谢电子发烧友论坛提供了一个我了解量子计算机的机会! 自己对电子计算机有点了解,但对量子计算机
    发表于 03-05 17:37

    什么是嵌入式计算机

    嵌入式计算机是一种专门设计用于特定功能的计算机系统,通常被嵌入到其他设备中,以执行特定的任务。这种计
    的头像 发表于 01-15 15:10 1445次阅读
    什么是嵌入式<b class='flag-5'>计算机</b>?