2.1 Data and Decision Models
本页目录· 10 条
- 生命周期与价值链(Life cycles and value chains)
- 组织中的数据过程建模(Process modelling of data in an organisation)
- 分析层级(Analytic levels)
- 影响图(Influence diagrams)
- 构建模型(Building a model)
- 示例:在线广告模型(Example: online advertising model)
- 示例:诊断你的汽车(Example: diagnosing your car)
- 示例:诊断心脏病(Example: diagnosing heart disease)
- 小结(Summary)
- 资源(Resources)
本节将考察在处理数据与做出决策时可用的多种不同“模型”。这些模型并非统计意义上的模型(如线性回归),而是帮助我们理解数据及其所处的组织或决策语境的概念模型。
生命周期与价值链(Life cycles and value chains)
与数据科学相关的过程模型有若干种。在模块 1 中,我们回顾了数据科学项目中执行的各项任务。用于描述这些任务有两类模型:
软件开发生命周期(Software Development Life Cycle)
图示作者:Cliffydcw(原创),许可:CC BY-SA 3.0,经由 Wikimedia Commons
生命周期(Life cycle):源自生物学、项目管理与系统开发(如系统开发生命周期)的术语,用于描述一个过程的各个步骤,通常从诞生/构思/创意到终结/完成/退役。
在商业建模中,用一个相似的术语 “价值链(value chain)” 来刻画一个过程。由于我们随后给出的数据过程模型主要是商业模型,因此将使用“价值链”的术语而非“生命周期”。许多计算机科学中的过程是循环的,因为它们具有迭代性;随着经验积累会出现第二代、第三代。在数据科学领域也可能如此。尽管如此,我们在本文中仍使用“价值链”。
价值链(Value chain):商业术语,用于描述创造某项“价值”的一系列活动。例如在技术产品的生产中,“工程价值链”指一系列促成价值创造的工程活动与能力,如下所示。
工程价值链(The Engineering Value Chain)
图示作者:Yufeng Zhang(原创),许可:CC BY-SA 3.0,经由 Wikimedia Commons
组织中的数据过程建模(Process modelling of data in an organisation)
许多学者提出了用于数据利用的价值链或生命周期。并不存在唯一正确的“最佳”模型——它们只是模型而已。它们通常建立在我们先前讨论过的“数据科学项目都做了什么任务”的基础上。
CSIRO 的数据价值链(CSIRO’s Data Value Chain)
CSIRO 的数据价值链(CSIRO’s Data Value Chain)
CSIRO 在其组织评审中(见第 15 页幻灯片)给出了一个用于监测系统的仪器采集数据之价值链。该系统可以是一片小麦田,仪器则是一群传感器。流程是:开发并部署仪器 → 采集与存储数据 → 进行分析 → 基于分析对系统做出某些变更/决策 → 监测与评估,并将结果反馈到下一轮循环。
Pivotal(现已并入 VMware Tanzu)为大型组织的性能数据给出了如下价值链(见其“Data Science + Data Engineering”第 12 页)。下图还标注了相关角色。在这里,我们看到数据科学家的角色非常聚焦:他们(通过数据分析)开发将要使用的模型。
大数据价值链(Big Data Value Chain)
Pivotal 的数据价值链(Pivotal’s Data Value Chain)
Miller 与 Mork 的数据价值链(Miller and Mork’s Data Value Chain)
Miller 与 Mork 的数据价值链(Miller and Mork’s Data Value Chain)
另一种价值链模型由 Miller 与 Mork(2013)提出:
“From Data to Decisions: A Value Chain for Big Data,” Miller, H.G.; Mork, P., IT Professional, 15(1), 2013(1100 词,约 6 分钟)http://dx.doi.org/10.1109/MITP.2013.11(可在 Monash 数字图书馆检索,或直接用文题在网上搜索 PDF)。
Good reading 许可:公有领域(Public Domain)
其图 1 在下文有所改编。他们较为详细地描述了各个步骤。与其他价值链的主要差异在于中间的集成(integration)步骤:将数据标准化为统一格式。在大型组织中,数据可能由不同部门按不同模式独立采集,因此需要集成。不过在实践中,集成更常被**整理/清洗(wrangling/cleaning)**所取代,即在分析前以某种方式“融合”异构数据。在“前数据科学时代”,这种集成并未被预先规划,事后再做会代价高昂。
在本课程中,我们将使用在《数据科学与社会中的数据》模块导论部分首次给出的标准价值链(Standard Value Chain)。其定义如下:
- Collection(采集):从各类来源、仪器或提供方获取与收集数据。
- Engineering(工程):处理与存储,管理数据库、计算机与硬件。
- Governance(治理):数据的各类管理事项,如安全、元数据等。
- Wrangling(整理):在分析前进行转换与清洗。
- Analysis(分析):以各种形式开展分析。
- Presentation(呈现):可视化与摘要化,以呈现“价值”的论据。
- Operationalisation(运营化/落地):将分析结果投入实际以获得价值。
可以看出它与前述模型大致对应。后续章节将以标准价值链为参照。
分析层级(Analytic levels)
“分析层级”是商业领域非常通用的术语。SAS 曾以两页信息图的形式给出过说明(简化模型,描述传递给决策者的信息层级)。较低层级覆盖标准的商业智能报表,更高层级体现真正的分析能力。这些广义的定性术语有助于高层讨论,尤其是与管理层沟通时。
“Eight Levels of Analytics”,SAS(博客与信息图,存档)
许可:公有领域(Public Domain)
Good reading
在该模型中,最高的三个层级是:
- Forecasting(预测):估计趋势。
- Predictive modelling(预测建模):对未来行为进行更全面的建模。
- Optimisation(优化):在约束与优先级下,基于预测模型优化未来计划。
这些术语有助于在宏观层面概括技术能力。另一种更常见的表述是商业分析的三层:描述性—预测性—规范性(Descriptive–Predictive–Prescriptive):
- 描述性分析(Descriptive Analytics):通过报表、记分卡、聚类等从历史数据中获取洞见,回答“我现在做得怎么样?”。
- 预测性分析(Predictive Analytics):用统计与机器学习、文本挖掘等进行预测建模,回答“明年会发生什么?”。
- 规范性分析(Prescriptive Analytics):用优化、仿真等为决策提供建议,回答“为了最大化明年的预期回报,我该提供哪些产品/方案?”。
影响图(Influence diagrams)
影响图是一种更偏数学取向的决策建模方法。完整论述会引入概率推断、决策理论、贝叶斯推理与模型萃取等。这里我们不涉及数学细节,只介绍其图形化形式,强调问题中的行动、结果与不确定性。此外,它还是我们在后续“数据分析过程”模块中讨论因果与相关模型的良好起点。影响图有助于你思考:
- 哪些是已知与未知?
- 你可以采取哪些行动?
- 会产生怎样的结果/价值?(你的决策如何产生价值)
- 还应获取哪些额外信息,以及其成本如何?
这些正是决策者应当考虑的关键问题。
影响图包含 4 类结点:
- 机会变量(Chance variable):其值不确定,你目前不知道,但将来应设法获知;且你无法直接控制。表示为:
Outcome
- 已知变量(Known variable):其值已知(也可能曾是机会变量)。表示为:
Situation
- 决策(Decisions):你(作为决策者)能够直接修改的变量,例如是否投资、投资多少、去或不去等。表示为:
Action variable
- 目标(Objectives):衡量你对可能结果满意度的价值度量,如净现值、挽救生命数量、金额等。表示为:
Outcome variable
将这些结点放在一个有向图中即构成影响图。标准影响图无完全有向环,但其动态变体允许时间向前的回路。参见原型示例 Simple Influence Diagram。有向弧表示“可以影响”,对于“结果/价值”结点,还表示“可能导致”。
简单影响图(The Simple Influence Diagram)
简单影响图(The Simple Influence Diagram)
该影响图表示:
- 我们评估情境(这是已知的);
- 我们采取一个行动;
- 我们随后观察到一个受情境与行动影响的结果;
- 我们从该结果中获得某种价值,价值也可能受行动影响。
此外,弧所代表的“影响结构”也很重要:哪些已知/未知影响哪些目标/决策。何时在两个结点间连接一条弧?基本上使用“因果”的概念:弧的源结点是指向结点的“原因”。(原文此处给出了一个表格来说明不同类型结点之间何时连弧。)
度假(Vacation)
临时决定度假情景(Last Minute Vacation Scenario)
一个与上例变体相关的简单情境如上图所示:
- 我们看到天气预报;
- 据此决定周末是否去海滩;
- 根据实际天气,我们在海滩要么玩得很好,要么糟糕(如阴雨/寒冷)。
你可以质疑该结构。这正是良好建模应做的:质疑并核验假设,努力把重要的决策、目标与变量纳入场景。你可能会说:
带“昨天”因素的度假(Vacation with yesterday)
修改版临时度假情景(Modified Last Minute Vacation Scenario)
难道实际天气不该与天气预报有关吗?气象局不会随机给出预报。
确实如此。但要注意,预报与今日天气之间的相关性是因为二者均受“昨日天气”影响。大气物理决定了今天天气与昨天有一定关系;同时气象局也会根据昨天的天气来制作今天的预报。
因此,我们可以将“昨天的天气”加入图中,如“修改版临时度假情景”所示。此时我们知道昨天的天气,但尚未收到今天的预报。
进一步设想:天气预报是要收费的。比如电视与广播不再免费播报,我们需要支付 10 美元、甚至 100 美元才能获得预报。于是多了一个决策:在决定是否度假之前,要不要花钱买一份预报?
度假·扩展(Vacation Extra)
购买预报的临时度假情景(Last Minute Vacation Scenario Buying Forecasts)
在该情景中,我们有两个决策,且第二个受第一个的结果影响。我们可以选择不买预报、凭直觉决定——根据对“昨日天气”的了解来判断是否出行。但如果需要一个较长期(比如未来 4 天)的预报,凭直觉可能很不靠谱;一个花了 800 美元、且地点偏远的长周末可能被坏天气毁掉,于是我们也许愿意为预报支付 50 美元。另一种情况是:我们买了预报,预报显示天气很好,于是去度假,但实际天气很糟。这是最糟糕的情形:花了钱买预报,结果还玩得很差。
可见,这些决策还取决于:
- 天气预报员/机构的可靠性如何;
- 我们自己的直觉有多靠谱;
- 当坏天气并未出现而我们却因此错过了度假,损失有多大;
- 当好天气预报失准导致我们在度假中遭遇坏天气时,损失有多大。
构建模型(Building a model)
约翰·汉森(Dr. John Hanson)的一次入门讲座提供了关于影响图及其构建的互补视角:
“Influence Diagrams”,UCSD 开设的 DSCI 300 课程的一部分(YouTube,13 分钟):https://www.youtube.com/watch?v=ExVhiEaKD1o
示例:在线广告模型(Example: online advertising model)
来看一个更贴近现实的例子——在线广告。该领域变化多、规模大,高性能计算基础设施以极高速度承载广告投放。工程层面的细节可独立成课;这里基于一个简化变体,从高层视角展示决策选择:
互联网广告模型(Internet Advertising Model)
互联网广告模型(Internet Advertising Model)
对于精准投放的在线广告,需要做三方面决策:
- 为用户存哪些特征:可将用户历史访问的网页进行简要表征并存储(而非存网页全文)。存太多会昂贵且缓慢;存太少又区分度不足。因此通常为每个用户维护少量关键特征。
- 此刻展示哪条广告:给定用户特征,挑选合适的广告。实践中该决策需在互联网响应时延内完成(亚秒级)。
- 若用户点击,给出何种具体优惠:广告已引起兴趣,下一步我们提供什么方案。
广告带来的利润由三个目标变量决定:追踪用户并维护其特征集的计算成本(compute cost)、具体广告活动成本、以及销售净收入。三者合并得到净利润(net profit)。
示例:诊断你的汽车(Example: diagnosing your car)
清晨上班时,你的汽车打不着火。下图“汽车无法启动”给出了该情境的简化视图——一个工程与医学中常见问题的原型。
auto
汽车无法启动(Car Won’t Start)
你坐在驾驶座,首先查看油量表与机油报警灯。由此你评估了模型中的三个灰色变量并知道其取值。接着,你可以下车检查其他变量,开始诊断故障。图中带边框的椭圆结合了“决策+机会变量”:你可以决定是否去检测其中所示的变量。比如取来电压表测电瓶、打开大灯再下车查看是否正常、掀起引擎盖用机油尺量一下油位。每项测试都有成本:夜间测大灯很容易;用电压表测试更麻烦(得先在车库找到它)。若你对汽车工作原理略有了解,就能明白各变量如何相互影响。基于该图,可以设想如何设计一个最优诊断策略来找出无法启动的原因。
示例:诊断心脏病(Example: diagnosing heart disease)
与“汽车无法启动”不同,那是无数据的静态推断任务。现在看一个更现实的任务:诊断心脏病(见下图“Heart Disease”)。
心脏病(Heart Disease),改编自 Bayesian Approach in Medicine and Health Management,参见图 4。
心脏病(Heart Disease),改编自 Bayesian Approach in Medicine and Health Management,参见图 4。
在“汽车”模型中(至少大多数司机)对变量关系相当熟悉;而在“心脏病”模型中则少得多。事实上,医学专家也许能告诉你影响方向(如“肥胖会升高血压”),但未必能把该模型转化为概率规则或表,从而精确量化变量之间的影响。不过,他们可能提供一份数据集,我们即可用统计/机器学习工具来学得这样的模型。
图中的灰色变量可由医生通过简单问诊获得。注意图中带边框的椭圆再次兼作“决策结点+变量”:例如 **ECG(心电图)这项检查可能要花 300 美元;血清硒的检测亦然。我们将饮食(diet)**设为“决策/变量”的组合:或许需要营养师进行规范评估。**心肌梗死(myocardial infarction)**即心脏病发作,严重程度可从较重到致命,无论如何其代价都很高。
设想我们用数据训练出了模型。由此可以理解预测分析与规范性分析的差异:
- 预测分析回答:在给定某位患者的条件与可用检查时,“发生严重心肌梗死的概率是多少?”
- 规范性分析更有意思,适合作为患者的“假设分析(what if)”工具,可回答:
- 我能做出哪些生活方式组合以将心肌梗死风险降低 50%?
- 我讨厌降压药的副作用。若我停药,该做出哪些生活方式改变,才能使我的心梗风险保持不变?
- 在固定预算(按健康管理计划)下,我该做哪组检查组合,才能更好地了解当下心脏健康状况?
小结(Summary)
影响图的数学理论旨在帮助你把各类概率与成本整合起来。使用影响图更像是一种思维方式,而非一味去画小图或求解概率方程。它教给我们的,是在问题中识别关键变量的重要性:
- 不同的**目标(Objectives)**如何产生价值;
- 不同的**决策/行动(Decisions/Actions)**及其对其他变量的影响;
- 影响目标或决策的重要已知与未知(Knowns & Unknowns);
- 哪些可行的决策能影响我们已知的信息,从而提升后续决策的质量。
资源(Resources)
以下是两个进一步学习影响图的有用资源。需要提醒的是,各个学派与公司在符号上会有些许差异,但核心思想一致:
- 入门幻灯片:“Influence Diagrams”,作者 Dr. Yan Liu(Wright State University)。第 13–29 页以简单示例介绍模型。
- 维基百科:词条 Influence Diagrams,内容较为完整。