你已经是个成熟的表格了,该学会自然语言处理了

图灵汇官网

表格与自然语言处理:让表格更智能

在日常生活中,我们经常使用语音查询天气、利用搜索引擎获取信息。这些功能背后都离不开一种重要的数据存储方式——表格。如果能让表格变得更智能,这将带来怎样的改变?本文将介绍微软亚洲研究院自然语言计算组在基于表格的自然语言理解和生成方面的最新进展。

表格的优势

表格是一种广泛应用的数据存储方式,用于存储和展示结构化的数据。由于表格具有结构清晰、易于维护和时效性强的特点,它们常被用作搜索引擎和智能对话系统的重要答案来源。例如,现代搜索引擎(如必应搜索引擎)可以直接从互联网上的表格生成问题的答案;虚拟语音助手(如微软Cortana、亚马逊Alexa等)结合表格和自然语言处理技术,能够回答用户的语音请求,如查询天气、预定日程等。

我们的工作

我们将介绍在基于表格的自然语言理解和生成方面的一些关键任务,包括检索、语义解析、问题生成、对话和文本生成。

  1. 检索:从表格集合中找到与输入问题最相关的表格。
  2. 语义解析:将自然语言问题转化为机器可理解的语义表示(如SQL语句),并在表格中执行该表示以获得答案。
  3. 问题生成:逆向生成自然语言问题,减少对标注数据的依赖。
  4. 对话:处理多轮对话场景,解决上下文中的省略和指代问题。
  5. 文本生成:使用自然语言描述表格中的内容。

检索

检索任务的核心在于衡量自然语言问题与表格之间的语义相关性。早期的方法采用字符串相似度计算方法(如BM25),但为了更好地融入表格的结构信息,我们提出了一种基于神经网络的表格检索模型。该模型分别计算问题与表头、列名及表格单元之间的匹配程度,从而提高检索效果。

我们构建了一个包含21,113个自然语言问题和273,816个表格的数据集,并对比了基于BM25的系统、基于手工定义特征的系统以及基于神经网络的系统。结果表明,基于神经网络的算法与手工设计的特征性能相近,二者结合可以进一步提高系统的性能。

语义解析

语义解析的目标是将自然语言问题转化为机器可理解的语义表示,如SQL语句。目前,主流方法是基于序列到序列架构的神经模型,通过编码器和解码器实现这一目标。然而,SQL语句遵循特定的语法规则,因此我们引入了SQL语法信息,通过门单元和三个频道(Column、Value、SQL)来预测表中的列名称、单元格名称和SQL关键字。这种方法在WikiSQL数据集上表现出色。

问题生成

问题生成旨在逆向生成自然语言问题,以减少对标注数据的依赖。我们提出了一种基于问题生成的语义解析训练框架,首先使用基于规则的SQL采样器生成SQL语句,然后用问题生成模型生成多个高质量的问题。这种结合小规模有指导数据和自动生成数据的方法,显著提高了模型的性能。

对话

对话场景下,用户会在前一个问题的基础上继续提问,通常使用指代或省略使对话更加简洁。我们采用Sequence-to-Action的方式生成问题的语义表示,将生成一个语义表示视为一系列动作。这种方法在单轮和多轮语义解析任务中均表现良好。

总结

通过以上工作,我们展示了如何利用自然语言处理技术使表格变得更智能。未来的研究将进一步探索这些技术在实际应用中的潜力,以提供更好的用户体验和服务。

本文来源: 图灵汇 文章作者: 李翠云