百面機器學習總結--第一章特徵工程
Q1:為什麼需要對數值型別的特徵做歸一化
A:對數值型別的特徵做歸一化可以將所有特徵都統一到一個大致相同的數值區間內。常用的方法有
- 線形函式歸一化(Min-Max Scaling)。它對原始資料進行線形變換,使結果對映到[0,1]的範圍,實現對原始資料的等比縮放。
X n o r m = X − X m a x X m a x − X m i n X_{norm}=\frac{X-X{max}}{X_{max}-X_{min}} Xnorm=Xmax−XminX−Xmax - 零均值歸一化
z = x − u σ z=\frac{x-u}{\sigma} z=σx−u
為什麼要歸一化?
隨機梯度下降的時候,不同變數的更新速度不一樣,需要較多的迭代才能找到最優解。歸一化後,優化目標時,變數的更新速度變得更為一致,容易更快地通過梯度下降找到最優解。
Q2: 有哪些文字表示模型?它們各有什麼優缺點?
A:
- 詞袋模型和N-gram模型
詞袋模型就是一袋子詞,忽略每個詞出現的順序。將整段文字以詞為單位切分開,然後每篇文章可以表示成一個長向量,向量中的每一維代表一個單詞,而該維對應的權重反映了詞在原文章中的重要程度。
用TF-IDF來計算權重,公式為:
T
F
−
I
D
F
(
t
,
d
)
=
T
F
(
t
,
d
)
∗
I
D
F
(
t
)
TF-IDF(t,d) = TF(t,d) *IDF(t)
TF−IDF(t,d)=TF(t,d)∗IDF(t)
其中TF(t,d)為單詞t在文件d中出現的頻率,IDF(t)是逆文件頻率,用來衡量單詞t對錶達語義所起的重要性,表示為
I D F ( t ) = log ( 文 檔 總 數 包 含 單 詞 的 文 章 總 數 + 1 ) IDF(t)=\log(\frac{文件總數}{包含單詞的文章總數+1}) IDF(t)=log(包含單詞的文章總數+1文檔總數)
如果一個單詞在非常多的文章中出現,那麼可能是一個比較通用的詞彙,對於區分某篇文章特殊語義的貢獻較小,因此對權重做一定懲罰。
通常,可以將連續出現的n個詞(n<=N)組成的片語(N-gram)也作為一個單獨的特徵放到向量表示中去,構成N-gram模型。
- 主題模型
- 詞嵌入與深度學習模型
詞嵌入是一類將詞向量化的模型的同統稱,核心思想是將每個詞都對映成低維空間(通常K=50~300維)上的一個稠密向量。K維空間的每一維也可以看作一個隱含的主題,只不過不像主題模型中的主題那樣直觀。
一篇文件N個詞,就可以用一個N*K維的矩陣來表示這篇文件,但是這樣的表示過於底層。
深度學習自動進行特徵工程的方式,模型中的每個隱層都可以認為對應著不同抽象層次的特徵。
Q3: Word2Vec是如何工作的?它和LDA有什麼區別與聯絡?
A:CBOW是根據上下文出現的詞來預測當前詞的生成概率,而Skip-gram是根據當前詞來預測上下文中各詞的生成概率。
CBOW和Skip-gram都可以表示成由輸入層,對映層和輸出層組成的神經網路。
輸入層中的每個詞由獨熱編碼方式表示,即所有詞均表示成一個N維向量,其中N為詞彙表中單詞的總數。
在對映層(隱含層)中,K個隱含單元的取值可以由N維輸入向量以及連線輸入和隱含單元之間的N*K維權重矩陣計算得到。在CBOW中,還需要將各個輸入詞所計算出的隱含單元求和。
同理,輸出層向量的值可以通過因層向量(K維),以及連線隱含層和輸出層之間的K*N維權重矩陣計算得到。輸出層是N維向量,最後,輸出層向量應用softmax啟用函式,可以計算出每個單詞的生成概率。
接下來,訓練神經網路的權重,使得語料庫中所有單詞的整體生成概率最大化。但由於softmax啟用函式中存在歸一化項的緣故,推匯出來的迭代公式需要對詞彙表中的所有單詞進行遍歷,使得每次迭代過程非常緩慢。由此產生了Hierarchical Softmax和Negative Sampling 兩種改進方法。訓練得到維度為NK和KN的兩個權重矩陣之後,可以選擇其中一個作為N個詞的K維向量表示。
相關文章
- 美團機器學習實踐第二章-特徵工程總結機器學習特徵工程
- 機器學習 | 特徵工程機器學習特徵工程
- 機器學習——特徵工程機器學習特徵工程
- 機器學習特徵工程機器學習特徵工程
- 機器學習之特徵工程機器學習特徵工程
- 機器學習 特徵工程之特徵選擇機器學習特徵工程
- 機器學習2-特徵工程機器學習特徵工程
- 機器學習之特徵工程(一)機器學習特徵工程
- 面向機器學習的特徵工程一、引言機器學習特徵工程
- 專案總結 | 對【時間】構建的特徵工程特徵工程
- 掌握時間序列特徵工程:常用特徵總結與 Feature-engine 的應用特徵工程
- 機器學習中,有哪些特徵選擇的工程方法?機器學習特徵
- 機器學習處理流程、特徵工程,模型設計例項機器學習特徵工程模型
- 【演算法工程師】機器學習面試問題總結演算法工程師機器學習面試
- 特徵工程特徵工程
- SparkML機器學習之特徵工程(一)特徵提取(TF-IDF、Word2Vec、CountVectorizer)Spark機器學習特徵工程
- 機器學習-特徵提取機器學習特徵
- 【Meetup預告】OpenMLDB+OneFlow:連結特徵工程到模型訓練,加速機器學習模型開發特徵工程模型機器學習
- 特徵工程之特徵表達特徵工程
- 特徵工程之特徵選擇特徵工程
- 特徵選擇技術總結特徵
- 特徵工程梗概特徵工程
- 特徵工程思路特徵工程
- 機器學習總結 (機器學習實踐筆記)機器學習筆記
- 機器學習-步驟總結機器學習
- 機器學習基礎總結機器學習
- 08 特徵工程 - 特徵降維 - LDA特徵工程LDA
- 特徵工程之特徵預處理特徵工程
- 第一章(1.2) 機器學習演算法工程師技能樹機器學習演算法工程師
- 面經總結
- 在大型金融資料集上使用機器學習的特徵工程測試機器學習特徵工程
- 機器學習的靜態特徵和動態特徵機器學習特徵
- [特徵工程] encoding特徵工程Encoding
- 特徵工程:互動特徵與多項式特徵理解特徵工程
- 為什麼說自動化特徵工程將改變機器學習的方式特徵工程機器學習
- CMake VS工程總結
- 軟體工程總結軟體工程
- 機器學習問題方法總結機器學習