AI-GO 是什么?
AI-GO 是我们自研的 AI 一站式平台,可以为整个链路的参与者赋能,提升模型研发和迭代的效率,加快业务落地的进程!这样听上去,是不是觉得还很抽象,我们一起来看个具体的案例吧!
这是一个真实男性用户的 Feed, 如果需要打压治理这些性感内容,当然不能完全靠人工审核,我们需要搞个性感图片识别模型。如果模型准确率够高,可以直接依赖模型输出进行打压;如果模型准确率一般,也可以减少进人审的量,而不是全量进人审。
为了让大家对模型研发过程,有简单的了解,先来聊聊研发这样一个模型的基本步骤:
- 问题分析:先从业务角度分析问题,定义问题的类型和范围
- 数据标注:按照梳理的规范,进行大规模数据标注。当然这一步也不是必须的,如果有开源数据集,又或者直接采购标注好的数据。另外,对于像推荐/搜索系统中的一些模型,是基于用户行为数据来训练的,那也不需要额外标注数据。
- 算法研发:算法同学根据具体问题的类型,进行建模,开发对应的机器学习算法逻辑
- 模型训练:基于标注好的数据,通过机器学习算法,学习并输出一个模型
- 效果评估:在上线之前,还需对模型的效果进行评估,最简单的看看准确率和召回率
- 服务部署:将模型服务化,接入线上流程
接入线上之后,又可能发现新的问题,就会继续这个流程。接下来,继续看看性感内容治理这个项目,为了数据标注环节,当时这这样做的。
- 先找些疑似性感的图片,通过百度网盘给到武汉标注团队
- 我们上传,他们下载,尤其是下载,不是会员,那龟速会让你抓狂
- 等你好不容易下载好了,却发现敏感图片被百度网盘”净网”了,后来没办法,是通过快递硬盘寄过去的
- 由于没有标注工具,他们会将几万张图片拆分成若干个文件夹 (800 个), 方便多人并行分拣 (标注)
- 经过业务产品对问题的分析,性感图片,主要分成六种情形,加上没问题的,一共创建七个文件夹,通过拖拽图片,进行人工分类
这样做有多低效,大家可以想象!还有标准的对齐,分类分错了,如何翻修!要想训练一个好的模型,又需要大量的优质的标注数据,而标注数据又是一个工作量极其繁重的环节,如果有个强大的工具,提升他们的标注效率,就会事半功倍!
我们来看看麦兜的心路历程:
到了武汉之后,说实话对我的触动还蛮大的,这都 2020 年了,在一家头部互联网公司还存在着这样一个刀耕火种的原始部落,样本用网盘下载到本地之后,分了大概八百个文件夹吧,每天拖来拖去,鼠标拖坏多少个都不谈了,手指都快磨掉半根了
麦兜从武汉出差回来,就找到无忌,希望可以做个标注平台!而对于无忌,那几天心情也有些沉重:
最近不是我们都加入了视频 2.0 战队嘛,就在 7 月 6 日,就在建筑教室,开了个会,会上对目前各个职能模块的现状进行了评估,内容理解能力垫底,才 20 分。这几天我一直在思考,怎么能通过半年的时间,将内容理解能力提升到 70 分。你也知道,要做好内容理解模型,就需要大量的优质的标注数据,你刚刚说他们为了标数据,拖坏了好几个鼠标,要不我个人出资赞助他们一批鼠标吧?再或者,强制他们团队的同学再多加点班?再或者,找人事帮他们多招点人?哎,感觉现在无论业务方,还是数据标注,还是搞算法模型的同学,都在赤手空拳地打怪兽,我在想怎么能给到他们赋能呢!我有个更大胆的想法,就是搭建 AI 一站式平台,除了你说的数据标注,还有问题分析/算法研发/模型训练/效果评估/服务部署,让 AI 的整个流程线上化,提升大家的工作效率
于是,我们就一起来搞这个 AI 一站式平台,命名 “AI-GO”!
项目进程
要做这么重一个工具平台,需要很多开发资源,并需要很多时间和业务进行打磨,同时为了不延误在推进的业务进程,第一个 MVP 版本,只是解决数据标注部分,上线之后,得到了使用方的认可。
“AIGO 平台对标注团队的数据标注业务带来了极大的便利,原来用文件夹分类、用表格标注等方式特别原始落后,AIGO 能有效的实现数据权限管理,人效管理,质量管理;任务线上化、数据化直观展示。丰富了使用场景,标注效率至少提升了 30% 以上。” ——张传扬,武汉基地模型标注组组长
“ 我是媒体智能技术部负责数据工程这一块的产品运营,承接公司的模型训练数据标注任务,AIGO 主要支持我们对语音数据的标注能力。在开发初期,产品和开发同学不厌其烦地了解我们的标注业务需求,向着更快更准的方向不断努力。同时,休息时间在线调 bug、手动支持误删数据回滚更是让跨部门协助更加丝滑。目前语言数据提升的 ASR 能力已经用于支持安全审核的高危音频专项整治,后续也会不断支持我们的音频能力提升。”——布雷,北京媒体智能技术部数据工程组
AI-GO 不止关注标注效率的提升,对于标注质量的把控,模型的在线训练/评估/上线,都有相应的功能模块支持!我们也不是为了开发平台开发,坚持从业务中抽象沉淀为工具平台,这里记录一些里程碑时间节点:
- 2020.07,项目立项,为平台命名 AI-GO,确定平台目标
- 2020.08,MVP 版本上线,创建第一个项目“知识笔记识别”,支持知识类目冷启动
- 2020.8.31, 支持惊喜盒子笔记识别,从立项到模型上线,仅用时 18 天
- 2020.09,AI-GO 逐步完善,支持图片标注,创建第一个图片标注项目“性感图片识别”
- 2020.10,上线一致率对比、质检等管理工具,对标注的质量把控力上升一个台阶
- 2020.11, 上线模型训练和模型管理功能
- 2020.12,支持音频转写,标志着 AI-GO 从仅支持分类标注,到支持更多类型的复杂标注任务
- 2021.4, 上线效果评估功能
- 2020.7.28, 服务模块开发同步进行,基于 Python 3 开发 Thrift RPC 框架 caesar, 接入公司微服务中间件,截止目前,caesar 有 51 个模型服务
- 截至目前,AI-GO 已经推广到多个团队在使用,项目数已经达到 133 个,有 2k+ 数据集
支持图像/文本/笔记/评论等多种业务场景的问题处理
AI-GO 由两个部分组成:David 控制端和 Galaxy 标注端。优秀的团队+强大的工具就能发挥更大的作用!
项目组分工
- 研发/算法:张无忌、布瑞、秋山、追日
- 前端支持:酒吞
- 产品:埼玉、麦兜
- 还要感谢:在前端人力时雪中送炭的凯奇博士、雷恩,平台搭建过程中不断提供建议和帮助锦上添花的布雷、张传扬等各位的大力支持
未来的规划
AI-GO 会更加闭环链路,支持更多业务场景,惠及所有参与其中的人!
- AI-GO 更产品化,增加易用性
- 模型训练环节,目前线上仅支持简单的文本/图片分类,需要拓展到所有的领域
- 服务部署环节,目前提供了 Python3 Thrift RPC 框架接入公司微服务,还需与 k8s 打通,支持在 AI-GO 上一键部署
- 未来可期,我们会继续努力,整合沉淀公司各团队模型能力,服务需求方能快速应用已有模型能力,协助让 AI 开发者能高效高质训练模型,让“AI 更普惠”
很多业务细节在文中并未提及,如果你想进一步了解 AI-GO, 参与 AI-GO, 使用 AI-GO, 欢迎找项目成员进一步了解~