# 3.2.1 似然函数

## 生成过程与反向推断

在现实生活中，我们会观察到各种各样的现象，而现象的背后又包含着各种各样的原因。比如，突然下起了大雨，所以行人会被淋湿，而如果看到一个浑身湿透的人，我们也会推测外面可能下雨了。上述这个例子包含了心理学研究中的两种常见思路，一种是，我们可以提出假设，并认为在这个假设下应该会产生怎样的实验数据。另一种是，在实验过后，我们获得了数据，基于这些数据，我们会思考这些数据更支持哪一种假设。由原因生成观察数据，这被称为**生成过程(Generative Process)**;  由观察数据反推原因，这被称为**反向推断(Reverse Inference)** , 接下来我们将详细介绍这两个过程以及其中涉及到的关键概念。

## 条件概率分布

首先，我们来了解生成过程。我们还是以下雨为例，并且把观察数据定为家门口是否有水，针对这类观察数据，可能获得的结果有两种：有水与无水。

并且，导致家门口有水产生的原因除了下雨，还有洒水车经过等等。那么，我们可以用条件概率的形式将原因和观察数据表示出来。

我们用符号对原因和观察数据进行表示：

* $$O$$ (observation)&#x20;

&#x20;       1\. $$O\_1$$: 家门口有水         2. $$O\_2$$: 家门口没有水&#x20;

* $$C$$ (cause)&#x20;

&#x20;        1\.  $$C\_1$$ :下雨                    2. $$C\_2$$ : 洒水车经过                    3. $$C\_3$$ : 晴天

把这些原因和数据详细地列表，表A中的每一行都代表一种**条件概率分布**

<figure><img src="/files/UCBL8m2TNv2pwByAKpvo" alt=""><figcaption></figcaption></figure>

> 🕵️‍♀️这些条件概率(即每个单元格内的数字)是怎么得来的？
>
> 我们以条件概率分布 $$p (O|C\_1)$$ 为例，其他的条件概率分布，如接下来的$$p (O|C\_2)、   p (O|C\_3)$$ 都可以以此类推
>
> 假设，在过去的无数日子里，我分别记录了下雨的天数$$N$$和下雨之后家门口有水的天数$$f$$，则有：
>
> * $$p(O\_1|C\_1) = f/N$$
> * $$p(O\_2|C\_1) = 1 - f/N$$

根据这个表，我们可以总结条件概率分布的一个重要性质:&#x20;

以第一行为例，在已知下雨的情况下，观察到家门口有水的概率是0.8，观察到家门口没水的概率是0.2

&#x20;                                       $$p(O\_1|C\_1) + p(O\_2|C\_1) = 1$$  **这两者相加的和一定为 1**

## 似然函数

### 离散分布的似然函数

如果此时我们观察到家门口有水，那么最有可能发生的事情是发生了什么？我们会回答：下雨。为什么呢，锁定第一列，我们比较不同原因下出现有水的概率

&#x20;                                       $$p(O\_1|C\_1) =0.8 > p(O\_1|C\_2) =0.6 > p(O\_1|C\_3) =0.2$$

在上述这个过程中，我们由观察数据对背后的原因进行推断，即反向推断。表格中的一列包含了一种数据在不同原因下出现的条件概率，我们将这一系列条件概率组合称为**似然函数**。

> 这也正是似然函数告诉我们的，它允许我们去比较当前数据在不同假设下发生的相对可能性。而这个朴素的直觉背后就是接下来即将要介绍的 **极大似然估计法。**

同样地，我们将第一列的所有值相加，$$p(O\_1|C\_1) + p(O\_1|C\_2) + p(O\_1|C\_3) = 1.6$$，这三个条件概率相加的总和并不一定为 1。

### 条件概率分布与似然函数对比

现在，我们对条件概率分布与似然函数做一个对比：

在条件概率分布$$p(O|C)$$中，$$C$$的取值是固定的，比如$$C = C\_1$$，而$$O$$则是变化的，如果取遍所有的$$O$$，必然有：

$$
\int p(O|C)dO = 1
$$

<figure><img src="/files/leOiPGaWC1jXJAZrROzr" alt=""><figcaption></figcaption></figure>

而似然函数则是一个函数，并不是一种概率分布，在似然函数$$f(C) =p(O|C)$$中，$$O$$的取值是固定的，比如$$O = O\_1$$，$$C$$则是变化的，如果取遍所有的$$C$$，似然函数可以表示为：

$$
\int p(O|C)dC  \其结果并不一定等于1.
$$

<figure><img src="/files/9OaQBIloF8sq4T4X3m8K" alt=""><figcaption></figcaption></figure>

### 连续分布下的似然函数

刚刚我们介绍了离散分布下的似然函数，更进一步的，我们来看看连续分布下的似然函数该如何表示。

假定我们有一系列的数据$$D = \[d\_1,d\_2,...d\_i]$$，且这些数据均来自于正态分布$$N(\mu , \sigma^2)$$  ，我们定义均值$$\mu$$ 和标准差 $$\sigma$$都是未知参数，即我们获得了这些数据，但是我们不知道这些数据来自于怎样的分布。

<figure><img src="/files/yCQyTSknXqkQJc4RNmT9" alt=""><figcaption></figcaption></figure>

我们以其中一个数据点$$d\_i$$为例，并将$$(\mu, \sigma)$$定义为二维参数$$\theta$$，那么在正态分布下 取到该数据点 $$d\_i$$的可能性可以这样表示：

$$
f(\mu,\sigma ) = p(d\_i|\mu,\sigma) =  p(d\_i|\theta)  =  \frac{1}{\sqrt{2\pi\sigma^2}}exp(-\frac{(d\_i-u)^2}{2\sigma^2})
$$

假定不同的数据彼此独立，则在正态分布中取得这一连串数据的可能性可以写为（进行连乘）：

$$
p(d\_1,d\_2,...d\_i) = p(d\_1|\theta) \* p(d\_2|\theta)\*...p(d\_i|\theta) = \prod\limits\_{i=1}^{n}p(d\_i|\theta)
$$

注意，在上面这个式子中，$$d\_i$$是已知的数据，$$\theta$$则是需要推断的

我们将$$L(\theta) = \prod\limits\_{i=1}^{n}p(d\_i|\theta)$$ 定义为基于数据$$D = \[d\_1,d\_2,...d\_i]$$的似然函数


---

# 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://ruyuanzhang.gitbook.io/compmodcogpsy/di-san-zhang-gailtui-duan-he-bei-ye-si-li-lun/3.2-gailtui-duan/3.2.1-si-ran-han-shu.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.
