1.问答系统,它主要是针对那些有明确答案的用户问题,而且通常面向特定的领域,比如金融,医疗,这一类的机器人。它的技术实现方案分为基于检索和基于知识库两大类。

2.第二个任务型对话系统,大家看论文的时候看的大多数的对话系统都是任务型的,它也是面向特定的领域,而且是非常明确的领域。

它是以尽快地正确的完成明确的任务为目标的,而且对话的轮数越短越好,它的应用实例就是各种在线的私人助理比如助理来也。

3.第三个是偏闲聊的对话机器人,它没有特定的领域和明确的对话目标,评价标准之一就是看人和他聊天的时间长短。

https://cn.100offer.com/blog/posts/296

检索式问答系统的系统架构主要分为离线和在线两大块。离线把问答索引,序列匹配模型和排序模型建好,在线服务收到用户的问题,

把问题中的关键词从索引库中把相关的索引拿出来,然后根据生产好的 Matching 和 Ranking (排列)模型去做 Rerank ,挑选最好的答案给用户展示。这样就是检索式问答系统的典型是实现方式。

语义匹配模型实现方式

1.很经典,很传统的实现方式,根据需要统计TF-IDF,应用一些比较简单的向量空间模型或BM25来计算匹配度。

2.构造一些特征向量,特征向量的维度需要根据业务来确定,特征向量构造完成后,用统计学习方法或L2R的模型进行排序。

3.从2013年开始的词向量算法,它需要先训练词向量,通过词向量构造他们之间的相似度,最简单的一种方法是通过IDF对每个词向量加权,

然后把加权和做一个句向量的表示去计算相似度。还有一些比较复杂的方法,比如WMD,

用词向量计算等文本相似度,大家如果有兴趣可以用谷歌搜索它们的论文和实现方案,它们在短文本上的效果还是非常好的。

4.基于神经网络尤其是深度学习来做语义匹配。基于深度学习的匹配方案有两种:
(1)先得到句向量表示,再用句向量表示来计算它的匹配度。这种方法一般采用孪生网络或者双塔模型网络,它的特点是处理Q和A的文本的网络是完全一样的。
(2)构造QA的交互网络,让他们尽早的相遇。尽早相遇可以利用更多的匹配信号,而不是像方案一中的孪生网络,在得到句向量之后才去计算它的相似度,这样可能会损失一些匹配信息。多轮问答和单轮问答还是有区别的,多轮问答需要考虑上下文对当前问答的影响。

nlp基础(一)基本应用的更多相关文章

  1. 第1章 NLP基础

    大纲 NLP基础概念 NLP的发展与应用 NLP常用术语以及扩展介绍 1.1 什么是NLP 基本分类 自然语言生成(Natural Language Generation,NLG) 指从结构化数据中以 ...

  2. NLP基础

    1  自然语言处理三大特征抽取器(CNN/RNN/TF)比较 白衣骑士Transformer:盖世英雄站上舞台 华山论剑:三大特征抽取器比较 综合排名情况 以上介绍内容是从几个不同角度来对RNN/CN ...

  3. NLP基础——词集模型(SOW)和词袋模型(BOW)

    (1)词集模型(Set Of Words): 单词构成的集合,集合自然每个元素都只有一个,也即词集中的每个单词都只有一个. (2)词袋模型(Bag Of Words): 如果一个单词在文档中出现不止一 ...

  4. NLP基础 成分句法分析和依存句法分析

    正则匹配: .除换行符所有的 ?表示0次或者1次 *表示0次或者n次 a(bc)+表示bc至少出现1次 ^x.*g$表示字符串以x开头,g结束 |或者 http://regexr.com/ 依存句法分 ...

  5. 1.1 NLP基础技能,字符串的处理

    #!/usr/bin/env python # coding: utf-8 # # 字符串操作 # ### 去空格和特殊字符 # In[8]: s = " hello world! &quo ...

  6. 使用httpclient访问NLP应用接口例子

    参考网址: http://yuzhinlp.com/docs.html 接入前须知 接入条件 1.进入网站首页,点击注册成为语知科技用户 2.注册完成后,系统将提供语知科技用户唯一标识APIKey,并 ...

  7. nlp底层技术列举

    其实目前除了之前博客写到的一些关于自然语言处理用到的知识点之外,很多其他nlp技术只是会用但是不了解原理,先整体分个类,之后再仔细分析吧. 上图是https://www.sohu.com/a/1386 ...

  8. 这篇文章写的真好-NLP将迎来黄金十年-书摘

    机器之心上面微软亚研的这篇文章真好: https://baijiahao.baidu.com/s?id=1618179669909135692&wfr=spider&for=pc 其中 ...

  9. 转:使用RNN解决NLP中序列标注问题的通用优化思路

    http://blog.csdn.net/malefactor/article/details/50725480 /* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author ...

随机推荐

  1. redis3.0.3集群搭建

    redis3.0版本之后支持Cluster,具体介绍redis集群我就不多说,了解请看redis中文简介. 首先,直接访问redis.io官网,下载redis.tar.gz,现在版本3.0.3,我下面 ...

  2. Spring mvc下Ajax获取JSON对象问题 406错误

    spring 通过@ResponseBody标签返回JSON数据的方法都报406错: Failed to load resource: the server responded with a stat ...

  3. kafka7 探索生产者同步or异步发送消息

    1.生产者:在发送完消息后,收到回执确认. 主要是在SimpleProducer.java中修改了发送消息的2行代码,用到了回调函数,修改如下: //发送消息 ProducerRecord<St ...

  4. Python 运维

    1.python解释器提供提供的小工具 1.1 一秒钟启动一个下载服务器 进入要下载文件的目录(shift+鼠标右键可以很快的在当前目录打开一个cmd) python2: python2 -m Sim ...

  5. 建立请求号 request

    1:获取TR号(一般由团队的负责人创建,发出) 2:进入 i7p系统 3:点击process 4:输入tr号 5:选中 正确的请求号,右键> process item> add task ...

  6. 与数论的厮守02:整数的因子分解—Pollard_Rho

    学Pollard_Rho之前,你需要学会:Miller Rabin. 这是一个很高效的玄学算法,用来对大整数进行因数分解. 我们来分解n.若n是一个素数,那么就不需要分解了.所以我们还得能够判断一个数 ...

  7. textarea 标签的使用

    <textarea rows="行数" cols="列数">默认出现文本</textarea> 阻止拉伸:style="res ...

  8. 【Spark-core学习之七】 Spark广播变量、累加器

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 scala-2.10.4(依赖jdk1.8) spark ...

  9. Kubernetes持久化存储2——探究实验

    目录贴:Kubernetes学习系列 一.简介 本文在“创建PV,创建PVC挂载PV,创建POD挂载PVC”这个环境的基础上,进行各种删除实验,并记录.分析各资源的状态. 二.实验脚本 实验创建了一个 ...

  10. org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter)

    通过start.spring.io下载maven工程导入eclipse后,出现pom文件错误: org.codehaus.plexus.archiver.jar.Manifest.write(java ...