本文将围绕AI产品在当前环境下的热门应用来进行探讨,涵盖了语音识别、图像识别、NLP自然语言处理、知识图谱等产品化落地的场景。
一、人工智能与「人工」智能人每天做的最多的事情就是看、听、说、思考、决策,这是人这个复杂系统需要具备的能力,那么如果要做像人一样的智能机器,最基础要解决的问题便是图像处理的能力、声音的处理能力、口语的处理能力、逻辑推理能力,具备了这些能力之后,人才能做更多的事情,同理机器也就能做更多的事情。
机器学习作为人工智能的实现手段之一,核心是用算法来解析数据、从数据中学习规律,再对现实世界中的事件做出决策和预测。由于强依赖数据,对于数据的处理和应用便显得极为重要。
AI场景中需要面临大量的非结构化数据的处理,涉及了大量的人力工作在里面。在当前发展的阶段,我更愿意称它为「人工」智能。
二、如何构建AI产品构建AI产品需要经历的几个核心阶段,简单概括为业务梳理阶段,准备数据阶段,设计产品研发方案阶段。
1、业务梳理不同的行业有不同的行业背景,在设计产品方案之前需要了解自身所处行业的业务逻辑及面临的需求痛点,AI产品本质上解决的是效率问题,不管是提高信息生产的效率还是信息传递的效率,首先需要找到存在效率问题的场景及识别是否高优解决。
1)确定业务流程:画业务流程图,梳理不同角色在业务间的顺接关系
2)业务分类:分析不同环节间信息如何传递,按照不同的需求类型进行分类。
3)资源评估:评估现有数据资源,是否有足够多的数据支撑产品的开发;若业务积累数据不够或质量不佳,有没有其他渠道收集数据,或数据治理的方式。
4)确定优先级:哪些问题可以优先解决,按照重要紧急系数进行划分。
2、准备数据在构建AI产品的工作流中,准备数据是重中之重,极其关键的一个环节,数据的好坏直接影响了模型是否可用,也是花费精力和工作量最多的一个环节。准备数据的过程包含了收集数据、治理数据、标注数据。
1)收集数据:一般收集数据的方式有整理并收集内部积累的业务数据、向数据方购买或合作获取数据、通过爬虫系统获取网络上公开的数据、通过终端设备采集上报数据。
2)数据治理:通常我们从多个渠道收集上来的数据是无法直接利用的,因为不同渠道对数据的定义以及生产和使用场景不一样,想要进行使用,需要进行一系列的数据处理流程,治理数据是一个复杂的过程,包含了数据质量、数据标准、数据安全等多个方面的处理技术及方法。
3)数据标注:数据标注就是将数据打上相应的标签。AI产品需要处理大量非结构化的数据,数据标注的意义是将人积累的经验判断的信息标注到数据上,让机器能够理解和可读。数据标注的流程可以分为:确定数据标注的目的、制定标注标准、进行数据标注、标注结果验收。
3、设计产品研发方案 - 构建并训练模型三、案例分析:图像识别 - AI识别植物1、应用场景获取知识 - 拍照识别植物 ,进行植物研究;
辅助教学 - 快速识别植物,了解植物基本信息,简化学生认知;
兴趣爱好 - 旅行游玩,扫描识图增加趣味。
2、明确任务类型基于具体的应用场景,梳理核心要解决的问题,例如植物识图,最简单的场景是要输入一个植物图片进去,返回正确的植物名称,属于典型的分类问题。
3、制定分类标准我们想要准确识别植物图片,首先第一步要厘清植物一共分为多少种,每种植物具有怎样的特征。下图是以不同植物的生存方式作为分类逻辑进行划分的,可作为参考。分类方式有很多种,核心需要确认并统一制定一套标准,方便日后的维护和扩充,也为后续模型训练打下基础。
制定标准的过程非常考验产品经理对需求场景的理解以及对特定场景下知识背景的研究,标准的覆盖范围直接影响了最终产品所解决问题的范围。
4、数据采集根据分类标准分别为每一个类目采集样本图片。通常会有专门的采集数据的平台,我们只需创建任务类型,定义数据采集的范围及需要访问的网站或链接,即可完成自动化数据的采集。
5、数据标注将采集上来的样本图片分别打上对应的分类标签。打标签的过程可分为人工打标签、机器打标签。通常公司内部都会搭建专门打标签的数据服务平台,例如百度有自己的众包平台,专门提供各个部门关于数据标注的服务。此外市场上也有专门做数据标注的公司,例如云测数据这样的平台。
6、模型训练 - CNN卷积神经网络CNN,是目前主流的处理图像问题的技术。它包含了图像内容定位、目标分割、目标关键点检测、目标分类等关键技术,能够快速提取图像特征。在介绍CNN之前先了解一下什么是神经网络。
神经网络是模拟了生物神经细胞传递信息的过程而构建的神经元模型,主要包含了三部分,数据输入层、隐藏层、输出层。
输入层:就是将基础数据录入到模型中。
隐藏层:也叫计算层,包含了多个参数的数学模型计算。
输出层:经过计算后输出结果。
计算过程可以简单理解为:输入层输入的每一个数值在乘以相应的权重后会传递到下一个节点,节点处会把每一条经过计算的数据结果进行累加。累加后的值通过激活函数激活之后,会继续作为下一层的输入数据参与计算,以此循环直到计算至最后一层输出数据。
每一次训练数据的进入,都会将整个神经网络上的各个节点权重值更新一次,通过每一层权重值的不断调整来逐渐缩小误差,确认最终模型。
卷积神经网络CNN与神经网络逻辑一致,同样包含输入层、隐藏层、输出层,区别在于隐藏层中又会拆分出卷积层、线性整流单元层、池化层、全连接层。
卷积层是为了提取图像特征;线性整流单元层在进行计算时调用了特定的ReLU激活函数;池化层是为了将参与计算的图像特征数据进行降维处理;全联接层是为了综合计算不同分类的得分,为最后的数据输出做准备。
(技术逻辑较为复杂,感兴趣的童鞋可以查阅更多资料进行扩展了解,通常此部分为算法工程师处理,产品只需简单理解原理)。
7、模型评估AI产品经理需要为模型结果负责,在评估模型是否可用上需要建立统一的评估标准,明确评估流程,并通过数据分析来形成结论。在植物识图这个场景下,一方面需要评估模型能否成功识别出图片内容包含植物,另一方面需要对已识别出的植物进行分类准确性的评估。
1)评估标准
评估标准包含了准备测试数据集,确定评估指标,定义不同情况下的判断标准。
2)评估流程
所有识图相关的场景下都要经过先识别再预测,因此在评估过程中,需要着重关注模型是否正确圈选出目标物体,若已框选出目标物体,再做正确与否判断。
3)评估数据
确定了评估标准及评估流程之后,要对采集的测试数据进行逐个评估,此环节可以交由数据标注团队或者实习生来进行操作,因为个别场景下需要测试数据量级比较大,为了提高效率需要将任务量进行分摊,大部分公司会设定专门的岗位进行数据支持。
4)评估结论
准确率指标是为了评估模型对数据的预测能力;YES判断正确数/(YES识别框+NO中应为YES的识别框)。
召回率指标是为了评估模型对图像识别的能力;已框选植物主体框/应框选植物主体框。
-END-