nlp基础(一)基本应用
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章 NLP基础
大纲 NLP基础概念 NLP的发展与应用 NLP常用术语以及扩展介绍 1.1 什么是NLP 基本分类 自然语言生成(Natural Language Generation,NLG) 指从结构化数据中以 ...
- NLP基础
1 自然语言处理三大特征抽取器(CNN/RNN/TF)比较 白衣骑士Transformer:盖世英雄站上舞台 华山论剑:三大特征抽取器比较 综合排名情况 以上介绍内容是从几个不同角度来对RNN/CN ...
- NLP基础——词集模型(SOW)和词袋模型(BOW)
(1)词集模型(Set Of Words): 单词构成的集合,集合自然每个元素都只有一个,也即词集中的每个单词都只有一个. (2)词袋模型(Bag Of Words): 如果一个单词在文档中出现不止一 ...
- NLP基础 成分句法分析和依存句法分析
正则匹配: .除换行符所有的 ?表示0次或者1次 *表示0次或者n次 a(bc)+表示bc至少出现1次 ^x.*g$表示字符串以x开头,g结束 |或者 http://regexr.com/ 依存句法分 ...
- 1.1 NLP基础技能,字符串的处理
#!/usr/bin/env python # coding: utf-8 # # 字符串操作 # ### 去空格和特殊字符 # In[8]: s = " hello world! &quo ...
- 使用httpclient访问NLP应用接口例子
参考网址: http://yuzhinlp.com/docs.html 接入前须知 接入条件 1.进入网站首页,点击注册成为语知科技用户 2.注册完成后,系统将提供语知科技用户唯一标识APIKey,并 ...
- nlp底层技术列举
其实目前除了之前博客写到的一些关于自然语言处理用到的知识点之外,很多其他nlp技术只是会用但是不了解原理,先整体分个类,之后再仔细分析吧. 上图是https://www.sohu.com/a/1386 ...
- 这篇文章写的真好-NLP将迎来黄金十年-书摘
机器之心上面微软亚研的这篇文章真好: https://baijiahao.baidu.com/s?id=1618179669909135692&wfr=spider&for=pc 其中 ...
- 转:使用RNN解决NLP中序列标注问题的通用优化思路
http://blog.csdn.net/malefactor/article/details/50725480 /* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author ...
随机推荐
- linux出现tmp空间满的情况解决
cd命令tab补全的时候报错: cd /ro-bash: cannot create temp file for here-document: No space left on device-bash ...
- python练习题-day9
2.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. def dan_index(itter): li=[] for i in range(len(itte ...
- java框架之Spring(4)-Spring整合Hibernate和Struts2
准备 导包 Struts2 导入 Struts2 zip 包解压目录下 'apps/struts-blank.war' 中所有 jar 包,如下: asm-3.3.jar asm-commons-3. ...
- A标签中 href 和 onclick用法、区别、优先级别
(内容摘自:https://blog.csdn.net/chenchunlin526/article/details/77346049) Html A标签中 href 和 onclick 同时使用的问 ...
- 设置mac笔记本为固定ip
第一步.点击Mac桌面“系统偏好设置”图标 第二步.在打开的系统偏好设置界面,点击互联网和无线选项中的“网络” 第三步.在网络界面,点击“高级”,进入高级设置. 第四步.在以太网设置界面,在TCP/ ...
- C#设计模式(10)——组合模式(Composite Pattern)(转)
一.引言 在软件开发过程中,我们经常会遇到处理简单对象和复合对象的情况,例如对操作系统中目录的处理就是这样的一个例子,因为目录可以包括单独的文件,也可以包括文件夹,文件夹又是由文件组成的,由于简单对象 ...
- 【转】python虚拟环境--virtualenv
virtualenv 是一个创建隔绝的Python环境的工具.virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包. 安装 pip install virtu ...
- JavaWeb-----ServletConfig对象和servletContext对象
1.ServletConfig ServletConfig:代表当前Servlet在web.xml中的配置信息 String getServletName() -- 获取当前Servlet在web. ...
- lua语言三目运算符
[1]lua语言中完整的三目运算符 完整三目运算符形式:(a and {b} or {c})[1] [2]分析原因 大部分C或C++程序员经常会用到三目运算符(三元运算符),形如 a ? b : c; ...
- 实现Runnable接口创建多线程及其优势
实现Runnable接口创建多线程: 创建一个Runnable接口的实现类RunnableImpl: 主线程中: 其中,链式编程的Thread类的静态方法currentThread方法点getName ...