BERT的使用

一、背景

bert是一種基於transformer的結構,也就是比較經典的attention機制,bert的思維導圖模型如下所示(其他人總結的):
image

二、bert使用

使用bert首先需要安裝transformers以及bert的模型(可以在安裝完bert後使用)

pip install transformers

transformers中的embedding是TFBertEmbedding,這裏有一個Bert訓練的Embedding,fastNLP,安裝指令如下:

pip install fastNLP

除此之外,還有一種新型的封裝pytorch和TensorFlow的NLP語言包allennlp

pip install allennlp

下面就會對分詞、Embedding進行說明。

2.1 tokenizer

接下來就是直接使用bert

from transformers import BertTokenizer
tokenizer = BertTokenizer.from_pretrained("bert-base-uncased")
tokens = tokenizer.tokenize(text)  # 分詞 
# tokens = list(filter(lambda x: x not in stop_word, tokens))
tokens = tokenizer.convert_tokens_to_ids(tokens) # 轉化成id
2.2 Embedding的使用
from fastNLP.embeddings import BertEmbedding
from fastNLP import Vocabulary
from transformers import BertTokenizer
vocab = Vocabulary()
vocab.add_word_lst(tokenizer.vocab)

embed = BertEmbedding(vocab, model_dir_or_name='en-base-cased')
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章