# 2.3.8 Algorithmically confounded

> 大数据系统里，人们的行为并不是自然行为，而是受系统目标影响之后的行为。

尽管很多大数据是 nonreactive 的，因为人们并不知道他们的行为正在被记录（2.3.3节），研究者们也不应认为线上系统中观察到的行为就是“自然发生”的。事实上，这些系统在故意诱导人们的行为，比如引诱用户点击广告、鼓励用户发布文章。这种系统目标对数据模式的影响叫做：*算法魅影（algorithmic confounding）* 。算法魅影在社会科学家中还不出名，但它是数据科学家一个重要的关注点。还有，与其他数字记录的毛病不同，算法魅影很大程度上是隐身的。

举个简单的算法魅影的例子，[Johan Ugander(2011)](http://arxiv.org/abs/1111.4503) 发现在 Facebook 上，20个好友左右的用户有很多很多很多。在不懂 Facebook 的设计时，科学家可以写出很多故事，坚信不疑的相信 20 是个充满社交魔力的数字。幸运的是，Ugander 理解了数据产生的关键过程。他知道 Facebook 鼓励新用户发现更多朋友，直到好友数达到20个。然而 Ugander 在论文里并没有指出来，大概是 Facebook 的政策，来鼓励新用户变得活跃。然而，如果不知道这个政策，很容易从数据中得出错误的结论。也就是说，非常非常多的人有 20 个好友，告诉我们更多的是 Facebook 的特点，而不是人们的自然行为。

在上面的例子中，细心的研究者也许会发现算法魅影的痕迹，并更进一步的探索这个诡异的现象。然而，当线上系统的设计者知道一些社会学理论，并把它应用在系统里时，算法魅影会有变得更微妙。社会科学家把这称作 *操演（performativity）*：当一个理论以这种方式改变世界时，会让世界更符合这个理论。这种会演戏的算法魅影，通过数据很难侦查到。

操演产生模式的一个例子是线上社交网络中的社交传递性。在上个世纪 70 年代到 80 年代间，不断有研究者发现，如果你同时是小明和小红的朋友，那么，和随机的两个人相比，小明和小红也是朋友的可能性更高。在 Facebook 的社交图上发现了与这相同的模式（[Ugander et al. 2011](http://arxiv.org/abs/1111.4503)）。因此，人们也许会得出这样的结论：Facebook 的线上好友模式与现实世界的好友模式相同，至少从传递性的角度来说。然而，Facebook 社交图上的传递性，一部分是受到了算法魅影的迷惑。这就是说，Facebook 的数据科学家知道有关传递性的经验上或理论上的研究，然后将其融入了 Facebook 的工作方式中。Facebook 有个 “你可能认识的朋友” 的功能，其中就使用了社交传递性，来为你推荐新朋友。就是说，Facebook 倾向于建议你与你朋友的朋友成为朋友。这个功能增加了 Facebook 社交图上的传递性；也就是说，传递性的理论使世界更符合它的预测（[Zignani et al. 2014](http://www.aaai.org/ocs/index.php/ICWSM/ICWSM14/paper/view/8042); [Healy 2015](https://doi.org/10.1017/S0003975615000107)）。因测，当大数据的预测与社交理论非常符合时，我们必须确定这个理论没有应用在系统的工作原理中。

与其把大数据看作是人们自然情况下的行为数据，更合理的比喻是人们在赌场里的行为数据。赌场是经过了精心设计，引诱人们做某些的行为。研究者不会认为人们赌场中的行为与自然环境下的行为一样。当然，可以通过研究人们赌场里的行为得出些一般规律。但是，如果忽略这些数据是在赌场得到的，你可能会得出错误的结论。

不幸的是，驱散算法魅影十分困难。因为很多线上系统的功能是保密的，在文档中刻意淡化的，同时还在不断改变。例如在之后的章节里，算法魅影也许可以解释谷歌流感趋势（Goggle Flu Trends）的逐步分解。但由于 Google 的搜索算法是保密的，我们很难验证这个推论。算法魅影是系统漂移（system drift)的一种形式。算法魅影意味着，我们需要留意任何从单一数字系统中得到的人类行为的推论，无论数据量有多大。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sibyl.gitbook.io/bitbybit/2-guan-cha-hang-wei/2-3-ten-commmon-characteristics-of-big-data/2-3-8-algorithmically-confounded.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
