基于bert的中文语义匹配模型,判断两句话是不是同一个意思 |
您所在的位置:网站首页 › quora的汉语意思 › 基于bert的中文语义匹配模型,判断两句话是不是同一个意思 |
日趋增多的网络信息使用户很难迅速从搜索引擎返回的大量信息中找到所需内容。自动问答系统为人们提供了以自然语言提问的交流方式,为用户直接返回所需的答案而不是相关的网页,具有方便、快捷、高效等特点。
Process:本文的问答系统采用了一个FAQ(Frequently Asked Questions)问答库,并基于句子相似度进行设计。
1)首先建立一个足够大的问题答案库,即语料库--------建库
2)然后计算用户提问的问题和语料库中各个问题的相似度-------计算相似度-------余弦定理
3)最后把相似度较高的问题所对应的答案返回给用户。-------返回结果
本文的核心是句子相似度的计算,可以使用TF-IDF和word2vec两种方法对问句进行向量化,并在此基础上使用进行句子相似度的计算。 也可以利用深度学习模型做句子配对,即给定用户描述的两句话,用算法来判断是否表示了相同的语义。若语义相同则判断为1,不相同则为0. 了解更多 https://blog.csdn.net/fkyyly/article/details/86016703 ![]() 如果能够找到相应的问题,就可以直接将问题所对应的答案返回给用户,而不需要经过问题理解、信息检索、答案抽取等许多复杂的处理过程,提高了效率。FAQ(Frequently Asked Questions)系统在根据用户问题建立候选问题集的基础上,建立常问问题集的倒排索引,提高了系统的检索效率,同时,与传统的基于关键词的方法相比,用基于语义的方法计算相似度提高了问题的匹配精度。 FAQ问答系统是一种已有的“问题-答案”对集合中找到与用户提问相匹配的问句,并将其对应的答案返回给用户的问答式检索系统。由于FAQ问答系统免去了重新组织答案的过程,可以提高系统的效率,还可以提高答案的准确性。这其中要解决的一个关键问题是用户问句与“问题-答案”对集合中问句的相似度比较,并把最佳结果返回给用户。 利用预训练的中文模型实现基于bert的语义匹配模型 AI项目体验地址 https://loveai.tech 训练脚本 train.sh 批量测试脚本 predict.sh 利用模型进行单条语句测试 intent.py chinese_L-12_H-768_A-12为预训练的相关模型和词典 下载地址 https://storage.googleapis.com/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip 下载后解压,放在项目根目录 data文件夹中为训练语料,验证语料,测试语料 数据集为LCQMC官方数据 参数说明:max_seq_length sentence的最大长度(字) train_batch_size batch_size的大小 max_seq_length = 50 eval_accuracy = 0.87207 test_accuracy = 0.86272 max_seq_length = 40 eval_accuracy = 0.88093615 test_accuracy = 0.86256 训练过程 ![]() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |