當(dāng)一個(gè)模型中有成千上萬的特征時(shí),這時(shí)候應(yīng)該如何做特征選擇呢俘侠?
1.盡量使用LR而非XGB
高維稀疏特征lr 的效果會(huì)比 gbdt 好
每次都根據(jù)當(dāng)前節(jié)點(diǎn)最大熵分割來選擇變量那么,高維稀疏數(shù)據(jù)集里很多“小而美”的數(shù)據(jù)就被丟棄了
比如你買葉酸捎废,買某些小的孕婦用品品類舒萎,對(duì)應(yīng)這些人6個(gè)月后買奶粉概率高達(dá)40%,但葉酸和孕婦用品銷量太小了鳍置,用戶量全網(wǎng)萬分之一都不到辽剧,這種特征肯定是被樹算法舍棄的,哪怕這些特征很多很多
理想情況下時(shí)將特征放入模型中看模型的表現(xiàn)是否有提高税产,但這樣的做法不太經(jīng)濟(jì)怕轿。需要大量的次數(shù)。
forward feature selection:
is a heuristic that significantly reduces the number of models that we need to learn. We begin with an empty model and then on each iteration of the algorithm we choose a feature that gives the best performance when added to the current set of feature
有些變量單獨(dú)看對(duì)結(jié)果不重要辟拷,但是和其他變量一起可能會(huì)對(duì)結(jié)果有影響撞羽,所以用forward-backward方式篩選變量不太好。
模型篩選變量的方式有問題衫冻,在樹模型中重要的變量不一定在logistic regression中重要诀紊。
lasso:
lasso篩選變量會(huì)在一組的共線變量中選擇一個(gè),這樣會(huì)導(dǎo)致結(jié)果不穩(wěn)定羽杰。當(dāng)有一組共線的變量時(shí)渡紫,lasso傾向于選擇一組而忽略其他。
當(dāng)特征的數(shù)量大于樣本數(shù)量時(shí)考赛,lasso只能選擇和樣本n一樣的數(shù)據(jù)惕澎。
elasticNet :
l1部分產(chǎn)生稀疏性。
l2部分去除對(duì)n數(shù)量的限制颜骤,鼓勵(lì)組的效應(yīng)唧喉,穩(wěn)定l1正則
reference https://web.stanford.edu/~hastie/
在統(tǒng)計(jì)分析中,如果存在共線性忍抽,則無法區(qū)分他們對(duì)變量的影響
而所謂的多重共線性八孝,是指 predictor variable 之間的關(guān)系,當(dāng)預(yù)測(cè)變量間有跟高的相關(guān)度時(shí)鸠项,會(huì)造成信息冗余干跛,影響回歸模型的結(jié)果。檢測(cè)的方法是計(jì)算所有 predictor variable pairs 間的相關(guān)系數(shù)祟绊。
2.決策樹篩選變量對(duì)結(jié)果的影響
1.決策樹篩選的變量之間的獨(dú)立性可能不夠楼入,因?yàn)闆Q策樹每次選擇變量時(shí)不會(huì)考慮變量和其他變量的相關(guān)性。所以牧抽,如果其他模型自變量的相關(guān)性很敏感嘉熊,用決策樹篩選變量時(shí)需要檢查變量的相關(guān)性。
2.如果為回歸模型篩選變量扬舒,需要注意阐肤,決策樹篩選出的變量和因變量之間的關(guān)系可能不具有單調(diào)性,因此用在回歸模型中可能并不好用。這樣的變量可以不用孕惜,或者進(jìn)行離散化處理愧薛。
注:
(1):如果訓(xùn)練集的樣本是分層抽樣的,即抽樣中各類別的比例和原始數(shù)據(jù)不同诊赊,那么厚满,模型結(jié)果顯示的屬于某一類的概率也是不準(zhǔn)確的。這時(shí)碧磅,概率排名是有意義的碘箍,但概率本身沒有意義。
(2):使用決策樹直接預(yù)測(cè)記錄屬于哪個(gè)類別并不好用鲸郊,因?yàn)閷?duì)于很多情況下丰榴,記錄屬于某個(gè)類別的比例特別低,而這個(gè)特別低比例的記錄卻是用戶真正感興趣的記錄秆撮。需要根據(jù)預(yù)測(cè)出來的概率來做進(jìn)一步的判斷