下記の環境で以下のエラーが出てしまいます。
Traceback (most recent call last): File "_count_tokenization.py", line 26, in <module> my_tokenizer = tokenization.FullTokenizer(vocab_file=vocab_path) AttributeError: module 'tokenization' has no attribute 'FullTokenizer'
解決に関してアドバイスを頂ければ幸いです。
tensorflowは1.0〜2.0まで切り替えて試したのですが、同様のエラーが出てうまくtokenizationモジュールを呼べませんでした。
pip listで見るときちんとtensorflow並びにtokenizationはインストールされています。
「環境」
Python3.7
tensorflow1.0/1.5/2.0
AWS(EC2)
import tokenization import codecs import numpy as np vocab_path = "./model_ch/vocab.txt" max_seq_length = 128 file0 = "./task/message_bert.tsv" f0 = codecs.open(file0, "r", "utf-8") lines = f0.readlines() f0.close() len_file = len(lines) count = np.zeros([len_file]) count0 = np.zeros([len_file]) my_tokenizer = tokenization.FullTokenizer(vocab_file=vocab_path) #file1 = "./task_data_ch/%s_count.tsv" % filename file1 = "./task/message_bert_count.tsv" f1 = codecs.open(file1, "w", "utf-8") f1.write("%s\t%s\t%s\r\n" % ("label","count","count_truncated")) for i in range(1,len_file): a = lines[i] a = a.split("\t") text = a[1] token = my_tokenizer.tokenize(text) print(token) count[i] = len(token) + 2 # for [CLS] and [SEP] if count[i] > max_seq_length: count0[i] = max_seq_length else: count0[i] = count[i] f1.write("%s\t%s\t%s\n" % (i-1,int(count[i]),int(count0[i]))) sum0 = int(np.sum(count0)) sum1 = int(np.sum(count)) print(sum0, sum1) print(int(len_file-1)) f1.write("Total: %s, %s" % (sum1,sum0)) f1.close()
回答1件
あなたの回答
tips
プレビュー