zoukankan      html  css  js  c++  java
  • 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的交互网络,让他们尽早的相遇。尽早相遇可以利用更多的匹配信号,而不是像方案一中的孪生网络,在得到句向量之后才去计算它的相似度,这样可能会损失一些匹配信息。多轮问答和单轮问答还是有区别的,多轮问答需要考虑上下文对当前问答的影响。

  • 相关阅读:
    目前主要的测试用例设计方法是什么?
    软件的安全性应从哪几个方面去测试?
    软件产品质量特性是什么?
    在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?
    简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试
    详细的描述一个测试活动完整的过程
    在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试。
    String是最基本的数据类型吗?
    1、面向对象的特征有哪些方面
    说出Servlet的生命周期,并说出Servlet和CGI的区别。
  • 原文地址:https://www.cnblogs.com/jian-gao/p/10687584.html
Copyright © 2011-2022 走看看