美文网首页
使用谷歌NLP模型BERT进行文本相似度识别(一)

使用谷歌NLP模型BERT进行文本相似度识别(一)

作者: 杉木木木 | 来源:发表于2019-12-12 17:42 被阅读0次

    我们来看看Google是怎么定义BERT模型的:

    We introduce a new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers. BERT is designed to pre train deep bidirectional representations from unlabeled text by jointly conditioning on both left and right context in all layers.

    BERT是Google开发的一种新的语言表示模型,全称为"来自转换器的双向编码表示"。具体的原理大家可以去Github查看下文档和代码:

    https://github.com/google-research/bert

    下载模型文件

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

    安装必要软件

    pip install bert-serving-server # serverpip install bert-serving-client # client

    启动模型

    bert-serving-start -model_dir C://Users/Admin/Downloads/chinese_L-12_H-768_A-12/ -num_worker=4

    我们可以看到运行的日志

    环境准备就绪,开始写代码使用模型

    from bert_serving.client import BertClientbc = BertClient()test = bc.encode(['你好', '您好'])print(test)

    模型产出了日志

    代码运行得到结果

    [[ 0.28940195 -0.13572726  0.07591147 ... -0.14091192  0.5462996  -0.30118033] [ 0.22952718  0.15336259 -0.18656379 ... -0.40034902  0.12984535  -0.3449842 ]]

    我们可以看到,模型已经将文本转化成了数字表示的向量。这为我们接下来对文本的处理带来了便利。

    在运行模型和代码的过程中,可能会有一些坑需要注意下:

    1、首先你必须装有TensorFlow,如果最新版本2.0无法兼容,可以安装老版本比如1.15

    2、Python可以使用3.x的版本,但务必保证安装bert-serving-server和bert-serving-client的Python环境,和运行代码的环境是同一套。

    相关文章

      网友评论

          本文标题:使用谷歌NLP模型BERT进行文本相似度识别(一)

          本文链接:https://www.haomeiwen.com/subject/srbtnctx.html