前言:本文是团员haiqiao的第5篇输出,也欢迎更多团员来分享你的干货心得:)
目录
1.数据构建及管理的问题概要
2.数据构建和管理内容(包含数据需求分析、数据采集、清洗处理、标注、维护)
1.分析AI需求需要什么样的特征数据?(依据业务目标)
2.数据从哪来、怎么定义数据需求给相关部门或者研发、怎么评估数据质量
3.数据标注的作用、标注方式、类型、平台和工具设计或选择、工作流程、怎么评估标注质量
4.怎么维护数据库(标签系统数据库、业务知识库、语料库)
根据以上四个方面的问题,简单梳理出相应数据构建及管理相关认知。
AI开发项目与数据相关的流程大概有以下:
注意:一般在数据未产生且亦可通过程序自动标注的情况:数据采集和数据标注合并需求方案会在一起定义输出文档给研发同事。
1.1 数据工作中,分析什么?
分析业务目的和公司内外部数据情况:
1)业务目的:
例如:新增的AI功能需要训练模型;原需求迭代主要提高正确率、精确度、修复bug;补充新的变量或原需求调整规则等等;
2)数据情况:
主要根据需求判断需要哪些数据后,调研数据来源、公司内外部是否可获取,可行性、数据可信度、需要投入的成本。
1.2 产品经理需要定义什么标准?
1.3 需要知道的数据概念:
了解数据相关技术概念,方便产品经理清楚一些技术边界,能高效定义需求边界,推动项目进度,举个例子:看懂各种接口文档、例如需要调用AI开发者平台的接口服务;
1)数据格式类型
a.针对不同AI技术功能,常见的数据格式( 例:参考百度AI开放平台)
文本格式:JSON格式
语音格式:支持pcm(不压缩)、wav(不压缩,pcm编码)、amr(压缩格式)、m4a(压缩格式,仅支持极速版模型)
图形图像:PNG、JPG、JPEG、BMP等格式
视频:例如活体检测支持mp4格式
等等...
b.不同的数据格式有不同的数据规范,也决定了数据标注的类型和使用工具及平台(详见下面数据标注模块);
c.研发会将以上数据格式导入,用算法进行转换成对应的数字符号。
2)数据类型
a.计算机的数据类型概念:
每一种数据有且只有一种数据类型,数据类型代表编程语言中最基本的规则。
b.一个数据类型由三部分组成
数据类型、数据名称、值
c.常见的可变数据类型:
依据业务目的需要做数据采集,一般针对新项目需要新增新的业务数据或者原项目新的维度数据,这些数据未储存在公司数据库。
数据采集方案定义需要考虑:
2.1 获取哪些数据:
参数字段、格式、数据类型、命名规范;一般由研发列出数据列表和格式规范给产品;
例如:
a.《浅谈声纹识别之数据清洗》文章中提到的对声纹数据收集的描述、数据命名规范。
b.实现一个手写文字识别功能(参考百度AI开放平台),对数据的一些规范:
需要采集的数据是摄像头拍照的图片,支持jpg/jpeg/png/bmp格式、要求base64编码和urlencode后大小不超过4M,最短边至少15px,最长边最大4096px。
2.2 数据来源:
公司自行采集(业务自行生产or爬取)、调用第三方接口或集成SDK、直接采购现成数据包、公开的数据集
2.3 获取的方式
一般调用API或者集成SDK方式。
例如:
a.通过用户的手机端获取GPS经纬度信息,可以在自家APP通过集成高德地图SDK方式,通过用户在客户端授权后传输到服务端入库。
b.通过API接口获取第三方数据公司提供如电商消费数据、社保公积金的数据评估借贷用户的收入和消费能力。
不同获取方式,数据采集的在系统业务流程设计不同,根据业务目的和评估数据价值和获取成本综合衡量。
2.4 数据流(涉及数据业务流程设计、接口设计等等)
无论是公司自行爬取还是调用第三方接口,都需要清楚数据业务流,控制数据入库质量。
结合调用的业务场景和数据情况,在设计数据业务流程需要考虑:
a. 数据产生的源头 ;
b. 数据经过哪些业务系统 ;
c. 协调其他部门评估是否有现成接口、或新增数据接口,确定数据提供的可行性;
d. 评估数据传输的时效性和稳定性;
下面举个我之前负责过一个需求例子,风控部门需新增“手机设备号所关联的信息流推广渠道”的变量字段,在采集需求方案需要给研发讲清楚数据流、涉及到哪些系统、接口、系统间先后交互逻辑,入参出参等等,如下图:
2.5 跟踪数据的变更
因为无论在公司内部和还是第三方接口、数据具体参数都会可能发生调整,所以日常做好跟需求提供侧做好密切沟通,并同时内部系统及平台做好数据监控。
2.6 评估采集数据质量(价值)及采集成本
1)关于数据采集质量判断
a.最直接的是模型训练的效果情况
若模型训练结果表现符合项目预期效果(正确率和召回率等指标),起码说明数据采集方面是OK。
其次,再看下模型效果与采集数据的关联度,
比如:早前一些比较小的大数据风控信用分依赖于支付宝的芝麻信用分,后续芝麻分不提供给这些数据机构后,他们的信用分效果很差,所以可以看出芝麻分对该数据机构的信用分关联度非常大。
b.评估采集的数据的时效性
如果实现的AI功能依赖于外部接口毫秒级响应,那么需要考虑整个数据流,判断输入输出的时效是否满足需求和用户体验。
2) 关于数据采集的成本
a.直接经济成本(比如调用一份运营商报告和原始数据需要xxx元)
b.技术成本(开发、运维、后期维护等等)
有些项目一旦涉及开发周期比较长、投入的技术研发工作量大,将大大提高项目的潜在风险;其次若第三方数据不稳定、频繁迭代也会影响后期维护技术人员的投入、可能也影响生产环境模型效果等。
以上为主要为主要成本,当然,有其他次要成本因素,这里不详述。
若所需的训练数据集,分散在不同业务库或者外部数据源比较多且杂乱的情况,则需要产品经理在需求方案中说明以下几点:
a.提取的参数字段分别在哪些数据库,表关系,关联主键参数等取数逻辑;必要时需要解释需求场景和数据流程。
b.需和数据工程师确保数据可行性,得到符合我们要求的数据。
c.去除无效的数据、整理成规整的格式等等。不同数据格式类型有不同数据规范,具体的数据要求可以和算法工程师确认。例如:《浅谈声纹识别之数据清洗》文章中提到的对声纹数据数据进行编码格式、采样率、VAD达标标准等方面进行初步筛选,然后进行数据结构剪切。具体清洗内容根据不同数据格式类型和业务情况而定。
4.1 什么是数据标注?
数据标注是指对数据集进行添加标签并且让机器学习,对新输入的数据,机器能正确识别出分类结果的过程。类似人类的认知,例如我们学习认识“狗”这类动物,那么就需要有人拿着狗的图片,或者带各种狗到你面前告诉你,这是“狗”。然后以后你遇到狗,你就知道这类动物叫做“狗”。
4.2 产品经理为什么管“数据标注”这个事?
第一,数据是AI公司的必需品。数据对于算法模型的重要性尤为重要。
第二,数据的质量直接会影响到模型的质量,因此数据标注流程设计和监督纠错就显得异常重要,需要产品经理深度参与,把控质量。
4.3 数据标注的方式及平台
数据标注的方式如采用人工标注(公司内部or众包)、程序规则自动标注主要两种方式:
1)人工标注
人工标注指的是选择大量内部标注人员或者外部众包标注团队来使用标注工具手动对数据添加标签的方式。
优点:目前阶段,对相对复杂标注项目,人类的辨识效率比机器标注效率快、准确度高。
一般初创团队MVP阶段主要倾向选择人工标注方式。
缺点:若采用外包形式,较内部投入成本大,外包团队人员素质不可控;对于高级数据加密要求高,易出现泄漏数据风险。
2)机器自动规则标注
机器自动规则标注方式:一般由数据输入通过标注算法模型或者程序自动分类规则添加标签方式,得到结果的方式,这个过程伴随着输入/输出的过程自我优化。
优点:标注效率大大提高,节省标注成本
缺点:对算法技术要求高,研发投入大。适用于大型AI公司。
3)众包标注平台分析
a.主流标注平台
例如:京东众智、百度众包、 倍赛、龙猫数据、数据堂、淘金云(数据标注)、云测等
《数据标注竞品概要分析》这篇文章主要分析主流的数据标注平台的标注类型对比。
b.关于标注平台的选择
选择标注平台主要考虑平台标注的效率、标注的准确度(审核通过率)、数据安全、报价、平台主要的优势标注服务类型和客户行业、客户服务态度与质量等几个主要的方面等。
4.4 数据标注工作流程、分工和具体标注过程是如何的?
在数据标注的工作流程中,产品经理的工作主要做好:标注规则边界定义、流程控制、质量评估、协调内外部资源沟通四个方面。
1)关于数据标注的工作角色分工
《AI产品经理需要了解的数据标注工作入门》文章提到“一般来说,数据标注部分可以有三个角色”:
a.标注员:负责执行具体的标记数据任务。
b.审核员:负责审核被标记数据的质量(抽检、质检)。
c.管理员:负责管分发任务、统筹人员、核算工资。
只有在数据被审核员审核通过后,这批数据才能够被算法同事利用。
2)数据标记流程
一般数据标记,会经过以下流程:
下面主要描述“标签规则定义、标注工具、具体标注类型标注过程、审核验收”
3)标注规则(人工)
需提前了解算法工程师提出的数据标准;结合不同的业务场景、数据格式(文本、图像、语音)的标准均不同,标注行业实践经验给出合格的标注规范。
a.定义好的数据与不好的数据的标准(审核通过的标准)
下面举2个例子:
文本标注:文字错误率3%以内(具体指标看业务定)
语音标注:内容与语音一致,不一致则为不好的数据。当然语音标注还会更多考虑更具体的方面,比如儿化音处理、语音中的阿拉伯数字转写标注、多音字标注、方言标注等等方面。
b.标签的设计应满足“统一性”
通过《数据标注的统一性问题》这篇文章,总结出好的标注标准应满足以下2个原则,以下是我的一些理解
第一:同一维度应保持互相独立原则
两个标签之间在同一维度没有交集,即不存在一条数据同时可以命中同一维度的两种不同标,若出现该种情况,产品经理必须给出边界,让标注人员按照在少数服从多数原则下标注。
第二:完全穷尽原则
在项目前期,产品经理应尽量穷举所有可能出现标签类别;若无法完全穷举,也应定义判断标签的依据,根据哪些属性或特征判断,一般这些特征是具有一定的规律性。
c.标注应当也有“兜底”规则
无论是人工标注还是机器标注,都会出现无法完全穷举或者无法判断属于哪类标签的情况,该情况下,产品经理制定相应的“兜底”规则处理,比如弃用该条数据,或者制定对应标注规则。
4)标注类型
a.标注类型:
通常数据标注的类型包括:图像标注、语音标注、文本标注、视频标注等种类,标记的基本形式有标注画框、3D画框、文本转录、图像打点、目标物体轮廓线、语义分隔、语音转写、文本实体标注等等
b.标注类型的应用场景及平台工具选择
选择哪种标注类型,具体根据应用场景,例如自动驾驶场景就包含了3D画框、图像打点、目标物体轮廓线、语义分隔等多种标注类型。
关于不同标注类型具体描述、应用场景及不同平台的选择,可参考文章《数据标注竞品概要分析》详细介绍;
下面列举下关于京东众智平台的语音标注《语音标注工具介绍-开放式标注平台》和文本标注《文本标注工具介绍》的使用工具描述。(不是广告哈!只是刚好百度到2个案例)
5)审核验收
a.进度跟踪:
程序对标注员、审核员的工作分别进行跟踪,可利用“规定截止日期”的方式淘汰怠惰的人。
b.质量跟踪:
通过计算标注人员的标注正确率和被审核通过率,对人员标注质量进行跟踪,可利用“末位淘汰”制提高标注人员质量。
4.5 评估及优化数据标注的质量
最直接的标注工作质量的指标:标注正确率、审核通过率、以及标注的数据集被应用后训练的精确率和召回率。其次关注标注效率。
1)评估数据标注的质量
一般通过后台设计,监控计算数据标注的进度、标注员的审核正确率和通过率;跟踪这批数据集的训练的精确率和召回率;若没有后台统计,那么通过Excel手动统计,效率比较低。
2)优化数据标注的质量
数据标注的质量跟一般以下因素有关:数据源的质量、 标注人员的素质和专业度相关、跟使用的工具相关
a.数据源的质量优化,比如通过训练验证数据是否合理,评估是否缺少某些维度参数,需要从数据采集源头补充新的数据,来改善模型训练的精确率。
b.优化标注准确率:一方面修正被错误标注的数据;另一方面,加强标注员的培训,严格按照标注规范进行标注
c.研发高效的标注系统(工具),提高标注员的效率,降低失误率;另外,亦可投入研发标注算法模型,逐步代替人工标注。
该部分主要涉及语料库(如机器人对话库)、业务知识库、标签化系统数据库等等数据库维护管理;实质上是根据业务需求来对数据库进行【增-删-改-查】,所以需要产品经理对数据库的数据库间、表间、实体间、字段间的逻辑关系都非常清楚,必要时还需要具备一定SQL等等代码基础。
这里仅提供关于数据维护思考的一些思维框架,具体实践,看具体业务需求而定,但一般在数据维护这项工作主要偏技术主导,产品经理主要协助技术同事定义数据维护及业务使用的边界和标准,并提出可行合理的数据方案。
5.1 新增
a.新增新的特征数据、新增语料数据等等
例如:机器人对话人库新增一些电影语料、说话人语料,那么会按照数据库的数据规范,对新增的数据进行格式化处理入库。
b.新增新的数据服务规则
例如:为了支持APP的推荐页实现“千人千面”,给每个用户推荐展示的信息既有共性信息,也有个性化推荐信息。需要底层算法新增支持对用户画像及行为的数据进行处理的规则策略,封装服务接口,提供给业务侧(前端)显示等等。
5.2 修改
a.对原数据的处理
例如:做数据迁移,之前本人负责过风控数据迁移项目,下面提供下当时我方案考虑的方向
产品经理需要协助技术给数据迁移方案:
b.修改原数据处理规则(策略)
例如:数据加密及安全需求,例如前端访问、管理后台的访问用户的敏感数据进行后端加密脱敏处理,比如关于前端访问接口可以直接获取到用户ID(用户唯一标识)等敏感参数暴露在前端。规则改为业务侧前端调用服务接口不直接返回具体用户ID,而是返回唯一token的规则,而且这个过程需要满足不影响业务侧之前的内部逻辑。
5.3 删除
a.删除冗余数据
例如:错误日志处理,一般我们都会利用一些错误日志数据做数据监控和预警;但这些数据如果不规范,将产生很多业务短期不需要的无效数据,占用数据库存储空间,影响性能。所以工程师都会找产品经理根据业务需要定义怎么处理这些冗余的数据,比如具体缓存哪些重要字段、缓存时间长度,是否需要移动其他的数据库等等方面
b.删除废弃的规则
5.4 查询
设计查询接口,提供外部支持服务(无论是公司内外部使用),或者提供给算法工程师抽取数据,用于具体模型训练。
本篇主要提供产品视角的数据构建和管理相关认知进行浅显的概括总结,仍然缺乏一些具体AI实践项目加以讲解论证,比如本人没有对话库、语料库维护相关项目经验,后续补充。若有观点纰漏之处,望大家海涵;也衷心希望若日后本文有机会被大佬们看后,都可以提出意见,我得以完善,供大家学习探讨。
附:团员haiqiao历史文章汇总
-END-
以上内容,来自饭团“AI产品经理大本营”,点击这里可关注:http://fantuan.guokr.net/groups/219/ (如果遇到支付问题,请先关注饭团的官方微信服务号“fantuan-app”)
---------------------
作者:黄钊hanniman,图灵机器人-人才战略官,前腾讯产品经理,7年AI经验,10年互联网背景,微信公众号/知乎/在行ID“hanniman”,饭团“AI产品经理大本营”,分享人工智能相关原创干货,200页PPT《人工智能产品经理的新起点》被业内广泛好评,下载量1万+。