一种文本数据的处理方法和装置与流程

文档序号:11677564阅读:200来源:国知局
一种文本数据的处理方法和装置与流程
本申请涉及文本处理
技术领域
,特别是涉及一种文本数据的处理方法和一种文本数据的处理装置。
背景技术
:随着科技的发展,计算机进行智能语音或文字应答的需求正变得越来越广泛,陆续出现了许多智能聊天机器人。在语音或文字应答中,类比问题是比较常见的,如“小明和小红是什么关系”。目前,智能聊天机器人一般是基于rdf(resourcedescriptionframework,资源描述框架)推导出两个实体之间的同类或类比关系,从而回答类比问题。基于rdf知识库求两实体之间的关系,需要预先构建完善的rdf知识库。rdf知识库的构建,一般需要通过挖掘关系模板、清洗百科类数据、关系抽取三步迭代进行,耗费大量的人力和物力,成本高,但是,覆盖面不高,使得类比问题的回复成功率低。例如,在某个抓取到的八卦新闻中,记载了“刘德华和成龙是好基友”,则在rdf知识库中记录刘德华、成龙、关系基友等信息。若接收到用户发出的“刘德华和成龙是什么关系”的问题,则在rdf知识库中查找到关系是基友,则回答“基友”。若在先未抓取到该八卦新闻,则无法回复,可能回答“是什么关系呢?”绕开问题。此外,基于rdf的回复是问答式的,在聊天系统中,可能无法得出答案,有时候,缺少拟人、幽默的表达能力。技术实现要素:鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种文本数据的处理方法和相应的一种文本数据的处理装置。为了解决上述问题,本申请实施例公开了一种文本数据的处理方法,包括:获取第一文本数据;判断所述第一文本数据是否适于类比;若是,则从所述第一文本数据中提取第一实体词;对所述第一实体词进行类比,获得第二实体词;根据所述第二实体词生成第二文本数据。优选地,所述判断所述第一文本数据是否适于类比的步骤包括:对所述第一文本数据进行分词处理,获得多个第一文本分词;将所述第一文本数据的多个第一文本分词与预设的类比问题模板进行匹配;当匹配成功时,确定所述第一文本数据适于类比。优选地,所述对所述第一实体词进行类比,获得第二实体词的步骤包括:当所述第一实体词为一个时,查找与所述第一实体词相似的一个或多个第一候选实体词;从所述一个或多个第一候选实体词中筛选实体词类型与所述第一实体词相同的一个或多个第二候选实体词;从所述一个或多个第二候选实体词中选择一个或多个第二实体词。优选地,所述查找与所述第一实体词相似的一个或多个第一候选实体词的步骤包括:查询所述第一实体词的第一词向量以及一个或多个第一候选实体词的一个或多个第二词向量;基于所述第一词向量与所述一个或多个第二词向量计算一个或多个第一相似度;提取第一相似度最高的一个或多个第一候选实体词,作为与所述第一实体词相似的一个或多个第一候选实体词。优选地,所述对所述第一实体词进行类比,获得第二实体词的步骤包括:当所述第一实体词包括第一子实体词和第二子实体词时,查找与所述第一子实体词相似的一个或多个第三候选实体词;从所述一个或多个第三候选实体词中筛选实体词类型与所述第一子实体词相同的一个或多个第四候选实体词;基于所述第一子实体词、所述第二子实体词和所述一个或多个第四候选实体词计算一个或多个第五候选实体词;从所述一个或多个第五候选实体词中筛选实体词类型与所述第二子实体词相同的一个或多个第六候选实体词;从所述一个或多个第四候选实体词和所述一个或多个第六候选实体词选取第二实体词。优选地,所述查找与所述第一子实体词相似的一个或多个第三候选实体词的步骤包括:查询所述第一子实体词的第三词向量以及一个或多个第三候选实体词的一个或多个第四词向量;基于所述第三词向量与所述一个或多个第四词向量计算一个或多个第二相似度;提取第二相似度最高的一个或多个第三候选实体词,作为与所述第一子实体词相似的一个或多个第三候选实体词。优选地,所述基于所述第一子实体词、所述第二子实体词和所述一个或多个第四候选实体词计算一个或多个第五候选实体词的步骤包括:查询所述第一子实体词的第三词向量、所述一个或多个第四候选实体词的一个或多个第四词向量、所述第二子实体词的第五词向量;在所述第三词向量的基础上,减去所述第五词向量、加上所述第四词向量,获得第六词向量;当某个实体词的第七词向量与所述第六词向量最近时,确认所述实体词 为第五候选实体词。优选地,所述从所述一个或多个第四候选实体词和所述一个或多个第六候选实体词选取第二实体词的步骤包括:基于所述第一子实体词的第三词向量与所述第四候选实体词的第四词向量计算第一距离;基于所述第七词向量与所述第六候选实体词的第六词向量计算第二距离;采用所述第一距离和所述第二距离计算所述第四候选实体词和所述第六候选实体词的评分;选取评分最高的第四候选实体词和第六候选实体词作为第二实体词。优选地,所述根据所述第二实体词生成第二文本数据的步骤包括:查找与所述类比问题模板属于同一关系类型的类比回答模板;将所述第二实体词嵌入所述类比回答模板中,获得第二文本数据。优选地,还包括:当接收到客户端发送的第一语音数据时,将所述第一语音数据转换为第一文本数据;将所述第二文本数据转换为第二语音数据;将所述第二语音数据返回所述客户端。本申请实施例还公开了一种文本数据的处理装置,包括:第一文本数据获取模块,用于获取第一文本数据;类比意图判断模块,用于判断所述第一文本数据是否适于类比;若是,则调用实体词提取模块;实体词提取模块,用于从所述第一文本数据中提取第一实体词;实体词类比模块,用于对所述第一实体词进行类比,获得第二实体词;第二文本数据生成模块,用于根据所述第二实体词生成第二文本数据。优选地,所述类比意图判断模块包括:分词子模块,用于对所述第一文本数据进行分词处理,获得多个第一文 本分词;类比问题模板匹配子模块,用于将所述第一文本数据的多个第一文本分词与预设的类比问题模板进行匹配;类比意图确定子模块,用于在匹配成功时,确定所述第一文本数据适于类比。优选地,所述实体词类比模块包括:第一候选实体词查找子模块,用于在所述第一实体词为一个时,查找与所述第一实体词相似的一个或多个第一候选实体词;第二候选实体词筛选子模块,用于从所述一个或多个第一候选实体词中筛选实体词类型与所述第一实体词相同的一个或多个第二候选实体词;第二实体词选择子模块,用于从所述一个或多个第二候选实体词中选择一个或多个第二实体词。优选地,所述第一候选实体词查找子模块包括:第一向量查询单元,用于查询所述第一实体词的第一词向量以及一个或多个第一候选实体词的一个或多个第二词向量;第一相似度计算单元,用于基于所述第一词向量与所述一个或多个第二词向量计算一个或多个第一相似度;第一候选实体词提取单元,用于提取第一相似度最高的一个或多个第一候选实体词,作为与所述第一实体词相似的一个或多个第一候选实体词。优选地,所述实体词类比模块包括:第三候选实体词查找子模块,用于在所述第一实体词包括第一子实体词和第二子实体词时,查找与所述第一子实体词相似的一个或多个第三候选实体词;第四候选实体词筛选子模块,用于从所述一个或多个第三候选实体词中筛选实体词类型与所述第一子实体词相同的一个或多个第四候选实体词;第五候选实体词计算子模块,用于基于所述第一子实体词、所述第二子实体词和所述一个或多个第四候选实体词计算一个或多个第五候选实体词;第六候选实体词筛选子模块,用于从所述一个或多个第五候选实体词中 筛选实体词类型与所述第二子实体词相同的一个或多个第六候选实体词;第二实体词选取子模块,用于从所述一个或多个第四候选实体词和所述一个或多个第六候选实体词选取第二实体词。优选地,所述第三候选实体词查找子模块包括:第二词向量查询单元,用于查询所述第一子实体词的第三词向量以及一个或多个第三候选实体词的一个或多个第四词向量;第二相似度计算单元,用于基于所述第三词向量与所述一个或多个第四词向量计算一个或多个第二相似度;第三候选实体词提取单元,用于提取第二相似度最高的一个或多个第三候选实体词,作为与所述第一子实体词相似的一个或多个第三候选实体词。优选地,所述第五候选实体词计算子模块包括:第三向量查询单元,用于查询所述第一子实体词的第三词向量、所述一个或多个第四候选实体词的一个或多个第四词向量、所述第二子实体词的第五词向量;向量计算单元,用于在所述第三词向量的基础上,减去所述第五词向量、加上所述第四词向量,获得第六词向量;第五候选实体词确定单元,用于在某个实体词的第七词向量与所述第六词向量最近时,确认所述实体词为第五候选实体词。优选地,所述第二实体词选取子模块包括:第一距离计算单元,用于基于所述第一子实体词的第三词向量与所述第四候选实体词的第四词向量计算第一距离;第二距离基于所述第七词向量与所述第六候选实体词的第六词向量计算第二距离;评分计算单元,用于采用所述第一距离和所述第二距离计算所述第四候选实体词和所述第六候选实体词的评分;选取单元,用于选取评分最高的第四候选实体词和第六候选实体词作为第二实体词。优选地,所述第二文本数据生成模块包括:类比回答模板查找子模块,用于查找与所述类比问题模板属于同一关系类型的类比回答模板;类比回答模板嵌入子模块,用于将所述第二实体词嵌入所述类比回答模板中,获得第二文本数据。优选地,还包括:文本转换模块,用于在接收到客户端发送的第一语音数据时,将所述第一语音数据转换为第一文本数据;语音转换模块,用于将所述第二文本数据转换为第二语音数据;语音返回模块,用于将所述第二语音数据返回所述客户端。本申请实施例包括以下优点:本申请实施例在确认第一文本数据具有类比意图时,对第一文本数据的第一实体词进行类比,获得第二实体词,进而生成第二文本数据,在大量无标注文本中直接构建词向量,实现了类比回答,无需构建知识库,减少了人力和物理的耗费,降低了成本,不直接回复两者的确切关系,采用类比方式回复,提高了覆盖率,提高了类比问题的回复成功率。附图说明图1是本申请的一种文本数据的处理方法实施例的步骤流程图;图2a和图2b是本申请实施例的一种类比问题模板的示例图;图3是本申请实施例的一种cbow模型的结构图;图4是本申请的一种文本数据的处理装置实施例的结构框图。具体实施方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。参照图1,示出了本申请的一种文本数据的处理方法实施例的步骤流程图,具体可以包括如下步骤:步骤101,获取第一文本数据;需要说明的是,本申请实施例可以应用在聊天机器人、语音助手等人工智能应用中。该人工智能应用可以部署在终端本地,例如,手机、平板电脑、智能穿戴设备(如手环、手表、眼镜)等等,也可以部署在云端或服务器中,例如,分布式系统,本申请实施例对此不加以限制。若部署在云端,可以直接接收客户端发送的第一文本数据。或者,当接收到客户端发送的第一语音数据时,可以对第一语音数据进行语音识别(automaticspeechrecognition,asr),将第一语音数据转换为第一文本数据。在具体实现中,进行语音识别的语音识别系统通常由以下几个基本模块所构成:1、信号处理及特征提取模块;该模块的主要任务是从语音数据中提取特征,供声学模型处理。同时,它一般也包括了一些信号处理技术,以尽可能降低环境噪声、信道、说话人等因素对特征造成的影响。2、声学模型;语音识别系统多采用基于一阶隐马尔科夫模型进行建模。3、发音词典;发音词典包含语音识别系统所能处理的词汇集及其发音。发音词典实际提供了声学模型与语言模型的映射。4、语言模型;语言模型对语音识别系统所针对的语言进行建模。理论上,包括正则语言,上下文无关文法在内的各种语言模型都可以作为语言模型,但目前各种系统普遍采用的还是基于统计的n元文法及其变体。5、解码器;解码器是语音识别系统的核心之一,其任务是对输入的信号,根据声学、语言模型及词典,寻找能够以最大概率输出该信号的词串。步骤102,判断所述第一文本数据是否适于类比;若是,则执行步骤103;所谓类比,即把不同的两个(两类)对象进行比较,根据两个(两类)对象在一系列属性上的相似,而且已知其中一个对象还具有其他的属性,由此推出另一个对象也具有相似的其他属性的结论。在本发明实施例中,第一文本数据可以为问题,如“台灯的好朋友是谁”、“刘德华和成龙是什么关系”,可以以类比进行回答。在本申请的一个实施例中,步骤102可以包括如下子步骤:子步骤s11,对所述第一文本数据进行分词处理,获得多个第一文本分词;本申请实施例中,可以如下的一种或多种方式进行分词处理:1、基于字符串匹配的分词:是指按照一定的策略将待分析的汉字串与一个预置的机器词典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。2、基于特征扫描或标志切分的分词:是指优先在待分析字符串中识别和切分出一些带有明显特征的词,以这些词作为断点,可将原字符串分为较小的串再来进机械分词,从而减少匹配的错误率;或者将分词和词类标注结合起来,利用丰富的词类信息对分词决策提供帮助,并且在标注过程中又反过来对分词结果进行检验、调整,从而提高切分的准确率。3、基于理解的分词:是指通过让计算机模拟人对句子的理解,达到识别词的效果。其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。它通常包括三个部分:分词子系统、句法语义子系统、总控部分。在总控部分的协调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。4、基于统计的分词方法:是指,中文信息中由于字与字相邻共现的频率或概率能够较好的反映成词的可信度,所以可以对语料中相邻共现的各个字的组合的频度进行统计,计算它们的互现信息,以及计算两个汉字x、y的相邻共现概率。互现信息可以体现汉字之间结合关系的紧密程度。当紧密程度高于某一个阈值时,便可认为此字组可能构成了一个词。当然,上述分词处理方式只是作为示例,在实施本申请实施例时, 可以根据实际情况设置其他分词处理方式,本申请实施例对此不加以限制。另外,除了上述分词处理方式外,本领域技术人员还可以根据实际需要采用其它分词处理方式,本申请实施例对此也不加以限制。子步骤s12,将所述第一文本数据的多个第一文本分词与预设的类比问题模板进行匹配;子步骤s13,当匹配成功时,确定所述第一文本数据适于类比。应用本申请实施例,可以针对一个或多个关系类型(即类比方式frame)设置了配对的类比问题模板及类比回答模板。在类比问题模板中,包括了适于类比的问题(文本)的基本结构。在类比回答模板中,具有对问题进行回答的基本结构,并保留了实体词的位置。类比问题模板和类比回答模板以自定义的结构在文本中持久化存储,在匹配的时候,加载到内存中。在具体实现中,可以利用上下文无关语法分析器(context-freegrammarparser,cfg)进行类比问题模板的匹配。若一个形式文法g=(n,σ,p,s)的产生式规则都取如下的形式:v->w,则称之为上下文无关的,其中,v∈n,w∈(n∪σ)*。上下文无关语法取名为“上下文无关”的原因就是因为字符v总可以被字串w自由替换,而无需考虑字符v出现的上下文。一个形式语言是上下文无关的,如果它是由上下文无关文法生成的(条目上下文无关语言)。若分词之后的第一文本分词与预设的类比问题模板匹配,则可以认为第一文本数据适于类比。以静物关系作为关系类型的示例,,在如图2a所示的类比问题模板中,arg1表示实体词,具有问题的基本结构“的”、“好”、“朋友/基友”、“是”、“谁”。对于“台灯的好朋友是谁”,分词之后可以获得“台灯”、“的”、“好朋友”、“是”、“谁”,与图2a所示的类比问题模板匹配,可以认为具有类比意 图。以八卦关系作为关系类型的示例,如图2b所示的类比问题模板中,arg1和arg2表示实体词,具有问题的基本结构“和/与”、“是”、“什么”、“关系”。对于“刘德华和成龙是什么关系”,分词之后可以获得“刘德华”、“和”、“成龙”、“是”、“什么”、“关系”,与图2b所示的类比问题模板匹配,可以认为具有类比意图。步骤103,从所述第一文本数据中提取第一实体词;实体词,可以对应一个具体的个体。需要说明的是,第一实体词、第二实体词、第一子实体词、第二子实体词、第一候选实体词、第二候选实体词、第三候选实体词、第四候选实体词、第五候选实体词、第六候选实体词是相对于不同的处理状态而言的,其本质均为实体词。在明星类别中,实体词可以为刘德华,张柏芝,林青霞等。此外,实体词也可以包含一些宽泛的代表类别的个体,比如人,电影明星,歌手等。例如,对于“台灯的好朋友是谁”而言,实体词为“台灯”。又例如,对于“刘德华和成龙是什么关系”而言,实体词为“刘德华”、“成龙”。步骤104,对所述第一实体词进行类比,获得第二实体词;在本申请实施例中,通过实体词的某些属性,从而推导出属性相似的其他实体词,如从第一实体词推导出相似的第二实体词。在具体实现中,可以预先抓取数据训练word2vec(wordtovector)模型,通过word2vec模型对所述第一实体词进行类比,获得第二实体词。其中,word2vec模型是一个将训练数据中的单词转换成向量形式的工具,可以将单词转换为200维的词向量,该单词(包括实体词)可以存储在hash(哈希)表中。通过转换,可以把对文本内容的处理简化为向量空间中的向量运算,计算出向量空间上的相似度,来表示文本语义上的相似度。训练的数据可以通过爬虫spider抓取网页,进行数据清洗之后,得到干净的标题和正文内容。在实际应用中,数据可以包括两个部分:1、网络数据;基本是稳定数据,我们用了积累下来(所有的百科数据和1年左右其他有详情页的网页数据)的数据,正文数据;2、新闻数据;维持一个近半年的窗口,每日更新,可以是包括标题和正文的所有新闻数据。这部分数据主要是为了处理世界上动态变化的“关系”,如人与人之间的朋友、夫妻关系等,因此,训练word2vec模型时需要能反应与时俱进的新闻语料。采用word2vec的cbow(continuousbag-of-wordmodel)模型,如图3所示,cbow模型由输入层(input)、映射层(projection)和输出层(output)构成,利用w(t)的前(n=4)个词和后(n=4)个词预测当前词w(t)的向量表示,该方式能够使得语义相同或模式相同的词的向量表示的距离更近。在本申请的一个实施例中,步骤104可以包括如下子步骤:子步骤s21,当所述第一实体词为一个时,查找与所述第一实体词相似的一个或多个第一候选实体词;在具体实现中,对于问题只有一个实体词的情形,可以查询第一实体词的第一词向量以及一个或多个第一候选实体词的一个或多个第二词向量;基于第一词向量与一个或多个第二词向量计算一个或多个第一相似度;提取第一相似度最高的一个或多个第一候选实体词,作为与第一实体词相似的一个或多个第一候选实体词。具体而言,word2vec可以通过distance工具根据转换后的向量计算出余弦距离(cosinedistance),来表示向量(词语)的相似度。例如,输入“france”,distance工具会计算并显示与“france”距离最相近的词,示例如下:wordcosinedistancespain0.678515belgium0.665923netherlands0.652428italy0.633130switzerland0.622323luxembourg0.610033portugal0.577154russia0.571507germany0.563291catalonia0.534176子步骤s22,从所述一个或多个第一候选实体词中筛选实体词类型与所述第一实体词相同的一个或多个第二候选实体词;在本申请实施例中,为针对问题进行类比的回答,一般问题中实体词的类型与回答中实体词的类型保持一致。例如,对于“台灯”,实体词类型相同的实体词有“墙贴”、“led灯”、“电视柜”等等。子步骤s23,从所述一个或多个第二候选实体词中选择一个或多个第二实体词。在具体实现中,可以从基于实体词类型筛选之后的实体词中选择一个或多个第二实体词进行回答。在本申请的另一个实施例中,步骤104可以包括如下子步骤:子步骤s31,当所述第一实体词包括第一子实体词和第二子实体词时,查找与所述第一子实体词相似的一个或多个第三候选实体词;对于问题有多个第一实体词的情形,如两个,为便于对第一实体词进行表达,在本申请实施例中,可以按照实体词的顺序,以第一子实体词、第二子实体词等替换第一实体词进行表达。例如,对于“刘德华和成龙是什么关系”而言,第一子实体词为“刘德 华”,第二子实体词为“成龙”。具体实现中,在word2vec模型中,可以查询第一子实体词的第三词向量以及一个或多个第三候选实体词的一个或多个第四词向量;基于所述第三词向量与一个或多个第四词向量,通过余弦相似度等方式计算一个或多个第二相似度;提取第二相似度最高的一个或多个第三候选实体词,作为与第一子实体词相似的一个或多个第三候选实体词。反之,第二相似度较低的第三候选实体词被筛选掉。例如,对于“刘德华和成龙是什么关系”而言,可以计算与第一子实体词“刘德华”相似的n(n为正整数)个第三候选实体词,如,“黄日华”、“苗侨伟”、“王力宏”、“失孤”、“冰雨”,再从这n个第三候选实体词中提取最相似的一个或多个第三候选实体词,如,“苗侨伟”、“黄日华”、“王力宏”、“冰雨”,而筛选掉“失孤”。子步骤s32,从所述一个或多个第三候选实体词中筛选实体词类型与所述第一子实体词相同的一个或多个第四候选实体词;在本申请实施例中,为针对问题进行类比的回答,一般问题中实体词的类型与回答中实体词的类型保持一致。为便于表示基于实体词类型筛选的状态,从第三候选实体词中筛选出来的实体词可以称之为第四候选实体词。例如,对于“刘德华”,实体词类型为明星,因此,可以从“苗侨伟”、“黄日华”、“王力宏”、“冰雨”中筛选掉实体词类型为歌曲的“冰雨”,保留实体词类型同样为明星的“苗侨伟”、“黄日华”、“王力宏”。子步骤s33,基于所述第一子实体词、所述第二子实体词和所述一个或多个第四候选实体词计算一个或多个第五候选实体词;在具体实现中,可以d=a-b+c的方式计算实体词,其中,a为第一子实体词、b为第二子实体词、c为第四候选实体词,d为第五候选实体词。具体而言,可以查询第一子实体词的第三词向量、一个或多个第四候选实体词的一个或多个第四词向量、第二子实体词的第五词向量。在第三词向量的基础上,减去第五词向量、加上第四词向量,获得第六词向量。当某个实体词的第七词向量与所述第六词向量最近时,确认该实体词为第五候选实体词。例如,若第一子实体词为“刘德华”、第二子实体词为“成龙”,第四候选实体词为“苗侨伟”、“黄日华”、“王力宏”。在一种情况下,可以在“刘德华”的第三词向量的基础上,减去“成龙”的第五词向量、加上“苗侨伟”的第四词向量,得到一个第六词向量,若“无线”的第七向量与该六词向量最近,则可以确认“无线”为第五候选实体词。在另一种情况下,可以在“刘德华”的第三词向量的基础上,减去“成龙”的第五词向量、加上“黄日华”的第四词向量,得到一个第六词向量,若“梁朝伟”的第七向量与该六词向量最近,则可以确认“梁朝伟”为第五候选实体词。在另一种情况下,可以在“刘德华”的第三词向量的基础上,减去“成龙”的第五词向量、加上“王力宏”的第四词向量,得到一个第六词向量,若“周杰伦”的第七向量与该六词向量最近,则可以确认“周杰伦”为第五候选实体词。子步骤s34,从所述一个或多个第五候选实体词中筛选实体词类型与所述第二子实体词相同的一个或多个第六候选实体词;在本申请实施例中,为针对问题进行类比的回答,一般问题中实体词的类型与回答中实体词的类型保持一致。例如,对于“成龙”,实体词类型为明星,因此,可以从“无线”、“梁朝伟”、“王力宏”、“周杰伦”中筛选掉实体词类型为公司的“无线”,保留实体词类型同样为明星的“梁朝伟”、“周杰伦”。需要说明的是,由于第四候选实体词与第五候选实体词是相互关联的,因此,当第五候选实体词筛选出来之后,相对应的第四候选实体词也会筛选出来。例如,由于“无线”被筛选掉,因此,“无线”所关联的“苗侨伟”也 被筛选掉,即剩余“黄日华”、“王力宏”。子步骤s35,从所述一个或多个第四候选实体词和所述一个或多个第六候选实体词选取第二实体词。在本申请实施例中,可以通过如下公式选取第二实体词:其中,a、b为第一实体词,c、d为第二实体词,score(c,d)为c和d的评分,ci为第i个第四候选实体词,dj为第j个第六候选实体词,λ为常数。具体而言,可以基于第一子实体词的第三词向量与第四候选实体词的第四词向量计算第一距离;基于第七词向量与第六候选实体词的第六词向量计算第二距离,其中,第六词向量为在第三词向量的基础上,减去第五词向量、加上第四词向量获得的词向量;采用第一距离和所述第二距离计算所述第四候选实体词和第六候选实体词的评分;选取评分最高的第四候选实体词和第六候选实体词作为第二实体词,即为便于对第二实体词进行表达,在本申请实施例中,可以按照实体词的顺序,以第四候选实体词、第六候选实体词等替换第二实体词进行表达。例如,若采用上述公式,代入“刘德华”、“成龙”、“黄日华”、“梁朝伟”计算到的评分为0.85,代入“刘德华”、“成龙”、“王力宏”、“周杰伦”计算到的评分为0.93,由于0.93>0.85,则可以确定“王力宏”、“周杰伦”为第二实体词。步骤105,根据所述第二实体词生成第二文本数据。在本申请实施例中,查找与类比问题模板属于同一关系类型的类比回答模板。将所述第二实体词嵌入类比回答模板中,获得第二文本数据。需要说明的是,由于类比回答模板较多,因此,可以采用类似key-set<value>的方式存储,其中,key是关系类型,即类比方式frame,如 八卦关系、静物关系等,set<value>是一组回答模板。当key命中的时候,从对应的set<value>中选择一个回答模板,选择的策略可以是随机,可以是依据概率给出,当然也不限于依据实体类型来给出不同的回答模板。例如,对于如图2a所示的类比问题模板,可以应用如下类比回答模板:1、a的好朋友应该是b吧。2、我觉得a的好朋友是b吧。3、a的好朋友是b那一类的。4、a和b应该可以愉快的做朋友。其中,a为第一实体词、b为第二实体词。对于“台灯的好朋友是谁”,套用第3个模板,回答可以为“台灯的好朋友是墙贴、led灯、电视柜那一类的”。又例如,对于图2b所示的类比问题模板,可以应用如下类比回答模板:1、他俩关系多复杂啊,就和c跟d的关系差不多吧。2、就像c和d,你懂的。3、其实他们的关系,就跟c和d的关系是一样一样的。4、说到这个,我觉得很像c和d的关系。5、如果把他们比作c和d,你觉得是不是挺恰当的?6、a和b的关系就好比c和d的关系。7、a和b类似于c和d。8、a和b就像c和d。9、a和b的关系感觉就好像c和d的关系。10、a和b的关系让我想到了c和d的关系。其中,a、b为第一实体词,c、d为第二实体词。对于“刘德华和成龙是什么关系”,套用第6个模板,回答可以为“刘德华和成龙的关系就好比王力宏和周杰伦的关系”。若在先接收的是客户端发送的第一文本数据,则可以直接将第二文本数据返回客户端展示。若在先接收的是客户端发送的第一语音数据,则可以将第二文本数据转换为第二语音数据,将第二语音数据返回所述客户端进行播放,或者,将第二文本数据返回客户端展示,或者,同时将第二语音数据返回所述客户端进行播放及将第二文本数据返回客户端展示。本申请实施例在确认第一文本数据具有类比意图时,对第一文本数据的第一实体词进行类比,获得第二实体词,进而生成第二文本数据,在大量无标注文本中直接构建词向量,实现了类比回答,无需构建知识库,减少了人力和物理的耗费,降低了成本,不直接回复两者的确切关系,采用类比方式回复,提高了覆盖率,提高了类比问题的回复成功率。需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。参照图4,示出了本申请的一种文本数据的处理装置实施例的结构框图,具体可以包括如下模块:第一文本数据获取模块401,用于获取第一文本数据;类比意图判断模块402,用于判断所述第一文本数据是否适于类比;若是,则调用实体词提取模块403;实体词提取模块403,用于从所述第一文本数据中提取第一实体词;实体词类比模块404,用于对所述第一实体词进行类比,获得第二实体词;第二文本数据生成模块405,用于根据所述第二实体词生成第二文本数据。在本申请的一种实施例中,所述类比意图判断模块402可以包括如下子模块:分词子模块,用于对所述第一文本数据进行分词处理,获得多个第一文本分词;类比问题模板匹配子模块,用于将所述第一文本数据的多个第一文本分词与预设的类比问题模板进行匹配;类比意图确定子模块,用于在匹配成功时,确定所述第一文本数据适于类比。在本申请的一种实施例中,所述实体词类比模块403可以包括如下子模块:第一候选实体词查找子模块,用于在所述第一实体词为一个时,查找与所述第一实体词相似的一个或多个第一候选实体词;第二候选实体词筛选子模块,用于从所述一个或多个第一候选实体词中筛选实体词类型与所述第一实体词相同的一个或多个第二候选实体词;第二实体词选择子模块,用于从所述一个或多个第二候选实体词中选择一个或多个第二实体词。在本申请的一种实施例中,所述第一候选实体词查找子模块可以包括如下单元:第一向量查询单元,用于查询所述第一实体词的第一词向量以及一个或多个第一候选实体词的一个或多个第二词向量;第一相似度计算单元,用于基于所述第一词向量与所述一个或多个第二词向量计算一个或多个第一相似度;第一候选实体词提取单元,用于提取第一相似度最高的一个或多个第一候选实体词,作为与所述第一实体词相似的一个或多个第一候选实体词。在本申请的一种实施例中,所述实体词类比模块403可以包括如下子模块:第三候选实体词查找子模块,用于在所述第一实体词包括第一子实体词和第二子实体词时,查找与所述第一子实体词相似的一个或多个第三候选实体词;第四候选实体词筛选子模块,用于从所述一个或多个第三候选实体词中 筛选实体词类型与所述第一子实体词相同的一个或多个第四候选实体词;第五候选实体词计算子模块,用于基于所述第一子实体词、所述第二子实体词和所述一个或多个第四候选实体词计算一个或多个第五候选实体词;第六候选实体词筛选子模块,用于从所述一个或多个第五候选实体词中筛选实体词类型与所述第二子实体词相同的一个或多个第六候选实体词;第二实体词选取子模块,用于从所述一个或多个第四候选实体词和所述一个或多个第六候选实体词选取第二实体词。在本申请的一种实施例中,所述第三候选实体词查找子模块可以包括如下单元:第二词向量查询单元,用于查询所述第一子实体词的第三词向量以及一个或多个第三候选实体词的一个或多个第四词向量;第二相似度计算单元,用于基于所述第三词向量与所述一个或多个第四词向量计算一个或多个第二相似度;第三候选实体词提取单元,用于提取第二相似度最高的一个或多个第三候选实体词,作为与所述第一子实体词相似的一个或多个第三候选实体词。在本申请的一种实施例中,所述第五候选实体词计算子模块可以包括如下单元:第三向量查询单元,用于查询所述第一子实体词的第三词向量、所述一个或多个第四候选实体词的一个或多个第四词向量、所述第二子实体词的第五词向量;向量计算单元,用于在所述第三词向量的基础上,减去所述第五词向量、加上所述第四词向量,获得第六词向量;第五候选实体词确定单元,用于在某个实体词的第七词向量与所述第六词向量最近时,确认所述实体词为第五候选实体词。在本申请的一种实施例中,所述第二实体词选取子模块可以包括如下单元:第一距离计算单元,用于基于所述第一子实体词的第三词向量与所述第四候选实体词的第四词向量计算第一距离;第二距离基于所述第七词向量与所述第六候选实体词的第六词向量计算第二距离;评分计算单元,用于采用所述第一距离和所述第二距离计算所述第四候选实体词和所述第六候选实体词的评分;选取单元,用于选取评分最高的第四候选实体词和第六候选实体词作为第二实体词。在本申请的一种实施例中,所述第二文本数据生成模块404可以包括如下子模块:类比回答模板查找子模块,用于查找与所述类比问题模板属于同一关系类型的类比回答模板;类比回答模板嵌入子模块,用于将所述第二实体词嵌入所述类比回答模板中,获得第二文本数据。在本申请的一种实施例中,该装置还可以包括如下模块:文本转换模块,用于在接收到客户端发送的第一语音数据时,将所述第一语音数据转换为第一文本数据;语音转换模块,用于将所述第二文本数据转换为第二语音数据;语音返回模块,用于将所述第二语音数据返回所述客户端。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程 序产品的形式。在一个典型的配置中,所述计算机设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitorymedia),如调制的数据信号和载波。本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。以上对本申请所提供的一种文本数据的处理方法和一种文本数据的处理装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1