simhashsimhash算法庫(kù)
專門針對(duì)中文文檔的simhash算法庫(kù)
簡(jiǎn)介
此項(xiàng)目用來(lái)對(duì)中文文檔計(jì)算出對(duì)應(yīng)的 simhash 值。 simhash 是谷歌用來(lái)進(jìn)行文本去重的算法,現(xiàn)在廣泛應(yīng)用在文本處理中。
特性
使用 CppJieba 作為分詞器和關(guān)鍵詞抽取器
使用 jenkins 作為 hash 函數(shù)
hpp 風(fēng)格,所有源碼都是 .hpp 文件里面,方便使用。 沒(méi)有鏈接,就沒(méi)有傷害。
依賴
g++ (version >= 4.1 recommended), or clang++ .
用法
mkdir build cd build cmake .. make
演示
./bin/simhash.demo
結(jié)果如下:
文本:"我是藍(lán)翔技工拖拉機(jī)學(xué)院手扶拖拉機(jī)專業(yè)的。不用多久,我就會(huì)升職加薪,當(dāng)上總經(jīng)理,出任CEO,走上人生巔峰。" 關(guān)鍵詞序列是: ["藍(lán)翔:11.7392", "CEO:11.7392", "升職:10.8562", "加薪:10.6426", "手扶拖拉機(jī):10.0089"] simhash值是: 17831459094038722629 100010110110和110001110011 simhash值的相等判斷如下: 海明距離閾值默認(rèn)設(shè)置為3,則isEqual結(jié)果為:0 海明距離閾值默認(rèn)設(shè)置為5,則isEqual結(jié)果為:1
詳情請(qǐng)看 src/main.cpp
客服
評(píng)論
圖片
表情
