牛雅哲,上海人工智能实验室OpenDILab开源决策智能平台核心研发人员,主要负责平台引擎DI-engine的设计和开发,统筹研发一系列决策AI平台底层效率优化组件,并为相关大规模分布式强化学习应用提供技术保障和支持,构建决策智能技术和系统工程结合的完整工具链。

报告内容:近些年来,决策AI技术接连突破人类对于通用人工智能的想象,但其在各种复杂环境和计算场景上的通用性问题仍是真正实现技术变革的巨大阻碍。多模态,低信息密度的数据流,算法设计和实现逻辑高度耦合的计算模型,不断动态变化的问题场景,AI+System的协同优化,都体现出了相关系统和平台设计的复杂性。从零到一,设计构建通用决策智能平台OpenDILab,优雅且高效地处理决策AI技术遇到的各种复杂性问题,为整个决策AI生态圈提供基础技术支持。

牛雅哲作《从零到一,坚持做正确的事--通用决策AI平台的开拓创新之路》报告分享

下方有文字版总结哦

决策AI三大难题

开场牛雅哲首先点明了报告主题,从具体如何克服决策AI问题通用性出发,讲述OpenDILab做平台框架是如何思考和解决这些问题的。

目前决策AI三大难题:

一为环境多样性,因为实际应用的时候,任务之间的环境和算法,包括参数都是非常割裂的,不同环境下的算法和优化难度是差别非常大;

二为计算的复杂性,决策AI领域目前无法让学术界和工业界有比较好的分工,因为像PPO、SAC、DQN等等,把它们抽象到同一个平台上,做成像感知一样变成有Head、Backbone的抽象非常难的,而且可能会用到上千GPU和上万CPU;

三为计算尺度,强化学习计算流程比纯Deep Learning感知要复杂非常多,它涉及到沟通包括环境的部分等等非常复杂的问题。这三个方面如果做到泛化处理对算法推广和应用会带来非常大的帮助。

环境和数据多样性问题

针对环境和数据的多样性问题,牛雅哲从以下三个方面阐述OpenDILab的解决方案:

决策AI问题的输入输出空间,即观察空间和动作空间,拥有各种各样的数据模态,输入上有图像,语音,数据,序列数据,结构化数据等多种类型,输出中有离散,连续,混合动作空间等等。OpenDILab对这一问题实现了相应标准化定义,对各种模态的输入输出提供标准的特征工程处理和神经网络模块定义,例如ResNet处理2D图像数据,LSTM/GRU处理时序建模相关问题,Transformer Encoder部分处理无序多智能体单位数据,Autoregressive方法处理混合动作空间。使用者可以直接使用这些标准化组件,或是自定义新的处理模块,更多地将精力集中在RL优化问题中。

对于大部分的决策AI问题,我们可以使用经典的gym/dm格式环境定义,而一些特殊的算法,比如MCTS,HER,Go-Explore等,在实现时需要环境为算法提供更多的支持。OpenDILab在这个方面也进行了专门的抽象和实现,使得相应类别的算法可以在多种环境中通用。

由于数据的复杂性,研究员们通常使用嵌套的python list/dict结构来表示训练数据,这样的数据结构给编程实现带来了诸多不便,需要大量的循环遍历和分支处理,同时整个执行过程大部分又是串行的,一定程度上影响了整体运行效率。基于OpenDILab中的treevalue模块,我们设计实现了针对PyTorch Tensor和numpy.array的TreeTensor和TreeNPArray,能够复用绝大多数原生API,把结构化数据像整齐的张量一样使用,并提供相应的并行加速接口。

并且OpenDILab在底层设计上设置了DI-engine模块,致力于解决决策AI环境和算力标准化训练的问题,目前兼容绝大多数已有的学术环境和工业界数据模态。支持从学术级单CPU训练到跨区万级别CPU/GPU的资源管理和调度。

算法通用性难题

针对算法通用性问题,牛雅哲从以下两个方面阐述OpenDILab的解决方案:

由于强化学习的算法类别众多,各种算法设计之间又多有互相依赖和借鉴,很难像CV,NLP一样设计出通用的算法集合,因此OpenDILab将通用化的重心放在了相关基础OP的设计实现上,比如实现通用的N-step TD/GAE/VTrace算子,重参数化辅助函数等。使用者可以像搭积木一样快速利用这些算子定制自己的强化学习算法。

由于强化学习算法子领域非常繁杂,同类平台主要都是提供最经典的主流算法实现,对于MARL/Imitation Learning/Exploration等分支涉及较少,而OpenDILab基于通用决策AI算子,整合了20+决策AI算法的相关实现,涉及多个细分领域,并提供通用化的接口设计,可以实现各类算法间的灵活组合。同时,在经典的学术环境上,对上述算法补充了详尽的性能和效率结果benchmark,致力于为强化学习研究员和应用工程师们提供最广最全的算法平台。

计算规模通用性问题

针对计算规模通用性问题,牛雅哲从以下两个方面阐述OpenDILab的解决方案:

对于同一个强化学习算法,在个人电脑和服务器集群上运行,常常会有较大的实现差异,需要定制分布式处理相关代码。对于OpenDILab的使用者,大部分情况下只需将重心放在Env和Policy两个最核心的文件中,自定义完成环境准备和算法设计,具体的分布式逻辑都由平台层提供相应的服务完成,用户只需在配置文件中定义使用的计算资源和分布式逻辑选项即可。

不同的决策AI实际问题,由于环境和算法不同,对应最佳的分布式效率解决方案也不同。很难存在一套通用的技术栈解决所有类型的问题,因此,在实际实现中,OpenDILab会根据具体的运行状态进行自动化profiling,并自动选择相应的通信,存储,并行化方案。在DI-orchestrator, DI-hpc, DI-store等诸多底层效率优化模块的加持下,为使用者提供无痛的自动化效率优化体验。

扫码即可了解更多开源信息~

上海人工智能实验室牛雅哲:通用决策AI平台的开拓创新之路相关推荐

  1. 上海人工智能实验室刘宇:从感知AI的发展理解决策AI的未来

    刘宇,博士,上海人工智能实验室青年科学家,OpenDILab开源决策智能平台项目负责人,博士毕业于香港中文大学MMLab,研究方向为大规模深度学习优化问题和决策AI,发表人工智能领域顶会顶刊30余篇, ...

  2. 上海人工智能实验室自动驾驶团队校招实习同步进行中!

    上海人工智能实验室自动驾驶团队校招进行中!欢迎同学们积极向我们投递简历! 上海人工智能实验室--道路结构认知算法实习生 工作地点:北京 岗位职责: 1.高精地图生产系统中道路标志标线识别.矢量化提取等 ...

  3. 达摩院浙大上海人工智能实验室推出洛犀平台:大小模型端云协同进化

    来源:量子位 AI领域这股大模型之风,可谓是席卷全球,越吹越劲. 单说2021年下半年,前有微软英伟达联手推出5300亿参数NLP模型,后又见阿里达摩院一口气将通用预训练模型参数推高至10万亿. 而就 ...

  4. 万亿大模型究竟怎么用?达摩院浙大上海人工智能实验室联手推出洛犀平台:大小模型端云协同进化...

    鱼羊 发自 凹非寺 量子位 | 公众号 QbitAI AI领域这股大模型之风,可谓是席卷全球,越吹越劲. 单说2021年下半年,前有微软英伟达联手推出5300亿参数NLP模型,后又见阿里达摩院一口气将 ...

  5. 开源?结缘!Towhee 开源社区与上海人工智能实验室 OpenDataLab 成为开源生态合作伙伴

    今天,很荣幸向 Towhee 开源社区的伙伴和用户们.Milvus 开源社区的生态伙伴们分享这份喜悦:我们与上海人工智能实验室 OpenDataLab 在开源领域建立了合作伙伴关系! 希望在接下来的持 ...

  6. 上海内推 | 上海人工智能实验室招聘大语言模型算法研究实习生

    合适的工作难找?最新的招聘信息也不知道? AI 求职为大家精选人工智能领域最新鲜的招聘信息,助你先人一步投递,快人一步入职! 上海人工智能实验室 上海人工智能实验室(https://www.shlab ...

  7. 单卡30秒预测未来10天全球天气,大模型“风乌”效果超DeepMind,来自上海人工智能实验室...

    允中 发自 凹非寺 量子位 | 公众号 QbitAI 预测未来10天全球天气,仅需30秒. 这一成果来自全球中期天气预报大模型"风乌",这也是全球气象有效预报时间首次突破10天,并 ...

  8. MIT人工智能实验室推出「液态」神经网络 | AI日报

    带臂机器狗来了,捡垃圾.跳大绳.种花.写字,波士顿动力Spot迎来重大升级 今天,波士顿动力发布了Spot机器人全新视频,除了添加了一条机械臂,它还能实现捡垃圾.跳绳.种花等多种功能. Spot机器狗 ...

  9. 工业级成熟港航人工智能产品行业第一,中国上海人工智能独角兽中集飞瞳巅峰AI产品与核心技术处于全球顶尖水平智能港口智能船公司智能化

    国务院发布<"十四五"数字经济发展规划>提出,以数字技术与实体经济深度融合为主线,不断做强做优做大我国数字经济,聚焦人工智能与实体经济深度融合.中国人工智能独角兽 CI ...

最新文章

  1. “Python来玩微信跳一跳”教程(问题总结)
  2. linux 查本机公网ip 网站接口 nmap工具
  3. python numpy使用
  4. iec61131 3 html5,IEC61131-3{ed3.0}标准资料.doc
  5. JavaScript之ClassName属性学习
  6. linux添加自定义的命令!
  7. [转载] 数组快速排序python_python实现快速排序
  8. 计算机网络超详细笔记(四):介质访问控制子层
  9. 谷粒学院(二十一)网关Gateway
  10. 大学生计算机vfp,计算机vfp教学课件
  11. 实用软件工程(张海藩)课后答案
  12. 破解navicat时出现No All Pattern Found File Already Patched
  13. 基于深度学习的时间序列分类[含代码]
  14. 通过空气质量指数AQI学习统计分析并进行预测(上)
  15. 转行程序员后,我开始后悔没做这件事
  16. JAVA简单大数运算
  17. C语言 计算x的n次幂
  18. BZOJ4585 [Apio2016]烟火表演
  19. 20、实现短信验证码的登录注册功能
  20. react-native-web 阿里字体图标ttf文件不加载、乱码问题

热门文章

  1. fclose会写入硬盘吗 linux_Qt linux文件同步写入
  2. JS 星号 * 处理手机号和名称
  3. 敏捷开发knowledge
  4. 初始化Dictionarystring, object赋值
  5. Python之删除字符串中不需要的字符
  6. 栈的应用-四则运算表达式
  7. PHP多进程编程初步
  8. python之路——常用模块2
  9. SlidingMenu的简单使用
  10. 【iBoard电子学堂】【iCore双核心板】资料光盘A盘更新,版本号为A6