Feature Exploitation Techniques
這幾篇博客介紹的第一個(gè)feature transform方法就是kernel。kernel先出現(xiàn)是在SVM里面,原因就是為了減少 內(nèi)積計(jì)算的復(fù)雜度,把特征轉(zhuǎn)換和內(nèi)積計(jì)算結(jié)合到一起。特征轉(zhuǎn)換其實(shí)也是一種特征的提取。介紹過的kernel:polynomial kernel,Gaussion kernel,stump kernel。另外,不同的kernel相加或者是相乘做uniform或者是combination可以提取更加復(fù)雜的特征,比如Network。但是使用kernel是需要滿足Mercer條件的,對(duì)稱半正定。不同的kernel可以搭配不同的模型,SVM,SVR,probability SVM,或者是kernel ridge regression等等。之前學(xué)過的PCA,kmean這些算法都包括了內(nèi)積的計(jì)算,所以它們各自也有對(duì)應(yīng)的kernel函數(shù),比如之前使用的Kmean是用的高斯距離,那么kernel就是Gaussion kernel了。

kernel是使用的第一種特征轉(zhuǎn)換的方法,第二種方法就是aggregation了,之前介紹的所有的hypothesis都可以看做是一種特征轉(zhuǎn)換,比如之前學(xué)過的decision tree,RBF Network。如果g是已知的,那我們可以把它們進(jìn)行uniform的組合,non-uniform和conditional組合。如果g是未知的,那么我們就可以使用bagging或者Adaboost來建立模型。

其實(shí)就是總結(jié)了一下aggregation model。特征轉(zhuǎn)換是一種尋找特征的方法,特征提取是另外學(xué)習(xí)到的,提取出隱藏的特征,hidden feature。一般通過unsupervised learning,從原始數(shù)據(jù)中提取特征,有點(diǎn)像生成模型,先摸清楚數(shù)據(jù)的情況分布特點(diǎn),再進(jìn)行模型的建立。比如:聚類算法,kmeans,mean shfit等等,PCA都是。

另外還有一種就是維度的壓縮了,其實(shí)有點(diǎn)像特征提取,因?yàn)榫S度壓縮其實(shí)就是先看看哪一個(gè)特征重要,然后把重要的特征留下了,不重要的去掉,比較有代表性的就是PCA,autoencode,matrix factorization,這種方法可以把數(shù)據(jù)從高緯度降到低緯度是很有用的。

順帶提一下,decision stump是遍歷所有的維度看看哪一個(gè)維度分開的purity是最小的,random forest可以進(jìn)行特征的重要性選擇,通常也是隨機(jī)選擇一兩個(gè)或者是做OOB特征重要性選擇得到重要的特征。
總結(jié)一下特征處理的方法:
特征轉(zhuǎn)換:可以使用kernel,aggregation
特征提取:matrix factorization,autoencode
降維:PCA,autoencode
Error Optimization Techniques
對(duì)于Ein的優(yōu)化,首先第一個(gè)就是梯度下降或者是梯度上升,這兩個(gè)方法都是比較常用的一次逼近方法,SGD、Steepest Descent和Functional GD都是利用了梯度下降的技巧。

除了梯度下降,還有一些是做不了的,比如SVM的dual problem和α的求解,都是需要數(shù)學(xué)上的一些推導(dǎo)和技巧來轉(zhuǎn)換成其他形式之后再處理。

如果原始問題比較復(fù)雜,可以拆分求解,拆分成多個(gè)子問題進(jìn)行求解,比如multi-stage。另外也可以使用交叉迭代,matrix factorization的優(yōu)化方法就是一種。剛剛拆分子問題的也就是分而治之的方法就是decision tree了。

最后再來探討一下梯度下降方法,梯度下降是一次逼近的方法,意味著他只是求了一次導(dǎo)數(shù),也就是Taylor展開一次,它的視野就只能看到一階的地方,所以他選取的方向就是一階的方向而已。對(duì)于另外一種optimization 方法牛頓法就不太一樣。牛頓法的是二次逼近,意味著牛頓法它看的更加遠(yuǎn),看的是再二次導(dǎo)數(shù)的地方哪個(gè)是最遠(yuǎn)的,當(dāng)然牛頓法也可以Taylor三次展開,但是一般都是二次了,所以牛頓法比梯度下降迭代的更加快,因?yàn)樗吹母舆h(yuǎn),走的就更加穩(wěn)。
Overfitting Elimination Techniques
Feature Exploitation Techniques和Error Optimization Techniques都是為了優(yōu)化復(fù)雜模型減小Ein,但是Ein過小就會(huì)造成overfitting的問題。因此機(jī)器學(xué)習(xí)中過擬合的處理是非常重要的。
處理過擬合的方法之前介紹過:large margin,regularization,voting。

除了上面提到的方法,還可以使用validation來處理

這個(gè)章節(jié)的東西比較少,也沒有什么代碼,是看機(jī)器學(xué)習(xí)技法課程最后一張總結(jié)的了,最后貼一下十大data mining算法:
