前两天参加了在南京举办的第二届互联网架构峰会,因为个人能力有限,只听了两场和AI有关的,在这里做个简单的总结记录下此次峰会的心得。
第一场 企业级人工智能平台化之路
在当前企业中实施人工智能的主要障碍有以下几点:
- 交叉型人才需求大,但是供应少
个人认为就是会做ai的大多数业务能力都不是很强,企业需要那种可以将ai落地到实际项目中的人。
- 数据整合但是和业务没有联系起来;数据量大但标记困难;
在实际业务操作过程中产生的数据并不适合直接用来作为机器学习的样本。监督学习是需要对样本数据进行标记的,虽然在业务操作过程中会产生大量的数据,但是却并没有预见性的将这些数据进行标记,所以当数据累积到一定程度后,标记也会变得越来越复杂。
- 企业业务分析过程难以标准化
目前对于AI在企业业务的落地上并没有一套标准化的流程,每家企业都有各自的解决方案。
- 业务场景复杂,客户需求很难在平台上一站式实现
简单来说就是现在的AI太笨了,客户的需求还不能通过AI满足。
人工智能开发者的工作场景
-
小团队或者初创公司
收集、清理、建模、部署
scratch from code,端到端完成一切
-
中型公司
机器学习研究人员与业务专家合作
使用某个平台帮助训练海量模型
-
大型企业
构建自己的机器学习平台
抽象各业务单元的共性需求,在标准的开源模型和架构上开发支撑业务的平台
大规模推进人工智能技术嵌入产品
因为公司体量的问题,小公司没有足够的人力和物力去构建自己的机器学习的平台,所以只能将精力放到收集/清理数据上,然后利用数据完成建模并部署到大型企业的机器学习平台上。而中型公司有一定的数据量和人力,此时为了自身数据的安全性等方面的问题,除了训练模型可能会放在平台上,尽可能的在企业内部完成机器学习和业务的相关合作。而大型企业有足够的能力去搭建自己的机器学习平台甚至是开源机器学习的框架,比如Google的TensorFlow,百度的PaddlePaddle等,同时他们也会有相对成熟的人工智能的落地产品比如Google的Google Assistant,百度的小度等,他们需要引领整个时代的前进,因而对他们来说是需要大规模的推广自己的人工智能的产品,而不是单纯的人工智能和业务的结合。
企业内部落地人工智能产品的关键步骤
确定商业价值的应用场景
-
准备数据,关注数据的完备性和可用性
关键业务数据缺失
基础数据完整但组织内存在信息孤岛
数据整合但是和业务无法联系
数据驱动的决策,但是无法快速响应
数据驱动,实时响应业务的变化
快速迭代验证和实施
人工智能是如何融入产品的研发流程的?
-
迭代开发
人工智能更多的时候是融入一个大产品中,减少成本,改善用户体验或者代替人力。
结合具体业务专家迭代算法,并逐步进行标准化落实到平台内。
人工智能的模型不是一次就能成型的,需要根据数据的不断变化,模型也需要改变。
在没有多面手的情况下,业务专家和开发人员更要密切协作。
MVP 开发节奏依然可用。从开始就构建出端到端的业务流程非常重要。
-
以云平台的形式提供企业内部服务
降低用户使用的成本
便于沟通和分享
产品经理和工程师的沟通方式改变
机器学习开发流程和支撑平台
第二场 基于移动端的tensorflow相关技术进展
听这场主要是因为自己最近在学习tensorflow,再者就是想见识下Google大佬,其实干货不多,更多的就是介绍了下tensorflow目前的发展状况,
TensorFlow 现状
TensorFlow.js是一个利用 WebGL 来进行加速的机器学习类库,它基于浏览器,提供了高层次的 JavaScript API 接口。
- 移动端有 TensorFlow Lite
Google 表示 Lite 版本 TensorFlow 是 TensorFlow Mobile 的一个延伸版本。此前,通过TensorFlow Mobile API,TensorFlow已经支持手机上的模型嵌入式部署。TensorFlow Lite应该被视为TensorFlow Mobile的升级版。有了TensorFlow Lite,应用开发者可以在移动设备上部署人工智能。
- 同时支持swift语言使用TensorFlow
使用swift运行TensorFlow——Swift for TensorFlow
- 开源的TensorFlow资源库——TensorFlow Hub
TensorFlow Lite的架构
组件包括:
TensorFlow 模型(TensorFlow Model):训练后的 TensorFlow 模型,保存在磁盘中。
TensorFlow Lite 转换器(TensorFlow Lite Converter):该程序将模型转换成 TensorFlow Lite 文件格式。
TensorFlow Lite 模型文件(TensorFlow Lite Model File):该格式基于 FlatBuffers,经过优化以适应最大速度和最小规模。
然后将 TensorFlow Lite 模型文件部署到移动 App 中:
Java API:安卓设备上适用于 C++ API 的便利封装。
C++ API:加载 TensorFlow Lite 模型文件,启动编译器。安卓和 iOS 设备上均有同样的库。
编译器(Interpreter):使用运算符执行模型。解释器支持选择性加载运算符;没有运算符时,编译器只有 70KB,加载所有运算符后,编译器为 300KB。这比 TensorFlow Mobile(具备一整套运算符)的 1.5M 要小得多。
在选择的安卓设备上,编译器将使用安卓神经网络 API 进行硬件加速,或者在无可用 API 的情况下默认执行 CPU。
开发者还使用 C++ API 实现自定义 kernel,它可被解释器使用。
Google 移动端硬件最新进展
2018.7.24~26 日,Google Cloud Next'18 上公布了 Edge TPU
2025 年,数据总量将超过 40 万亿千兆字节。
智能的实时决策,即所谓的“边缘”。
目前来看,Edge TPU的尺寸约为1美分硬币的1/8大小,它可以在较小的物理尺寸以及功耗范围内提供不错的性能(目前具体性能指标不清楚,官方称可以在高清分辨率的视频上以每秒30帧的速度,在每帧上同时执行多个最先进的AI模型),支持PCIe以及USB接口。
Edge TPU优势在于可以加速设备上的机器学习推理,或者也可以与Google Cloud配对以创建完整的云端到边缘机器学习堆栈。在任一配置中,Edge TPU通过直接在设备本地处理数据,这样不仅保护隐私,而且消除对持久网络连接的需要,减少延迟,允许使用更少的功率和性能。
EDGE TPU的功能
边缘(设备/节点,网关,服务器) | 谷歌云 | |
---|---|---|
任务 | ML推理 | ML训练和推理 |
软件,服务 | 云物联网边缘,Android事物 | Cloud ML Engine,Kubernetes Engine,计算引擎,Cloud IoT Core |
ML框架 | TensorFlow Lite,NN API | TensorFlow,scikit-learn,XGBoost,Keras |
硬件加速器 | 边缘TPU,GPU,CPU | 云TPU,GPU和TPU |
类型 | 推理加速器 |
---|---|
性能示例 | EDGE TPU是用户能够以高效率的方式在高分辨率视频上以每秒30帧的速度同时执行多帧最先进的AI模型 |
NUMERICS | Int8,Int16 |
IO接口 | PCIe,USB |
CLOUD IOT EDGE
提高运营可靠性。
更快的实时预测
提高设备和数据的安全性
其实这里我也记不太清了,而且之前也不清楚是干啥的就google了一下,Deliver Google AI capabilities at the edge.
意识是说在边缘设备上使用Google的AI能力。
Cloud IoT Edge extends Google Cloud’s powerful data processing and machine learning to billions of edge devices, such as robotic arms, wind turbines, and oil rigs, so they can act on the data from their sensors in real time and predict outcomes locally. Cloud IoT Edge can run on Linux-based operating systems. Cloud IoT Edge is composed of two runtime components, Edge Connect and Edge ML, and also takes advantage of Google’s purpose-built hardware accelerator ASIC chip, Edge TPUTM.
这才是一家由技术,有理想,有追求,有责任心的公司该做的事情啊!!!
总结
由于时间关系和自身能力的因素,当时在会场只听了两场半,虽然时间并没有多久,但是大致让我了解到了一些目前有关AI领域的一些企业的现状,对自身的学习方向也有了一些指引,推荐大家如果有机会可以多参加这样的技术交流会。