当前位置:   article > 正文

文本匹配:1、基础算法_文本匹配算法

文本匹配算法

文本匹配:主要是求两个句子之间的相似度。
在这里插入图片描述

  1. 无监督:
    – 对短文本进行分词,然后加权求和每个分词的word2vec词向量,得到句向量。再对俩句向量进行距离度量,比如 欧式距离、consin距离、切比雪夫距离等,作为俩句子的相似度。
    – 虽然无需标注,可以快速算出相似度,但准确率差。
  2. 有监督:
    siamese架构:是将俩文本输入到相同的编码器中(CNN/RNN),使得两个句子映射到相同的空间中;然后得到俩句子向量 进行度量,进而获得相似度。
    代表是 孪生网路 (图)。 优点是共享参数 模型小,容易训练,句向量具有一定的语义信息,但俩文本之间没有信息交互。 孪生网络
    “交互聚合”架构:基于第一个架构,得到句子向量后,通过 注意力机制 将两个句向量进行信息交互,最终聚合成一个向量,然后获得相似度。
    代表是 ESIM(增强版LSTM的自然语言推理NLI)、BiMPM(双向多角度匹配模型) // 不同时间步之间的信息交互 效果是还不错,可是太慢了!! BIMPM
    “预训练”架构:将两个文本输入到预训练语言模型中,得到信息交互后的向量,然后获得相似度。
    比如bert。能够获得短文本之间更隐蔽的交互特征,但就是比较慢。 在这里插入图片描述
  3. 无监督 + 有监督:
    – 权衡效果和效率,折中方案。 比如可以 将孪生网络中的编码器换成bert,离线缓存好标准问的句向量。 用户query来时只需计算其句向量,先召回粗排得到 候选标准问,再输入到模型中计算相似度。
    比如 sentence bert 。 具体采用哪种方案,根据项目对效果和效率的要求 选择吧。
    sentence-bert

参考:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/870511
推荐阅读
相关标签
  

闽ICP备14008679号