评价模型有哪些(5种常用的分析方法)
导读:什么样的模式才是好的模式?相信这是每个数据分析师和大数据AI算法工程师都默默思考过的问题。
为了更全面的思考这个问题,我们不妨从以下三个方面来讨论。
如何理解“模型”?如何理解“好”?有万能的模型么?
01如何理解“模型”?
“model”的英文模式,基于其拉丁语词源,由modus一词演变而来。modus这个词的拉丁文意思基本上可以用“测量”和“标准”来概括。在汉语词典中,“典范”一词可以用两个词来理解:“典范”是指规范和标准,“类型”是指风格。统一两种语言的含义,“模式”就是“参照一定的规范和标准而形成的风格”。
为了理解“模型”的概念,有两点需要强调。
A.“模式”是指一定的规范和标准,但不必完全照搬。例如,飞机模型可以根据真实的飞机制作。在这个“模型”中,规范和标准是真实的飞机,最终的形态是模仿真实飞机的外观制作的小模型。这种尽可能照搬规范和标准的风格是一种模式。再比如,一些互联网移动支付行为以数据关系的形式形成交互行为模型。在这个过程中,规范和标准是现实世界的互联网移动支付行为,最终的形式是反映交互行为的数据表示,即交互行为模型。在这个模型中,实际的支付行为可能并不完整,可能只是支付行为数据记录的一小部分,也可能是一些经过加工简化的抽象表达式。这种参照规范和标准进行抽象、简化、提取或组合的风格,也是一种模式。
B.“模型”落地形成的风格可以是物理实体,也可以是静态抽象表达,还可以是静态或动态的实体对实体的影响和关系。比如上面说的飞机模型,就是一个物理实体;如果身份证、年龄、职业等信息。网站上的用户是以一维表格的形式组织的,表格中的每一行记录都代表了一个用户的基本信息,这里是用户的抽象表达所形成的模型;如果把家庭成员之间的夫妻、父女、母子、母女、父子等关系以一定的形式记录下来(图表、图表、描述等。),这个记录所反映的家庭成员之间的关系也是一种模式;”当温度上升时,冰就会融化。”这句话表达的温度和冰的关系(无论是定性还是定量)也是一个模型…
数据科学领域的“模型”并没有偏离“模型”的本质含义。“规范和标准”可以是非常复杂的现实世界,也可以是特定领域业务的客观存在。但由于研究内容是在数据科学范围内定义的,最终落地的“样式”多是各种数据表达。当然这既包括静态表达,也包括动态表达。
在数据科学的相关领域(包括数据分析、数据挖掘、人工智能等数据发挥巨大作用的领域),根据“模型”的使用形式,可以分为以下三类:业务模型、数据模型、功能模型。
1.商业模式的含义
商业模式是以特定的方式重塑现实世界、复杂事物和特定问题的模式。商业模式中所谓的“规范和标准”,无疑是对现实世界、复杂事物、具体问题的客观反映。商业模式的“风格”是一种抽象的存在,但这种抽象的存在有一种比较生动的表现形式,是多种多样的。
例如,图1是一个电子商务APP的业务逻辑模型图。图中描述了电商APP用户下单后的整个业务流程。在这个商业模式中,“规范和标准”是用户从支付到发货到收货的整个现实环节,“风格”是抽象的,也就是一个非常虚拟的业务流程概念。下面的流程图只是这种商业模式的具体体现。这种形式的商业模式可以称为完整的商业模式。但读者要知道,这样的商业模式其实是一种抽象的(或者产品、流程、组织、逻辑)存在,并不是商业模式的全部。
图1一个电子商务APP的业务逻辑模型图
2.数据模型的含义
虽然商业模式可以用流程图、流程图、结构图来可视化,但是商业模式的本质是抽象的。所有的商业模式都要脚踏实地,在不同的领域会有不同的表现。在数据科学中,业务模型以数据模型的形式出现。
模型是以数据方式描述现实世界的模型。与业务模型一样,数据模型的“规范和标准”也来自于现实世界中的各种场景,但数据模型的表现“风格”更为具体,它是以有组织的数据形式表现出来的。在数据模型的组织和处理过程中,最重要的工具是数据库和数据仓库。
一般来说,数据模型包括三个方面:数据结构、数据操作和数据约束。
数据结构是指要描述的数据的类型、内容、性质以及数据之间的关系。数据结构是数据模型的基础,数据操作和约束基本都是基于数据结构的。不同的数据结构有不同的操作和约束。
操作是指对要描述的数据的操作。包括操作类型和每个操作的具体操作模式。数据的若干操作与隐含在其中的推理规则相结合,用于操作目标类型的有效数据对象集。
数据约束是指数据结构内部或数据与数据之间的组织规则、相互关系、约束和依赖关系,以及数据动态变化的规范。数据约束的目的是保证数据在存储和处理过程中的正确性、一致性和兼容性。
基于数据结构、数据操作和数据约束,形成了三种常见的数据模型:层次数据模型、网格数据模型和关系数据模型。
3.功能模型的含义
函数是表示实体变量与实体变量之间转换关系的模型。
与业务模型和数据模型不同,功能模型几乎只用于表达实体变量之间的关系。这种关系用数学函数的形式表示,更加准确、多样、简洁、丰富。模型的“规范和标准”是现实世界与业务中实体变量之间的真实关系。它的“风格”是一种功能。在数学中,函数有三个要素:定义域、值域和对应规则,这也是函数模型的前提和要素。
定义域定义了函数的输入范围,范围定义了函数的输出范围,对应的规则决定了输入到输出的映射关系。对于函数模型,可以预先指定这种映射关系,指定的内容既包括函数形式,也包括参数值。也可以先确定函数形式,不指定参数值,使用时再确定其参数值。
一般来说,使用函数模型时,首先要确定函数形式。确定函数参数有两种方法:一种是直接指定这些函数的参数,或者经过一定程度的分析后指定函数模型的参数;另一种思路是假设当前数据的输入和输出之间的映射结果已知,或者输出的目标形式已知。根据投入产出的关系,设定一定的目标,通过一定的机制自动计算出这些参数。确定函数形式后,通过数据计算参数的全过程,通常称为机器学习。利用数据计算参数的功能模型为机器学习模型,机器学习模型通过数据计算参数的动态过程称为模型参数训练,简称训练。
常见的机器学习模型(包括深度学习模型)都是功能模型。
02如何理解“好”?
可见,模型是对现实世界的浓缩和模仿。好的模型一定是能够以最低的成本尽可能真实地反映客观世界的大致情况的模型。
然而这种说法很简单,在实际场景面前,“好”的具体形式往往让我们感到力不从心。
这就不得不提到数据科学领域非常流行的一句话:“好数据胜过好特征,好特征胜过好算法。”这句话应用到机器学习上,还有另外一种表达方式:“数据和特征决定了机器学习的上限,模型只是在逼近这个上限”。因此,无论是在推荐领域还是广告领域;无论是在电商系统中,还是在Feed流中……确定了某个业务场景,确定了数据规模和维度,几乎就可以确定“最佳”模型所能达到的最佳能力。只是找到这样的模式会非常非常困难。
1.好的模式是能够取得更好的经营成果的模式。
在不同的业务场景下,数据形式是不同的。即使是同一个业务场景,由于数据的大小和数据维度的数量,“上限”也会有所不同。有时候,我们认为能取得更好经营成果的模式才是更好的模式。说真的,有时候这个锅真的不应该被模特背出来。好的模型应该是在一定的数据规模和数据维度条件下,最接近上界的映射反应。
2.好的模型是能够反映真实业务关系的模型。
接近数据和特征判定的上限,主要依靠模型本身通过参数的调节能力。但影响模型商业效果的另一个因素也不容忽视:模型的归纳偏差。在数据科学理论中,模型的归纳偏差被视为反映数据样本的先验假设。归纳偏差在数学和逻辑中是一个形式化的概念,但在数据科学中,这个概念与函数模型很好地解耦了。归纳偏差是一些简单的逻辑表达式。这些逻辑不应该由空来构思,而应该基于实际的业务场景来提炼。
例如,在SVM模型中,我们认为不同分类的超平面与两个分类的支持向量之间的距离应该相等且最大。但是为什么呢?这是因为我们认为两类之间的区间应该是这样的,这是从“商业”中带入的一个假设。但如果是以下场景,两个分类之间的平面应该更靠近A还是B?方块的数量很大,所以很多样本都集中在一个空。我们也有理由相信,B更有可能是分类的边界超平面。当然,这也是假设。
在考虑模型构建时,不要过多考虑归纳偏差。真正需要考虑的归纳偏差应该在模型建立之前(也就是选择模型的时候)就做。选择或设计模型时,电感偏差是一个非常重要的考虑因素。一些模型甚至是基于特定的感应偏差而设计的。如果归纳偏差本身远离商业现实,基于归纳偏差设计的模型将失去意义。
3.一个好的模型有时需要更好的可解释性。
一般来说,用数据训练一个机器学习模型,可以看作是一个“黑箱”。使用该模型时,只需要输入和输出。但是,在很多场景中,人们在输入输出的同时,也造成了输出的结果。例如,建立一个医学智能诊断模型。当一个人的身体机能指标输入后,会输出身体的健康状况,如果身体不好,最有可能患什么样的疾病。如果有一个参与者,在使用这个模型后,被诊断为身体状况不佳,最有可能在不久的将来感冒。这时,参与者自我感觉良好,想知道自己身体状况为什么不好,在哪里。此时,如果模型的解释力不强,就无法得到相应的衍生结论。
模型的可解释性也可以为接下来的业务推广和改进提供非常有意义的指导和参考。例如,如果一个金融风险控制模型能够准确、高效地识别出具有金融欺诈意图的用户,那么该模型的可解释性就可以对如何进一步确保服务安全、从哪里着手、采取措施后预期会产生什么样的后果等提供非常可靠的指导和评估。
有些模型本身就有表达特征重要性的因素,比如很多树状模型(决策树、随机森林、GBDT等。)、线性模型(特征参数的绝对值)、LR模型等。这些重要因素可以提供一定的解释模型的能力。
虽然有些模型不包含重要因素,但其结构是透明的,通过分析模型结构可以提取出输出的可解释原因。例如,KNN,许多聚类模型等。
对于人工神经网络这样的模型,很难从结构上获得模型的解释依据,可解释性很差。这也是制约人工神经网络在结构化数据业务中进一步应用的一大原因。
03有通用的模型吗?
对这样的问题很难给出肯定的回答。因为一个通用的模型,它一定会照顾到世界上几乎所有的数据,所有的特性,所有的商业知识。这是一件非常困难的事情。
但是对于特定的业务场景和一定的约束条件,寻找最合适的模型也不是没有思路。奥卡姆剃刀是最重要的指导思想之一。
“如果没有必要,就不要添加实体”,这就是奥卡姆剃刀的全部原理。
想象一下,从获取数据,到根据这些数据训练模型,输出结果。模型输出的特定结果的原因可能来自哪里?这个原因无疑会来自于数据所承载的信息,特征工程中所做的处理,以及模型本身的归纳偏差。
如果一个不太懂数据科学和数据处理原理的人,或者某些模型的探索者和实践者,看到了模型的运行机制,强行修改模型,相当于在数据信息处理过程中加入了除数据规则、特征工程提取、模型归纳偏差之外的其他信息。例如,在CART决策树模型中,一个建模者根据基尼系数排列约简最多的决策特征,并强行改变两个中间节点的特征位置,人为地增加了对特征重要性的判断。当然,如果建模者非常非常确定的话,修改后的模型可能会表现出更好的泛化能力。但是,考虑到很多情况,人都忍不住拍脑袋做决定的冲动。强行转换模型是一种商业尝试,转换后的模型基本不可复用。其实还不如研究如何选择样本,如何进行特色工程,来提升整体的经营成果和业绩。
奥卡姆剃刀原理对底层逻辑中没有基础的任意修改模型的行为说“不”,哪怕是为了尝试。但是,这并不意味着不应该尝试选择模型,而是可以尝试各种模型所隐含的假设的合理性和某个特征工程环节的有效性,而不是尝试“任意改造模型”的可行性。
数据其实是一种信息游戏。
虽然很难通过一个通用的模型来整合全球所有数据所承载的信息,但是通过迁移来整合领域内的信息,并将其应用到更相关的业务场景中,是一个非常有效的折中方案。近年来在NLP领域流行的BERT等带有预训练机制的模型,充分融合了自然语言中的先验信息,使模型在很多场景下都能得到“屠杀名单”的业务效果。Magic还有另外一个型号——gp T3。通过整合海量的互联网数据和信息,用1750亿个参数调整空,可以帮助人们设计原型图纸,制作资产负债表,找出一些名人的社交账号。
虽然通用模型很难建立,但我们不是已经看到了吗?
今天的分享到此结束。谢谢你。
作者:Tuso阿里巴巴算法专家
来源:数据分析常识