一、特征工程定義
在數據預處理以后(或者數據預處理過程中),如何從數據中提取有效的特征,使這些特征能夠盡可能的表達原始數據中的信息,使得后續建立的數據模型能達到更好的效果,就是特征工程所要做的工作。
二、設計特征的方法
獨熱特征表示 One-hot Representation
將每個屬性表示成一個很長的向量(每維代表一個屬性值,如詞語)
函數:[0, 0, 1, 0, 0, …, 0, 0, 0, 0]
圖像:[0, 0, 0, 0, 0, …, 0, 0, 0, 1]
優點:直觀,簡潔
缺陷:
????????“維度災難” 問題:尤其是我們所構建的語料庫包含的詞語數據非常多的時候,獨熱表征在空間和時間上的開銷都是十分巨大的
????????“語義鴻溝” 現象:任意兩個詞之間都是完全孤立的,是無法刻畫句子中詞語的語序信息的(之前提到的詞袋模型也是如此)。例如,我們是無法通過獨熱表征來判斷“函數”與“偶函數”之間的聯系的(但實際上這兩個詞語是非常相關的)。
TF-IDF(詞頻-逆文檔率)
????????算法簡單高效,工業界用于最開始的數據預處理
????????主要思想:找到能代表該文檔中的“關鍵詞”
詞頻 (TF, Term Frequency)
????????TF = 某個詞(特征值)在句子(數據)中出現的頻率
逆文檔率 (IDF, Inverse Document Frequency)
????????IDF = log(語料庫(數據庫)的句子(數據)總數)?/ 包含該詞(特征值)的句子(數據)總數)
每個特征值(詞)的重要性
?
舉個直觀例子:
很多推薦系統都使用該方法,根據用戶搜索的信息內容,計算詞頻等,來推薦相關的信息
三、利用標準數據集進行特征學習(特征預訓練)
作用:模型效果驗證 & 應用問題中的模型預訓練
圖像數據預訓練:ImageNet
ImageNethttp://www.image-net.org/
????????????????1400萬張圖片數據,2萬類別,已標注
????????????????常用模型:ResNet,AlexNet,VGG等
????????????????常見應用:圖像分類、目標檢測、目標定位,場景分類等
文本數據預訓練:Twitter,Wiki
GloVe: Global Vectors for Word RepresentationGloVe: Global Vectors for Word Representationhttps://nlp.stanford.edu/projects/glove/
????????????????2 Billon tweets, 27 Billion 詞數,1.2M 詞表
????????????????常用模型:CBOW,Skip-gram,Glove等Word2Vec模型
????????????????常見應用:文本分類,文本推理,翻譯等
?
訓練好的特征可以直接作為其他模型的輸入來使用
筆者時間問題,還是不把課程內容之外的特征工程評價這一塊拿上來。因為其中涉及損失函數(傳統特征工程)、CNN、RNN(深度學習)等方法,可以去有關機器學習、深度學習的課程,或者西瓜書、花書一類的經典教輔學習!
下一講又是全新的章節!加油!