img

基金

在这个研究人员系统的实例中,用户提供了一对将数据 - 产品名称和日期 - 与算术表达相关联的示例系统自动确定数据来源 - 下表 - 并从示例中概括其他表达式(粗体)在Microsoft Excel中自定义电子表格继续变得更容易,更高效由麻省理工学院的研究生和微软研究员开发,新系统允许Excel用户通过举几个他们想要数据处理的例子来定制他们的电子表格其中一些工作已经在beta测试中实现Microsoft的Visual Basic编程语言允许Excel用户以各种节省时间的方式自定义他们的电子表格,但很少有人利用它虽然设计直观,易于使用,Visual基本对于没有以前编程经验的用户来说仍然是令人生畏的作为实习生和顾问在微软,麻省理工学院计算机科学与人工智能实验室(CSAIL)的研究生Rishabh Singh与微软研究院的Sumit Gulwani合作开发了一个系统,让Excel用户可以通过举例说明他们想要的数据来定制他们的电子表格处理过Singh和Gulwani在今年夏天在计算机辅助验证和超大型数据库会议上提交的两篇论文中描述了这项工作

该系统有两个主要组成部分,第一个是Singh和Gulwani在Singh第一次在微软实习期间开发的,可以根据几个示例修改文本字符串例如,如果您有一个电子表格,其中的日期是以“2009年1月17日”的形式输入的,那么您只需在“Jan 17”中输入一个或两个日期示例, 2009” 年;系统会自动推断您希望月份和日期的顺序颠倒,前三个字母后截断的月份,以及在适当位置添加的标点符号更改表格但在过去的两年中,Singh和Gulwani大大扩展了功能他们的系统允许它利用建立不同类型数据之间相关性的表假设你有一个来自旧数据库的数据列,其中“2009年1月17日”的日期改为以“011709”的形式呈现在系统的最新版本中,您可以创建一个12个条目表,将数字与月份名称相关联:1月份为“01”,2月份为“02”,依此类推现在,再次根据几个例子,系统会学习将文本字符串中的数字转换为相应月份的名称基于表格的相关性特别有用,因为在实践中,公司通常有多个数据库或电子表格包含有关相同对象的不同类型的数据例如,公司可能有来自不同零售商的Excel文件报告销售数据和单独的内部文档记录相同产品的研发费用使用Singh和Gulwani的系统,Excel用户可以创建新文件将汇总的销售数据与汇总的研发费用进行比较,再次提供一些示例用户甚至不需要指定哪些信息来自哪个表:系统自动查找不同来源的相关性将来Singh和Gulwani的工作可以找到进入Excel商业版本的方式确实,Excel的最新测试版包括一个基于示例的简单培训系统,该系统基于Gulwani的一些早期工作

爆炸技术上,设计系统的主要挑战是处理爆炸对任何一组例子的可能解释假设你有军事格式的时间列表你想转换成传统的小时和分钟格式你的第一个例子可能是将“1515”转换为“3:15”但是第一个字符串中的哪15个对应于第二个中的15个

甚至可能是字符串“3:15”从“1515”中的第一个1开始取其1,而从第二个5开始取5,同样,前15个可能对应于3,但也可能所有新字符串都是应该从3开始“通常,我们有数以百万计的表达式实际上符合一个例子,”Singh说“然后我们有多个例子,我将与它们相交以找到适用于所有这些例子的公共表达式Singh解释说,“诀窍是找到一种方法来表示许多表达式共享的功能

每次在实验中,Singh和Gulwani发现他们从不需要三个以上的例子来训练他们的系统”如果你看一下宏为了手动执行这些文本转换,人们必须编写[小程序],与您作为最终用户进行的少量演示相比,通过该系统可以避免多少编程,这是非常惊人的,“Rastislav说道

Bodík是加州大学伯克利分校计算机科学副教授,专攻自动程序综合Bodík说,研究人员解决了两个中心技术问题

首先是“你需要搜索大量的程序空间”,Bodík说,“所以你需要很好的算法来在那个可以有效修剪巨大子空间的程序空间中进行搜索“但第二个问题”是与我们的交互呃,“Bodík说”看起来他们想出了一个非常好的系统,用户可以如何向程序的合成器传达他们的想法而不必知道底下发生了什么“来源:麻省理工学院新闻办公室Larry Hardesty图:麻省理工学院新闻办公室

作者:邱欤趣

News