大数据分析与实践-社会研究与数字治理第7章 预测分析方法_第1页
大数据分析与实践-社会研究与数字治理第7章 预测分析方法_第2页
大数据分析与实践-社会研究与数字治理第7章 预测分析方法_第3页
大数据分析与实践-社会研究与数字治理第7章 预测分析方法_第4页
大数据分析与实践-社会研究与数字治理第7章 预测分析方法_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章预测分析方法QQ:81505050杨武剑周苏大数据分析与实践——社会研究与数字治理我们已经知道,地震是由构造板块(即偶尔会漂移的陆地板块)相互挤压造成的,这种板块挤压发生在地球深处,并且各个板块的相互运动极其复杂。因此,有用的地震数据来之不易,而要弄明白是什么地质运动导致了地震,基本上是不现实的。每年,世界各地约有7000次里氏4.0或更高级别的地震发生,每年有成千上万的人因此丧命,而一次地震带来的物质损失就有千亿美元之多。第7章导读案例准确预测地震虽然地震有预兆,“但是我们仍然无法通过它们可靠、有效地预测地震”。相反,我们能做的就是尽可能地为地震做好准备,包括在设计、修建桥梁和其他建筑的时候就把地震考虑在内,并且准备好地震应急包等,一旦发生大地震,这些基础设施和群众都能有更充足的准备。

图7-1全球实时地震监测第7章导读案例准确预测地震如今,科学家们只能预报某个地方、某个具体的时间段内发生某级地震的可能性。例如,他们只能说未来30年,某个地区有80%的可能性会发生里氏8.4级地震,但他们无法完全确定地说出何时何地会发生地震,或者发生几级地震。科学家能预报地震,但是他们无法预测地震。归根结底,准确地预测地震,就要回答何时、何地、何种震级这三个关键问题,需要掌握促使地震发生的不同自然因素,以及揭示它们之间复杂的相互运动的更多、更好的数据。预测不同于预报。不过,虽然准确预测地震还有很长的路要走,但科学家已经越来越多地为地震受害者争取到那么几秒钟的时间了。第7章导读案例准确预测地震例如,斯坦福大学的“地震捕捉者网络”就是一个会生成大量数据的廉价监测网络的典型例子,它由参与分布式地震检测网络的大约200个志愿者的计算机组成。有时候,这个监测网络能提前10秒钟提醒可能会受灾的人群。这10秒钟,就意味着你可以选择是搭乘运行的电梯还是走楼梯,是走到开阔处去还是躲到桌子下面。技术的进步使得捕捉和存储如此多数据的成本大大降低。能得到更多、更好的数据不只为计算机实现更精明的决策提供了更多的可能性,也使人类变得更聪明了。第7章导读案例准确预测地震从本质上来说,准确预测地震既是大数据的机遇又是挑战。单纯拥有数据还远远不够。我们既要掌握足够多的相关数据,又要具备快速分析并处理这些数据的能力,只有这样,我们才能争取到足够多的行动时间。越是即将逼近的事情,越需要我们快速地实现准确预测。第7章导读案例准确预测地震目录预测分析方法论建立业务需求建立分析数据集降维与特征工程12345建立预测模型6部署预测模型预测分析方法论PART017.17.1预测分析方法论预测分析使用的技术可以发现历史数据之间的关系,从而预测未来的事件和行为。因此,预测分析已经在各行各业得到广泛应用,例如预测保险索赔、市场营销反馈、债务损失、购买行为、商品用途、客户流失等。假设治疗数据显示,大多数患有ABC疾病的病人在用XYZ药物治疗后反映效果很好,尽管其中有个别人出现了副作用甚至死亡。你可以拒绝给任何人提供XYZ药物,因为它有副作用的风险,但这样一来,大多数病人就会继续受到疾病的折磨;或者你也可以让病人自己来做决定,通过签署法律文件来免责。但是,最好的解决方法是基于患者的其他信息,利用分析来预测治疗的效果。7.1.2预测分析的流程7.1.1数据具有内在预测性预测分析使用的技术可以发现历史数据之间的关系,从而预测未来的事件和行为。7.1预测分析方法论7.1.1

数据具有内在预测性现实中大部分数据的堆积都不是为了预测,但预测分析系统能从这些庞大的数据中学到预测未来的能力,正如人们可以从自己的经历中汲取经验教训那样。我们敬畏数据的庞大数量,但规模是相对的,数据最激动人心的不是其数量,而是数量的增长速度。7.1.1

数据具有内在预测性世上万物均有关联,这在数据中也有反映。例如:•你的购买行为与你的消费历史、在线习惯、支付方式以及社会交往人群相关。数据能从这些因素中预测出消费者的行为。•你的身体健康状况与生命选择和环境有关,因此数据能通过小区以及家庭规模等信息来预测你的健康状态。•你对工作的满意程度与你的工资水平、表现评定以及升职情况相关,而数据则能反映这些现实。•经济行为与人类情感相关,因此数据也将反映这种关系。7.1.1

数据具有内在预测性数据科学家通过预测分析系统不断地从数据集中找到规律。如果将数据整合在一起,尽管你不知道自己将从这些数据里发现什么,但至少能通过观测解读数据语言来发现某些内在联系。预测常常是从小处入手。预测分析是从预测变量开始的,这是对个人单一值的评测。近期性就是一个常见的变量,表示某人最近一次购物、最近一次犯罪或最近一次发病到现在的时间,近期值越接近现在,观察对象再次采取行动的概率就越高。许多模型的应用都是从近期表现最积极的人群开始的,无论是试图建立联系、开展犯罪调查还是进行医疗诊断。7.1.1

数据具有内在预测性与此相似,频率一一描述某人做出相同行为的次数也是常见且富有成效的指标。如果有人此前经常做某事,那么他再次做这件事的概率就会很高。实际上,预测就是根据人的过去行为来预见其未来行为。因此,预测分析模型不仅要靠那些枯燥的基本人口数据,例如住址、性别等,而且也要涵盖近期性、频率、购买行为、经济行为以及电话和上网等产品使用习惯之类的行为预测变量。这些行为通常是最有价值的,因为我们要预测的就是未来是否还会出现这些行为,这就是通过行为来预测行为的过程。预测分析系统会综合考虑数十项甚至数百项预测变量。把个人的全部已知数据都输入系统,然后等着系统运转。系统内综合考量这些因素的核心学习技术正是科学的魔力所在。7.1.2

预测分析的流程分析方法论应该充分利用分析工具所具有的功能。为了使效用最大化,分析师和客户应该全神贯注于项目过程开始和结论的部分——业务定义和部署上。问题定义和部署之间的技术开发活动,如模型训练和验证是很重要的,但是这些步骤中的关键选择却取决于如何定义这个问题。7.1.2

预测分析的流程预测分析的目标是根据你所知道的事实来预测你所不知道的事情。例如,你可能会知道一所住房的特征信息——它的地理位置、建筑时间、建筑面积、房间数等,但是你不知道它的市场价值。如果知道了它的市场价值,你就能为这个房子制定一个报价。类似的,你可能会想知道一个病人是否会患有某些疾病,一个手机用户每月消费的通话时长,或者借款人是否会每月还款等等。在每个例子里,你都要利用那些已经知道的数据来预测需要知道的信息。精准预测能产生很大的好处,能带动商业价值的增加,因为可靠的预测能够导致更好的决策。7.1.2

预测分析的流程预测分析的流程包括四个主要步骤或部分,即业务定义、数据准备、模型开发和模型部署,每一个部分又包括一系列子任务。应该明确的是,现代企业中的分析方法不只是一组数据的技术说明。还有一些必要的组织步骤来确保预测模型能够完成组织的目标,同时不会给业务带来法律法规的风险。

图7-3预测分析方法论定义业务需求PART027.27.2定义业务需求一个分析项目应该以结果为导向,并且其结果也应该对业务产生积极的作用,但这一点常常会被忽略。例如有的分析师往往不知道或者无法阐明他们所进行的分析会对项目的业务产生怎样的影响。7.2.3了解误差成本7.2.1理解业务问题7.2.4确定预测窗口7.2.2定义应对措施一个分析项目应该以结果为导向,并且其结果也应该对业务产生积极的作用。7.2.5评估部署环境7.2定义业务需求7.2.1

理解业务问题每个分析项目都应该从一个清晰定义好的业务目标开始,并且从项目利益相关者的角度来进行阐述。例如:·将市场活动ABC的反馈率提高至少x%;·将欺诈交易损失减少y%;·将客户留存率提高z%。分析师经常抱怨组织不用他们的分析结果。换言之,分析师花费了很大精力来收集数据、转化数据,运用分析构建预测模型,然后,该模型却被束之高阁,这样其实就是失败了。大多数的失败案例都是由于缺少精确定义的业务价值。这跟分析本身不同,实施预测模型是一项跨部门的活动,它需要利益相关者、分析师和IT等多方合作,并且也有既定的项目实施成本。7.2.2

定义应对措施应对的措施之一就是获得想要的预测内容。为了实现更大的价值,应对措施应该能对那些产出结果会影响组织关键指标的决策或者业务流程起到作用。例如,一个针对性的促销是否会对目标客户有影响,一个住房最可能的销售价格是什么,一个页面访问者最可能的下一次点击位置,或者一个足球赛中的进球分布。在大多数分析案例中,应对措施代表了一种未来事件,因此你还不知道这种对策方法产生的结果。例如,一个信用卡发卡机构可能想要预测某个客户是否会在明年申请破产。一个发生在未来的事件本质上是不确定的,如果你的目的是为了避免给破产客户提供贷款从而减少债务损失,那么事后才得到的信息就太晚了。7.2.2

定义应对措施在一些情况下,应对措施代表了一个当前或过去的事件。例如,如果因为一些原因无法获得破产记录,那么可以利用预测模型在其他客户信息的基础上估计一个客户是否之前已经申请了破产。应对措施的时间维度应该是明确的。假设想要预测一个潜在借款人是否会在十年分期贷款里违约,你应该定义违约的应对措施是在整个贷款周期内还是在一个更短的周期内?长期应对举措往往更适合商业决策,但是需要更多的历史数据去验证。预测长期行为也比预测短期行为更加困难,因为外部因素有更大的可能性来影响到你希望模拟的行为。7.2.2

定义应对措施对于任何商业应用,都有可能需要预测多种对策:·税务机关需要确定应该审核哪些纳税申报表:审计的成本很高,并且审计师的数量有限。为了最大限度地提高每个审计师带来的收益,税务机关应该同时预测瞒报收入的查出概率和税务机关可能收回的金额。·一所大学希望最大限度地提高在校友捐赠活动中的投资回报。为了正确制定不同的策略,校方应该预测两个概率:每个校友响应的可能性和每位校友可能会捐赠的金额。7.2.2

定义应对措施如果面对很多商业问题,你想要预测的就可能是多个应对措施。例如,为了最大限度地提高一场捐赠活动的投资回报率(ROI),你会想知道预测捐赠活动的潜在目标是否会得到响应,以及如果响应了可能会捐助多少钱。尽管存在单个模型对应多种应对措施建模的技术,但大多数分析师更愿意将问题划分成几个部分,然后针对每种应对措施分别建立预测模型。以这种方式分解问题,能够确保分析师针对每个应对措施产生的影响来独立优化预测模型,并且可以给业务使用者提供更大的灵活性。7.2.2

定义应对措施例如,考虑两组可能的捐赠人:对活动响应度较低却有较高的平均捐赠额的人,以及对活动响应度较高却有较低的平均捐赠额的人。这两部分都有着相似的整体预期值。然而,通过细分应对行为和分别建模,客户可以区分这两组捐赠人并采用不同的策略。大多数预测问题可以分成两类:分类和回归。在分类中,分析师希望预测将在未来发生的一个可分类的事件,在大多数案例中这是一个二值问题。因为消费者要么对一个营销活动做出响应要么不响应,负债人要么宣布破产要么不破产。在回归中,分析师希望预测一个连续值,例如消费者将会消费的手机通话时长,或者购买者将会在一个时期里消费的金额。有一些技术适合分类问题,而另一些适合回归问题,还有一些则同时可以用于分类和回归。分析师一定要了解所预测的问题,从而选择正确的技术。7.2.3

了解误差成本在理想情况下,人们希望用一个模型就完美地预测了未来的事件,但实际上这样的可能性不大。但放弃追求建立完美模型的想法,就应考虑模型要多精确才算“足够好”?通常,预测模型必须能够提高决策的有效性,从而带来足够多的经济收益,以抵消开发和部署模型的成本。当风险价值较高时,预测模型能够产生很好的经济效益。如果风险价值较低,即使一个非常好的预测模型也只能提供很少的经济效益或几乎没有经济效益,因为做一个错误决策的损失很小。许多组织不愿意费心建立针对邮件营销活动的预测模型,就是因为发一封电子邮件给一个不会响应的消费者的增量成本很低,这也意味着你的邮箱里会有更多的垃圾邮件。7.2.3

了解误差成本假设风险价值高到需要建立一个预测模型,那么这个模型的效果一定要比现有的针对性方案的效果好。预测模型的总体准确性十分重要,但一定要考虑到误差的成分。一个二值分类模型有两种正确的结果:它可以精准地预测一个事件是否会发生,或者它可以预测这个事件是否不会发生。同样它也有两种错误的结果:它可能错误地预测一个事件将会发生,或者它错误地预测这个事件不会发生。7.2.3

了解误差成本假设开发预测模型的目标是预测在ICU(重症监护病房)的患者心脏骤停这个事件。如果模型预测结果是该患者心脏会骤停,那么ICU的工作人员将会主动采取治疗措施,在这种情况下,患者有更大的可能活下来。否则,这些工作人员只会在患者心脏骤停时采取措施,到那时一切都太迟了。

图7-5ICU监测7.2.3

了解误差成本如果一个预测模型错误地预测了该患者会心脏骤停,那么结果可以称作积极错误。如果预测模型预测该患者不会心脏骤停,但是患者实际上心脏骤停了,那么结果则被称作消极错误。在大多数实际的决策中,错误的代价是不对称的,这意味着积极错误的代价和消极错误的代价有天壤之别。在这个案例中,积极错误的代价只是不必要的治疗,而消极错误的代价则是患者死亡概率增加。大多数医疗决策中,利益相关者把重心放在最大限度地减少消极错误而不是积极错误上。7.2.4

确定预测窗口预测窗口对分析项目的设计有很大影响,它会影响到分析方法的选择和数据的选择。所有的预测都与未来发生的事件有关,但是不同的商业应用对预测提前的时间有不同的要求。例如,在零售业商店,排班人员可能只对明天或接下来几天的预期店铺流量感兴趣;采购经理可能会关注接下来几个月的店铺流量;而商场选址人员可能会关注未来几年的预测流量。7.2.4

确定预测窗口一般来说,随着预测窗口长度延长,模型预测的精确性会下降。换句话说,预测明天的店铺流量要比预测未来三年的店铺流量简单得多。这里有两个主要原因,一是预测窗口延长了,突发事件发生的概率会增加。例如,如果一个突发事件发生在你店铺的附近,那么该店铺的流量将会发生改变。二是随着时间的变化,随机误差会累积增加,并且对预测产生很大的影响。7.2.4

确定预测窗口预测窗口也会影响预测中作为预测因子使用的数据。还是以零售业为例,假设你想要提前预测一天中一个店铺的流量,使用建立在动态参数上的一个时间序列分析可能就很好用,比如过去三天中的每日流量。另一方面,如果你想要预测未来三年的店铺流量,你可能不得不加入一些基础要素数据,如本地住房建设情况、家庭分布、家庭收入变化以及竞争格局的变化。7.2.5

评估部署环境部署是分析过程的重要部分,分析师在开展预测建模项目工作前一定要了解预测模型的部署环境。有两种方式可以用来部署预测模型:批量部署或者事务部署。在批量预测中,评分机制会针对一组实体计算记录级的预测结果,并且将结果存储在一个信息仓库中,需要使用预测结果的商业应用可以直接从信息库中获取预测结果。在事务部署中,评分机制根据应用程序的请求对每个记录计算预测结果,该应用程序会立即使用预测结果。事务型的或者实时的评分对需要实时或很小延迟的应用至关重要,但是它们的成本也会更高,同时大多数应用并不一定需要较小的延迟。7.2.5

评估部署环境分析师一定要知道一个应用程序可以在部署环境中获得哪些数据。这个问题很重要,因为分析师通常是在一个“沙箱”环境中开展工作,在这种环境中数据相对容易获取,也相对容易将其合并到分析数据集。而生产环境中可能存在运营上或者法律上的约束,这可能会限制数据的使用,或者让数据使用的成本大大增加。从战略角度来说,如果目的是利用分析来确定什么数据对业务有最大的价值,那么在预测模型中使用当前部署环境没有的数据,可能会十分有效。然而在这种情况下,组织应该计划更长的实施周期。7.2.5

评估部署环境部署环境也会影响分析师对分析方法的选择。一些方法,如线性回归或者决策树,生成的预测模型格式很容易在基于SQL的系统中实现。其他一些方法,如支持向量机或者神经网络,则很难实现。一些预测分析软件包支持多种格式的模型导出。但是,部署环境可能不支持分析软件包的格式,并且分析软件包可能不支持所有分析工具的模型导出。建立分析数据集PART037.37.3建立分析数据集为分析预测工作而准备数据的过程包括数据采集、评估和转化等,建立分析数据集是预测分析的第一步。其中的数据处理(准备)工作需要占据整个周期的大部分时间,它们代表了流程改进和上下游协同的机会。

图7-6建立分析数据集7.3.4转化数据7.3.1配置数据7.3.5执行基本表操作7.3.2评估数据7.3.3调查异常值7.3.6处理丢失数据7.3建立分析数据集7.3.1

配置数据理想状态下,分析师是将分析工具连接到一个高效的企业信息仓库中,而现实生活中的企业分析与上述理想情况相比,不同点在于:数据存在于企业内部和外部的不同资源系统中;数据清理、集成和组织处理使数据从“混乱”到“干净、有条理、可记录”。虽然企业在数据仓库和主数据管理(MDM)方面已经取得了长足的进步,但只有很少的企业能跟得上不断增长的数据量和愈加复杂的数据。“主数据管理”描述了一组规程、技术和解决方案,这些规程、技术和解决方案用于为所有利益相关方(如用户、应用程序、数据仓库、流程以及贸易伙伴)创建并维护业务数据的一致性、完整性、相关性和精确性。7.3.1

配置数据分析师是为那些有即时业务需求的内部客户工作的,所以他们往往会在IT部门之前开始工作,他们会花费大量的时间收集和整合数据。这些时间大部分都花在调查数据潜在来源、了解数据采集、购买文档和数据使用许可上。实际操作上,将数据导入分析“沙箱”只会花费相对很少的时间。7.3.2

评估数据当接收到数据文件时,分析师首先要确定数据格式是否与分析软件兼容,分析软件工具往往只支持有限的几种格式。如果可以读取数据,那么下一步就是执行测试,以验证数据是否符合相关文档。如果没有文档,分析师将花费一些时间来“猜测”数据格式和文件的内容。7.3.2

评估数据如果数据文件是可读的,分析师会读取整个文件,如果文件很大的话,则读取一个样本文件,并且对数据进行一些基本的检查。例如对于表格数据,这些检查包括:·确定键值是否存在,这对关联到其他表是很必要的。·确保每个字段都被填充。字段不需要填充每一个记录,但所有行都是空白的字段可以从分析中删除。·检查字段的变化。每行都填充相同值的字段可以从分析中删除。·评估字段的数据类型:浮点、整数、字符、日期或其他数据类型,数据类型与特定平台相关。·确定在数据文件中是否有对应此项目应对措施的数据字段。7.3.3

调查异常值含有极端值或异常值的数据集会对建模过程产生不必要的影响,极端情况下甚至可能会使建立准确模型的工作变得困难。分析师不能简单地丢弃任何一个异常值,例如一个保险分析师不能简单地放弃卡特里娜飓风所造成的那部分损失。图7-7异常值7.3.3

调查异常值分析师应该调查离群值,以确定它们是否是在数据采集过程中人为造成的。例如,一位研究超市POS机数据的分析师发现了一些消费金额非常大的账户。在调查中,他发现这些“极端”的顾客是超市收银员在刷自己的会员卡,以使那些没有会员卡的顾客获得折扣。又例如,研究租赁公司数据的分析师发现,在一个市场中出现了这样的不寻常现象,大量进行贷款申请的客户并没有随后激活和使用这些贷款。分析师和客户提出了一些假设来“解释”观察到的这种行为。但是在调查中分析师发现,系统管理员在系统中跑了很多测试申请,但是却没有将测试申请和真实客户申请进行区分。7.3.4

转化数据在建模开始前,必要的数据转换取决于数据的条件和项目的要求。因为每个项目要求的不同,对数据转换进行统一概括是不可能的,但是可以审查数据转换的原因以及通用类型的操作。对研究数据进行转换的原因有两个。第一个原因是源数据与应用程序的业务规则不匹配。原则上,组织应在数据仓库后端实施流程,确保数据符合业务规则。这使整个企业有一致的应用程序。但实际上分析师往往必须在组织数据仓库之前进行分析工作,并且所用的数据也不是企业数据仓库的一部分。也有一些特殊情况,分析师会采用与企业业务规则不同的业务规则,以满足内部客户的需要。7.3.4

转化数据分析转换数据的第二个原因是为了改善所建立预测模型的准确性和精确性。这些转换包括简单数学变换、“分箱”的数值变量、记录分类变量以及更复杂的操作,如缺失值处理或挖掘文本提取特征。一些预测分析技术需要数据转化,而分析软件包会自动处理所需的转换。

图7-8分析的自动处理7.3.4

转化数据当分析师验证模型时,转换数据极大地提高了模型的精确性和准确性。然而,分析师应该问的最重要的问题是,这样的转换是否能够在部署环境中实现。分析沙箱中“规范”的数据不能改善预测模型在实际市场中的预测效果,除非在部署环境中的数据可以利用相同的转换变成“规范的”。7.3.5

执行基本表操作分析工具软件一般需要将全部数据(应对措施和预测因子)加载到一个单独表格中。除非所有需要的数据已经存在于同一张表中,否则分析师必须执行基本表操作来建立分析数据集。这些操作包括:·连接表 ·添加一列并用计算字段填充

·附加表 ·删除列·选择行 ·分组·删除行高性能的SQL引擎通常在表操作方面比分析软件更有效,分析师应尽可能地利用这些工具进行基本数据的准备。7.3.6

处理丢失数据数据可能会因为某些原因从数据集中丢失。数据有时是逻辑上丢失:例如当数据表包括记录客户数据服务使用的字段,但是消费者却没有订购该服务。在其他一些情况下,数据丢失是因为源系统使用一个隐含的零编码(零表示为空格)。数据丢失也可能是由于数据采集过程中人为的因素。例如如果客户拒绝回答收入问题,该字段可能是空白的。许多统计软件包要求每个数据工作表的单元格中都有值,并且将从表格中删除那些每列不是都有值的行。所以分析师使用一些工具来推断缺失数据的值,所使用的方法包括从简单的平均替代到复杂的最近邻方法。7.3.6

处理丢失数据对丢失数据的处理不会为数据增加信息价值,它们仅仅是为了可以应用那些无法处理缺失数据的分析技术。因为数据丢失很少是由于随机现象引起的,所以分析师需要在理解数据缺失的原因后,谨慎地使用推断技术来补足相关数据。如同其他转换一样,分析师需要问自己是否能够在部署环境中将缺失的数据“修复”,以及“修复”所需的成本是多少。比起在分析数据集中“修复”数据,更好的做法是使用能够处理缺失数据的分析技术,例如决策树。降维与特征工程PART047.47.4降维与特征工程解决大数据分析问题的一个重要思路在于减少数据量。针对数据规模大的特征,要对大数据进行有效分析,需要对数据进行有效的缩减。进行数据缩减,一方面是通过抽样技术让数据的条目数减少;另一方面,可以通过减少描述数据的属性来达到目的,也就是降维技术。我们来学习采用有效选择特征等方法,通过减小描述数据的属性来达到减小数据规模的目的。7.4.3特征变换7.4.1降维7.4.2特征工程学习采用有效选择特征等方法,通过减小描述数据的属性来达到减小数据规模的目的。7.4降维与特征工程7.4.1

降维分析师常常将维度、特征和预测变量这三个词混用(视为同义词)。分析师利用两类技术来降低数据集中的维度:特征提取和特征选择。顾名思义,特征提取方法是将多个原始变量中的信息合成到有限的维度中,从噪声中提取信号数据。特征选择方法帮助分析师筛选一系列预测因子,选出最佳的预测因子用于模型训练,同时忽略其他的预测因子。特征提取比特征选择更为精致,有着悠久的学术使用历史,特征选择则是更实用的工具。许多预测模型技术含内置的特征选择功能:这种技术自动地评估和选择可获得的预测因子。当建模技术中有内置的特征选择功能时。分析师可以从建模过程中省略特征选择步骤,这是使用这些方法的一个重要原因。7.4.2

特征工程特征是大数据分析的原材料,对最终模型有着决定性的影响。数据特征会直接影响使用的预测模型和实现的预测结果。准备和选择的特征越好,则分析的结果越好。影响分析结果好坏的因素包括模型的选择、可用的数据、特征的提取。优质的特征往往描述了数据的固有结构。大多数模型都可以通过数据中良好的结构很好地学习,即使不是最优的模型,优质的特征也可以得到不错的效果。优质特征的灵活性可以使用简单的模型运算得更快,更容易理解和维护。优质的特征还可以在使用不是最优的模型参数的情况下得到不错的分析结果,这样用户就不必费力去选择最适合的模型和最优的参数了。7.4.2

特征工程特征工程的目的就是获取优质特征以有效支持大数据分析,其定义是将原始数据转化为特征,更好地表示模型处理的实际问题,提升对于未知数据的准确性。它使用目标问题所在的特定领域知识或者自动化的方法来生成、提取、删减或者组合变化得到特征。特征工程包含特征提取、特征选择、特征构建和特征学习等问题。图7-9特征工程整体架构示例7.4.2

特征工程(1)大数据分析中的特征。特征是观测现象中的一种独立、可测量的属性。选择信息量大的、有差别性的、独立的特征是分类和回归等问题的关键一步。最初的原始特征数据集可能太大,或者信息冗余,因此在分析应用中,初始步骤就是选择特征的子集,或构建一套新的特征集,减少功能来促进算法的学习,提高泛化能力和可解释性。在结构化高维数据中,观测数据或实例(对应表格的一行)由不同的变量或者属性(表格的一列)构成,这里属性其实就是特征。但是与属性不同的是,特征是对于分析和解决问题有用、有意义的属性。7.4.2

特征工程对于非结构数据,在多媒体图像分析中,一幅图像是一个观测,但是特征可能是图中的一条线;在自然语言处理中,一个文本是一个观测,但是其中的段落或者词频可能才是一种特征;在语音识别中,一段语音是一个观测,但是一个词或者音素才是一种特征。7.4.2

特征工程(2)特征的重要性。这是对特征进行选择的重要指标,特征根据重要性被分配分数并排序,其中高分的特征被选择出来放入训练数据集。如果与因变量(预测的事物)高度相关,则这个特征可能很重要,其中相关系数和独立变量方法是常用的方法。在构建模型的过程中,一些复杂的预测模型会在算法内部进行特征重要性的评价和选择,如多元自适应回归样条法、随机森林、梯度提升机。这些模型在模型准备阶段会进行变量重要性的确定。7.4.2

特征工程(3)特征提取。一些观测数据如果直接建模,其原始状态的数据太多。像图像、音频和文本数据,如果将其看作表格数据,那么其中包含了数以千计的属性。特征提取是自动地对原始观测降维,使其特征集合小到可以进行建模的过程。对于结构化高维数据,可以使用主成分分析、聚类等映射方法;对于非结构的图像数据,可以进行线或边缘的提取;根据相应的领域,图像、视频和音频数据可以有很多数字信号处理的方法对其进行处理。7.4.2

特征工程(4)特征选择。不同的特征对模型的准确度的影响不同,有些特征与要解决的问题不相关,有些特征是冗余信息,这些特征都应该被移除掉。在特征工程中,特征选择和特征提取同等重要,可以说数据和特征决定了大数据分析的上限,而模型和算法只是逼近这个上限而已。因此,特征选择在大数据分析中占有相当重要的地位。7.4.2

特征工程通常,特征选择是自动地选择出对于问题最重要的那些特征子集的过程。特征选择算法可以使用评分的方法来进行排序;还有些方法通过反复试验来搜索出特征子集,自动地创建并评估模型以得到客观的、预测效果最好的特征子集;还有一些方法,将特征选择作为模型的附加功能,像逐步回归法就是一个在模型构建过程中自动进行特征选择的算法。7.4.2

特征工程工程上常用的方法有以下几种:①计算每一个特征与响应变量的相关性;②单个特征模型排序;③使用正则化方法选择属性。求解不适定问题的普遍方法是:用一组与原不适定问题相“邻近”的适定问题的解去逼近原问题的解,这种方法称为正则化方法。④应用随机森林选择属性;⑤训练能够对特征打分的预选模型;⑥通过特征组合后再来选择特征;⑦基于深度学习的特征选择。7.4.2

特征工程(5)特征构建。特征重要性和特征选择是告诉使用者特征的客观特性,但这些工作之后,需要人工进行特征的构建。特征构建需要花费大量的时间对实际样本数据进行处理,思考数据的结构和如何将特征数据输入给预测算法。对于表格数据,特征构建意味着将特征进行混合或组合以得到新的特征,或通过对特征进行分解或切分来构造新的特征;对于文本数据,特征构建意味着设计出针对特定问题的文本指标;对于图像数据,这意味着自动过滤,得到相关的结构。7.4.2

特征工程(6)特征学习。这是在原始数据中自动识别和使用特征。深度学习方法在特征学习领域有很多成功案例,比如自编码器和受限玻尔兹曼机。它们以无监督或半监督的方式实现自动的学习抽象的特征表示(压缩形式),其结果用于支撑像大数据分析、语音识别、图像分类、物体识别和其他领域的先进成果。抽象的特征表达可以自动得到,但是用户无法理解和利用这些学习得到的结果,只有黑盒的方式才可以使用这些特征。用户不可能轻易懂得如何创造和那些效果很好的特征相似或相异的特征。这个技能是很难的,但同时它也是很有魅力的、很重要的。7.4.3

特征变换特征变换是希望通过变换消除原始特征之间的相关关系或减少冗余,从而得到更加便于数据分析的新特征。从信号处理的观点来看,特征变换是在变换域中进行处理并提取信号的性质,通常具有明确的物理意义。从这个角度来看,特征变换操作包括傅里叶变换、小波变换和卡博尔变换等。图7-10特征工程示例7.4.3

特征变换从统计的观点来看,特征变换就是减少变量之间的相关性,用少数新的变量来尽可能反映样本的信息。从这个角度来看,特征变换包括主成分分析、因子分析和独立成分分析。从几何的观点来看,特征变换通过变换到新的表达空间,使得数据可分性更好。从这个角度来看,特征分析包括线性判别分析和方法。建立预测模型PART057.57.5建立预测模型尽管分析师经常会偏爱某一种技术,但是对于一个基于特定数据集的问题而言,通常事先不知道用哪种技术才能建立最好的预测模型,分析师要通过实验来确定最佳模型。现代高效的分析平台能够帮助分析师进行大量的实验,并且分析软件包有时也会包括脚本编写功能,因此分析师可以通过批量方式来指定和执行实验。7.5.3执行模型训练计划7.5.1制定建模计划7.5.4测量模型效果7.5.2细分数据集对于一个基于特定数据集的问题而言,通常分析师要通过实验来确定最佳模型。7.5.5验证模型7.5建立预测模型7.5.1

制定建模计划尽管事实上我们可以通过暴力搜索得到最佳模型,但是对于大多数问题,实验的数量可能会庞大到令人难以置信。因此,利用建模技术能够提供许多不同的变量给分析师,任何一个变量都可能对模型效果产生质的影响。同时,加入分析数据集的每一个新预测变量会产生许多种确定一个模型的方法。我们需要考虑新预测因子产生的主要影响和对模型的多种数学转换,以及新预测因子和其他已存在因子之间的交互影响。分析师能够通过一些方法缩小实验搜索区间。首先,因变量和自变量的特征可以限定可行分析技术的范围(表7-1)。7.5.1

制定建模计划表7-1变量特征限定技术方法7.5.1

制定建模计划其次,分析师可以通过计算每个预测变量的信息值删除那些没有数值的变量,从而缩小实验范围。通过使用正则化或逐步回归建模技术,分析师建立了只包含正向信息值变量的一个初步模型。许多分析软件包包含内置特征选择算法,分析师还可以利用开放的特征选择分析工具。7.5.2

细分数据集对分析数据集进行分割或者分区应该是实际模型训练前的最后一步。分析师对于分割的正确数量和大小有不同的意见,但是在一些问题上达成了广泛的认同。首先,分析师应该利用随机样本来创建所有的分区。只要分析师使用一个随机过程,简单采样、系统采样、分层采样、聚类采样都可以被接受。其次,分析师应该随机选择一个数据集,并在模型训练过程中持续使用。这个数据集应该足够大,使分析师和客户可以对应用于生产数据的模型性能得出有意义的结论。7.5.2

细分数据集根据所使用的具体分析方法,分析师可以进一步将剩余的记录数据分为训练和剪枝数据集。一些方法(如分类和回归树)集成了一些原生的功能,可以对一个数据集进行训练,并且对另一个数据集进行剪枝。在处理非常大量的记录时,分析师可以通过将训练数据分割为相等的子数据集,并对单个子数据集运行一些模型的方法来加速实验进程。在对第一个复制数据集运行模型后,分析师可以放弃效果不佳的模型方法,然后扩展样本大小。分析师也可以显式地测量当样本扩大时模型的运行效果。7.5.3

执行模型训练计划在这个任务中,分析师运行所需要的技术步骤来执行模型训练计划。所使用的技术和该技术的软件实现不同,具体的技术步骤也不同。然而理想情况下,分析师已经使用分析软件的自动化功能,或通过自定义脚本来使这个任务自动化完成。因为在一个有效模型训练计划中运行的单个模型数量可能会很大,所以分析师应该尽可能避免手工执行。7.5.4

测量模型效果当运行大量模型时,需要一个客观方法来衡量每个模型的效果,由此可以对候选模型排名并选择最好的模型。如果没有一个测量模型效果的客观方法,分析师和客户就必须依赖手工对每个模型进行评价,这样会限制可能的模型试验数量。7.5.4

测量模型效果测量模型效果有许多方法。例如“酸性测试”就是针对模型的业务影响,但要在建模过程中执行有效测量几乎不可能,所以分析师一般依靠近似测量。对测量的选择有四个一般性标准:(1)测量应该对指定的建模方法和技术具备通用性;(2)测量应该反映独立样本下的模型效果;(3)测量应该反映模型在广泛数据下的效果;(4)测量应该可以被分析师和客户双方理解。7.5.4

测量模型效果一般来说,测量方法可以分为以下三类:(1)适合分类因变量的测量方法(分类);(2)适合连续因变量的测量方法(回归);(3)既适合分类也适合回归的测量方法。7.5.4

测量模型效果对于分类问题,简单的总体分类准确性很容易计算和理解。所提出的列联表(“混淆矩阵”)的测量方法很容易理解。表7-2混淆矩阵7.5.4

测量模型效果整体分类准确率不区分积极错误和消极错误。但是,在实际情况中,收益矩阵往往是不对称的,并且两类错误有不同的代价。一个预测模型可能会呈现出比另一种模型更好的总体准确率,但是除非你理解积极错误和消极错误之间的区别,否则你可能无法选出最佳的模型。7.5.5

验证模型在分析项目的过程中,一个分析师可能会建立几十上百个候选模型。模型验证有两个目的。首先,它能够帮助分析师探测过度学习,例如在一个算法的过度学习中训练数据得到的特征无法推广到整体中。其次,验证帮助分析师对模型从最好到最差评级,以此来识别对业务最好的选择。分析师要区别不同种类的验证:·n折交叉验证·分割样本验证·时间样本验证7.5.5

验证模型n折交叉验证是一种能够确保分析师利用小样本的抽样数据,通过二次采样现有数据,实现多次重叠复制,并且对每次复制数据单独进行验证模型的方法。当数据非常昂贵时(如临床试验)这是一种可使用的合理方法,但是对于大数据来说就不必要了。在分割样本验证中,分析师将可用数据分割为两个样本,利用其中一个训练模型,而另一个用于验证模型。一些分析工具有内置的功能来指定训练和验证数据集,使分析师可以将以上两个步骤结合起来。可以利用时间验证样本对模型进行部署前的二次验证。分析师在用于模型训练和验证的原始样本之外的不同时间点另外单独抽取样本。这项检查用来确保模型准确性和精确性的估计是稳定的。部署预测模型PART067.67.6部署预测模型预测模型在组织部署之前都是没有实际价值的。在一些组织中,当建模结束时,部署计划就开始了。这经常导致非常大的延迟和较长的部署周期。最坏的结果就是项目的失败,而这种情况经常发生。在一次调查中,只有16%的分析师说,他们的组织“总是”执行了分析的结果。部署计划应该在建模开始前就展开。分析师在开始建模前一定要理解技术、组织和法律的约束。计划开始早期,IT组织可以与模型开发并行地执行一些任务,以减少总周期时间。图7-11价格指数与预测7.6.3评价模型效果7.6.1审查和批准预测模型7.6.4管理模型资产7.6.2执行模型评分预测模型在组织部署之前都是没有实际价值的。部署计划应该在建模开始前就展开。7.6部署预测模型7.6.1

审查和批准预测模型在许多组织中,部署的第一步是对预测模型的正式审查和批准。这个管理步骤有很多目的:首先,它确保了模型符合相关的管理个人信息使用的法律和法规;其次,它提供一个机会对模型和建立模型的方法进行同行审查。最后,正式批准模型投入生产环境所需资源的预算控制。批准流程实际上在分析开始前就展开。如果不能保证部署资源,开展一个预测建模项目将是毫无意义的。分析师和客户应该在收集数据前,充分了解数据使用的相关法律约束。如果法律和合规审查要求从一个模型中移除一个预测因子,分析师将不得不重新估计整个模型。7.6.1

审查和批准预测模型如果分析师和客户在项目开始阶段能够充分评测部署环境,审查步骤中就不应该有任何意外。如果模型使用的数据目前不在生产环境中,企业需要在数据源或者采取、转换和导入(ETL)流程环节进行投入来实现模型。这将增加项目的周期时间。7.6.2

执行模型评分组织以批量过程的方式或者单个事务的方式来执行模型

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论