與處理影象一樣,也是首先要文字向量化,模型只能作用於文字tensor。
分詞方法:
1文字分割為單詞(分解得到的單元稱為標記:token)————分詞過程
2文字分割為字元(分解得到的單元稱為標記:token)————分詞過程
3利用詞袋法(bag of words )提取單詞或字元的n-gram,並將n-gram轉換成乙個向量。n-gram是多個連續單詞或字元的集合。————傳統的特徵工程手段
文字向量化方法:
1.one-hot編碼:得到的向量是二進位制的,稀疏的,高維度,硬編碼。編碼方式人為地架起了詞之間的鴻溝。
2.詞嵌入(詞向量):word embedding (word2vector),低維的浮點數向量,密集。比如每個單詞用乙個長度為8 的浮點向量表示。
直接用隨機向量擬合token到向量的對映:顯然難度很大,因為很機械,無法保持單詞之間的距離的意義,更不用說甚至嵌入空間中的特定方向也是有用的。
理想詞嵌入空間:尚未發現。
合理做法:對每個新任務學習乙個新的嵌入空間。
某種程度上講,word2vec就是nlp得以發展的基礎。
python深度學習6 1 處理文字資料
預訓練的詞嵌入 我們對解壓後的檔案 乙個 txt 檔案 進行解析,構建乙個將單詞 字串 對映為其向 量表示 數值向量 的索引。清單 6 10 解析 glove 詞嵌入檔案 glove dir users fchollet downloads glove.6b embeddings index f o...
深度學習筆記整理 6 1 處理文字資料
一般而言,我們若想處理文字資料,一種是將文字資料轉為one hot向量處理,另一種是轉為下標組成的向量然後通過一層詞嵌入轉為待處理的向量。keras內建的函式可以快速幫助我們達到目的 首先我們需要引入tokenizer from keras.preprocessing.text import tok...
python處理文字資料
處理文字資料,主要是通過seris的str訪問。遇到nan時不做任何處理,保留結果為nan,遇到數字全部處理為nan。str是seris的方法,dataframe不能直接使用,但是通過索引選擇dataframe中的某一行或者某一列,結果為seris,然後就可以使用了。例如定義乙個seris和data...