文本分析方法、装置、电子设备及可读存储介质与流程

文档序号:16754671发布日期:2019-01-29 17:14阅读:134来源:国知局
文本分析方法、装置、电子设备及可读存储介质与流程

本公开涉及计算机领域,具体涉及一种文本分析方法、装置、电子设备及可读存储介质。



背景技术:

在互联网平台上,有大量文本信息存在,例如,各种用户发帖、评论信息等。但是,这些文本都是自然语言,比较难以区分其具体的主题倾向。如果可以对这些用户评论进行大数据分析,则对找到具备特定特性的文本,对于发现用户的需求和关注点,从而进行有针对性的运营,具有非常重要的意义。



技术实现要素:

为了解决相关技术中的问题,本公开实施例提供一种文本分析方法、装置、电子设备及可读存储介质。

第一方面,本公开实施例中提供了一种文本分析方法,包括:

利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本,其中,所述预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与所述特定关键词属于同一目标类别;

针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量;

根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量;

计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别。

结合第一方面,本公开在第一方面的第一种实现方式中,所述针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量,包括:

根据预设规则增大所述匹配文本中与所述预设关键词相同的分词的向量。

结合第一方面,本公开在第一方面的第二种实现方式中,所述文本向量为词频-逆文档频率向量。

结合第一方面,本公开在第一方面的第三种实现方式中,所述根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量,包括:

通过对属于每一目标类别的全部匹配文本的文本向量求和取平均值来计算每一目标类别的目标文本向量。

结合第一方面的第三种实现方式,本公开在第一方面的第四种实现方式中,所述计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别,包括:

计算每一条非匹配文本的文本向量与所述目标文本向量的相似度作为第一相似度,将所述第一相似度最大的目标文本向量所属的目标类别作为该条非匹配文本的备选类别。

结合第一方面的第四种实现方式,本公开在第一方面的第五种实现方式中,所述方法还包括:

计算每一条非匹配文本的文本向量与全部非匹配文本的平均文本向量的相似度作为第二相似度;

检测所述第一相似度与所述第二相似度的比值是否大于预设阈值;

响应于所述第一相似度与所述第二相似度的比值大于预设阈值的检测结果,将所述备选类别作为所述非匹配文本的所属类别。

第二方面,本公开实施例中提供了一种文本分析装置,包括:

匹配模块,被配置为利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本,其中,所述预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与所述特定关键词属于同一目标类别;

分词模块,被配置为针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量;

第一计算模块,被配置为根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量;

第二计算模块,被配置为计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别。

第三方面,本公开实施例中提供了一种电子设备,包括存储器和处理器;其中,

所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现以下步骤:

利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本,其中,所述预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与所述特定关键词属于同一目标类别;

针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量;

根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量;

计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别。

结合第三方面,本公开在第三方面的第一种实现方式中,所述针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量,包括:

根据预设规则增大所述匹配文本中与所述预设关键词相同的分词的向量。

结合第三方面,本公开在第三方面的第二种实现方式中,所述文本向量为词频-逆文档频率向量。

结合第三方面,本公开在第三方面的第三种实现方式中,所述根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量,包括:

通过对属于每一目标类别的全部匹配文本的文本向量求和取平均值来计算每一目标类别的目标文本向量。

结合第三方面的第三种实现方式,本公开在第三方面的第四种实现方式中,所述计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别,包括:

计算每一条非匹配文本的文本向量与所述目标文本向量的相似度作为第一相似度,将所述第一相似度最大的目标文本向量所属的目标类别作为该条非匹配文本的备选类别。

结合第三方面的第四种实现方式,本公开在第三方面的第五种实现方式中,所述方法还包括:

计算每一条非匹配文本的文本向量与全部非匹配文本的平均文本向量的相似度作为第二相似度;

检测所述第一相似度与所述第二相似度的比值是否大于预设阈值;

响应于所述第一相似度与所述第二相似度的比值大于预设阈值的检测结果,将所述备选类别作为所述非匹配文本的所属类别。

第四方面,本公开实施例中提供了一种可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如第一方面、第一方面的第一种实现方式至第五种实现方式任一项所述的方法。

本公开实施例提供的技术方案可以包括以下有益效果:

根据本公开实施例提供的技术方案,通过利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本,其中,所述预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与所述特定关键词属于同一目标类别;针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量;根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量;计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别,可以在非匹配文本中没有明显的预设关键词的情况下对与目标类别的文本近似非匹配文本进行分类。因此,对于没有预设关键词的文本也可以识别出观点倾向,避免了基于关键词匹配导致的无法获取文本的语义信息,造成误判的缺陷。而且,根据本公开实施方式的文本分析方案可以真实反映文本的观点倾向,提高文本分析的准确率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

结合附图,通过以下非限制性实施方式的详细描述,本公开的其它标签、目的和优点将变得更加明显。在附图中:

图1示出根据本公开一实施方式的文本分析方法的流程图;

图2示出根据本公开另一实施方式的文本分析方法的流程图;

图3示出根据本公开一实施方式的文本分析装置的结构框图;

图4示出根据本公开一实施方式的文本分析方法的一应用场景示例的示意图;

图5示出根据本公开一实施方式的电子设备的结构框图;

图6是适于用来实现根据本公开一实施方式的文本分析方法的计算机系统的结构示意图。

具体实施方式

下文中,将参考附图详细描述本公开的示例性实施方式,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施方式无关的部分。

在本公开中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的标签、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他标签、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。

另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的标签可以相互组合。下面将参考附图并结合实施例来详细说明本公开。

图1示出根据本公开一实施方式的文本分析方法的流程图。如图1所示,所述文本分析方法包括以下步骤s101-s104:

在步骤s101中,利用预设关键词对文本进行匹配,得到与预设关键词匹配的匹配文本以及不与预设关键词匹配的非匹配文本,其中,预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与特定关键词属于同一目标类别。

在步骤s102中,针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量。

在步骤s103中,根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量。

在步骤s104中,计算每一条非匹配文本的文本向量与目标文本向量的相似度以确定所述非匹配文本所属的类别。

在本公开的一个实施例中,待分析的文本可以包括多条文本。例如,可以对包括多条网络评论信息的文本进行分析,每一条网络评论信息就是一条文本。

以下以餐饮o2o平台的用户评论为例来说明如何利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本。以下表示出了餐饮o2o平台对文本(评论)关键词分类情况。

如上表所示,餐饮o2o平台对负面评价的关键词分为9类。这9类关键词都是属于一级分类的差评,二级分类分别为商家、物流、平台3类关键词,三级分类是具体在各自二级分类领域内的3个小分类。其中,需要o2o平台重点关注的,会挑选一些典型的关键词用于匹配用户评论。所以总共有9个差评分类的关键词。例如,商家的三级分类关键词包括“口味(不正宗、难吃):太咸、太辣、没味、太老…。

另外,不与预设关键词匹配的文本为非匹配文本,单独作为一类,即,非匹配类别。因此,在此示例中,包括非匹配类别在内,总共可以有10个类别。本领域技术人员可以理解,以上9个目标类别仅仅是示例,实际的目标类别数目可以多余或少于9个。

在本公开的一个实施例中,可以针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量。例如,可以获取网络商业平台一个时间段内(例如,最近30天)的所有用户评论数据。将用户的每条评论视为一个独立文本,所有用户在该时间段内的评论(即,全部文本)是一个语料。

例如,可以通过分词算法将每个文本里的全部词分开。比如一条文本“这家店的味道太咸了”经过分词后变成:

“这家店的味道太咸了”。

在本公开的一个实施例中,可以对一条文本信息进行分词并根据分词结果为该条文本生成文本向量来对该条文本进行分析。在本公开的一个实施例中,文本向量为词频-逆文档频率(termfrequency-inversedocumentfrequency,简称为tf-idf)向量。词频-逆文档频率方法是一种统计方法,用以评估一个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。

还是以前述网络商业平台的评论为例,所有评论,即全部文本,的全部分词的个数是有限的,可以统计这个总数为v。于是每个用户的每条评论都可以以一个v维的向量表示,每一维度是各个分词的tf-idf值。以前述分词后的文本“这家店的味道太咸了”为例,其文本向量如下:

[“这家”tf-idf值,“店”tf-idf值,“的”tf-idf值,“味道”tf-idf值,“太咸”tf-idf值,“了”tf-idf值,…]。

在本公开的一个实施例中,以分词“这家”为例说明每个分词的tf-idf值计算公式:

“这家”tf-idf值=(“这家”在本条文本中出现的次数/本条文本中所有词出现的次数)*log(全部文本总条数/(包含“这家”的文本条数+1))

其中,log的底是自然对数底e。

本领域技术人员可以理解,以上确定一条文本中的分词的向量值的方式仅仅是示例,根据本公开的实施方式的教导,可以采用各种方式确定一条文本中的分词的向量值,例如tf-idf值。

为了在进行文本分析时强调分类关键词的影响,对出现在关键词表中的分词,增大其tf-idf值(例如,放大2倍)。例如,对于文本向量:

[“这家”tf-idf值,“店”tf-idf值,“的”tf-idf值,“味道”tf-idf值,“太咸”tf-idf值,“了”tf-idf值,…]

在将该条评论的文本与上表进行匹配后,由于“太咸”与表中的商家的三级分类中的关键词“太咸”匹配,该条评论中的“太咸”tf-idf值可以增大,例如,放大2倍。本领域技术人员可以理解,放大2倍仅仅是示例,增大的方式可以是增大预设值或放大2倍以外的其他倍数。增大与目标分类的关键词匹配的分词的向量值可以使得该条文本的文本向量在分析时更加体现出目标分类的倾向。

在本公开的一个实施例中,步骤s102包括:根据预设规则增大匹配文本中与所述预设关键词相同的分词的向量。

在本公开的一个实施例中,属于同一目标类别的匹配文本具有属于同一目标类别的预设关键词,因此属于与预设关键词相同的类别。但是,属于同一目标类别的匹配文本的文本向量可能相互不同,因此,当基于多个目标分类确定每一目标类别的目标文本向量时,可以根据属于每一目标类别的全部匹配文本的文本向量来进行计算。

在本公开的一个实施例中,步骤s103包括:通过对属于每一目标类别的全部匹配文本的文本向量求和取平均值来计算每一目标类别的目标文本向量。

在本公开的一个实施例中,对于非匹配文本,由于无法基于预设关键词获取其语义信息,因此可能造成对非匹配文本的误判。为了解决该问题,可以计算每一条非匹配文本的文本向量与目标文本向量的相似度以确定非匹配文本所属的类别。例如,计算一条非匹配文本的文本向量与多个类别的目标文本的相似度,当一条非匹配文本的文本向量与某一特定类别的文本的目标文本向量相似度大于某一阈值时,可以认为该条非匹配文本属于该特定类别。

根据本公开实施例,通过利用预设关键词对文本进行匹配,得到与预设关键词匹配的匹配文本以及不与预设关键词匹配的非匹配文本,其中,预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与特定关键词属于同一目标类别;针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量;根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量;计算每一条非匹配文本的文本向量与目标文本向量的相似度以确定非匹配文本所属的类别,可以在非匹配文本中没有明显的预设关键词的情况下对与目标类别的文本近似非匹配文本进行分类。因此,对于没有预设关键词的文本也可以识别出观点倾向,避免了基于关键词匹配导致的无法获取文本的语义信息,造成误判的缺陷。而且,根据本公开实施方式的文本分析方案可以真实反映文本的观点倾向,提高文本分析的准确率。

图2示出根据本公开另一实施方式的文本分析方法的流程图。如图2所示,与图1所示的实施方式的不同之处在于,步骤s104包括步骤s201。

在步骤s201中,计算每一条非匹配文本的文本向量与目标文本向量的相似度作为第一相似度,将第一相似度最大的目标文本向量所属的目标类别作为该条非匹配文本的备选类别。

在本公开的一个实施例中,将第一相似度最大的目标文本向量所属的目标类别作为该条非匹配文本的备选类别,是因为第一相似度可能不足以用以确定该条非匹配文本的所属类别,因此只能将第一相似度最大的目标文本向量所属的目标类别作为该条非匹配文本的备选类别。

在本公开的另一个实施例中,图2所示的另一实施方式的文本分析方法还可以包括步骤s202、s203和s204。

在步骤s202中,计算每一条非匹配文本的文本向量与全部非匹配文本的平均文本向量的相似度作为第二相似度。

在步骤s203中,检测第一相似度与第二相似度的比值是否大于预设阈值。

在步骤s204中,响应于第一相似度与第二相似度的比值大于预设阈值的检测结果,将备选类别作为非匹配文本的所属类别。

在本公开的一个实施例中,对于每条非匹配文本,计算其文本向量与多个类别(例如,上表中的9个类别)的目标文本的余弦相似度,并记录其相似度最大的类别作为备选类别及其对应的第一相似度a。计算该条文本的文本向量与全部非匹配文本的总体平均向量的余弦相似度,即第二相似度b。当a/b>c时,将备选类别作为该条文本所属的目标类别。当a/b≤c时,该条文本仍属于非匹配文本,也可称为未被分类的文本。c是一个可以调整的阈值。当需要分析更多匹配文本时,可以调低c的值,否则可以提高c的值。

图4示出根据本公开一实施方式的文本分析方法的一应用场景示例的示意图。

如图4所示,在餐饮o2o平台场景中,可以获取平台最近30天的所有用户评论数据,将用户的每条评论视为一个独立文本,所有用户30天的评论是一个语料。参照上表,利用9类预设关键词对每一条评论进行匹配,得到与预设关键词匹配的9类目标文本以及不与预设关键词匹配的未被匹配的文本。在对全部评论中的每一条评论分词后,基于tf-idf方法建立文本向量。建立每一条用户评论的文本向量后,根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量。计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别。即,可以基于相似度判断未匹配文本(评论)的观点倾向。

图3示出根据本公开一实施方式的文本分析装置的结构框图。

如图3所示,文本分析装置包括匹配模块301、分词模块302、第一计算模块303和第二计算模块304。

匹配模块301被配置为利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本,其中,所述预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与所述特定关键词属于同一目标类别。

分词模块302被配置为针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量。

第一计算模块303被配置为根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量。

第二计算模块304被配置为计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别。

以上描述了文本分析装置的内部功能和结构,在一个可能的设计中,该文本分析装置的结构可实现为文本分析设备,如图5中所示,该处理设备500可以包括处理器501以及存储器502。

所述存储器502用于存储支持文本分析装置执行上述任一实施例中文本分析方法的程序,所述处理器501被配置为用于执行所述存储器502中存储的程序。

所述存储器502用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器501执行以实现以下步骤:

利用预设关键词对文本进行匹配,得到与所述预设关键词匹配的匹配文本以及不与所述预设关键词匹配的非匹配文本,其中,所述预设关键词属于多个目标类别,并且与特定预设关键词匹配的匹配文本与所述特定关键词属于同一目标类别;

针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量;

根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量;

计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别。

在本公开的另一个实施例中,所述针对每一条子文本进行分词,并根据分词结果为每一条文本生成文本向量,包括:

根据预设规则增大所述匹配文本中与所述预设关键词相同的分词的向量。

在本公开的另一个实施例中,所述文本向量为词频-逆文档频率向量。

在本公开的另一个实施例中,所述根据属于每一目标类别的全部匹配文本的文本向量计算每一目标类别的目标文本向量,包括:

通过对属于每一目标类别的全部匹配文本的文本向量求和取平均值来计算每一目标类别的目标文本向量。

在本公开的另一个实施例中,所述计算每一条非匹配文本的文本向量与所述目标文本向量的相似度以确定所述非匹配文本所属的类别,包括:

计算每一条非匹配文本的文本向量与所述目标文本向量的相似度作为第一相似度,将所述第一相似度最大的目标文本向量所属的目标类别作为该条非匹配文本的备选类别。

在本公开的另一个实施例中,所述一条或多条计算机指令还被所述处理器501执行以实现以下步骤:

计算每一条非匹配文本的文本向量与全部非匹配文本的平均文本向量的相似度作为第二相似度;

检测所述第一相似度与所述第二相似度的比值是否大于预设阈值;

响应于所述第一相似度与所述第二相似度的比值大于预设阈值的检测结果,将所述备选类别作为所述非匹配文本的所属类别。

所述处理器501用于执行前述各方法步骤中的全部或部分步骤。

其中,所述文本分析设备的结构中还可以包括通信接口,用于文本分析设备与其他设备或通信网络通信。

本公开示例性实施例还提供了一种计算机存储介质,用于储存所述文本分析装置所用的计算机软件指令,其包含用于执行上述任一实施例中文本分析方法所涉及的程序。

图6是适于用来实现根据本公开一实施方式的文本分析方法的计算机系统的结构示意图。

如图6所示,计算机系统600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行上述图1所示的实施方式中的各种处理。在ram603中,还存储有系统600操作所需的各种程序和数据。cpu601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。

以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

特别地,根据本公开的实施方式,上文参考图1描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行图1的数据处理方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。

附图中的流程图和框图,图示了按照本公开各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,并且/或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。

作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术标签的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术标签或其等同标签进行任意组合而形成的其它技术方案。例如上述标签与本公开中公开的(但不限于)具有类似功能的技术标签进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1