论文:《Pre-training of Deep Bidirectional Transformers for Language Understanding》
官方代码和预训练模型:https://github.com/google-research/bert
第三方代码:
1. pytorch-pretrained-BERT谷歌推荐Pytorch版本
2. BERT-pytorchPytorch版本
3. BERT-tensorflow
4. bert-chainer
5. bert-as-service
6. bert_language_understanding
7. sentiment_analysis_fine_grain
8. BERT-NER
9. BERT-keras
10.tbert
调用方法:
1、bert-serving
安装:需要安装服务器和客户端
pip install bert-serving-server
pip install bert-serving-client
下载官方预训练模型:chinese_L-12_H-768_A-12
启动服务器
命令启动方式
bert-serving-start -pooling_strategy NONE -model_dir chinese_L-12_H-768_A-12 -max_seq_len 60
脚本启动方式
from bert_serving.server.helper import get_args_parser
from bert_serving.server import BertServer
args = get_args_parser().parse_args(['-model_dir', 'chinese_L-12_H-768_A-12',
'-pooling_strategy', 'NONE',
'-max_seq_len','60'])
server = BertServer(args)
server.start()
调用
from bert_serving.client import BertClient
bc = BertClient(ip='localhost')
test=bc.encode(['你好','bert'])
参数详情
参数 | 说明 |
---|---|
-model_dir | 预训练模型的路径 |
-num_worker | 线程数,表示同时可以处理多少个并发请求 |
-pooling_strategy | 默认是句向量;-pooling_strategy NONE是词向量 |
-max_seq_len | 句子最大长度 |
2、bert4keras
苏剑林大神封装的keras框架的bert,调用比较方便,功能也比较全
安装
pip install bert4keras
过程会自动安装需要的numpy、pandas等第三方库
调用
from bert4keras.models import build_transformer_model
config_path = 'chinese_L-12_H-768_A-12/bert_config.json'
checkpoint_path = 'chinese_L-12_H-768_A-12/bert_model.ckpt'
bert_model = build_transformer_model(config_path=config_path, checkpoint_path=checkpoint_path)