4.1 線性回歸
線性回歸模型是什么:
將目標(biāo)預(yù)測為特征輸入的加權(quán)和
i.e.
我們可以使用各種方法來估計(jì)最佳權(quán)重榜田,常用的方法有最小二乘法
線性回歸的最大優(yōu)點(diǎn)是線性:他使估計(jì)過程變得簡單
最重要的是,這些線性方程在模塊化水平(即權(quán)重)上易于理解戒洼。
估計(jì)的權(quán)重是帶有置信區(qū)間的
模型是否為“正確”模型取決于以下方面
- 線性:
- 正態(tài)性:
- 同方差性
- 獨(dú)立性
- 固定特征
- 不存在多重共線性
4.1.1解釋
線性回歸模型中權(quán)重的解釋取決于相應(yīng)特征的類型:
- 數(shù)值特征:將數(shù)值特征增加一個(gè)單位會(huì)根據(jù)權(quán)重直接改變估計(jì)結(jié)果。e.g 房屋面積大小
- 二分類特征:每個(gè)實(shí)例都有兩個(gè)可能的值允华。e.g 房子有沒有花園
- 具有多個(gè)類別的分類特征:具有固定數(shù)量的可能值的特征圈浇。一種處理多種類別的解決方案是one-hot encoding。
- 截距項(xiàng)
:截距是“常量特征”的特征權(quán)重靴寂,對(duì)于所有實(shí)例都是1磷蜀。解釋為:所有數(shù)值特征為0,分類特征為參照類別下的實(shí)例百炬。它通常沒有意義褐隆,只有當(dāng)特征標(biāo)準(zhǔn)化(均值為0,標(biāo)準(zhǔn)差為1)時(shí)剖踊, 才有意義庶弃。在這種情況下,截距反映當(dāng)所有特征都處于其均值的時(shí)候instance的預(yù)測結(jié)果蜜宪。
數(shù)值特征的解釋
當(dāng)其他特征保持不變的時(shí)候虫埂,特征增加一個(gè)單位,預(yù)測結(jié)果
增加
圃验。
分類特征的解釋
當(dāng)其他特征保持不變的時(shí)候掉伏,特征從參照類別改變?yōu)槠渌悇e,預(yù)測結(jié)果
會(huì)增加
澳窑。
R-squared Measurement
R-squared Measurement是另一個(gè)解釋線性模型的重要度量斧散。
他告訴你模型解釋了目標(biāo)結(jié)果的總方差為多少。R-squared越高摊聋,模型對(duì)數(shù)據(jù)的解釋性就越好鸡捐。計(jì)算公式如下:
但有一個(gè)問題,
特征重要性
在線性回歸模型中,某個(gè)特征的重要性可以用它的t-statistic的絕對(duì)值來衡量歇僧。
它是以標(biāo)準(zhǔn)差為尺度的估計(jì)權(quán)重:
i.e. 特征的重要性隨著權(quán)重的增加而增加图张,隨著估計(jì)權(quán)重的方差增加而減小。
4.1.3 可視化解釋
幾種可視化解釋的方法:
-
權(quán)重圖
權(quán)重圖
在擬合線性模型前诈悍,也可以通過特征放縮來使權(quán)重更具可比性
-
效應(yīng)圖
當(dāng)權(quán)重與實(shí)際特征值直接相乘時(shí)祸轮,值會(huì)更有意義更值得分析。比如說侥钳,一個(gè)特征身高的單位從米變成厘米适袜,權(quán)重會(huì)改變,但在數(shù)據(jù)中的實(shí)際效應(yīng)基本不變舷夺。特征效應(yīng)的公式:
特征效應(yīng)
特征效應(yīng)的可視化分析可以用箱線圖:
效應(yīng)圖
4.1.4解釋單個(gè)實(shí)例預(yù)測
將特征相應(yīng)畫在對(duì)應(yīng)的效應(yīng)圖上
4.1.5
分類特征的編碼
線性回歸的標(biāo)準(zhǔn)是Treatment coding
常用的編碼:
- Treatment coding
- Effect coding
- Dummy coding
4.1.7稀疏線性模型(解決特征太多的辦法)
-
Lasso
Lasso:least absolute shrinkage and selection operator
原來的線性模型痪蝇,優(yōu)化權(quán)重:
原來
Lasso:
Lasso
即添加了懲罰項(xiàng),對(duì)大權(quán)重進(jìn)行懲罰 - 線性模型稀疏性的其他辦法:
1.預(yù)處理辦法:
(1)手動(dòng)選擇特征
(2)單變量選擇
2.分步方法:
(1)向前選擇:用一個(gè)特征擬合線性模型冕房,對(duì)所有特征進(jìn)行這個(gè)操作,選擇最有效的模型(比如最大)趁矾,然后對(duì)其他特征繼續(xù)重復(fù)上述操作耙册。直到達(dá)到某個(gè)條件,比如預(yù)定的特征數(shù)目(類似貪心法)
(2)向后選擇:和向前選擇類似毫捣,區(qū)別是先把所有特征全加上详拙,逐步刪除
線性模型的優(yōu)點(diǎn)
- 將預(yù)測建模為一個(gè)加權(quán)和,比較透明蔓同。Lasso可以確保特征數(shù)目仍然很小
- 很多領(lǐng)域饶辙,線性回歸模型的預(yù)測都被接受,知識(shí)體系也較為成熟
- 我們可以保證找到最佳權(quán)重
- 除了權(quán)重還可以得到置信區(qū)間斑粱,檢驗(yàn)和可靠的統(tǒng)計(jì)理論弃揽。線性模型也有很多拓展(GLM,GAM等)
線性模型的缺點(diǎn)
- 每一個(gè)非線性或交互都必須人工構(gòu)成则北,并作為input提供給模型
- 性能通常不是那么好
- 權(quán)重的解釋可能不直觀矿微,因?yàn)橐粋€(gè)特征可能與另一個(gè)特征存在某種關(guān)系。
e.g. 房屋面積大小和房間數(shù)目高度相關(guān)尚揣。如果這兩個(gè)features都納入線性模型涌矢,可能:房屋大小獲得很大的正權(quán)重,房間的數(shù)量獲得一個(gè)負(fù)權(quán)重快骗。因?yàn)榉课菝娣e大小相等時(shí)娜庇,房間增多塔次,價(jià)格通常降低。但這顯然與房間數(shù)目這一個(gè)單一特征不符名秀。因?yàn)檫@兩個(gè)特征高度相關(guān)励负。
4.2邏輯回歸
不同特征類型的邏輯回歸模型的解釋
- 數(shù)值特征:特征
增加一個(gè)單位,估計(jì)的概率
乘以因子
- 二分類特征:從參照類別變?yōu)榱硪活悇e泰偿,估計(jì)的概率
乘以因子
- 多分類特征:解決方案是one-hot編碼
- 截距
:所有數(shù)值特征為0熄守,分類特征為參照類別,
耗跛。截距的解釋通常不相關(guān)
優(yōu)缺點(diǎn):
- advantage:
不僅分類裕照,還給出概率,這是一個(gè)優(yōu)勢调塌。比如說晋南,某個(gè)instance屬于某個(gè)類的還是
的區(qū)別是很大的
- disadvantage
(1)必須手動(dòng)添加交互
(2)解釋更困難,因?yàn)闄?quán)重的解釋是乘法而非加法
(3)邏輯回歸會(huì)收到完全分離的影響羔砾。如果某個(gè)Feature將兩個(gè)類完全分開负间,模型就不能訓(xùn)練了,因?yàn)樵撎卣鞯臋?quán)重?zé)o法收斂姜凄,他是無限的政溃。(可以引入權(quán)重懲罰和定義權(quán)重的先驗(yàn)概率分布來解決)
4.3GLM,GAM和其他模型
對(duì)于許多現(xiàn)實(shí)問題來說态秧,簡單的加權(quán)和太過嚴(yán)格董虱。
經(jīng)典線性模型的三個(gè)問題:
(1)給定特征的目標(biāo)結(jié)果不遵循高斯分布
例子:高斯分布會(huì)有負(fù)值。如果我想預(yù)測我在某天騎自行車的時(shí)間申鱼,他可以預(yù)測出負(fù)的時(shí)間愤诱。
解決方案:GLM(廣義線性模型)
(2)特征交互
例子:小雨會(huì)讓我不想騎車。但如果大熱天交通高峰期捐友,我希望下雨并騎車淫半,因?yàn)檫@樣跟我一起騎車的人會(huì)變少,自行車道會(huì)更空曠匣砖。這種特征的交互科吭,無法由純加性模型獲得
解決方案:手動(dòng)添加交互
(3)特征和之間的真實(shí)關(guān)系不是線性的
例子:℃間,溫度對(duì)我騎車欲望影響是線性的猴鲫。但超過二十五度時(shí)砌溺,可能不是線性的了(太熱了不想騎車了)
解決方案:GAM(廣義加性模型);特征轉(zhuǎn)換
GLM
- GLM的核心概念:保留特征的加權(quán)和变隔,但是允許非高斯結(jié)果分布
GLM
GLM由三個(gè)部分組成:連接函數(shù)规伐,加權(quán)和
,定義
指數(shù)族的概率分布
對(duì)不同的預(yù)測方向匣缘,選擇合適的指數(shù)族猖闪,比方說:
- 預(yù)測家里孩子的個(gè)數(shù):泊松分布
- 結(jié)果一直是正的:指數(shù)分布
經(jīng)典線性模型可以看作GLM的一個(gè)特例鲜棠。經(jīng)典線性模型中高斯分布的連接函數(shù)是一個(gè)簡單的恒等函數(shù)。連接函數(shù)會(huì)連接特征加權(quán)和and高斯分布的均值
例子:
預(yù)測喝咖啡的數(shù)量:
用高斯分布(經(jīng)典線性模型):
高斯分布明顯不符合實(shí)際培慌。
用GLM泊松分布:
符合實(shí)際
對(duì)GLM權(quán)重的解釋
假設(shè)分布和連接函數(shù)共同決定了如何解釋估計(jì)的權(quán)重特征
在咖啡計(jì)數(shù)的例子中:
我們使用了帶有泊松分布和對(duì)數(shù)連接的GLM豁陆,即
為了解釋權(quán)重,對(duì)連接函數(shù)取逆
特征影響的解釋是乘性的吵护,而不是加性的盒音,因?yàn)?img class="math-inline" src="https://math.jianshu.com/math?formula=exp(a%2Bb)%3Dexp(a)*exp(b)" alt="exp(a+b)=exp(a)*exp(b)" mathimg="1">
解釋的最后一個(gè)成分是虛構(gòu)樣本的實(shí)際權(quán)重
交互
線性回歸模型假設(shè)之一是feature的效應(yīng)是保持相同的,即與其他特征無關(guān)(=沒有交互)馅而,但這顯然與實(shí)際情況不符祥诽。
那么,如何獲得包含交互作用的線性模型呢瓮恭?
在擬合線性模型之前雄坪,在特征矩陣中添加一列表示特征的交互作用
例子:溫度和(y/n)工作日的交互作用
GAM
在簡單的線性模型中,溫度增加一攝氏度屯蹦,對(duì)于人們是否租賃自行車的影響是相同的维哈。e.g.從10℃-11℃,和從40℃-41℃的影響是一樣的登澜。但實(shí)際上阔挠,我們希望前者是正影響,后者是負(fù)影響脑蠕,這樣更加符合實(shí)際谒亦。
線性模型不關(guān)心這個(gè),它只是盡力找到最佳的現(xiàn)形平面(利用最小歐氏距離)
對(duì)非線性模型建模的方法:
- 特征的簡單轉(zhuǎn)換
- 特征分類
-
廣義加性模型(GAM)
先上一張圖空郊,里面是傳統(tǒng)線性模型和以上三種方法,對(duì)一個(gè)只用溫度特征來預(yù)測自行車租賃數(shù)量的模型切揭。
示例
特征轉(zhuǎn)換
常用的有將特征的對(duì)數(shù)用作轉(zhuǎn)換狞甚。假設(shè)函數(shù)為fun(x),i.e.用fun(x)代替x作為特征,并照常擬合線性模型廓旬。特征的解釋也會(huì)隨之改變
特征分類
實(shí)現(xiàn)非線性效應(yīng)的另一種可能方法是離散化特征哼审,將其轉(zhuǎn)化成分類特征。比如可以將溫度feature分箱孕豹。
當(dāng)使用分類溫度而不是線性溫度時(shí)涩盾,線性模型will estimate step function(階躍函數(shù)),因?yàn)閑ach level gets its own estimate励背。
特征分類的問題在于:他需要更多的數(shù)據(jù)春霍,也更容易過擬合。Moreover叶眉,我們通常不清楚如何有意義的進(jìn)行分箱(等距還是等頻址儒,分成多少類芹枷?)只有有很強(qiáng)的理由情況下,我們才會(huì)選擇離散化特征
GAM
GAM即廣義線性模型莲趣,GAM放寬了限制:關(guān)系必須是一個(gè)簡單的加權(quán)和鸳慈。
在GAM中,每一項(xiàng)可以是特征的任意函數(shù)喧伞。i.e.
即走芋,線性項(xiàng)
那么如何學(xué)習(xí)非線性函數(shù)呢潘鲫?
答案是使用樣條函數(shù)(spline function)
樣條曲線是可以組合以近似任意函數(shù)的函數(shù)(就是用多個(gè)函數(shù)拼成一個(gè)函數(shù)的近似函數(shù))
用上面的溫度特征預(yù)測模型來舉例翁逞,刪除溫度特征,并將其替換成4列次舌,每一列代表一個(gè)樣條函數(shù)(通常會(huì)有超過4個(gè)樣條函數(shù)熄攘,這里只是為了簡單表示)
這些新樣條特征的每個(gè)實(shí)例的值取決于實(shí)測的溫度值,GAM還將估計(jì)這些樣條權(quán)重彼念,并為權(quán)重引入懲罰項(xiàng)挪圾,以使他們接近0。這有效的降低了樣條的靈活性逐沙,減少了過擬合哲思。然后通過交叉驗(yàn)證來調(diào)整通常用于控制曲線靈活度的平滑度參數(shù)
下圖表示這些樣條函數(shù)的外觀:
并分配權(quán)重:
實(shí)際函數(shù)由估計(jì)權(quán)重加權(quán)的樣條函數(shù)之和得到,如圖所示:
優(yōu)點(diǎn)
- 大多數(shù)拓展的線性模型非常成熟
- 還可以根據(jù)模型進(jìn)行推斷吩案,獲得權(quán)重的置信區(qū)間棚赔,顯著性檢驗(yàn),預(yù)測區(qū)間等數(shù)據(jù)
- 線性模型通常不符合實(shí)際徘郭,這些拓展的線性模型在過渡到更靈活的模型的同時(shí)靠益,保留了一定的可解釋性。
缺點(diǎn)
- 線性模型的大多數(shù)修改都會(huì)降低模型的可解釋性
(1)不是恒等函數(shù)的任何連接函數(shù)(在GAM中)都會(huì)使解釋復(fù)雜化
(2)交互也會(huì)使解釋復(fù)雜化
(3)非線性特征效應(yīng):要么不太直觀(對(duì)數(shù)轉(zhuǎn)換)残揉,要么不能由單個(gè)數(shù)字解釋(樣條函數(shù))
(4)GLM胧后,GAM依賴有關(guān)數(shù)據(jù)生成過程的假設(shè)
(5)許多情況下,隨機(jī)森林和梯度生成樹等基于樹的集成方法的性能比最復(fù)雜的線性模型好抱环。
4.4決策樹Decision Tree
樹模型可以用來分類或者回歸壳快,CART算法(分類與回歸樹)是最流行的樹歸納算法。
優(yōu)點(diǎn)
- 樹結(jié)構(gòu)非常適合捕獲數(shù)據(jù)中特征之間的交互
- 這些數(shù)據(jù)最終分成不同的組镇草,通常比線性回歸中的多維超平面更容易理解眶痰,即更容易解釋
- 樹結(jié)構(gòu)本來也就有一個(gè)自然的可視化,直接看結(jié)點(diǎn)和邊即可
- 不需要特征轉(zhuǎn)換
缺點(diǎn)
- 樹不能處理線性關(guān)系:在樹中梯啤,
和
之間的的任何線性關(guān)系竖伯,都需要通過分割來近似,這會(huì)創(chuàng)建一個(gè)階躍函數(shù),這不是一個(gè)practical的方法黔夭。因?yàn)檫@會(huì)缺乏平滑度宏胯,即
的一個(gè)微小變化,可能會(huì)導(dǎo)致
的巨大變化本姥。
- 樹相當(dāng)不穩(wěn)定肩袍,training dataset的的一些更改會(huì)導(dǎo)致創(chuàng)建一個(gè)完全不一樣的樹。因?yàn)槊恳粋€(gè)分割都依賴于父分割婚惫。比方說氛赐,將樹的根節(jié)點(diǎn)換成其他特征,整個(gè)樹的結(jié)構(gòu)會(huì)完全改變先舷,人們很難對(duì)結(jié)構(gòu)如此容易發(fā)生改變的模型產(chǎn)生信心艰管。
- 雖然Depth比較小的決策樹很好理解,但隨著深度增加蒋川,終端節(jié)點(diǎn)的數(shù)量成指數(shù)倍增長牲芋,這會(huì)讓決策樹越來越難理解。
4.5決策規(guī)則
決策規(guī)則是一個(gè)簡單的語句捺球,由條件和預(yù)測組成缸浦,比如:
IF 今天下雨 AND 今天是四月(條件),THEN 明天下雨(預(yù)測)
我們可以使用單個(gè)決策規(guī)則或者多個(gè)規(guī)則的組合進(jìn)行預(yù)測
決策規(guī)則可能是最容易理解的預(yù)測模型
決策規(guī)則的usefulness通常概括成兩個(gè)數(shù)字:支持度(Support)和準(zhǔn)確性(Accuracy)氮兵。
- 支持度:規(guī)則條件適用的實(shí)例所占的百分比稱為支持度裂逐。
例如,IF size=big AND location=good THEN value=high
用于進(jìn)行房價(jià)預(yù)測泣栈。假設(shè)1000個(gè)房屋中有100個(gè)滿足size=big AND location=good卜高,則規(guī)則的支持度為10%。 - 準(zhǔn)確度:規(guī)則的準(zhǔn)確性是衡量規(guī)則在規(guī)則條件中適用的實(shí)例預(yù)測正確類別時(shí)的準(zhǔn)確性的指標(biāo)南片。比如說掺涛,IF size=big AND location=good THEN value=high適用的100個(gè)房屋中,有85個(gè)value=high,其余為medium或者low疼进,那么預(yù)測的準(zhǔn)確度為85%薪缆。
人們通常需要在Support和Accuracy中做一個(gè)trade-off:通過在條件中添加更多的特征,我們可以獲得更高的準(zhǔn)確性颠悬,但會(huì)失去支持度。
組合多種規(guī)則的兩種主要策略:決策列表(有序)定血、決策集(無序)赔癌,這兩種方法隱含了對(duì)重疊規(guī)則問題的兩種不同的解決方案
- 決策列表向決策規(guī)則引入order
- 決策集類似于決策的民主,某些規(guī)則有更高的投票權(quán)
有很多種方法可以從數(shù)據(jù)中學(xué)習(xí)規(guī)則澜沟,這里展示三個(gè):
- OneR(從單個(gè)特征學(xué)習(xí)規(guī)則):簡單性灾票,可解釋性
- 順序覆蓋:迭代地學(xué)習(xí)規(guī)則并刪除新規(guī)則覆蓋的數(shù)據(jù)點(diǎn)
- 貝葉斯規(guī)則列表:使用貝葉斯統(tǒng)計(jì)將預(yù)先挖掘的頻繁模式組合到決策列表中。
4.5.1OneR
Definition:從所有特征中茫虽,OneR選擇一個(gè)包含有關(guān)感興趣結(jié)果的最多信息的特征刊苍,從該特征創(chuàng)建決策規(guī)則
盡管OneR代表一個(gè)規(guī)則既们,但實(shí)際上算法生成多種規(guī)則,實(shí)際上是所選最佳特征的每個(gè)特征值的一個(gè)規(guī)則正什。
算法簡單快捷:
- 通過選擇適當(dāng)?shù)拈g隔來離散化連續(xù)特征
- 對(duì)于每個(gè)特征:
(1)在特征值和分類結(jié)果之間創(chuàng)建交叉表
(2)對(duì)于特征的每個(gè)值啥纸,創(chuàng)建一個(gè)規(guī)則,預(yù)測具有此特定特征值(可以從交叉表讀扔さ)的實(shí)例的最常見類別
(3)計(jì)算特征規(guī)則的總誤差 - 選擇總誤差最小的特征
OneR模型是只有一個(gè)分割的決策樹斯棒,分割不一定像CART一樣是二分叉的,而是取決于特征值的數(shù)量主经。
4.5.2順序覆蓋
Definition:重復(fù)學(xué)習(xí)單一規(guī)則以創(chuàng)建一個(gè)決策列表(或集合)荣暮,該決策列表(或集合)按照規(guī)則覆蓋整個(gè)數(shù)據(jù)集。
這邊讀的不太懂
4.5.3貝葉斯規(guī)則列表
頻繁模式的預(yù)先挖掘
我們使用特征并提取出頻繁出現(xiàn)的模式
模式可以是單個(gè)特征值size=medium罩驻,也可以是特征值的組合size=medium AND location=bad
模式的頻率是通過其在數(shù)據(jù)集中的支持度來測量:
許多算法可以找到這種頻繁模式的大致想法穗酥,比如Apriori,或FP-Growth
xxxx
優(yōu)點(diǎn)
很容易解釋惠遏;有像決策樹一樣的表達(dá)能力砾跃,同時(shí)更緊湊;預(yù)測很快爽哎;魯棒性高蜓席;僅為模型選擇相關(guān)特征;OneR可以作為更復(fù)雜算法的基線
缺點(diǎn)
幾乎完全忽略回歸课锌;特征通常也必須是分類的厨内;在描述特征和輸出之間的線性關(guān)系時(shí),決策規(guī)則是不好的
4.6 RuleFit
RuleFit由兩個(gè)部分組成:
- 從決策樹創(chuàng)建規(guī)則
- 用原始特征和新規(guī)則作為Input用線性模型擬合
怎么生成規(guī)則渺贤?
通過分解決策樹來構(gòu)造規(guī)則:到樹中節(jié)點(diǎn)的任何路徑都可以轉(zhuǎn)換成決策規(guī)則雏胃。
梯度提升用于通過用原始特征對(duì)
進(jìn)行回歸或分類來擬合決策樹的集成。
我們從集成的所有樹中創(chuàng)建規(guī)則
xxxxx
優(yōu)點(diǎn)
- RuleFit自動(dòng)將特征交互添加到線性模型志鞍。因此瞭亮,它解決了必須手動(dòng)添加交互作用項(xiàng)的線性模型問題,對(duì)建模非常有幫助
- RuleFit可以處理分類和回歸任務(wù)
- 創(chuàng)建的規(guī)則易于解釋(二進(jìn)制決策規(guī)則)
- 即使模型有許多規(guī)則固棚,對(duì)于單一實(shí)例统翩,只有少數(shù)規(guī)則適用(具有非0的權(quán)重)。這提高了局部可解釋性
- RuleFit有許多有用的診斷工具:特征重要性此洲、部分依賴圖厂汗、特征交互。
缺點(diǎn)
作為線性模型呜师,也需要:假設(shè)所有其他特征已固定
當(dāng)有規(guī)則重疊時(shí)娶桦,會(huì)變得tricky。
例如:1個(gè)規(guī)則temp>10,第二個(gè)規(guī)則temp>15&weather='GOOD',滿足第二個(gè)規(guī)則的情況下,一定滿足第一個(gè)規(guī)則衷畦。這種情況下栗涂,假設(shè)其他特征都以固定是無意義的。