增强型分析:AI驱动的数据分析、业务决策与案例实践(txt+pdf+epub+mobi电子书下载)


发布时间:2020-10-09 02:57:37

点击下载

作者:彭鸿涛,张宗耀,聂磊

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

增强型分析:AI驱动的数据分析、业务决策与案例实践

增强型分析:AI驱动的数据分析、业务决策与案例实践试读:

前言

人工智能技术由于数据、算法、硬件支撑的计算能力等核心要素的共同发展,进入了广泛的、实质性的应用阶段。在不远的将来,我们肯定能看到人工智能及其相关技术在不同行业发挥巨大的价值。增强型分析将会长足发展

多年以来,人们在构建模型时总是要花费大量的时间和精力在准备数据、数据预处理、多次尝试构建模型、模型验证等过程上。在工业发展的历程中,纯手工打造的时代势必要被标准化流水线的工厂取代,因为工序分解后可以按照统一的模式来处理。构造模型的过程也可以从纯手工打造时代发展为一个更加智能化的时代。笔者十年前在SPSS任职时,就深度参与了自动化建模相关组件的开发,即同一个模型可以按照不同的算法来实现并通过同一个评价指标筛选出最优模型。这样的功能在现在的开源算法库(如sklearn)中已经非常常见。最近AutoML、H2O等知名开源平台使得自动化建模又有了长足的发展。然而建模自动化并不是终点。

增强型分析(Augmented Analytics)于Gartner在2017年7月发表[1]的《增强型分析是数据及分析的未来》报告中首次进入人们的视[2]野。其核心的概念包括:

·智慧数据洞察(Smart Data Discovery)。应用相关的工具能够比较智能和自动化地实现数据收集、准备、集成、分析、建模,能够输出各种洞察,可以为人们在战略方向、对应具体范围的战术活动(如针对某市场机会发起营销)、执行(具体执行营销策略)等不同层面的活动提供指导,包括相关关系的发现、模式识别、趋势判断与预测、决策建议等。

·增强型数据准备(Augmented Data Preparation)。提供智能化的工具使得业务人员能够快速、轻松地访问数据,并连接各种数据源通过统一的、标准化的、可交互的视图展现内容、数据间的关系等。同时提供丰富的工具进行自动数据归约、清洗、智能化分箱、降噪等功能。增强型数据要能够在原数据和经过数据治理后的数据间灵活处理,尽量避免因为数据治理而丢失信息,同时也避免在大量原数据间进行无序的探索。

从上述的定义中可以看出,增强型分析的特点是其可以智能和自动地完成数据准备和数据分析的工作。对于增强型分析的一个美好的预期就是“交给机器大量的原数据,机器直接针对特定场景给出决策建议”。要实现这个愿景需要人们至少完成如下的几个要点。(1)大数据存储与访问

基于大数据平台的存储、计算的相关技术发展很快,目前已经比较成熟,能够高效地处理大量数据。(2)数据分析流程的组件化、标准化改造

数据分析过程中关键步骤如数据收集、准备、集成、分析、建模等过程,需要细分为不同的子任务,并通过子任务间的灵活搭配构成数据分析的流程。流程的自动化运行以及对应的有价值的结果输出已经有了较好的组件,如H2O等。(3)提供大量的算法支持数据处理、模型构建

算法既可以用来构建业务模型,也可以用来分析数据间的关系、进行变量聚类等工作。(4)将“模型洞见到业务决策”纳入分析范围

模型输出洞见,如模型输出每一个客户的购买可能性,还需要配套如“当购买可能性大于90%时再根据时机因素进行推荐”的业务决策,才能在实际营销活动中实施。这是一个“洞见—决策—行动”的过程。

实现增强型分析所需的技术势必是庞杂的,本书的重点涵盖范围是数据处理、算法及模型、“模型洞见到业务决策”的分析等内容。这些内容既是我们日常建模时要用到的技术,也是增强型分析中必不可少的内容。虽然增强型分析的表现形式是追求智能化、自动化等功能,但是增强型分析的终极目标还是通过数据分析发挥数据价值。目前增强型分析还处于概念在逐步清晰但需要不断发展的阶段,所以本书的重点是聚焦在其本质内容,即数据处理、算法及模型、“模型洞见到业务决策”的分析等内容。本书特点

应用机器学习、人工智能技术不仅需要理解算法原理,还需要对算法参数调优、算法使用时的数据要求、算法输出结果,以及如何在具体业务场景使用数据挖掘模型等方面都有所了解,这样才能真正发挥数据价值,产生实际的业务效果。

本书作者结合多年来给不同的大型机构“构建数据挖掘模型、解决实际业务问题”的实践,总结归纳技术、应用等方面的经验,以“介绍较新机器学习及人工智能技术”和“如何应用这些技术解决实际问题”两个方面作为本书的整体选题思路。总体来讲,本书具有如下两个主要特点。(1)介绍较新的技术

有监督学习的建模技术早已不是只懂得算法就可以了。目前基于集成学习、Grid Search、交叉验证等自动化建模技术方兴未艾,这些技术在专门的章节作了重点介绍;基于序列模式挖掘、序列规则、序列预测等进入公众视野还较新的技术在实际业务中有巨大的价值,这些也是本书介绍的重点;对于目前比较火热的深度学习、对抗学习等内容,本书也有专门的章节进行介绍。从这些技术的特点来看,已经具备了增强型分析的部分特点,如集成学习的技术就是旨在将多个模型结合起来,达到相对于单独采用一个模型而明显改善的效果。(2)兼顾原理与大量实例

按照深入浅出的方式介绍算法原理、参数调优及使用方法等信息,并结合实际例子展示如何使用以及使用时的思路。笔者采用“深入浅出的原理介绍+实际使用的案例”的内容安排,期望能够让读者真正了解机器学习及人工智能的技术原理、特点与使用方法,并能直接在实践中起到指导作用。

除此之外,在本书中涉及汉语直译不能达意的词汇时都是采用英语原词,方便读者能够与科技类的英文材料对应,尽量避免生硬翻译带来的疑惑。在本书的大量实例中,代码注释基本上都是英文的,这与笔者多年的编码习惯有关。读者范围

本书的目标读者是实际解决业务问题的数据分析建模人员。目前各个企业在应用机器学习及人工智能方面,不断在人才、技术、平台方面进行投入,特别是不断招聘了大量的数理统计、机器学习方面的人才。但是能够实际解决业务问题的数据分析建模人员,除了对算法原理要了解外,还需要对业务有一定了解,同时需要打开眼界快速了解不同的建模方法能够解决什么问题;除此之外,还要具备较高的实践能力,能够灵活应用不同的技术工具来快速完成任务。

本书“深入浅出的原理介绍+实际使用的案例”的内容安排能够使得数据分析建模人员从算法原理、数据挖掘知识结构、业务应用方法等方面得到提升,帮助数据分析建模人员开阔眼界、优化知识结构、提升实践技能。

从整体来说,本书适用于中、高级的数据分析建模人员,但是初学者也能从实例中得到重要的参考。章节概要说明

在本书的内容安排中,保持业务和技术两个主线:业务主线是数字化转型背景下的智慧营销、智慧风险管控如何通过数据分析完成具体工作,实现由初级的“主动营销”到“被动营销”,再到“全渠道协同营销”等营销手段的升级应用;技术主线是从常见算法的较新发展到深度学习及对抗学习的“复杂度由低向高”“分析技术由预测性分析到Prescriptive分析”进行介绍。具体对应于大纲的内容如表1所示。表1 本书章节大纲概览

总体来讲,本书是一本既能扩展读者视野又具有实际参考价值,能够紧贴实际业务的关于大数据与人工智能的书籍。

在上述章节中,笔者完成了大部分工作,另外两位作者协助笔者做了一些内容补充,这些内容包括:张宗耀完成了2.1节、2.2节、3.6节、5.4节、7.3节;聂磊完成了第2章的大幅修改、5.5节、5.7节、6.2节。在整个写作过程中,大家经常一起讨论、相互学习,这个过程很愉悦!为什么写这本书

笔者自2008年加入IBM SPSS,从一个单纯的软件开发者变身为数据分析行业的参与者至今已经快11年了。在这段时间,数据分析行业发生了巨大变化,作为行业的参与者,笔者自身从业经历也在不停地发生变化。总结下来,笔者遵从“数据分析驱动业务”的主线,按照“软件开发人员——数据挖掘工具开发者和团队管理者——资深数据科学家——深入理解业务的资深数据科学家——深刻理解数字化变革的高级咨询顾问和管理者”的职业路径,在数据分析行业的浩瀚波澜中前行。这些年的从业经历,笔者有如下几点感触。(1)从事数据分析行业的人是需要不断充电的

用“日新月异”来形容数据分析的发展是最为确切的了,新技术、新论文不断涌现。大量书籍上描述的是一些基本的算法,对于新技术、新算法,我们应该永远保持不断学习的态度,才能在日常数据分析实践中不断发挥作用。书中并没有讲大家在很多书籍上能看到的传统算法,而是重点讲一些大多数书籍还未涉及的内容。(2)真正发挥数据价值需要融会贯通数据与业务

在很多情况下,当数据科学家花费大量时间和精力构建出模型后,兴高采烈地试图交给业务人员使用时,往往会遇到一个有趣的情况:业务人员听不懂你对高深算法的解释,甚至不在乎你对数据的各种费心处理,他们只关心实际的问题,如模型到底效果如何。所以在本书中穿插了大量与业务相关的例子。(3)数字化变革的浪潮与数据分析的广泛应用密不可分

数字化变革是目前几乎所有企业都无法回避的任务。企业由于所处行业、自身特点等原因,需要量身定制数字化转型的战略。大型企业需要选择发展重点作为突破方向,在转型过程中既要做好技术基础,也需要大力推行敏捷的方法,同时要对人们的观念、组织内的流程等方面做出更新。数据分析的广泛应用在数字化变革中势必要发挥巨大作用。笔者认为数据分析者要“抬头看”,深刻地参与到数字化变革的浪潮中。

本书的写作历时近一年,笔者在做好本职工作的同时花费了巨大的精力总结归纳过往项目经验、学习研究新技术。这个过程既是一个自我充电的过程,也是一个不断总结归纳的过程。笔者试图尽力做到将自己走过的路按照深入浅出的方式讲出来,期望提供一定的参考价值。这也是笔者写这本书的目的。

笔者相信书中难免有一些疏漏,非常希望能够得到阅读反馈。读者可以通过yfc@hzbook.com联系到笔者。感谢

笔者年近不惑,能够有大量时间花费在写书上,是因为笔者的父母、爱人、孩子给笔者铸就了一个坚强的后方。“风暖春日雪,化作涓涓流”,这是爱人、孩子和笔者在一次春游时看到终南山中的雪即兴而作的。其实这也能对应到现实中,家人的爱和关心让笔者在前行时如沐春风,遇到困难时他们就是笔者的动力!同时也感谢笔者的三个姐姐对笔者的关心和鼓励。

感谢另外两位作者张宗耀和聂磊,一位是我的师弟,另一位是与我完成过第一本书《发现数据之美——数据分析原理与实践》的合著者。兄弟之情已经在聚会、讨论、相互学习、写作中镌刻在我们各自的人生轨迹中!

感谢德勒中国副主席、金融服务业领导合伙人吴卫军能够在百忙之中给本书作序并给出非常积极的评价。吴总在写序过程中,严谨的工作态度给我留下深刻印象,这使我觉得他的序言非常重要。感谢笔者的研究生导师——西安交通大学朱利教授的鼓励与肯定,并欣然接受给本书作序的请求。青春挥洒的校园生活是笔者不能忘记的,特别感谢老师在笔者上学期间的关心与培养。

感谢笔者的老板吴颖兰(德勤全球主管合伙人)在笔者写作过程中的鼓励;感谢上海依图网络科技有限公司COO张小平在笔者写作过程中给予的鼓励;感谢美丽聪慧的同事崔璨、罗瑞丽能够在笔者写作过程中不断给予鼓励,并提出非常有价值的意见;感谢同事李敬军、曹文俊、刘田林、刘婷婷、仇敏讷、李宸豪、马克、母丹、张宇姮,在一起做项目的过程中,我们相互学习、相互成长。

感谢我们的客户,在项目中我们能够相互学习、相互提高。可以非常肯定地说,客户的很多痛点是笔者不断学习的动力所在。

感谢机械工业出版社杨福川编辑对本书的肯定,他的专业性和工作效率让笔者惊叹。感谢机械工业出版社常晓敏老师在“鲜读”渠道对本书的大力推广,也万分感谢“鲜读”渠道上热心读者给本书内容提出的各种意见和建议。彭鸿涛[1] https://www.gartner.com/doc/3773164/augmented-analytics-future-data-analytics。[2] https://www.dataversity.net/augmented-analytics-matter/。第1章 数据科学家的成长之路

一次偶然的机会,有一位正在深造机器学习方面学位的朋友问了笔者一个问题:如何成为一名合格的数据科学家?这个问题回答起来亦简亦难。简单回答的话可以拿出标准答案,坐而论道地说需要编程能力、数据操作能力、数学基础、算法库应用能力、算法调优能力与业务对接的能力等。但是这样的答案笔者其实是不满意的,因为有太多的技术意味。做数据分析、将数据的价值发挥出来,是一个“工程+科学”的过程,只要在这个过程中的任意一处找到自己的位置,就无谓数据科学家这种称号了。

大数据时代方兴未艾,人工智能时代又呼啸而至。人们在很多场合下能看到诸多新应用,加之整个社会都在热切地拥抱人工智能技术,使得大家都相信人工智能时代势必会改变社会的方方面面,笔者对此也深信不疑。在人工智能时代,将数据的价值发挥出来的要素有资金、数据、平台、技术、人员等。数据科学家是人员要素中最为重要的部分,是需要企业非常重视的。在数据科学家自身发展的方向、组织结构,以及如何体现出价值等方面,相信大家肯定会有很多想法。笔者从十几年前加入IBM SPSS进入数据分析领域开始,至今担任过分析软件工具的开发者、解决实际业务问题的数据挖掘者、数据驱动业务以及数字化转型的咨询者等多种角色。反观这些年的成长路径,将一些较为重要的经验做一个粗浅的总结,抛砖引玉,以供读者参考。1.1 算法与数据科学家

我们随便打开一些教科书,会发现机器学习、人工智能、数据挖掘等经典领域所谈论的很多知识点是共通的,比如从历史数据中学习到事物模式并用于对未来做出判断,是机器学习中的重要内容,也是人工智能的重要方面,更是数据挖掘的重点内容。

现在有一个很时髦的说法,认为机器学习是比数据挖掘更为高深的学科,实现人机对话那肯定是人工智能的范畴。其实,从一个更为宏观的视角来看的话,这几个学科都是在将数据的价值通过算法和算法的组合(数据分析的流程)发挥出来,没有一个清晰的标准说某类算法必须属于人工智能范畴、某类算法必须属于机器学习的范畴。1.1.1 数据科学、人工智能、机器学习等

有国外的学者试图给出一个机器学习、数据科学、人工智能等时髦名词之间关系的示意图,如图1-1所示,我们发现,这些学科间的关系可以说是交缠不清。[1]图1-1 数据科学相关的学科之间的关系

笔者也就这些学科之间的关系进行了深入探索,查询了很多的资料,发现图1-1的中间部分,其实是来自SAS在1998年提供的数据分[2]析的课程。除此之外,很少有人能将它们的关系说清楚,因为这本来就说不清楚。所以,对上图,读者只当其是一个参考即可。

重点是图1-1所表达的含义:这些技术都是围绕“问题解决”→“分析”→“策略”→“领域知识”→“沟通”→“表达”→“探索”等问题来展开的,而这些问题都是人们在认识世界、解决问题时所涉及的方面。所以,本节采用图1-1想表达的含义也是如此:计算机的技术在迅猛发展,现在很多的技术都可以融合使用来解决复杂问题了;对于数据科学相关的这些技术,很多方面都是通用的。[1] http://www.oralytics.com/2012/06/data-science-is-multidisciplinary.html。[2] http://blogs.sas.com/content/subconsciousmusings/2014/08/22/looking-backwards-looking-forwards-sas-data-mining-and-machine-learning/。1.1.2 室内活动还是室外活动

数据科学家是个含义较广的名词,人们往往也不会太多在意他们所从事的具体工作有什么不同,习惯将从事算法设计开发、在客户现场直接应用数据分析工具解决问题的人都称为数据科学家。这样的划分其实无可厚非。但是若将算法看作成品,则可以将数据科学家分为[1]室外(out-house)和室内(in-house)两种角色。所谓室内数据科学家关注具体算法的设计、实现。比如,在MapReduce的计算方式下如何实现分层聚类算法。而室外数据科学家,也就是数据挖掘者,他们一般不需要关注具体算法和工具的实现,他们的职责是将客户的需求翻译为具体工具能解决的工作流程,并应用合适算法能得出有意义的结论。图1-2比较形象地对比了两种科学家的不同。图1-2 室内室外两种数据分析人员职责对比

现在还有一种习惯就是将室内数据科学家称为算法工程师,而对于室外数据科学家则称之为数据科学家。我们大可不必纠结于这些名称的不同,只要对他们的职责有不同的认识即可。室外数据科学家,在长期的项目过程中,需要与业务人员有非常深入的沟通才能得出有意义的数据分析结果。所以,相对于数据模型而更加看重业务的需求和特点,这是室外数据科学家的基本素养。本书所谓的数据科学家是指所谓从事室外活动的数据分析者。[1] 笔者在数年前就职业发展路线询问SPSS资深工程师John Thonson时,他的说法让我醍醐灌顶,从此便义无反顾地走上了“解决实际问题”的道路。1.2 数据科学家不断成长的几个阶段

现在移动端各种App百花齐放,这已经使得信息的传播没有任何的限制,人们在不自觉的过程其实已经阅读了大量的自己感兴趣的文章。若对机器学习比较感兴趣,相信人们已经看到了很多非常炫酷的机器学习的应用,如人脸识别的精度已经提高到一个非常高的水平、大量智能问答机器人的部署已经替代了不知多少呼叫中心的员工等。

显而易见,这些应用绝不是单靠一个算法就能解决的,注定是平台、算法、业务等要素的综合应用才能产生这样的效果。在应用数据分析时已经基本形成一个共识,就是数据分析者要对业务有一定的了解,才能保证产生较好的结果。

Gartner很早就将数据分析能力分成了4种(如图1-3所示),描述性分析(Descriptive Analysis)是在回答“过去发生了什么”,是了解现状的有力手段;诊断分析(Diagnostic Analysis)是寻找“为什么会是这样”的方法;预测分析(Predictive Analysis)是在回答“将来会是怎样”;Prescriptive Analysis则是说“基于现状、预测等结果,我如何选择一个较优的决策得到期望的结果”。Business Intelligence的核心能力是解决描述分析和诊断分析。人们常说的预测模型(包括传统的随机森林、GBT等,还包括深度学习的常见算法如CNN等)、聚类模型、关联分析等都属于预测分析范畴。利用凸优化、马尔可夫等方法从众多的决策选项中寻求最优决策,则属于Prescriptive Analysis的范畴,重点解决最优决策的问题。[1]图1-3 四种分析能力划分(Gartner)

在图1-3中,分析之后,人们经验、业务的输入(Human Input)随着分析手段的提高而减少,这是因为Prescriptive Analysis在分析过程中已经将这些因素充分地引入。比如,预测客户流失的模型能够输出“哪些客户将要流失”的名单,但是并不会输出“OK,企业应该采用何种决策来挽留”,是应该给个折扣,还是办一张会员卡?这些还是需要人们进行业务决策的输入。而Prescriptive Analysis则会分析折扣和会员卡哪种方式既能挽留客户又能使得企业的收益较高,但是这些决策(会员卡和折扣)也是需要人们输入后才能进行分析。所以“通过数据分析的手段发挥数据价值”的过程,没有业务输入是绝对行不通的。所以,笔者也认为数据科学家绝不是仅仅精通算法即可,还需要对业务一直保持热情,不断思考如何发挥数据分析的业务价值。我们需要从技能、效果、工作内容、工作方法等多个层面来扩展相关的能力,这才能发挥较大的价值。总之,如果数据科学家仅仅只是被动地考虑用何种算法满足业务部门所提出的要求的话,是远远不够的。

如果读者有志于成为一个数据科学家,或者已经是一个数据科学家,类似于职场的职业路径规划,数据科学家的成长路径可以是什么?如何不断成长?相信大家按照自己的兴趣都有不同的理解。若数据科学家一直致力于“发挥数据的价值”这条主线,那么笔者认为从价值的大小上可以分为算法、用法、业务、战略4个层面(如图1-4所示),数据科学家也可以沿着这条路径来成长。

从图1-4中可以看到不同层面的数据科学家的职责和作用是不同的,4个层次也是数据科学家成长的不同阶段。图1-4 数据科学家成长的4个阶段[1] https://www.gartner.com/binaries/content/assets/events/keywords/catalyst/catus8/2017_planning_guide_for_data_analytics.pdf。1.2.1 算法——如何构建数据分析模型

人们总是津津乐道各种时髦的算法,感叹算法的发展使得人工智能有了长足的进展。比如,人们看到机器可以精准地识别人脸、机器可以作诗、机器可以识别图片内容并“说出”符合其内容的文字描述,也热衷于紧跟最新的技术发展来做一些新颖的应用。这是一个非常好的趋势,可以促进人工智能的相关产业发展。然而,人类已经发明的算法远不仅仅如此。若读者一直在从事数据分析的相关工作,会发现其实能够解决实际业务问题的算法非常多,有很多也是简单直接的。比如,找到潜在的价值客户,既可以通过响应预测的模型,也可以通过聚类分析的模型,还可以通过社交网络分析的模型来找到。构建这些模型所需要的相关知识也需要体系化地学习、不断积累才能真正满足实际的业务需求。

在很多数据挖掘的资料中都会把算法分为有监督的学习、无监督的学习等类别,每个类别下各自的算法又有不同。比如聚类算法属于无监督的学习范畴,而能够做类别判断或回归的算法都属于有监督的学习范畴。在实际使用时,需要针对需求灵活应用,如可以先用决策树算法生成预测模型,然后分析决策树的分支来细分客群。只有对这些算法有一个体系化的学习,才能达到灵活应用的目的。

超参数(Hyperparameter)是在给定数据集的情况下,确定一组参数组合能使得模型性能、泛化能力达到较优。每个算法在调试超参数的过程中,都有一些与算法特征相关的普遍规律,如随机森林算法中决策树的个数、决策树的深度等,一般是需要预先被设定和关注的。基于随机森林中每棵树应当是一个弱分类器的原理,决策树的深度应该很小才能避免过拟合。目前有Grid Search等工具能够在不同参数组合下尝试找出一个合适的超参数,替代人们不断进行手工尝试的过程。但是不论如何,设置算法参数时总有一些经验总结可以在后来的应用中被复用。

在深刻了解算法原理、算法体系的基础上,掌握参数调优的技能是一个数据科学家的基本能力。不论是对初学者还是有一定经验的从业者来说,这都是一个需要不断学习和积累的基本任务。1.2.2 用法——如何回头看模型

在很多情况下,当数据科学家花费大量时间和精力构建出模型后,兴高采烈地试图交给业务人员进行使用时,往往会遇到一个有趣的情况:业务人员听不懂你对高深算法的解释,甚至不在乎你对数据的各种费心处理,他们只关心实际的问题,如模型到底效果如何?

在很多情况下,模型构建完成后需要对模型进行验证。比如训练时采用截止到3月的数据,而模型部署是在7月,所以需要数据科学家验证截止到6月的情况下,模型的实际效果能达到什么程度。这时,我们除了需要通过新数据计算模型性能指标(如提升度、准确性、稳定性等)外,还需要计算模型实际业务结果会是怎么样,能带来多少收益或能避免多少损失(如图1-5所示)。图1-5 以简单明了的方式来讨论模型使用的预期价值

数据科学家除了要对模型性能指标熟稔于心外,还需要能够表达清楚模型真正的实际价值。所以,在第一步模型构建完成后,应用两套指标来衡量是比较可取的做法——模型性能指标是从数学角度说明模型优劣;业务指标是从模型应用的业务结果来评价其价值。

在现实中,人们往往不好准确把握模型的真实业务价值,在实际应用后通过数据统计才能有结论。但是这一点都不妨碍模型部署前的估算:按照目前模型的性能指标,估计在第一次给定客户数的情况能有多少人购买,大致的营业额会是多少。采用估算还是采用事后统计,都是用以说明模型业务价值的手段,可以灵活应用。数据科学家要像重视模型性能指标的计算一样重视模型所带来的业务指标的计算。

总体来讲,数据科学家不能将自己的工作范围只框定在纯粹建模,需要“抬头看”和“睁眼看”业务价值。1.2.3 业务——如何产生更大价值

业务问题的解决,可以从一处痛点开始突破,也可以按照体系化的方法整体解决。比如,银行对理财产品的营销,若只关注具体产品的销售,则简单的产品响应预测模型即可解决;若只关注一批产品的销售,则也可以通过构建多输出预测模型(我们在后面的章节中重点介绍)预测每一个产品的购买概率来生成推荐列表;若关注客户旅程地图(Customer Journey Map)而确定营销时机,则需要一批模型;若关注客户体验的提升,需要的就不是一批模型,而是一个体系化的平台加大量模型才能达到预期效果。

大多数情况下,数据科学家应当在具体的业务背景下展开工作。比如,若业务部门按照客户旅程地图的方法来分析客户特征、了解客户需求、并适时推荐产品(如图1-6所示),则数据挖掘的模型是服务于一个个业务场景,在整体客户关系管理的框架下发挥价值的。

数学科学家的工作需要深度融入业务,甚至引领数据驱动的业务发展。此时,数据科学家的定位不应该仅仅是构建模型者,还应该是数据驱动业务这种新模式的搭建者。这种角色变化就要求数据科学家深刻理解具体的业务、新的数据驱动模式的运作方式,围绕数据驱动模式而展开各种活动的意义。图1-6 以客户旅程地图为例说明不同的业务场景需要相应的模型

在这种情况下,数据科学家在构建模型时需要明确:该模型在数据驱动业务的新模式中在哪个阶段发挥什么作用?如何构建一个模型组来协同工作?有了这些模型后数据驱动业务模式能够做到什么程度?1.2.4 战略——如何更广

数字化变革是目前几乎所有企业都无法回避的任务。企业由于所处行业、自身特点等原因,需要量身定制数字化转型的战略。大型企业需要选择发展重点作为突破方向,在转型过程中既要做好技术基础,也需要大力推行敏捷的方法,同时要对人们的观念、组织内的流程等方面做出更新(如图1-7所示)。图1-7 一个量身定制的数字化转型路线图示例

资深数据科学家或首席数据科学家所担负的职责不应该仅仅是完成目前安排的任务,或者去做一些博人眼球的所谓智能应用。其还应该深度参与企业数字化转型的战略制定、计划安排、引领加速器项目等工作,因为资深数据科学家最应该懂得数据的价值如何发挥、能够发挥到什么程度。

对于大型企业而言,数字化转型的任务是艰巨的,不过众多行业已经或多或少地开始了相关的行动。笔者由于工作关系也深入参与到了大型金融机构数字化转型的咨询工作,深刻感触到了企业在进行数字化转型时的困难。这使得笔者更加认为让真正懂得如何发挥数据价值的人员按照加速器的方式来推动数字化转型进程是至关重要的。1.3 数据科学家的工作模式与组织结构

数据科学家需要与业务专家一起工作才能发挥最大价值。实际工作中两种角色如何配合,取决于是采用业务驱动的模式还是数据驱动的模式。1.3.1 数据驱动还是业务驱动

业务驱动的特点是业务人员主导数据分析需求的提出、结果的应用,在业务中应用数据洞察;而数据驱动的特点是更看重主动应用数据分析手段,从数据洞察发起业务、改善业务,当然在业务执行时也需要广泛应用数据洞察。在较新的业务领域采用数据驱动比较适合,已有复杂业务则采用业务驱动较好。

然而从自身能力的发展、数据驱动逐渐成为主要的工作模式的情况来看,数据科学家需要思考如何将数据驱动的模式做得更好,并且愿意承担更多责任。所以,除了算法、用法等基本技能,还需要考虑如何改善业务。

图1-8所示的职责占比只是示意,其实最核心的是由哪种角色来主导,在工作中也未见得业务专家不能主导数据驱动的模式。从业务结果的角度来看,所谓业务驱动和数据驱动只是到达一个既定目标时不同的工作方式而已。在实际的业务中也不会分工非常明确,即不会限定业务人员只能做什么或数据科学家只能做什么,只有相互无缝协作才是最佳的工作模式。图1-8 业务专家与数据科学家的两种配合方式1.3.2 数据科学家团队的组织结构

数据科学家团队的组织结构关系到数据应用的效率、管理的效率、个人的发展等诸多方面,企业在设置这个组织结构时需要认真考虑。每个企业的实际情况不同,可以采用不同的方法。数据科学家的组织结构一般分两种,即分散式结构和集中式结构。分散式结构是数据科学家属于确定的业务部门,这样的组织结构的好处是其可以紧密地与业务人员合作,将业务问题转换为高效的数据分析任务。但是其也有不足,一方面数据分析的知识积累是在个人身上,而不是在团队,另外一方面就是因为角色的限制使得业务部门内的数据科学家没有上升空间。业务部门内的数据科学家若要在职业道路上继续前进,要么离开,要么担任其他角色。一旦发生数据科学家的人事变化,这对团队稳定、知识积累等都是不利的。

集中式的数据科学家组织结构就是跨业务条线而成立独立的专门做数据分析的结构。这样的组织结构的好处就是团队相对稳定,给成员提供了不断成长的空间,也避免了知识积累的流失。但是其也有不足,由于数据科学家脱离业务部门而独立存在,导致团队成员对业务的理解不够深入,模型的产出可能效率低下。业务部门也可能只将其看作支持部门,而不会在实际业务中有太多引入。

企业在构架数据科学家组织架构时,也可采用混合的结构。即使是集中式的组织结构,其汇报的层级也可能不同。没有所谓明确的业界标准的说法,因地制宜的做法才是最实际的。1.4 数据科学家的工作方法要点

数据科学家的核心任务之一是通过数据分析手段将数据洞察应用在实际业务中,并能产生有效的结果。数据科学家在实际工作中需要注意以下要点,以确保上述目标的达成。

1.开始工作以前确保具备成功要件

在开始一件工作前,最好先明确一下业务场景、数据可获得性、数据质量等重要信息。在很多情况下,会出现因数据不支持无法进行细致分析、模型结果很好但是落地应用时没有对应的资源支持、数据分析只是探索没有对应的使用场景等问题。这些因素会严重影响数据分析的价值。

笔者作为顾问给多个客户实施数据分析项目时,就遇到过上述的问题。从客户的角度来讲,其关心的是业务问题的解决,并不会过多细致地考虑实施过程的细节。只有努力地尝试去做,才能发现有些问题会严重阻碍数据分析的进行,这也会影响数据分析的最终效果。2.同时输出两种价值

假设要通过数据分析手段改善某业务问题,如构建预测模型筛选高价值、高响应率的客户,即使是在目标非常明确的情况下,数据科学家也要在做的过程中保证两种输出结果。(1)重要发现

数据分析过程中势必要进行数据提取、数据处理、数据探查等一系列基础工作。在这些基础工作的过程中,往往会隐藏着有巨大业务价值的信息。比如,笔者的团队在给某金融机构构建高端客户的相关模型时发现一些信息,如“大部分客户只持有一类理财产品且在半年内没有交易活动”,这些信息对于后期的营销策略制定至关重要。所以,数据科学家在实际工作中需保持“业务敏感性”,对于数据背后的业务故事保持好奇心,同时将一些重要的数据发现协同模型结果一并输出,这可以大大提高分析主题的价值。(2)模型结果

给定分析主题,目标模型结果就可以基本确定,如寻找高价值客户就是模型输出一个名单,风险预警就是给出风险评分以及原因。这是模型输出的最基本形式。

在实际的模型实施应用中,业务人员会经常以挑剔的眼光来看待模型,并且基于模型结果总是有不同的疑惑需要数据科学家来解答。典型的疑惑如“聚类分析模型确实将客户分了几个类别,但是我还是不知道该如何营销这些客户”“社交网络分析模型给出了潜在的高价值客户名单,但这些信息不足以让营销人员开展营销”。出现这种情况时,一种简单的做法就是和业务人员深入讨论,梳理出他们的关注点,然后将对应的指标从数据库中提取出来,作为模型输入的补充一并交给业务人员。

从本质上来讲,出现业务人员疑惑的原因是“业务人员期待模型输出决策而不是名单”以及团队缺乏将模型输出转换为营销决策的能力。数据科学家也需要具备将模型结果转换为业务决策的能力。模型直接输出决策的内容将在第5章详细讨论。3.充满想象力地开展工作

算法能做到什么是数学范畴的知识,数据科学家的核心工作就是将业务需求转换为一系列的数据分析实践过程。若将各个算法看作一个个组件,那么用一个算法来解决问题还是用多个算法的组合来解决问题,需要数据科学家的想象力和不断尝试。

笔者的团队曾给某客户构建模型时,其需求是“根据客户持有产品的现状推荐产品,达到交叉销售的目的”。这是一个非常不具体的需求,能做的范围很大,能用的算法工具也很多。最后我们采用的是构建“客户聚类与产品聚类的交叉分布以及迁移矩阵,并据此来展开不同目的营销”,若向上销售则可推荐同类产品,交叉销售则可推荐不同类的产品。这种做法之前没有实施过,但是结果证明其非常有效,仅在一次营销应用中就带来数十亿的营业额。4.按照敏捷的方式来构建模型

数据挖掘过程也可以看作一个项目过程,从项目管理的角度当然可以按照敏捷的方式来进行。数据科学家需要积极主动地汇报分析思路、预期结果、进度等重要信息。时刻与业务人员以及管理人员保持沟通,对需求变化保持开放,将对模型的实际应用会有巨大的帮助。一般情况下,让一个对数据和业务都不了解的人来构建模型,往往需要数月的时间;但让一个熟悉数据、业务、算法工具的人来建模,则可能只需几天就可以完成。不论哪种程度的人员来建模,都可以按照敏捷的方式来管理建模过程。

笔者与建模方法论CRISP-DM的提出者之一Julian Clinton一起工作过4年时间,在长期的项目实践中我们一直坚持该方法论所倡导的核心要点:紧贴业务、不断探索、以结果为导向、模型在应用后仍需不断调优等。事实证明,这些原则非常有效。CRISP-DM方法论的实施与实施过程中按照敏捷的方式来管理是相辅相成、相得益彰的。5.以业务的成果来衡量自己的工作

模型的效果到底如何?数据科学家不应该基于测试集上优异的模型性能指标而洋洋自得,这没有任何意义,顶多代表建模的技巧高超。模型最终带来的收益是由模型输出、匹配模型输出的业务决策、业务决策实施过程中的资源配置、应用场景的价值大小等综合因素共同决定的。缺少任何一环都会使得模型的价值直线下降。

数据科学家需要积极主动地推进这些环节的相关工作,积极收集模型部署后的监测数据,在“建模—业务决策匹配—业务决策实施—效果监控—模型或决策改进—再部署—再监测”的闭环中积极发挥作用。最终得出的业务结果数据,才是数据科学家真正成就感的源泉。第2章 大数据探索及预处理

现在几乎人人都在谈论大数据和人工智能,然而应用大数据和人工智能技术的基本前提是数据。不论数据的拥有方还是数据分析解决方案及工具的提供方,其终极目标都是“通过数据分析,从数据中找出洞见并应用于实际场景中带来价值”。

数据探索、数据预处理等工作是进行数据分析的首要工作。不论是采用大数据的工具还是采用相对较小的数据集上的数据挖掘的工具,模型的构建都需要经过对数据不断地探索、选择和加工合适的字段、采用合适的算法并训练模型等过程。

数据探索的目的是了解数据的状态,数据预处理则是为了将数据加工为更有价值的形态。数据分析者应当具有很好的意识,能够感知数据的价值,具备数据加工能力。2.1 大数据探索

大多数情况下,数据分析的过程必须包括数据探索的过程。数据探索可以有两个层面的理解:一是仅利用一些工具,对数据的特征进行查看;二是根据数据特征,感知数据价值,以决定是否需要对别的字段进行探索,或者决定如何加工这些字段以发挥数据分析的价值。字段的选取既需要技术手段的支撑,也需要数据分析者的经验和对解决问题的深入理解。2.1.1 数值类型

在进行数据分析时,往往需要明确每个字段的数据类型。数据类型代表了数据的业务含义,分为3个类型:(1)区间型数据(Interval)

数值型数据的取值都是数值类型,其大小代表了对象的状态。比如,年收入的取值,其大小代表了其收入状态。(2)分类型数据(Categorical)

分类型数据的每一个取值都代表了一个类别,如性别,两个取值代表了两个群体。(3)序数型数据(Ordinal)

和分类型数据非常相似,每个取值代表了不同的类别。但是,序数型的数据还有另外一层含义就是每个取值是有大小之分的。比如,如果将年收入划分为3个档次:高、中、低,则不同的取值既有类别之分,也有大小之分。

如果不了解字段的实际业务含义,数据分析人员可能会出现数据类型判断失误。比如字段的取值为“1”“2”“3”等,并不意味着是一个数值类型,它的业务含义还可以是一个分类型的字段,“1”“2”“3”分别代表了一个类别,其大小没有任何含义。所以,充分了解字段的含义是很重要的。

很多的数据分析工具会根据数据中的字段的实际取值,做出类型的自动判断:如字符型的数据,一般都认定为分类型数据;如某个字段的所有取值只有“1”“2”“3”,则判断其为分类型变量,然后经过用户的再次判断,其很可能是序数型变量。

不同的数据类型,在算法进行模型训练时,处理和对待的方式是不同的。区间型数据是直接进行计算的;分类型数据是先将其转换为稀疏矩阵:每一个类别是一个新的字段,然后根据其取值“1”“0”进行计算。

在很多场景下,人们习惯将分类型数据和序数型数据统称为分类型数据,即数据类型可以是两个:数值型数据(区间型数据)和分类型数据(分类型数据和序数型数据)。2.1.2 连续型数据的探索

连续型数据的探索,其关注点主要是通过统计指标来反映其分布和特点。典型的统计指标有以下几个:(1)缺失值

取值为空的值即为缺失值。缺失值比例是确定该字段是否可用的重要指标。一般情况下,如果缺失率超过50%,则该字段就完全不可用。

在很多情况下,我们需要区别对待null和0的关系。Null为缺失值,0是有效值。这个区别很重要,要小心区别对待。例如,某客户在银行内的某账户余额为null,意味着该客户可能没有该账户。但是如果将null改为0,则是说用户有该账户,且账户余额为零。(2)均值(Mean)

顾名思义,均值即平均值。其大小反映了整体的水平。一个数学平均成绩是95分的班级,肯定比平均成绩是80分的班级的数学能力要好。(3)最大值和最小值

最大值和最小值即每个数据集中的最大数和最小数。(4)方差

方差反映各个取值距平均值的离散程度。虽然有时两组数据的平均值大小可能是相同的,但是各个观察量的离散程度却很少能相同。方差取值越大,说明离散程度越大。比如,平均成绩是80分的班级,其方差很小,说明这个班级的数学能力比较平均:没有多少过高的成绩,也没有多少过低的成绩。(5)标准差

标准差是方差的开方,其含义与方差类似。(6)中位数(Median)

中位数是将排序后的数据集分为两个数据集,这两个数据集分别是取值高的数据集和取值低的数据集。比如,数据集{3,4,5,7,8}的中位数是5,在5之下和5之上分别是取值低和取值高的数据集。数据集{2,4,5,7}的中位数应当是(4+5)/2=4.5。(7)众数(Mode)

众数是数据集中出现频率最高的数据。众数最常用的场景是分类型数据的统计,但是其也反映了数值型数据的“明显集中趋势点的数值”。

均值、中位数、众数的计算方式各有不同,如表2-1所示。表2-1 均值、中位数、众数的例子(8)四分位数(Quartile)

四分位数,即用三个序号将已经排序过的数据等分为四份,如表2-2所示。表2-2 四分位的例子

第二四分位数(Q2)的取值和中位数的取值是相同的。(9)四分位距(Interquartile Range,IQR)

四分位距通过第三四分位数和第一四分位数的差值来计算,即IQR=Q3-Q1。针对上表,其IQR=61-34=27。四分位距是进行离群值判别的一个重要统计指标。一般情况下,极端值都在Q1-1.5×IQR之下,或者Q3+1.5×IQR之上。著名的箱形图就是借助四分位数和四分位距的概念来画的,如图2-1所示。图2-1 箱形图及IQR

箱形图中的上下两条横线,有可能是离群值分界点(Q3+1.5×IQR或Q1-1.5×IQR),也有可能是最大值或最小值。这完全取决于最大值和最小值是否在分界点之内。(10)偏斜度(Skewness)

偏斜度是关于表现数据分布的对称性的指标。如果其值是0,则代表一个对称性的分布;若其值是正值,代表分布的峰值偏左;若其值是负值,代表分布的峰值偏右。在图2-2中给出了偏斜度的示例。图2-2 Skewness的含义

Skewness的绝对值(不论是正值还是负值)如果大于1是个很明显的信号,你的数据分布有明显的不对称性。很多数据分析的算法都是基于数据的分布是类似于正态分布的钟型分布,并且数据都是在均值的周围分布。如果Skewness的绝对值过大,则是另一个信号:你要小心地使用那些算法!

不同的偏斜度下,均值、中位数、众数的取值是有很大不同的:

由图2-3可见,在数据取值范围相同的情况下,中位数是相同的。但是均值和众数却有很大的不同。所以,除了偏斜度指标可以直接反映分布特征外,还可以用表2-3中的方法来判断。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载