最近在2018smp的乙個比賽中鍛鍊了一下,該任務為文字分類,重點在於辨別人類作者和機器所寫文章的不同,在一番仔細斟酌之後發現兩者之間的區別有以下3點:
(1)語序
機器所寫的可能想表達的是一樣的說法,是基於文字規則對抽取詞彙的排列,但是結果呈現在詞序的排序上卻會出現一些偏差,舉個栗子:
正確的句子:
這將是最好的未來 。
錯誤的句子:
這是將最好的未來 。
(2)語義
機器所寫的內容可能存在重複或者上下表達一致,也有出現多個文字內容的糅合,舉個例子:
南澳 i 號 涉嫌 武裝 走私 。 深圳 261 保障房 申請 戶 造假 被 處 5000 元 罰款 。 廣東 惠州 破獲 操縱 未成年人 犯罪團夥 頭目 判 死刑 。 廣州 花都 原 區委書記 ** 500 多 萬元 受審 ( 圖 ) 。
(3)語法
機器所寫的內容有時候會出現少部分的病句,而且在標點符號上也有使用不規範的情況。
對以上的特點,在語序方面採取訓練srilm模型並計算單個句子的困惑度作為特徵輸入,以下就是具體的流程。
srilm的主要目標是支援語言模型的估計和評測。估計是從訓練資料(訓練集)中得到乙個模型,包括最大似然估計及相應的平滑演算法;而評測則是從測試集中計算其困惑度。其最基礎和最核心的模組是n-gram模組,這也是最早實現的模組,包括兩個工 具:ngram-count和ngram,相應的被用來估計語言模型和計算語言模型的困惑度
1.所需要的依賴包
c/c++ compiler,gnu make,gnu gawk,gnu gzip,tcl
先提前安裝好
2.安裝srilm
選擇適合的版本,然後accept the license即可,解壓後記住自己的所放路徑(後面需要)
(2)修改srilm/makefile:
# srilm = /home/speech/stolcke/project/srilm/devel (原)
srilm = $(
pwd)
(3)修改srilm/common/makefile.machine.*:
所填的內容和本機硬體平台有關。可以在終端輸入一下命令檢視:
uname -i
比如我的機子是x86_64,那我修改的是makefile.machine.i686-m64這個檔案。
找到:
tcl_include =
tcl_library =
修改為:
tcl_include =
tcl_library =
no_tcl = x
找到: gawk = /usr/bin/awk
修改為:
gawk = /usr/bin/gawk
(4)編譯
在srilm目錄下輸入:
make world
(5)修改環境變數
export path=(你的安裝路徑):$path
(6)測試
在終端輸入:
make test
3.srilm的簡單使用
1:詞頻統計
ngram-count
-text trainfile.txt -order
3-write trainfile.count
其中-order
3為3-gram,trainfile.count為統計詞頻的文字
2:模型訓練
ngram-count
-read trainfile.count -order
3-lm trainfile.lm -interpolate
-kndiscount
其中trainfile.lm為生成的語言模型,-interpolate和-kndiscount為插值與折回引數
3:測試(困惑度計算)
ngram -ppl testfile.txt -order
3-lm trainfile.lm -debug
2> file.ppl
引數:-debug
0 只輸出整體情況
-debug
1 具體到句子
-degub
2 具體到每個詞的概率
人機文字分類特徵構造 主題分布
包含獲取並安裝第三方依賴的過程 sh build.sh cd model sh download model.sh 實驗過程 該demo檔案在終端下是能正常執行,不過在呼叫python介面時總會出現以下錯誤 若出現找不到libglog.so,libgflags.so等動態庫錯誤,請新增third p...
文字分類 特徵選擇
特徵選擇技術的比較 pso,pca和資訊增益 作為與基於pso的特徵選擇的比較,我們利用pca和資訊增益來減少我們問題的特徵空間的維度。主成分分析 pca 51 是一種有用的統計技術,通過減少維數來壓縮資料。它通過遺漏冗餘資訊找到高維資料中的模式並將其轉換為較低維度。pca通過計算協方差矩陣的特徵值...
文字分類特徵選擇方法
1 df documentfrequency 文件頻率 df 統計特徵詞出現的文件數量,用來衡量某個特徵詞的重要性 2 mi mutualinformation 互資訊法 互資訊法用於衡量特徵詞與文件類別直接的資訊量。如果某個特徵詞的頻率很低,那麼互資訊得分就會很大,因此互資訊法傾向 低頻 的特徵詞...