首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无需数学就能写AI,MIT提出AI专用编程语言Gen

新智元报道 来源:MIT 编辑:元子 【新智元导读】为使AI算法开发初学者更容易进行编程设计,MIT研究人员开发出一种名为“Gen.”新型概率编程系统,无需处理方程式或手动编写高性能代码,即可在计算机视觉...在本周编程语言设计和实施会议上,MIT研究小组发表一篇论文,其中描述了一种名为“Gen.”新型概率编程系统。 ?...嫌TensorFlow太偏科,Gen追求是全世界最好 TensorFlow也可以帮助初学者和专家自动生成机器学习系统、而无需进行太多数学计算。...借鉴早期概率编程系统Church中使用概念,研究人员将几种自定义建模语言融入Julia,每种建模语言都针对不同类型AI建模方法进行了优化,使其更加通用。...“ 谷歌研究主管Peter Norvig也赞扬了这项工作:“[Gen]允许问题解决者使用概率编程,因此对问题采用更原则方法,但不受概率编程系统设计者选择限制,通用编程语言之所以成功,是因为它们使程序员更容易完成任务

71850
您找到你想要的搜索结果了吗?
是的
没有找到

无需数学就能写AI,MIT提出AI专用编程语言Gen

继 Julia 语言之后,近日 MIT 又发布了一种全新通用概率编程系统 Gen,它是一种针对人工智能领域专用语言,且除了深度学习外,各种机器学习与概率建模方法都囊括在内。...近日,在提交编程语言设计与实现大会(PLDI)一篇论文中,MIT 研究人员介绍了一种全新概率编程系统 Gen。...借鉴了早期概率编程系统 Church 中概念,研究人员将几种自定义建模语言结合到 Julia 中,每种建模语言都对不同类型 AI 建模方法进行优化,使其更加通用。...通用编程语言之所以能成功,是因为它们能令程序员更容易完成任务,Gen 对于概率编程意义同样在此。」...摘要:概率建模和推理对于很多领域都是极为重要。概率编程语言得到更广泛采用关键挑战在于设计灵活且性能良好系统。

1.2K20

业界 | 微软RobustFill:无需编程语言,让神经网络自动生成程序

选自Microsoft Research blog 作者:Rishabh Singh等 参与:李泽南 长久以来,摆脱编程语言束缚,让计算机自我生成程序一直是开发者们梦想,最近微软研究者推出RobustFill...在过去几十年中,计算机科学有了长足发展,但人们编写计算机软件过程却没有发生根本改变——程序员必须使用特定程序语言一步步手工编写程序精确算法逻辑。...尽管编程语言近年来正在变得越来越友好,但这项工作仍然是绝大多数计算机用户未曾接触事物。 在最近一项研究中,微软发布了自己深度学习程序生成研究。...该系统通过域特定语言(domain specific language,DSL)生成用于执行任务程序,用户不需要理解 DSL 所有细节。事实上,在使用过程中,用户完全不会看到编程过程。...编程新启示 训练神经网络架构来学习一种带有丰富功能程序语言(FlashFill DSL)不仅是神经语言生成重大突破,也是走向通用人工智能坚实一步。

94350

模仿学习:无需编程,机器人也能听懂自然语言了!

未来,将自然语言融入模仿学习可以减少自主机器人所需编程,实现人与机器人之间自然交互。...在训练过程中,模型学会了相互联系和捕捉语言、视觉和运动控制之间相关性,从而产生以语言为条件控制策略。然后这些策略为人类用户提供了一个简单直观,可以发出非结构化命令界面。...在未来,将非结构化自然语言融入到模仿学习中可以减少自主机器人对编程需求,实现人与机器人之间自然交互。这项创新可能会让自动化机器人在医疗保健、零售、制造和食品等行业使用更上一层楼。...在不需要编程情况下,人们只需要提供一组可以转换为函数式或概率表示演示就好。然而,这种方法局限性在于必须仔细设计状态表示来确保所有必要信息是可用。...总的来说,这个模型对来自新参与者新自然语言命令反应良好。 由此看来,自然语言指令可以在未来为机器学习和机器人开辟新应用。

49810

如何选择编程语言以及编程语言分类

想了解编程语言我们先要知道什么叫做“编程”,编程意思就是编写流程,那么只要能编写流程语言都应该叫做编程语言。...据不完全统计,所有编程语言加起来超过600种,其中用比较多也就前20种语言,Python不仅是其中一种而且这两年已经稳居第一名宝座了。...9.jpg 一、低级语言和高级语言 计算机编程语言能够实现人与机器之间交流和沟通,而计算机编程语言主要包括汇编语言、机器语言以及高级语言,具体内容如下: 汇编语言语言主要是以缩写英文作为标符进行编写...高级语言 所谓高级语言,其实是由多种编程语言结合之后总称,其可以对多条指令进行整合,将其变为单条指令完成输送,其在操作细节指令以及中间过程等方面都得到了适当简化,所以,整个程序更为简便,具有较强操作性...二、交互原理 编程语言承接就是人与机器之间交互中介,程序员通过编程语言编写一段执行命令流程代码,这段代码在执行前会被编译成底层语言,比如python就会直接编译成C语言,C语言计算机也是看不懂

12.6K00

无需标定,如何编程消除图像Vignetting(晕影)

前言: 在我知识星球中,我正在教大家如何编程实现摄影图像后期处理与优化。目前我进度在图像畸变校正这一部分,如下图所示: 这里我所说畸变校正包括了两个部分。...晕影(Vignetting)产生原因 晕影这个词比较抽象,我们先来看一对去除晕影前后图像对比,获取一下直观印象。...仔细看还能发现,上图中中心阶梯和左右两边植物本来位于同一物距,有相似的光照条件,但去除晕影前中间阶梯就是显得要亮一些,旁边植物就显得黑乎乎。...而去除晕影后,中心画面亮度没有大改变,但周围像素亮度就提起来了。 有了感性认识后,我们现在来正式认识一下它。...自然晕影数学模型 很明显,自然晕影产生确实是物理现象,是任何使用镜头成像设备天然就会遇到,这也是其名字由来。

89620

6.计算机语言发展 编程语言发展 编程语言类型 为什么会有编程语言 编程语言什么作用 机器语言 高级语言分类 编程语言历史 编程语言有哪些 编程语言编年史

语言 计算机语言指用于人与计算机之间通讯语言,也即是平时说编程语言 编程 指令概念很早就形成了,其实指令本身就是一种编程 一个指令替代了一组逻辑电路或者机电式/机械式中一个计算单元 你只需要一个指令就相当于已经操作了一整个模块...这不也是一种编程思维吗,只不过是指令对应硬件 随着指令在现代计算机中应用,计算机程序得以快速发展 因为一旦你知道计算机可以执行哪些指令,其实也就是哪些功能,具有哪些能力 你就可以把这些指令按照一定逻辑顺序重排组装...不同机器有不同汇编语言 需要汇编程序翻译成计算机可以识别的二进制机器语言 本质还是面向机器低级语言 机器语言和汇编语言都是面向硬件具体操作语言对机器过分依赖,所以称之为低级语言 高级语言...为了能够更加通用解决问题,而不是专注于硬件本身,出现了高级语言 高级语言不用关注机器指令,使用接近人习惯自然语言和数学语言符号 能够专注于问题本身业务逻辑 显然高级语言也是不能直接运行于机器上...,需要翻译程序转换为机器可以执行目标代码程序 虽然高级语言不涉及寄存器这些东西,不需要你了解硬件 但是这是高级语言隐藏了她们,而不是说这些东西不存在不重要,所有的语言都逃不过这一关 始终是要编程机器语言

15.3K20

FreeDrag:无需点跟踪,实现稳定语言内容拖拽

5 月,在 AIGC 广阔世界里出现了一个新热点:由谷歌、麻省理工学院(MIT)、马普所等机构合作打造 DragGAN 图像编辑方法,一经发布就在各大平台上获得了海量流量,引发热议。...然而,DragGAN 性能严重依赖于点跟踪准确性,而点跟踪策略本质上是不稳定——因为它隐式地假设每次移动后在默认搜索区域内,有且仅有一个点完美继承了 handle point 特征。...这个假设会在以下两种情况失效: 图像内容发生剧烈变化导致跟踪丢失 搜索区域内相似点导致跟踪错误 为了避免不稳定点跟踪对图像编辑质量损害,中国科学技术大学和上海人工智能实验室研究者们共同提出了一种以特征为导向基于点交互式编辑框架...,在无需进行精确点跟踪情况下即可实现更加稳定可靠拖动编辑。...DragGAN 点跟踪和 FreeDrag 点定位比较 ■ FreeGrag APP: 无需部署,轻松在线体验 FreeDrag 应用界面 为了方便用户快速简便地体验,FreeDrag 作者在 OpenXLab

18320

编程语言未来?

方向一:编程语言发展趋势 当前编程语言发展趋势 多范式融合:传统编程语言往往只专注于一种编程范式(如过程式、面向对象式、函数式等)。...未来可能编程语言编程范式 量子计算编程语言:随着量子计算技术发展,未来编程语言可能会引入量子计算相关特性。例如,量子并行性、量子纠错等概念可能会成为新编程范式。...自然语言编程:自然语言处理技术发展可能使得未来编程语言更加接近自然语言,使得非专业人员也能理解和编写程序。 声明式编程:声明式编程是一种让计算机理解你想要结果,而不是如何得到这个结果编程范式。...方向四:编程语言教育和普及 编程语言教育和普及问题 编程语言教育和普及是推动技术发展和行业进步关键因素之一。...方向五:编程语言生态系统和工具 编程语言生态系统和工具发展趋势 随着技术快速发展,编程语言生态系统和工具也在不断演进。

12510

编程语言发展

早期程序员意识到使用二进制进行编码很困难,于是发明了汇编语言。使用机器指令二进制编码是唯一不同是,汇编语言提供了机器指令助记符号,编程时候,机器指令可以使用助记符号进行代替。...软件编程依然是需要使用计算机指令,一个指令一个指令进行编程处理。因此,机器指令二进制编程和汇编语言本质上都是面向机器编程。汇编语言程序如下,这个已经是PC时代汇编语言程序了。...最早期高级编程语言是Fortran,这是一种专门用于科学计算高级语言,诞生于1957年。...如果软件编程重点是客观世界本身,那么编程语言如何才能更好满足这一需求,于是,面向对象编程语言应运而生。...而极客编程程序员对强类型面向对象编程越来越不看好。他们希望在编程时候能够得到更多自由,编程语言重心似乎重新出现了面向程序员趋势。

2.9K51

消失编程语言

技术不断演进,我们使用编程语言也不例外。随着人工智能日益普及以及它对这些语言使用方式影响,我们更加关注哪些语言将在未来与我们同在,哪些将逐渐退出舞台。...因为变化是唯一不变,所以你应该远离以下这九种编程语言,它们可能不会在短期内成为主要角色。 1、R R编程语言一度急剧崛起,意图征服数据分析编程世界。...然而,随着多年发展,它最近开始失去对Python编程语言地位。 作为一种编程语言,R提供了各种有价值功能,但它目前在编程语言榜单中排名较低。它在TIOBE指数中排名第18位,不太可能再次上升。...逐渐或迟早消亡编程语言 现在,开发人员使用各种编程语言,因为没有一种语言可以满足所有用途。随着不断演变,随着需求变得更加复杂和要求发生变化,编程语言也在不断涌现和消失。...这里列出编程语言受到了竞争冲击,由于未能提供现代和相关功能,随着时间推移,逐渐出现了更好编程语言,被其他语言取代了,将它们淘汰出局。

16630

M语言编程_所有编程语言大全

一直对技术有很强兴趣,终于,决定要写自己语言(m语言)。那就先从最简单开始:解释执行器。...一套完整语言包含肯定不止解释执行器了,还要有编译器和IDE,也就还要有语法高亮、智能提示等,不过还没学会那些,先搞个最基本解释执行器。...元数据收集 变量作用域定义、查找 解释执行 先设想我们m语言语法要怎么牛b啊,比如下面这段demo语法代码: go 计算标准体重(年龄) { 体重:年龄*3; 体重; } 体重:10; a:10;...,以”go”字符串为函数定义开始,接着是常规函数名称、参数、函数方法块。...//解释器执行 System.out.println(""); AST节点定义: demo代码构建成AST树效果图(antlr插件中能看): 转换成为AST树后,剩下就是编写解释执行器,其实相当于前端编译器

12.6K30

编程语言发展

www.cnblogs.com/Colin-Cai/p/7517682.html   作者:窗户   QQ/微信:6679072   E-mail:6679072@qq.com   无意中看到很多年前写ppt...,当时只保留了每一页整体图片,但是其中某些图存在明显错误,不是当时最终版本,可能当时最终版本比这个要多十几页ppt。...记得当时还是用了大篇幅来讲计算机语言历史,讲了两个小时吧,目的也是为了能让大家对于计算机语言产生一定兴趣,从而了解其历史,从不同编程语言来得到启发,从而在现实工程中起到作用。...感觉此ppt还有点价值,但是按照当初所写全部补完又没有了意义,于是简单用matlab整体处理了一下,去掉了首尾logo,并做了一点点纠错,发出来,当作本月博文。 ? ? ? ? ? ? ? ?

3.6K30

JavaScript里分号,你加还是不加?

1.前言 我们接触大部分编程语言,都会以 分号 作为代码结束,将程序语句分隔开来,JavaScript同样如此。这对增强代码整洁性和可读性是非常重要。...缺乏分隔符,一条语句结束就变成了另一条语句开始,反之亦然。在我们初学编程,接触C语言时候,就常常因为代码结尾没有分隔符或者分隔符写错,而引发程序bug。...对于很多编程语言,在一条语句结尾加上分号是必须。然而,对于JavaScript,则并不如此。...在JavaScript中,如果语句各自独占一行,通常可以省略语句之间分号(程序结尾或者右“}”之前分号也可以省略。)...,在任何可以省略分号地方,都将其省略,只有在不得不用时候才使用分号

1.5K11

plsql编程语言_编程语言有哪些

–pl/sql编程语言 –pl/sql编程语言是对sql语言扩展,是的sql语言具有过程化编程特性 –pl/sql编程语言比一般过程化编程语言,更加灵活高效 –pl/sql编程语言主要用来编写存储过程和存储函数等...:'||emprow.job); end; 执行之后看输出结果: --pl/sql中if判断 --输入小于18数字,输出未成年 --输入大于18小于40数字,输出中年人 --输入大于40数字...pl/sql语言,放置在数据库端 ---可以直接被调用。...—如果存储过程实现有返回值业务,我们就必须使用out类型参数 —即便是存储过程使用了out类型参数,其本质也不是真的有了返回值 —而是在存储过程内部给out类型参数赋值,在执行完毕后,我们直接拿到输出类型参数值...---给给该数据中主键列赋值。

13K30

Golang 语言是面向对象编程风格编程语言吗?

虽然 Golang 语言有类(struct)和方法(method),支持面向对象编程风格,我们可以使用 Golang 语言 struct 实现面向对象封装特性,但是 Golang 语言没有面向对象继承特性...Golang 语言 interface 也和其他语言接口实现方式不同,Golang 语言接口实现方式是鸭子类型(duck type)。...封装,继承和多态是区分编程语言是否是面向对象编程语言三个重要特性。本文我们通过一些简单易懂示例代码介绍一下 Golang 语言面向对象编程风格。...04 多态 Golang 语言中也有接口 interface,它 interface 实现方式是 duck type,它不需要像其他面向对象编程语言那样,使用关键字 implements 显式声明,...05 总结 本文我们介绍了 Golang 语言是否是面向对象编程风格语言,并给出了 Golang 语言官方回答和解释。然后使用示例代码介绍了 Golang 语言面向对象编程风格。

7K10

世界最强编程语言:C语言

1.C语言数据类型 char:字符型,用来存储小范围整数(-128~127)和字符(所有的ASCII字符,128个),一个字节。 int:整数型,用来存储整数,四个字节。...小编推荐一个学C语言/C++学习裙【 六二七,零一二,四六四 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!...3.变量定义 语法: 变量类型 变量名; 变量保存在内存中 变量就像一个“盒子” 变量名就是盒子名称 变量值就是盒子中东西 4.scanf函数 输入机制 %d, %f, %lf 以空白字符为间隔...c=getc(stdin); printf("c=%c", c); putc:可以指定标准输出设备 char c = "b"; putc(c, stdout); 我有一个微信公众号,经常会分享一些C语言.../C++技术相关干货;如果你喜欢我分享,可以用微信搜索“C语言学习部落”关注。

11.2K20
领券