Python3 で pyhanlp をインストールするための最適なソリューション

1. Hanlp の概要

Hanlp は中国語の自然言語処理ツールです。Hanlp は、単語分割、品詞タグ付け、固有表現認識、依存関係構文分析、センチメント分析、テキスト分類などを含む、さまざまな自然言語処理タスクをサポートします。その主な利点は次のとおりです。

  1. 高い精度率:HanlpはCRFモデル単語分割を採用しており、現時点で非ディープラーニング手法の中で最高の単語分割効果があり、曖昧な単語や未知の単語に対する認識効果が高く、単語分割の精度と速度が効果的に向上します。 。
  2. 幅広い対応範囲: Hanlp は、単語分割、品詞タグ付け、固有表現認識、依存関係構文分析、センチメント分析、テキスト分類などを含むさまざまな自然言語処理タスクをサポートしており、ほとんどの自然言語処理に対応できます。ニーズ。
  3. 多言語サポート: Hanlp は中国語、英語、日本語などの複数言語の処理をサポートしており、多言語環境での自然言語処理タスクに適用できます。
  4. 統合が簡単: Hanlp は豊富な API インターフェイスとすぐに使えるモデルを提供し、Java プロジェクトに簡単に統合でき、Python、Go、C++ などの複数のプログラミング言語の使用をサポートします。

つまり、Hanlp は強力で統合が容易な中国語自然言語処理ツールであり、幅広いアプリケーション シナリオを備えています。

HanLP公式サイト

2. 問題の背景

最近、仕事で hanlp パッケージを使用する必要があるので、その道を歩き始めました...

ModuleNotFoundError: 「hanlp」という名前のモジュールがありませんエラー

pip install pyhanlp インストールエラー

 3. 解決策

ステップ 1: JPype1 をインストールします。ただし、インストールしてエラーを報告するには、 pip install JPype1 コマンドを使用します。

解決策: Python バージョンに対応する jypel のwhl を見つけて、ダウンロード リンク: https://www.lfd.uci.edu/~gohlke/pythonlibs/

Python バージョンに応じて、対応するインストール パッケージをダウンロードすることを選択します: pip install JPype1-1.2.0-cp36-cp36m-win_amd64.whl

注: インストールするときは、 whl サフィックスも使用する必要があります。

インストールが成功したかどうか (操作が成功したかどうか) を確認します。

import jpype
jvmPath=jpype.getDefaultJVMPath()
print(jvmPath)   # D:\jdk\bin\server\jvm.dll

インストールが完了したら、この時点で pip install pyhanlp をインストールしますが、それでもエラーが報告されます。

ステップ 2: ソース コードをコンパイルしてインストールする

公式 Web サイトにアクセスしてソース コード zip をダウンロードし、それを Python パッケージに解凍します。リンクアドレス:mirrors/hankcs/HanLP・GitCode

解凍後、解凍したインストールディレクトリ内にある

D:\python3.6.6\Lib\site-packages\HanLP-doc-zh (これはインストール ディレクトリです) を実行します。

python setup.py install

コンパイルとインストールを開始します。

インストール プロセス中にエラーが報告されます。torch をインストールする必要があります。Python インストール パッケージに移動してダウンロードしてインストールするだけです。

Python インストール パッケージ コレクション: https://www.lfd.uci.edu/~gohlke/pythonlibs/

もう一度実行します: python setup.py install、まだ少し問題がありますが、実行中のコードは次のエラーを報告しなくなりました: ModuleNotFoundError: 'hanlp' という名前のモジュールがありません。

 ピットを踏み続け……

ステップ 3: HanLP のインストール

jar 構成ファイル hanlp.jar パッケージとデータをダウンロードします。アドレス: Releases · hankcs/HanLP · GitHub

ダウンロードするには、下の画像をクリックしてください。

 ダウンロード後、まず hanlp-1.8.4-release インストール パッケージをローカルに解凍し、名前を hanlp_package (任意に取得) に変更し、data-for-1.7.5.zip で解凍したデータ フォルダーを hanlp_package インストール ディレクトリに置きます。パッケージ。

 次に、hanlp.properties 構成ファイルを変更し、内部のデフォルトのパスをローカル パスに変更します。

 注: HanLP のパスは「D:\software\hannlp」にあります (パスに中国語を含めないことをお勧めします)

4. HanLP コードのテスト

from jpype import *

startJVM(getDefaultJVMPath(), "-Djava.class.path=D:\software\hannlp\hanlp-1.7.2.jar;D:\software\hannlp",
         "-Xms1g",
         "-Xmx1g") # 启动JVM,Linux需替换分号;为冒号:

print("=" * 30 + "HanLP分词" + "=" * 30)
HanLP = JClass('com.hankcs.hanlp.HanLP')
# 中文分词
print(HanLP.segment('小明毕业于北京理工大学,后就职与中国科学院大数据研究所。'))
print("-" * 70)

shutdownJVM()

操作結果:

==============================HanLP分词==============================
[小明/nz, 毕业/v, 于/p, 北京理工大学/ntu, ,/w, 后/f, 就职/vi, 与/cc, 中国科学院/nt, 大/a, 数据/n, 研究所/nis, 。/w]
----------------------------------------------------------------------

ただし、現時点ではまだ pyhanlp をインポートできず、プログラムの実行時にエラーが報告されます。pip install pyhanlp をインストールするコマンドを実行しても、依然としてエラーが報告されます。

再起動してから pip install pyhanlp を実行すると、インストールは成功し、解決しました。

コードテスト:

from pyhanlp import *
conten_list = HanLP.parseDependency("小明毕业于北京理工大学,后就职与中国科学院大数据研究所。")
print(conten_list)

操作結果:

1	小明	小明	nh	nr	_	2	主谓关系	_	_
2	毕业	毕业	v	v	_	0	核心关系	_	_
3	于	于	p	p	_	2	动补结构	_	_
4	北京理工大学	北京理工大学	ni	ntu	_	3	介宾关系	_	_
5	,	,	wp	w	_	2	标点符号	_	_
6	后	后	nd	f	_	7	状中结构	_	_
7	就职	就职	v	v	_	2	并列关系	_	_
8	与	与	p	p	_	11	左附加关系	_	_
9	中国科学院	中国科学院	ni	nt	_	10	定中关系	_	_
10	大数据	大数据	n	n	_	11	定中关系	_	_
11	研究所	研究所	n	n	_	7	并列关系	_	_
12	。	。	wp	w	_	2	标点符号	_	_

5. まとめ

要約すると、上記の手順により、pip install pyhanlp インストール エラーまたは ModuleNotFoundError: No module names 'hanlp' エラーの問題を解決できます。

おすすめ

転載: blog.csdn.net/weixin_40547993/article/details/130853697