目標
中国語テキストの実体命名認識 NER (Named Entity Recognition)
Pythonはfoolnltkライブラリをインストールします
最初のステップは、foolnltk ライブラリをインストールすることです!pip install foolnltk
このコード行をコンソール ビューに直接入力します。
!pip install foolnltk
2 番目のステップでは、fool モジュールを呼び出します。import fool
import fool
**
次に問題が発生しました
—ModuleNotFoundError: 'tensorflow.contrib' という名前のモジュールがありません
**
問題分析: tensorflow.contrib は tensorflow1.0 に組み込まれており、tensorflow は現在バージョン 2.0 であり、tensorflow2.0 の contrib は非推奨です。
tensorflow のダウングレードを検討し、古いバージョンの tensorflow のインストールを試みることができます。
!pip install tensorflow==1.14.0
一部のコンピュータ実験環境では、グラフィックス カードの CUDA アクセラレーションなどがある場合、tensorflow のダウングレードには適していないため、tensorflow2.0 バージョンで tensorflow1.0 パッケージを使用する方法をいくつか紹介します。
解決策:No module named 'tensorflow.xxx'
同様のエラーが発生した場合は、まずコード ファイルの先頭にある import ステートメントを確認します。ここでは、エラー メッセージに従って model.py ファイルを開き
、
import tensorflow as tf
に変更されました
import tensorflow.compat.v1 as tf
tf.compat.v1.disable_eager_execution()
バンドル
from tensorflow.contrib.crf import viterbi_decode
に変更されました
from tensorflow_addons.text.crf import viterbi_decode
需要先安装tensorflow_addons库,直接在consolo视图输入 !pip install tensorflow_addons
変更したmodel.pyファイルを保存すると、import fool
foolモジュールを再度正常にインポートできるようになります。
注:predictor.py ファイルにも同じ問題がある可能性があり、方法は上記と同じです。
NER を達成するには、fool.analysis() 関数を呼び出します。
import fool
text='''我24小时为您服务,您3秒给我点个赞+关注+收藏。--作于2022年五月五日晚九点四十五分'''
word,ner=fool.analysis(text)
print(word)
print(ner)
演算結果
1 行目は単語分割の結果、2 行目は NER の結果です。