Fundamental concepts:基于數(shù)據(jù)尋找最佳的模型參數(shù);選擇數(shù)據(jù)挖掘的目標(biāo);目標(biāo)函數(shù)(objective functions);損失函數(shù)(loss functions)。
Exemplary(典范的) techniques:線性回歸(linear regression);邏輯回歸(logistics regression);支持向量機(jī)(support-vector machines)。
參數(shù)學(xué)習(xí)(parameter learning)or參數(shù)化建模(parametric modeling):通過調(diào)整參數(shù),讓模型能夠最大程度地匹配數(shù)據(jù)的過程,叫做參數(shù)學(xué)習(xí)或參數(shù)化建模。
Classification via Mathematical Functions(分類和數(shù)學(xué)函數(shù))

參考圖4-1,創(chuàng)造同質(zhì)性區(qū)域的目的是根據(jù)已知的數(shù)據(jù)來預(yù)測(cè)新數(shù)據(jù)會(huì)落在哪個(gè)區(qū)域當(dāng)中,此時(shí)我們知道了他落在哪個(gè)區(qū)域后,我們便可根據(jù)區(qū)域和目標(biāo)變量的關(guān)系來預(yù)測(cè)這條新數(shù)據(jù)的目標(biāo)變量(target variable)是·還是+號(hào)。
通過以上方法我們可以預(yù)見到,可能會(huì)有更好的分割方法幾乎完美地對(duì)不同目標(biāo)變量的結(jié)果進(jìn)行預(yù)測(cè),而且這條線不一定要與坐標(biāo)軸直接垂直,就想下圖所示:

上圖的方式叫做線性分類,他的本質(zhì)是對(duì)已知的各變量進(jìn)行加權(quán)后的求和,后續(xù)內(nèi)容將對(duì)此做詳細(xì)介紹。
Linear Discriminant Functions(線性判別函數(shù))
通過一元二次函數(shù)來構(gòu)造,可知上圖4-3中的直線可表示為:
如果元素x是在線的上方,我們可以預(yù)測(cè)他是+號(hào)結(jié)果,如果在下方我們可以預(yù)測(cè)他是·結(jié)果。
等式4-1,分類函數(shù):
這被稱為線性辨別,并且這個(gè)函數(shù)是一個(gè)各個(gè)attributes的一個(gè)加權(quán)求和的結(jié)果。
在2元情況下,這個(gè)分割是一條線,在3元的情況下,這個(gè)分割就是通過一個(gè)分割面來實(shí)現(xiàn)的,在更高維度時(shí),這個(gè)分割的形式就是一個(gè)超平面(hyperplane)。而我們所關(guān)注的,僅僅是目標(biāo)變量如何能表示成各個(gè)變量的一個(gè)加權(quán)的求和結(jié)果。
由此可以看出,線性化模型是多變量監(jiān)督學(xué)習(xí)分割的一個(gè)特殊形式,監(jiān)督分割的目的依然是將樣本集根據(jù)變量進(jìn)行分割,而將數(shù)值化的變量引入的目的是創(chuàng)造一個(gè)他們之間關(guān)系的數(shù)學(xué)函數(shù)。
等式4-2,一般性線性模型:
而4-1中的公式可被表示為如下形式:
我們只需要檢查的正負(fù)性,就可以預(yù)測(cè)元素x的目標(biāo)變量結(jié)果。

像上圖所示,我們應(yīng)該怎樣選到最合適的那一條線來當(dāng)做模型呢?
Optimizing an Objective Function(尋找最佳的目標(biāo)函數(shù))
邏輯回歸做的并不是回歸的事情,邏輯回歸實(shí)際上是用于給概率預(yù)測(cè)進(jìn)行分類。
線性回歸、邏輯回歸、支持向量機(jī)都是在給數(shù)據(jù)建模時(shí)的相似工具,主要的區(qū)別是這三個(gè)技術(shù)方式每一個(gè)都使用一個(gè)不同的目標(biāo)函數(shù)。
An Example of Mining a Linear Discriminant from Data(線性模型總結(jié)舉例)

Linear Discriminant Functions for Scoring and Ranking Instances(用于樣本評(píng)分和排行的判別函數(shù))
有些時(shí)候我們不滿足于對(duì)樣本進(jìn)行分類定性,而是要得出這個(gè)樣本與這個(gè)類別的匹配程度有多少。
接下來我們將使用?邏輯回歸?的方法來對(duì)一個(gè)用戶churn概率的問題進(jìn)行分析。
考慮公式4-2()的情形,當(dāng)x處在決策線(x軸)上時(shí)
=0,當(dāng)x靠近決策線時(shí)
的值會(huì)很小,當(dāng)x在+方向上離決策線很遠(yuǎn)時(shí)
的值會(huì)很大,這樣就通過
的值得出了一個(gè)每個(gè)樣本屬于分類的匹配度的排名。
Support Vector Machines(SVM),Briefly(支持向量機(jī)簡(jiǎn)介)
簡(jiǎn)短來說,支持向量機(jī)就是線性判別;概括來說,SVMs是基于公式4-2()中線性函數(shù)的各個(gè)特征來對(duì)樣本進(jìn)行分類的。
概念介紹:非線性支持向量機(jī)(nonlinear support vector machines),非線性支持向量機(jī),將線性支持向量機(jī)的函數(shù)當(dāng)做變量來使用,故可描述為:使用新變量(已有線性判別函數(shù))組成的線性判別函數(shù),對(duì)于最初的原始變量來說就是一個(gè)非線性判別函數(shù),即非線性支持向量機(jī)。
支持向量機(jī):相比于找到分割樣本集的直線,支持向量機(jī)更偏好于找到能夠滿足分割樣板的最寬的區(qū)間,如下圖所示:

在SVM的觀點(diǎn)中,margin越寬越好,一旦找到最寬的margin值,那么這個(gè)線性margin面積的中線就是最佳的線性判別函數(shù),上圖中兩條虛線中間的距離叫做margin,SVM的目標(biāo)就是最大化margin,即最大化平行邊線間的距離。
對(duì)于SVM機(jī)制的解釋為,鑒于得到的是有限數(shù)據(jù),更多未知數(shù)據(jù)可能比學(xué)習(xí)集數(shù)據(jù)更靠近中線,落在margin內(nèi),甚至落在中線的另一側(cè),所以為了減小這種可能性,需要采取最大化margin的判斷思路,來得到margin中線這樣的一條分割判定函數(shù)線。
另一個(gè)對(duì)SVM的理解是,如何應(yīng)對(duì)落在判定函數(shù)線反側(cè)的特異數(shù)據(jù)點(diǎn),圖4-2中的數(shù)據(jù)點(diǎn)沒辦法通過一條線進(jìn)行完美的分割,當(dāng)然絕大多數(shù)情況下的數(shù)據(jù)集都是沒辦法一條線完美分割的,這些降落在margin內(nèi)或中線對(duì)側(cè)的錯(cuò)誤的點(diǎn),這里引出一個(gè)概念損失函數(shù)。
Sidebar:loss functions(補(bǔ)充:損失函數(shù))
“損失”在整個(gè)數(shù)據(jù)科學(xué)中都被廣泛運(yùn)用當(dāng)做錯(cuò)誤懲罰。損失函數(shù)決定基于模型的預(yù)測(cè)值多少懲罰應(yīng)該被分配到每個(gè)樣本上,在此處上下文中,是基于點(diǎn)到分界中線的距離。
有些損失函數(shù)比較常用,如圖4-9中所示:

圖4-9中,橫軸是到分割中線的距離,預(yù)測(cè)錯(cuò)誤的點(diǎn)具有正值的距離數(shù)值,而預(yù)測(cè)正確的點(diǎn)具有負(fù)值的距離數(shù)值(圖中的選擇是任意的)。
hinge loss(鉸鏈損失函數(shù))
支持向量機(jī)經(jīng)常使用鉸鏈損失函數(shù),名字的由來就是函數(shù)圖形看起來像是鉸鏈。鉸鏈損失函數(shù)中,當(dāng)一個(gè)元素不在margin的錯(cuò)誤一側(cè)時(shí)不產(chǎn)生損失,僅當(dāng)某個(gè)元素在分割線的錯(cuò)誤一側(cè)并且超出了margin的范圍時(shí),才會(huì)產(chǎn)生正值的損失值。同時(shí),損失值會(huì)隨著這個(gè)元素離分割線的距離增加而線性增加,因此,懲罰點(diǎn)數(shù)越多、點(diǎn)的距離和分割線越遠(yuǎn),損失值就越大。
zero-one loss(0-1損失函數(shù))
和名字的意思一致,正確的決策分配一個(gè)為0的損失,錯(cuò)誤的決策分配一個(gè)為1的損失。
squared error(平方誤差)
考慮一個(gè)不一樣的損失計(jì)算方法,平方誤差將損失正比于懲罰點(diǎn)到分割線的距離的平方。平方誤差常用于數(shù)字值預(yù)測(cè)(回歸),而不是分類預(yù)測(cè)。平方誤差對(duì)錯(cuò)誤結(jié)果可以產(chǎn)生顯著的預(yù)測(cè)懲罰值(損失值)。在分類預(yù)測(cè)中,平方誤差法會(huì)給落在錯(cuò)誤側(cè)的元素很大的懲罰值(損失值)。不幸的是,在分類預(yù)測(cè)當(dāng)中,平方誤差法也會(huì)給落在正確一側(cè)的原處點(diǎn)很大的懲罰值(不就是平方結(jié)果沒有正負(fù)號(hào)么……)。對(duì)于大多數(shù)商業(yè)問題,在分類或類別可能性預(yù)測(cè)的場(chǎng)景下使用平方誤差法,會(huì)違背商業(yè)目標(biāo)的原則。
Regression via Mathematical Functions(通過數(shù)學(xué)函數(shù)進(jìn)行回歸)
線性回歸函數(shù)的函數(shù)式和線性判別函數(shù)的函數(shù)式一樣,都是等式4-2,如下:
線性回歸要做的內(nèi)容就是,根據(jù)學(xué)習(xí)集數(shù)據(jù),找到一個(gè)線性預(yù)測(cè)公式 ,使得學(xué)習(xí)集中的各元素到此線的距離之和最小。
如果預(yù)測(cè)值是10,實(shí)際值是12或8,那么錯(cuò)誤值就是2,這個(gè)2被稱為絕對(duì)誤差(absolute error),然后我們就可以通過訓(xùn)練集的數(shù)據(jù)去最小化絕對(duì)誤差的總和,或者絕對(duì)誤差的平均值,這很有意義,但常規(guī)的線性回歸并不是用這樣的步驟來執(zhí)行的。
標(biāo)準(zhǔn)的線性回歸使用最小化誤差平方結(jié)果的方式來執(zhí)行,因此得名“最小平方”回歸。使用最小平方和的方式主要是因?yàn)檫@個(gè)方法簡(jiǎn)單方便好算。
平方誤差法有一個(gè)天然的缺陷,就是邊遠(yuǎn)的數(shù)據(jù)點(diǎn)會(huì)對(duì)函數(shù)結(jié)果產(chǎn)生嚴(yán)重的扭轉(zhuǎn)。使用絕對(duì)值誤差法相比于平方誤差法,受邊緣點(diǎn)的影響會(huì)小很多。
Class Probability Estimation and Logistic "Regression"(分類概率預(yù)測(cè)和邏輯歸回)
邏輯回歸就是用賠率來代替事情發(fā)生的概率來做預(yù)測(cè),比如,一件事發(fā)生的概率是80%不發(fā)生的概率是20%那么賠率(odds)就是80:20或者4:1。但賠率的分布范圍是零到正無窮,但根據(jù)點(diǎn)到分割線的距離來判斷概率(離線越遠(yuǎn)概率越大)的話,距離值的分布范圍是負(fù)無窮到正無窮,兩者范圍不符,故采用取對(duì)數(shù)的形式來進(jìn)行變形,就是(log-odds),任何0到無窮的數(shù)的對(duì)數(shù)分布范圍是負(fù)無窮到正無窮。
有以下幾個(gè)要點(diǎn)需要記住:
1. 在概率預(yù)測(cè)中,邏輯回歸和和線性分類、線性回歸數(shù)值預(yù)測(cè),使用了同樣的線性模型;
2. 邏輯回歸模型的輸出可以理解成賠率的對(duì)數(shù)形式(log-odds);
3. 這些log-odds可以直接被轉(zhuǎn)換成各類型的概率,因此邏輯回歸經(jīng)常被當(dāng)做分類模型。你已經(jīng)在不知不覺中使用了很多次邏輯回歸模型它被廣泛用于信用卡默認(rèn)金額預(yù)測(cè),offer的接受概率等領(lǐng)域。
邏輯回歸是一個(gè)對(duì)分類進(jìn)行預(yù)測(cè)的模型,而不是一個(gè)對(duì)數(shù)值進(jìn)行預(yù)測(cè)單模型,不要認(rèn)錯(cuò)呦。
* Logistic Regression: Some Technical Details
公式4-3 log-odds 線性方程:
(這里log實(shí)際上是ln即e為底數(shù))
公式4-3表示被特征向量x表示的某個(gè)數(shù)據(jù)項(xiàng),這個(gè)類別的log-odds值和線性方程相等。
通常我們想要的是各類型的概率而不是log-odds,故解出公式4-3中的可得公式4-4:
(
e的負(fù)f(x)次方)
如果把當(dāng)做自變量,公式4-4的值當(dāng)做因變量繪圖,如下:

邏輯回歸模型適配到數(shù)據(jù)的標(biāo)準(zhǔn)目標(biāo)函數(shù)如下:
?如果x是+類型;
如果x是·類型
g函數(shù)給了得到x的特征后,對(duì)x的可能性評(píng)估的結(jié)果。現(xiàn)在考慮對(duì)所有元素的g函數(shù)值求和,并對(duì)不同的參數(shù)模型套用得出各自的,能夠給出最大的sum的g值的模型,就是和學(xué)習(xí)集數(shù)據(jù)匹配最好的模型。最好的模型通常對(duì)正元素給出最高的概率,同時(shí)對(duì)負(fù)元素給出最低的概率。
Example: Logistic Regression versus Tree Induction
雖然決策樹和線性分類都會(huì)用到線性決策分割線,但有以下兩個(gè)差異點(diǎn):
1. 決策樹的分割線都是垂直于坐標(biāo)軸(樣本空間坐標(biāo)軸)的,如圖4-1,而線性分類的分割線可以是朝向任何方向的(即斜率任意),換句話說,決策樹每次選擇一個(gè)特征變量,但線性分類使用一個(gè)多特征變量的加權(quán)組合一次性使用所有特征變量;
2. 決策樹使用遞歸的方法來劃分樣本空間,也就是可以把樣本空間分割出很小的小塊;但線性分類僅使用一條分割線將樣本空間平面分成兩個(gè)區(qū)域,這個(gè)函數(shù)會(huì)涉及到所有的變量,并且可以適用于所有樣本元素。
這里舉了一個(gè)威斯康辛州乳腺癌數(shù)據(jù)的案例,分別通過線性回歸分類和決策樹分類進(jìn)行了建模,發(fā)現(xiàn)線性回歸分類準(zhǔn)確度為98.9%,而決策樹的準(zhǔn)確率為99.1%,但這并不一定代表決策樹模型更合適,后續(xù)章節(jié)會(huì)繼續(xù)討論模型評(píng)估。
Nonlinear Functions, Support Vector Machines, and Neural Networks(神經(jīng)網(wǎng)絡(luò))
最常用的適配復(fù)雜參數(shù)和非線性函數(shù)的方法為非線性支持向量機(jī)和神經(jīng)網(wǎng)絡(luò)。
神經(jīng)網(wǎng)絡(luò)就是多層次的模型“stack”of models,通過原始數(shù)據(jù)的特征生成第一級(jí)分析結(jié)果,然后將第一層的結(jié)果當(dāng)做新特征進(jìn)行二次邏輯回歸或其他模型分析,從而組成stack。
多層神經(jīng)網(wǎng)絡(luò)的低層級(jí)target variable的最佳結(jié)果如何選擇,取決于最終高層的結(jié)果如何選擇,也就是說,神經(jīng)網(wǎng)絡(luò)的最終學(xué)習(xí)結(jié)果是一個(gè)復(fù)雜函數(shù),那么將復(fù)雜函數(shù)的各參數(shù)逐步分解,就可以得到底層各模型的target variable的最優(yōu)化模型結(jié)果,也就是自上而下的擇優(yōu)歸納過程。
Note:神經(jīng)網(wǎng)絡(luò)對(duì)很多任務(wù)都有效用(沒說啥新鮮玩意)
Summary
線性回歸、邏輯回歸、支持向量機(jī),這幾個(gè)概念的關(guān)鍵區(qū)別在于:如何定義一個(gè)模型最好地適配了學(xué)習(xí)集數(shù)據(jù)。
下一章節(jié)開始講過擬合相關(guān)的問題。