CN110472063A - 社交媒体数据处理方法、模型训练方法及相关装置 - Google Patents

社交媒体数据处理方法、模型训练方法及相关装置 Download PDF

Info

Publication number
CN110472063A
CN110472063A CN201910629775.8A CN201910629775A CN110472063A CN 110472063 A CN110472063 A CN 110472063A CN 201910629775 A CN201910629775 A CN 201910629775A CN 110472063 A CN110472063 A CN 110472063A
Authority
CN
China
Prior art keywords
sequence
entity
prediction
social media
identified
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910629775.8A
Other languages
English (en)
Other versions
CN110472063B (zh
Inventor
王李鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN201910629775.8A priority Critical patent/CN110472063B/zh
Publication of CN110472063A publication Critical patent/CN110472063A/zh
Application granted granted Critical
Publication of CN110472063B publication Critical patent/CN110472063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例涉及自然语言处理技术领域,提供一种社交媒体数据处理方法、模型训练方法及相关装置,先将获取到的社交媒体数据预处理为多个待识别序列;再将每一待识别序列输入训练后的实体识别模型,先利用嵌入层得到待识别序列的嵌入序列,之后将嵌入序列输入动态神经网络层进行多轮特征提取及序列预测,得到动态神经网络层输出的所有实体序列,再根据所有实体序列得到待识别序列中的所有基本实体和嵌套实体;最后依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果。与现有技术相比,本发明实施例能够得到社交媒体数据中的所有基本实体和嵌套实体,进而帮助人们快速知晓当前社会的最新动态及热点事件。

Description

社交媒体数据处理方法、模型训练方法及相关装置
技术领域
本发明实施例涉及自然语言处理技术领域,具体而言,涉及一种社交媒体数据处理方法、模型训练方法及相关装置。
背景技术
随着信息时代的到来,各种社交媒体大量涌现,例如,社交网站、微博、微信、博客、论坛、百科等。人们越来越习惯于通过各种社交媒体即时获取和分享信息,社交媒体每天都会产生海量数据,涉及政治、经济、军事、娱乐、生活等各个领域。对这些数据进行分析,可以帮助人们快速感知社会热点。
命名实体识别(Named Entity Recognition)是指从文本中识别出人名、地名、组织机构名等专有名称以及有意义的时间、日期等数量短语。命名实体识别是对社交媒体数据进行分析的基础,其能够帮助人们快速知晓当前社会的最新动态及热点事件。
通常,社交媒体数据中除了基本实体,还会包含大量嵌套实体,嵌套实体会包含两层甚至多层基本实体,例如,“黔南布依族苗族自治州”是一个嵌套实体,其中“黔南”和“布依族苗族自治州”是基本实体。现有的方法可以较好地识别出基本实体,但是很难同时识别出完整的嵌套实体,导致识别的准确度不足。
发明内容
本发明实施例的目的在于提供一种社交媒体数据处理方法、模型训练方法及相关装置,用以提高社交媒体数据的实体识别准确度。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种社交媒体数据处理方法,所述方法包括:获取社交媒体数据,并对所述社交媒体数据进行预处理,得到多个待识别序列;将每一待识别序列输入训练后的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;利用所述嵌入层得到所述待识别序列的嵌入序列,所述嵌入序列包括所述待识别序列中每个词的嵌入向量;将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出实体序列,其中,所述实体序列包括多个实体信息;在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到所述动态神经网络层输出的所有实体序列;依据所有实体序列,生成所述待识别序列对应的实体结果,其中,所述实体结果包括所述待识别序列中的所有基本实体和嵌套实体;依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果。
第二方面,本发明实施例还提供了一种模型训练方法,所述方法包括:获取训练样本及所述训练样本对应的多个标注结果,所述训练样本是从社交媒体中获得的文本数据;将所述训练样本输入预先建立的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;利用所述嵌入层得到所述训练样本的嵌入序列,所述嵌入序列包括所述训练样本中每个词的嵌入向量;将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出预测结果;在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果满足预设条件,得到所述动态神经网络层输出的所有预测结果,所有预测结果和多个标注结果一一对应;依据所述所有预测结果和所述多个标注结果,对所述实体识别模型进行参数更新,得到训练后的实体识别模型。
第三方面,本发明实施例还提供了一种社交媒体数据处理装置,所述装置包括序列获取模块、序列输入模块、第一处理模块、第二处理模块、第三处理模块、第四处理模块及结果获得模块。其中,序列获取模块用于获取社交媒体数据,并对所述社交媒体数据进行预处理,得到多个待识别序列;序列输入模块用于将每一待识别序列输入训练后的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;第一处理模块用于利用所述嵌入层得到所述待识别序列的嵌入序列,所述嵌入序列包括所述待识别序列中每个词的嵌入向量;第二处理模块用于将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出实体序列,其中,所述实体序列包括多个实体信息;第三处理模块用于在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到所述动态神经网络层输出的所有实体序列;第四处理模块用于依据所有实体序列,生成所述待识别序列对应的实体结果,其中,所述实体结果包括所述待识别序列中的所有基本实体和嵌套实体;结果获得模块用于依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果。
第四方面,本发明实施例还提供了一种模型训练装置,所述装置包括样本获取模块、样本输入模块、第一执行模块、第二执行模块、第三执行模块及参数更新模块。其中,样本获取模块用于获取训练样本及所述训练样本对应的多个标注结果,所述训练样本是从社交媒体中获得的文本数据;样本输入模块用于将所述训练样本输入预先建立的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;第一执行模块用于利用所述嵌入层得到所述训练样本的嵌入序列,所述嵌入序列包括所述训练样本中每个词的嵌入向量;第二执行模块用于将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出预测结果;第三执行模块用于在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果满足预设条件,得到所述动态神经网络层输出的所有预测结果,所有预测结果和多个标注结果一一对应;参数更新模块用于依据所述所有预测结果和所述多个标注结果,对所述实体识别模型进行参数更新,得到训练后的实体识别模型。
第五方面,本发明实施例还提供了一种电子设备,所述电子设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的社交媒体数据处理方法或者模型训练方法。
第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器实现上述的社交媒体数据处理方法或者模型训练方法。
相对现有技术,本发明实施例提供的一种社交媒体数据处理方法、模型训练方法及相关装置,首先,将获取到的社交媒体数据预处理为多个待识别序列;然后,将每一待识别序列输入训练后的实体识别模型,先利用嵌入层得到待识别序列的嵌入序列,之后将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出包括多个实体信息的实体序列,在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,也就是从当前输入动态神经网络层的输入序列中无法再识别出更上层的实体,得到动态神经网络层输出的所有实体序列,再根据所有实体序列得到待识别序列中的所有基本实体和嵌套实体;最后,依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果。与现有技术相比,本发明实施例能够识别出社交媒体数据中所有的基本实体和嵌套实体,进而帮助人们快速知晓当前社会的最新动态及热点事件。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的社交媒体数据处理方法的流程图。
图2示出了本发明实施例提供的实体识别模型的结构示意图。
图3示出了本发明实施例提供的IDCNN的结构示意图。
图4示出了本发明实施例提供的实体识别模型的一种应用示例图。
图5示出了本发明实施例提供的模型训练方法的流程图。
图6示出了本发明实施例提供的社交媒体数据处理装置的方框示意图。
图7示出了本发明实施例提供的模型训练装置的方框示意图。
图8示出了本发明实施例提供的电子设备的方框示意图。
图标:100-社交媒体数据处理装置;101-序列获取模块;102-序列输入模块;103-第一处理模块;104-第二处理模块;105-第三处理模块;106-第四处理模块;107-结果获得模块;200-模型训练装置;201-样本获取模块; 202-样本输入模块;203-第一执行模块;204-第二执行模块;205-第三执行模块;206-参数更新模块;30-电子设备;31-处理器;32-存储器;33-总线。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
社交媒体(Social Media)是指互联网上基于用户关系的内容生产与交换平台,目前常见的社交媒体包括社交网站、微博、微信、博客、论坛、百科等,用户可以借助电子设备,包括PC(personal computer)端、移动端等,即时获取和分享信息。
社交媒体数据能够反映出社会突发事件的最新情况,通常,社交媒体数据的载体是文本,而命名实体识别是正确理解文本的基础,其主要任务是识别出待处理文本中的人名、地名、组织机构名等专有名称以及有意义的时间、日期等数量短语。命名实体识别对于从海量数据中自动快速地理解文本信息、以及高效精准地从社交媒体数据中获取当前社会的最新动态及热点事件具有重要意义。
但是,由于中文表达的特征性,导致以嵌套形式出现的命名实体在社交媒体数据中非常常见,如“四川省成都市高新区”是三层嵌套的地名,“黔南布依族苗族自治州”是两层嵌套的地名,嵌套实体增加了中文命名实体的识别难度,在识别过程中容易出现只识别出其中嵌套的基本实体的情形,例如,仅识别出“四川省”、“成都市”、“高新区”、“黔南”等基本实体。基于上述问题,本实施例提出一种社交媒体数据处理方法,能够识别出社交媒体数据中的所有基本实体和嵌套实体,从而帮助人们快速知晓当前社会的最新动态及热点事件,下面进行详细描述。
请参照图1,图1示出了本发明实施例提供的社交媒体数据处理方法的流程图。社交媒体数据处理方法可以应用于电子设备,该社交媒体数据处理方法包括以下步骤:
步骤S101,获取社交媒体数据,并对社交媒体数据进行预处理,得到多个待识别序列。
在本实施例中,社交媒体数据可以是从社交网站、微博、微信、博客、论坛、百科等社交媒体中获取到的数据,也就是,社交媒体数据可以包括社交网站数据、微博数据、微信数据、博客数据、论坛数据、百科数据等中的一种或几种。社交媒体数据可以是从社交媒体中爬取得到的,也可以是社交媒体的服务商提供的。另外,在获取社交媒体数据时,可以添加地域、时间、性别、年龄等维度,以微博为例,添加了北京、上海地域维度,则仅获取北京、上海这两个城市的用户微博数据。
获取到社交媒体数据后,需要对社交媒体数据进行预处理,预处理的目的是对社交媒体数据进行数据清洗,以将重复、多余的数据筛选清除,将缺失的数据补充完整,将错误的数据纠正或者删除,去除社交媒体数据中的干扰数据,进而提高实体识别的准确度和识别效率,预处理可以包括以下几个方面:
第一,删除社交媒体数据中不相关的冗余数据;
不相关的冗余数据是指对命名实体识别无用、或者会影响命名实体识别准确度的数据,通常,社交媒体数据会包含发布时间、正文、定位等内容,其中正文可能含有表情、图片、用户账号、话题标签(如,##)、链接、转义字符、用户引用(如,@xx)、多余的空格等,这些表情、图片、用户账号等就是不相关的冗余数据,需要删除。
以微博为例,需要删除微博数据中的非正式符号、图片、链接、表情等,具体删除过程可以包括:首先,删除用户账号,微博数据中,随意、不规则的用户账号对命名实体识别的准确度有很大影响,故需要删除符号“@”及“@”后的用户账号,并统一用“微博账号”代替;然后,删除非正式符号(如,#)、图片、链接、表情等对命名实体识别无用的数据。
第二,删除社交媒体数据中总字数少于预设字数(例如,5)的文本。
通常,嵌套实体的字数会超过预设字数(例如,5),并且总字数少于预设字数(例如,5)的文本必然包含极少的有用信息,因此,删除此类文本对于命名实体识别并不会产生太大影响,而且会提高识别效率。
第三,对社交媒体数据进行语言统一。
社交媒体数据中可能会出现除中文之外的其他语言文字,如英语、韩语、日语等,这些文字会影响识别效率,因此需要删除;另外,还可能会出现繁体字或者其他民族的文字,这些文字会影响识别的准确度,需要统一转换为简体汉字。
第四,经过上述三个步骤的处理后,还需要对得到的社交媒体数据进行分句处理和分词处理,也就是,对于一份社交媒体数据,首先进行分句处理,可以以标点符号为基准进行分句,例如,出现句号或分号则进行分句;然后,对每个句子进行分词,这样就能得到多个待识别序列,待识别序列包括多个词,例如,“贵州省黔东南苗族侗族自治州下辖16个县市”。
步骤S102,将每一待识别序列输入训练后的实体识别模型,实体识别模型包括嵌入层及动态神经网络层。
在本实施例中,将社交媒体数据预处理为多个待识别序列之后,将每一待识别序列输入训练后的实体识别模型进行命名实体识别。请参照图2,实体识别模型包括嵌入层和动态神经网络层,嵌入层用于获得待识别序列中每个词的嵌入向量,动态神经网络层用于预测出待识别序列的多个实体序列,下面通过步骤S103~S105进行详细介绍。
步骤S103,利用嵌入层得到待识别序列的嵌入序列,嵌入序列包括待识别序列中每个词的嵌入向量。
在本实施例中,待识别序列可以表示为x=(x1,x2,…,xn),例如,x=“贵州省/黔东南/苗族/侗族/自治州/下辖/16/个/县/市”,嵌入序列包括待识别序列中每个词的嵌入向量,此处的嵌入向量为词嵌入,嵌入序列可以表示为 e1、e2、…、en,其中,et∈Rn_dim,表示嵌入向量et属于n_dim的向量空间,也就是嵌入向量et的向量长度为n_dim,t=1,2,…,n,n_dim表示每个词的嵌入向量的长度。
嵌入层用于将待识别序列中的每个词向量化,即将词转换为固定长度的嵌入向量,在对各个词向量化时,可以采用随机初始化的方法将每个词向量化,也可以利用机器学习模型将每个词向量化,机器学习模型可以是 Word2Vec、GloVe等。
步骤S104,将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出实体序列,其中,实体序列包括多个实体信息。
在本实施例中,利用嵌入层获得待识别序列的嵌入序列之后,将嵌入序列作为输入序列输入动态神经网络层进行第一轮特征提取及序列预测,输出第一轮的实体序列,再判断当前输出的实体序列(即,第一轮的实体序列)是否满足停止预测条件,停止预测条件是:当前输出的实体序列中所有的实体信息均表征非实体,如果当前输出的实体序列满足停止预测条件,即,第一轮的实体序列中所有的实体信息均表征非实体,则停止预测;如果当前输出的实体序列不满足停止预测条件,即,第一轮的实体序列中所有的实体信息未全部表征非实体,则依据当前输出的实体序列(即,第一轮的实体序列)重新确定输入序列,并将重新确定的输入序列输入动态神经网络层进行第二轮特征提取及序列预测,输出第二轮的实体序列;同样,判断当前输出的实体序列(即,第二轮的实体序列)是否满足停止预测条件,若是则停止预测,若否则依据当前输出的实体序列(即,第二轮的实体序列)重新确定输入序列,并将重新确定的输入序列输入动态神经网络层进行第三轮特征提取及序列预测,以此类推,直至当前输出的实体序列达到停止预测条件,得到动态神经网络层输出的所有实体序列,也就是动态神经网络层停止预测前,进行的每一轮特征提取及序列预测输出的实体序列,例如,动态神经网络层进行了三轮特征提取及序列预测后停止预测,则输出的所有实体序列包括第一轮的实体序列、第二轮的实体序列及第三轮的实体序列。
在本实施例中,动态神经网络层可以包括卷积网络层和标签预测层,卷积网络层可以采用至少一层CNN(Convolutional Neural Networks,卷积神经网络)或至少一层CNN变体或至少一层CNN和CNN变体的组合, CNN或CNN变体在并行计算上具有天生的优势,可以有效提高识别效率。 CNN变体可以包括,但不限于DCNN(Dilated Convolutions NeuralNetwork,空洞卷积神经网络)、IDCNN(Iteration Dilated Convolutions NeuralNetwork,迭代空洞卷积神经网络)、Depthwise Convolution(深度卷积)、PointwiseConvolution(逐点卷积)、Group Convolution(分组卷积)等。标签预测层可以包括前馈神经网络层(feed-forward),或者包括前馈神经网络层+CRF(Conditional randomfield,条件随机场)层。
作为一种实施方式,动态神经网络层包括IDCNN层、前馈神经网络层和CRF层,下面先对IDCNN进行介绍。
IDCNN包括k个堆叠的DCNN,k的大小可以由用户自行设定,同时, IDCNN中每个DCNN的感受野大小λ和膨胀步长width也可以由用户自行设定,感受野大小λ表示DCNN的输出神经元只与其临近的λ个输入神经元有关,DCNN的输入神经元与输出神经元通过膨胀步长width相互连接。
请参照图3,本实施例提供的IDCNN共堆叠了3层DCNN,其中,第 1层DCNN的λ=3,width=1;第2层DCNN的λ=5,width=2;第3层DCNN 的λ=9,width=4,记作层数k=3、感受野大小λ=[3,5,9]、膨胀步长 width=[1,2,4],假设3层DCNN的输出分别为 则得到3层 DCNN的输出依次为:
其中,W1,W2,W3,b1,b2,b3分别为第1层、第2层、第3层DCNN的参数。
将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出实体序列的过程,也就是,动态神经网络层进行第一轮特征提取及序列预测的过程,可以包括:
1,将嵌入序列作为输入序列输入IDCNN层,利用IDCNN层对输入序列进行特征提取,得到特征序列,特征序列包括多个特征向量,其可以用 dn=dn1、dn2、…、dnn表示,n表示预测的轮数,第一轮特征提取及序列预测的特征序列为d11、d12、…、d1n。假设IDCNN层采用如图3所示的结构,则进行第一轮特征提取及序列预测时,IDCNN层的输入序列为嵌入序列e1、e2、…、en、IDCNN层的输出序列为特征序列dn1、dn2、…、dnn,也就是第3 层DCNN的输出
2,将特征序列输入标签预测层,输出实体序列;
在本实施例中,标签预测层包括前馈神经网络层、或者包括前馈神经网络层和CRF层,此处以前馈神经网络层和CRF层为例进行说明。将IDCNN层输出的特征序列dn1、dn2、…、dnn输入标签预测层之后,可以输出第一轮的预测结果,第一轮的预测结果包括待识别序列的所有预测序列及每个预测序列的总得分,并将总得分最高的预测序列作为第一轮的实体序列,实体序列包括多个实体信息。具体来说,将特征序列输入标签预测层,输出实体序列的步骤,可以包括:
首先,将特征序列输入前馈神经网络层,通过前馈神经网络层对特征序列进行学习,得到待识别序列的所有预测序列及每个预测序列的初始得分,其中,每个预测序列均包括多个待识别序列中每个词的实体信息,初始得分包括待识别序列中每个词被预测为一个实体信息的概率之和;
在本实施例中,实体信息也就是实体类别,它与实体识别模型有关,假设实体识别模型能够识别人名、组织机构名和地名三种实体,则每个词实体信息必然是标签Y={B-ORG,I-ORG,B-LOC,I-LOC,B-PER,I-PER,O}中的一种,Y也就是实体类别集合,其中,ORG表示组织机构名,B-ORG表示组织机构名的开始,I-ORG表示组织机构名的中间或结束,LOC表示地名,B-LOC表示地名的开始,I-LOC表示地名的中间或结束,PER表示人名,B-PER表示人名的开始,I-PER表示人名的中间或结束。
假设前馈神经网络层的输出为o1、o2、…、on,即,每个预测序列均可以表示为o1、o2、…、on,则
ot=softmax(Wfdn+bf) (4)
其中,Wf和bf为需要学习的参数;ot的向量长度为实体类别集合Y中的实体类别数m,结合到 Y={B-ORG,I-ORG,B-LOC,I-LOC,B-PER,I-PER,O}则m为7,记作 ot=(ot1,ot2,…,otm);otk表示待识别序列x中的第t个词被预测为实体信息yk的概率。
因此,对于待识别序列x,其第一轮特征提取及序列预测的预测序列可以用表示,任意预测序列的初始得分为:
然后,将每个预测序列的初始得分输入CRF层,通过CRF层引入概率转移矩阵,计算出每个预测序列的总得分,其中,概率转移矩阵表征由一个实体信息转移到另一个实体信息的概率;以 Y={B-ORG,I-ORG,B-LOC,I-LOC,B-PER,I-PER,O}为例,概率转移矩阵可以用于表征当待识别序列中前一个词的实体信息为B-ORG、I-ORG B-LOC、I-LOC、B-PER、I-PER、O时,当前词的实体信息为B-ORG/I-ORG/B-LOC/I-LOC/B-PER/I-PER/O的概率,例如,前一个词的实体信息为B-ORG,则当前词的实体信息不可能为B-ORG,即,由 B-ORG转移到B-ORG的概率为0。
假设概率转移矩阵为A=[Aij],A∈R(m+2)×(m+2),Aij表示由实体信息yi转移到实体信息yj的转移概率,即
对于待识别序列x,任意预测序列的转移得分为:
其中,y0和yn+1分别代表样本序列的起始(start)和结束(end)。
因此,对于待识别序列x,任意预测序列的总得分为:
最后,将总得分最高的预测序列作为待识别序列的实体序列,得到第一轮的预测结果后,从第一轮的预测结果中找出总得分最高的预测序列作为待识别序列的实体序列。
步骤S105,在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到动态神经网络层输出的所有实体序列。
在本实施例中,输出第一轮的实体序列之后,需要判断当前输出的实体序列(即,第一轮的实体序列)是否满足停止预测条件,停止预测条件是:当前输出的实体序列中所有的实体信息均表征非实体,也就是,当前输出的实体序列(即,第一轮的实体序列)中的所有实体信息是否均为O。请参照图4,将待识别序列“贵州省/黔东南/苗族/侗族/自治州/下辖/16/个/ 县/市”对应的嵌入序列作为输入序列输入动态神经网络层进行第一轮特征提取及序列预测,输出的实体序列为 (B-LOC,B-LOC,B-LOC,I-LOC,I-LOC,O,O,O,O,O)。
如果当前输出的实体序列满足停止预测条件,即,第一轮的实体序列中所有的实体信息均表征非实体,则停止预测;如果当前输出的实体序列不满足停止预测条件,即,第一轮的实体序列中所有的实体信息未全部表征非实体,则依据当前输出的实体序列(即,第一轮的实体序列)重新确定输入序列,并将重新确定的输入序列输入动态神经网络层进行第二轮特征提取及序列预测。
可选地,在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列的过程,可以包括:依据当前输出的实体序列,对与当前输出的实体序列对应的特征序列进行修正,得到修正后的特征序列,并将修正后的特征序列作为输入序列。
由于特征序列包括所述待识别序列中每个词的特征向量,则依据当前输出的实体序列,对与当前输出的实体序列对应的特征序列进行修正,得到修正后的特征序列的过程,可以包括:
首先,从当前输出的实体序列(即,第一轮的实体序列)中确定出表征同一实体的所有目标实体信息,同一实体可以时同一个组织机构名、人名、地名,也就是,从当前输出的实体序列(即,第一轮的实体序列)中确定出表征同一个组织机构名、人名、地名的所有目标实体信息,例如,实体序列(B-LOC,B-LOC,B-LOC,I-LOC,I-LOC,O,O,O,O,O)中第3、4、5 这3个实体信息表征同一个地名;
然后,在与当前输出的实体序列对应的特征序列中,将与所有目标实体信息对应的目标特征向量进行合并,得到修正后的特征序列,合并的方式可以采用向量平均。例如,实体序列 (B-LOC,B-LOC,B-LOC,I-LOC,I-LOC,O,O,O,O,O)对应的特征序列为 d11、d12、…、d110,序列长度为10,则根据实体序列中的第3、4、5这3个实体信息将d13、d14、d15合并成一个向量,也就是对d13、d14、d15进行向量平均,即经过修正后,得到修正后的特征序列并将其作为第二轮特征提取及序列预测的输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到动态神经网络层输出的所有实体序列。
例如,将修正后的特征序列作为输入序列,输入动态神经网络层进行第二轮特征提取及序列预测,第二轮特征提取及序列预测时IDCNN层输出的特征序列为d21、d22、…、d28,序列长度为8,输出第二轮的实体序列为(B-LOC,I-LOC,I-LOC,O,O,O,O,O),这里不再详细介绍第二轮特征提取及序列预测的具体过程,可以参考第一轮特征提取及序列预测过程;经过第二轮特征提取及序列预测后,同样根据第二轮的实体序列将第二轮的特征序列d21、d22、…、d28修正为并将其作为第三轮特征提取及序列预测的输入序列,得到第三轮的实体序列为(O,O,O,O,O,O),由于第三轮的实体序列中所有的实体信息均表征非实体,故停止预测,得到动态神经网络层输出的三个实体序列,即,(B-LOC,B-LOC,B-LOC,I-LOC,I-LOC,O,O,O,O,O)、 (B-LOC,I-LOC,I-LOC,O,O,O,O,O)和(O,O,O,O,O,O)。
步骤S106,依据所有实体序列,生成待识别序列对应的实体结果,其中,实体结果包括待识别序列中的所有基本实体和嵌套实体。
在本实施例中,经过步骤S103~S105得到动态神经网络层输出的所有实体序列之后,依据所有实体序列生成待识别序列中的所有基本实体和嵌套实体,此处的基本实体与嵌套实体独立,不是嵌套于嵌套实体中的基本实体。例如,针对待识别序列“贵州省/黔东南/苗族/侗族/自治州/下辖/16/ 个/县/市”,根据得到的三个实体序列得到对应的实体结果{贵州省黔东南苗族侗族自治州/LOC下辖/O16/O个/O县/O市/O},其中“贵州省黔东南苗族侗族自治州”是嵌套实体。
步骤S107,依据所有待识别序列对应的实体结果,得到社交媒体数据对应的处理结果。
作为一种实施方式,处理结果可以是在社交媒体数据中标记出所有的基本实体和嵌套实体,具体过程可以包括:
首先,依据所有待识别序列对应的实体结果,得到社交媒体数据中的所有基本实体和嵌套实体,得到每一待识别序列对应的实体结果之后,可以将所有所有待识别序列对应的实体结果合并到一起得到社交媒体数据对应的实体文本,实体文本包括社交媒体数据中的所有基本实体和嵌套实体;
然后,确定社交媒体数据中的每个基本实体和每个嵌套实体的实体类别,例如,实体类别可以包括组织机构名、人名、地名等;
最后,依据实体类别,对社交媒体数据中的每个基本实体和每个嵌套实体分别进行标记(例如,加粗、倾斜、加下划线、改变字体大小颜色等),得到社交媒体数据对应的处理结果,例如,组织机构名加粗、地名加下划线、人名倾斜等;另外,在标记出每个基本实体和每个嵌套实体时,可以采用特定符号、实体类别的首字母等对修饰进行标记,例如,O、L、P分别表示组织机构名、地名、人名。
例如,对于社交媒体数据“霞浦县地处福建省东北部,是闽东建县历史最悠久的县份,海岸线长404公里,占全省的八分之一,居全省首位。大小岛屿185个。绵长的海岸线和众多的岛屿、港湾成了霞浦地理特色。是中国东南沿海海峡西岸经济区东北翼港口城市。是福建最早开放的对台贸易口岸,是“中国海带之乡”、“中国紫菜之乡”,素有“闽浙要冲”、“鱼米之乡”、“海滨邹鲁”的美誉。”
采用本实施例提供的社交媒体数据处理方法,可以得到处理结果,其中地名加下划线,组织机构名加粗,即:
霞浦县地处福建省东北部,是闽东建县历史最悠久的县份,海岸线长 404公里,占全省的八分之一,居全省首位。大小岛屿185个。绵长的海岸线和众多的岛屿、港湾成了 地理特色。是中国东南沿海海峡西岸经济区东北翼港口城市。是福建最早开放的对台贸易口岸,是“中国海带之乡”、“中国紫菜之乡”,素有“闽浙要冲”、“鱼米之乡”、“海滨邹鲁”的美誉。”
目前,对于社交媒体数据,用户需要阅读文本来了解当前社会的最新动态及热点事件,本实施例提供的社交媒体数据处理方法,可以将社交媒体数据中的所有基本实体和嵌套实体以更加直观的方式展示给用户,从而帮助用户快速获取重要信息。
作为另一种实施方式,处理结果可以包括社交媒体数据中的所有热点实体,具体过程可以包括:首先,依据所有待识别序列对应的实体结果,得到社交媒体数据中的所有基本实体和嵌套实体;然后,统计社交媒体数据中的每个基本实体和每个嵌套实体的频数;最后,依据频数,确定出社交媒体数据中的所有热点实体,社交媒体数据对应的处理结果包括社交媒体数据中的所有热点实体,例如,可以将频数最高的实体作为热点实体;也可以将当天的频数与前一天的频数进行比对,如果出现增比或增幅较大的实体则将其作为热点实体。在用户使用社交媒体时,可以将热点实体进行展示,从而帮助用户快速获取当前社会的最新动态及热点事件。
在对社交媒体数据进行处理时,需要依赖训练后的实体识别模型,故下面对实体识别模型的训练过程进行描述。
请参照图5,图5示出了本发明实施例提供的模型训练方法的流程图。模型训练方法可以应用于电子设备,该模型训练方法包括以下步骤:
步骤S201,获取训练样本及训练样本对应的多个标注结果,训练样本是从社交媒体中获得的文本数据。
在本实施例中,在进行模型训练时,首先需要建立训练样本集,训练样本集包含多个训练样本和每个训练样本对应的多个标注结果,多个标注结果用于标注出训练样本中的所有基本实体和嵌套实体,此处的训练样本对应上述实施例中的待识别序列。训练样本可以用x表示,x的长度可以为 n,即,x=(x1,x2,…,xn);多个标注结果可以用表示,即, N表示多个标注结果的数目,是人工为训练样本中的每个词打上标签集中的某个标签,标签集可以表示为Y={y1,y2,…,yn_classes},n_classes表示标签的类别个数。
针对命名实体识别,假设要识别的实体类别包括人名、组织机构名和地名,则可以定义标签集:
Y={B-ORG,I-ORG,B-LOC,I-LOC,B-PER,I-PER,O}
例如,训练样本“贵州省/黔东南/苗族/侗族/自治州/下辖/16/个/县/市”及其对应的多个标注结果如下表1所示。
表1 训练样本示例
Words Label_1 Label_2 Label_3
贵州省 B-LOC B-LOC O
黔东南 B-LOC I-LOC O
苗族 B-LOC I-LOC O
侗族 I-LOC I-LOC O
自治州 I-LOC I-LOC O
下辖 O O O
16 O O O
O O O
O O O
O O O
表1中的Label_1列是嵌套的最内层标注,即标注实体“贵州省”、“黔东南”“苗族侗族自治州”,对应Label_2列是嵌套的下一层的标注,即标注实体“贵州省黔东南苗族侗族自治州”,对应Label_3列的标注用于界定嵌套命名实体识别的结束,对应即,
标注后的训练样本集中每一行的格式均可以用 word Label_1Label_2Label_3…Label_N表示,N=M+1,其中,M表示所有训练样本中最大的嵌套层数。
训练样本是从社交媒体中获得的文本数据,得到训练样本的方式与上述实施例中得到待识别序列的方式类似,在此不再赘述。
步骤S202,将训练样本输入预先建立的实体识别模型,实体识别模型包括嵌入层及动态神经网络层。
步骤S203,利用嵌入层得到训练样本的嵌入序列,嵌入序列包括训练样本中每个词的嵌入向量。
需要指出的是,步骤S202~S203的具体过程与步骤S102~S103的过程类似,在此不再赘述。
步骤S204,将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出预测结果。
在本实施例中,预测结果包括多个预测序列及每个预测序列的总得分,将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出预测结果的过程,可以包括:首先,将嵌入序列作为输入序列输入 IDCNN层,利用IDCNN层对输入序列进行特征提取,得到特征序列 d11、d12、…、d1n;然后,将特征序列输入标签预测层,输出第一轮的预测结果,第一轮的预测结果包括多个预测序列y1和每个预测序列的总得分S(x,y1),具体的执行过程与步骤S104的过程类似,在此不再赘述。
步骤S205,在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果满足预设条件,得到动态神经网络层输出的所有预测结果,所有预测结果和多个标注结果一一对应。
在本实施例中,将嵌入序列作为输入序列输入动态神经网络层进行第一轮特征提取及序列预测,输出第一轮的预测结果后,需要判断当前输出的预测结果(即,第一轮的预测结果)是否满足预设条件,预设条件可以包括当前输出的预测结果中总得分最高的预测序列中所有的实体信息是否均表征非实体,还可以包括当前输出的预测结果对应的动态神经网络层的执行次数达到预设次数,本实施例中以预设条件包括当前输出的预测结果对应的动态神经网络层的执行次数达到预设次数为例进行描述。
也就是,输出第一轮的预测结果后,需要判断当前输出的预测结果(即,第一轮的预测结果)对应的动态神经网络层的执行次数是否达到预设次数,这里的执行次数就是用动态神经网络层进行预测的轮数,预设次数等于多个标注结果的数目N,例如,结合到表1,N=3;如果当前输出的预测结果 (即,第一轮的预测结果)对应的动态神经网络层的执行次数达到预设次数,则停止预测;
如果当前输出的预测结果(即,第一轮的预测结果)对应的动态神经网络层的执行次数未达到预设次数,则依据当前输出的预测结果(即,第一轮的预测结果)中总得分最高的预测序列,对与当前输出的预测结果(即,第一轮的预测结果)对应的特征序列进行修正,得到修正后的特征序列,这一修正过程与上述社交媒体数据处理方法中的修正过程类似,唯一的区别点在于:还需要修正第二轮特征提取与序列预测的标签。具体来说,假设第一轮特征提取与序列预测时IDCNN输出的特征序列为d11、d12、…、d110,修正后的特征序列为并将其作为第二轮特征提取与序列预测的输入序列;同时,由于训练样本中第3、4、5这3 个词的特征向量合并了,因此训练样本的第二个标注结果中的前三个标签需要统一为第一个标签,最终得到修正后的第二个标注结果将其作为第二轮特征提取与序列预测时需要学习的标签序列;
在修正完成后,将修正后的特征序列作为输入序列输入IDCNN层,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果对应的动态神经网络层的执行次数达到预设次数,得到动态神经网络层输出的所有预测序列,所有预测结果和多个标注结果一一对应。
例如,将修正后的特征序列作为输入序列,输入动态神经网络层进行第二轮特征提取及序列预测,第二轮特征提取及序列预测时IDCNN层输出的特征序列为d21、d22、…、d28,序列长度为10,输出第二轮的预测结果,第二轮的预测结果包括多个预测序列y2和每个预测序列的总得分S(x,y2);经过第二轮特征提取及序列预测后,同样根据第二轮的预测结果中总得分最高的预测序列对特征序列d21、d22、…、d28进行修正,得到修正后的特征序列并将其作为第三轮特征提取及序列预测的输入序列,同时将训练样本的第三个标注结果修正为(B-LOC,I-LOC,I-LOC,O,O,O,O,O),进行第三轮特征提取及序列预测,得到第三轮的预测结果,第三轮的预测结果包括预测序列y3和每个预测序列的总得分S(x,y3),由于此时动态神经网络层的执行次数已达到3次,故停止预测,得到三个预测结果。
步骤S206,依据所有预测结果和多个标注结果,对实体识别模型进行参数更新,得到训练后的实体识别模型。
在本实施例中,经过步骤S102~S105得到动态神经网络层输出的所有预测结果后,依据所有预测结果和多个标注结果之间的误差调节实体识别模型的参数,可以采用反向传播算法实现参数更新,具体过程可以包括:
第一步,依据所有预测结果和与所有预测结果一一对应的多个标注结果,获取多个初始损失函数;
在本实施例中,将嵌入序列输入动态神经网络层,会进行多轮特征提取及序列预测,每一轮特征提取及序列预测都会得到一个预测结果,每一轮特征提取及序列的预测结果都与一个标注结果对应,也就是,每一轮特征提取及序列预测完成后,都能根据该轮的预测结果和标注结果得到一个初始损失函数,第t轮特征提取及序列预测得到的初始损失函数为:
其中,t=1,2,…,N,表示第t轮特征提取及序列预测对应的标注结果,表示第t轮特征提取及序列预测对应的标注结果的总得分,Yx表示训练样本x在第t轮特征提取及序列预测得到的所有预测序列yt表示对第t轮特征提取及序列预测得到的每个预测序列yt的总得分进行求和。
结合到表1所示的训练样本,第一轮特征提取及序列预测得到的初始损失函数为:
第二轮特征提取及序列预测得到的初始损失函数为:
第三轮特征提取及序列预测得到的初始损失函数为:
第二步,对多个初始损失函数进行求和,得到损失函数;
在本实施例中,实体识别模型的损失函数可以表示为:
loss=loss1+loss2+…+lossN (13)
结合到表1所示的训练样本,实体识别模型的损失函数为 loss=loss1+loss2+loss3
第四步,依据损失函数对实体识别模型进行参数更新,直至损失函数满足预设收敛条件,得到训练后的实体识别模型。
在本实施例中,由于损失函数是用于衡量实体识别模型得到的预测结果与真实结果的不一致程度的函数,损失函数越小,则表明实体识别注模型的性能越好,因此,可以通过计算损失函数的梯度来优化损失函数,直至损失函数达到最小值。
可以通过梯度下降法来计算损失函数的梯度,并根据损失函数的梯度更新实体识别模型中IDCNN层的参数W1,W2,W3,b1,b2,b3、前馈神经网络层的参数Wf和bf、以及CRF层的概率转移矩阵A=[Aij];根据损失函数的梯度更新实体识别模型的参数之后,需要损失函数是否满足预设收敛条件,预设收敛条件是指损失函数达到最小值,具体地,预设收敛条件可以是根据经验设定的预设次数(例如,5000次)或者预设值(例如,0.05)。也就是,当实体识别模型的迭代次数达到预设次数、或者损失函数达到预设值时,停止实体识别模型的参数更新,得到训练后的实体识别模型。
与现有技术相比,本发明实施例具有以下有益效果:
首先,将嵌入序列输入动态神经网络层进行多轮特征提取及序列预测,从而能够得到社交媒体数据中的所有基本实体和嵌套实体;
其次,动态神经网络层包括至少一层CNN或至少一层CNN变体或至少一层CNN和CNN变体的组合,CNN或CNN变体在并行计算上具有天生的优势,可以有效缩短训练和测试阶段的时长,并提高识别效率;
最后,利用训练后的实体识别模型处理社交媒体数据,能够生成社交媒体数据对应的处理结果,用户通过处理结果可以快速获取当前社会的最新动态及热点事件。
请参照图6,图6示出了本发明实施例提供的社交媒体数据处理装置 100的方框示意图。社交媒体数据处理装置100包括序列获取模块101、序列输入模块102、第一处理模块103、第二处理模块104、第三处理模块105、第四处理模块106及结果获得模块107。
序列获取模块101,用于获取社交媒体数据,并对社交媒体数据进行预处理,得到多个待识别序列。
序列输入模块102,用于将每一待识别序列输入训练后的实体识别模型,实体识别模型包括嵌入层及动态神经网络层。
第一处理模块103,用于利用嵌入层得到待识别序列的嵌入序列,嵌入序列包括待识别序列中每个词的嵌入向量。
第二处理模块104,用于将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出实体序列,其中,实体序列包括多个实体信息。
第三处理模块105,用于在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到动态神经网络层输出的所有实体序列。
在本实施例中,动态神经网络层包括迭代空洞卷积神经网络IDCNN层和标签预测层;第二处理模块104,具体用于:将嵌入序列作为输入序列输入IDCNN层,利用IDCNN层对嵌入输入序列进行特征提取,得到特征序列;将特征序列输入标签预测层,输出实体序列。
在本实施例中,第三处理模块105执行在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列的方式,包括:在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列,对与当前输出的实体序列对应的特征序列进行修正,得到修正后的特征序列,并将修正后的特征序列作为输入序列。
在本实施例中,标签预测层包括前馈神经网络层和条件随机场CRF层;第二处理模块104执行将特征序列输入标签预测层,输出实体序列的方式,包括:将特征序列输入前馈神经网络层,通过前馈神经网络层对特征序列进行学习,得到待识别序列的所有预测序列及每个预测序列的初始得分,其中,每个预测序列均包括多个待识别序列中每个词的实体信息,初始得分包括待识别序列中每个词被预测为一个实体信息的概率之和;将每个预测序列的初始得分输入CRF层,通过CRF层引入概率转移矩阵,计算出每个预测序列的总得分,其中,概率转移矩阵表征由一个实体信息转移到另一个实体信息的概率;将总得分最高的预测序列作为待识别序列的实体序列。
在本实施例中,特征序列包括待识别序列中每个词的特征向量;第三处理模块105执行依据当前输出的实体序列,对与当前输出的实体序列对应的特征序列进行修正,得到修正后的特征序列的方式,包括:从当前输出的实体序列中确定出表征同一实体的所有目标实体信息;在与当前输出的实体序列对应的特征序列中,将与所有目标实体信息对应的目标特征向量进行合并,得到修正后的特征序列。
第四处理模块106,用于依据所有实体序列,生成待识别序列对应的实体结果,其中,实体结果包括待识别序列中的所有基本实体和嵌套实体。
结果获得模块107,用于依据所有待识别序列对应的实体结果,得到社交媒体数据对应的处理结果。
在本实施例中,结果获得模块107,具体用于:依据所有待识别序列对应的实体结果,得到社交媒体数据中的所有基本实体和嵌套实体;确定社交媒体数据中的每个基本实体和每个嵌套实体的实体类别;依据实体类别,对社交媒体数据中的每个基本实体和每个嵌套实体分别进行标记,得到社交媒体数据对应的处理结果。
在本实施例中,结果获得模块107,具体还用于:依据所有待识别序列对应的实体结果,得到社交媒体数据中的所有基本实体和嵌套实体;统计社交媒体数据中的每个基本实体和每个嵌套实体的频数;依据频数,确定出社交媒体数据中的所有热点实体,社交媒体数据对应的处理结果包括社交媒体数据中的所有热点实体。
请参照图7,图7示出了本发明实施例提供的模型训练装置200的方框示意图。模型训练装置200包括样本获取模块201、样本输入模块202、第一执行模块203、第二执行模块204、第三执行模块205及参数更新模块206。
样本获取模块201,用于获取训练样本及训练样本对应的多个标注结果,所述训练样本是从社交媒体中获得的文本数据。
样本输入模块202,用于将训练样本输入预先建立的实体识别模型,实体识别模型包括嵌入层及动态神经网络层。
第一执行模块203,用于利用嵌入层得到训练样本的嵌入序列,嵌入序列包括训练样本中每个词的嵌入向量。
第二执行模块204,用于将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出预测结果。
第三执行模块205,用于在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果满足预设条件,得到动态神经网络层输出的所有预测结果,所有预测结果和多个标注结果一一对应。
在本实施例中,动态神经网络层包括IDCNN层和标签预测层,每个预测结果均包括多个预测序列及每个预测序列的总得分;第二执行模块204,具体用于:将嵌入序列作为输入序列输入IDCNN层,利用IDCNN层对输入序列进行特征提取,得到特征序列;将特征序列输入标签预测层,输出预测结果。
在本实施例中,预设条件包括当前输出的预测结果对应的动态神经网络层的执行次数达到预设次数,第三执行模块205执行在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列的方式,包括:在当前输出的预测结果对应的动态神经网络层的执行次数未达到预设次数时,依据当前输出的预测结果中总得分最高的预测序列,对与当前输出的预测结果对应的特征序列进行修正,得到修正后的特征序列。
参数更新模块206,用于依据所有预测结果和多个标注结果,对实体识别模型进行参数更新,得到训练后的实体识别模型。
在本实施例中,参数更新模块206,具体用于依据所有预测结果和与所有预测结果一一对应的多个标注结果,获取多个初始损失函数;对多个初始损失函数进行求和,得到损失函数;依据损失函数对实体识别模型进行参数更新,直至损失函数满足预设收敛条件,得到训练后的实体识别模型。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的社交媒体数据处理装置100和模型训练装置200的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
请参照图8,图8示出了本发明实施例提供的电子设备30的方框示意图。电子设备30包括处理器31、存储器32及总线33,处理器31和存储器32通过总线33连接。
存储器32用于存储程序,例如社交媒体数据处理装置100和/或模型训练装置200,处理器31在接收到执行指令后,执行所述程序以实现发明上述实施例揭示的社交媒体数据处理方法或者模型训练方法。
电子设备30可以是通用计算机或特殊用途的计算机,两者都可以用于实现本发明实施例的社交媒体数据处理方法或者模型训练方法,也就是,社交媒体数据处理方法和模型训练方法的执行主体可以是同一个计算机,可以是不同的计算机。本发明实施例尽管仅示出了一个计算机,但是为了方便起见,可以在多个类似平台上以分布式方式实现本申请描述的功能,以均衡处理负载。
存储器32可能包括高速随机存取存储器(RAM:Random Access Memory),也可能还包括非易失存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器31可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器31中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器31可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器31执行时实现上述实施例揭示的社交媒体数据处理方法或者模型训练方法。
综上所述,本发明实施例提供的一种社交媒体数据处理方法、模型训练方法及相关装置,所述社交媒体数据处理方法包括:获取社交媒体数据,并对社交媒体数据进行预处理,得到多个待识别序列;将每一待识别序列输入训练后的实体识别模型,实体识别模型包括嵌入层及动态神经网络层;利用嵌入层得到待识别序列的嵌入序列,嵌入序列包括待识别序列中每个词的嵌入向量;将嵌入序列作为输入序列输入动态神经网络层进行特征提取及序列预测,输出实体序列,其中,实体序列包括多个实体信息;在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将输入序列输入动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到动态神经网络层输出的所有实体序列;依据所有实体序列,生成待识别序列对应的实体结果,其中,实体结果包括待识别序列中的所有基本实体和嵌套实体;依据所有待识别序列对应的实体结果,得到社交媒体数据对应的处理结果。与现有技术相比,本发明实施例能够得到社交媒体数据中的所有基本实体和嵌套实体,进而帮助人们快速知晓当前社会的最新动态及热点事件。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

Claims (13)

1.一种社交媒体数据处理方法,其特征在于,所述方法包括:
获取社交媒体数据,并对所述社交媒体数据进行预处理,得到多个待识别序列;
将每一待识别序列输入训练后的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;
利用所述嵌入层得到所述待识别序列的嵌入序列,所述嵌入序列包括所述待识别序列中每个词的嵌入向量;
将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出实体序列,其中,所述实体序列包括多个实体信息;
在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到所述动态神经网络层输出的所有实体序列;
依据所有实体序列,生成所述待识别序列对应的实体结果,其中,所述实体结果包括所述待识别序列中的所有基本实体和嵌套实体;
依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果。
2.如权利要求1所述的方法,其特征在于,所述动态神经网络层包括迭代空洞卷积神经网络IDCNN层和标签预测层;
所述将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出实体序列的步骤,包括:
将所述嵌入序列作为输入序列输入IDCNN层,利用所述IDCNN层对所述输入序列进行特征提取,得到特征序列;
将所述特征序列输入所述标签预测层,输出实体序列;
所述在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列的步骤,包括:
在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列,对与当前输出的实体序列对应的特征序列进行修正,得到修正后的特征序列,并将所述修正后的特征序列作为输入序列。
3.如权利要求2所述的方法,其特征在于,所述标签预测层包括前馈神经网络层和条件随机场CRF层;
所述将所述特征序列输入所述标签预测层,输出实体序列的步骤,包括:
将所述特征序列输入所述前馈神经网络层,通过所述前馈神经网络层对所述特征序列进行学习,得到所述待识别序列的所有预测序列及每个预测序列的初始得分,其中,每个预测序列均包括多个所述待识别序列中每个词的实体信息,所述初始得分包括所述待识别序列中每个词被预测为一个实体信息的概率之和;
将每个预测序列的初始得分输入CRF层,通过所述CRF层引入概率转移矩阵,计算出每个预测序列的总得分,其中,所述概率转移矩阵表征由一个实体信息转移到另一个实体信息的概率;
将总得分最高的预测序列作为所述待识别序列的实体序列。
4.如权利要求2所述的方法,其特征在于,所述特征序列包括所述待识别序列中每个词的特征向量;
所述依据当前输出的实体序列,对与当前输出的实体序列对应的特征序列进行修正,得到修正后的特征序列的步骤,包括:
从当前输出的实体序列中确定出表征同一实体的所有目标实体信息;
在与当前输出的实体序列对应的特征序列中,将与所有目标实体信息对应的目标特征向量进行合并,得到修正后的特征序列。
5.如权利要求1所述的方法,其特征在于,所述依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果的步骤,包括:
依据所有待识别序列对应的实体结果,得到所述社交媒体数据中的所有基本实体和嵌套实体;
确定所述社交媒体数据中的每个基本实体和每个嵌套实体的实体类别;
依据所述实体类别,对所述社交媒体数据中的每个基本实体和每个嵌套实体分别进行标记,得到所述社交媒体数据对应的处理结果。
6.如权利要求1所述的方法,其特征在于,所述依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果的步骤,包括:
依据所有待识别序列对应的实体结果,得到所述社交媒体数据中的所有基本实体和嵌套实体;
统计所述社交媒体数据中的每个基本实体和每个嵌套实体的频数;
依据所述频数,确定出所述社交媒体数据中的所有热点实体,所述社交媒体数据对应的处理结果包括所述社交媒体数据中的所有热点实体。
7.一种模型训练方法,其特征在于,所述方法包括:
获取训练样本及所述训练样本对应的多个标注结果,所述训练样本是从社交媒体中获得的文本数据;
将所述训练样本输入预先建立的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;
利用所述嵌入层得到所述训练样本的嵌入序列,所述嵌入序列包括所述训练样本中每个词的嵌入向量;
将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出预测结果;
在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果满足预设条件,得到所述动态神经网络层输出的所有预测结果,所有预测结果和多个标注结果一一对应;
依据所述所有预测结果和所述多个标注结果,对所述实体识别模型进行参数更新,得到训练后的实体识别模型。
8.如权利要求7所述的方法,其特征在于,所述动态神经网络层包括IDCNN层和标签预测层,所述预设条件包括当前输出的预测结果对应的所述动态神经网络层的执行次数达到预设次数,每个预测结果均包括多个预测序列及每个预测序列的总得分;
所述将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出预测结果的步骤,包括:
将所述嵌入序列作为输入序列输入IDCNN层,利用所述IDCNN层对所述输入序列进行特征提取,得到特征序列;
将所述特征序列输入所述标签预测层,输出预测结果;
所述在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列的步骤,包括:
在当前输出的预测结果对应的所述动态神经网络层的执行次数未达到预设次数时,依据当前输出的预测结果中总得分最高的预测序列,对与当前输出的预测结果对应的特征序列进行修正,得到修正后的特征序列。
9.如权利要求7所述的方法,其特征在于,所述依据所述所有预测结果和所述多个标注结果,对所述实体识别模型进行参数更新,得到训练后的实体识别模型的步骤,包括:
依据所述所有预测结果和与所述所有预测结果一一对应的所述多个标注结果,获取多个初始损失函数;
对所述多个初始损失函数进行求和,得到损失函数;
依据所述损失函数对所述实体识别模型进行参数更新,直至所述损失函数满足预设收敛条件,得到训练后的实体识别模型。
10.一种社交媒体数据处理装置,其特征在于,所述装置包括:
序列获取模块,用于获取社交媒体数据,并对所述社交媒体数据进行预处理,得到多个待识别序列;
序列输入模块,用于将每一待识别序列输入训练后的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;
第一处理模块,用于利用所述嵌入层得到所述待识别序列的嵌入序列,所述嵌入序列包括所述待识别序列中每个词的嵌入向量;
第二处理模块,用于将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出实体序列,其中,所述实体序列包括多个实体信息;
第三处理模块,用于在当前输出的实体序列中所有的实体信息未全部表征非实体时,依据当前输出的实体序列重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的实体序列中所有的实体信息均表征非实体,得到所述动态神经网络层输出的所有实体序列;
第四处理模块,用于依据所有实体序列,生成所述待识别序列对应的实体结果,其中,所述实体结果包括所述待识别序列中的所有基本实体和嵌套实体;
结果获得模块,用于依据所有待识别序列对应的实体结果,得到所述社交媒体数据对应的处理结果。
11.一种模型训练装置,其特征在于,所述装置包括:
样本获取模块,用于获取训练样本及所述训练样本对应的多个标注结果,所述训练样本是从社交媒体中获得的文本数据;
样本输入模块,用于将所述训练样本输入预先建立的实体识别模型,所述实体识别模型包括嵌入层及动态神经网络层;
第一执行模块,用于利用所述嵌入层得到所述训练样本的嵌入序列,所述嵌入序列包括所述训练样本中每个词的嵌入向量;
第二执行模块,用于将所述嵌入序列作为输入序列输入所述动态神经网络层进行特征提取及序列预测,输出预测结果;
第三执行模块,用于在当前输出的预测结果不满足预设条件时,依据当前输出的预测结果重新确定输入序列,并重复执行将所述输入序列输入所述动态神经网络层进行特征提取及序列预测的步骤,直至当前输出的预测结果满足预设条件,得到所述动态神经网络层输出的所有预测结果,所有预测结果和多个标注结果一一对应;
参数更新模块,用于依据所述所有预测结果和所述多个标注结果,对所述实体识别模型进行参数更新,得到训练后的实体识别模型。
12.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-6中任一项所述的社交媒体数据处理方法,或者,如权利要求7-9中任一项所述的模型训练方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-6中任一项所述的社交媒体数据处理方法,或者,如权利要求7-9中任一项所述的模型训练方法。
CN201910629775.8A 2019-07-12 2019-07-12 社交媒体数据处理方法、模型训练方法及相关装置 Active CN110472063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910629775.8A CN110472063B (zh) 2019-07-12 2019-07-12 社交媒体数据处理方法、模型训练方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910629775.8A CN110472063B (zh) 2019-07-12 2019-07-12 社交媒体数据处理方法、模型训练方法及相关装置

Publications (2)

Publication Number Publication Date
CN110472063A true CN110472063A (zh) 2019-11-19
CN110472063B CN110472063B (zh) 2022-04-08

Family

ID=68508213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910629775.8A Active CN110472063B (zh) 2019-07-12 2019-07-12 社交媒体数据处理方法、模型训练方法及相关装置

Country Status (1)

Country Link
CN (1) CN110472063B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111160035A (zh) * 2019-12-31 2020-05-15 北京明朝万达科技股份有限公司 文本语料的处理方法和装置
CN111241832A (zh) * 2020-01-15 2020-06-05 北京百度网讯科技有限公司 核心实体标注方法、装置及电子设备
CN115906810A (zh) * 2022-12-13 2023-04-04 中科世通亨奇(北京)科技有限公司 基于时间序列和观点挖掘的异常言论分析方法及设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108664589A (zh) * 2018-05-08 2018-10-16 苏州大学 基于领域自适应的文本信息提取方法、装置、系统及介质
CN108829681A (zh) * 2018-06-28 2018-11-16 北京神州泰岳软件股份有限公司 一种命名实体提取方法及装置
CN108829678A (zh) * 2018-06-20 2018-11-16 广东外语外贸大学 一种汉语国际教育领域命名实体识别方法
CN109145303A (zh) * 2018-09-06 2019-01-04 腾讯科技(深圳)有限公司 命名实体识别方法、装置、介质以及设备
US20190095515A1 (en) * 2017-09-25 2019-03-28 International Business Machines Corporation Automatic feature learning from a relational database for predictive modelling
US20190138973A1 (en) * 2017-11-03 2019-05-09 Drishti Technologies Inc. Systems and methods for automatic job assignment
CN109863488A (zh) * 2016-10-24 2019-06-07 微软技术许可有限责任公司 神经网络数据输入系统的设备/服务器部署
CN109871535A (zh) * 2019-01-16 2019-06-11 四川大学 一种基于深度神经网络的法语命名实体识别方法
CN109902296A (zh) * 2019-01-18 2019-06-18 华为技术有限公司 自然语言处理方法、训练方法及数据处理设备
CN109902307A (zh) * 2019-03-15 2019-06-18 北京金山数字娱乐科技有限公司 命名实体识别方法、命名实体识别模型的训练方法及装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109863488A (zh) * 2016-10-24 2019-06-07 微软技术许可有限责任公司 神经网络数据输入系统的设备/服务器部署
US20190095515A1 (en) * 2017-09-25 2019-03-28 International Business Machines Corporation Automatic feature learning from a relational database for predictive modelling
US20190138973A1 (en) * 2017-11-03 2019-05-09 Drishti Technologies Inc. Systems and methods for automatic job assignment
CN108664589A (zh) * 2018-05-08 2018-10-16 苏州大学 基于领域自适应的文本信息提取方法、装置、系统及介质
CN108829678A (zh) * 2018-06-20 2018-11-16 广东外语外贸大学 一种汉语国际教育领域命名实体识别方法
CN108829681A (zh) * 2018-06-28 2018-11-16 北京神州泰岳软件股份有限公司 一种命名实体提取方法及装置
CN109145303A (zh) * 2018-09-06 2019-01-04 腾讯科技(深圳)有限公司 命名实体识别方法、装置、介质以及设备
CN109871535A (zh) * 2019-01-16 2019-06-11 四川大学 一种基于深度神经网络的法语命名实体识别方法
CN109902296A (zh) * 2019-01-18 2019-06-18 华为技术有限公司 自然语言处理方法、训练方法及数据处理设备
CN109902307A (zh) * 2019-03-15 2019-06-18 北京金山数字娱乐科技有限公司 命名实体识别方法、命名实体识别模型的训练方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
闫海磊等: "一种面向时政新闻的命名实体识别方法", 《北京信息科技大学学报(自然科学版)》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111160035A (zh) * 2019-12-31 2020-05-15 北京明朝万达科技股份有限公司 文本语料的处理方法和装置
CN111160035B (zh) * 2019-12-31 2023-06-20 北京明朝万达科技股份有限公司 文本语料的处理方法和装置
CN111241832A (zh) * 2020-01-15 2020-06-05 北京百度网讯科技有限公司 核心实体标注方法、装置及电子设备
CN111241832B (zh) * 2020-01-15 2023-08-15 北京百度网讯科技有限公司 核心实体标注方法、装置及电子设备
CN115906810A (zh) * 2022-12-13 2023-04-04 中科世通亨奇(北京)科技有限公司 基于时间序列和观点挖掘的异常言论分析方法及设备

Also Published As

Publication number Publication date
CN110472063B (zh) 2022-04-08

Similar Documents

Publication Publication Date Title
CN108920654A (zh) 一种问答文本语义匹配的方法和装置
CN110032632A (zh) 基于文本相似度的智能客服问答方法、装置及存储介质
CN107797992A (zh) 命名实体识别方法及装置
CN107168992A (zh) 基于人工智能的文章分类方法及装置、设备与可读介质
CN112819023B (zh) 样本集的获取方法、装置、计算机设备和存储介质
CN107729309A (zh) 一种基于深度学习的中文语义分析的方法及装置
CN104598611B (zh) 对搜索条目进行排序的方法及系统
CN111444320A (zh) 文本检索方法、装置、计算机设备和存储介质
CN110674312B (zh) 构建知识图谱方法、装置、介质及电子设备
CN107180023A (zh) 一种文本分类方法及系统
CN110472063A (zh) 社交媒体数据处理方法、模型训练方法及相关装置
CN107704512A (zh) 基于社交数据的金融产品推荐方法、电子装置及介质
CN111340054A (zh) 数据标注方法、装置及数据处理设备
CN110019736A (zh) 基于语言模型的问答匹配方法、系统、设备及存储介质
CN111400584A (zh) 联想词的推荐方法、装置、计算机设备和存储介质
CN109598517A (zh) 商品通关处理、对象的处理及其类别预测方法和装置
CN108733644A (zh) 一种文本情感分析方法、计算机可读存储介质及终端设备
CN108959474A (zh) 实体关系提取方法
CN110457677A (zh) 实体关系识别方法及装置、存储介质、计算机设备
CN113806537A (zh) 商品类目分类方法及其装置、设备、介质、产品
CN116797195A (zh) 工单处理方法、装置、计算机设备和计算机可读存储介质
CN114880491A (zh) 一种事理图谱自动构建方法和系统
CN110489730A (zh) 文本处理方法、装置、终端及存储介质
CN112132269B (zh) 模型处理方法、装置、设备及存储介质
CN115618043B (zh) 文本操作图互检方法及模型训练方法、装置、设备、介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant