思維導(dǎo)圖如下:
在機(jī)器學(xué)習(xí)應(yīng)用中,特征工程扮演重要的角色,可以說(shuō)特征工程時(shí)機(jī)器學(xué)習(xí)應(yīng)用的基礎(chǔ)。我們都知道塑煎,數(shù)據(jù)和特征決定了機(jī)器學(xué)習(xí)算法的上限,而模型和算法只是不斷逼近這個(gè)上限而已臭蚁。
1最铁、特征提取
特征提取是對(duì)原數(shù)據(jù)進(jìn)行變換的過(guò)程,我們首先將原始數(shù)據(jù)轉(zhuǎn)化為實(shí)向量垮兑。原始數(shù)據(jù)有很多類(lèi)型冷尉,比如數(shù)值類(lèi)型、離散類(lèi)型甥角、文本网严、圖像以及視頻等等识樱。將原始數(shù)據(jù)轉(zhuǎn)化為實(shí)向量后嗤无,對(duì)應(yīng)的特征空間不一定是最佳的特征空間。為了讓模型更好地學(xué)習(xí)到數(shù)據(jù)中隱藏的規(guī)律怜庸,可能還需要對(duì)特征進(jìn)行變換当犯。
對(duì)于特征提取,我們一般可以先進(jìn)行探索性數(shù)據(jù)分析割疾,然后針對(duì)不同類(lèi)型的特征嚎卫,采取不同的提取方法。
1.1 探索性數(shù)據(jù)分析
探索性數(shù)據(jù)分析(Exploratory Data Analysis,EDA)是采用各種技術(shù)在盡量少的先驗(yàn)假設(shè)條件下宏榕,探索數(shù)據(jù)內(nèi)部結(jié)構(gòu)和規(guī)律的一種數(shù)據(jù)分析方法或理念拓诸。
EDA技術(shù)通常分為兩類(lèi)。一類(lèi)是可視化技術(shù)麻昼,如箱形圖奠支、直方圖、多變量圖抚芦、鏈圖倍谜、帕累托圖迈螟、散點(diǎn)圖、莖葉圖尔崔、平行坐標(biāo)答毫、讓步比、多為尺度分析季春、目標(biāo)投影追蹤洗搂、主成分分析、多線性主成分分析载弄、降維蚕脏、非線性降維等。另一類(lèi)是定量技術(shù)侦锯,如樣本均值驼鞭、方差、分位數(shù)尺碰、峰度挣棕、偏度等。
1.2 數(shù)值特征
數(shù)值特征的數(shù)據(jù)具有實(shí)際測(cè)量意義亲桥,可分為離散型和連續(xù)型洛心。數(shù)值特征常用的處理方法有:
截?cái)?/strong>:保留重要信息的前提下對(duì)特征進(jìn)行截?cái)唷⒔財(cái)嗪蟮奶卣饕部煽醋鍪穷?lèi)別特征题篷。
二值化
分桶:常用的分桶方法有均勻分桶词身、分位數(shù)分桶。
縮放:常用的縮放方法又標(biāo)準(zhǔn)化縮放(均值為0番枚,方差為1)法严、最大最小值縮放、范數(shù)歸一化葫笼。
缺失值處理:處理方法常見(jiàn)的有補(bǔ)均值深啤、補(bǔ)中位數(shù)或者直接丟棄
特征交叉:對(duì)兩個(gè)數(shù)值變量進(jìn)行加減乘除等操作。也可以通過(guò)FM路星、FFM等模型進(jìn)行自動(dòng)的特征交叉組合溯街。
非線性編碼:多項(xiàng)式核、高斯核或者使用樹(shù)模型的葉結(jié)點(diǎn)進(jìn)行非線性編碼洋丐。
行統(tǒng)計(jì)量:均值呈昔、方差、最大值友绝、最小值堤尾、偏度、峰度等九榔。
1.3 類(lèi)別特征
類(lèi)別特征也就是我們常說(shuō)的離散變量哀峻,常見(jiàn)的處理方法有:
自然數(shù)編碼:給每一個(gè)類(lèi)別分配一個(gè)編號(hào)涡相。
獨(dú)熱編碼:這是我們最常用的處理方法,即轉(zhuǎn)換為one-hot剩蟀。
分層編碼:對(duì)于郵政編碼或者身份證號(hào)等類(lèi)別特征催蝗,可以取不同位數(shù)進(jìn)行分層,然后按層次進(jìn)行自然數(shù)編碼育特。
散列編碼:對(duì)于取值特別多的類(lèi)別特征丙号,可以先使用散列函數(shù)進(jìn)行散列操作,避免特別系數(shù)缰冤。
計(jì)數(shù)編碼:將類(lèi)別特征用其對(duì)應(yīng)的計(jì)數(shù)來(lái)代替犬缨。
計(jì)數(shù)排名編碼:利用計(jì)數(shù)的排名對(duì)類(lèi)別特征進(jìn)行編碼
目標(biāo)編碼:基于目標(biāo)變量對(duì)類(lèi)別特征進(jìn)行編碼
類(lèi)別特征之間交叉組合
類(lèi)別特征和數(shù)值特征之間交叉組合
1.4 時(shí)間特征
常用的時(shí)間特征有:年、月棉浸、日怀薛、時(shí)、分迷郑、秒枝恋、星期幾、年的第幾天嗡害、一天過(guò)了多少分鐘焚碌、季度、是否閏年霸妹、是否季度初十电、是否季度末、是否周末叹螟、是否月度末鹃骂、是否營(yíng)業(yè)時(shí)間、是否節(jié)假日首妖。
還有一種時(shí)間特征是基于滑動(dòng)窗口的統(tǒng)計(jì)特征偎漫。
1.5 空間特征
經(jīng)緯度爷恳、行政區(qū)ID有缆、街道、城市温亲、距離等等棚壁。
1.6 文本特征
對(duì)文本特征進(jìn)行預(yù)處理,我們常用的流程有:將字符轉(zhuǎn)換為小寫(xiě)栈虚、分詞袖外、去除無(wú)用字符、詞性標(biāo)注魂务、提取詞根曼验、拼寫(xiě)糾錯(cuò)泌射、詞干提取、標(biāo)點(diǎn)符號(hào)編碼鬓照、文檔特征熔酷、實(shí)體插入和提取、Word2Vec豺裆、文本相似性拒秘、去除停止詞、去除稀有詞臭猜、TF-IDF躺酒、LDA、LSA等蔑歌。
2羹应、特征選擇
特征選擇是從我們提取的特征集合中選出一個(gè)子集。特征選擇的目的有三個(gè):
1次屠、簡(jiǎn)化模型量愧,使模型更易于研究人員和用戶(hù)理解
2、改善性能
3帅矗、改善通用型偎肃、降低過(guò)擬合風(fēng)險(xiǎn)。
常用的特征選擇方法有三類(lèi):過(guò)濾方法浑此、封裝方法和嵌入方法累颂。
2.1 過(guò)濾方法
使用過(guò)濾方法進(jìn)行特征選擇不需要依賴(lài)于機(jī)器學(xué)習(xí)算法。主要分為單變量過(guò)濾方法和多變量過(guò)濾方法凛俱。常見(jiàn)的過(guò)濾方法有:
覆蓋率計(jì)算每個(gè)特征的覆蓋率紊馏。
皮爾遜相關(guān)系數(shù):計(jì)算兩個(gè)特征之間的相關(guān)性。
Fisher得分:用于分類(lèi)問(wèn)題蒲犬,好的特征應(yīng)該在同一類(lèi)別中取值比較相似朱监,不同類(lèi)別中差異較大。
假設(shè)檢驗(yàn)
互信息:在概率論或者信息論中原叮,互信息用來(lái)度量?jī)蓚€(gè)變量之間的相關(guān)性赫编。互信息越大表明兩個(gè)變量相關(guān)性越高奋隶。
最小冗余最大相關(guān)性:對(duì)根已選擇特征的相關(guān)性較高的冗余特征進(jìn)行懲罰擂送。
相關(guān)特征選擇CFS:好的特征集合包含給目標(biāo)變量非常相關(guān)的特征,但這些特征之間彼此不相關(guān)唯欣。
2.2 封裝方法
封裝方法直接使用機(jī)器學(xué)習(xí)算法評(píng)估特征子集的效果嘹吨。
常用的封裝方法有:
完全搜索
啟發(fā)式搜索:序列前向選擇和序列后向選擇
隨機(jī)搜索
2.3 嵌入方法
嵌入方法將特征選擇過(guò)程嵌入到模型的構(gòu)建過(guò)程中。
常用的方法有LASSO回歸境氢、嶺回歸蟀拷、樹(shù)方法碰纬。
對(duì)于特征選擇方法,總結(jié)如下: