当前位置:   article > 正文

【个人记录】bert初步学习_bert预训练模型下载

bert预训练模型下载

目的/背景

使用医疗方面的bert模型,进行实体识别和医患匹配。

参考

如何快速使用BERT? - 知乎 (zhihu.com)

tensorflow版本与python版本不相容的问题_fltenwall的博客-CSDN博客

[中文医疗预训练模型] MC-BERT - 知乎 (zhihu.com)

(7条消息) conda 多环境切换_weixin_34381687的博客-CSDN博客

(7条消息) Anaconda不同版本python环境的安装及切换_jet_wong的博客-CSDN博客_anaconda不同版本

(7条消息) 利用bert-serving-server搭建bert词向量服务(一)_vancl_wang的博客-CSDN博客_bert-serving

前期部署

1、模型下载

bert中文预训练模型下载:

https://storage.googleapis.com/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip

医疗相关的mc-bert中文预训练模型下载:

https://drive.google.com/open?id=1ccXRvaeox5XCNP_aSk_ttLBY695Erlok

可能需要搭梯子。

2、环境配置

要求环境:(3.6 >= 不能很高版本)Python >= 3.5 ,(1.11 >= 不能是2.)Tensorflow >= 1.10;具体要py和tf匹配。

conda可以切换环境,具体在cmd或者conda的命令行里操作:

  1. conda info -e #会列出当前安装的所有pyhon环境
  2. conda create -n {name} python=3.6 #指定的python版本和新环境的名字 后文假设名字为www
  3. activate www #激活www新环境 随后可在新环境安装想要的包 路径为\anaconda\envs\www
  4. deactivate #当前环境失活 回到base环境
  5. conda remove -n www --all #当使用完毕彻底不需要www环境时 此为删除语句

在下载tf包时,很可能限速,建议开镜像:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.11.0

3、准备启动

建议全程在cmd上用pip操作,用conda有莫名其妙的错误。

模型pip:

  1. pip install bert-serving-server # 服务端
  2. pip install bert-serving-client # 客户端

至此,所有准备工作完成。若要启动bert,则在cmd上执行下述指令,保持cmd不关闭,即可在vscode上运行相关代码。(不知道为啥jupyter上运行不了)

  1. #抽象:
  2. bert-serving-start -model_dir {模型的本地路径,模型为文件夹形式} -num_worker={此数字参数与电脑的核系统相关}
  3. #例子:
  4. bert-serving-start -model_dir D:\tempModel\chinese_L-12_H-768_A-12 -num_worker=2

词向量学习

  1. from bert_serving.client import BertClient
  2. from sklearn.metrics.pairwise import cosine_similarity
  3. class Encoding(object):
  4. def __init__(self):
  5. self.server_ip = "127.0.0.1"
  6. self.bert_client = BertClient(ip=self.server_ip)
  7. def encode(self, query):
  8. tensor = self.bert_client.encode([query])
  9. return tensor
  10. def query_similarity(self, query_list):
  11. tensors = self.bert_client.encode(query_list)
  12. return cosine_similarity(tensors)[0][1]
  13. if __name__ == "__main__":
  14. ec = Encoding()
  15. print("向量相似度:", ec.query_similarity(["我爱你", "我恨你"]))#词向量的长度不能超过25,可用|||隔开两个词,也可以放短句子。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/639807
推荐阅读
相关标签
  

闽ICP备14008679号