私はbertの初心者で、GitHubで提供されているbertのファイルを使用しようとしています: https://github.com/google-research/bert
ただし、pip install bert
を使用してターミナルにbertをインストールした後、bertからファイル(run_classifier、最適化など)をインポートできません。ジュピターノートブックで次のコードを実行しようとしました:
import bert
from bert import run_classifier
そしてエラーは:
ImportError: cannot import name 'run_classifier'
次に、\anaconda3\lib\python3.6\site-packages
で 'bert'という名前のファイルを見つけましたが、その中にpython 'run_classifier'、 'optimization'などの名前のファイルはありませんでした。そのため、GitHubからこれらのファイルをダウンロードしました自分でファイル 'bert'に入れて、run_classifierをインポートします。
しかし、別の問題が発生しました。ファイル内の関数はインポートできましたが、使用できませんでした。たとえば、tokenization.pyには関数convert_to_unicode
があります。
Help on module bert.tokenization in bert:
NAME
bert.tokenization - Tokenization classes.
FUNCTIONS
convert_to_unicode(text)
Converts `text` to Unicode (if it's not already), assuming utf-8 input.
それから私はこれを試しました:
import tokenization from bert
convert_to_unicode('input.txt')
そしてエラーは:
NameError: name 'convert_to_unicode' is not defined
それから私は試しました:
from tokenization import convert_to_unicode
そしてエラーは:
ModuleNotFoundError: No module named 'tokenization'
私はこれについて本当に混乱しています。
次のようにこれらのコード行を追加してみてください https://colab.research.google.com/drive/1hMLd5-r82FrnFnBub-B-fVW78Px4KPX1#scrollTo=2IjSWx7-O8yY 問題は、BERT埋め込みが今であるということですTensorFlow 2.0を使用します。 TensorFlow 2.0が最近リリースされました。
!pip install tensorflow==2.0
!pip install tensorflow_hub
!pip install bert-for-tf2
!pip install sentencepiece
import tensorflow_hub as hub
import tensorflow as tf
from bert import tokenization
from tensorflow.keras.models import Model # Keras is the new high level API for TensorFlow
import math