【机器学习】逻辑回归特征的离散化与交叉
以下為綜合轉載。
連續特征離散化
有些特征雖然也是數值型的,但是該特征的取值相加相減是沒有實際意義的,那么該數值型特征也要看成離散特征,采用離散化的技術。
連續特征離散化主要分為有監督方法與無監督方法。
無監督方法:
無監督方法都具有的問題就是都需要人為規定劃分區間這個參數,常用的方法有分箱法和直觀劃分。
- 分箱法又分為等寬分箱法和等頻分箱法,其實從名字就能看出算法的做法了,前者指定定長的間隔將特征放入不同箱子內,后者根據頻率劃分箱子,這兩種做法都有一定的缺陷。
- 等寬分箱法對異常點比較敏感,比如數據正常范圍是30-60,現在出現了一個特征本來是30不小心讀取成了300,那么寬度會被拉長,實例就主要集中在前面的箱體中,后面的箱體幾乎沒有實例,解決的方法主要是設立閾值移除閾值以外的實例。
- 等頻分箱法的缺陷是完全按照頻率劃分會出現實例特征相同卻不在同一個箱體內的情況,解決辦法也很簡單,在劃分完成后進行微調就可完成。
- 直觀劃分法感覺就沒什么技術了,這個算法主要是根據經驗和美觀,常用的方法劃分出來肯定都是34267、64537這樣的數,但是人們一般都習慣看到30000、50000這樣的數,然后就是加上個人對數據的了解人為劃分。?如1-100歲可以劃分為:(0-18)未成年、(18-50)中青年、(50-100)中老年。
個人感覺無監督方法的連續特征離散化并不是很靠譜,原因就是不知道設計的目的單純考慮離散化對結果是更好還是更差這個不確定性太大了。
有監督方法:
- 1R方法:這個方法是分箱法的有監督版本,把前6個實例放入箱子中,然后后面實例放入箱子時,對比當前實例標簽與箱子中大部分實例標簽是否相同,如果相同放入,如果不相同,那么形成下一個6實例的新箱子,等到最后全部放入箱子中,將箱子中大多數實例標簽作為箱子的標簽,再將標簽相同的箱子合并。
- 基于卡方的離散方法:首先將數值特征的每個不同值看做一個區間對每對相鄰區間計算卡方統計量,如果大于閾值就合并,遞歸進行直到找不到卡方統計大于閾值的時候停止。
卡方計算方法?http://www.cnblogs.com/emanlee/archive/2008/10/25/1319569.html
- 基于熵的離散方法:其實就是照搬了決策樹的思路,使用合成的方法或者分裂的方法根據熵計算和閾值判定來決定合成或分裂。
為什么要做特征離散化
鏈接:https://www.zhihu.com/question/31989952/answer/54184582
來源:知乎
大概的理解:
李沐曾經說過:模型是使用離散特征還是連續特征,其實是一個“海量離散特征+簡單模型” 同 “少量連續特征+復雜模型”的權衡。既可以離散化用線性模型,也可以用連續特征加深度學習。就看是喜歡折騰特征還是折騰模型了。通常來說,前者容易,而且可以n個人一起并行做,有成功經驗;后者目前看很贊,能走多遠還須拭目以待。
對于特征的離散化,在CTR預估中通常還會使用GBDT+LR的方法,用GBDT產生稀疏特征后在放入LR中進行訓練,效果還不錯。
特征交叉
交叉從理論上而言是為了引入特征之間的交互,也即為了引入非線性性。是有實際意義的。
From:對于特征離散化,特征交叉,連續特征離散化非常經典的解釋
- 比如一個人是20歲,那么在編號為2的特征上面,它一直都是1,對籃球的廣告是1,對化妝品的廣告也是1,這樣訓練的結果得到的編號為2的權重的意義是——20歲的人點擊所有的廣告的可能性的都是這個權重,這樣其實是不合理的。
- 有意義的應該是,這個20歲的人,當廣告是跟體育相關的時候,它是一個值;當廣告跟保健品相關的時候,它又是一個值。這樣看起來才合理。如果這個不夠深刻,基于跟上面同樣的道理,性別這個特征也是一樣的,假如也做了上面的離散化操作,編號是12和13,12是男性,13是女性。這樣的話,對于一個男性/體育廣告組合來說,編號12的特征值為1,男性/化妝品的組合的編號12的特征值也是1。這樣也是不合理的。
- 怎么做到合理呢?以上面的性別的例子來說。編號12的特征值不取1,取值為該廣告在男性用戶上面的點擊率(即將性別與廣告這兩個特征相交叉),如對于男性/體育廣告的組合,編號12的特征的值為男性在體育廣告上面點擊率,這樣,編號為12的特征就變成了一個浮點數,這個浮點數的相加減是有意義的。
- 這樣的做法稱為特征的交叉,現在就是性別跟廣告的交叉得到的特征值。還有很多其他的方式可以進行交叉,目前工業上的應用最多的就是廣告跟用戶的交叉特征(編號為1的那個特征)、廣告跟性別的交叉特征,廣告跟年齡的交叉特征,廣告跟手機平臺的交叉特征,廣告跟地域的交叉特征。如果做得比較多,可能會有廣告主(每個廣告都是一個廣告主提交的一個投放計劃,一個廣告主可能會提交多個投放計劃)跟各個特征的交叉。
為什么要特征交叉
在業界,邏輯回歸模型之所以很受歡迎,主要是因為邏輯回歸模型本質是線性模型,實現簡單,易于并行,大規模拓展方便,迭代速度快,同時使用的特征比較好解釋。線性模型對于非線性關系缺乏準確刻畫,特征組合正好可以加入非線性表達,增強模型的表達能力。另外,基本特征可以認為是用于全局建模,組合特征更加精細,是個性化建模,因為在大規模離散LR中,單對全局建模會對部分樣本有偏,對每一樣本建模又數據不足易過擬合同時帶來模型數量爆炸(特征的維數災難),所以基本特征+組合特征兼顧了全局和個性化。
參考:
連續特征離散化的方法
連續特征的離散化:在什么情況下將連續的特征離散化之后可以獲得更好的效果?
對于特征離散化,特征交叉,連續特征離散化非常經典的解釋
總結
以上是生活随笔為你收集整理的【机器学习】逻辑回归特征的离散化与交叉的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【机器学习】逻辑回归小结
- 下一篇: 【机器学习】支持向量机面试知识点小结