---
# System prepended metadata

title: '補充：sample '
tags: [Probability, ML]

---

# 補充：sample 

- 本節簡單介紹常用到的 sample mean, sample variance, sample standard deviation 等名詞的定義。

---
## 定義
### sample vs population

其實就像我們平常在用的意思，下面這個圖就很清楚地講出這兩個名詞的關聯：

![image](https://hackmd.io/_uploads/ryxKn7ur0.png)


<font color = "snake">population</font>：我們想要得到某些結論的整個對象群體。
<font color = "snake">sample</font>：從 population 裡面我們取出某個群體，實際搜集它們的 data 來分析。
> sample 的大小一定小於 population。

- 雖然這個圖這樣畫，但我們的 population 當然不一定是指人。

### sample 及其 distribution 

假設現在我們重複做一個 experiment $n$ 次，得到 $n$ 個 random variables 的 observed values，如果用：

\begin{equation}
x_1, x_2,...,x_n
\end{equation}

來表示這 $n$ 個值，那麼它們的集合 ==$\{x_1, x_2,...,x_n\}$== 就是 <font color = "snake">sample</font>。
> - 因為我們的 experiment 即使做了 $n$ 次，但也不一定會包含所有可能的 outcomes（不一定是整個 sample space），所以我們這 $n$ 次 experiment 結果作為所有 outcomes 的一個 subset，當然就是 sample 了。
> - 當然，這個 set 裡面有可能會有某個 $x_i = x_j \quad i\not=j$，或是有多個 $x_i$ 有相同的值，但是這件事可以先不用管。

關於 sample $\{x_1, x_2,...,x_n\}$ 以及其中的 $x_i$ 的意義，下方獨立出一小段再進一步說明： 

---
#### data points vs random variables

關於 $x_1, x_2,...,x_n$ 到底指的是什麼，一開始我一直有很多疑惑：

> 到底它們每個 $x_i$ 是指單一一個 data points，還是一個 data points 的 set，常常我們會在書裡談 sample 時看到「從一個 population draw $n$ 個 iid random variables $x_1, x_2,...,x_n$」，這個時候又變成每個 $x_i$ 是一個 random variable，可是 random variable 不是一個 function 嗎？

這些問題困擾我很久，最後整理出來的結論是，這些 $x_i$ 所指涉的東西根據它所身處的 context 而定：

- 當我們在討論一個 ++finite population++ 時，$x_1, x_2,...,x_n$ 指的是這個 population 裡所有的 <font color = "green">data points</font>。
> 每個 $x_i$ 是一個 data point。
- 當我們在討論++從一個 population 中 draw 一個 sample++ 時，$x_1, x_2,...,x_n$ 指的是 <font color = "green">random variable $X$ 的 observed values</font>。
> 每個 $x_i$ 是 random variable $X$ 其中一次 experiment 的 observed value。
>> 當我們有多個 random variables 時，有時候課本的表示方式會是 $x_i$ 是 random variable $X_i$ 的 observed value。 

舉個例子：

假設我們想要知道一個城市裡的男性的平均身高，此時我們的 population 就是這個城市裡的所有男性，但是因為我們沒辦法去一一調查每一個男性的身高，所以我們就取這個城市裡的某部分男性身高作為 sample。

假設整個 population 的 distribution 是 normal distributed with mean $\mu = 175$, variance $\sigma^2 = 25$
> i.e. population distribution $\sim N(175,25)$

我們從 population（這個城市中的所有男性）draw 一個五位男性的 sample，這個 sample $X = \{x_i\}_{i=1}^5$

\begin{equation}
x_1 = 192, x_2 = 161, x_3 = 180, x_4 = 169, x_5 = 176
\end{equation}

其中每個 $x_i$ 為第 $i$ 位男性的身高。

因為我們的 sample 只有五個值，所以它不一定會接近 population 的 distribution $N(175,25)$，但是當我們的 sample 夠大時（例如取一萬個 $x_i$ 時），根據 law of large numebrs，sample mean 就會接近 population mean，也就是我們如果對 sample 裡的一千個值取平均，這一千個人的平均身高就會接近 $175$。

---

回到原本的討論，在得到這些 $x_i$ 以後，我們想要對我們得到的 data 賦予一個 sample 的 probability distribution，所以我們++給每個 $x_i$ 一個 weight $\frac{1}{n}$++，這樣我們就能有一個 distribution，我們把它叫做 <font color = "snake">empirical distribution</font>。
> - 為什麼要乘上 $\frac{1}{n}$ 才能有 distribution，其實意義是讓我們的這 $n$ 個值，發生的機率都是 $\frac{1}{n}$，這樣一來所有的 $x_i$ 的 probablity 皆是正的，且 probability 加總會是 $1$，才符合 probability distribution 的定義。
> - empirical distribution 的意思其實只是 observed data 的 distribution，因為在這裡 $\{x_1, x_2,...,x_n\}$ 是我們的 observed data，所以它們的 distribution 也就稱作 empirical distribution。

因為代表 sample distribution 的 empirical distribution 也是一種 distribution，所以我們也可以去計算它的 mean, variance, standard deviation⋯⋯。

### sample mean

因為我們的 observations $\{x_1, x_2,...,x_n\}$ 顯然不是 continuous，所以在 discrete 的情況下，根據定義 expected value 為：

\begin{equation}
E[X] = \sum_ix_iP(x_i)
\end{equation}

因此，emperical distribution 的 mean 為：

\begin{equation}
\sum_{i=1}^nx_i\frac{1}{n} = \frac{1}{n}\sum_{i=1}^nx_i
\end{equation}

這個值也就是 $x_1, x_2,...,x_n$ 的 arithmetic mean（算術平均數），我們用 ==$\bar{x}$== 表示，並稱為 <font color = "snake">sample mean</font>（其實就是 sample $x_1, x_2,...,x_n$ 的平均）重新把定義寫一次：

:::info
\begin{equation}
\bar{x} = \frac{1}{n}\sum_{i=1}^nx_i
\end{equation}
:::

:::warning
當 population 的 mean $\mu$ 未知時，sample mean $\bar{x}$ 也可以++被視為 $\mu$ 的 estimate++。
:::
> 意思也就是我們透過 sample 的平均值來猜測 sample 背後的整個 distribution 的平均值。

#### expected value of sample mean

如果 $x_1, x_2,...,x_n$ 為 iid random variables，其中每個 $x_i$ 具相同的 distribution（從同個 population 取 sample），expected value 皆同 population mean $= \mu$。

由上面的定義我們已經知道這些 random variables 組成的 sample 有著 sample mean $\bar{x} = \frac{1}{n}\sum_{i=1}^nx_i$，那麼 sample mean 的 expected value $E[\bar{x}]$ 是什麼呢？

![image](https://hackmd.io/_uploads/rkCVLdfUA.png)

實際算算看會發現 sample mean 的 expected value 會等同背後的 population mean $\mu$。
> 也就是說：
> 平均來說 sample 的平均值會等同 population 的平均值。

### sample variance

根據 variance 的定義：

\begin{equation}
Var(X) = E[(X-\mu)^2]
\end{equation}

再用像上面定義 sample mean 的方式，empirical distribution 的 variance 為：

\begin{equation}
\begin{split}
v &= \sum_{i=1}^n(x_i - \bar{x})^2(\frac{1}{n}) \\
&= \frac{1}{n}\sum_{i=1}^n(x_i - \bar{x})^2
\end{split}
\end{equation}

因為 $Var(X) = E[X^2] - (E[X])^2$，所以我們也可以寫成：

\begin{equation}
\begin{split}
v &= \sum_{i=1}^nx_i^2(\frac{1}{n}) - \bar{x}^2 \\
&= \frac{1}{n}\sum_{i=1}^nx_i^2 - \bar{x}^2
\end{split}
\end{equation}

但是我們並不會把這樣的 $v$ 叫做 sample variance，而是去另外定義一個 ==$s^2$== 作為 <font color = "snake">sample variance</font>：

\begin{equation}
\begin{split}
s^2 &= (\frac{n}{n-1})v \\
&= (\frac{n}{n-1})\frac{1}{n}\sum_{i=1}^n(x_i - \bar{x})^2 \\
&= (\frac{1}{n-1})\sum_{i=1}^n(x_i - \bar{x})^2 
\end{split}
\end{equation}

得到 sample variance 的定義：

:::info
\begin{equation}
s^2 = (\frac{1}{n-1})\sum_{i=1}^n(x_i - \bar{x})^2
\end{equation}
:::

為什麼要把 sample variance 的分母訂為 $n-1$ 而不是 $n$，其實是因為作為去估計未知的 $\sigma^2$ 的 estimate，$s^2$ （分母為 $n-1$）會比 $v$ （分母為 $n$）要來得好。
> 這個變動其實是去修正當我們用 $n$ 作為分母時會產生的 bias，這件事也叫做 Bessel’s correction。

$\rightarrow$ 在 $s^2$ 的 $\sum_{i=1}^n(x_i - \bar{x})^2$ 部分，我們可以展開，得到：

\begin{equation}
\sum_{i=1}^n(x_i - \bar{x})^2 = \sum_{i=1}^nx_i^2 - \frac{(\sum_{i=1}^nx_i)^2}{n}
\end{equation}

原因也很簡單，就是暴力展開如下：

![image](https://hackmd.io/_uploads/HkPT8VuBR.png)

所以我們的另一種 $s^2$ 的定義可以寫成：

:::info
\begin{equation}
s^2 = \frac{\sum_{i=1}^nx_i^2 - \frac{1}{n}(\sum_{i=1}^nx_i)^2}{n-1}
\end{equation}
:::

做完展開以後，等號右邊通常會比較好算，而且因為 $\bar{x}$ 通常會有好幾位小數，所以如果我們用等號左邊的算法，$x_i-\bar{x}$ 會被 round，導致誤差產生。

所以計算上用右邊比較適合，不過如果是用電腦算就不用管這部分了。


### sample standard deviation

一般 standard deviation 的定義，就是 variance 開根號，那麼 <font color = "snake">sample standard deviation</font> 也一樣，就是 $\sqrt{s^2} = s \ge 0$。

sample standard deviation 直觀的意義是：

:::warning
我們的 data 以 sample mean 為基準有多分散
:::

$\rightarrow$ 我們現在還沒辦法很清楚的掌握 standard deviation $s$，但是我們可以先大略地把它想成「++$x_1, x_2,...,x_n$ 離 sample mean $\bar{x}$ 的平均距離++」。雖然這樣的說法不完全正確，因為我們的 sample standard deviation 通常會大一點，也就是：

\begin{equation}
s \ge \frac{1}{n}\sum_{i=1}^n|x_i - \bar{x}|
\end{equation}

## 例子

![image](https://hackmd.io/_uploads/Bymta4OB0.png)


## 特性

sample mean 的 variance 很常用的等式：

:::success
\begin{equation}
Var(\bar{X}) = E[(\bar{X} - \mu)^2] = \frac{\sigma^2}{n}
\end{equation}
:::

證明如下：

![image](https://hackmd.io/_uploads/rkH2KD-I0.png)


# 參考資料

- Hogg,Tanis,Zimmerman, Probability and Statistical Inference, 9th ed(2015), p.227-229
- Sheldon Ross, A first course in Probability, 9th ed, p.306
- Scribbr: [Population vs. Sample | Definitions, Differences & Examples](https://www.scribbr.com/methodology/population-vs-sample/)