簡介:構建廣義線性模型 (GLM)

在我們之前學習簡單和多元線性回歸時,我們假設反應變量服從正態分佈 (Normal distribution),且平均反應值是解釋變量的直接線性組合。然而,在保險精算的現實世界中,數據很少會如此「聽話」。我們經常要處理索償次數(不能為負數)或索償概率(必須介乎 0 與 1 之間)。

這正是廣義線性模型 (GLM) 大顯身手的地方!在本章中,我們將學習 GLM 的「引擎」:線性預測算子 (linear predictor),以及連接它與數據的「橋樑」:連結函數 (link function)。我們還會探討如何處理不同類型的數據,例如類別(因素/因子)以及變量之間互相影響的情況。如果起初覺得這些概念很抽象,請不用擔心;只要看清了它的結構,一切就像拼圖一樣自然銜接起來!

1. 線性預測算子 \(\eta\)

線性預測算子通常用希臘字母 eta \(\eta\) 表示,是模型中捕捉解釋變量影響的部分。它是未知參數 (\(\beta\)) 與觀測變量的線性組合。

對於一組解釋變量 \(x_1, x_2, ..., x_k\),第 \(i\) 個觀測值的線性預測算子寫作:

\(\eta_i = \beta_0 + \beta_1 x_{i1} + \beta_2 x_{i2} + ... + \beta_k x_{ik}\)

線性預測算子的形式

線性預測算子非常靈活。根據問題的不同,它可以有幾種形式:

  • 簡單線性模型: \(\eta = \beta_0 + \beta_1 x\) (直線關係)。
  • 多項式模型: \(\eta = \beta_0 + \beta_1 x + \beta_2 x^2\) (用於關係呈曲線的情況,但在參數 \(\beta\) 方面它仍是「線性」的)。
  • 包含因素的模型: 如果我們觀察不同的組別(例如「吸煙者」與「非吸煙者」),預測算子會根據觀測值所屬的組別而改變。

重點歸納: 儘管變量與反應值之間的關係可能是曲線(如多項式),但該模型仍被稱為「線性」,因為它是參數 (\(\beta_i\)) 的線性總和。

2. 連結函數 \(g(\mu)\)

在標準線性模型中,我們假設平均反應值 \(\mu = E[Y]\) 等於線性預測算子 \(\eta\)。在 GLM 中,我們使用連結函數 \(g(\cdot)\) 將它們連接起來:

\(g(\mu_i) = \eta_i\)

為什麼要這樣做?想像你在預測汽車保險索償的概率。概率必須介乎 0 和 1 之間。如果我們使用簡單線性模型,預測結果可能是 1.5 或 -0.2,這是不可能的!連結函數將均值的範圍(例如 0 到 1)映射到線性預測算子的範圍(負無窮大到正無窮大)。

標準連結函數 (The Canonical Link Function)

指數族 (exponential family) 中的每種分佈都有一個源於其數學結構的「自然」連結函數,稱為標準連結函數。雖然你也可以使用其他連結函數,但在 CS1 考試中,以下這些非常常見:

正態分佈 (Normal Distribution): 恆等連結 (Identity link) \(\implies g(\mu) = \mu\)
泊松分佈 (Poisson Distribution): 對數連結 (Log link) \(\implies g(\mu) = \ln(\mu)\)
二項分佈 (Binomial Distribution): Logit 連結 (Logit link) \(\implies g(\mu) = \ln(\frac{\mu}{1-\mu})\)
伽瑪 / 指數分佈 (Gamma / Exponential Distributions): 倒數連結 (Reciprocal link) \(\implies g(\mu) = \frac{1}{\mu}\)

註:有關指數族的更多資訊,請參閱「指數族、方差函數與尺度參數」章節。

3. 變量與因素 (Variables vs. Factors)

在精算建模中,我們使用兩種主要的解釋輸入:

連續變量 (Continuous Variables)

這些是可以取某個範圍內任何數值的數值測量。
例子: 保單持有人的年齡、人壽保單的投保額或汽車的引擎容量。

因素 / 類別變量 (Factors / Categorical Values)

因素代表定性的分組。它們具有離散的「水平」(levels)。
例子: 性別(男、女)、地區(北、南、東、西)或燃料類型(汽油、柴油、電力)。

「基準水平」的小撇步: 當我們在 GLM 中加入一個有 \(k\) 個水平的因素時,通常不會創建 \(k\) 個參數。相反,我們會選擇一個水平作為基準水平 (base level / reference level),並創建 \(k-1\) 個虛擬變量 (dummy variables)。其他水平的參數則代表該水平與基準水平之間的差異

常見錯誤: 忘記排除基準水平的參數!如果你有 3 個地區並包含 3 個參數外加一個截距,模型便會出錯(這被稱為「完全共線性」perfect collinearity)。如果存在截距 \(\beta_0\),對於有 \(k\) 個水平的因素,務必只使用 \(k-1\) 個參數。

4. 交互作用項 (Interaction Terms)

有時候,一個變量的影響取決於另一個變量的水平。這被稱為交互作用

現實例子: 假設我們正在為醫療保險索償風險建模。「年齡」和「吸煙狀況」都很重要。然而,吸煙帶來的額外風險,對於 60 歲的人可能比對於 20 歲的人高得多。這種「額外」的綜合效應就是交互作用。

在數學上,我們通過在線性預測算子中將兩個變量相乘來表示交互作用:

\(\eta = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \beta_{12}(x_1 \cdot x_2)\)

其中 \((x_1 \cdot x_2)\) 就是交互作用項。

快速複習:GLM 的組成部分

1. 隨機部分 (Random Component): 反應變量 \(Y\) 的分佈(例如泊松分佈)。
2. 系統部分 (Systematic Component): 線性預測算子 \(\eta = \sum \beta_i x_i\)。
3. 連結函數 (Link Function): 連接兩者的函數 \(g(\mu) = \eta\)。

5. 按部就班:構建預測算子

當你在考試中被要求寫出線性預測算子的形式時,請遵循以下步驟:

  1. 確定截距: 通常是 \(\beta_0\)。
  2. 加入連續變量: 為每個變量加入如 \(\beta_i x_i\) 的項。
  3. 加入因素: 確定水平數量 \(k\),並加入 \(k-1\) 個項。
  4. 檢查交互作用: 如果題目提到 \(X\) 的影響隨 \(Y\) 而變化,請加入乘積項。

例子: 如果我們有一個包含截距、一個連續變量(年齡,\(x_1\))和一個因素(性別,水平為 \(L_1 = \) 男和 \(L_2 = \) 女)的索償模型 (\(\mu\)),並使用對數連結:

\(\ln(\mu) = \beta_0 + \beta_1 x_1 + \beta_2 x_{Gender}\)

其中如果為女性,\(x_{Gender} = 1\);如果為男性,則為 \(0\)(使男性成為基準水平)。

總結表:連結函數與預測算子

概念: 線性預測算子 (\(\eta\))
定義: 模型的「數學公式」端。
精算應用: 結合年齡、地區和保單類型來估算風險。

概念: 連結函數 (\(g\))
定義: 通往平均反應值的「橋樑」。
精算應用: 確保索償次數不為負(對數連結)或概率介乎 0 與 1 之間(Logit 連結)。

概念: 因素與交互作用
定義: 處理類別和綜合效應。
精算應用: 按地區或車型區分保費。

在接下來的章節中,我們將學習如何使用最大似然估計 (maximum likelihood) 來估算這些 \(\beta\) 參數,以及如何測試我們的模型是否真正擬合數據。