人機文字分類特徵構造 困惑度計算

2021-08-21 07:15:46 字數 2388 閱讀 1683

最近在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 互資訊法 互資訊法用於衡量特徵詞與文件類別直接的資訊量。如果某個特徵詞的頻率很低,那麼互資訊得分就會很大,因此互資訊法傾向 低頻 的特徵詞...