CN111753081A - 基于深度skip-gram网络的文本分类的***和方法 - Google Patents
基于深度skip-gram网络的文本分类的***和方法 Download PDFInfo
- Publication number
- CN111753081A CN111753081A CN201911100393.2A CN201911100393A CN111753081A CN 111753081 A CN111753081 A CN 111753081A CN 201911100393 A CN201911100393 A CN 201911100393A CN 111753081 A CN111753081 A CN 111753081A
- Authority
- CN
- China
- Prior art keywords
- skip
- gram
- sequence
- generating
- computer
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本文中描述的是用于将结合skip‑gram卷积来提取非连续本地n‑gram模式以用于改变文本表达的综合信息的***和方法的实施方式。在一个或多个实施方式中,采用一个或多个循环神经网络经由链状架构以从局部水平到顺序和全局水平的方式提取长程特征。对广泛用于文本分类任务的大规模数据集进行了综合实验以表明所提出的深度skip‑gram网络实施方式的有效性。对各种数据集的性能评估表明skip‑gram网络的实施方式对于一般文本分类任务集是强大的。skip‑gram模型是稳健的,并且可在不同的数据集上很好地概括,甚至不需要调整特定数据集的超参数。
Description
技术领域
本公开总体上涉及用于文本分类的***和方法。更具体地,本公开涉及使用长程特征和局部模式特征进行文本分类的***和方法。
背景技术
文本分类旨在将预定义的标签分配给文本,其为自然语言处理不可或缺的任务之一。它有许多潜在的应用,诸如意见挖掘和情感分析、网络搜索、信息检索、排名和文档分类。由于其重要性,文本分类已经研究了几十年。由于文本表达的变化很大,现有的文本分类方法可能无法很好地捕获文本中的长程特征或抽象级特征。
相应地,需要使用长程特征和局部模式特征进行文本分类的***和方法。
发明内容
根据本申请的一个方面,公开了用于使用一个或多个处理器进行文本分类以使得以下步骤被执行的计算机实现的方法,所述步骤包括:
生成一组skip-gram序列,其中所述一组skip-gram序列包括具有来自包括一个或多个词的文本输入的非连续标记并且具有相关的ground-truth类别标签的至少一个skip-gram序列;
将每个skip-gram序列转换成相应的词向量;
通过skip-gram卷积模块、至少基于每个skip-gram序列的词向量而分别为每个skip-gram序列生成单独的skip-gram特征图,所述单独的skip-gram特征图根据相应的skip-gram序列的起始位置和总跳跃大小来分组;
对每组单独的skip-gram特征图执行最大池化以生成用于所述组的代表性特征图;
在循环模块处使用每组的所述代表性特征图生成一个或多个隐藏状态;
使用softmax层基于所述一个或多个隐藏状态来生成用于所述文本输入的类别的概率分布;以及
基于所述相关的ground-truth类别标签和所述类别的概率分布来计算损失,以更新用于所述skip-gram卷积模块和所述循环模块中的至少一个的参数。
根据本申请的另一方面,公开了用于使用一个或多个处理器进行文本分类以使得以下步骤被执行的计算机实现的方法,所述步骤包括:
生成一组skip-gram序列,其中所述一组skip-gram序列包括具有来自包括一组词的文本输入的非连续标记的至少一个skip-gram序列;
通过skip-gram卷积模块、至少基于每个skip-gram序列的词向量来分别为每个skip-gram序列生成单独的skip-gram特征图,所述单独的skip-gram特征图根据相应的skip-gram序列的起始位置和总跳跃大小来分组;
对每组单独的skip-gram特征图执行最大池化以生成所述组的代表性特征图;
将每组的所述代表性特征图连结成输入向量;
使用循环神经网络(RNN)基于所述输入向量而生成最终隐藏状态;以及
使用softmax层基于一个或多个所述最终隐藏状态来生成所述文本输入的类别概率分布以用于文本分类确定。
根据本申请的又一方面,公开了用于使用一个或多个处理器进行文本分类以使得以下步骤被执行的计算机实现的方法,所述步骤包括:
生成一组skip-gram序列,其中所述一组skip-gram序列包括具有来自包括一组词的文本输入的非连续标记的至少一个skip-gram序列;
通过skip-gram卷积模块、至少基于每个skip-gram序列的词向量来分别为每个skip-gram序列生成单独的skip-gram特征图,所述单独的skip-gram特征图根据相应的skip-gram序列的起始位置和总跳跃大小来分组;
对每组单独的skip-gram特征图执行最大池化以生成所述组的代表性特征图;
分别将每个跳跃大小的代表性特征图连结成经连结的单独向量;
将每个经连结的单独向量馈送到多个循环神经网络(RNN)的相应的RNN;
在每个相应的RNN处基于所述经连结的单独向量来生成最后隐藏状态;以及
使用softmax层基于每个相应的RNN的所述最后隐藏状态来生成所述文本输入的类别概率分布以用于文本分类确定。
附图说明
将参考本发明实施方式,其示例可在附图中示出。这些附图旨在是说明性的,而不是限制性的。尽管在这些实施方式的上下文中总体描述了本发明,但应理解的是,其并不旨在将本发明的范围限制于这些特定的实施方式。图中的项目不是按比例的。
图1描绘了根据本公开的实施方式的用于文本分类的深度skip-gram网络模型的框图。
图2图形地描绘了根据本公开的实施方式的示例性2-skip-3-gram。
图3图形地描绘了根据本公开的实施方式的skip-gram卷积和最大池化层。
图4描绘了根据本公开的实施方式的用于skip-gram卷积和最大池化的方法。
图5描绘了根据本公开的实施方式的具有用于所有skip-gram卷积的唯一循环神经网络(唯一RNN)的深度skip-gram网络架构。
图6描绘了根据本公开的实施方式的使用具有唯一RNN的深度skip-gram网络进行文本分类的方法。
图7描绘了根据本公开的实施方式的分别针对每个skip-gram卷积输出的具有多个循环神经网络(多个RNN)的深度skip-gram网络架构。
图8描绘了根据本公开的实施方式的使用具有多个RNN的深度skip-gram网络进行文本分类的方法。
图9描绘了根据本文献的实施方式的计算设备/信息处理***的简化框图。
具体实施方式
在下面的描述中,为了解释的目的,阐述了具体细节以提供对本公开的理解。然而,对于本领域技术人员显而易见的是,实施方式可在没有这些细节的情况下被实践。此外,本领域技术人员将认识到,下面描述的本公开的实施方式可以以诸如有形计算机可读介质上的过程、设备、***、装置或方法的各种方式来实现。
附图中所示的部件或模块是对本发明示例性实施方式的说明,并且旨在避免混淆本公开。还应理解的是,在整个讨论中,部件可被描述为分离的功能单元,其可包括子单元,但是本领域技术人员将认识到各种部件或其部分可被划分成单独的部件或者可集成在一起,包括集成在单个***或部件内。应注意,本文中所讨论的功能或操作可被实现为部件。部件可以以软件、硬件或其组合来实现。
此外,附图内部件或***之间的连接不旨在限于直接连接。相反,这些部件之间的数据可由中间部件修改、重新格式化或者以其它方式改变。此外,附加或更少的连接可被使用。还应注意,术语“联接”、“连接”或“通信地联接”应被理解为包括直接连接、经由一个或多个中间装置的间接连接以及无线连接。
在说明书中对“一个实施方式”、“优选实施方式”、“实施方式”或“多个实施方式”的引用意味着结合该实施方式描述的特定特征、结构、特性或功能被包括在本发明的至少一个实施方式中并且可在多于一个实施方式中。此外,上述短语在说明书中各处的出现不一定都指相同的一个或多个实施方式。
某些术语在说明书中各处的使用仅用于说明,并不应被解释为限制。服务、功能或资源不限于单个服务、功能或资源;这些术语的使用可指示可被分布或聚合的相关服务、功能或资源的分组。图像可为静止图像或来自视频。
术语“包括(include)”,“包括(including)”,“包括(comprise)”和“包括(comprising)”应被理解为开放性术语,并且下面的任何列表是示例,且不意味着限于所列出的项目。本文中所使用的任何标题仅用于组织的目的,并且不应被用于限制说明书或权利要求的范围。本专利文献中所提及的每个引用文献通过引用以其整体地并入本文。
此外,本领域技术人员应认识到:(1)某些步骤可选择地执行;(2)步骤可不限于本文中所提及的具体顺序;(3)某些步骤可以不同的顺序执行;以及(4)某些步骤可同时进行。
A.引言
文本分类旨在将预定义的标签分配给文本,其为自然语言处理不可或缺的任务之一。它有许多潜在的应用,诸如意见挖掘和情感分析、网络搜索、信息检索、排名和文档分类。由于其重要性,文本分类已经研究了几十年。
传统上,许多研究人员专注于设计从文本中提取的各种特征,诸如词袋、词性标签、名词短语和内核。为了区分开不同特征的有用性,很大程度上探索特征选择或特征工程。在提取的特征之上执行若干分类模型,诸如朴素贝叶斯和支持向量机。这种传统方法的缺点是特征工程过程是耗时的并且可能不适用于大规模文本数据。
近年来,人们越来越普遍地将深度神经网络应用于各种域,包括计算机视觉和自然语言处理,因为这样的网络具有从原始数据自动学习有用特征的强大能力。一些研究将卷积神经网络(CNN)和循环神经网络(RNN)应用于许多自然语言处理任务,并且这些神经网络在文本分类上的表现是有希望的。这些趋势鼓励研究人员提出用于文本分类的各种神经网络结构。在这些提出的结构中,基于CNN的模型可提取局部位置不变特征,而基于RNN的模型可捕获顺序特征。
然而,由于文本表达的大量变化,现有的文本分类方法仍然不能很好地捕获文本中的长程特征或抽象级特征。由此推动,本专利文献公开了将skip-gram卷积并入到神经网络中的***和方法。图1描绘了根据本公开的一个或多个实施方式的用于基于深度skip-gram网络100的文本分类的框图。所公开的深度skip-gram网络包括skip-gram生成模块110、词嵌入模块120、skip-gram卷积模块130、循环模块140和softmax层150。skip-gram生成模块110从输入文本数据105生成具有n-gram长度的多个skip-gram序列115。在一个或多个实施方式中,输入文本数据105包括一个或多个语句或句子。输入文本或输入句子包括一个或多个词,并且可为或可不为正式句子的格式。输入文本数据可来自具有ground-truth标签的训练文本数据库。多个skip-gram序列包括在输入文本数据中具有非连续词的至少一个序列。在一个或多个实施方式中,多个序列中的非连续词之间的最大距离(或跳跃大小)被预定义为k,不大于数n的数。词嵌入模块120配置成将多个skip-gram序列转换为对应的词向量125,其中每个词向量对应于gram。在一个或多个实施方式中,词嵌入模块120可配置成首先将整个文本输入转换为词向量,然后相应地组合与多个skip-gram序列对应的词向量。在一个或多个实施方式中,词嵌入模块120是在文本分类训练期间将具有模型参数可调的词嵌入到向量中的模型。尽管在一些实施方式中使用word2vec模型,但是也可使用用于词嵌入的其它可适用模型或方法。skip-gram卷积模块130可为用以提取变化的文本表达的非连续n-gram特征并且有效地检测不同位置处的局部范围特征的卷积神经网络(CNN)。在一个或多个实施方式中,skip-gram卷积模块130包括实现最大超时池化运算以减少冗余特征并且输出所提取的非连续n-gram特征中的所选特征135的最大池化层132。在一个或多个实施方式中,所选特征对应于每个位置处的最重要特征。这些输出的所选特征用作包括一个或多个循环神经网络的循环模块140的输入,通过链状架构捕获长程特征或抽象级特征。最后,将一个或多个循环神经网络的一个或多个最后隐藏状态145馈送到softmax层150,而softmax层150生成用于将文本分类成不同的类别和/或用于计算用于更新深度skip-gram网络的模型参数的损失函数的一个或多个分类概率155。分类概率可用于计算用于模型训练的预测损失。在一个或多个实施方式中,skip-gram生成模块和skip-gram卷积模块可一起集成到单个skip-gram生成及卷积模块中。部分C中描述了每个模块及其操作的更多细节。
简而言之,本文献的一些主要贡献包括:
·两个深度skip-gram网络架构实施方式被设计为将新颖的skip-gram卷积特征创建到神经网络中。
·skip-gram卷积运算被公开为全面检测变化的文本表达的局部模式。
·对用于文本分类任务的大规模数据集进行了综合实验。
各种实验表明,深度skip-gram网络的实施方式优于大多数竞争的现有技术方法,尤其是对于更复杂且具有挑战性的数据集而言是显著的。此外,所呈现的模型实施方式是非常稳健的,并且可在不调整超参数的情况下在不同的数据集上非常好地概括。这些实验结果表明所提出的skip-gram网络对于一般文本分类任务而言是强大的。
在以下部分中,在部分B中讨论了一些相关工作,在部分C中呈现了深度skip-gram网络的概述和每个模块的细节,在部分D中公开了对于用于文本分类的真实世界数据集的架构实施方式的测试,并且最后在E部分描述了一些结论且在部分F中描述了***实施方式。
B.一些相关工作
在本部分中总结了各方面的一些相关工作。
文本分类是自然语言处理(NLP)中最重要的任务之一,并且其具有许多应用,诸如情感分析、信息检索和问答。传统上,设计了诸如词袋、名词短语的各种特征,然后为文本分类任务进行各种特征选择和机器学习方法。
最近,深度神经网络已经表明了从数据中自动学习特征的强大能力。此外,词嵌入和文本表达学习使深度神经网络更适合于NLP任务。其中,卷积神经网络(CNN)和循环神经网络(RNN)被各种NLP任务广泛采用。对于文本分类任务,一些研究指出CNN擅长提取位置不变特征,而RNN擅长顺序地建模单元。
有人研究了CNN在文本分类任务中的应用,并且表现是很有希望的。深度CNN已被应用于从字符级而不是词级别提取文本信息,并且表明ConvNet对文本分类是有效的。一些已经应用了更深层次的卷积网络,最多29层用于文本处理。一些已经探索了从文本中提取的skip-gram特征,并将它们馈送到CNN中以进行事件检测、情感分类任务。跳跃思维向量被编码为用于无监督的句子表示。与此同时,生成RNN/LSTM模型也用于文本分类。此外,一些已经表明字符CNN和RNN可捕获文本中的有用信息并改善语言模型的性能。此外,存在着将CNN与RNN结合起来完成任务的一些研究。一些已将CNN和RNN结合起来,并且提出了模型C-LSTM,可捕获短语和时间句子语义的局部特征。一些已经使用循环卷积神经网络(RCNN)来利用CNN和RNN的优点以进行文本分类。有些已经使用卷积层和循环层这两者的网络架构来编码字符输入。
与上述现有工作相比,本专利文献公开了将skip-gram卷积与RNN结合的深度skip-gram网络的实施方式,其可生成skip-gram卷积特征以全面地捕获人类语言的不同文本表达的局部模式。
C.深度Skip-Gram网络的实施方式
在本部分中介绍了用于文本分类的深度skip-gram网络的实施方式。下面描述两个深度skip-gram网络架构实施方式和每个架构部件或模块的细节。
1.深度Skip-Gram网络架构的实施方式
公开了两个深度skip-gram网络架构实施方式,其中在下面的描述中描述了每个实施方式的部件或模块。
两个深度skip-gram网络的两种架构都包括两个主要部件:skip-gram生成及卷积模块以及循环模块。给定原始文本序列,skip-gram生成及卷积模块配置成生成非连续的n-gram序列(如图2中所示),以提取非连续的n-gram特征并检测不同位置处的局部抽象特征(如图3中所示),而这在语法中提供更全面和丰富的文本表达,有助于更好地理解变化的文本表达。如图3和图4中所示,最大超时池化运算减少了冗余特征并输出了最重要的抽象级特征。循环模块用于通过链状架构捕获skip-gram卷积序列的窗口特征的长期依赖性和全局特征。最后,将循环模块的隐藏状态馈送到softmax层中,而softmax层将文本分类为不同的类别。
在一个或多个实施方式中,公开了两种不同的skip-gram网络架构。两个网络架构实施方式之间的主要区别是循环模块。如图5和图6所示,具有唯一循环神经网络(unique-RNN)的深度skip-gram网络将所有skip-gram卷积特征连结成特征向量以馈送循环模块的输入,即,包括所有skip-gram信息以训练唯一循环网络结构。如图7和图8中所示,具有多个循环神经网络(多个RNN)的深度skip-gram网络分别将skip-gram卷积特征连结成用于0、1或2个词的单个跳跃大小的特征向量中,然后分别为单个跳跃大小构建循环网络,最后将所有循环模块的所有最终状态输出连结成合并向量以进行最终分类。下面的部分给出了更详细的描述。
2.Skip-Gram卷积模块的实施方式
传统的卷积仅考虑文本的顺序gram,而忽略了由于人类语言的不同表达而跳跃的词。因此,其无法涵盖不同文本表达的足够局部模式。在本专利文献中,公开了skip-gram卷积运算的实施方式以识别尽可能多的本地人类语言模式。
Skip-gram生成。Skip-gram是n-gram的概括。Skip-gram中的词在文本中不需要是连续的,但是可留下针对给定跳跃大小而跳跃的间隙。其提供了一种克服传统n-gram分析中发现的数据稀疏性问题的方法。形式上,n-gram是标记w1,w2,...,wn的一些序列长度n的连续子序列。k-skip-n-gram是长度n的子序列,其中标记发生在彼此最多k的距离处。图2图形地描绘了根据本公开的实施方式的示例性2-skip-3-gram。例如,在包括图2的一个或多个词(例如,句子)的输入文本中-“我总是感到非常高兴和感激(I always feel veryhappy and grateful)”,从词“我(I)”开始的2-skip-3-gram的集合包括3-gram:“我总是感到(I always feel)”(跳跃大小=0),另外还有子序列:“我总是非常(I always very)”、“我感到非常(I feel very)”(跳跃大小=1)、以及“我总是高兴(I always happy)”、“我感到高兴(I feel happy)”、“我非常高兴(I very happy)”(跳跃大小=2)。它涵盖了语法中更全面和可能的短语,诸如在人类语言的不同文本中非常常见的“我感到非常(I feelvery)”、“我感到高兴(I feel happy)”。然而,仅使用连续的n-gram无法识别到它们。因此,skip-gram生成可在人类语言中提供更全面的文本表达,从而有助于文本理解,特别是对于非正式文本或拼写错误的情况。
在一个或多个实施方式中,根据包括输入文本中的skip-gram序列的起始位置和/或每个skip-gram序列的总跳跃大小等因素来索引或编码所生成的skip-gram序列。在一个或多个实施方式中,在为文本中的每个标记生成skip-gram之后,用不同的跳跃代码构造文本序列的skip-gram卷积通道的列表,而这被定义为skip-gram中的词间隙串。例如,0-skip-3-gram“我总是感到(I always feel)”的跳跃代码是“0-0”,这意味着词“总是(always)”和“我(I)”之间、以及词“感到(feel)”与“总是(always)”存在零间隙。相似地,1-skip-3-gram“我总是非常(I always very)”、“我非常高兴(I very happy)”的跳跃代码为“0-1”、“1-0”,其中代码中的数字(间隙)总和为1,并且3-gram“我总是高兴(I alwayshappy)”、“我感到高兴(I feel happy)”、“我非常高兴(I very happy)”的跳跃代码为“0-2”、“1-1”、“2-0”,其中对于跳跃大小=2,代码中的数字(间隙)总和为2。表1示出了具有最多为2的跳跃大小的3、4、5-gram的跳跃代码。
给定每个跳跃代码,可通过跳跃代码定义的skip-gram生成来构造文本序列的skip-gram卷积信道。在本专利文献中,探索了各种skip-gram卷积实施方式。这些实施方式包括具有3-4-5-gram和高达1的跳跃大小的skip-gram卷积(其具有12个信道)、以及具有3-4-5-gram且和高达2的跳跃大小的skip-gram卷积(其具有31个信道)。然而,由于人类语言的限制,不鼓励使用大于2的跳跃大小。大的跳跃大小可能会导致不存在于人类语言中的大量无意义的短语。噪音短语可能严重影响对变化文本的理解。
表1:具有跳跃大小0、1、2的3、4、5-gram的跳跃代码
Skip-gram卷积和最大超时池化运算。在一个或多个实施方式中,对于每个skip-gram文本序列,执行skip-gram卷积和最大超时池化运算以检测不同位置处的局部抽象特征。图3图形地描绘了根据本公开的实施方式的skip-gram卷积和最大池化层。对于每个skip-gram文本序列,可由skip-gram卷积模块生成单独的特征图。与skip-gram序列相似,可基于相应的skip-gram序列的起始位置和总跳跃大小来对单独的skip-gram特征图进行分组。在一个或多个实施方式中,通过沿文本方向滑动来将一维最大超时池化310应用于skip-gram卷积输出以提取最重要的特征320。图4描绘了根据本公开的实施方式的用于skip-gram卷积和最大池化的方法。设xi∈Rd为从输入句子生成的skip-gram序列中的第i个词的d维词向量。设x∈RL×d表示词向量表示中的输入句子,其中L是句子的长度,并且d是词向量大小。在一个或多个实施方式中,n是gram大小并且还设为过滤器大小和滑动大小。假设矩阵E∈Rn×d是用于skip-gram卷积池化运算的过滤器。在一个或多个实施方式中,矩阵E涉及卷积模块的模型参数,并且可被视为应用于每个wp的权重矩阵。存在有与总共m个过滤器对应的m这种矩阵。对于输入文本中的每个位置p,可构造(405)包括用于n-gram wp=[xp,xp+1,…,xp+n-1]的词向量的skip-gram窗口矩阵wp。m个过滤器通过滑动n个标签在每个位置p=1,…,L处用n-gram窗口矩阵进行卷积(410)以生成特征图G=[G1,G2,…,GL]∈RL×m,其中每个特征图Gp在每个位置p处由Gp=f(wp⊙Er)、r=1,…,m,给出,其中⊙是skip-gram卷积运算,f是非线性变换函数。在一个或多个实施方式中,将整流线性单元(ReLU)函数选择作为非线性函数。最后,对于每个skip-gram文本序列,可生成单独的特征图G∈RL×m。给定n-gram和s-skip,假设v是skip-gram文本序列的数量,通过连结(415)特征图GM=[G1,G2,…,Gv]∈RL×(m×v),可获得所有skip-gram卷积特征的顺序输出。在一个或多个实施方式中,然后通过沿文本方向滑动来将一维最大超时池化应用(420)于skip-gram卷积输出以选择最重要的特征。如图3中的实施例所示,与以“感到(feel)”开始具有跳跃大小为1的skip-gram序列对应地,一维最大超时池化310应用于skip-gram卷积输出的每一列。最大超时池化310沿文本方向315滑动以提取最重要的特征320。由于skip-gram文本序列中存在大量重叠,因此最大超时池化能够减少冗余并提取最重要的抽象级特征。图5中示出了具有唯一RNN的深度skip-gram网络的图示。
在一个或多个实施方式中,将v0,v1,…,vs分别假设为0-skip、1-skip、...、s-skip的skip-gram文本序列的数量。对于每个skip-gram文本序列,可连结特征图然后通过沿文本方向滑动来分开地实现对skip-gram卷积输出的一维最大超时池化以选择最重要的特征。最后,如图7中所示,对于每个跳跃大小,可获得skip-gram卷积的序列和池化特征向量,以用于具有多个RNN的深度skip-gram网络。
3.循环模块的实施方式
循环模块能够通过链状神经网络架构传播顺序信息。来自skip-gram卷积模块的顺序输出被馈送到循环模块中,其中当前输入xt和每个时间步骤处的隐藏状态ht-1的先前输出被集成到网络推断中。然而,标准RNN不能有效地捕获长期依赖性,因此在一个或多个实施方式中,门控循环单元网络(GRU)(长短期存储器网络(LSTM)的变体)用于学习长期依赖性。在每个时间步骤处,GRU的输出由两个门(复位门r和更新门z)控制,如下面的等式所示:
z=σ(xtUz+st-1Wz) (1)
r=σ(xtUr+st-1Wr) (2)
h=tanh(xtUh+(st-1⊙r)Wh) (3)
st=(1-z)⊙h+z⊙st-1 (4)
其中,xt是当前输入,st-1是先前的隐藏状态,σ是激活函数并且通常用sigmoid函数实例化的情况下,⊙表示逐元素乘法。直观地,复位门确定如何将当前输入与先前存储器组合,并且更新门定义要保留多少先前存储器。门控机制是学习长期依赖性的好想法。
图5描绘了根据本公开的实施方式的具有用于所有skip-gram卷积的唯一循环神经网络(唯一RNN)的深度skip-gram网络架构。图6描绘了根据本公开的实施方式的使用如图5中所示的具有唯一RNN的深度skip-gram网络进行文本分类的方法。将所有skip-gram卷积特征连结(605)成输入向量,将其馈送(610)到一个唯一循环网络中以生成最终的循环隐藏状态。将最终的循环隐藏状态的输出馈送(615)到softmax层中以进行最终分类。
图7描绘了根据本公开的实施方式的具有多个循环神经网络(多个RNN)的深度skip-gram网络架构。图8描绘了根据本公开的实施方式的使用如图7中所示的具有多个RNN的深度skip-gram网络进行文本分类的方法。用于每个跳跃大小的skip-gram卷积特征分别连结(805)成用于每个跳跃大小的经连结的单独向量。将经连结的单独向量馈送(810)到相应的RNN中。每个相应的RNN基于经连结的单独向量生成(815)隐藏状态,隐藏状态是每个相应的RNN的最后或最终隐藏状态。在一个或多个实施方式中,多个RNN彼此独立并且不共享模型参数。将所有RNN的最后隐藏状态连结(820)成合并向量,然后将其馈送(825)到softmax层以进行最终文本分类。在一个或多个实施方式中,分类概率可用于使用分类概率例如,通过使用阈值或通过选择与最高概率相关的类别来为文本输入分配分类/类别。
4.损失函数和正则化的实施方式
在一个或多个实施方式中,为了分类,交叉熵损失函数用于训练深度skip-gram网络。给定训练样本t1,t2,...,tN及其ground-truth标签y1,y2,...,yN,每个标签都在集合{1,2,...,C}中,其中C是类别标签的数量。假设对于样本ti,估计的概率是针对每个标签c∈{1,2,...,C}的
训练错误定义为:
其中,1{·}是标识符函数。在一个或多个实施方式中,用优化器RMSProp的随机梯度下降用于学习模型参数,而这对于循环神经网络推断是非常有效的。
在一个或多个实施方式中,为了正则化,采用两种常用技术:随机失活(dropout)和L2权重正则化。随机失活(dropout)应用于循环模块和softmax层的最终输入向量以防止过度拟合。L2正则化也应用于损耗函数中的softmax层的权重。
D.一些实验
应注意,这些实验和结果是通过举例说明的方式提供的,并且是在特定的条件下使用特定的一个或多个实施方式来进行的;因此,这些实验及其结果都不应被用于限制本专利文献的公开的范围。
在该部分中,在大规模数据集上将深度skip-gram网络的实施方式的性能与现有技术模型进行比较以测试所呈现的模型实施方式的有效性。
1.数据集的实施方式
在一个或多个实施方式中,下载范围在从数十万到数百万个样本的大规模数据集。其中大多数都是非常复杂的,并且对文本分类具有挑战性。在一个或多个实施方式中,使用如Zhang等人(用于文本分类的字符级卷积网络,神经信息处理***的进展,2015,pp.649–657(Character-level convolutional networks for text classification,inAdvances in neural information processing systems,2015,pp.649–657))所述的训练和测试集中的一些。下面给出了数据集的简要描述,并且详细信息可在Zhang等人的文章中找到。
DBPedia本体数据集。该数据集包含来自***的DBpedia2014的14个非重叠类别,并且使用的字段是每个***文章的标题和摘要。对于每个类别,存在有40,000个训练样本和5,000个测试样本。
亚马逊评论。数据集包含来自斯坦福网络分析项目的2,441,053个产品的6,643,669个用户的34,686,770条评论。两个数据集是使用评论标题和评论内容构建的。完整的数据集包含每个类别中具有满分的600,000个训练样本和130,000个测试样本。在每个极性情绪中,极性数据集包含1,800,000个训练样本和200,000个测试样本。
表2中总结了大规模数据集的统计数据
表2:大型数据集的统计*。
*:Zhang等人,“用于文本分类的字符级卷积网络”,神经信息处理***的进展,2015,pp.649–657(Character-level convolutional networks for textclassification,in Advances in neural information processing systems,2015,pp.649–657)。
2.填充和词嵌入的实施方式
填充。对于随机梯度下降(SGD)中的每个批,批中文本序列的最大长度计算为batch_max_len,然后设置max_len=min(batch max_len,truncated_max_len),其中truncated_max_len=300是预定义的参数以截断GPU存储器的句子和速度考虑。在一个或多个实施方式中,具有小于max_len的长度的每个句子用在末尾指示未知词的特殊符号填充,并且长于max_len的长句子被第一max_len词截断。
词嵌入。在一个或多个实施方式中,在包括上述小写的数据集的语料库上采用gensims包来运行word2vec程序(Mikolov等人,词和短语的分布式表达及其组合性,NIPS,2013,第3111–3119页(Mikolov et al.,Distributed representations of words andphrases and their compositionality,in NIPS,2013,pp.3111–3119)),其中参数设置:min_count=5,sg=1,size=200,window=5.。最后,获得622,081个词的200维word2vec表达。在一个或多个实施方式中,用200维零向量初始化未知词的词表达。然后在训练期间将词向量与其它模型参数一起调整。
3.实验设置
在一个或多个实验设置中,仅使用一个skip-gram卷积层、一个最大超时池化层、一个循环层和一个完全连接的softmax层。对于skip-gram序列生成,将gram大小设置为3-4-5组合,并通过将跳跃大小分别设置为1、2来研究模型性能。对于卷积运算,过滤器数设置为32,过滤器大小和步幅大小设置为等于skip-gram序列的对应gram大小。对于最大超时池化运算,池大小设置为3,并且步幅大小设置为1。对于循环层,隐藏存储器单元为具有唯一RNN的深度skip-gram网络设置为300,并且为具有多个RNN的深度skip-gram网络设置为200。对于正则化,随机失活率设置为0.5,L2正则化因子设置为0.01。对于模型训练,批大小设置为96,RMSProp的学***均值0和标准偏差0.1的截断正态分布来初始化。在一个或多个实施方式中,从训练数据集中保留5%的样本作为模型验证集,并且模型使用剩余数据来训练。在一个或多个实施方式中,对于所有数据集,超参数是完全相同的设置。应强调,为了验证skip-gram模型实施方式在不同数据集上的概况有效性,参数不针对不同的数据集进行微调。
4.比较方法
为了与竞争模型进行公平比较,采用如Zhang等人(用于文本分类的字符级卷积网络,神经信息处理***的进展,2015,第649–657页(Character-level convolutionalnetworks for text classification,in Advances in neural information processingsystems,2015,pp.649–657))的数据集和评估协议中的一些。在先前工作中将Skip-gram模型实施方式与现有技术方法进行比较,包括传统和深度学习方法。传统方法包括在Zhang等人中报告的的Bag-of-words(BOW)及其TFIDF(BOW-TFIDF)、Bag-of-ngrams(ngrams)及其TFIDF(ngrams-TFIDF)。现有技术的深度学习方法包括Zhang等人的字符级卷积模型(char-CNN)、基于字符的卷积循环网络(char-CRNN)(Y.Xiao和K.Cho,通过结合卷积和循环层进行有效的字符级文档分类,CoRR,vol.abs/1602.00367,2016(Y.Xiao and K.Cho,Efficientcharacter-level document classification by combining convolution andrecurrent layers,CoRR,vol.abs/1602.00367,2016))、非常深度卷积网络(VDCNN)(A.Conneau、H.Schwenk、L.Barrault和Y.LeCun,用于自然语言处理的非常深度卷积网络,CoRR,vol.abs/1606.01781,2016(A.Conneau,H.Schwenk,L.Barrault,and Y.LeCun,Verydeep convolutional networks for natural language processing,CoRR,vol.abs/1606.01781,2016)、以及判别和生成LSTM模型(Gen-LSTM)(D.Yogatama、C.Dyer、W.Ling和P.Blunsom,使用循环神经网络生成和判别文本分类,arXiv,2017(D.Yogatama,C.Dyer,W.Ling,and P.Blunsom,Generative and Discriminative Text Classification withRecurrent Neural Networks,arXiv,2017))。
5.一些结果和分析
性能比较。与四种传统方法和四种现有技术的深度学习方法相比,表3中呈现了具有gram大小为3-4-5的深度skip-gram网络实施方式的实验结果。结果包括关于具有唯一RNN的深度skip-gram网络(图5)、以及具有多个RNN的深度skip-gram网络(图7)的大规模数据集上的测试错误。研究了每种架构的不同跳跃大小1和2的性能。对于每个深度skip-gram网络结构,超参数对于所有数据集处于相同的设置中,参数未被微调以验证不同的数据集上的skip-gram模型实施方式的概括有效性。对于没有数据增强的char-CNN,char-CRNN、VDCNN和Gen-LSTM,在他们研究中显示了由不同的最佳参数和最佳网络结构实现的最佳报告结果。所有方法中的最佳结果都标有带下划线的黑色字体,并且第二佳结果标有带下划线的斜体字体。
表3:对数据集测试错误比较*。
*深度skip-gram网络实施方式具有3-4-5的gram大小。数字以百分比表示。“uR代表“唯一RNN,并且“mR代表“多个RNN。s1和s2分别代表跳跃大小1、2。对于所有数据集,超参数都在相同的设置中。
观察到skip-gram网络实施方式对于数据集是最佳的,并且skip-gram网络实施方式在所有描绘的数据集上也是第二佳的。考虑到这些竞争方法的整体性能,所呈现的深度skip-gram方法优于竞争方法-BOW、BOW-TFIDF、ngrams、ngrams-TFIDF、char-CNN、char-CRNN、DBPedia上的Gen-LSTM、亚马逊评论全文和亚马逊评论极性数据集,尤其是在更复杂和更具挑战性的数据集上是显著的,如亚马逊评论全文上的2.1%错误减少。深度skip-gram网络模型实施方式仍然可媲美深度学习方法-char-CNN、char-CRNN、Gen-LSTM。在所有竞争模型之中,VDCNN模型是具有29个卷积层的非常深度网络。深度skip-gram网络模型实施方式甚至在DBpeida数据集上击败了VDCNN模型,而这示出了深度skip-gram方法的有效性。值得再次强调的是,所提出的方法对所有数据集使用相同的超参数,而无需特定的调整以示出其稳健性。然而,这里显示的char-CNN、char-CRNN、VDCNN和Gen-LSTM的性能是他们研究中不同最佳参数和最佳网络结构所获得的最佳报告结果。这表明了所呈现的深度skip-gram网络可识别更全面、更强大的特征,并且对具有变化的文本表达的不同的数据集的文本分类具有非常好的概括。
通过比较两个深度skip-gram网络实施方式的结果,观察到具有多个RNN的深度skip-gram网络略微优于具有唯一RNN的深度skip-gram网络,这可能是由于更复杂的架构导致的。还观察到,具有skip=1的深度skip-gram网络具有与具有skip=2的深度skip-gram网络非常接近的性能。较大的跳跃大小(例如,跳跃大小=2)不会改善性能,而这可能是由于大的跳跃大小引起的无意义短语的更多噪声。
gram大小的稳健性。还进行实验以测试在大规模数据集上具有不同的gram大小的深度skip-gram网络实施方式的稳健性。gram大小被分别设置为3、4、5,并且过滤器大小和步幅大小设置为等于相应的gram大小。将它们的结果与上述gram大小设置:3-4-5组合进行比较。表4描绘了具有唯一RNN的深度skip-gram网络的性能结果,而表5描绘了具有多个RNN的深度skip-gram网络的性能结果。不同的gram大小设置的最佳结果标有带下划线的黑色字体。结果表明,具有单独的gram大小-3、4、5的深度skip-gram网络实施方式具有非常接近的性能,并且横跨测试数据集仅用-gram3-4-5组合非常轻微地执行深度skip-gram网络。结论是,所呈现的深度skip-gram网络对gram大小非常稳健。在速度优先的情况下,具有单独的-gram的深度skip-gram网络也应实现满意的性能。
表4:测试具有不同的gram大小3、4、5及其组合的深度skip-gram网络实施方式的错误。数字以百分比表示。“uR”代表“唯一RNN。s1和s2分别代表跳跃大小1、2。g3、g4、g5、g3-4-5分别代表gram大小=3、4、5及其组合。不同的gram大小设置的最佳结果标有带下划线的黑色字体。
表5:测试深度skip-gram网络实施方式的错误。数字以百分比表示。“mR”代表“多个RNN。s1和s2分别代表跳跃大小1、2。g3、g4、g5、g3-4-5分别代表gram大小=3、4、5及其组合。不同的gram大小设置的最佳结果标有带下划线的黑色字体。
计算复杂性。skip-gram网络模型的实施方式使用skip-gram卷积来捕获在人类语言中长度通常从2个词至7个词之间变化的详尽的本地短语,而不是长依赖性的句子,因此具有3、4、5的gram大小的skip=1或skip=2可非常适用于文本分类任务。实验结果表明,skip=1的性能可媲美skip=2。因此,为了降低计算成本,建议使用skip=1。尽管1-skip-n-gram卷积的复杂性是传统卷积的n(=3、4、5)倍,但是经测试的一个或多个skip-gram网络实施方式具有一个skip-gram卷积层、一个最大超时池化层、一个循环层和一个softmax层。层和参数的数量媲美char-CRNN,并且比具有9个层或29个层的、非常耗时的char-CNN和VDCNN少得多。通常,所呈现的skip-gram网络对于具有低计算成本的文本分类非常有效。
E.一些结论
在本专利文献中,公开了深度skip-gram网络的新颖的统一框架的实施方式,并且讨论了用于文本分类的两个网络架构实施方式。两个架构实施方式包括两个主要部件:skip-gram卷积模块和循环模块。skip-gram卷积模块提取非连续的n-gram文本并且检测不同位置处的局部抽象特征,而这为变化的文本表达提供更全面的局部模式,并且有助于更好地理解人类文本,特别是对于非正式文本或拼写错误。最大超时池化运算减少了冗余特征并输出了最重要的抽象级特征。然后将这些特征馈送到唯一循环网络或多个循环网络,以通过链状架构捕获长期依赖性和全局信息。
已经对大规模数据集进行了大量实验以表明所提出的深度skip-gram网络的有效性。实验结果表明,深度skip-gram网络实施方式可胜过大多数引用的竞争性现有技术方法,尤其是在更复杂和具有挑战性的数据集上。此外,深度skip-gram网络实施方式的性能也媲美与具有更少层、更少参数和更少计算成本的VDCNN。深度skip-gram网络模型实施方式非常稳健并且可以在不同的数据集上非常好地推广,甚至不需要调整特定数据集的超参数。由于超参数的调整非常棘手且耗时,因此针对超参数的稳健性为所呈现的深度skip-gram网络提供了额外的益处。
深度skip-gram网络的实施方式可应用于更广泛的语言处理任务,尤其是当需要更全面和稳健的文本表达时。
F.***实施方式
在实施方式中,本专利文献的各方面可涉及、可包括、或者可实现在一个或多个信息处理***/计算***上。计算***可包括任何手段或手段的集合,该任何手段或手段的集合可操作成计算、核算、确定、分类、加工、传输、接收、检索、发起、路由、切换、存储、显示、通信、清单、检测、记录、复制、处理或利用任何形式的信息、情报或数据。例如,计算***可以是个人计算机(例如,笔记本电脑)、平板电脑、平板手机、个人数字助理(PDA)、智能电话、智能手表、智能包、服务器(例如,刀片服务器或机架服务器)、网络存储装置、相机或任何其它合适的装置,并且可在大小、形状、性能、功能和价格上出现变化。计算***可包括随机存取存储器(RAM)、如中央处理单元(CPU)或硬件或软件控制逻辑、ROM和/或其它类型的存储器的一个或多个处理资源。计算***的附加部件可包括一个或多个磁盘驱动器、用于与外部装置通信的一个或多个网络端口以及各种输入和输出(I/O)装置(诸如键盘、鼠标、触摸屏和/或一个视频显示器)。计算***还可包括可操作成在各种硬件部件之间传输通信的一个或多个总线。
图9描绘了根据本公开的实施方式的计算装置/信息处理***(或计算***)的简化框图。应理解,对于***900所示的功能可操作成支持计算***的各种实施方式-尽管这应理解为计算***可被不同地配置并且包括包括不同的部件,包括具有更少或更多的部件,如图9中所描绘。
如图9中所示,计算***900包括提供计算资源并控制计算机的一个或多个中央处理单元(CPU)901。CPU 901可用微处理器等来实现,并且还可包括用于数学计算的一个或多个图形处理单元(GPU)919和/或浮点协处理器。***900还可包括***存储器902,***存储器902可为随机存取存储器(RAM)、只读存储器(ROM)或两者的形式。
如图9中所示,还可提供多个控制器和***装置。输入控制器903表示与各种输入装置904(诸如键盘、鼠标、触摸屏和/或触控笔)的交互。计算***900还可包括存储控制器907,存储控制器907用于与一个或多个存储装置908交互,其中,一个或多个存储装置908中的每个包括诸如磁带或磁盘的存储介质、或者可用于记录用于操作***、实用程序以及应用的指令的光学介质,其中,用于操作***、实用程序以及应用的指令可包括实现本发明各方面的程序。存储装置908还可用于存储经处理的数据或待根据本发明来处理的数据。***900还可包括显示控制器909,显示控制器909用于向显示装置911提供交互,其中,显示装置911可为阴极射线管(CRT)、薄膜晶体管(TFT)显示器、有机发光二极管、电致发光面板、等离子面板或其它类型的显示器。计算***900还可包括用于一个或多个***装置906的一个或多个***控制器或接口905。***装置的实例可包括一个或多个打印机、扫描仪、输入装置、输出装置、传感器等。通信控制器914可与一个或多个通信装置915交互,其中,一个或多个通信装置915使得***900能够通过包括因特网、云资源(例如,以太网云、以太网上的光纤通道(FCoE)/数据中心桥接(DCB)云等)、局域网(LAN)、广域网(WAN)、存储区域网络(SAN)或通过包括红外信号的任何合适的电磁载波信号与远程装置连接。
在所示的***中,所有主要***部件均可连接到总线916,其中,总线916可表示多于一个的物理总线。然而,各种***部件可以或可以不彼此物理地接近。例如,输入数据和/或输出数据可从一个物理位置远程传输到另一个物理位置。另外,实现本发明各方面的程序可通过网络从远程位置(例如,服务器)访问。这种数据和/或程序可通过各种机器可读介质中的任何介质来输送,各种机器可读介质包括但不限于:诸如硬盘、软盘和磁带的磁介质;诸如CD-ROM和全息装置的光学介质;磁光介质;以及诸如专用集成电路(ASIC)、可编程逻辑装置(PLD)、闪存装置和ROM和RAM装置的专门配置成存储或专门配置配置成存储并执行程序代码的硬件装置。
本发明的各方面可通过一个或多个处理器或处理单元的指令编码在一个或多个非暂时性计算机可读介质上,以使得执行步骤。应注意,一个或多个非暂时性计算机可读介质应包括易失性和非易失性存储器。应注意,替代性实现方式是可能的,包括硬件实现或软件/硬件实现。硬件实现的功能可使用ASIC、可编程阵列、数字信号处理电路等来实现。因此,任何权利要求中的“装置”术语旨在涵盖软件和硬件实现。相似地,如本文中所使用的术语“计算机可读介质”包括具有在其上实现的指令程序的软件和/或硬件或其组合。考虑到这些实施方式的替代品,应理解,附图和所附描述提供了本领域技术人员编写程序代码(即,软件)和/或制造电路(即,硬件)以执行所需的程序所需的功能信息。
应注意,本发明实施方式还可涉及具有非暂时性有形计算机可读介质的计算机产品,其中,非暂时性有形计算机可读介质的计算机产品具有用于执行各种计算机实现的操作的计算机代码。介质和计算机代码可为为了本发明的目的而专门设计和构造的介质和计算机代码,或者它们可为相关领域的技术人员已知或可用的类型。有形计算机可读介质的实例包括但不限于:诸如硬盘、软盘和磁带的磁介质;诸如CD-ROM和全息装置的光学介质;磁光介质;以及诸如专用集成电路(ASIC)、可编程逻辑装置(PLD)、闪存装置和ROM和RAM装置的专门配置成存储或专门配置成存储并执行程序代码的硬件装置。计算机代码的实例包括如由编译器产生的机器代码、以及包含由使用解释器的计算机执行的更高级代码的文件。本发明实施方式可以全部或部分地实现为机器可执行指令,机器可执行指令可处于由处理装置执行的程序模块中。程序模块的例子包括库、程序、例程、对象、部件和数据结构。在分布式计算环境中,程序模块可物理地定位在本地、远程或两者的设置中。
本领域技术人员将认识到,没有计算***或编程语言对于本发明的实践是关键的。本领域的技术人员还将认识到,上述的多个元件可以物理地和/或功能性地分离成子模块或者组合在一起。
本领域技术人员将理解,前面的实例和实施方式是示例性的,并不限制本公开的范围。本领域技术人员在阅读说明书并研究附图之后显而易见的所有变换、改进、等同、组合和改进均包括在本公开的真实精神和范围内。还应注意,任何权利要求的元件可不同地排列,包括具有多个依赖性、配置和组合。
Claims (20)
1.用于使用一个或多个处理器进行文本分类以使得以下步骤被执行的计算机实现的方法,所述步骤包括:
生成一组skip-gram序列,其中所述一组skip-gram序列包括具有来自包括一个或多个词的文本输入的非连续标记并且具有相关的ground-truth类别标签的至少一个skip-gram序列;
将每个skip-gram序列转换成相应的词向量;
通过skip-gram卷积模块、至少基于每个skip-gram序列的词向量而分别为每个skip-gram序列生成单独的skip-gram特征图,所述单独的skip-gram特征图根据相应的skip-gram序列的起始位置和总跳跃大小来分组;
对每组单独的skip-gram特征图执行最大池化以生成用于所述组的代表性特征图;
在循环模块处使用每组的所述代表性特征图生成一个或多个隐藏状态;
使用softmax层基于所述一个或多个隐藏状态来生成用于所述文本输入的类别的概率分布;以及
基于所述相关的ground-truth类别标签和所述类别的概率分布来计算损失,以更新用于所述skip-gram卷积模块和所述循环模块中的至少一个的参数。
2.如权利要求1所述的计算机实现的方法,其中,所述一组skip-gram序列中的每个skip-gram序列具有相同的gram大小和不大于预定数量的总跳跃大小。
3.如权利要求1所述的计算机实现的方法,其中,所述一组skip-gram序列中的skip-gram序列具有不同的gram大小。
4.如权利要求1所述的计算机实现的方法,其中,所述循环模块是单个循环神经网络(RNN),所述单个RNN通过以下步骤使用每组的所述代表性特征图来生成隐藏状态,所述步骤包括:
将每组的代表性特征图连结成输入向量;以及
在所述单个RNN处基于所述输入向量来生成所述隐藏状态,所述隐藏状态是所述单个RNN的最后隐藏状态。
5.如权利要求1所述的计算机实现的方法,其中,所述循环模块包括多个循环神经网络(RNN),所述多个RNN通过以下步骤分别使用每组的所述代表性特征图来生成多个隐藏状态,所述步骤包括:
分别将用于每个跳跃大小的代表性特征图连结成经连结的单独向量;
将每个经连结的单独向量馈送到所述多个RNN的相应的RNN;以及
在每个相应的RNN处基于所述经连结的单独向量来生成最后隐藏状态。
6.如权利要求5所述的计算机实现的方法,其中,基于所述一个或多个隐藏状态来生成用于所述文本输入的所述类别的概率分布包括:
将所述多个RNN的所述最后隐藏状态连结为合并向量;以及
使用所述softmax层用所述合并向量生成用于所述文本输入的所述类别的概率分布。
7.如权利要求5所述的计算机实现的方法,其中,所述多个RNN不共享参数。
8.如权利要求1所述的计算机实现的方法,其中,通过所述skip-gram卷积模块分别为每个skip-gram序列生成单独的skip-gram特征图包括:
对于所述skip-gram序列中的每个位置,构造包括用于多个gram的词向量的skip-gram窗口矩阵,所述gram的数量等于所述skip-gram序列的长度;以及
在每个位置处用所述skip-gram窗口矩阵来卷积多个过滤器以在每个位置处生成特征图。
9.如权利要求8所述的计算机实现的方法,其中,在每个位置处用所述skip-gram窗口矩阵来卷积所述多个过滤器通过在每个位置处的所述skip-gram窗口矩阵与所述多个过滤器中的每个之间的skip-gram卷积运算的非线性变换来实现。
10.用于使用一个或多个处理器进行文本分类以使得以下步骤被执行的计算机实现的方法,所述步骤包括:
生成一组skip-gram序列,其中所述一组skip-gram序列包括具有来自包括一组词的文本输入的非连续标记的至少一个skip-gram序列;
通过skip-gram卷积模块、至少基于每个skip-gram序列的词向量来分别为每个skip-gram序列生成单独的skip-gram特征图,所述单独的skip-gram特征图根据相应的skip-gram序列的起始位置和总跳跃大小来分组;
对每组单独的skip-gram特征图执行最大池化以生成所述组的代表性特征图;
将每组的所述代表性特征图连结成输入向量;
使用循环神经网络(RNN)基于所述输入向量而生成最终隐藏状态;以及
使用softmax层基于一个或多个所述最终隐藏状态来生成所述文本输入的类别概率分布以用于文本分类确定。
11.如权利要求10所述的计算机实现的方法,其中,所述一组skip-gram序列中的每个skip-gram序列具有相同的gram大小和不大于预定数量的总跳跃大小。
12.如权利要求10所述的计算机实现的方法,还包括:
使用所述类别概率分布为所述文本输入分配文本分类。
13.如权利要求10所述的计算机实现的方法,其中,通过所述skip-gram卷积模块分别为每个skip-gram序列生成单独的skip-gram特征图包括:
对于所述skip-gram序列中的每个位置,构造包括多个gram的词向量的skip-gram窗口矩阵,所述gram的数量等于所述skip-gram序列的长度;以及
在每个位置处用所述skip-gram窗口矩阵来卷积多个过滤器以在每个位置处生成特征图。
14.如权利要求13所述的计算机实现的方法,其中,在每个位置处用所述skip-gram窗口矩阵来卷积所述多个过滤器通过在每个位置处的所述skip-gram窗口矩阵与所述多个过滤器中的每个之间的skip-gram卷积运算的非线性变换来实现。
15.用于使用一个或多个处理器进行文本分类以使得以下步骤被执行的计算机实现的方法,所述步骤包括:
生成一组skip-gram序列,其中所述一组skip-gram序列包括具有来自包括一组词的文本输入的非连续标记的至少一个skip-gram序列;
通过skip-gram卷积模块、至少基于每个skip-gram序列的词向量来分别为每个skip-gram序列生成单独的skip-gram特征图,所述单独的skip-gram特征图根据相应的skip-gram序列的起始位置和总跳跃大小来分组;
对每组单独的skip-gram特征图执行最大池化以生成所述组的代表性特征图;
分别将每个跳跃大小的代表性特征图连结成经连结的单独向量;
将每个经连结的单独向量馈送到多个循环神经网络(RNN)的相应的RNN;
在每个相应的RNN处基于所述经连结的单独向量来生成最后隐藏状态;以及
使用softmax层基于每个相应的RNN的所述最后隐藏状态来生成所述文本输入的类别概率分布以用于文本分类确定。
16.如权利要求15所述的计算机实现的方法,其中,生成所述类别概率分布包括:
将每个相应的RNN的所述最后隐藏状态连结为合并向量;以及
使用所述合并向量生成用于所述文本输入的所述类别概率分布。
17.如权利要求15所述的计算机实现的方法,还包括:
使用所述类别概率分布为所述文本输入分配分类。
18.如权利要求15所述的计算机实现的方法,其中,所述多个RNN不共享参数。
19.如权利要求15所述的计算机实现的方法,其中,通过所述skip-gram卷积模块分别为每个skip-gram序列生成单独的skip-gram特征图包括:
对于所述skip-gram序列中的每个位置,构造包括多个gram的词向量的skip-gram窗口矩阵,所述gram的数量等于所述skip-gram序列的长度;以及
在每个位置处用所述skip-gram窗口矩阵来卷积多个过滤器以在每个位置处生成特征图。
20.如权利要求19所述的计算机实现的方法,其中,在每个位置处用所述skip-gram窗口矩阵来卷积所述多个过滤器通过每个位置处的所述skip-gram窗口矩阵与所述多个过滤器中的每个之间skip-gram卷积运算的非线性变换来实现。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/368,440 US11494615B2 (en) | 2019-03-28 | 2019-03-28 | Systems and methods for deep skip-gram network based text classification |
US16/368,440 | 2019-03-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111753081A true CN111753081A (zh) | 2020-10-09 |
CN111753081B CN111753081B (zh) | 2023-06-09 |
Family
ID=72606275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911100393.2A Active CN111753081B (zh) | 2019-03-28 | 2019-11-12 | 基于深度skip-gram网络的文本分类的***和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11494615B2 (zh) |
CN (1) | CN111753081B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113297364A (zh) * | 2021-06-07 | 2021-08-24 | 吉林大学 | 一种面向对话***中的自然语言理解方法及装置 |
CN113553499A (zh) * | 2021-06-22 | 2021-10-26 | 杭州摸象大数据科技有限公司 | 一种基于营销裂变的作弊探测方法、***和电子设备 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11017177B2 (en) * | 2019-06-27 | 2021-05-25 | Conduent Business Services, Llc | Neural network systems and methods for target identification from text |
US11875116B2 (en) * | 2019-12-20 | 2024-01-16 | Intuit Inc. | Machine learning models with improved semantic awareness |
US11762990B2 (en) * | 2020-04-07 | 2023-09-19 | Microsoft Technology Licensing, Llc | Unstructured text classification |
CN112380874B (zh) * | 2020-10-10 | 2023-07-18 | 华南理工大学 | 一种基于图卷积网络的多人对话语篇分析方法 |
CN112559680B (zh) * | 2020-12-01 | 2022-10-04 | 合肥工业大学 | 基于多层次特征提取的文本分类方法、模型及存储介质 |
CN112527959B (zh) * | 2020-12-11 | 2023-05-30 | 重庆邮电大学 | 基于无池化卷积嵌入和注意分布神经网络的新闻分类方法 |
CN112487191A (zh) * | 2020-12-16 | 2021-03-12 | 清华大学 | 基于CNN-BiLSTM/BiGRU混联组合模型的文本分类方法和装置 |
CN112861672B (zh) * | 2021-01-27 | 2022-08-05 | 电子科技大学 | 一种基于光学-sar异源遥感图像匹配方法 |
CN112818033A (zh) * | 2021-01-28 | 2021-05-18 | 河北工业大学 | 基于神经网络的袋式除尘器破袋智能检测方法 |
US12003535B2 (en) | 2021-03-01 | 2024-06-04 | Microsoft Technology Licensing, Llc | Phishing URL detection using transformers |
US11321538B1 (en) * | 2021-10-15 | 2022-05-03 | Dovel Technologies, Llc | Ensemble natural language processing model with compliance verification |
US20230214888A1 (en) * | 2021-12-16 | 2023-07-06 | Gregory Renard | Systems and Methods for Analyzing Customer Reviews |
US20230196386A1 (en) * | 2021-12-16 | 2023-06-22 | Gregory Renard | Systems and methods for linking a product to external content |
US20230196235A1 (en) * | 2021-12-16 | 2023-06-22 | Vehbi Deger Turan | Systems and methods for providing machine learning of business operations and generating recommendations or actionable insights |
CN117851909B (zh) * | 2024-03-05 | 2024-05-31 | 深圳市雅乐实业有限公司 | 一种基于跳跃连接的多循环决策意图识别***及方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017090051A1 (en) * | 2015-11-27 | 2017-06-01 | Giridhari Devanathan | A method for text classification and feature selection using class vectors and the system thereof |
CN107066553A (zh) * | 2017-03-24 | 2017-08-18 | 北京工业大学 | 一种基于卷积神经网络与随机森林的短文本分类方法 |
CN107194422A (zh) * | 2017-06-19 | 2017-09-22 | 中国人民解放军国防科学技术大学 | 一种结合正反向实例的卷积神经网络关系分类方法 |
US20180053057A1 (en) * | 2016-08-18 | 2018-02-22 | Xerox Corporation | System and method for video classification using a hybrid unsupervised and supervised multi-layer architecture |
CN108021555A (zh) * | 2017-11-21 | 2018-05-11 | 浪潮金融信息技术有限公司 | 一种基于深度卷积神经网络的问句相似度度量方法 |
CN109241530A (zh) * | 2018-08-29 | 2019-01-18 | 昆明理工大学 | 一种基于N-gram向量和卷积神经网络的中文文本多分类方法 |
CN109426858A (zh) * | 2017-08-29 | 2019-03-05 | 京东方科技集团股份有限公司 | 神经网络、训练方法、图像处理方法及图像处理装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120253792A1 (en) * | 2011-03-30 | 2012-10-04 | Nec Laboratories America, Inc. | Sentiment Classification Based on Supervised Latent N-Gram Analysis |
US8892488B2 (en) * | 2011-06-01 | 2014-11-18 | Nec Laboratories America, Inc. | Document classification with weighted supervised n-gram embedding |
US9489373B2 (en) * | 2013-07-12 | 2016-11-08 | Microsoft Technology Licensing, Llc | Interactive segment extraction in computer-human interactive learning |
EP3433795A4 (en) * | 2016-03-24 | 2019-11-13 | Ramot at Tel-Aviv University Ltd. | METHOD AND SYSTEM FOR CONVERTING A TEXT IMAGE |
EP3436989A4 (en) * | 2016-03-31 | 2019-11-20 | Maluuba Inc. | METHOD AND SYSTEM FOR PROCESSING AN INQUIRY INQUIRY |
US10445356B1 (en) * | 2016-06-24 | 2019-10-15 | Pulselight Holdings, Inc. | Method and system for analyzing entities |
US11354565B2 (en) * | 2017-03-15 | 2022-06-07 | Salesforce.Com, Inc. | Probability-based guider |
US10885277B2 (en) * | 2018-08-02 | 2021-01-05 | Google Llc | On-device neural networks for natural language understanding |
-
2019
- 2019-03-28 US US16/368,440 patent/US11494615B2/en active Active
- 2019-11-12 CN CN201911100393.2A patent/CN111753081B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017090051A1 (en) * | 2015-11-27 | 2017-06-01 | Giridhari Devanathan | A method for text classification and feature selection using class vectors and the system thereof |
US20180053057A1 (en) * | 2016-08-18 | 2018-02-22 | Xerox Corporation | System and method for video classification using a hybrid unsupervised and supervised multi-layer architecture |
CN107066553A (zh) * | 2017-03-24 | 2017-08-18 | 北京工业大学 | 一种基于卷积神经网络与随机森林的短文本分类方法 |
CN107194422A (zh) * | 2017-06-19 | 2017-09-22 | 中国人民解放军国防科学技术大学 | 一种结合正反向实例的卷积神经网络关系分类方法 |
CN109426858A (zh) * | 2017-08-29 | 2019-03-05 | 京东方科技集团股份有限公司 | 神经网络、训练方法、图像处理方法及图像处理装置 |
CN108021555A (zh) * | 2017-11-21 | 2018-05-11 | 浪潮金融信息技术有限公司 | 一种基于深度卷积神经网络的问句相似度度量方法 |
CN109241530A (zh) * | 2018-08-29 | 2019-01-18 | 昆明理工大学 | 一种基于N-gram向量和卷积神经网络的中文文本多分类方法 |
Non-Patent Citations (2)
Title |
---|
CHAOCHUN LIU等: "Deep skip-gram networks for text classification", 《PROCEEDINGS OF THE 2019 SIAM INTERNATIIONAL CONFERENCE ON DATA MINING》, pages 145 - 153 * |
蔡慧苹: "基于卷积神经网络的短文本分类方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, pages 140 - 303 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113297364A (zh) * | 2021-06-07 | 2021-08-24 | 吉林大学 | 一种面向对话***中的自然语言理解方法及装置 |
CN113297364B (zh) * | 2021-06-07 | 2023-06-09 | 吉林大学 | 一种面向对话***中的自然语言理解方法及装置 |
CN113553499A (zh) * | 2021-06-22 | 2021-10-26 | 杭州摸象大数据科技有限公司 | 一种基于营销裂变的作弊探测方法、***和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111753081B (zh) | 2023-06-09 |
US11494615B2 (en) | 2022-11-08 |
US20200311519A1 (en) | 2020-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111753081B (zh) | 基于深度skip-gram网络的文本分类的***和方法 | |
CN111291181B (zh) | 经由主题稀疏自编码器和实体嵌入的用于输入分类的表示学习 | |
Gulli et al. | Deep learning with TensorFlow 2 and Keras: regression, ConvNets, GANs, RNNs, NLP, and more with TensorFlow 2 and the Keras API | |
Bhardwaj et al. | Deep Learning Essentials: Your hands-on guide to the fundamentals of deep learning and neural network modeling | |
WO2022022163A1 (zh) | 文本分类模型的训练方法、装置、设备及存储介质 | |
Yao et al. | Bi-directional LSTM recurrent neural network for Chinese word segmentation | |
US11797822B2 (en) | Neural network having input and hidden layers of equal units | |
CN112084327B (zh) | 在保留语义的同时对稀疏标注的文本文档的分类 | |
CN111914054A (zh) | 用于大规模语义索引的***和方法 | |
CN109635253B (zh) | 文本风格转换方法、装置及存储介质、计算机设备 | |
CN109657226B (zh) | 多联结注意力的阅读理解模型、***及方法 | |
CN107729309A (zh) | 一种基于深度学习的中文语义分析的方法及装置 | |
CN111460812B (zh) | 语句情感分类方法及相关设备 | |
Saitoh | Deep learning from the basics: Python and deep learning: Theory and implementation | |
Rivas | Deep Learning for Beginners: A beginner's guide to getting up and running with deep learning from scratch using Python | |
De Marchi et al. | Hands-On Neural Networks: Learn how to build and train your first neural network model using Python | |
Chi et al. | Enhancing joint entity and relation extraction with language modeling and hierarchical attention | |
Joshua Thomas et al. | A deep learning framework on generation of image descriptions with bidirectional recurrent neural networks | |
Silaparasetty | Deep Learning Projects Using TensorFlow 2 | |
KR20220076419A (ko) | 딥러닝 기반 의미역 분석을 활용하는 방법 | |
CN113157919A (zh) | 语句文本方面级情感分类方法及*** | |
Aggarwal et al. | Recurrent neural networks | |
US20220335209A1 (en) | Systems, apparatus, articles of manufacture, and methods to generate digitized handwriting with user style adaptations | |
Ayyadevara | Neural Networks with Keras Cookbook: Over 70 recipes leveraging deep learning techniques across image, text, audio, and game bots | |
Zhuang et al. | Chinese language processing based on stroke representation and multidimensional representation |
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 |