• 【强化学习笔记】关于一篇对话系统文献综述的读后感


    本文由@ray 出品,转载请注明出处。  
    文章链接: http://www.cnblogs.com/wolfray/p/7887652.html


      

    上周导师安排了一个任务——读一下这篇文章

    出处:A Survey on Dialogue Systems: Recent Advances and New Frontiers 
    文章地址: https://arxiv.org/abs/1711.01731v1 
    作者: Hongshen Chen, Xiaorui Liu, Dawei Yin, Jiliang Tang

    笔者之前都是搞图像处理啊、单片机啊、软件开发啊这些的,没有接触过自然语言处理,对话系统这些。

    通过阅读这篇文章,笔者对对话系统有了初步的了解,并产生了一些想法。

    首先放出读了这篇文章后的思维导图: 
    这里写图片描述

    一、概述

    这篇文章主要概述了对话系统,尤其是对话系统在深度学习方面的进展;还讨论了可能的研究方向

    二、分类

    对话系统根据其应用可以分为面向任务型和非面向任务型。

    2.1 面向任务型

    2.1.1 目的

    面向任务型对话系统的目的是帮助用户完成某些任务,比如说查找产品、预定住宿等。

    2.1.2 方法

    面向任务型的方法可以分为三种:

    ①流水线

    流水线方法中包含4个模块:

    • 自然语言理解(NLU):又可分为语义槽、意图检测和槽填充三个部分。

    • 对话状态跟随器(Dialogue State Tracking):确保对话系统健壮性的核心组成部分。它会在每一次对话中估计用户的目标。传统方法是用手工定制规则,新方法引入了信念追踪的深度学习。

    • 对话策略学习(Policy learning):以从状态跟随器获得的状态表示作为条件,策略学习将产生下个可用的系统动作。

    • 自然语言生成(NLG):将抽象的对话动作转化为浅层的自然语言表达

    流水线方法的缺点有两个:

    • 分数分配问题,最终用户的反馈很难回传到上游模块
    • 处理相互依赖(模块间)

    ②深度学习

    ③端到端(end-end):一个模块,可以与结构化的外部数据进行交互

    2.1.3 特点

    面向任务型的特点是通常需要在外部知识库上进行查询。

    2.2 非面向任务型

    2.2.1 目的

    非面向任务型的目的是在与人类交互过程中,提供合理的反应和娱乐;其主要专注于在开放域与人交谈。

    2.2.2 方法

    非面向任务型的方法主要有两个:

    ①生成方法:神经生成模型,可在对话过程中产生适当的回复。

    序列到序列(seq2seq)模型是神经生成模型的基础。

    目前神经生成模型的热门研究课题大概有如下几个:

    • 对话上下文
    • 回复多样性
    • 主题和个性
    • 外部知识库
    • 交互式对话学习
    • 评价

    ②检索方法:从数据库中选择当前对话的回复。这有可以分为单轮回复匹配、多轮回复匹配和混合方法。

    三、结论

    目前对话系统的发展特点有如下两个:

    • 深度学习变成了对话系统的基础技术,应用于传统面向任务的对话系统的不同模块

    • 充分利用大数据,结合端到端的训练和强化学习。

    四、一些思考

      1. 语义槽(Semantic Slots)是什么?

        答:

        语义槽类似于元数据,描述数据的数据。

        语义槽允许用户去详细描述说法的变量值部分。

        在下面的说法案例中{到达城市}和{旅行日期}就是语义槽: 
        我想去{到达城市} 
        预定一次{出发日期}的行程; 
        计划一个到{到达城市}的假期;

      2. 引言中提到大多对话系统,仍然使用人工特征或人工编写的规则来处理状态和动作空间表示、意图检测和槽填充。这里的人工特征和人工编写的规则是指的什么?

      3. 微软小娜和苹果siri是什么型的系统?

      4. 真的存在一个评价标准来评价回复的质量吗?

  • 相关阅读:
    3-12 初识JWT
    3-11 用户登录信息验证实现
    3-10 公共模块统一测试
    3-9 公共业务异常统一处理
    3-8 公共返回对象封装
    3-7 公共请求对象封装及优雅验证数据实现
    3-6 MD5介绍及用户添加功能实现
    3-5 用户模块数据层构建
    3-4 用户模块构建
    3-3 公共工具模块构建
  • 原文地址:https://www.cnblogs.com/wolfray/p/7887652.html
Copyright © 2020-2023  润新知