1 什么是聊天机器人
人工智能、大数据技术等现代化技术的迅速发展使得聊天机器人慢慢渗入人们的日常生活中,我们日常生活中应用的苹果手机的Siri、阿里巴巴的阿里小蜜、百度的小度、微软的Cortana和小冰、亚马孙的Alexa、IBM的Watson等都是聊天机器人。那么什么是聊天机器人呢?聊天机器人(Chatterbot)是能够模拟人类对话,经由对话或文字进行交谈的计算机程序,它能通过图灵测试。

2 聊天机器人的分类
(1)依据功能划分,可将聊天机器人分为任务导向型和闲聊型。任务导向型聊天机器人是一种根据任务来完成多轮对话的对话系统,通常针对封闭专业领域知识,机器人需要在对话过程中理解、澄清并生成对话,其构建方式主要为Pipeline和End-to-end。闲聊型聊天机器人主要与用户进行面向开放域的闲聊,目标是与用户进行有意义的自然多轮对话。闲聊型聊天机器人涉及的领域范围更大,用户意图更模糊难识别,要求更高,实现更难。
(2)根据对话生成的不同技术,可将聊天机器人分为检索式与生成式两种。
3 聊天机器人的关键技术
聊天机器人其实就是一个自动对话系统,研究一个这样的系统,主要研究涉及到的知识领域就是自然语言处理。一般而言,这样的一个自动对话系统,主要包括三大模块:输入处理模块、信息检索模块、答案的生成与过滤模块。
(1)输入处理模块:语料知识库的获取、中文分词、词性标注、句法分析、问句分析、关键字生成、语义消岐、大规模语义计算和推理、答案类别确定。
(2)信息检索模块:根据输入处理模块生成的关键词,查询关键词所信息检索,返回句子或者段落。
(3)答案生成与过滤:通过技术分析和推理从信息检索模块抽取出与提问一致的应答,然后根据概率对候选答案进行排序,最后选择一个概率最高的作为答案。
4 聊天机器人的技术实现
当前聊天机器人的几种主流技术包括:基于检索、基于人工模板、基于机器翻译技术、以及基于深度学习自然语言理解技术的聊天机器人。
(1)基于检索技术:类似于搜索引擎,在制作一个这样的聊天系统之前,需要创建一个聊天对话库并建立索引,根据输入的问题,在聊天对话库中进行搜索查询来进行模糊匹配,直到找到最适合的应答内容返回给用户。
(2)基于人工模板:技术原理是经过人工在聊天库中设定一些对话场景,然后根据不同场景塑造相对应的对话模板,并根据每一个问题设计其可能会出现的答案。基于这个技术的优点是精确性高,缺点是人工工作量大,可扩展性差,不同的场景要有不同的设定。目前已经存在的
Siri 对话机器人就是使用这样的技术生成的,相比于其他技术的对话机器人其精确性非常高。
(3)基于机器翻译:基于机器翻译的技术实际上就是把聊天对话过程看作是机器翻译过程,即把用户输入的聊天信息 Message,翻译成聊天机器人回答
Response
的过程类似于把汉语翻译成英语。由于机器翻译领域的一些技术相对比较成熟,通过这样的技术假设,就可以在聊天机器人开发中使用这些较成熟的技术。
(4)基于深度学习:基于深度学习自然语言理解技术是本文后续内容主要介绍的技术路线,总体而言,绝大多数都是在编码-解码(或者称作序列-序列)的深度学习技术框架下改进的,思路比较简单,而且可扩展。
最近自然语言处理领域出现了很多的深度学习模型:词向量表示方面、机器翻译方面、情感分析方面、中文分词领域。
5 聊天机器人产业规模

推荐阅读:《Talkdesk:人工智能、聊天机器人及机器学习指南(英文版)(78页).pdf》