可微编程:让计算机程序实现自动微分的革命性技术
创作时间:
作者:
@小白创作中心
可微编程:让计算机程序实现自动微分的革命性技术
引用
1
来源
1.
https://vibaike.com/126323/
可微编程是一种新兴的编程范式,它允许计算机程序通过自动微分进行求导,从而实现基于梯度的优化。这种技术在科学计算和人工智能领域有着广泛的应用前景。
可微编程
可微编程为编程范例,其中一数字计算机程序可以区分整个经由自动分化。这允许对程序中的参数进行基于梯度的优化,通常通过梯度下降。可微分编程已在广泛的领域中得到应用,尤其是科学计算和人工智能。
可微编程方法
大多数可微编程框架通过构建一个包含程序中的控制流和数据结构的图来工作。早期的尝试通常分为两类:
基于静态、编译图的方法,例如TensorFlow、Theano和MXNet。它们倾向于允许良好的编译器优化和更容易扩展到大型系统,但它们的静态特性限制了交互性和可以轻松创建的程序类型(例如那些涉及循环或递归的程序),并且使用户更难推理有效地了解他们的计划。
运算符重载、基于动态图的方法,例如PyTorch和AutoGrad。它们的动态和交互性质使大多数程序的编写和推理更加容易。但是,它们会导致解释器开销(尤其是在组合许多小操作时)、较差的可扩展性,并且难以从编译器优化中获益。
这两种早期方法都只能区分以适合框架的方式编写的代码,限制了它们与其他程序的互操作性。
Julia编程语言的一个更新包——Zygote——通过将语言的语法视为图形来解决早期尝试面临的问题。然后可以直接区分、优化和编译任意代码的中间表示。
一种名为Myia的编程语言“目前正在开发中,尚未准备好使用”,它允许使用编译为Myia的Python子集来定义模型。
可微编程的应用
可微编程已经在领域得到了应用,例如结合深度学习与物理引擎中的机器人,解决与可微电子结构问题密度泛函理论,可微光线跟踪,图像处理,以及概率性编程。
热门推荐
中药材价格为何涨不停?记者探寻背后原因
如何准确分析电力行业投资机会?这类投资有哪些投资趋势?
辽参鲁参大比拼:谁是海参界的真正王者?
升职后领导祝贺怎么回?这份职场礼仪指南请收好
调味品在烹饪中的作用及其影响因素分析
运动鞋尺码选择全攻略:从测量到试穿
地方债务46.5万亿元创新高,中央12万亿元化债计划出台
伊丽莎白一世的历史地位与影响研究
陕博参观全攻略:预约技巧、经典路线、重点展品详解
去海边需要带什么必备品
毛巾什么材质的好
基里艾洛德人与迪迦奥特曼的宿命对决
黑芝麻:补肝肾、乌发养颜,这样吃效果最好
巴塞罗那生物研究所研究:每天30-60克核桃,两年后低密度脂蛋白胆固醇显著下降
北京酒吧预订
"since then"的用法,你真的掌握了吗?
河南淇县、陕西岐山:朝歌西岐的现代坐标
篮球与个人发展:如何通过篮球运动提升自我管理和团队协作能力
“中豆63”:高温下的增产奇迹
投影仪幕布该怎么选?投影幕布哪种材质更清晰?
春节3日游攻略:华山与毕棚沟的视觉与味觉盛宴
冬季用电安全全攻略:从预防到应急的完整指南
塑料制品耐化学品性能检测方法及应用场景
增广贤文中的职场智慧:5大法则助你应对职场挑战
海陵岛必打卡:北洛秘境、大角湾、海上丝绸之路博物馆
山东“10大名菜”有哪些?你吃过几种?不愧是四大菜系中的百姓菜
如何进行外汇交易?外汇交易有哪些风险和策略?
美国农业部教你正确冷冻保存猪肉:从包装到解冻全攻略
从“艸”到“艹”:一个汉字的演变史
猫爪草涨得有多妖,跌得就有多狠,产地行情跌去七成!