溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在php中安裝與使用SCWS中文分詞系統(tǒng)

發(fā)布時(shí)間:2021-02-25 16:47:53 來源:億速云 閱讀:122 作者:Leah 欄目:開發(fā)技術(shù)

怎么在php中安裝與使用SCWS中文分詞系統(tǒng)?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。

一、SCWS簡(jiǎn)介

SCWS 是 Simple Chinese Word Segmentation 的首字母縮寫(即:簡(jiǎn)易中文分詞系統(tǒng))。
這是一套基于詞頻詞典的機(jī)械式中文分詞引擎,它能將一整段的中文文本基本正確地切分成詞。 詞是中文的最小語素單位,但在書寫時(shí)并不像英語會(huì)在詞之間用空格分開, 所以如何準(zhǔn)確并快速分詞一直是中文分詞的攻關(guān)難點(diǎn)。
SCWS 采用純 C 語言開發(fā),不依賴任何外部庫函數(shù),可直接使用動(dòng)態(tài)鏈接庫嵌入應(yīng)用程序, 支持的中文編碼包括 GBK、UTF-8 等。此外還提供了 PHP 擴(kuò)展模塊, 可在 PHP 中快速而方便地使用分詞功能。
分詞算法上并無太多創(chuàng)新成分,采用的是自己采集的詞頻詞典,并輔以一定的專有名稱,人名,地名, 數(shù)字年代等規(guī)則識(shí)別來達(dá)到基本分詞,經(jīng)小范圍測(cè)試準(zhǔn)確率在 90% ~ 95% 之間, 基本上能滿足一些小型搜索引擎、關(guān)鍵字提取等場(chǎng)合運(yùn)用。首次雛形版本發(fā)布于 2005 年底。
SCWS 由 hightman 開發(fā), 并以 BSD 許可協(xié)議開源發(fā)布,源碼托管在 github。

二、scws安裝

復(fù)制代碼 代碼如下:


# wget -c http://www.xunsearch.com/scws/down/scws-1.2.1.tar.bz2
# tar jxvf scws-1.2.1.tar.bz2
# cd scws-1.2.1
# ./configure --prefix=/usr/local/scws
# make && make install

三、scws的PHP擴(kuò)展安裝

復(fù)制代碼 代碼如下:


# cd ./phpext
# phpize
# ./configure --with-php-config=/usr/local/php5410/bin/php-config
# make && make install
# echo "[scws]" >> /usr/local/php5410/etc/php.ini
# echo "extension = scws.so" >> /usr/local/php5410/etc/php.ini
# echo "scws.default.charset = utf-8" >> /usr/local/php5410/etc/php.ini
# echo "scws.default.fpath = /usr/local/scws/etc/" >> /usr/local/php5410/etc/php.ini

四、詞庫安裝

復(fù)制代碼 代碼如下:


# wget http://www.xunsearch.com/scws/down/scws-dict-chs-utf8.tar.bz2
# tar jxvf scws-dict-chs-utf8.tar.bz2 -C /usr/local/scws/etc/
# chown www:www /usr/local/scws/etc/dict.utf8.xdb

五、php實(shí)例代碼??梢栽敿?xì)看下SCWS官方API說明

復(fù)制代碼 代碼如下:


//實(shí)例化分詞插件核心類
 $so = scws_new();
 //設(shè)置分詞時(shí)所用編碼
 $so->set_charset('utf-8');
 //設(shè)置分詞所用詞典(此處使用utf8的詞典)
 $so->set_dict('/usr/local/scws/etc/dict.utf8.xdb');
 //設(shè)置分詞所用規(guī)則
 $so->set_rule('/usr/local/scws/etc/rules.utf8.ini ');
 //分詞前去掉標(biāo)點(diǎn)符號(hào)
 $so->set_ignore(true);
 //是否復(fù)式分割,如“中國(guó)人”返回“中國(guó)+人+中國(guó)人”三個(gè)詞。
 $so->set_multi(true);
 //設(shè)定將文字自動(dòng)以二字分詞法聚合
 $so->set_duality(true);
 //要進(jìn)行分詞的語句
 $so->send_text(“歡迎來到火星時(shí)代IT開發(fā)”);
 //獲取分詞結(jié)果,如果提取高頻詞用get_tops方法
 while ($tmp = $so->get_result())
 {
     print_r($tmp);
 }
 $so->close();


返回?cái)?shù)組結(jié)果說明:

復(fù)制代碼 代碼如下:


word   _string_ 詞本身 
idf        _float_ 逆文本詞頻 
off         _int_ 該詞在原文本路的位置 
attr       _string_ 詞性

關(guān)于怎么在php中安裝與使用SCWS中文分詞系統(tǒng)問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI