週記(二十九)

2025-08-09

Table of Contents

大學最喜歡的幾門課

我偶爾會捫心自問:大學時期到底算不算充實快樂? 這個問題很難回答。 可能因為害怕答錯, 或者單純不喜歡把話說得太滿、太絕對(開玩笑的時候除外), 要是有人這樣問我,我八成是回答「還好」、「普通」。

不過如果請我試舉大學時期修過最喜歡、最回味無窮的幾門課, 我倒是可以列出來幾門(依修課順序排序):

中華民國憲法與政府

這門課是政治系(也就是我大一的主修)的大一必修課。 整體而言課程內容應該不至於跟法律系差很多, 不過政治系把這門課拆成兩學期, 其中陳淳文老師的這班(預設是公行組的學生)上學期教政府體制, 下學期教人權。

陳淳文老師是巴黎第二大學的法學博士, 專長是公法、法國公法和歐盟法, 同時也是中研院法律所的研究員。 他當然可以擔當教授憲法的重任。 這門課的教科書是他和吳庚(已故的前大法官)合著的《憲法理論與政府體制》。

撇除專業背景以外, 這門課的魅力在於陳老師的教學風格。 一般來說我不太喜歡翻轉教室, 因為這常常是老師偷懶、只想靠著多年前預錄的影片的藉口。 但是陳老師的翻轉教室確實經營得不錯。 我們每週要在家看一集陳老師在臺大開放式課程上的影片, 這是多年前的正課錄影。 課前他會在教師休息室看報紙, 大概是思考本週的時事如何與課程內容結合。 而課堂上他會開始談本週的時事(經常比較爭議🤣), 連結課程的內容, 並且拋出一些各種與當週課程知識相關的問題, 有時候則是提出一個論點(可能是他自己的觀點,也可能是一個他不認同的人的看法), 邀請學生提出對這個論點的看法。

老師很大方,似乎回答一個問題就能加學期成績一分。 我自己經驗中, 其他有「回答問題—加分」制度的課程, 常常搞得學生壓力很大, 都在問一些很無聊、瑣碎的問題(例如投影片上白紙黑字寫著的內容還要問), 而整個課程的節奏就常常被這些奇怪的問題打斷。 但是不知為何陳老師蠻能掌控課程節奏。 他很歡迎學生問問題, 不吝於說鼓勵學生發表意見的話, 但也會大方地引用法律上的觀點和學生辯論(很少有人能辯贏他)。 許多人認為陳淳文立場偏藍, 我聽過一個學姊說自己不喜歡陳的課, 因為他自稱很不認同陳的政治立場, 但又說陳講起來就很有道理, 很難反駁。 我想這也側面佐證這門課其中一個有趣的地方: 很多覺青很想在課堂上跟陳老師辯論,1 可是陳老師辯才無礙, 總能以一擋十, 又能維持有水準的討論, 完全不是網路上那些低素質的互嗆可以比擬的。

題外話, 陳老師另一個有趣的地方是還蠻真性情的。 他竟然可以在課堂上大方說出「綠色恐怖」和「NCC,髒兮兮」這類的詞彙 (當然這些詞彙的使用有其課堂的脈絡, 可能是討論一段時事之後, 他所下的註腳之類的)。 而且聽說, 他的導生聚也蠻有意思。 政治系給的導生費很少, 很多老師就請學生吃個披薩之類的就打發掉, 但他會邀請大家一起坐下來吃個豐盛的健康餐盒, 然後跟大家認真談談大學生活和未來規劃, 應該算是蠻用心的吧!

因果推論和勞動經濟學

我喜歡因果推論和勞動經濟學這兩門課的原因有點類似, 並不是老師真的很會教(?), 而是這兩門課對我來說像是開啟一扇新世界的大門。 這兩門課算是我第一次真正接觸到因果推論, 很多現在我思考問題的方式, 都源於這兩門課上看到的一些課程材料。

因果推論是我大三上修的數學系選修課, 授課老師是數學系的兼任教授黃彥棕。 老師的求學背景很有趣。 他從臺大醫學系畢業以後, 沒有選擇從醫, 最後在哈佛大學取得流行病學和生物統計學的雙博士。

這門課的教科書是 Causal Inference: What If。 這本書是 Miguel Hernán 和 James Robins 兩位哈佛流行病學和生物統計的教授合著的。2 流行病學家同時擁抱 Donald Rubin 的潛在結果模型(potential outcomes model)和 Pearl 對於因果圖發展的理論。 因此,這門課的內容同時介紹兩套因果推論的框架。 這是好事, 因為這兩套框架並不是互斥的, 而且各有所長。 當然 What If 書畢竟是流行病學家寫的, 介紹的方法多半是流行病學領域更常用的, 例如 g-formula、marginal structural model、g-estimation 等等, 這些經濟學家應該幾乎完全沒有聽過。 除了書中的內容, 老師也補充中介分析和工具變數的一些內容。 整體來說, 很幸運從流行病學的角度入門因果推論。


我大四修 KM 的勞動經濟學, 他當時剛回國, 這是他在臺大開的第一門課。 沒有教科書。 雖然叫做勞動經濟學, 但是當學期的內容更偏向介紹方法(例如因果推論或結構模型)。 我一直沒有真正搞懂後半學期的動態規劃(雖然都修過總體理論了😅), 不過光是前半學期介紹的東西, 我就覺得收穫蠻多。 例如 generalized Roy model、MTE framework、 或者 event study 迴歸的 negative weights 問題。

Double DiD

蔡老師除了可以說是一個高產的 applied microeconomist, 他也有一篇 applied econometrics 的論文,Difference-in-Differences with Multiple Events, 別稱是 “Double DiD”。

在此紀錄前幾天稍微閱讀這篇文章所產生的想法, 日後有空整理一下想法再與他討論。

他主要想解決的問題是, 如果我們有多個政策對於不同的單位在不同時間點逐步實施, 我們應該如何適當地估計其中一個政策的效果。

設定

為了簡單,我們假設有兩個政策。 並且,雖然蔡老師的文章處理的是多期的狀況, 但我決定只考慮兩期的情況, 這樣就已經足夠說明我的疑惑和介紹這篇文章的其中兩個結果, 而不失太多一般性。 具體而言, 我們觀察到一筆資料 \(\{Y_{i1}, Y_{i2}, D_i^1, D_i^2\}_{i=1}^N\), 從 \((Y_1, Y_2, D^1, D^2)\) 的無窮大母體中抽出。3 其中 \(Y_1\)\(Y_2\) 分別是第一期和第二期的結果變數, \(D^1\)\(D^2\) 是兩個政策的指標變數, 如果 \(D^1 = 1\) 表示政策一實施, 而 \(D^1 = 0\) 表示政策一沒有實施, 同理對於 \(D^2\)。 兩個政策都在第一期與第二期之間實施。

我們來定義潛在結果(potential outcomes)的符號。 令 \(Y_t(d^1, d^2)\) 是第 \(t\) 期時, 當我們有一個假想的干預設定 \(D^1 = d^1\)\(D^2 = d^2\) 時的潛在結果。 令 \(Y_t(d^1)\) 是第 \(t\) 期時, 當我們有一個假想的干預設定 \(D^1 = d^1\) 時的潛在結果。 我們假設

  1. Consistency 假設成立:\(Y_t = Y_t(D^1, D^2)\)\(Y_t = Y_t(D^1)\)

  2. 沒有預期效果(兩個政策都對第一期的結果沒有影響);

  3. Composition 假設成立:\(Y_t(d^1) = Y_t(d^1, D^2(d^1))\)

論點

這篇文章的第一個定理稱為 omitted event bias, 它企圖刻劃如果我們沒有適當地考慮另一個政策, 稱為干擾政策或干擾事件(confounding event), 那麼標準的 DiD 估計量(estimand)(例如 Callaway and Sant’Anna (2021)\[ \tau_{\text{DiD}} = \operatorname{E}[Y_2 - Y_1 \mid D^1 = 1] - \operatorname{E}[Y_2 - Y_1 \mid D^1 = 0] \] 會無法識別「第一個政策的效果」 \[ \tau^{1} = \operatorname{E}[Y_2(1, 0) - Y_1(0, 0) \mid D^1 = 1]. \] 這是第一個我覺得奇怪的地方。 因為,第一個政策的效果,也就是 DiD 估計量想識別的東西, 應該是 \[ \begin{align*} \tau^{1\prime} &= \operatorname{E}[Y_2(1) - Y_1(0) \mid D^1 = 1] \\ &= \operatorname{E}[Y_2(1, D^2(1)) - Y_1(0, D^2(0)) \mid D^1 = 1]. \end{align*} \] 才對。

給定標準的平行趨勢假設 \[ \begin{align*} &\mathrel{\phantom{=}} \operatorname{E}[Y_2(0) - Y_1(0) \mid D^1 = 1] \\ &= \operatorname{E}[Y_2(0) - Y_1(0) \mid D^1 = 0], \end{align*} \] 就算有另一個干擾事件, DiD 估計量仍然可以識別 \(\tau^{1\prime}\)。 也因此第二個奇怪的地方(也可能我看不仔細)是, 在假設了同質的處理效果(homogeneous treatment effect)之後, 文章證明了定理一。 但似乎沒有明確說明, 到底定理一使用了什麼樣版本的平行趨勢假設?

這篇文章發明了一個類似於以下的平行趨勢假設: 對於任意 \(d^1\)\(d^2\),我們有 \[ \begin{align*} &\mathrel{\phantom{=}} \operatorname{E}[Y_2(0, 0) - Y_1(0, 0) \mid D^1 = d^1, D^2 = d^2] \\ &= \operatorname{E}[Y_2(0, 0) - Y_1(0, 0) \mid D^1 = 0, D^2 = 0], \end{align*} \qquad{(1)}\] 想當然爾, 給定這個假設, 我們可以識別 \[ \begin{align*} \delta^{1, 1 \mid 1, 1} &= \operatorname{E}[Y_2(1, 1) - Y_1(0, 0) \mid D^1 = 1, D^2 = 1], \\ \delta^{1, 0 \mid 1, 0} &= \operatorname{E}[Y_2(1, 0) - Y_1(0, 0) \mid D^1 = 1, D^2 = 0], \\ \delta^{0, 1 \mid 0, 1} &= \operatorname{E}[Y_2(0, 1) - Y_1(0, 0) \mid D^1 = 0, D^2 = 1]. \end{align*} \] 相對地, 給定這個假設, 如果我們單純考慮 DiD 估計量, 問它能不能識別 \(\tau^{1\prime}\), 那我猜確實可以導出類似 omitted event bias 的結果, 但這並不令人意外, 因為標準的平行趨勢假設與本文所使用的平行趨勢假設幾乎是獨立的, 沒有任何蘊含關係,沒有誰強誰弱。 打個比方, 這就像是我們拿著 \(2 \times 2\) 因子實驗(factorial experiment)的資料, 我們當然不可能透過比較某個因子的不同水平的樣本的平均值來識別該因子的邊際處理效果。 因為本質上,因子實驗所執行的「聯合干預」(joint intervention) 就產生與一個普通的 A/B test 的「單一干預」(single intervention)不同因果結構的資料。

這篇文章要回答的另一個問題, 以婚育的例子,白話翻譯大概就是, 假如我們有一組(cohort)樣本, 他們在 2010 年結婚,在 2015 年生小孩, 那請問假如他們在 2010 年結婚但從未有小孩的話, 結婚對他們影響如何?

讓我們切換回兩期模型的問題。 在該文的平行趨勢假設 Equation 1 下, 我們可以識別 \(\delta^{1, 1 \mid 1, 1}\), 但我們無法識別 \[ \delta^{1, 0 \mid 1, 1} = \operatorname{E}[Y_2(1, 0) - Y_1(0, 0) \mid D^1 = 1, D^2 = 1]. \] 這是因為 Equation 1 假設了 \((D^1, D^2) = (1, 1)\) 這群人, 如果沒有接受任何政策的反事實趨勢, 但並沒有假設這群人如果接受政策一,而沒有接受政策二, 會有什麼樣的反事實趨勢。

換言之, 在很多應用(如婚育)中, 我們可能在乎如果不是只接受政策一, 而是接受兩個政策, 那會有怎樣的效果(這同樣是一個反事實問題)。 有人可能單純地覺得 \(\delta^{1, 1}\) 既然衡量接受兩個政策的效果, 而 \(\delta^{1, 0 \mid 1, 0}\) 衡量接受政策一的效果, 那 \(\delta^{1, 1 \mid 1, 1} - \delta^{1, 0 \mid 1, 0}\) 不就可以用來衡量剛剛提到的反事實問題嗎? 事實不然,這兩個參數是兩群不同的人的處理效果: \[ \begin{align*} \delta^{1, 1 \mid 1, 1} - \delta^{1, 0 \mid 1, 0} &= \delta^{1, 1 \mid 1, 1} - \delta^{1, 0 \mid 1, 1} + \delta^{1, 0 \mid 1, 1} - \delta^{1, 0 \mid 1, 0} \\ &= \operatorname{E}[Y_2(1, 1) - Y_1(1, 0) \mid D^1 = 1, D^2 = 1] + \underbrace{\delta^{1, 0 \mid 1, 1} - \delta^{1, 0 \mid 1, 0}}_{\text{選擇偏誤}}. \end{align*} \] 其中,第一項是 \((D^1, D^2) = (1, 1)\) 這群人如果從接受兩個政策改為只接受政策一的處理效果, 第二項則是「選擇偏誤」, 因為 \((D^1, D^2) = (1, 1)\)\((D^1, D^2) = (1, 0)\) 本身就是兩群不同的人。

數學上處理選擇偏誤最簡單的方式就是下更強的平行趨勢假設。 這邊倒是有很多不同的做法, 如 Difference-in-Differences with a Continuous Treatment 討論了一些。 不過,我感覺都沒有很理想。 所謂更強的平行趨勢假設, 它所對應到的因果模型, 很可能只能適用在很侷限的情況之下。

以蔡老師的文章而言,因為處理的是多期的情況, 而且不同的樣本可能在不同的時間點接受政策, 所以文章對處理效果下了一個平行趨勢假設, 並讓兩個政策對於結果的影響是可加的(additive), 換言之直接排除掉政策的交互作用, 讓只有接受其中一個政策的效果, 可以作為已經接受兩個政策的效果的對照組。 在數學上這是一個很直觀的操作, 但在應用上,特別是排除掉政策的交互作用, 是一個非常強的假設。 設想婚育的例子, 結婚生子對於薪資的影響, 會等於結婚但無子對於薪資的影響加上未婚生子的影響嗎? 我很難想像這是一個合理的假設, 不過到底應該如何適當地處理, 我也還沒有一個很好的想法。


  1. 有點猶豫要不要使用「覺青」這個意義複雜的詞, 畢竟雖然很多人說陳老師屬於保守派, 但整體而言我覺得放在某種光譜之下, 他很難算成保守派吧。↩︎

  2. 這兩人都非常有名。 其中 Robins 可以說是流行病學領域做因果推論的先驅, 他也很有趣,他原本也是一個醫師, 只有在耶魯大學學過一點應用統計學, 並沒有博士學位, 自學成才, 發明許多流行病學領域, 甚至是各個領域都流行的方法。 比如說他在 80 年代發明了 G-formula,用來估計時變處理的處理效果的方法, 在 90 年代其中一篇很重要的 JASA 文章,從 influence function 推出 doubly robust estimator,都對因果推論有很大的貢獻。↩︎

  3. 為了方便,有時候我會省略下標 \(i\)↩︎