17-因果:如何缓解反事实难题?

你好,我是悦创。
这一讲,我们讨论理解数据的另一个重要挑战——找到事物之间的因果关系。
确认一件事是另一件事的原因,是我们最常用的思考方式之一。只有知道了原因,我们才能做预测,做解释,做干预。而这三件事,对人来说都是大事。
但是,因果关系是典型的那种你不问我我觉得我知道,但是你一问我我就不知道的问题。确认因果关系,这件事很难。
先讲一个故事:
一位女司机给 4S 店打电话,说:“我在超市,车发动不了了,你们来解决一下。”
店里的工程师问:“你做什么了?”
女士说:“我去买玫瑰花了。但是我买百合花,就没有这个问题。”
工程师当然认为这是鬼扯,但是没办法,只好去了现场。你猜怎么着,女士说的一点没错,买百合车子就能发动,买玫瑰就不能。问题来了,现在经过了事实验证,你同意玫瑰花是导致汽车不能发动的原因吗?
这个案例很好的反映了通过数据去发现和确认因果关系的复杂和艰难之处。特别是当我们进入一个全新的领域,这个领域如何运行,没有人告诉我们。我们能做的,就是猜测、验证和迭代。如果对因果关系的追寻有一个总原则的话,那就是保持谦卑。
补充
我将分三个层面为你详细拆解这个故事背后的逻辑:
第一层:故事的谜底——看似荒谬,实则合理
在这个故事中,工程师面临的困境是:数据(事实)与常识相悖。
事实: 买玫瑰 车坏了;买百合 车好了。
常识: 花的品种不可能影响内燃机。
如果工程师只停留在“花”这个变量上,他永远找不到原因。要解开这个因果之谜,我们需要引入一个**“潜伏变量”(Confounding Variable)**。
🕵️♂️ 侦探推理:
虽然故事没有直接给出结尾,但其背后的物理逻辑通常是这样的:
- 购买习惯: 玫瑰花通常是现成包好的(或是放在门口最显眼的位置),买完付钱就走,耗时很短(比如 2 分钟)。
- 购买习惯: 百合花可能需要现场修剪、包装,或者放在超市深处,购买耗时较长(比如 10 分钟)。
- 汽车机械原理: 这辆车可能存在**“气阻”(Vapor Lock)**问题。当引擎热的时候,燃油在管道里气化,导致无法供油。
- 真相:
- 买玫瑰时间短 引擎还没冷却 气阻未消 无法启动。
- 买百合时间长 引擎充分冷却 气阻消失 顺利启动。
结论: 真正的因果并非“玫瑰导致车坏”,而是**“停车冷却时间过短导致车坏”**。玫瑰只是这一现象的伴随者(相关性),而非制造者(因果性)。
第二层:数据分析的核心挑战——为什么因果关系很难找?
正如文中所说:“你不问我我觉得我知道,但是你一问我我就不知道。”
我们在生活中习惯用归纳法建立因果:看见 A 发生,接着 B 发生,就默认 A 导致了 B。但在数据科学中,这往往是错误的。
混淆了“相关性”与“因果性”
相关性 (Correlation): 数据显示两个事物同时变化。
例子: 夏天冰淇淋销量高,溺水人数也高。
因果性 (Causality): 改变一个事物,另一个事物必然随之改变。
谬误: 禁止卖冰淇淋就能防止溺水吗?显然不能。真正的“因果”是气温(天热导致想吃冰淇淋,天热也导致去游泳)。
在玫瑰花的案例中,如果你根据“相关性”去做决策(干预),你可能会做出荒谬的规定:“禁止车主购买玫瑰花”。但这完全解决不了问题,因为车主下次去买个口香糖(只要够快),车还是会坏。
只有找到因果,才能实现那“三件大事”
文中提到的预测、解释、干预,在这个故事里体现得淋漓尽致:
层面 只有知道“时间是因果” 如果误以为“花是因果” 解释 (Explanation) 引擎有过热保护或气阻问题。 玫瑰花散发的磁场干扰了引擎(伪科学)。 预测 (Prediction) 如果你买报纸很快回来,车也发不动。 如果你买报纸,车应该没事。 干预 (Intervention) 建议车主稍微等一会再启动,或者修引擎。 建议车主只买百合花。
第三层:面对未知领域的态度——保持谦卑
“猜测、验证和迭代”以及“保持谦卑”,是数据科学家的座右铭。
当我们进入一个全新领域(比如分析用户行为、股市波动、或者像故事里的修车):
- 不要轻视看似荒谬的数据: 女士说的是实话,数据本身没有撒谎,是我们的解读可能会出错。
- 不要预设答案: 工程师最初认为这是“鬼扯”,这种傲慢会阻碍发现真相。
- 迭代验证:
- 猜测: 是不是时间问题?
- 验证: 让女士去买百合,但是让她快跑进快跑出(控制时间变量)。
- 结果: 如果快买百合车也坏了,那就证实了是时间问题。
总结
这个故事告诉你:眼见不一定为实,数据相关不等于事实因果。
在复杂的系统中,任何一个显而易见的现象背后,都可能藏着一个看不见的“第三者”(时间、温度、环境等)。只有通过谦卑的实验和逻辑推演,剥离掉表面的干扰,才能抓到那个能够真正解决问题的“因果之手”。
潜伏变量
“潜伏变量”(Confounding Variable),如果用最通俗的大白话解释,就是**“幕后黑手”或者“隐形的第三者”**。
它就像是一个你看不见的导演,它同时指挥了两个演员(事物 A 和事物 B),让你误以为 A 和 B 之间有关系,但实际上它们都是被这位导演操纵的。
我用三个层次帮你彻底搞懂它:
回到“玫瑰花”的例子
在这个故事里:
- 表面看: 买玫瑰花(A) 导致车坏了(B)。
- 实际上: 是**“停车时间太短”**(C)这位“幕后黑手”在起作用。
- 因为停车时间太短(C),所以你去买了不用挑的玫瑰花(A);
- 因为停车时间太短(C),所以引擎没凉透,车坏了(B)。
这里,**“停车时间”**就是一个潜伏变量。如果你没发现它,你就会冤枉玫瑰花。
再举一个经典的“冰淇淋与溺水”例子
这是统计学中最著名的案例:
数据显示:冰淇淋销量越高的时候,海边溺水的人数也越多。
- 荒谬的推论: 吃冰淇淋会导致人溺水。所以为了救人,我们要禁止卖冰淇淋。
- 寻找潜伏变量: 为什么冰淇淋卖得好?因为**“夏天天气热”。为什么溺水的人多?也是因为“夏天天气热”**大家才去游泳。
在这里,**“气温/夏天”**就是那个潜伏变量。是它同时拉高了冰淇淋销量和溺水人数。如果你忽略了这个变量,你的分析就是错的。
生活中的“红酒长寿论”
数据经常显示:经常喝红酒的人,比不喝红酒的人更长寿。
- 直接推论: 红酒里的物质能让人长寿。
- 潜伏变量视角的推论: 喝得起红酒、且有闲情逸致经常喝红酒的人,通常**“社会经济地位较高”**(有钱)。
- 因为有钱,所以喝红酒;
- 因为有钱,所以有更好的医疗条件、更好的饮食结构、更小的生活压力 所以长寿。
这里,**“社会经济地位(钱)”**往往就是一个被忽略的潜伏变量。可能红酒本身并没有那么神,是“钱”让人长寿。
总结
潜伏变量之所以叫“潜伏”,是因为它不在你的原始数据表里。
- 你看得到“玫瑰”,看得到“车坏了”,但数据表里没记“时间”。
- 你看得到“冰淇淋”,看得到“溺水”,但数据表里没写“气温”。
通俗口诀: 当你看到 A 和 B 好像如影随形时,千万别急着说“是因为 A 所以 B”,先问问自己:“是不是躲在背后的 C,同时搞了它们两个?”
这个 C,就是潜伏变量。
蒙太奇手法:
另外一个实验:库里肖夫拍摄了三个镜头,一个演员微笑的特写,一个左轮手枪的特写
以及一个演员看起来很害怕的特写正常顺序连接,便是一场很正常的戏份:
但是如果颠倒两个表情镜头,人物性格在观众这里便会变成了勇敢。
补充 2
我们就把这个“买玫瑰车就发动不了”的故事,**当成一堂“因果关系入门课”**来拆解讲透:它到底在考我们什么、为什么直觉会被骗、以及怎么一步步把“看起来像原因”的东西,变成“更像真原因”的结论。
1)先把故事翻译成“数据语言”
故事里出现了两个事件:
- 结果 Y(我们关心的):车能不能发动(能/不能)
- 现象 X(看起来有关的):买了什么花(玫瑰/百合)
观察到的规律是:
- 买玫瑰 → 车发动不了
- 买百合 → 车能发动
如果你只看这两条记录,你的大脑会自动跳到一句话:“玫瑰导致车发动不了。”
但这一步,就是故事要抓你的地方:相关 ≠ 因果。
2)为什么我们会“自动相信因果”?
因为人的思维习惯是:
- 看到规律(玫瑰→坏 / 百合→好)
- 立刻补上一个解释(玫瑰有问题)
- 解释越顺口,越像真相
这叫“解释冲动”:我们宁愿有一个可能是错的原因,也不愿意承认“我还不知道”。
而数据分析里最难的,恰恰是学会说:先别急着认定原因。
3)关键问题:事实验证了规律,但它验证不了因果
注意故事里的“陷阱句”:“现在经过了事实验证,你同意玫瑰花是导致汽车不能发动的原因吗?”
很多人会说:“都验证了呀,当然同意。”
但“验证”的只是:在这位女士的经历里,玫瑰和发动失败一起出现得更多。
这属于:
- 相关关系(correlation):X 和 Y 一起变化
- 而不是👇
- 因果关系(causation):X 改变会导致 Y 改变
因果要更强:它要求你能回答——
“如果她当时买玫瑰,但其他条件都不变,车是否仍一定发动不了?”
这句“其他条件都不变”,才是因果推断的地狱难度。
4)最核心的敌人:第三因素(混杂变量)
这故事几乎在暗示你:“玫瑰”很可能只是个 替罪羊,真正的原因藏在另一个变量里。
我们来列一些非常现实的“第三因素 Z”:
可能的 Z1:停车位置不同
- 买玫瑰的店在 地下车库深处 → 信号弱、潮湿、温度低
- 买百合的店在 地面 → 环境更好
如果车是电瓶老化、接触不良、或智能钥匙信号问题,环境差一点就触发“无法启动”。
这时你看到的其实是:
- 玫瑰(只是“去地下”的标记)
- 地下环境(真正影响启动)
- 启动失败(结果)
玫瑰并不“致坏”,它只是“更常出现在会坏的场景”。
可能的 Z2:买玫瑰更花时间
- 买玫瑰要挑、要包、要排队 → 停车更久
- 买百合随手买 → 停车更短
如果车本身有问题(比如电瓶弱、某个传感器热衰减/冷却触发),停久一点就更容易失败。
可能的 Z3:她去买玫瑰的日子不同
- 玫瑰通常在周五/节日前买 → 超市更拥堵、她更着急、熄火次数更多
- 百合平时买 → 状态轻松
结果可能来自:操作习惯差异、开关门次数、钥匙放包里被屏蔽等。
你看:同样的“玫瑰 vs 百合”,背后可能对应一整套不同的场景变量。
这就是混杂变量:它会制造一种“假因果”。
5)故事最想训练你的:别急着问“是不是原因”,先问“还能是什么原因”
真正的数据思维不是立刻下结论,而是按顺序做这三件事:
第一步:把“因果断言”改成“可疑假设”
不要说:“玫瑰导致启动失败”
改成:“在目前观察里,买玫瑰和启动失败相关,我怀疑存在一个共同原因。”
这一步叫谦卑:先承认自己可能错。
第二步:列出“替代解释清单”
也就是我上面列的 Z(停车位置、停放时间、日期、人状态、环境、钥匙信号、电瓶温度……)。
这一步叫扩展假设空间:很多人输就输在只盯着一个解释。
第三步:设计验证方式,让“玫瑰”单独变化
这是因果推断最硬的一步:
控制变量。
你要做的是让:
- 只变:买玫瑰/百合
- 不变:停车位置、停放时间、发动方式、钥匙位置、环境温度、是否开空调、是否熄火等
怎么做?比如:
- 同一个停车位、同一时间段
- 人先坐进车里保持同样流程
- 让朋友去买玫瑰/百合(避免“她的行为模式”变化)
- 或者更狠:不买花,只走到同一家店门口停同样久,看车是否还能发动
如果在这些控制下,“玫瑰效应”消失了:那就说明玫瑰不是原因。
6)把它升级成一句“数据分析通用口诀”
这个故事的精髓可以浓缩成一句话:
“能复现的相关性,依然可能是错的因果;因果需要排除混杂,并构造反事实。”
通俗点说:
- 你看到“玫瑰→发动不了”,最多说明:“玫瑰出现时,坏事更常发生。”
- 你想证明“玫瑰是原因”,必须证明:“只要换成百合,其他都不变,车就会好。”
7)为什么结尾说“总原则是保持谦卑”?
因为在全新领域里(没人告诉你系统怎么运转),你手上通常只有:
- 现象(相关)
- 少量案例
- 不完整变量
- 以及你自己的解释冲动
这时候最危险的不是“没找到原因”,而是:过早相信自己找到了原因。
一旦你把“玫瑰”当成原因,你就会开始做错误干预:比如不再买玫瑰。但真正的问题(电瓶/钥匙/环境/线路)还在,迟早会在别的场景爆发。
原始故事
这也是一个非常经典的“都市传说”级商业案例,虽然真实性不可考(也有人说是庞蒂亚克 Pontiac 汽车的故事),但它长期被各大商学院和工程学院引用,用来解释数据分析中的**“潜在变量”**。
这个原本的故事是关于通用汽车(General Motors)与香草冰淇淋的。
以下是这个故事的完整版本:
故事背景:一封荒谬的投诉信
通用汽车的庞蒂亚克(Pontiac)部门收到了一封客户投诉信,信的内容非常离奇,看起来像是一个恶作剧。
客户写道:
“这听起来可能很疯狂,但我发誓这是真的。我们家有一个传统,每天晚饭后都会全家投票决定吃什么口味的冰淇淋,然后我开车去买。
问题在于:每当我买香草冰淇淋时,当我回到车里,车子就发动不起来。但如果我买的是巧克力、草莓或者其他任何口味,车子都能顺利启动。
我想知道,你们的汽车到底有什么问题?为什么它‘讨厌’香草冰淇淋?”
调查过程:工程师的介入
尽管这封信看起来很荒谬,但庞蒂亚克的主管还是派了一位工程师去调查。工程师见到了这位车主,发现他是一位受过良好教育、非常理智的人,不像是在开玩笑。
于是,工程师决定通过实地实验来收集数据。
- 第一晚: 大家都投票吃巧克力冰淇淋。车主把车开到冰淇淋店,买好,回来,车子顺利启动。
- 第二晚: 大家都投票吃草莓冰淇淋。车主开车去买,买好,回来,车子顺利启动。
- 第三晚: 大家都投票吃香草冰淇淋。车主去买,买好,回来,车子真的发动不起来了!
工程师有些困惑,但作为理性的数据分析者,他不相信“汽车对口味过敏”。他开始记录更详细的数据,不仅是口味,还包括时间、车流量、停车位置等。
发现真相:被忽略的“时间”变量
经过几天的观察,工程师发现了一个关键的业务逻辑差异:
- 香草冰淇淋: 因为香草是最畅销的口味,店家把它放在了店铺最靠前、最方便拿取的冷柜里,甚至经常是预先打包好的。购买时间非常短,车主停车后几分钟就回来了。
- 其他口味: 比如巧克力或草莓,销量没那么大,放在店铺后排的柜子里,店员需要现挖、包装,甚至还需要排队。购买时间比较长。
谜底揭晓:
这就涉及到了汽车的物理原理——气阻(Vapor Lock)。
这辆车的引擎散热设计有一些缺陷。当车子开了一段路到达商店时,引擎是热的。
- 如果购买时间短(买香草):引擎没有足够的时间冷却,燃油管道里的汽油因为高温气化,形成了“气阻”,导致供油不畅,车子发不起来。
- 如果购买时间长(买其他口味):引擎有足够的时间自然冷却,气阻消失,燃油恢复液态,车子就能顺利启动。
故事的启示
这个原版故事和“玫瑰花与百合花”的故事核心是一样的,但它更强调了**业务场景(Domain Knowledge)**的重要性。
- 数据不会撒谎,但会骗人: 数据显示“香草导致故障”,这是事实(相关性),但不是真相(因果性)。
- 只有深入现场才能发现“潜伏变量”: 坐在办公室看表格的工程师,永远想不到冰淇淋店的陈列摆放(香草在前,其他在后)竟然是汽车故障的关键线索。
- 看似不合理的需求背后,往往藏着技术改进的机会: 最终,通用汽车并没有要求客户“别买香草冰淇淋”,而是改进了燃油系统的散热设计。
1. 因果关系成立的必要条件
尽管确立因果关系很难,但我们也得前行。
我们先讨论最简单的情况:如果两个变量之间是因果关系,那它一定具备哪些特征呢?也就是说,因果关系成立的必要条件有哪些呢?
第一:如果两个变量之间是因果关系,那它们之间肯定有相关。
研究人员说,有混蛋人格的人与他们获得权力之间没有因果关系,那么在数据上,混蛋人格和获得权力之间肯定就看不到相关。而研究人员又说,外向性格的人更容易获得权力,它们之间有因果关系,那么在数据上,外向性格和获得权力之间肯定可以看到相关。
顺便说一下,发现事物之间的相关性也是理解数据的一个重要任务,并不附属于因果关系的追寻。比如著名的“啤酒与尿布”的销售案例,就是说,把啤酒和尿布摆放在一起销售,销量会大增,这就是一个相关性的案例。再顺便说一下,“啤酒与尿布”这个案例找不到论文的出处,很可能是记者瞎编的。
注意,如果把问题反过来,两个变量之间看不到相关,就肯定没有因果关系吗?答案是,不一定。
举个例子。运动和体重之间观察不到相关,很多人经常运动,体重还是不见下降,但我们能说运动和体重没有因果联系吗?有研究发现,运动确实减少了体重,但同时也增加了饥饿感,因此会让人吃得更多。于是,两者抵消,导致运动和体重之间观察不到相关性。
这个研究是不是可靠先放在一边,我们想说的是:两件事没有相关,可能是真实的,也可能只是表象。确定因果关系,不能只看这两件事情之间,而必须看到世界运作的全景。要是你还没有能力看到全景,那么请再一次保持谦卑,慎重下结论。
详情
“啤酒与尿布”(Beer and Diapers)是数据挖掘和商业智能领域最著名、最经典的案例之一。它通常被用来解释“关联规则学习”(Association Rule Learning)的概念。
这个故事完美展示了大数据如何发现人类直觉无法察觉的隐秘规律。
以下是关于这个案例的详细解读:
1. 故事的核心情节
这个故事通常设定在 20 世纪 90 年代的美国零售巨头 沃尔玛(Walmart):
- 发现异常: 沃尔玛的数据分析人员在梳理超市的销售数据(购物篮分析)时,发现了一个奇怪的现象:“啤酒”和“尿布”这两个看似风马牛不相及的商品,经常出现在同一个购物小票上。
- 深挖原因: 经过进一步调查,分析师发现了背后的行为逻辑。通常在周五下午或傍晚,年轻的父亲会被妻子派去超市买尿布。这些父亲在辛苦一周后,在买完尿布时,往往会顺手给自己买几瓶啤酒来犒劳一下周末。
- 商业决策: 发现这个规律后,沃尔玛打破了常规的商品陈列逻辑(通常啤酒在饮料区,尿布在婴幼儿区),而是将啤酒和尿布摆放在非常靠近的地方。
- 结果: 这一举措大大缩短了顾客的寻找时间,最终导致啤酒和尿布的销量双双大幅提升。
2. 背后的技术原理:关联分析
这个案例的本质是数据挖掘中的购物篮分析(Market Basket Analysis)。
其核心算法通常被称为 Apriori 算法。它不关心商品之间是否存在逻辑上的因果关系(即不是因为喝了啤酒才买尿布),而是关注相关性。
在数据分析中,主要看两个指标:
- 支持度 (Support): 啤酒和尿布同时出现的频率有多高?
- 置信度 (Confidence): 买了尿布的人,有多大概率也会买啤酒?
3. 这个案例带来的启示
- 相关性 > 因果性: 在商业应用中,知道“是什么”(它们一起卖得好)往往比知道“为什么”(因为爸爸想喝酒)更重要,也更具备实操价值。
- 数据打破认知盲区: 按照传统的人类经验,啤酒属于酒水,尿布属于母婴,理应分开放。只有数据才能跨越品类,发现这种隐秘的联系。
- 交叉销售 (Cross-selling): 这是现代推荐系统的雏形。
4. 现实与传说的距离
虽然这个故事在商学院和IT界广为流传,但它的真实性一直存在细微的争议:
- 起源: 这个案例最早可以追溯到 1992 年 Teradata 公司的一位经理 Thomas Blischok 对 Osco Drug(一家药店连锁,并非沃尔玛)进行的分析。
- 结果: 确实发现了由年轻男性主导的“尿布+啤酒”的高频购买关联(特别是在周五下午 5 点到 7 点之间)。
- 结局: 并没有确凿的证据表明商家真的因此改变了货架摆放并获得了巨额利润。这个部分更多是后来在传播过程中被润色和神话了,用以展示数据挖掘的威力。
5. 现代版的“啤酒与尿布”
虽然这是一个几十年前的老故事,但这种逻辑现在无处不在:
- 电商推荐: 淘宝/京东的“买了这件商品的人也买了……”
- 视频网站: YouTube/B站/Netflix 的“猜你喜欢”。
- 外卖平台: 点了炸鸡后,系统自动推荐可乐。
总结:“啤酒与尿布”是一个关于从海量数据中挖掘隐性价值的寓言。它教会了商业界不再仅仅依赖经理人的直觉,而是开始尊重数据的声音。
故事 “啤酒与尿布”的传奇故事
1. 故事背景:大数据的黎明
故事发生在 20 世纪 90 年代 的美国。当时的零售巨头 沃尔玛(Walmart) 刚刚建立起了一套超级强大的数据仓库系统。他们拥有的交易数据量是惊人的,但问题是:数据就在那里,却没有人知道如何把它们变成真金白银。
于是,沃尔玛的高层给数据分析团队下达了一个死命令:“去数据里挖金矿,找出那些我们凭经验绝对想不到的销售机会。”
2. 奇怪的发现
分析师们开始对海量的 “购物篮数据”(也就是每张收银小票上的商品组合)进行地毯式扫描。
计算机夜以继日地运算,最后吐出了一条让所有人都令人费解的规律:
在每周五的下午 5 点到 7 点之间,非常有名的“纸尿裤”和“啤酒”这两样商品,极其频繁地出现在同一个购物篮里。
这完全不符合常理。按照传统的零售逻辑:
尿布 属于母婴用品,通常是女性购买。
啤酒 属于酒精饮料,通常是男性购买。
这两个区域在巨大的沃尔玛超市里,一个在东头,一个在西头,相隔甚远。为什么它们会被一起买走?
3. 场景还原:谁在买?
为了解开谜题,沃尔玛派出了调查人员去卖场观察,并结合顾客画像分析,最终还原了这样一个生动的用户行为场景:
时间: 周五傍晚,一周工作的结束。
主角: 25-35 岁的年轻父亲。
剧情:
妻子在家照顾婴儿,发现尿布快用完了,于是打电话给刚下班的丈夫:“亲爱的,回家前务必去超市买包尿布。”
丈夫拖着疲惫的身体走进超市,直奔母婴区拿了尿布。任务完成。
但此时他心想:“谢天谢地,终于周末了,我要放松一下,看球赛怎么能没有酒?”
于是,他顺手就走向饮料区,拎了一打啤酒,把尿布和啤酒一起扔进了购物车,然后结账回家。
结论: 这是一个由 “年轻父亲” 在 “周五傍晚” 主导的 “任务+奖励” 式购物行为。
4. 那个价值连城的决定
发现这个秘密后,沃尔玛的卖场经理做了一个在当时看来非常大胆、甚至有点荒谬的决定:
重新调整货架摆放。
工作人员不再把啤酒放在遥远的饮料区,而是直接在卖尿布的货架旁边,搭建了一个堆满啤酒的促销展台。
5. 结局
奇迹发生了。
当年轻的父亲们匆匆赶来买尿布时,他们惊喜地发现:“嘿!啤酒就在手边,不用绕路了!”
结果令人震惊:尿布的销量保持稳定增长,而啤酒的销量在那个时间段出现了爆发式的提升。 甚至还有传说称,这种摆放方式让沃尔玛当年的特定品类销售额提升了 30% 以上。
故事的核心寓意
这个故事之所以成为经典,是因为它告诉了所有管理者一个道理:
有时候,你不需要知道“为什么”(因果关系),你只需要知道“是什么”(相关关系)。 数据比人类的经验更诚实,它能发现人类直觉无法触及的隐秘财富。
Would you like me to ...
想听听另一个更令人毛骨悚然的现代案例:“塔吉特百货(Target)是如何比父亲更早知道他的高中女儿怀孕了” 的故事吗?
这是一个比“啤酒与尿布”更具现代感,但也让人感到有些**“细思极恐”**的真实案例。
这个故事最早由查尔斯·杜希格(Charles Duhigg)在《纽约时报》的一篇著名文章中披露,后来也收录在他的畅销书《习惯的力量》中。
以下是**“塔吉特(Target)比父亲更早知道女儿怀孕”**的完整故事:
1. 故事背景:零售商的终极目标
塔吉特(Target)是美国著名的零售巨头。对于零售商来说,最赚钱的客户是那些正在经历人生重大转折点的人。
为什么?因为当一个人的生活发生巨变(如结婚、搬家、生孩子)时,他们旧的消费习惯会被打破,新的习惯尚未形成。这个时候,谁能最先抢占他们的心智,谁就能锁定他们未来几年的钱包。
而在所有转折点中,“生孩子”是含金量最高的。新手父母会疯狂购买尿布、奶粉、童车,而且往往因为疲惫而懒得比价,会在同一家店买齐所有东西。
2. 算法的诞生:寻找“怀孕信号”
塔吉特的数据分析团队(由一位名叫 Andrew Pole 的统计学家领导)接到了一个任务:能不能在顾客自己告诉我们之前,甚至在她们肚子大起来之前,就预测出谁怀孕了?
经过对历史数据的深度挖掘,他们锁定了 25 种典型商品。当一位女性顾客开始购买这些东西时,系统就会计算她的**“怀孕预测指数”**:
- 无香型乳液: 许多孕妇对气味变得敏感,会从平时喜欢的花香型润肤露换成无香型的。
- 保健品: 突然开始大量购买钙镁锌片。
- 大包棉球和洗手液: 为即将到来的婴儿护理做准备。
通过这套算法,塔吉特甚至能推算出预产期在几月。
3. 冲突爆发:愤怒的父亲
故事的高潮发生在明尼苏达州的一家塔吉特门店。
一天,一位中年男子气冲冲地闯进商店,手里攥着一沓优惠券,直接要求见经理。
他把优惠券摔在桌子上,对着经理咆哮道:
“你们这是什么意思?我女儿还在读高中! 你们却给她寄婴儿衣服、婴儿床的优惠券?你们这是在鼓励她怀孕吗?”
经理看着这些印着笑脸婴儿和孕妇装的广告,感到非常尴尬。他连忙向这位父亲道歉,承认这可能是系统发错了,并保证以后不会再发生。
几天后,这位经理觉得心里过意不去,决定再次打电话给这位父亲,想再次表达歉意。
4. 惊人的反转
电话接通后,经理刚开口准备道歉,那头的父亲语气却完全变了。他显得有些尴尬和低沉:
“呃……关于这件事,我得向你道歉。”
父亲顿了顿,继续说道:
“那天回家后,我和女儿好好谈了一次。原来,家里确实发生了一些我完全不知道的事情。 她确实怀孕了,预产期就在8月。是我错怪了你们。”
结局: 塔吉特的算法通过分析女孩购买无香洗发水和维生素的行为,比这位朝夕相处的父亲更早地发现了真相。
5. 后续:不仅要准,还要“装傻”
虽然算法非常精准,但塔吉特意识到这带来了一个巨大的公关危机:太精准的算法会让人感到恐惧(Creepy),觉得被监视了。
如果顾客觉得商家知道得太多,他们会因为恐慌而拒绝购买。
于是,塔吉特想出了一个天才般的“伪装策略”:
他们不再把“婴儿尿布”和“孕妇装”的优惠券单独寄给准妈妈,而是把它们混杂在其他完全不相关的商品里。
比如:
- 一张尿布优惠券。
- 旁边放一张除草机的优惠券。
- 再放一张红酒杯的优惠券。
产生的效果: 顾客收到信件时会觉得:“哦,看这该死的广告,这又是一次随机群发的垃圾邮件,只是碰巧有一张尿布券我用得上。”
这样,顾客既使用了优惠券,又不会觉得自己被监视。塔吉特成功地在“精准营销”和“保护隐私感”之间找到了平衡。
总结
这个故事揭示了大数据的两面性:它既是商业利器,也是隐私噩梦。它告诉我们,我们的行为模式比我们自己想象的要诚实得多,也更容易预测得多。
Would you like me to ...
这个故事引出了“数据伦理”的话题。您想了解一下在这个算法时代,如果你想在互联网上“隐身”,避免被大数据精准画像,有哪些实际可行的(或者徒劳的)方法吗?
如果你想在互联网上“隐身”,避免被大数据精准画像,有哪些实际可行的(或者徒劳的)方法吗?
在当今的互联网生态中,想要实现**“完全隐身”**几乎是不可能的——除非你拔掉网线,搬进深山老林,并只用现金交易。
但是,如果你不想被算法“一眼看穿”,不想让塔吉特知道你怀孕了,或者不想让淘宝知道你刚失恋了,确实有一些**“反侦察”**手段。
这些手段的核心逻辑通常分为两派:“盾牌策略”(阻挡数据) 和 “迷彩策略”(污染数据)。
1. 盾牌策略:物理与技术隔绝
这是最直观的方法,目的是尽量少留下痕迹。
- 浏览器指纹的对抗:
- 误区: 很多人以为开了“无痕模式/隐私模式”就隐身了。错! 无痕模式只是不记录你的本地历史,但网站服务器依然能通过你的IP地址、屏幕分辨率、操作系统版本、安装的字体列表等信息拼凑出你的“设备指纹”。
- 对策: 使用 Tor Browser(洋葱浏览器) 或 Brave 这样专门混淆指纹的浏览器。它们会让你的设备看起来和成千上万其他人的设备一模一样。
- 搜索习惯的改变:
- Google 和 百度 是最大的数据收集器。
- 对策: 改用 DuckDuckGo 或 Startpage。这些搜索引擎承诺不追踪用户,不记录搜索历史。
- 账号隔离(马甲战术):
- 不要用同一个 Google/微信/Apple ID 登录所有应用。
- 对策: 准备专门的“垃圾邮件邮箱”(Burner Email)用于注册那些不重要的服务。购物用一个号,社交用一个号,看视频用一个号,切断它们之间的数据关联。
2. 迷彩策略:数据污染(这是最高级的玩法)
既然躲不掉,那就**“搞乱它”。如果你不能阻止他们收集数据,那就给他们垃圾数据**,让算法生成的画像彻底失真。
- AdNauseam(广告恶心插件):
- 这是一个非常激进的浏览器插件。它的逻辑是:后台自动点击网页上的每一个广告。
- 效果: 在谷歌或Facebook的后台,你会被标记为一个对“猫粮”、“挖掘机”、“口红”和“量子物理”都感兴趣的怪人。当你的兴趣标签变成了几万个时,原本精准的画像就变成了一堆噪音,算法就无法对你进行精准投放了。
- 随机行为:
- 偶尔在视频网站上点开几个你完全不感兴趣的视频(比如你是男生,点开几个美妆视频放完)。这会扰乱推荐系统的权重。
3. 令人绝望的现实:为什么还是很难逃脱?
即使你做到了上面所有的一切,依然存在几个无法解决的**“上帝视角”**漏洞:
- 影子画像(Shadow Profiles):
- 这是最可怕的。就算你不使用社交媒体,你的朋友也会出卖你。
- 比如,你没有微信,但你的朋友手机里存了你的号码,上传了包含你照片的合影,甚至在聊天中提到了你的名字。算法可以通过分析你周围人的数据,勾勒出一个**“虚拟的你”**。Facebook 曾因此被诟病:他们甚至知道非用户的政治倾向和性取向,纯粹是推算出来的。
- 步态与行为识别:
- 现在的追踪不仅仅靠Cookie。你打字的速度、点击鼠标的节奏、甚至拿着手机走路时的轻微晃动(通过陀螺仪数据),都是你的生物特征。这些特征很难伪装。
- 跨设备追踪:
- 超声波信标(Ultrasonic Beacons)。一些APP会在后台播放人耳听不见的高频声音,而你身边的电脑或平板麦克风能听到。通过这种方式,广告商知道这台手机和那台电脑属于同一个人,从而把数据打通。
总结
在算法时代,隐私不再是“拥有秘密”,而是“拥有对自己信息的控制权”。
要做一个完全的“隐形人”是徒劳的,但做一个**“模糊的人”是可行的。通过增加数据噪音和使用阻断工具,你可以让算法觉得你是一个“难以预测的、混乱的用户”**,从而降低被精准操控的风险。
Would you like me to ...
既然聊到了对抗技术,您想听听另一个更具攻击性的领域吗:“社会工程学”(Social Engineering)——也就是黑客是如何不通过写代码,而是仅仅通过聊天和心理操纵,就骗走密码或入侵企业的?(这是那个著名的黑客凯文·米特尼克的拿手好戏)。
第二:两个变量之间有先后。
是先有市场,才导致人们合作,还是人们倾向于合作,导致了市场的出现呢?《精英日课》里提到的研究说,是市场导致合作。
因果关系,必须原因在前,结果在后。
不要拿量子力学怼这个条件,量子力学只能用在自然界,不能用在人类社会这个层面。还有一些观点认为,人类社会存在反因果的案例,但我认为说服力都不足。当然,如果有了确切的证据,学术共同体有了新的共识,我们再调整认知。
第三:两个变量之间的关系不被第三个变量解释。
举个例子:
我们可以观察到,城市女性的生育率比农村女性低,我们可以说是城市导致的生育率低吗?不能。因为中间还存在第三件事——教育程度。统计发现,教育程度高,生育数量就少,而城市女性普遍比农村女性教育程度更高。所以,教育程度更好地解释了城市和农村之间生育率的差别。
明白了这个条件,我们就可以解决开头玫瑰花和汽车的问题了。
工程师在现场发现,这家超市很奇怪,卖百合花的地方和卖玫瑰花的不在一个地方。百合花离停车场近,玫瑰花离停车场远。这样,女士买百合,回来车还是热的,很容易发动;买玫瑰,回来车就凉了,导致车辆冷启动困难,于是就发动不了。这才是真正的因果关系,和你买的是百合还是玫瑰没有关系。
以上,我们的讨论仅仅局限在两个变量之间。但是,现实世界是普遍联系的,各种事情交织在一起,这时候怎么寻找因果关系呢?
整体思路是这样的:
先建立所研究问题整体的运行图景,说明各个变量之间的联系。然后去收集数据,让数据逼近这个理论图景。再然后,用数据验证这个理论。如果验证通过,就对理论更相信一点。如果不通过,就改进理论或者收集新的数据,再次验证。如此循环下去。
2. 反事实难题
可能你会好奇,为什么寻找因果关系就这么难呢?一句话,因为缺少数据。
你说,这个很容易解决,收集数据不就完了吗?你想简单了。有的事情就是没有数据。不信看个例子——统计发现,上过大学的人比没有上过大学的收入更高。那么,上过大学是不是收入高的原因呢?
我们看看标准做法:比较两组人,一组上过大学,另一组没有,然后看看10年后这两组人的工资差异。对吗?
但是,这两组人真的一样吗?不一定。一个人能上大学,所以他才上了大学,另一个人不能上大学,因此没有上大学,这很可能就是两类人。另外,上大学这个因素,对这两类人的影响可能是不一样的。适合上大学的,大学对他们很重要;不适合上大学的,上了大学可能影响也不大。所以,这样做是不行的。
如果真要确定上大学是不是收入高的原因,就要比较同一组人。但是,一个人不可能既上过大学又没有上过大学,所以我们永远缺少数据。这就是社会科学中做因果关系的本质难题。这个难题有一个名字值得你记住,叫“反事实难题”。
相对而言,自然科学家就很幸福。这个光子跟那个光子完全相同,对一个光子做测量,就是对全宇宙所有的光子做测量,得出的结论可以适用于全宇宙。
因为这个反事实难题的存在,在社会领域推断因果关系时,我们必须牢记以下三个重要的认知:
我们只能对群体做因果推断,不能对个体做因果推断。
因为一个人不能既上了大学又不上大学,所以对于单独的个体,我们就不能做因果推断。我们只能在平均的意义上比较两组人,然后做出推断。
我们只能对因果关系做概率表述,不能做确定性的表述。
当我们说上大学可以提高收入的时候,只是概率性的。大部分上了大学的人比大部分没有上过大学的人收入高,但肯定存在反例。
随机试验不能完全解决问题,推广到总体时要很小心。
随机试验仅仅是对一部分人做试验,这部分人能不能代表人类整体,不能想当然。
3. 辛普森悖论
因果关系的确定之所以那么难,除了反事实难题之外,还在于确认因果关系的过程中有很多陷阱。时间有限,这里就提一个主要的,就是大名鼎鼎的“辛普森悖论”。
这是一件真事。一所美国大学的校方要求,每一个系招研究生时,女生的录取率必须高于男生。但是,校长拿到汇总表后发现,男生的录取率还是高于女生。于是校长大怒,下令追查是哪个系不听话。但是,等看到各系招生明细表时,校长傻眼了,他发现,每一个系的招生都是女生的录取率多于男生。
如果抽象一点,这件事的意思是说,在分组比较中都占优势的一方可能会在总评中失势。注意,是可能,不是一定。
我再说另一件真事。你听说过互联网公司都要做A/B测试吧?比如,A 方案标题用红色,B 方案标题用黑色,然后分配 20 万用户测试一下,10 万人看见红色,10 万人看见黑色。如果红色标题的点击比黑色的高,那全站就采用 A 方案,把所有的标题都改成红色的。
问题就在于,分配的这两个组的 20 万用户是不是准确代表了全量用户的情况。如果有些时候不能代表,就会产生辛普森悖论,在实验区成立的结论在全量区被逆转。
这种情况有多严重呢?据一位在内容推荐领域一线的策略产品经理的实战估计,在他自己的工作中,这种情况出现的概率小于20%[1] 。20%,可不算是小概率事件了。
学习完理解数据,下一讲,我们进入课程的新模块,如何操纵数据。
我是悦创,我们下一讲见。
划重点:
- 两个变量之间因果关系成立的必要条件有三个:一,两个变量有相关;二,两个变量有先后;三,两个变量的关系不能被第三个变量解释。
- 因果关系的寻找是一项重大挑战,没有保证成功的一般法则。其中,最大的困难就在于反事实难题的存在。
- 面对现实问题,我们能做的就是猜测、验证和迭代。如果对因果关系的追寻有一个总原则的话,那就是保持谦卑。
公众号:AI悦创【二维码】

AI悦创·编程一对一
AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Web、Linux」,招收学员面向国内外,国外占 80%。全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh
方法一:QQ
方法二:微信:Jiabcdefh

数据源自《策略产品经理实践》,作者韩瞳。 ↩︎
更新日志
affa1-于f536f-于8708a-于b1d74-于8ea91-于979b0-于d546d-于22b58-于482cd-于


