日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 服務器 > 一些常見的特征選擇方法

一些常見的特征選擇方法

來源:程序員人生   發布時間:2016-11-10 09:10:58 閱讀次數:3478次

現實中產生的特點維度可能很多,特點質量良莠不齊,不但會增加訓練進程的時間,也可能會下降模型質量。因此,提取出最具代表性的1部份特點來參與訓練就很重要了。
通常有特點抽取和特點選擇兩種方法。這里分別介紹1下。

特點抽取

特點抽取中最多見確當屬PCA了。

PCA

對特點之間存在正交關系,數據滿足高斯散布或指數散布的數據,作線性變換,使用方差、協方差去噪,生成新的主元,接下來按重要性排序后取少數參與訓練,到達減少特點的目的。
這里最重要的思想是把多個特點進行線性變換,使用較少的特點表達原來多個特點的主要特點。
由于現實中獲得的數據絕大部份滿足高斯散布,所以PCA利用極廣。

人臉辨認利用
將多幅同1人的人臉圖象進行PCA變換,找到代表人臉的主要特點模型。當有新的人臉需要辨認時,進行相同變換,并與已存在的人臉特點模型進行匹配。

原理講授參考文檔
http://www.360doc.com/content/10/0318/20/1024901_19297267.shtml

R利用方法

//PCA方案1:用SVD實現 pca1<-prcomp(USArrests, scale = TRUE) //PCA方案2:采取線性代數中的實對稱均值的對角化實現 pca2<-princomp(USArrests,cor=T) summary(pc1)

summary的輸出為:

Importance of components:
PC1 PC2 PC3 PC4
Standard deviation 1.5749 0.9949 0.59713 0.41645
Proportion of Variance 0.6201 0.2474 0.08914 0.04336
Cumulative Proportion 0.6201 0.8675 0.95664 1.00000

上面3行分別為標準差,方差貢獻率,累計方差貢獻率。
根據上面的數據,至PC3時,累計方差貢獻率已達0.95664,因此只取前3個特點已足夠。

特點選擇

特點選擇主要有Filter、Wrapper、Embedded等幾種不同的思路。這里主要寫寫Filter。

卡方檢驗

在有不同特點值的影響下,對兩組目標變量作卡方檢驗,計算x2值,看兩組數據是不是有統計學上的明顯差異。

這里給出R中的代碼例子。

1、使用卡方檢驗判斷患者醫治方式對醫治效果的影響

library(vcd)//加載vcd數據包 //準備進行卡檢驗所需的數據,提取醫治方式與醫治效果 mytable<-xtabs(~Treatment+Improved,data=Arthritis) //對mytable進行卡方檢驗 chisq.test(mytable)

以下是輸出結果

Pearson's Chi-squared test

data: mytable
X-squared = 13.055, df = 2, p-value = 0.001463

p < 0.01,可以判斷患者接受的醫治方式對醫治效果有明顯影響。

2、使用卡方檢驗判斷患者的性別對醫治效果的影響

library(vcd)//加載vcd數據包 //準備進行卡檢驗所需的數據,提取患者性別與醫治效果 mytable<-xtabs(~Improved+Sex,data=Arthritis) //對mytable進行卡方檢驗 chisq.test(mytable)

以下是輸出結果

Pearson's Chi-squared test

data: mytable
X-squared = 4.8407, df = 2, p-value = 0.08889

p > 0.05,可以判斷患者的性別對醫治效果無明顯影響。

上面的實驗中,p值表示不同列之間的相互獨立的幾率。
在1中,由于p值很小,所以謝絕了醫治方式與醫治效果之間相互獨立的假定。
在2中,由于p值不夠小,所以沒法謝絕性別與醫治效果之間相互獨立的假定。

WOE、IV

預測目標變量所需的信息總量包含在所有的特點中,某個特點所包含信息量(IV值)越大,則越重要。
IV值的計算以WOE為基礎。
詳細的概念、原理及公式可以參考這篇文章
數據發掘模型中的IV和WOE詳解:
http://www.17bigdata.com/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98%E6%A8%A1%E5%9E%8B%E4%B8%AD%E7%9A%84iv%E5%92%8Cwoe%E8%AF%A6%E8%A7%A3.html

接下來看看R中的利用

//安裝和加載woe包。 install.packages("woe") library(woe) //計算數據集mtcars中,cyl這1列對目標變量am的woe值和iv值。 woe(Data=mtcars,"cyl",FALSE,"am",10,Bad=0,Good=1)

以下是輸出結果

BIN BAD GOOD TOTAL BAD% GOOD% TOTAL% WOE IV BAD_SPLIT GOOD_SPLIT
1 4 3 8 11 0.158 0.615 0.344 135.9 0.621 0.273 0.727
2 6 4 3 7 0.211 0.231 0.219 9.1 0.002 0.571 0.429
3 8 12 2 14 0.632 0.154 0.438 ⑴41.2 0.675 0.857 0.143

//計算數據集mtcars中,mpg這1列對目標變量am的woe值和iv值。 woe(Data=mtcars,"mpg",TRUE,"am",10,Bad=0,Good=1)

以下是輸出結果

BIN MIN MAX BAD GOOD TOTAL BAD% GOOD% TOTAL% WOE IV BAD_SPLIT GOOD_SPLIT
1 1 10.4 14.3 4 0 4 0.211 0.000 0.125 -Inf Inf 1.00 0.00
2 2 14.7 15.2 3 1 4 0.158 0.077 0.125 ⑺1.9 0.058 0.75 0.25
3 3 15.5 17.3 3 1 4 0.158 0.077 0.125 ⑺1.9 0.058 0.75 0.25
4 4 17.8 19.2 4 0 4 0.211 0.000 0.125 -Inf Inf 1.00 0.00
5 5 19.2 21.0 1 3 4 0.053 0.231 0.125 147.2 0.262 0.25 0.75
6 6 21.4 22.8 2 2 4 0.105 0.154 0.125 38.3 0.019 0.50 0.50
7 7 22.8 27.3 2 2 4 0.105 0.154 0.125 38.3 0.019 0.50 0.50
8 8 30.4 33.9 0 4 4 0.000 0.308 0.125 Inf Inf 0.00 1.00

信息熵與信息增益

信息的熵,表示不肯定性。
在1個數據集中,先對目標分類變量進行熵的計算,再對目標分類變量按某1個特點值進行分組落后行1次熵的計算,兩次熵值之差就是該特點值的信息增益。特點值的信息增益越大,表示該特點值的重要性越高。
這里有1個條件,即,目標變量是1個分類變量。

這里使用R語言代碼作個說明
我原來寫過1篇老太太買菜與最大熵模型
1個老太太去買菜,市場上可供選擇的東西有以下幾種:西紅柿(1)、白菜(2)、豆腐(3)、咸菜(4)、饅頭(5)、西瓜(6)、櫻桃(7)、蘋果(8)、豬肉(10)、牛肉(11)、羊肉(12)。不給出任何其它信息之前,我們沒法判斷老太太今天會買甚么菜。此時熵值最大,為

install.packages("entropy") library(entropy) y<-c(1,2,3,4,5,6,7,8,9,10,11,12) //使用max likehood方式計算熵值 entropy(y,method = "ML")//輸出值為:2.327497

接下來,在給出4條老太太買菜習慣的信息后,我們發現老太太今天只可能會買櫻桃或西瓜。
此時不肯定性變小,熵值變小,為:

y<-c(6,7) entropy(y,method = "ML")//輸出值為:0.6901857

因此,4條老太太買菜習慣的信息增閃為:2.327497-0.6901857=1.637311

Gini指數

這個指標同信息增益原理類似,哪一個特點對Gini指數貢獻大,哪一個特點重要。

給出R語言實現
不給出任何信息時,Gini指數為:

install.packages("ineq") library(ineq) y<-c(1,2,3,4,5,6,7,8,9,10,11,12) Gini(y)//輸出結果為:0.3055556

給出4個買菜習慣信息后,Gini指數為:

y<-c(6,7) Gini(y)//輸出結果為:0.03846154

相干性

數據集中的兩個特點之間存在共線性,即較強的線性關系,就存在冗余,在終究訓練時只使用其中1個就足夠。

這里列出1些衡量相干性的值。

1、協方差與相干系數。
這兩個值描寫的是兩個變量與各自期望值之間的誤差是不是變動1致,它們之間可以相互轉換,1般使用相干系數較多。相干系數范圍為[⑴,1],其中⑴代表完全負相干,1代表完全正相干,0代表完全獨立。

這里列出R利用方法

//計算兩列數據之間的相干系數 cor(mtcars$cyl,mtcars$disp,method = "pearson")//輸出值為:0.9020329,表示兩列數據正相干 cor(mtcars$mpg,mtcars$disp,method = "pearson")//輸出值為:-0.8475514,表示負相干 //計算兩列數據之間的協方差 cov(mtcars$cyl,mtcars$disp,method = "pearson")//輸出值為:199.6603 cov(mtcars$mpg,mtcars$disp,method = "pearson")//輸出值為:⑹33.0972

method取值有3種:
pearson:適用于連續變量,如分析血壓值和年齡的相干性。
spearman:適用于順序數據,如分析數學和語言成績排名相干性。
kendall:適用于有序分類變量,如分析疼痛級別分類和病情嚴重程序分類。

2、偏相干
當數據集中的特點很多時,兩個特點之間的相干性會遭到很多其它特點的影響。在排除掉其它特點的影響以后,計算出來的兩個特點的相干性系數,叫偏相干系數。
在特點z固定的條件下,分析x、y的相干性,得到的是1階偏相干系數,在特點z、q固定的條件下,得到的是2階偏相干系數。

這里給出R利用

library(ggm) data("marks")//加載marks數據集 var(marks)//計算marks數據集的方差矩陣 //計算固定analysis,statistics時,vectors和algebra的2階偏相干系數 pcor(c("vectors", "algebra", "analysis", "statistics"), var(marks))//輸出結果為:0.388203 pcor(c(2,3,4,5), var(marks))//與上1句代碼意義相同 //偏相干系數的顯著性檢驗,入參分別為:偏相干系數,固定變量個數,樣本量 pcor.test(0.388203,2,dim(marks)[1])//輸出值p=0.0002213427,p<0.01,因此,在固定analysis,statistics時,vectors和algebra兩個特點存在明顯偏相干性

Lasso

Lasso的基本思想是在回歸系數的絕對值之和小于1個常數的束縛條件下,使殘差平方和最小化,從而能夠產生某些嚴格等于0的回歸系數,到達特點選擇的目的。

這里給出R中的利用例子

data(diabetes)//加載數據集diabetes //使用lasso進行特點選擇 lars(diabetes$x,diabetes$y,type="lasso")

輸出結果為:

Call:
lars(x = diabetesx,y=diabetesy)
R-squared: 0.518
Sequence of LASSO moves:
bmi ltg map hdl sex glu tc tch ldl age hdl hdl
Var 3 9 4 7 2 10 5 8 6 1 ⑺ 7
Step 1 2 3 4 5 6 7 8 9 10 11 12

Var行即是lasso給出的特點選擇順序,Setp行即時順序編號。

以下方法可以得到各特點的多重共線性:

data<-lars(diabetes$x,diabetes$y) summary(data)

輸出結果為:

LARS/LASSO
Call: lars(x = diabetesx,y=diabetesy)
Df Rss Cp
0 1 2621009 453.7263
1 2 2510465 418.0322
2 3 1700369 143.8012
3 4 1527165 86.7411
4 5 1365734 33.6957
5 6 1324118 21.5052
6 7 1308932 18.3270
7 8 1275355 8.8775
8 9 1270233 9.1311
9 10 1269390 10.8435
10 11 1264977 11.3390
11 10 1264765 9.2668
12 11 1263983 11.0000

按data中Step行指定的順序,順次選取特點,則Cp的值從上往下對應變化,Cp值越小,表示回歸模型越精確。
如果我們取前3個特點,則cp值為86.7411。如果取前7個特點,則Cp值為8.8775,到達最小。
因此,計算量允許的范圍內,取前7個特點進行訓練,得到的回歸模型最精確。如果要嚴格控制計算量,則取前3個特點便可。

參考文檔:
用R建立嶺回歸和lasso回歸
http://blog.csdn.net/jiabiao1602/article/details/39338181

總述

IV、信息增益、Gini增益主要用于單特點重要性評估。
Lasso主要用于超大范圍特點的降維挑選。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 久久精品 | 国产精品久久久久久久免费大片 | 中文字幕一区三区 | av无遮挡| 亚洲 欧美 视频 | 插插网站| 国产香蕉视频在线 | 五月婷婷网 | 免费视频二区 | 亚洲成人一区二区 | 久久久www| 欧美性猛交xxxx黑人交 | 国产一区二区三区四区www. | 国产在线小视频 | 91香蕉视频在线 | 色999日韩 | 久久久一二三 | 视频黄色片 | 午夜伦理影院 | 久久久久久高清 | 91成人国产| 久久中文网| 国产欧美久久一区二区三区 | 国产成人精品一区二 | 麻豆传媒在线视频 | 中文字幕 av在线 | 欧美精品成人 | 欧美专区一区 | 国产剧情一区二区 | 国产精品网站入口 | 日本一级在线观看 | 性疯狂做受xxxx高清视频 | 日本九九视频 | 福利一区二区 | xxx性欧美 | 成人免费观看视频大全 | 一区欧美 | 男人电影天堂 | 欧美精品区 | 日韩精品视频一区二区三区 | 九九热在线观看 |