《国家人工智能标准化总体组:人工智能开源与标准化研究报告( 2019)(121页).pdf》由会员分享,可在线阅读,更多相关《国家人工智能标准化总体组:人工智能开源与标准化研究报告( 2019)(121页).pdf(121页珍藏版)》请在三个皮匠报告上搜索。
1、人工智能人工智能开源开源与与标准化标准化研究报告研究报告国家人工智能标准化总体组国家人工智能标准化总体组二零一九年四月二零一九年四月I目录目录第一章 概述.11.1 背景及目的.11.2 本报告的价值.21.3 本报告的脉络梳理与导读.3第二章 AI 产业现状及开源面临的宏观问题.42.1 AI 产业现状及产业链.42.1.1 基础层.52.1.2 技术层.62.1.3 行业应用层.72.2 AI 开源所存在的问题.92.2.1 法律道德问题.92.2.2 潜在锁定风险.102.2.3 安全问题.102.2.4 标准统一问题.102.2.5 版本兼容性问题.112.2.6 行业问题.11第三章
2、 AI 开源生态现状.123.1 AI 开源全栈(聚焦机器学习及深度学习).123.1.1 芯片使能.133.1.2 分布式集群.153.1.3 大数据支撑.163.1.4 数据管理.173.1.5 模型格式.183.1.6 深度学习框架.183.1.7 机器学习框架.193.1.8 知识图谱(知识库).203.1.9 强化学习.20II3.1.10 模型中间表示层 IR.213.1.11 端侧推理框架.223.1.12 高级 API.233.1.13 开放数据集.243.1.14 分布式调度.263.1.15 可视化工具.273.1.16 模型市场.273.1.17 应用类项目.283.2
3、开源组织.323.2.1 开源中国.323.2.2 开源社.333.2.3 OpenI 启智开源开放平台.353.2.4 Linux 基金会. 363.2.5 OpenStack 基金会. 373.2.6 Apache 基金会.383.3 组织/机构参与开源的角色及目的. 39第四章 AI 开源技术目前在落地中存在的问题与差距.404.1 AI 在应用时的总体工作流.414.1.1 概述.414.1.2 经过抽象的工作流实现.444.1.3 实际应用的 AI 工作流应具备的特点.474.2 当前 AI 技术在行业应用中的现状及问题.484.2.1 交通领域.484.2.2 油气领域.504.2
4、.3 公共安全领域.524.2.4 工业领域.554.2.5 电力领域.584.2.6 金融领域.604.2.7 医疗领域.62III4.3 问题总结及应对思路.644.3.1 AI 开源软件的数据支持.654.3.2 AI 开源软件的算法.664.3.3 AI 开源软件的分布式基础设施.67第五章 AI 数据开放及协同.695.1 AI 数据的关系和需求.695.1.1 面对的挑战.695.1.2 AI 数据开放和协同中的相关方.715.2 AI 数据开放和协同中相关行业分析.725.2.1 政府角度分析.735.2.2 医疗行业分析.745.2.3 金融行业分析.765.2.4 交通行业分
5、析.775.2.5 物流行业分析.785.2.6 制造行业分析.805.2.7 教育行业分析.815.2.8 石油行业分析.825.3 AI 数据开放和协同的可行性.835.3.1 顶层设计.835.3.2 法律法规.845.3.3 数据治理.855.3.4 开源数据平台建设.855.4 潜在解决方案.865.4.1 中心化模式.875.4.2 混合型模式.895.4.3 去中心化模式.905.4.4 没有初始数据的模式.92第六章 AI 领域开源与标准的关系.936.1 开源与标准联动的案例.93IV6.1.1 容器.936.1.2 大数据文件格式.946.1.3 OPNFV(网络功能虚拟化
6、). 956.2 AI 领域开源与标准联动的思考.966.3 本次标准机遇研究的范围与内容.976.3.1 行业应用标准.986.3.2 AI 平台标准.986.3.3 安全标准.1046.3.4 应用智能化水平评估.1056.4 制定人工智能标准中要考虑的因素.1066.4.1 伦理与社会关注.1066.4.2 监管与治理因素.1076.4.3 把握开源与标准平衡,促进创新与产业发展.108结 语.109附录 A.110表 A.1 AI 开源项目社区活跃度指标统计.110附录 B.113表 B.1 第五章技术术语表.113表 B.2 第六章技术术语表.1151第一章第一章 概述概述1.11.
7、1背景及目的背景及目的自 2013 年以来,随着深度学习技术的不断发展,引发了新一轮人工智能热潮,诸如:AlphaGo、刷脸支付、无人驾驶、AR、无人超市等应用层出不穷。大量资本和并购的涌入,加速了人工智能和产业的结合,人工智能甚至有可能成为是继蒸汽机、电力和计算机之后,人类社会的第四次革命。人工智能(Artificialintelligence,AI)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。在历史上,人工智能有过很多个定义,但是迄今为止没有一个官方的、统一的、正式的定义。人工智能最早由麻省理工学院的 John McCarthy 在 1956 年
8、的达特矛斯会议上提出的: 人工智能就是要让机器的行为看起来就像是人所表现出的智能行为一样。世界各国纷纷将发展人工智能作为抢抓下一轮科技革命先机的重要举措。 随着人工智能领域国际竞争的日益激烈,2017 年国务院印发新一代人工智能发展规划,提出我国新一代人工智能发展的指导思想、战略目标、重点任务和保障措施,为部署构筑我国人工智能发展的先发优势,加快建设创新型国家和世界科技强国构建了基础。本报告中的开源指源码公开、源数据公开及其他成果形式(如软件、系统或平台架构等)的公开。近年来开源技术蓬勃发展,诸如计算机视觉开源社区OpenCV、开源数据集 ImageNet、开源智能终端操作系统 Android
9、 和其他大量开源工具及平台,无不表明开源创新与协同有力推动了产业进程。同理,人工智能尤其是深度学习相关的开源蓬勃发展, 也将对我国人工智能相关产业产生积极影响。第一,人工智能开源有助于支撑人工智能领域形成高端产业集群优势,逐步引领世界前沿技术的发展。第二,人工智能开源有助于吸引更多人才进入人工智能产业,建设多层次人才培养体系。第三,人工智能开源有助于推动人工智能广泛应用,加快推动人工智能与各2行业的融合创新和赋能。1.21.2本报告的本报告的价值价值本报告旨在为政府及行业的政策制定者、企业业务决策者、技术决策者提供参考,促进经济社会各领域智能化转型,加速人工智能技术在全行业应用落地。(1)促进
10、人工智能产业的发展提升报告集成了各行各业在人工智能领域的经典案例, 提供了丰富的知识积累和发展经验,可以帮助决策者快速形成发展思路(包括实现方法和风险评估),促进行业的发展提升。(2)加速人工智能技术的应用落地报告描述了机器学习、深度学习开源技术全栈,通过介绍开源工具平台及基准的方法论,降低行业人员学习和应用人工智能的技术门槛,提升研发速度,降低研发和运维管理成本, 使前沿技术和新兴算法能快速运用到具体领域业务中并创造价值。(3)推动人工智能生态圈建设报告所描述的人工智能领域的经验和需求能够促进人工智能生态圈的良性发展,促进企业的技术创新。标准与开源的联动能使产业发展更加健康。(4)推动产业以
11、更开放的心态进行协同创新报告所倡导的开源开放的业态有助于推动中国人工智能开源走向更深层次,例如数据开放协同的文化及平台建设、开源分享思维和隐私保密需求的平衡等。报告会给出开放数据平台的构建思路及四种可供参考的方案。3图图 1 本报告的本报告的四四大价值大价值1.31.3本报告的脉络梳理与导读本报告的脉络梳理与导读本次报告分为如下几个部分:第二章对 AI 的产业现状及人工智能开源落地行业的宏观问题进行描述。首先分析了国际国内当前 AI 产业集聚情况,从基础层、技术层和行业应用层等三个层次深入描述了 AI 产业链现状,提及了工业、医疗、电商等典型领域的应用场景,然后对 AI 开源面对的法律道德、垄
12、断风险、标准统一等系列问题进行了深入探讨。第三章主要对人工智能开源现状及相关生态做一个全面的分析, 包括人工智能开源项目(聚焦机器学习、深度学习)的全栈图,并给出全栈各层的定义。其次从各层挑选一些典型的项目来分析其技术及生态特点、 主要的发起及参与的公司及个人。此外也介绍相关的开源组织,包括国内的组织如开源中国、国际组织如 Linux 基金会及 Apache 软件基金会,然后分析各组织、公司在重要开源项目中的角色及目的。第四章首先介绍了 AI 在应用时的总体工作流,然后系统化地分析当前基于开源的人工智能技术在解决行业具体问题时还有哪些不足、开源起了什么作用、还有哪些短板、在全栈中还有哪些缺失等
13、,试图从技术生产者及技术消费者两个纬度来阐述人工智能开源技术是否可以解决所有问题。第五章主要阐述新一代数据驱动的人工智能将给传统以代码为核心的开源4理念带来哪些挑战,从政府角度以及一些典型行业出发分析 AI 数据开放和协同中存在的问题,从顶层设计、法律规范、数据治理、开源数据平台建设说明 AI数据开放和协同的可行性,最后给出四种可行性技术架构推动新一代开源运动(Open Source Movement) 的升级,实现“开放生态圈平台”(Open EcosystemPlatform)的愿景。第六章将着重阐述人工智能领域开源与标准的关系和相互促进。 首先介绍在云计算、大数据、电信网络等几个成功的开
14、源与标准联动的案例,随后阐述人工智能领域开源与标准的相互关系和联动建议, 并针对人工智能落地过程中的问题梳理出标准的机会,最后阐述在标准制定中可能遇到的问题以及相关思考。第二章第二章 AI 产业现状及开源面临的宏观问题产业现状及开源面临的宏观问题2.12.1AI 产业现状及产业链产业现状及产业链现有 AI 开源产品在行业中的应用越来越多, 一些企业利用自身的技术优势,重点打造 AI 应用开放平台,提供语音引擎、视觉引擎、自然语言处理引擎等众多 AI 基础技术;围绕开放平台,构建人才生态和行业生态,全面覆盖教育、金融、家电、医疗、手机、汽车、安防等领域,在内业已产生巨大的经济价值和社会价值。伴随
15、着应用场景的快速发展,数据开源会成为新的趋势,数据收集和标注的标准化需求也会越来越迫切, 业内也产生了一批从事数据收集和标注的初创公司和平台。目前,全球涉及人工智能的企业集中分布在美国、中国、加拿大、德国等少数国家或地区,且在美国和中国的企业数量已占全球的半数以上。美国和中国依靠其卓越的技术研发机构及融合丰富应用场景的各类实验室, 协同领衔全球人工智能的发展,奠定了雄厚的技术基础。中国当前具有多个人工智能聚集中心和地方特色人工智能发展产业,其中以北京与天津、上海与杭州、深圳与广州为重点城市群抱团发展的产业格局逐步显现,形成三大人工智能聚集中心。图 2 是我们制定的人工智能参考框架图, 图 3
16、是人工智能领域目前在产业界应用的全景图。在产业全景图中的“基础设施”层对应了参考框架中的“数据”与“算力”,产业全景图中的“关键技术”层对应了参考框架中的“算法”,产5业全景图中的“智能系统”及“行业应用”对应了参考框架中的“产品与服务”。图图 2 人工智能参考框架图人工智能参考框架图图图 3 人工智能产业生态圈全景图人工智能产业生态圈全景图人工智能产业链宏观上由基础层、技术层和应用层等三个层次组成,其中基础与核心技术的研究主要分布在大企业及科研机构, 而应用层的研究测试在大中小企业均有涉及,形成了全面开花、全行业覆盖的局面。2.1.12.1.1基础层基础层芯片研发作为基础层的核心,已成为人工
17、智能发展的关键因素。芯片在技术架构方面可分为通用类芯片(如 CPU、GPU 等)、半定制化芯片(如 FPGA 等)、6全定制化芯片(如 ASIC 等)和类脑计算芯片。目前 GPU 是深度学习训练平台的主流配置,而 FPGA 的灵活可编程特点可以使得在算法未完全成熟时切入市场,同时其低功耗特性也被大型数据中心所青睐。 在专用人工智能芯片领域, 自 2016年 Google 发布了 TPU 芯片后,这一市场热潮不断。国内如寒武纪、地平线、华为海思等公司也纷纷研发出可规模商用的人工智能专用计算芯片。随着物联网技术的不断发展,传感、计算、通讯、AI 等功能的集成变得尤为重要,若每个功能均依靠单一芯片,
18、不但效率低下,而且能耗和成本都很高,因此将不同的功能整合在一起,构建异构芯片,会极大缓解上述问题。由 AMD、ARM、华为、HXGPT、高通、IMAGINATION 和三星等公司组成的全球异构系统架构(HSA) 联盟在 2017 年成立了中国区域委员会(CRC)。CRC 的任务是以构建 HSA生态系统为侧重点,提高对异构计算的意识认知,并促进 HSA 在中国的标准化进程。新一代人工智能依赖于海量数据的处理、存储、传输,因此离不开云计算。云计算是把大量的计算资源封装抽象为 IT 资源池,用于创建高度虚拟化的资源供用户使用。通过动态整合、共享硬件设备供应来实现 IT 投资的利用率最大化,降低了使用
19、计算的单位成本及 IT 运维成本,促进了人工智能产业的商业化进程。2.1.22.1.2技术层技术层目前技术层中的核心技术主要由科技巨头企业掌控,如微软、亚马逊、Google、Facebook、百度、阿里、腾讯、京东、小米、商汤等。此外,一大批初创企业和开源组织也陆续加入其中。它们共同探索和推进 AI 技术的发展,催生出了一批在业内有深远影响力的开源项目,如 TensorFlow、PaddlePaddle、Caffe、CNTK、Deeplearning4j、PyTorch 、Mahout、MLlib。这些科技企业,通过招募 AI高端人才及组建实验室等方式加快关键技术研发, 并通过开源技术平台构建
20、生态体系。技术层面, 包含机器学习、 知识图谱、 自然语言处理、 虚拟现实或增强现实、计算机视觉、生物特征识别、人机交互等技术与应用场景相结合,从而衍生出大量的智能化产品与服务,包括智能家居、智能机器人、智能搜索引擎、智能问答系统、一体机 VR、无人驾驶汽车、人脸识别系统、智能客服等。72.1.32.1.3行业应用层行业应用层人工智能是制造业数字化、网络化、智能化转型发展的关键引擎,是促进实体经济发展的重点方向。 近年来各国政府和产业界纷纷采取行动推进基础性研究及产业实践部署,人工智能的各种应用如机器人、无人驾驶、智能客服等百花齐放,大中小企业均有涉及,形成了全行业全覆盖的局面。本次报告的写作
21、单位涉及了如下行业:工业制造、医疗、电商、公安、金融、消费电子、交通、物流、航空、能源、政务等,因此下面报告中不论是行业案例还是痛点分析等主要以它们为主。同时这些行业也是在 AI 应用中诉求比较明确的领域。2.1.3.12.1.3.1工业工业人工智能在工业领域深度融合新一代信息通信技术与先进制造技术, 贯穿于设计、生产、管理、服务等制造活动的各个环节,引导具有自感知、自学习、自决策、自执行、自适应等功能的新型生产方式。人工智能在工业领域进一步融合拓展的应用方向还有机器视觉检测分拣、人机交互、可视化及 AR/VR、行业知识图谱及知识自动化等,支持工业设备能耗预测与优化,增强工业设备预测性维护和智
22、能故障诊断,为企业生产个性化需求、企业运行优化及产品生命周期控制提供辅助决策,进而提升制造质量水平和企业经济效益。2.1.3.22.1.3.2医疗医疗基于图像分析技术的影像辅助诊断和医学病理分析相结合, 提供了更准确的临床诊断,同时提升了医疗服务的效率。在健康趋势分析、疾病预测、影像辅助诊断等领域引入人工智能技术,可以有效预测疫情并防止其进一步扩散和发展,提供患者预前和预后诊断和治疗的评估方法和精准诊疗决策, 有效提高医护人员工作效率和诊断水平, 从而在整体上为医疗健康领域向更高的智能化方向发展提供了非常有利的技术条件。82.1.3.32.1.3.3电商电商在电商领域,无人店、无人货架纷纷引入
23、人脸识别、货物识别等先进技术,实现无人值守,融合人工智能的仓储机器人,实现了货物的识别、拣选和自动搬运等功能,极大解放了生产力。通过对消费者历史购买行为的深入分析,提供了更精准的目标客户营销和商品推荐。2.1.3.42.1.3.4公共安全公共安全在安防领域,通过支持前端提取信息,如采用在复杂场景下的人车混合多特征结构化信息技术,提取人脸属性、人脸轨迹、车牌车型等特征属性,利用人工智能对视频、图像进行存储和图像比对分析,建立危险人数图像库,从而识别危险隐患并进行安全处理,是构建未来智慧城市安防体系的基础,在反恐维稳、犯罪预警、案件侦破和网络音视频监管等领域具有重要应用价值和广泛的应用前景。2.1
24、.3.52.1.3.5金融金融在金融领域可以借助大数据, 以人工智能为内核支持金融行业的用户画像识别、资产信息标签化、智能获客、身份认证、智能化运维、智能投顾、智能理赔、反欺诈与智能风控、大数据征信、网点机器人服务等应用场景,对于提高金融系统管理效率、拓展金融新业务、防范金融风险等方面意义重大。2.1.3.62.1.3.6智能终端智能终端/个人助理个人助理以住宅为平台,基于物联网技术,由硬件、软件系统、云计算平台构成的家居生态圈,实现远程控制设备、设备间互联互通、设备自我学习等功能,并通过收集、 分析用户行为数据为用户提供个性化生活服务。通过人机交互应用在多种服务行业的咨询、指引、查询、讲解和
25、业务办理等应用场景;与 APP 连接,实现硬件控制、日程管理、信息查询、生活服务、情感陪伴等。92.1.3.72.1.3.7交通交通借助移动通信、宽带网、射频识别、传感器、云计算等新一代信息技术作支撑,利用摄像头监测交通路况和车辆信息,联通各个核心交通元素,广泛应用人工智能技术、统计分析技术、数据融合技术、并行计算技术等处理海量交通信息数据,实现信息互通与共享,以及交通元素间彼此协调、优化配置和高效使用,形成人、车和交通的一个高效协同环境。2.1.3.82.1.3.8物流物流利用智能搜索、推理规划、计算机视觉、智能机器人、大数据分析以及射频识别、 自动感知、 全球定位系统等先进的物联网技术,
26、应用于物流业运输、 仓储、配送、包装、装卸等基本活动环节,实现智能物流系统的线路规划、人车资源调配、自动化运作和高效率优化管理,提高物流效率,提升物流行业的服务水平,降低成本,减少自然资源和社会资源消耗。2.1.3.92.1.3.9航空航空利用机器学习、知识图谱、自然语言处理、人机交互、计算机视觉、生物特征识别、AR/VR 为基础的感知与认知、决策执行与控制、交互与协同、检测与维护等内容,应用于人脸识别安检、智慧航显、航空发动机预测健康管理及航空大数据分析、路径规划、任务规划、集群管理、目标识别、战术决策、毁伤评估、质量评估和可靠性实验检测等方面。 不论民用还是军用航空领域, AI 可以实现人
27、与机器智能的结合,全面提升观察-调整-决策-行动(OODA)环的运行速度和运行质量。2.22.2AI 开源所存在的问题开源所存在的问题2.2.12.2.1法律道德问题法律道德问题随着人工智能的发展,其已经逐渐涉及到违法犯罪的黑色领域,被大肆用于10诈骗、色情、犯罪、甚至未来的战争中。例如,无人车、无人机等设备可以在不依赖人的情况下自主做出决策,做出危及人身安全的动作。这些新的情况将会带来伦理、道德和法律上的一系列危机,亟待相关专家给出合适的解决方案。高质量、大规模的数据一般会认为是企业的重要资产,开源或开放后可能导致丧失竞争优势,缺少让数据开源贡献者获得合理回报的机制。另外,数据和模型很难保护
28、自身知识产品不被竞争对手抄袭,甚至直接使用,这对企业进行数据开源形成了很大阻力,因此需要建立合适的政策保护机制。2.2.22.2.2潜在锁定风险潜在锁定风险目前虽然有大量的开源技术和软件可以使用,但是背后的厂商如谷歌、Facebook、亚马逊、苹果对这些开源技术也掌握着绝对话语权。一旦使用开源软件的某些厂商利益跟上述公司相冲突, 不排除被取消软件授权或者相关软件不再更新的可能性。企业基于自身的相关考虑,将相关项目进行开源,然而由于企业自身存在大量业务开展,因此导致其开源的相关项目的维护不及时,一旦项目停止维护,项目的使用者则面临进退两难的困境,平台迁移成本太高,但若不迁移平台,业务也无法得到平
29、台新的支持。2.2.32.2.3安全问题安全问题AI 开源工具虽有开放、共享、自由等特性,企业在享受开源技术带来的便利的同时,也存在巨大的安全风险。由于源代码公开,所有发现的漏洞都会被第一时间公布,因此也容易被攻击者利用;由 AI 开源技术形成的软件,其最终使用用户往往得不到最及时的更新,并且在软件开发和验收过程中,不易准确判断软件里包含哪些开源组件,容易造成安全隐患。另一方面,AI 开源代码在社区中一般由相应的团队或个人开展维护工作, 缺乏对应的激励机制保障代码查找漏洞或及时更新,也会导致用户疑虑,降低 AI 开源技术及产品的推广使用。2.2.42.2.4标准统一问题标准统一问题不同于其他开
30、源软件,当前 AI 开源模式不够充分,仅限于开源 AI 框架,数11据开源力度不足,对 AI 技术的应用形成了壁垒。深度学习方面,AI 已开源框架、工具缺乏基本的统一标准, 造成不同框架下的模型算法兼容困难; 硬件优化方面,AI 开源软件大多在 X86 和 GPU 上进行优化,很少有在其他体系结构上进行优化的项目;数据格式方面,AI 开源目前多是针对深度学习的开源项目,而深度学习需要大量的训练数据,数据问题将许多公司卡在门外;模型算法方面,从数据和模型研究到形成产品方案之间存在明显差距。很多开源的 AI 算法,仅在所限定的理想条件下有效,难以适应复杂的实际应用环境,且在大规模分布式计算与存储环
31、境下效果不佳。2.2.52.2.5版本兼容性问题版本兼容性问题不同开源工具的兼容性问题导致整合困难, 同一开源工具的不同版本之间也存在兼容性问题。开源社区涌现了一批以 Caffe、MxNet、TensorFlow、Torch 等为代表的热门 AI 开源开发框架,这些框架简化了 AI 技术的工程实现难度,但是每个框架之间接口不统一,模型格式不一致,在一定程度上造成了在各个框架之间迁移成本较高的问题,使得模型的复用较为困难,同时也增加了用户的学习成本,为在不同场景下使用不同开发工具造成了一定的障碍。即使对同一 AI 开发框架, 接口调整较频繁, 每次升级都会导致不少额外工作量; 变化内容较为激进,
32、项目自身向上兼容能力较差,导致企业/个人在更新开源软件时带来极大风险,同时也增加了用户的学习成本。2.2.62.2.6行业问题行业问题虽然当前 AI 已开始逐步应用,但各行业因为自身的属性,均面临一些棘手的难题,制约着 AI 朝更深入、更广泛的方向应用。由于前期研发周期较长,相关领域技术人才缺乏,且雇佣成本较高,实际经济回报难以预估,许多企业不敢冒险尝试。另外,智能制造领域中的人工智能标准及开源代码仍然相对较少,无法满足当前人工智能技术的标准化需求,并制约着我国人工智能应用的有序、规范、健康发展。传统金融机构历史包袱重,多数核心系统难以迅速采用开源 AI 技术;金融行业注重客户的数据隐私保护,
33、 数据的使用制约限制了人工智能相关模型的有效12性;既懂金融业务、又懂开源 AI 技术的人才也极度稀缺。航空航天行业背景特殊,需要有针对性地进行开源。目前完全出于航空航天领域考虑的 AI 框架少,技术架构不明晰,且军事领域由于出于安全问题考虑,公共技术移植也较少;此外,在民用领域,从飞控系统的开源开始,就不断打开了无人机的进入门槛,但是对于开源的安全性和稳定性还有待考虑,对于开源的质量评定等还处在探索阶段。第三章第三章 AI 开源生态现状开源生态现状3.13.1AI 开源全栈(聚焦机器学习及深度学习)开源全栈(聚焦机器学习及深度学习)人工智能标准化白皮书(2018 版)中对 AI 技术栈分为:
34、智能芯片、智能传感器、机器学习、知识图谱、自然语言处理、人机交互、计算机视觉、生物特征识别及虚拟现实/增强现实等。考虑到目前 AI 领域开源主要是在机器学习,尤其是深度学习领域,而且这也是目前 AI 技术创新与落地的主要领域,本报告总体上聚焦分析深度学习中的开源技术、所面临的问题以及相关的技术创新、标准化的机遇等。基于如上考虑,后续除非特别指出,在本报告的语境中,AI 主要对应的是机器学习/深度学习这一领域。图图 4AI 开源全栈示意图开源全栈示意图13上图是目前比较活跃的机器学习及深度学习的开源社区及项目所形成的开源全栈示意图,整个开源全栈被分为四个层次:(1)基础设施AI 芯片是为 AI
35、计算设计的高性能芯片,业界有 AI 芯片设计、指令集、编程框架等开源芯片使能项目;同时 AI 工作负载(训练、推理、数据准备与治理、生命周期管理等)计算量大,对存储、网络传输等要求高,需要依赖分布式部署和承载的软件平台。这两部分构成了 AI 框架的基础设施层。(2)深度学习/机器学习(DL/ML)引擎深度学习/机器学习(DL/ML)引擎主要指深度学习/机器学习框架,包括训练与推理,以及与二者相关的模型格式、框架内数据格式等,同时也包括训练及推理之前的数据准备与数据管理。(3)应用使能应用使能包括数据科学家、 AI 算法工程师在准备数据与使用训练框架之外的所有周边工作,主要包括任务视角的集群管理
36、、数据可视化、框架易用性,以及模型/数据市场及端到端的生命周期管理。(4)AI业务AI 业务主要指基于 AI 基础及通用能力之上构建的领域 AI 服务,涵盖视频、语音、图像文本等。以下是各组成部分的主要分类、描述和相关项目(按图中数字标识顺序):3.1.13.1.1芯片使能芯片使能深度学习需要大量重复执行矩阵乘法、激活函数(如 sigmoid、tanh)等计算过程。通用 CPU 执行上述计算的性价比较低,需要采用专用的计算芯片。适合 AI 计算的芯片包括 GPU、FPGA 或者 ASIC 方案,它们通过把 AI 中常用函数计算硬件化来提升硬件计算速度、降低功耗。其中热门的开源技术包括开源的指令
37、集、开源硬件实现方案、异构计算框架和编译器等。DLA 是 NVIDIA 基于 Xavier SoC 的一个深度学习开源加速平台, 适合于端侧推理场景的芯片 SoC。DLA 是一个卷积神经网络加速器(只能推理,并不能进行训练),它还需要外部的 CPU 和内存单元才能完整驱动整个加速器,CPU 通过14中断和 CSB 总线控制 NVDLA 加速器。链接:http:/nvdla.org/RISC-V 是基于精简指令集计算(RISC)原理建立的开放指令集架构(ISA)。 RISC-V是开源的指令集,可以免费地用于所希望的设备中,允许任何人设计、制造和销售 RISC-V 芯片和软件。基于 RISC-V
38、指令集架构可以设计服务器计算芯片、家用电器计算芯片、工控计算芯片和比指头小的传感器计算芯片。链接:https:/riscv.org/LLVM 是构架编译器(compiler)的框架系统, 用 C+编写而成。 项目启动于 2000年,最初由美国 UIUC 大学主持开展发起的一个开源项目,目前 LLVM 已经被苹果 IOS 开发工具、Xilinx Vivado、Facebook、Google 等各大公司采用。链接:https:/llvm.org/OpenCL 当前由 Khronos 集团管理,是一个为异构平台编写程序的框架。此异构平台可由 CPU、GPU 或其它类型的处理器组成。OpenCL 由一
39、种用于编写kernels(在 OpenCL 设备上运行的函数)的语言(基于 C99)和一组用于定义并控制平台的 API 组成。链接:https:/www.khronos.org/opencl/Vulkan 也由 Khronos 集团开发,使软件开发人员能够全面获取 RadeonGPU 与多核 CPU 的性能、效率和功能,大幅降低了 CPU 在提供重要特性、性能和影像质量时的 “API 开销” , 而且可以使用通过 OpenGL 无法访问的 GPU 硬件特性。链接:https:/www.khronos.org/vulkan/Cyborg 是 OpenStack 社区中的一个官方项目, 能够提供异
40、构加速硬件通用管理框架。Cyborg 提供面向异构加速硬件的基础生命周期管理能力(CRUD 操作),通过抽象通用的数据模型与统一的管理操作 API,为用户提供统一的异构计算资源使用体验,而无需针对每一种异构加速硬件特别构建管理模块。同时,Cyborg提供异构加速硬件管理元数据的标准化, 使得资源描述和业务需求之间的映射关系更加准确, 在调度上可以更加通用与便捷。 作为通用的异构计算资源管理框架,Cyborg 提供了如下标准化接口: 挂载与卸载异构计算设备 创建异构计算设备 删除异构计算设备 更改异构计算设备15 查询异构计算设备 可编程异构计算设备的烧写 异构计算设备的租户配额控制基于以上的标
41、准化接口,用户可以通过云计算基础设施平台为其 AI 业务分配合适的异构计算资源, 从而避免 GPU 资源调度不均、 新的异构计算设备(如 ASIC等)接入困难等平台相关的难题。链接:https:/wiki.openstack.org/wiki/Cyborg3.1.23.1.2分布式分布式集群集群云计算平台对人工智能的基础支撑包括异构计算的部署和开发工具两个方面。在异构计算方面,GPU 已成为深度学习训练平台的主流配置;FPGA 的灵活可编程特点可以使得在算法未完全成熟时切入市场并方便地进行迭代, 同时其低功耗特性也被大型数据中心所青睐;2016 年 Google 发布了 TPU 芯片,为机器学
42、习提供定制化加速。在开发工具方面,现阶段业界有很多机器学习开发框架,云平台将这些框架服务化并进行针对性的优化, 极大降低了人工智能开发的准入门槛。当前,AI 训练平台的部署已经形成以容器技术为基础的自动化部署趋势。各种 AI 公司或者互联网公司的 AI 部门都在尝试如何在 Kubernetes (K8s)上运行 TensorFlow、Caffe/2+PyTorch、MXNet 等分布式学习任务。不同的 AI 平台对集群分布式部署有不同的需求,也带来了配置难题。针对这些问题,各种部署工具也应运而生。Google KubeFlow 正在不断完善 TensorFlow 在 K8s 集群上的部署、运维
43、、参数调优等功能支持,并且已经有 TNN 等公司向 KubeFlow 贡献特性。链接:https:/ IBM 发起的 FfDL 是针对 TensorFlow、 Caffe、 PyTorch 等多个 AI 平台在 K8S进 行 部 署 的 工 具 , 目 前 只 实 现 了 基 本 的 部 署 功 能 。 链 接 :https:/ Paddle 非常推崇在 K8S 上进行 AI 平台的部署,Paddle EDL 项目在 K8S上 提 供 了 资 源 利 用 率 、 弹 性 调 度 、 容 错 等 部 署 能 力 。 链 接 :http:/www.paddlepaddle.org/OpenStac
44、k 社区也加强对 GPU 等硬件的支持,同时也出现了一些支持 AI 平16台部署的项目。链接:https:/www.openstack.org/3.1.33.1.3大数据大数据支撑支撑Apache Hadoop 已经成为大数据处理领域事实上的标准。Hadoop 作为一个完整的大数据处理生态圈,包括多个组件:分布式文件系统 HDFS、并行化计算框架 MapReduce、非关系型数据库 HBase、分布式协调系统 Zookeeper 等。国内外知名的 IT 公司,例如 Yahoo、亚马逊、百度、阿里巴巴等,都利用 Hadoop 集群批量处理上 PB 级别的数据。链接:http:/hadoop.ap
45、ache.org/Hadoop 技术为大数据技术的应用提供了很好的支撑环境,优势主要体现在以下几处: Hadoop 本身是开源社区,方便定制; 扩展性好,安全性高; 社区活跃,得到多个大公司的支持; 成本低,开发周期短,技术成熟。Apache Spark 是一个快速、通用、开源的集群计算系统,是适用于大规模数据处理的统一引擎。它可提供 Java、Scala、Python、R 语言的高级 API,能够高性能执行图计算,支持诸如 Spark SQL、结构数据处理、机器学习、图计算、流计算等多种高级工具。Spark 既可以单机方式运行,也可通过 YARN 在 Hadoop 集群上运行,它可兼容 Ha
46、doop 数据,能够处理任何 HDFS、HBase、Cassandra、Hive以及其它 Hadoop Input Format 的数据。Spark 既可运行批处理作业,又可处理流计算、交互查询、机器学习等新型作业。Apache Hadoop YARN (Yet Another Resource Negotiator, 又一种资源协调者) ,作为一个开源的通用资源管理系统,是一种新的 Hadoop 资源管理器,为上层应用提供统一的资源管理和调度,为集群在利用率、资源统一管理和数据共享等方面带来巨大好处。YARN 的基本思想是将资源管理、任务调度与监测分散到不同的进程中。资源管理器(RM)掌控全
47、局,每个应用有自己的应用主控器(AM),应用要么是单独作业,要么是有向无环图作业。YARN 是 Hadoop 的扩展,它不仅可以支持 MapReduce 计算,还能管理诸如 Hive、Hbase、Pig、Spark/Shark 等应用,从而使得各种类型的应用互不干扰地运行在同一个 Hadoop 上面,并通过17YARN 从 系 统 层 面 进 行 统 一 管 理 , 共 享 整 个 集 群 资 源 。 链 接 :https:/hadoop.apache.org/3.1.43.1.4数据数据管管理理作为 AI 训练的前置需求,数据发现一直是企业在实施 AI 过程中消耗资源最为巨大的部分。Data
48、Catalog 作为解决数据发现难题的手段,被主流厂商和社区所重视。DataCatalog 旨在通过对复杂场景下的多数据中心、多种数据源进行元数据(MetaData)统一管理来解决数据逻辑统一、物理分布的数据共享问题。在开源社区领域,作为大数据端到端的数据治理方案包括: Apache Atlas (元数据治理)、Avro(统一数据交换格式)。伯克利大学的 RISELab Ground 项目也是专注于 Big Meta Data 管理,通过管理数据上下文,解决数据使用效率低下、治理困难等问题。Apache Atlas(元数据治理)是一个可扩展核心数据治理服务集,支持数据分类、集中策略引擎、数据血
49、缘、安全和生命周期管理,该项目支持管理共享元数据、数据分级&分类、审计、安全性以及数据保护。使企业能够有效地和高效地满足数据的合规性要求。链接:https:/atlas.apache.org/Apache Avro 可以将数据结构或对象转化成便于存储或传输的格式。Avro 设计之初就用来支持数据密集型应用,适合于远程或本地大规模数据的存储和交换。avro 支持跨编程语言实现(C, C+, C#,Java, Python, Ruby, PHP)。avro 依赖于一套可定义的 Schema,通过动态加载相关数据的 Schema,可以有效减少写入数据的开销,使得序列化快速轻巧。链接:https:/a
50、vro.apache.org/RISELab Ground 是一个数据湖(data lake)context 管理系统。它提供了一个RESTful 服务的机制,让用户去推论他们拥有什么数据,数据从哪里来向哪里去,谁在使用数据,数据何时变化,为什么会有这种变化等。通过管理数据上下文,解决数据使用效率低下、治理困难等问题。Ground 提供了一个通用 API 和追踪信 息 的 元 模 型 , 可 以 和 很 多 数 据 储 存 库 一 起 工 作 。 链 接 :https:/rise.cs.berkeley.edu/projects/ground/183.1.53.1.5模型格式模型格式ONNX