第二章 文獻回顧與探討
第二節 Cluster-while-estimate 演算法
國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
迴歸也被降低,而解所在的位置使變數被挑選,無影響力的變數係數降為零。
Lasso 迴歸需解的損失函數最小化問題為將函式(2)中的損失函數加上L1正規化:
𝑚𝑖𝑛𝛽𝑅𝑆𝑆(𝛽) = |𝑌 − (𝜇1𝑛 + 𝑋𝛽)|2+ 𝜆1|𝛽| (4) 𝜆1 >= 0為懲罰參數,|𝛽|為針對𝛽的 L1正規化,可為問題(4)提供稀疏解法。
四、Elastic net
Elastic net 由 Zou and Hastie (2005)提出,建議可在處理高維度資料時使用 Elastic net,
避免Lasso 迴歸模型在具高共線性自變數時不穩定的問題(Zou and Hastie, 2005)。
假設𝛼 = 𝜆1
𝜆1+𝜆2,Elastic net 的最小化損失函數問題為將函式(2)結合 L1 正規化和 L2 正規化:
𝑚𝑖𝑛𝛽𝑅𝑆𝑆(𝛽) = |𝑌 − (𝜇1𝑛 + 𝑋𝛽)|2+ 𝛼|𝛽| + (1 − 𝛼)|𝛽|2 (5) 𝛼|𝛽| + (1 − 𝛼)|𝛽|2為Elastic net 對𝛽的懲罰,當𝛼為 1,Elastic net 會簡化為 Lasso 迴 歸,當𝛼為 0,Elastic net 會簡化為 Ridge 迴歸,Elastic net 相當於是綜合 Lasso 迴歸與 Ridge 迴歸的解決方案,L1正規化的部分幫助Elastic net 做特徵挑選,L2 的部分可讓自 變數分組篩選,並在隨機抽樣的前提下穩定解決路徑(Ogutu et al., 2012)。將自變數分組 表示可讓高共線性的變數對依變數有影響力時同時存在於模型,而不會像Lasso 迴歸傾 向只保留其中之一。
以上三種正規化方法皆可達到壓縮迴歸模型係數的效果,但其中只有Lasso 迴歸以 及Elastic net 有將模型變數縮減的能力,但若以本論文所側重的提升迴歸分析高維度資 料預測表現及模型解釋性這兩方面來看,Lasso 迴歸挑選變數並只保留一個高共線性變 數的特性使其成為最佳選擇,藉由盡可能拋棄模型內對自變數無影響力的變數使解釋性 及預測能力提高,雖其在面對高共線性資料會使模型結果不穩定,但保留所有高共線性 自變數既無法增加模型預測表現,也會使模型變得更為複雜。
第二節 Cluster-while-estimate 演算法
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
8
在上一章本論文已提及分群後再各群訓練模型的兩階段方法,但Park et al. (2017)認 為在進行迴歸前很難評斷分群的預測表現,更好的解決方案是同時進行分群及迴歸,這 可以透過迴歸分群(regression clustering)實現。針對典型迴歸分群問題的啟發式演算法包 含Späth (1979)發表的演算法,初始分出數群後藉由觀察每次交換兩群內的各一個樣本,
若使誤差下降則保留變動,DeSarbo et al. (1989)則是利用模擬退火演算法避免陷入區域 最佳解。
而後Baardma et al. (2017)所提出的 Cluster-while-estimate 演算法也是為解決類似問 題而發表,並於在其論文內預測新商品上市後的銷量問題上有顯著的提升預測準確率。
首先銷量產生公式如下,假設有n 個歷史新商品資料樣本,樣本分為 l 群:
𝑦𝑖 = ∑𝑙𝑘=1𝑧𝑖𝑘𝑓𝑘(𝑥𝑖) + 𝑒𝑖, 𝑖 = 1, … , 𝑛 (6) 𝑧𝑖𝑘 ∈ {0, 1},表示樣本 i 屬於群 k,𝑓𝑘(𝑥𝑖)為群 k 的銷量預測模型,自變數為𝑥𝑖,𝑒𝑖則 是樣本i 平均數為 0 的隨機雜訊。
由於銷量預測可能是自變數的非線性函數,因此𝑓𝑘可為不同種類的迴歸模型,比如 線性迴歸模型、非線性迴歸模型等,且假如𝑓𝑘為線性迴歸模型,在模型(6)中須考慮的參 數總數為樣本特徵數m 乘以群數 l,一旦群數上升,模型維度也會急速增加,加上樣本 特徵不一定皆對銷量有影響,因此就有必要在評估模型時加上懲罰,以達成稀疏模型,
降低模型過適的可能(Baardma et al., 2017)。
在模型(6)中需決定每個樣本的分群𝑧̂𝑖𝑘以及每群的預測模型𝑓̂𝑘,而為評估模型(6)的 表現,以下為Cluster-while-estimate 演算法的誤差最小化問題(P):
𝑚𝑖𝑛𝑧̂𝑖𝑘,𝑓̂𝑘∑𝑛𝑖=1𝐿(𝑦𝑖, ∑𝑙𝑘=1𝑧𝑖𝑘𝑓𝑘(𝑥𝑖)) + 𝜆𝑅(𝑓1, … , 𝑓𝑘) (7a) s.t. ∑𝑙𝑘=1𝑧𝑖𝑘 = 1, 𝑖 = 1, … , 𝑛 (7b) 𝑧𝑖𝑘 ∈ {0, 1}, 𝑖 = 1, … , 𝑛, 𝑘 = 1, … , 𝑛 (7c) 目標(7a)代表將預測誤差最小化,每個樣本 i 可觀察到目標變數為𝑦𝑙𝑖及預測值
∑𝑙𝑘=1𝑧𝑖𝑘𝑓𝑘(𝑥𝑖),預測誤差為𝐿(𝑦𝑖, ∑𝑙𝑘=1𝑧𝑖𝑘𝑓𝑘(𝑥𝑖)),並透過 λ>=0 為懲罰參數,𝑅(𝑓1, … , 𝑓𝑘) 為懲罰項,對模型(6)正規化。
為快速找到可行的問題(7a)解,Baardma et al. (2017)的 Cluster-while-estimate 演算法
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
不斷重複評估預測模型及分群的動作,直到群內樣本不再變動或達到預設迭代次數,詳 述如下:
1. 預設分群數 l 及懲罰參數 λ,使用隨機分群或其他分群方法如 k-means 或階層 式分群將樣本分為l 群。
2. 評估預測模型及分群,預設迭代次數為T,𝑡 = 1, … , 𝑇:
a. 以𝑧𝑖𝑘 = 𝑧̂𝑖𝑘(𝑡−1)解(P),找到𝑓̂𝑘(𝑡)。
b. 以𝑓𝑘 = 𝑓̂𝑘(𝑡−1)解(P),找到𝑧̂𝑖𝑘(𝑡)。
c. 如𝑧̂𝑖𝑘(𝑡) = 𝑧̂𝑖𝑘(𝑡−1)或𝑡 = 𝑇,暫停迭代,否則回到步驟 2a。
Cluster-while-estimate 演算法看似應用範圍十分廣泛,但一則其迭代的特性使此演 算法在處理高維度且樣本多的資料集時需時甚久,二則其分群方式如同一般純分群演 算法,倚靠個別觀察值間的相似度分群,若有新的觀察值須被分群,則亦根據與各群 的相似度分類,沒有透明可理解的分群規則,所以本論文提出Cluster-while-regression with tree hierarchy演算法,改善未有可詮釋分群規則缺失。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
10