ホームページ >バックエンド開発 >PHPの問題 >PHP が SCW をロードできない場合はどうすればよいですか?

PHP が SCW をロードできない場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2021-09-06 09:06:231989ブラウズ

php は、正常にインストールされなかったため、scws を読み込めません。解決策は次のとおりです: 1. "scws-1.2.1.tar.bz2" を検索します。 2. "make install" を通じてインストールします。 3. scws PHP をインストールします。拡張子; 4. 語彙ライブラリをインストールします。

PHP が SCW をロードできない場合はどうすればよいですか?

この記事の動作環境: Windows 7 システム、PHP バージョン 5.4、Dell G3 コンピューター。

scws を php でロードできない場合はどうすればよいですか? オープンソース PHP 中国語単語分割システム SCWS のインストールと使用例 SCWS

1. SCWS の概要

SCWS は、Simple Chinese Word Segmentation (つまり、Simple Chinese Word Segmentation System) の頭字語です。

これは、単語頻度辞書に基づいた機械的な中国語単語分割エンジンであり、基本的に中国語テキストの段落全体を単語に正しく分割できます。 Word は中国語の最小の形態素単位ですが、英語のように単語をスペースで区切らずに表記するため、中国語の単語分割ではいかに正確かつ迅速に単語を分割するかが常に難しい問題でした。

SCWS は純粋な C 言語で開発されており、外部ライブラリ関数に依存しません。ダイナミック リンク ライブラリを直接使用してアプリケーションを埋め込むことができます。サポートされている中国語エンコーディングには、GBK、UTF-8 などが含まれます。さらに、PHP の単語分割機能を迅速かつ簡単に使用できるように、PHP 拡張モジュールが提供されています。

単語分割アルゴリズムには革新的な要素はあまりありませんが、独自に収集した単語頻度辞書を使用し、特定の固有名、人名、地名、デジタル時代、その他のルール認識を補完して、基本的な認識を実現します。範囲テストの精度は 90% ~ 95% であり、基本的に一部の小規模な検索エンジン、キーワード抽出などのニーズを満たすことができます。最初のプロトタイプ バージョンは 2005 年末にリリースされました。

SCWS は hightman によって開発され、BSD ライセンスの下でオープン ソースとしてリリースされ、ソース コードは github でホストされています。

2. scws のインストール

コードは次のとおりです:

# 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

3. scws PHP 拡張機能のインストール

コードは次のとおりです:

# 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

4 、シソーラスのインストール

コードは次のとおりです:

# 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

5. PHP サンプル コード。 SCWS 公式 API の詳細な説明を読むことができます。

コードは次のとおりです:

//实例化分词插件核心类
 $so = scws_new();
 //设置分词时所用编码
 $so->set_charset('utf-8');
 //设置分词所用词典(此处使用utf8的词典)
 $so->set_dict('/usr/local/scws/etc/dict.utf8.xdb');
 //设置分词所用规则
 $so->set_rule('/usr/local/scws/etc/rules.utf8.ini ');
 //分词前去掉标点符号
 $so->set_ignore(true);
 //是否复式分割,如“中国人”返回“中国+人+中国人”三个词。
 $so->set_multi(true);
 //设定将文字自动以二字分词法聚合
 $so->set_duality(true);
 //要进行分词的语句
 $so->send_text(“欢迎来到火星时代IT开发”);
 //获取分词结果,如果提取高频词用get_tops方法
 while ($tmp = $so->get_result())
 {
     print_r($tmp);
 }
 $so->close();

戻り配列結果の説明:

コードは次のとおりです:

word   _string_ 词本身 
idf        _float_ 逆文本词频 
off         _int_ 该词在原文本路的位置 
attr       _string_ 词性

推奨学習:《PHP ビデオ チュートリアル

以上がPHP が SCW をロードできない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。