JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

現代定價:廣義線性模型與費率方案

當費率變數彼此重疊時,單因素表格會說謊——年輕駕駛人往往也開快車,表格便重複計了一次。廣義線性模型把它們一次全部解開,再把結果變成一份可逐項辯護、可向監管申報的費率方案。

為什麼單因素表格會悄悄重複計數

在上一篇裡,你用老派的方法搭出了一份分類費率方案:把每個費率變數輪流拿出來,按它的各個級別把損失經驗排開,再讀出一個相對度——年輕駕駛人是基準的 1.4 倍,跑車是基準的 1.3 倍,依此類推。這叫單因素分析,因為你一次只順著一個變數往下看。它直觀,而且數十年來就是這門手藝的全部。可它也有一個藏在明面上的毛病。

毛病在於費率變數彼此重疊。假設年輕駕駛人確實更容易出事——可年輕駕駛人偏偏又格外愛開快車。當你做年齡表時,你歸咎於年輕的那些高損失,有一部分其實是他們恰好擁有的那些車造成的;當你做車型表時,你歸咎於跑車的那些高損失,又有一部分是恰好擁有它們的年輕人造成的。每一張單因素表,都吸走了另一張表裡的一部分效應。對一個年輕駕駛人,按年齡收 1.4、再按車型收 1.3,你就把同一份底層的「壞」計了兩遍——這位客戶被多收了錢,而一個精明的對手會把他挖走。

這不過是費率變數之間的相關性,正是你在統計裡遇過的那個小妖怪,如今換了一身定價的戲服。單因素表看不見它,因為它從不把兩個變數放在一起看。你真正想要的,是在固定車型的前提下年齡的效應、以及在固定年齡的前提下車型的效應——也就是在其他變數都先說完話之後,每個變數真正的那份貢獻。

廣義線性模型一次解開所有變數

解決這個問題的工具,你早就見過了。在統計那一階,你認識了廣義線性模型:它就是迴歸那套各因素的加權求和,配上一個貼合保險資料的分布、和一個把每個因子變成乘數的對數連結。它用於定價時,有一項不動聲色的超能力。GLM 是同時估計所有變數的相對度的,於是每一個係數,自動就是「在模型已經把其他所有變數都考慮進去之後」那個變數的效應。重複計數隨之溶解;留下來的,是每個因素對風險真正的、邊際的那份貢獻。

具體來說,現代的做法是在同一份多變數資料上擬合兩個 GLM,呼應那個頻率—強度拆分:一個卜瓦松模型管理賠多久來一次,一個伽馬模型管它有多大。每個變數在每個模型裡都得到一份公平的相對度,與它的鄰居們彼此解開。把頻率預測乘以強度預測,你就為風險特徵的任意一種組合算出了一個純保費——也就是期望損失成本——而不只是那些你恰好觀測得很多的單元。

從模型到費率方案:損失成本乘數

GLM 給你的是純保費——也就是期望損失——可客戶帳單上的錢不只是損失。回想那個基本保險等式:保費還必須支付各項費用和一份公平的利潤。從模型給出的損失成本通向最終價格的那座橋,就是損失成本乘數(LCM)。它是一個數,把純保費向上放大,以覆蓋損失之外的一切;如此一來,搭模型的精算師和往上加費用的公司,便能各自獨立地工作。

這點算術不大,卻值得一看。假設固定費用佔保費的 10%,佣金和其他變動費用再佔 15%,公司還想要 5% 的承保利潤。那麼損失就必須塞進每一塊保費裡剩下的 70%——這 70% 就是允許損失率。損失成本乘數,無非就是 1 除以這個比例,1 ÷ 0.70 ≈ 1.43。每一塊錢的建模損失成本,都會變成大約 1.43 元的保費。

Permissible loss ratio = 1 - 0.10 - 0.15 - 0.05 = 0.70
Loss-cost multiplier   = 1 / 0.70           = 1.4286

RATING ALGORITHM (one policy)
  Base loss cost                       300
  x  Age relativity   (driver 22)    x 1.35
  x  Vehicle relativity (sports)     x 1.20
  x  Territory relativity (urban)    x 1.10
  = Modelled loss cost  300*1.35*1.20*1.10 = 534.6
  x  Loss-cost multiplier            x 1.4286
  = Indicated premium                = 763.7
  +  Policy fee                      + 25
  = Final premium                    = 788.7
費率演算法就是這條精確、可複現的序列:從一個基準出發,乘上這個風險的各項 GLM 相對度,用損失成本乘數向上放大,再加上固定費用。任何人重跑一遍都會得到同一個數——正是這份可複現性,讓一個價格得以申報。

這條序列就是費率演算法:那一組精確、有序的乘法、加法、封頂與下限,把一個基準費率變成客戶續保通知上的那個數字。GLM 提供各項相對度;費率演算法則是把它們組裝起來的方式,再加上 GLM 不去建模的那些部分——固定保單費、為更高保額準備的增額限額因子、免賠額折扣,以及「任何保費都不得低於某個底線」的規則。整份方案——每一個基準費率、每一個因子、每一條規則——就是保險公司向監管機構申報的東西。

公平、充足、且可解釋

一份更鋒利的費率方案,不會自動就是更好的方案。有三條標準伴隨著每一個費率,你也已經認識它們了:它必須充足(足以賠付並維持償付能力)、不過高(沒有敲竹槓)、且不構成不公平歧視。最微妙的是最後這一句——費率公平並不意味著對所有人收一樣的錢,而是意味著價格的差異必須建立在真實的、被允許的成本差異之上。一個 GLM,因為跑車確實更貴保而對它多收錢,是公平的;而若因為一個法律禁止的變數、或一個僅僅替代了被禁變數的變數而多收錢,就不公平。

正是在這裡,替代變數問題咬了上來。把種族這樣一個被禁的變數從模型裡刪掉,你未必就移除了它的影響——一個被允許的變數,比如郵區或職業,可能悄悄替它把這份影響帶了進來,只因這份資料生成於一個這些東西彼此相關的社會裡。一個模型,可以在數學上完全客觀,卻仍舊編入了它從資料中學來的某段歷史不公。這恰恰就是統計那一階裡那條資料品質與倫理的警告,如今繫上了真金白銀和活生生的人。一個變數究竟是公平的成因、還是不公平的替代,這個問題的歸屬是精算師,而不是演算法。

透明,是入場的門票。在大多數市場,保險公司必須透過費率與條款申報把方案遞上去,並向監管者為之辯護——而監管者可以駁回它。這正是為什麼可解釋的 GLM、而非準確度更高的黑箱,至今仍是申報費率的行業主力。監管者可以讀一張相對度表,並追問為什麼 25 歲以下的駕駛人要付 1.35;卻沒有人能用同樣的方式去盤問一個神經網路。你解釋不了的準確度,或者藏著一個不公平替代的準確度,是你用不了的準確度。

這場軍備競賽,以及精算師立於何處

這一切背後有一份競爭優勢,值得把它直說出來。如果你的對手用多變數定價、而你用單因素定價,他們就能識別出你正在向哪些客戶多收錢,並報給那些人更低的價;同時把那些你正在少收錢的客戶留給你。日子久了,你留下的都是壞風險、失去的都是好風險——這正是從最最開頭那一階就出現的逆向選擇漩渦,如今由「誰的模型更好」所驅動。細分,曾經是一種精修,如今已成了一項生存技能。

至此,「費率釐定與定價」這一階就收尾了。你從那個基本保險等式出發——保費 = 損失 + 費用 + 利潤——在通往總體指示的純保費法與損失率法這兩條路之間做了選擇,把原始歷史經過趨勢化與進展處理、變成對未來的一份公平看法,再按類別把費率拆開,而如今你已看到,現代定價如何把這些類別重新編織成一份連貫、多變數、可申報的方案。通回統計的那條線索如今已清晰無誤:費率釐定就是被職業判斷所治理的、應用化了的機率與迴歸。接下來,階梯將轉向再保險——一家保險公司在為自己的風險定完價之後,如何把其中一部分風險再傳遞出去。