首页 > 解决方案 > 尽管导入了所有包,Bert Tokenizer 仍无法正常工作。对此有新的语法更改吗?

问题描述

尝试为 Bert 运行标记器,但我不断收到错误消息。任何人都可以帮助我哪里出错。

FullTokenizer = bert.bert_tokenization.FullTokenizer
bert_layer = hub.KerasLayer("https://tfhub.dev/tensorflow/bert_en_uncased_L-12_H-768_A-12/1", trainable=False)
vocab_file = bert_layer.resolved_object.vocab_file.asset_path.numpy()
do_lower_case = bert_layer.resolved_object.do_lower_case.numpy()
tokenizer = FullTokenizer(vocab_file, do_lower_case)

错误:()中的 AttributeError Traceback(最近一次调用最后一次)----> 1 FullTokenizer = bert.bert_tokenization.FullTokenizer 2 bert_layer = hub.KerasLayer(“ https://tfhub.dev/tensorflow/bert_en_uncased_L-12_H-768_A- 12/1 ", 3 可训练=假) 4 vocab_file = bert_layer.resolved_object.vocab_file.asset_path.numpy() 5 do_lower_case = bert_layer.resolved_object.do_lower_case.numpy()

AttributeError:模块“bert”没有属性“bert_tokenization”

以下所有内容均已导入以供参考。

!pip install bert-for-tf2
!pip install sentencepiece
!pip install bert-tensorflow
!pip install tensorflow==2.0

try:
    %tensorflow_version 2.x
except Exception:
    pass
import tensorflow as to
import tensorflow_hub as hub
from tensorflow.keras import layers
import bert
from bert import tokenization

标签: pythontokenizesentiment-analysisbert-language-model

解决方案


我之前也遇到过类似的情况。

尝试在运行脚本/笔记本的目录中查找名为“bert”的文件夹。删除该文件夹或将其重命名为“bert”以外的名称。很有可能当您导入 bert 时,它会尝试访问该文件夹,而不是您安装在 Python 站点包中的 bert-for-tf2 文件夹。

如果仍然不起作用,请尝试

从 bert 导入标记化


推荐阅读