帮助您亲自了解预测分析的一些新应用(二)

对未来的预测可以追溯到看手相的时代。预测分析需要对大量的历史数据进行分析和预处理,然后将结果提交给预测技术进行培训。一个预测模型需要将数据与良好的数学方法结合起来解决特定的问题。假设有一个明确定义的问题和一个旨在解决此问题的模型,那么必须详尽地衡量和评估所有预测错误。因此使用模型评估确定模型的准确度。随后使用评估结果选出最佳模型并设定理想的鉴别阈值。当结合业务规则后,预测模型将能够真正地对您的企业的底线产生影响。预测解决方案就是将数据、良好的数学方法和业务规则组合在一起,它们共同交付增强的业务决策功能。

预测分析允许公司和个人构建能够利用历史数据预测未来的解决方案。通常,如果未对试图解决的问题进行充分的定义,那么再优秀的预测模型也将派不上用场。

所有人都认为构建预测解决方案的第一步是数据分析和预处理,然后才是构建模型等,然而实际过程要比这更加简单。预测解决方案就是将数据和良好的数学方法结合起来解决特定问题。解决方案成功的前提是对问题进行明确定义。如果问题定义有误,那么解决方案评估结果将变得难以衡量,并因此无法进行有效的部署。另一方面,一个明确定义的问题将有助于清晰地评估所建议的解决方案的好坏。这使得所有参与方能够更轻松地理解并信任评估结果。

假设有一个明确定义的具体问题,数据科学家可以查看历史数据来确保它支持解决方案构建。即使数据并不完美,但可用的数据仍然可以提供足够的信息来构建成功的预测解决方案。完成数据分析后就将开始执行预处理。这一阶段之后就是模型构建,最终会产生一个预测模型。对模型进行评估(是否能够使用)后,将其放到一个业务上下文中并最终投入使用。本文将介绍创建预测解决方案的所有阶段,从数据预处理一直到实现有效部署。下面,我将使用 IBM SPSS Statistics 来阐述这几个阶段。

数据预处理:从原始数据到特性

是否应当从原始数据中直接构建预测模型?或者,在构建模型之前是否应先对数据进行预处理?答案照例是 “视情况而定”。尽管可能会按原样使用某些数据字段,但是大部分字段需要进行某种处理 (massaging)。

历史数据的形式多种多样。例如,数据可能包含有关某位客户的结构化和非结构化信息。在这种场景下,结构化数据包含诸如客户年龄、性别、最近一月内的购买次数等字段。这些信息是从客户帐户记录和历史交易中获得的。非结构化数据可能包括相同客户针对所购买商品或服务提供的反馈意见。在本系列文章的第 1 部分和第 2 部分中,我使用了类似的数据字段演示预测分析的一种应用:根据人员缩减预测客户流失。如果您按顺序阅读了前几篇文章,那么您现在应该已经对此问题有了大致的了解。

要构建一个预测模型来输出客户流失风险,我们决定将某些输入字段的值放到一起。例如,所有年龄在 21 岁以下的客户都划分在学生类别中。类似地,所有 55 岁以上的客户将划分到退休人员类别中。年龄介于 21 至 55 之间的客户则属于工人类别。很明显,这对最初的年龄字段进行了简化,然而这样做增加了将数据提交给某种预测技术以进行培训时的可预测性。实际上,数据预处理的最终目标就是增强输入字段的可预测性。通过从原始数据中挖掘特性,我们实际上突出显示了数据中的关键信息。通过这样做,我们简化了使用预测技术从数据中了解隐含的重要模式的过程。

预处理的另一个目的是修改数据,从而使数据适合于培训。例如,根据模型构建使用的技术,可能需要对前面提到的三个与年龄有关的分类进行离散。对于这种情况,如果客户 A 是 25 岁,那么她的年龄将通过三个不同的字段表示:学生、工人和退休人员,分别映射为 0、1 和 0。出于同样的考虑,任何连续的字段都需要进行标准化。在本例中,最近一个月内的购买次数将转化为一个介于 0 和 1 之间的数。注意,原始字段本身已经是经过预处理后的结果,因为它表示一个聚合:某段时期内发生的所有交易的总购买次数。

此外,我们还决定使用文本挖掘在评论中找出损耗提示并创建一个损耗度量,也由 0 到 1 之间的一个值表示。我们的想法是使用客户的特性列表表示每个客户并将它们结合为一条记录。如果选择了 100 个特性并且存在 100K 名客户,那么最终数据集将包含 100k 个行(或记录)以及 100 个列。

要让数据处理变得更简单,除了允许用户按照以上描述操作数据外,还有许多统计包可以使用户选择一个选项来自动预处理数据。例如,IBM SPSS Statistics 就允许自动构建特性。只需要选择 Transform menu > Prepare Data for Modeling 并单击 Automatic 即可。随后,您将被要求描述您的目标。可以从以下四个选项列表中选择。这些选项是:1) 平衡速度和准确度;2) 优化速度;3) 优化准确度;以及 4) 自定义分析。最后一个选项只推荐有经验的用户使用。IBM SPSS Statistics 还允许对数据应用各种转换。这可以通过 Transform 菜单轻松访问。

对数据进行适当的处理后,接下来将进行模型培训。

模型培训:从数据中获悉模式

在培训期间,所有数据记录都呈现给一种预测技术,该技术负责从数据中获悉模式。如果发生客户流失,数据中将包含可以区别流失客户和非流失客户的模式。注意,这里的目标是在输入数据(年龄、性别、最近一月购买的商品数量等)和目标或因变量(流失和非流失)之间创建一个映射函数。预测技术有许多种,诸如神经网络 (NN) 和支持矢量机等,都具有强大的功能,且能够学习复杂的任务。这些技术也具有通用性,可以用于解决各种问题。其他技术(如决策树和记分卡)也能够解释其预测背后的原理。由于本系列的第 2 部分已经对这些技术有所介绍,因此本文将主要侧重于 NN 技术。注意,相同的模型构建原理也适用于所有其他技术。从现在起,我将假设您是一名数据科学家,负责任务建模任务。

要在 IBM SPSS Statistics 中构建一个 NN,选择 Analyze menu > Neural Networks 并单击 Multilayer Perceptron。之后,将显示一个以制表符分隔的窗口,允许您为预测模型的构建配置所有必要的参数。

在 “Variables” 选项卡中,选择目标或因变量,以及您希望呈现给网络以供培训的所有输入变量。IBM SPSS Statistics 要求您将输入分为 Factor 和 Covariate。Factor 表示分类输入字段(如年龄),我们之前已将其转化为特定值:学生、工人和退休人员。IBM SPSS Statistics 将在培训开始前自动对这些值进行离散。Covariates 表示连续的变量。这些变量也将自动进行重新调节来改善网络培训。考虑到默认情况下会对分类变量进行离散,对连续变量进行重新调节,因此您无需在模型培训前做这些工作。

一种常见的做法是将包含处理过的数据的数据集分为两部分:一部分为模型培训预留,另一部分用于测试。第一个数据集通常包含总数据量的 70%。第二个数据集包含其余的数据,将用于模型验证(见下文)。这是 IBM SPSS Statistics 默认提供的分离。您可以通过选择 Partitions 选项卡来进行修改。

与任何其他预测技术一样,NN 附带了一些参数,可以根据数据和尝试解决的问题进行调整。在 Architecture 选项卡中,您可以选择使用某个选项实现自动架构选择,或者可以根据自己的专业水平对网络进行自定义,指定网络的层数和每个层的节点数。有关 NN 架构及其对培训的重要性等更多信息,请参阅本系列的第 2 部分。在 Training 选项卡中,您将看到其他参数,包括学习速度(网络学习应当有多快?)和优化算法。注意,选择错误的参数可能会导致无法实现学习。还需注意,和任何其他机器一样(使用或未使用计数器),针对某种预测技术设置某个参数总会产生副作用。例如,将 NN 的学习速度设置得过低将导致 NN 无法正常运行。如果设置得过高,那么 NN 将无法聚合。建议在一开始就使用 IBM SPSS Statistics 提供的默认参数。

IBM SPSS Statistics 还提供了其他配置选项卡,我们将在后面的小节中讨论。如果所有选项卡都进行了适当的配置,那么接下来就可以正式构建模型了。为此,在包含所有不同配置选项卡的窗口底部单击 OK 按钮。

时间: 2024-08-01 13:49:14

帮助您亲自了解预测分析的一些新应用(二)的相关文章

帮助您亲自了解预测分析的一些新应用(一)

这两种类型的知识都可增强您的决策制定能力.预测分析能够发现人类专家可能无法看到的数据中的隐藏模式.预测分析实际上是向数据应用数学知识的结果.因此,熟练的数学方法和良好的数据都对预测分析有很大帮助.考虑到我们可将预测分析应用到不同行业和垂直领域中的无数数据集中,本文将帮助您亲自了解预测分析的一些新应用. 本文是有关预测分析的 4 部分系列文章中的第 1 部分.第 1 部分对预测分析进行了总体概述.第 2 部分将重点介绍预测建模技术,这些技术是构成预测分析的核心内容的数学算法.第 3 部分将介绍这些

帮助您亲自了解预测分析的一些新应用(四)

在整个社会范围内,数据正在呈现指数级增长.IBM 指出,如今 90% 的数据都是在过去两年内产生的.幸运的是,有许多预测建模技术都可用于将这些数据转换为洞察和价值,这些技术包括神经网络 (NN).集群.支持向量机 (SVM) 和关联规则.这些技术是通过学习大量历史数据中隐含的模式来实现这一点的.完成学习后,将生成一个预测模型.对模型进行验证后,就意味着该模型能够归纳所学习的知识并将归纳结果应用到新的情景中.由于预测建模技术可以学习过去并根据学习结果预测未来,因此可用于解决各种问题,如http:/

帮助您亲自了解预测分析的一些新应用(三)

过去,实际应用预测解决方案是一项非常繁杂的过程,需要投入大量的时间和资源.预测模型标记语言 (PMML) 的出现彻底改变了这一局面.构建解决方案的http://www.aliyun.com/zixun/aggregation/7155.html">开发人员现在可以在几分钟之内就将预测解决方案投入使用.作为预测分析的事实标准,PMML 受到所有顶级数据挖掘供应商的支持,包括商业和开源的供应商.构建好预测模型后,可以很轻松地将其导出到一个 PMML 文件中.之后,您可以直接将该文件部署到一个基

《Python机器学习——预测分析核心算法》——第2章 通过理解数据来了解问题

第2章 通过理解数据来了解问题 Python机器学习--预测分析核心算法新数据集(问题)就像一个包装好的礼物,它充满了承诺和希望.一旦你能解决它,你就收获了喜悦.但是直到你打开它,它都一直保持着神秘.本章就是告诉你怎么"打开"新的数据集,看清楚里面都有什么,知道如何处置这些数据,并且开始思考如何利用这些数据构建相应的模型. 本章有两个目的:一是熟悉这些数据集,这些数据集被用来作为解决各种类型问题的例子,主要是利用第4章和第6章介绍的算法:另一个目的就是展示Python中分析数据的工具包

《Python机器学习——预测分析核心算法》——1.1 为什么这两类算法如此有用

1.1 为什么这两类算法如此有用 有几个因素造就了惩罚线性回归和集成方法成为有用的算法集.简单地说,面对实践中遇到的绝大多数预测分析(函数逼近)问题,这两类算法都具有最优或接近最优的性能.这些问题包含:大数据集.小数据集.宽数据集(wide data sets)[1].高瘦数据集(tall skinny data sets)[2].复杂问题.简单问题,等等.Rich Caruana及其同事的两篇论文为上述论断提供了证据. 1."An Empirical Comparison of Supervi

SAP被评为“大数据”预测分析领军企业

本文讲的是SAP被评为"大数据"预测分析领军企业,2013年1月24日,SAP公司日前宣布:在Forrester Research 发布的"The Forrester Wave: Big Data Predictive Analytics Solutions, Q1 2013"(<The Forrester Wave:2013 年第一季度大数据预测分析解决方案>)报告中,SAP被评为该领域的领军企业.此次评选活动中,SAP 凭借强大的架构和战略被誉为市场

预测分析:R语言实现.

数据科学与工程技术丛书 预测分析:R语言实现 Mastering Predictive Analytics with R [希] 鲁伊·米格尔·福特(Rui Miguel Forte) 著 吴今朝 译 图书在版编目(CIP)数据 预测分析:R语言实现/(希)鲁伊·米格尔·福特(Rui Miguel Forte)著:吴今朝译. -北京:机械工业出版社,2016.10 (数据科学与工程技术丛书) 书名原文:Mastering Predictive Analytics with R ISBN 978-

《Python机器学习——预测分析核心算法》——2.4 基于因素变量的实数值预测:鲍鱼的年龄

2.4 基于因素变量的实数值预测:鲍鱼的年龄 探测未爆炸的水雷数据集的工具同样可以用于回归问题.在给定物理测量值的情况下,预测鲍鱼的年龄就是此类问题的一个实例.鲍鱼的属性中包括因素属性,下面将说明属性中含有因素属性后与上例有什么不同. 鲍鱼数据集的问题是根据某些测量值预测鲍鱼年龄.当然可以对鲍鱼进行切片,然后数年轮获得鲍鱼年龄的精确值,就像通过数树的年轮得到树的年龄一样.但是问题是这种方法代价比较大,耗时(需要在显微镜下数年轮).因此更方便经济的方法是做些简单的测量,如鲍鱼的长度.宽度.重量等指

预测分析:R语言实现导读

前 言 预测分析以及更一般意义上的数据科学当前正处于被追捧的热潮中,因为像垃圾邮件过滤.单词补全和推荐引擎这样的预测性技术已经被广泛运用于日常生活.这些技术现在不仅越来越被我们所熟悉,还赢得了我们的信任.在计算机处理能力和软件方面(例如R语言及其大量专用的扩展包)的发展产生了这样的局面:用户经过培训就可以使用这些工具,而无需具备统计学的高级学位,也不需要使用公司或大学实验室专用的硬件.技术的成熟度和基础软硬件的可用性结合起来,让很多该领域的从业者倍感兴奋,他们感到可以为自己的领域和业务设计一些能