全流程攻略:若何构建人工智能产品?_数据_样本
在人工智能产品构建过程分为很多阶段,从最顶层的商业思考到下层的模型研发都有着不同的思考办法。
第一阶段是商业模式设计,任何产品早期都会对商业模式进行细致的考虑,商业模式的设计牵扯到方方面面,我们须要重点突出产品的行业属性与家当代价。
第二阶段是数据洞察与业务转化,我们须要去网络故意义的数据并将转化为模型的输入。
第三阶段是产品建模与评估,须要前两阶段的准备对产品模型进行开拓与测试。
(1)行业洞察:首先对行业须要有深刻的理解与洞察。
(2)代价剖析:针对付产品详细剖析给用户带来什么代价,什么样的代价能够利用户认可。须要以用户的视角来剖析产品的代价所在。
(3)数据剖析:针对行业的特点剖析数据应如何整理,如何利用,如何构成产品。
(4)资源评估:评估是否有足够的数据与职员支持人工智能产品的开拓。
(5)资源网络:通过各种渠道购买、网络数据,以及各种职员的资源分配。
(6)设计研发方案:根据以上结论设计人工智能产品的模型搭建与评估量划。
一、深度挖掘行业,探究产品代价1. 深刻挖掘行业属性
当前家当互联网恰逢其时,AI技能也更多的运用于行业之中。我们开拓人工智能产品紧张问题便是须要深刻理解行业痛点,做出有代价的产品。如何理解一个行业也有一些实用的方法可以借鉴。
构建产品之初首先须要充分理解这个行业,而且也要充分理解自己。理解自己紧张从自身的所学专业、兴趣程度、个人性情等方面综合考量。当今社会所做的行业与自身专业不匹配的状况时有发生,只有充分认识自我并且充分认知行业,才能做出成熟的剖断。我们先不谈对自己的理解,首先给出如何快速认识一个行业的切入路径。
第一步:行业认知——行业分解认知、行业组合认知
第二步:行业剖析——业务流程、家当链、商业模式
第三步:行业知识——业内范例企业与领导者
对付行业切入路径仍旧须要作一些解释,这个方法只是一个初步理解行业的路径。由于大家教诲背景不同专业不同,各个行业壁垒有有高有底,并不要指望通过某个方法就能够急速深入到某个行业中,想真正深入某个行业还须要系统的学习行业知识,并真正在行业中沉淀一段韶光,才能够深入体会。
行业认知是切入行业的第一步,在行业认知的过程等分为2个步骤:行业分解认知与行业组合认知。
(1)行业分解认知
研究某个行业不能不求甚解,首先要对行业进行分解。所谓行业分解认知是将行业细分成一个个子领域,针对这些子领域再进行逐一剖析的过程。对付一个未细分的行业是无法拿来研究的,只有将其分解才能各个击破。用大家熟习的互联网产品经理来举例,现在产品经理行业也产生了很多子领域,包括数据产品经理、后台产品经理、人工智能产品经理等。只管这些产品经理在职能方面可能有所交叉,但是分解的越细代表对产品经理这个行业理解的越深入。
(2)行业组合认知
在行业分解认知之后,我们已经对行业有了一个初步的理解,之后我们须要通过行业组合认知对行业进行综合剖析。行业组合认知是指将之前行业分解得到的子领域,统一回归到整体行业的框架下思考,思考的重点是每个子领域对整体行业的贡献,以及研究各个子领域在家傍边的关系与地位。因此,剖析好每个细分子领域对行业整体的贡献,才能更加透彻地核阅全局。
2. 探究产品代价
无论何种产品都必须要表示代价才能赢得商业,AI产品当然更是如此。对付一个成功的AI产品,并不是重视其利用了多么前辈的AI技能,而是通过技能能否真正得到行业代价。
例如,在过构建工业知识图谱时,如果只强调知识图谱可以将不同的知识连接起来,则不能突出其代价。工业知识图谱真正的代价根据不同项目,概括为在生产产生偏差时,快速探求到干系缘故原由。或将所有工序文件干系联,确保生产过程的合规性检讨。产品的代价必须符合行业属性,并利用户有清晰的辨识度。
针对家当互联网而言,产品代价紧张表示以下2个方面。
(1)效率代价
人工智能技能运用于家当,最主要的一点便是提升家当效率。人工智能技能是对人的模拟技能,人工智能产品可以供应某个工序的事情效率,降落职员的参与程度,降落职员本钱,提高事情准确率。
(2)创新代价
在效率产生大幅度提升时,则意味着创新。但是创新并不是仅仅是通过效率提升而产生的。随着人工智能技能的发展,大规模逻辑网络的形成,知识图谱的大规模运用,已经能够利用此类技能构建新知识新创造。
人工智能产品的研发,首先可以先以实现效率代价为目标,在逐步实现创新代价。须要以行业诉求为终极的代价判别依据。
二、数据洞察与处理1. 需求与数据
当今是一个数据爆炸的时期,数据积累的规模远远超过了之古人类社会数据积累规模的总和。在大数据这个观点涌现之前,打算机并不能很好的办理须要人去做判别的一些问题。如今人工智能利用用大量的数据作导向,能够使机器完成一些之前机器所不能完成的功能,使之前无法知足的需求得以知足。人工智能技能离不开数据,数据与需求之间首先该当搭建起一个桥梁。
(1)从数据到需求
我们首先将经历聚焦到数据上来,负责剖析这些积累下来的数据都有哪些?思考这些数据都能够做些什么?哪些与我们的业务关联性高,哪些关联性低?例如一个外贸公司积累了之前5年的发卖流水数据,那我们可以考虑用这些数据推测第六年的发卖流水。从数据到需求的阶段,我们只须要考虑数据能够做什么,暂时无需考虑数据的产出是否与业务干系。
(2)从需求到数据
当我们完成对数据的聚焦后,开始对需求进行聚焦。对需求的聚焦须要剖析业务,重点剖析的内容是知足这些需求都须要哪些数据来支撑。知足一个业务需求,可能须要很多数据支持,这些数据有些已经被积累,有些则没有被积累。
例如一个外贸公司须要预测下一年的发卖额,须要前10年的公司发卖额,除此之外还须要上一年股市大盘的走势数据,同时也须要公司前5年的用户数据。从需求到数据的过程是为了使公司清楚针对某一个特定需求,哪些数据已经保留,哪些数据须要外购,哪些数据在往后的公司发展中须要保留下来。
首先从数据到需求,再由需求到数据。数据与需求是一个相互渐进、反复循环的过程,如图所示。从数据到需求是一个数据代价提升的过程,这个过程首先数据授予了代价;从需求到数据是一个数据升级的过程,更多环绕需求的数据被挖掘,也更加明确了数据与需求的联系。
数据的来源紧张有2种办法,可以自己采集也可以购买。采集来的大多是用户与业务数据,这部分数据可以用来完善产品或者制作数据剖析报告;购买的标注数据可以作为演习集,用于构建模型。
对付非监督学习可以利用未标注过的演习集进行演习,不过在实际真正的产品构建中,大家应只管即便少的利用非监督学习。非监督学习学习效率较低,无法快速得到较好的模型效果,产品也就无法落地实用。非监督学习可以更多的运用于科研或者课题研究方面。
2. 数据标注
数据质量是影响人工智能产品准确性的关键所在,一个具有高质量标注的数据集对付模型的提升效果,远远高于算法优化带来的效果。数据标注是通过人工或半自动的办法,将原始数据打上相应的标签,打好标签的原始数据称为标注数据或者演习集数据。
数据标注过程有2个意义:其一,使人类履历蕴含于标注数据之中;其二,使标注数据信息能够符合机器的读取办法。标注的数据的难度越高价格越昂贵,以此演习出的模型代价就越高。
数据标注的流程常日分为五个步骤。
(1)业务剖析
产品经理与算法工程师要对业务进行理解,明确原始数据的意义与数据标注的代价。业务理解是所有产品事情的根本。
(2)确定原始数据与标注结果
产品经理须要与算法工程师共同确认原始数据及数据标准结果,并确定标注工具。数据标注的结果必须得到算法工程师确认,确保后续建模过程的顺利开展。
(3)撰写标注教程
在确认原始数据与标注结果后,产品经理须要撰写标注教程。标注教程就彷佛软件解释书,须要将标注过程按顺序逐一列出。标注教程包含4个要素:标注软件(平台)、标注哀求、标注工具、标注流程。撰写的标注教程同样须要得到算法工程师确认。
(4)数据标注
该过程为数据标注过程,产品经理须要禁绝时进行标注结果抽查。
(5)标注结果验收
产品经理与算法工程师共同对标注结果进行质量验收,验收不合格须要搞清非常缘故原由并重新标注。对付有行业壁垒的数据,标准准确性须要行业专家进行判断。
针对不同的数据类型有不同的标注工具。图像类标注可以利用LabelMe,文本标注可以利用Brat或DeepDive等,当然还有很多后期开拓的标注平台可以利用。
三、 模型建立与调优
早期的人工智能系统,被称为专家系统。专家系统通过学习或总结人类履历得到智能,并可以恰当运用这些履历来办理实际问题。如今随着大数据的发展,新生事物不断增加,各种知识层出不穷。很多领域的履历已经无法总结成系统化的专家履历,而这些履历被包含在大量产生的数据之中,以是说数据是人工智能发展的根本。
由此可见,建模的根本在于探求人类履历。但根据探求人类履历的办法不同,可以分为知识建模、异常识建模、稠浊建模3种。
知识建模属于早期专家系统的建模方法,重点在于如何将总结好的知识转化为机器可以识别、储存、利用的形式。知识建模适用于数据难以网络,或业务逻辑相对随意马虎总结的问题。
异常识建模不须要提取人类履历,乃至不须要模型具有可阐明性,通过数据特色得到对应的模型。异常识建模适用于业务逻辑难以总结,而业务数据随意马虎得到的情形。
稠浊建模结合了知识建模与异常识建模2种办法,根据特定问题进行建模。
建模过程是一个别系而繁芜的工程,须要根据业务类型、数据情形等多方面情形才能够完成。据笔者理解,当前很多人工智能事情者只重视异常识建模的办法,认为知识建模过期了,不适用于当今人工智能的发展。这样的认识是偏颇的,必须根据实际问题将不同建模办法结合起来才能达到较好效果。
1. 知识建模
知识建模源于人工智能起源的一大学派,该学派称为符号主义。符号主义认为人工智能源于数理逻辑,也可以说以一种高等的推理过程。从符号主义的不雅观点来看,知识是信息的一种形式,知识逻辑体系是构成智能的根本。
人工智能的核心在于知识表示、知识推理、知识利用,知识可用符号进行描述,认知是符号的处理过程,推理是基于知识与搜索对问题的求解过程。推理过程同样可以用符号化的措辞来描述,也就构成了我们认知的模型。符号主义认为可以建立起人类智能与机器智能的统一理论体系。
在知识建模中,有两个主要问题。其一是知识的符号表示,其二是推理方法。知识的符号表示是将知识转化为机器所能识别、储存、利用的数据化形式。推理方法是机器利用知识办理实际问题的能力。
(1)知识的符号表示
常见的知识符号表示有方法有谓词逻辑法、状态空间法、问题规约法等。由于知识建模构建的是一种推断逻辑,以是谓词逻辑法利用较为普遍。
谓词是用来描述或剖断客体性子、特色或者客体之间关系的词项。例句“小明是我的朋友”中,“是”便是谓词,该句中只有“小明”一个客体,这样的谓词我们称为一阶谓词;例句“5大于4”中,“大于”便是谓词,该句中“大于”涉及到两个客体,这样的谓词称为二阶谓词。
利用谓词表示知识有两个步骤:
①确定每个谓词的个体以及确切含义。
②利用逻辑符号连接谓词,对知识进行表达。
[例]利用谓词逻辑法表述以下语句
大家学雷锋
①确定每个谓词的个体以及确切含义。
个体:人
谓词:学、是(“大家”隐含了“是人”的客不雅观事实)
定义谓词:
people(x):x是人
learn(x,y):x学y
②利用逻辑符号连接谓词,对知识进行表达。
(表示对付任意)
(2)推理方法
推理方法是研究机器如何仿照人类进行知识选择,并利用这些知识剖析和解决实际问题的逻辑方法。我们也可以理解为推理是依据一定的原则,从已有事实推出结论的过程。推理系统紧张由谓词逻辑组成的知识库和掌握推理过程的机构组成。
常用的推理方法有3种:正向推理、逆向推理、双向推理。
正向推理是由条件出发,向结论方向进行的推理过程。它以当前的事实出发,根据输入的推理规则,向结论进行推理。例如我们知道发热、咽痛、枢纽关头酸痛具有较高概率能够推理出的结论是感冒。这种推理办法便是范例的正向推理。正向推理是早期专家系统办理问题的一个主要特色,即专家在办理问题时,首先是创造问题供应了什么信息,根据供应的信息再借助推理规则推导出新的信息,从而加深对问题的理解。
逆向推理是指从问题的目标状态出发,按照目标组成的逻辑顺序逐级向初始状态递归的问题办理议方案略。大略来讲,当一件事结果是精确的或客不雅观的,那么可以根据这一结果进行反向推理从而得到缘故原由。当我们已经知道患者得了感冒,可以推测他可能是受凉、传染流感病毒等多个缘故原由导致感冒,这便是逆向推理的思维模式。
双向推理结合正向推理与逆向推理,它是构成推理网络的理论根本。
知识建模是早期人工智能技能的代表,由知识建模而构建的专家系统为医学、教诲、工业领域做出巨大贡献。知识建模的优点可以总结为以下3个方面:
知识高效表达:通过知识的符合表示方法,可以高效准确地表达难以用数学方法描述的繁芜、定性的人类履历知识。灵巧性:知识的表达相对独立,方便进行知识的修正和扩充,系统也可以快速得到新的规则。可阐明性:知识建模最大的特点是可阐明性。所有的推理逻辑与公式,都可以经由严谨的数理证明进行阐明。这一点与当前非常盛行的神经网络模型比较,具有非常大的上风。任何建模方法同样有缺点,知识建模的缺陷同样可以总结为以下3个方面:
知识获取的困难:专家的履历知识加以提取、整理、转换成各种符合表示,还要考虑知识之间的相容性等问题,这本身便是一项困难的事情。高繁芜度问题:对付繁芜的知识体系,知识之间的关系以及知识库中的节点会变得非常繁芜。推理中对知识的搜索和利用分支将呈几何级数的增加。容错能力差:由于知识推理具有非常严密推理条件与推理逻辑,知识的不完备可能会导致推理涌现困难,从而降落了系统的精度。同时,如果涌现缺点的规则,可能导致全体推理的缺点,并且这种缺点不易更正。2. 异常识建模异常识建模是当前大数据时期的主流建模办法。由于数据中蕴含着人的知识或履历,但是建模过程并不须要将这种知识提取出来,而是直接通过获取大量数据去演习模型。异常识建模避免了知识提取的过程,也回避了建模职员对专业知识的理解问题。
由于异常识建模中不涉及到对知识的提取,以是异常识建模中最主要是数据准备事情。这些数据准备是为了构成模型的演习集,我们须要准备存储格式统一、真实性高、标注明确合规的数据作为模型的演习集。
在准备好演习集后,我们可以根据详细业务进行模型的选型,根据选择模型的特点对演习数据进行微调,以知足不同模型的演习哀求。对付数据特色不明显的数据集,我们也可以通过特色工程来提取数据特色,使演习出的模型更加高效准确。模型演习的过程如下图所示。
在进行模型演习时,我们须要通过某个学习算法,得到我们的目标模型。模型是否能够得到较好效果,紧张在于演习数据的质量,以是数据才是全体算法构建的核心要素。异常识建模紧张便是通过数据使机器自动提取某些内在的业务特色,从而达到模型效果。模型的选择种类也根据不同的业务,以及不同算法工程师的偏好灵巧选择。
3. 模型的评估:分类任务评价
分类最常见的机器学习任务,紧张目的是数据划归为不同种别。分类问题包括二分类与多分类问题。识别垃圾邮件或剖断是否为潜在用户便是范例的二分类问题,用户画像、赞助诊断系统等属于多分类问题。分类问题的评估指标紧张有准确率、丢失函数、精准率-召回率、曲线下面积(AUC)等。
(1)准确率
准确率是一个非常直接的评价指标,指的是分类精确的个数占总体个数的比。但是准确率并不能够公道的评价一个模型。紧张缘故原由有2个:
第一缘故原由是两种分类主要程度不同。例如在癌症诊断中,确诊癌症患者中未患有癌症的情形(假阳性)与确诊未患有癌症患者中患癌的情形(假阴性),这两种情形对付患者的意义截然不同;
第二个缘故原由是数据分布不均,如果两个分类个数相差过大,霸占大样本的一方会主导准确率的打算。
(2)均匀准确率
为了处理每个种别样本数量不一致的情形,利用均匀准确率来进行度量。均匀准确率将多个分类的准确率取均匀值来对模型进行评价。均匀准确率是对整体模型进行的评价,而并不即是某一个分类的准确率。在某个种别数量很少时,会造成该种别准确率的方差过大,使准确率可靠性降落。
(3)对数丢失函数(Log-loss)
对数丢失函数很像Logistic回归的丢失评价函数,这些评价标准都基于概率估计。对数丢失通过惩罚缺点的分类,实现对分类器的准确度(Accuracy)的评价。丢失函数最小意味着分类用具有最佳的性子,分类器供应的是输入样本所属类别的概率值。对付多分类问题对数丢失函数表示如公式(3.5.1)所示。
(4)精确率-召回率(Precision-Recall)
精确率-召回率实在是两个评价指标,但是它们常常同时利用。精确率是指分类器分类精确的正样本的个数占该分类器所有分类为正样本个数的比例。召回率是指分类器分类精确的正样本个数占所有的正样本个数的比例。详细阐明在后面稠浊矩阵中详细先容。
(5)AUC (Area under the Curve, AUC)
AUC的意义为曲线下的面积,所描述的是ROC曲线(Receiver OperatingCharacteristic, ROC)。首先我们须要理解ROC曲线是如何绘制的。
ROC曲线的x与y轴的含义:
横轴:负正类率(False Postive Rate, FPR),分类器分类缺点的负样本个数占总负样本个数的比例。纵轴:真正类率(True Postive Rate, TPR),分类器分类精确的正样本个数占总正样本个数的比例。对付设定一个阈值,就可以对应算出一组(FPR,TPR)从而在平面中得到对应坐标点。随着阈值的逐渐减小,越来越多的实例被划分为正类,但是这些正类中同样也掺杂着真正的负实例,即TPR和FPR会同时增大。阈值最大时对应坐标点为(0,0),阈值最小时对应坐标点(1,1)。
以下面一个例子阐明ROC曲线绘制过程,如图所示数据。
如图有20个样本依次编号,属性是样本的种别,p代表正样本,n代表负样本,得分代表样本被剖断为正样本的概率。在绘制ROC曲线时,每给定一个阈值打算一次(FPR,TPR)点。对付二分类器,我们可以设定阈值,认为样本中得分大于即是这个阈值为正样本。由于有20个样本,阈值可以按照20个样本的得分依次进行选取。
假设阈值1=0.9,正样本数量为10个,负样本数量为10个。
即认为大于即是0.9的样本为正,别的为负样本。根据图3-36所示数据与FTR、TPR定义可知
FTR=0(未涌现误判的样本)
TPR=0.1
我们得到第一个点为(0,0.1)。
假设阈值3=0.7,正样本数量为10个,负样本数量为10个。
即认为大于即是0.7的样本为正,别的为负样本。根据图3-36所示数据与FTR、TPR定义可知
FTR=0.1(有一个负样本被剖断为正样本)
TPR=0.2
我们得到第3个点为(0.1,0.2)。
如此通过设定阈值可以得到20个(FPR,TPR)点,从而绘制ROC曲线如图3-36所示。可见最好的分类器是FPR=0%,TPR=100%,当然这是一种极度情形。如果同时比较多个分类器性能,通过ROC曲线较难实现,我们便选取了曲线下面积(AUC)作为指标进行度量。分类器效果越好,AUC面积越大。大多数情形AUC值在0.5-1之间。
利用AUC对分类器进行评价可以避免样本不屈衡的影响。在真实情形下样本不屈衡的征象常常涌现,有时正样本个数远远大于负样本个数,或正负样本个数可能随韶光而改变,在利用AUC进行评价时可以有效避免。
(6)稠浊矩阵(Confusion Matrix)
稠浊矩阵可以关联上述的所有观点,也作为分类结果评价的常用手段。稠浊矩阵是一个分类的正误表,对付二分类问题则是一个22矩阵,对付多分类问题是一个nn矩阵,以二分类问题为例,如表所示。
表-二分类问题的稠浊矩阵
真正(True Positive, TP):分类精确的正样本。即本来是正样本,分类为正样本。 从稠浊矩阵中直接提取的成为一级指标,详细含义如下:
假负(False Negative, FN):分类缺点的正样本。即本来是正样本,分类为负样本。
假正(False Positive, FP):分类缺点的负样本。即本来是负样本,分类为正样本。
真负(True Negative, TN):分类精确的负样本。即本来是负样本,分类为负样本。
通过明确稠浊矩阵的一级指标的含义,可以定义二级指标,如表3-3所示。
稠浊矩阵可以将诸多观点加以串联,在模型评价中具有主要地位。除此之外,稠浊矩阵在试验评价等诸多领域还有广泛的用场。
末了把封面的人工智能产品经理流程图配上,详细的内容将不才一篇文章解释。
上述便是一个人工智能产品的整体构建流程,如果还希望能够理解的更详细,可以关注我的新书《手把手构建人工智能产品》,书中会有更详细AI产品经理项目方案。
#专栏作家#
白白,公众年夜众号:白白说话(xiaob-talk)。大家都是产品经理专栏作家,医药行业资深产品专家,卖力人工智能行业类产品综合架构与技能开拓。在行业云产品架构,药物设计AI赞助、医疗知识图谱等领域有深入研究。
本文原创发布于大家都是产品经理。未经容许,禁止转载。
题图来自Unsplash,基于 CC0 协议
本文系作者个人观点,不代表本站立场,转载请注明出处!