QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

明略科技 AI 中台的技术应用与实践

  • 2019-12-26
  • 本文字数:3146 字

    阅读完需:约 10 分钟

明略科技AI中台的技术应用与实践

AI 闭环与 AI 中台


人工智能,按照智能化程度,可分为 5 级。第一级,识别能力,通过泛在多维感知,将高质量的数据连接起来。第二级,理解能力,基于可积累的行业符号体系的智能抽取技术,构建千亿知识网络的知识图谱数据库。第三级,分析能力,通过知识图谱、暴力挖掘对知识进行多维度分析推理,打造决策模型。第四级,决策能力,建立明确的行动计划,指导行动,实现智能决策。第五级,创新能力,也就是智能的终极本质。从识别感知,到理解分析,再到决策行动,循环反馈,形成 AI 闭环。相应地,需要建设感知应用基础设施,数据中台、AI 中台、业务中台,行动系统,才能实现 AI 闭环的落地,其中数据中台、AI 中台、业务中台,是核心,承担 AI 大脑的角色。


在技术实践中,明略科技采取的是数据中台、AI 中台、业务中台微服务架构。底层是数据中台,包括数据接入、存储、处理和输出。中间层是 AI 中台,提供模型线上部署,包括推荐服务和识别相关的各类模型,以及自动参数优化等。上层是业务中台,通过算法统一打通,支持数据清洗、标签、实时数据分析服务、洞察服务。


AI 中台,本质上是 AI 应用全生命周期的开发和管理平台,用于数据分析与处理、模型训练与评估、模型应用与监控。提供统一的数据存储系统,和基于容器的异构计算资源管理系统、机器学习库与模型训练实验管理系统以及模型部署与运行监控系统,采用分布式模型训练,大幅提升数据和模型的性能、效果、目标。



具体而言,AI 中台具备六大能力。第一,统一的存储空间,支持多数据源导入。第二,Pipeline 可视化工作流管理与执行,支持数据科学家从数据建模阶段开始的可视化管理,节省成本,快速体现数据科学家的价值。第三,基于容器的计算资源分配和软件库安装,支持 TensorFlow、PyTorch 等各种框架。第四,支持 GPU、TPU、CPU 框架和基于异构计算的模型管理。第五,模型管理,支持新手快速上手,无需通过自己实现原始算法,只需要理解算法原理就可以通过调参实现。第六,AI Serving,模型一键封装为 API,一键部署。


AI 中台,以实现业务智能为目标,为数据科学家团队提供服务,加速用户画像、推荐系统、图像识别、智能客服等智能应用开发。以此为基础快速迭代,扩大 AI 应用覆盖面,推动 AI 技术在其他行业领域的落地应用。

AI 中台落地的技术挑战与实现路径

AI 中台在实际落地过程中,却存在着不少挑战。首先,数据分散,以多种形式存储在多个系统中,需要统一存储。第二,流程复杂,相互依赖性强,需要统一流程。第三,存在 Spark、TensorFlow、Pytorch、Lightgbm 等多种多样的软件环境,需要统一协调。第四,模型训练时间长,需要管理大量模型训练实验。第五,模型影响因素多,需要管理大量模型版本。第六,AI 模型难部署,需要专用软件环境,深度学习对算力要求高,资源管理难度大,需要多方面优化性能。


目前,国内外主流的 AI 平台架构,都在试图解决这些问题。


第一类是 BATJ、网易、小米、讯飞的开放 AI 平台,这类 AI 平台通常采用 Docker+Yarn 或者 Docker +K8s 架构,提供图像、语音识别等应用能力,通过 Restful API 的方式,提供服务的使用,但数据必须要发给平台方。BAT 以外的厂商,一般只能提供某一方面的能力,如需使用多个能力,则需使用多个平台的产品,管理和开发的复杂度较高。AI 中台大部分部署在客户私有集群、私有机房。


第二类是 Acumos AI,通过把 AI 学习中的各环节微服务化,以 MarketPlace 的方式实现发布和共享,但文档缺失严重,部署和使用不方便,上手成本高。


第三类是 MLflow,通过 Tracking、Project、Models 3 个层面的抽象,整合所有的机器学习和人工智能算法和模型,但对于全流程集成的支持尚欠缺,比如数据导入和管理,模型的部署,资源的管理等。


第四类是 OpenPAI,通过 K8s 实现云、单机、集群的多环境,支持多种主流框架,具备资源管理的功能,但对于全流程集成尚欠缺。传统的集群,数据科学家实验室,没有实线上突破,模型到线上部署很难实现。


明略科技从三个层次来进行 AI 平台的架构设计。


第一层,基础设施,以满足数据、算法模型和过程性能要求。第二层,容器集群,以计算调度引擎为主。第三层,由三部分构成,一是数据处理模型,二是模型训练,涵盖目前最流行的 Parameter Server 等模型,三是模型 Serving,满足 Model Server、Model Converter 相关的线上场景需求。



基于此,明略科技 AI 中台主要有以下特点。


第一,数据存储和计算任务分离,计算任务通过内部高速网络读写数据,避免数据再次“搬运”。


第二,ETL 集成,拖拽式任务设计,支持定时任务和事件触发,内建 Mysql、HDFS、Kafka 等多种数据源,Spark、Flink 等计算引擎。把已有的 MySQL、Kafka 与系统完美融合,以可视化方式看到各种统计,这个理念与数据中台的理念一致,单独的子系统可以实现可视化、监控、任务、管理。


第三,支持 Notebook 交互式开发,符合数据科学家习惯,促进业务价值。可实现 Python based 交互式场景,支持 TensorFlow Pytorch 等多使流行框架,CPU、GPU 资源控制,单机集群计算资源。这是基于原生态的 Jupyter notebook 实现,数据科学家可以指定单机还是集成方式,快速解决实际问题,通过交互式数据开发环境,选择不同 Kernel 可连接到不同计算资源。


第四,Pipeline 的实现,Docker based 可复用,运行状态可视化,比如,A 数据科学家用的是 Tensorflow,B 数据科学家用的是 Spark,保证兼容,每次运行结果存档,生成 DAG 图,快速看到逻辑和节点问题。


第五,弹性扩展的 Model Serving,基于 k8s 和微服务技术,每个模型都部署一个微服务,同时支持 RESTFul 和 gRPC 协议访问,自动解决了负载均衡和 FailedOver 的问题,可自动按负载动态扩缩容 AutoScale,滚动升级和 ABtest 等多版本对比环境,支持 Java、Pyhton、C++等多语言部署,灵活性高。


第六,语言和框架,支持 TensorFlow、PyTorch、Spark、MPI、MXNet 等框架,Python、R、Java 等语言。


第七,提供图像识别、推荐系统、NLP 三大类别的内置模型分析。


第八,提供 AI 中台监控,可全面监控集群多项基础指标以及各运行任务粒度资源使用情况,内置集成报警功能,可实现数据实时可视化。


总之,明略科技的 AI 中台最核心的三点优势是,可与现有数据大数据平台无缝对接,支持异构计算和扩展框架。

AI 中台技术实践案例

在零售业,明略科技为行业领先的某新零售公司打造了 AI 中台,主要带来了三方面的提升。首先,改变了探索方式和时间效率。数据科学家写代码通常是交互式的,原先类似拖拉式的方式无法满足数据科学家的需求,明略科技的 AI 中台使探索方式变得更加灵活,并且探索时间从 15 天减到了 7 天。第二,改变了模型发布方式和发布效率。原先的做法是,算法工程师写完一套,工程师重写一遍,然后再上线,使用 AI 中台后,可快速上线同时做 AB 测试、滚动升级、小流量测试等,平均发布时间也从 15 天大幅降低。第三,原先 AB 测试需要人工重度参与,且复用性差,现在则能轻松应对。


在银行业,明略科技为国内某大型国有银行打造了基于 AI 中台的从关键词到知识图谱相关的推荐系统。基于 AI 中台可以快速实现实时请求查询,线下场景离线与 AI 中台无缝切换,模型 Serving 与数据中台、业务中台无缝对接,通过管理系统实时看到策略、排序等。


在对话机器人领域,明略科技基于知识图谱和 AI 中台技术能力打造了客服机器人。虽然深度学习、神经网络的算出的结果可能是准确的,但过程无法解释,而知识图谱是实体关系属性,组成网状结构,具有可解释性。在构建知识图谱时,将行业知识与客户企业内部知识相结合,实现隐性关系的挖掘,快速解决问题。AI 中台把聊天客服机器人、算法、知识图谱进行有机融合,确保了基于领域知识图谱对话客服机器人的准确性和有效性。


作者介绍:


卢亿雷,明略科技集团副总裁兼推荐/推理系统负责人


2019-12-26 08:043604

评论 1 条评论

发布
用户头像
额,文中总结的八个特点,除了第七里面的自有算法,其他7点跟其他平台有什么区别吗?
2019-12-31 11:27
回复
没有更多了
发现更多内容

谈一谈Java的网络编程

CodeWithBuff

Java 网络io

研发管理工具 ONES 完成3亿人民币 B1 B2 轮融资,继续领跑研发管理赛道

万事ONES

项目管理 融资 研发管理工具 ONES

浪潮云说丨浪潮云智能对话,想你所想,无限畅聊

数据结构——顺序栈

若尘

数据结构 6月日更

项目案例--吃货联盟

加百利

Java 项目 案例 6月日更

领域驱动设计101 - 模块

luojiahu

领域驱动设计 DDD

三个维度,透视5G价值的持续点亮之旅

脑极体

如果非要在多线程中使用 ArrayList 会发生什么?(第二篇)

看山

Java 并发编程

成为你想要看到的改变,首先就是让正确的事情持续的发生。

叶小鍵

Rust从0到1-函数式编程-迭代器

rust 函数式编程 Iterator 迭代器

Dapr:我不是Service Mesh!我只是长得很像

中原银行

云原生 Service Mesh istio Multi-Architecture dapr

迪士尼将亚马逊云科技作为首选的公有云基础设施供应商,支持 Disney+ 全球扩展

亚马逊云科技 (Amazon Web Services)

[译] R8 优化: Lambda Groups

Antway

6月日更

【源码篇】Flutter Provider的另一面(万字图文+插件)

小呆呆666

flutter ios android 大前端

react native实践总结与思考

碗盆

android 跨平台 React Native

详解Redis主从复制原理

蘑菇睡不着

Java redis

【源码篇】Flutter Bloc背后的思想,一篇纠结的文章

小呆呆666

flutter ios android 大前端

趣谈Java类加载器

程序猿阿星

Java ClassLoader 类加载器

百度关于EMP的探索:落地生产可用的微前端架构

百度Geek说

人工智能应用架构的思考

金科优源汇

过一过Java“锁”事

CodeWithBuff

Java 并发 同步

毕业论文被不小心删除了,有什么方法可以恢复?

淋雨

EasyRecovery 文件恢复 硬盘数据恢复

ONLYOFFICE-基本组成及工作原理

一个需求

onlyoffice

密码学系列之:twofish对称密钥分组算法

程序那些事

加密解密 密码学 程序那些事

推荐一个MySQL宝藏网站

Simon

MySQL 网站

建信金科大咖访谈:地方特色产业互联网建设思考与实践

金科优源汇

我是如何用 ThreadLocal 虐面试官的?

陈皮的JavaLib

Java 面试 多线程 ThreadLocal

lockSupport怎么玩

卢卡多多

锁机制 6月日更

python 连接钉钉传输工作数据监控

百里丶落云

ZooKeeper实战

CodeWithBuff

Java zookeeper

Linux之less命令

入门小站

Linux

明略科技AI中台的技术应用与实践_AI&大模型_卢亿雷_InfoQ精选文章