數(shù)據(jù)類型
- 結(jié)構(gòu)化數(shù)據(jù) : 可以看作關(guān)系型數(shù)據(jù)庫(kù)的一張表,包含數(shù)值型和類別型兩種基本類型亮曹;
- 非結(jié)構(gòu)化數(shù)據(jù):非結(jié)構(gòu)化數(shù)據(jù)主要包括文本倍奢、圖像、音頻秦踪、視頻數(shù)據(jù),其包含的信息無(wú)法用一個(gè)簡(jiǎn)單的數(shù)值表示邦危,也沒(méi)有清晰的類別定義,并且每條數(shù)據(jù)的大小各不相同舍扰。
特征歸一化
為消除數(shù)據(jù)特征之間的量綱影響倦蚪,如身高和體重。
(1) 最大最小歸一化边苹,它對(duì)原始數(shù)據(jù)進(jìn)行線性變換陵且,使結(jié)果映射到[0, 1]的范圍,實(shí)現(xiàn)對(duì)原始數(shù)據(jù)的等比縮放个束;
(2)零均值歸一化:它會(huì)將原始數(shù)據(jù)映射到均值為0慕购、標(biāo)準(zhǔn)差為1的分布上。
- 為什么要對(duì)數(shù)值型的特征做歸一化茬底?
假設(shè)有兩種數(shù)值型的特征 x1[0,10] 沪悲,x2[0,3] 在學(xué)習(xí)速率相同的情況的下,x1的更新速度會(huì)大于x2阱表,需要較多的迭代才能找到最優(yōu)解殿如。如果將x1和x2歸一化到相同的數(shù)值區(qū)間后贡珊,優(yōu)化目標(biāo)的等值圖會(huì)變成圖1.1(b)中的圓形,x1和x2的更新速度變得更為一致涉馁,容易更快地通過(guò)梯度下降找到最優(yōu)解门岔。
- 歸一化適用情形
在實(shí)際應(yīng)用中,通過(guò)梯度下降法求解的模型通常是需要?dú)w一化的烤送,包括線性回歸寒随、邏輯回歸、支持向量機(jī)帮坚、神經(jīng)網(wǎng)絡(luò)等模型妻往。但對(duì)于決策樹模型則并不適用。
類別特征
除了決策樹等少數(shù)模型能直接處理字符串形式的輸入叶沛,對(duì)于邏輯回歸蒲讯、支持向量機(jī)等模型來(lái)說(shuō),類別型特征必須經(jīng)過(guò)處理轉(zhuǎn)換成數(shù)值型特征才能正確工作灰署。
處理類別特征
- 序號(hào)編碼 : 特征大小有意義
- onehot:通常用于處理類別間不具有大小關(guān)系的特征判帮。
對(duì)于類別取值較多的情況下使用獨(dú)熱編碼需要注意以下問(wèn)題。
(1)使用稀疏向量來(lái)節(jié)省空間溉箕。在獨(dú)熱編碼下晦墙,特征向量只有某一維取值為1,其他位置取值均為0肴茄。因此可以利用向量的稀疏表示有效地節(jié)省空間晌畅,并且目前大部分的算法均接受稀疏向量形式的輸入。
(2)配合特征選擇來(lái)降低維度寡痰。高維度特征會(huì)帶來(lái)幾方面的問(wèn)題抗楔。一是在K近鄰算法中,高維空間下兩點(diǎn)之間的距離很難得到有效的衡量拦坠;二是在邏輯回歸模型中连躏,參數(shù)的數(shù)量會(huì)隨著維度的增高而增加,容易引起過(guò)擬合問(wèn)題贞滨;三是通常只有部分維度是對(duì)分類入热、預(yù)測(cè)有幫助,因此可以考慮配合特征選擇來(lái)降低維度晓铆。 - 二進(jìn)制編碼:二進(jìn)制編碼本質(zhì)上是利用二進(jìn)制對(duì)ID進(jìn)行哈希映射勺良,最終得到0/1特征向量,且維數(shù)少于獨(dú)熱編碼骄噪,節(jié)省了存儲(chǔ)空間尚困。
高維特征組合的處理
若用戶的數(shù)量為m、物品的數(shù)量為n链蕊,那么需要學(xué)習(xí)的參數(shù)的規(guī)模為m×n尾组。在
互聯(lián)網(wǎng)環(huán)境下忙芒,用戶數(shù)量和物品數(shù)量都可以達(dá)到千萬(wàn)量級(jí),幾乎無(wú)法學(xué)習(xí)m×n規(guī)模的參數(shù)讳侨。在這種情況下呵萨,一種行之有效的方法是將用戶和物品分別用k維的低維向量表示(k<<m,k<<n),
其中跨跨, wij = wi' * wj',wi'和wj'分別表示xi和xj對(duì)應(yīng)的低維向量潮峦。在推薦問(wèn)題中,需要學(xué)習(xí)的參數(shù)的規(guī)模變?yōu)閙×k+n×k勇婴。熟悉推薦算法的同學(xué)很快可以看出來(lái)忱嘹,這其實(shí)等價(jià)于矩陣分解。所以耕渴,這里也提供了另一個(gè)理解推薦系統(tǒng)中矩陣分解的思路拘悦。
- 怎樣有效找到組合特征?
基于決策樹:每一條從根節(jié)點(diǎn)到葉節(jié)點(diǎn)的路徑都可以看成一種特征組合的方式橱脸。(可以使用梯度提升決策樹有效構(gòu)建)
文本表示模型
詞袋模型(Bag of Words)础米,TF-IDF(Term Frequency-Inverse Document Frequency),主題模型(Topic Model)添诉,詞嵌入模型(Word Embedding)屁桑。
1. 詞袋模型和N-gram模型
最基礎(chǔ)的文本表示模型是詞袋模型。顧名思義栏赴,就是將每篇文章看成一袋子詞蘑斧,并忽略每個(gè)詞出現(xiàn)的順序。具體地說(shuō)须眷,就是將整段文本以詞為單位切分開竖瘾,然后每篇文章可以表示成一個(gè)長(zhǎng)向量,向量中的每一維代表一個(gè)單詞花颗,而該維對(duì)應(yīng)的權(quán)重則反映了這個(gè)詞在原文章中的重要程度捕传。常用TF-IDF來(lái)計(jì)算權(quán)重,公式 TF-IDF(t,d)=TF(t,d)×IDF(t) 捎稚,
其中TF(t,d)為單詞t在文檔d中出現(xiàn)的頻率乐横,IDF(t)是逆文檔頻率求橄,用來(lái)衡量單詞t對(duì)表達(dá)語(yǔ)義所起的重要性今野,表示為
直觀的解釋是,如果一個(gè)單詞在非常多的文章里面都出現(xiàn)罐农,那么它可能是一個(gè)比較通用的詞匯条霜,對(duì)于區(qū)分某篇文章特殊語(yǔ)義的貢獻(xiàn)較小,因此對(duì)權(quán)重做一定懲罰涵亏。
通常宰睡,可以將連續(xù)出現(xiàn)的n個(gè)詞(n≤N)組成的詞組(N-gram)也作為一個(gè)單獨(dú)的特征放到向量表示中去蒲凶,構(gòu)成N-gram模型。另外拆内,同一個(gè)詞可能有多種詞性變化旋圆,卻具有相似的含義。在實(shí)際應(yīng)用中麸恍,一般會(huì)對(duì)單詞進(jìn)行詞干抽攘榍伞(Word Stemming)處理,即將不同詞性的單詞統(tǒng)一成為同一詞干的形式抹沪。
2. 主題模型
主題模型用于從文本庫(kù)中發(fā)現(xiàn)有代表性的主題(得到每個(gè)主題上面詞的分布特性)刻肄,并且能夠計(jì)算出每篇文章的主題分布。
3. 詞嵌入模型
詞嵌入是一類將詞向量化的模型的統(tǒng)稱融欧,核心思想是將每個(gè)詞都映射成低維間(通常K=50~300維)上的一個(gè)稠密向量(Dense Vector)敏弃。K維空間的每一維也可以看作一個(gè)隱含的主題,只不過(guò)不像主題模型中的主題那樣直觀噪馏。