Convolutional Neural Networks for Sentence Classification用于句子分类的卷积神经网络

             Convolutional Neural Networks for Sentence Classification

论文任务:用卷积神经网络(CNN)在预先训练好的词向量上进行句子级分类任务

论文借用的深度学习模型
        卷积神经网络(CNN)利用层与卷积滤波器应用于局部特征。最初发明用于计算机视觉的CNN模型,后来被证明对NLP有效,并在语义分析、搜索查询检索、句子建模和其他传统NLP任务中取得了优异的结果。
论文核心内容:
       训练了一个简单的CNN,在一个无监督的神经语言模型得到的单词向量的基础上再加上一层卷积,最初保持单词向量静态,只学习模型的其他参数。这个简单的模型在多个基准上取得了很好的结果,这表明预先训练的向量是“通用”的特征提取器,可以用于各种分类任务。通过微调学习特定于任务的向量,可以得到进一步的改进。最后,我们描述了对体系结构的一个简单修改,通过拥有多个通道,允许使用预先训练的和任务特定的向量。

MODEL:
       图1所示的模型架构是Collobert等人(2011年)CNN架构的一个轻微变体。本文用拼接词向量的方法,将一个句子表示成为一个矩阵,这里矩阵的每一行表示一个word,后面的步骤仅采用一组filter、pooling层来得到句子的特征向量,然后进行分类。

在这里插入图片描述
         在这里插入图片描述           在这里插入图片描述           在这里插入图片描述    在这里插入图片描述
        设xi ∈ Rk 为对应于句子中的第i个单词的k维词向量。长度为n的句子(必要时填充)也就是说左边是一个n*k的矩阵,表示一句话的n个词语,每个词语是一个k维向量,假设文档中最长的句子中的词个数为n,则 小于n 的句子填充为m。最终得到的词向量矩阵为 n * k。表示为:
                            在这里插入图片描述
其中⊕是串联运算符。让Xi:n成为单词xi的串联。(从第i个单词到第n个单词,把它们串联起来),卷积运算包含一个滤波器w∈Rhk,它被应用于单词h的窗口以产生一个新的特征。例如,特征ci由单词xi:i+h−1的窗口生成:
                          在这里插入图片描述
(h是窗口,也就是滤波器的高度)这里b∈R是一个偏置项,w是权重,f是一个非线性函数。这个过滤器应用于句子{X1:h,X2:h+1,…,Xn-h+1:n}生成特征图:
                            在这里插入图片描述
       然后在特征映射上应用max超时池操作,并将最大值ˆc=max{c}作为与此对应的特征特殊过滤器。其思想是为每个特征映射捕获最重要的特征,即具有最高值的特征。这种池化方案自然处理可变的句子长度。
      论文描述了从一个滤波器中提取一个特征的过程。该模型使用多个过滤器(具有不同的窗口大小)来获得多个特征。这些特征形成倒数第二层,并传递给完全连接的softmax层,该层的输出是标签上的概率分布。

      在其中一个模型变体中,我们试验了两个字向量“通道”,一个在整个训练过程中保持静态,另一个在多通道体系结构中通过反向传播进行微调,如图1所示,每个滤波器应用于两个通道,并将结果添加到公式(2)中计算ci。在其他方面,该模型相当于单通道体系结构。

正则化

正则化解释:正则化就是我们将结构风险最小化的过程,调整参数的个数使之尽可能最小化。

论文正则化方法:论文在倒数第二层使用了dropout,(解决过拟合问题,当模型参数太多而训练样本少的时候容易出现过拟合问题。)

数据集:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
预训练词向量:
       使用公开的word2vec向量,这些向量是从googlenews中训练出来的1000亿个单词。向量的维数为300,采用连续词袋结构进行训练。不在预先训练的单词集中的单词会被随机初始化。
在这里插入图片描述
      有两组词向量的模型。每组向量被视为一个“通道”,每个滤波器应用于两个通道,但梯度只通过其中一个通道反向传播。因此,该模型能够对一组向量进行微调,同时保持另一组向量的静态。两个通道都用word2vec初始化。

实验结果与讨论:

      所有随机初始化单词的基线模型(CNN-rand)本身的性能并不好。本身是期望通过使用预先训练的向量来提高性能,但是实际上即使是带有静态向量的简单模型(CNN static)也表现得非常出色,与使用复杂池方案(Kalchbrenner et al.,2014)或需要事先计算解析树(Socheret al.,2013)的更复杂的深度学习模型相比,具有竞争性的结果。这些结果表明,预训练向量是很好的“通用”特征提取器,可以跨数据集使用。
      我们最初希望多通道结构能够防止过度拟合(通过确保学习向量不会偏离太远)因此比单通道模型工作得更好,尤其是在较小的数据集上。然而,结果是好坏参半的,需要对微调过程进行进一步的正则化工作。
论文总结:
     在目前的工作中,我们描述了在word2vec上建立卷积神经网络的一系列实验。尽管超参数很少调整,一个简单的CNN与一层卷积表现得非常好。我们的结果进一步证明了无监督的词向量预训练是自然语言处理深度学习的重要组成部分。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 卷积神经网络 (Convolutional Neural Networks, CNN) 是一种常用于文本分类的深度学习模型。它通过卷积和池化层来提取文本中的特征,并使用全连接层来进行分类。 CNN 的一个优点是能够处理变长的输入,并且不需要对文本进行预处理。 ### 回答2: 卷积神经网络是一种深度学习方法,用于对文本进行分类。在训练过程中,这种网络可以自动学习输入数据的特征表示。卷积神经网络中的卷积层可以识别输入中的局部模式,这些局部模式组合起来形成更高级别的特征,最终帮助分类器确定类别。对于文本分类问题,卷积神经网络的输入是文本的词嵌入向量,可以从先验知识中自动学习特征。 在一些文本分类任务中,卷积神经网络已经取得了很好的表现。文本分类任务通常被分为两种类型:二元分类和多分类。二元分类任务是指将数据分为两类,例如垃圾邮件和非垃圾邮件。多类分类任务是指将数据分为多类,例如新闻分类。在这两种任务中,卷积神经网络都能够进行有效的分类。 对于二元分类任务,卷积神经网络可以使用一个输出节点,并使用 sigmoid 激活函数将输入映射到 0 到 1 之间的概率。对于多分类任务,卷积神经网络可以使用多个输出节点,每个节点对应一个类别,并使用 softmax 激活函数将输入映射到 0 到 1 之间,并且所有输出节点的和为 1。 要训练卷积神经网络进行文本分类,需要对模型进行三个主要的训练步骤。首先,需要构建词嵌入矩阵,该矩阵将文本中的每个词都映射到一个向量。然后,需要将文本数据转换为卷积神经网络所需的格式。最后,需要对模型进行训练,并根据测试数据进行评估。 总之,卷积神经网络已经被证明是一种强大的工具,可以用于文本分类等任务。在处理文本数据时,卷积神经网络可以自动学习输入数据的特征表示,并使用这些特征来确定文本的类别。 ### 回答3: 卷积神经网络(CNN)是一种深度学习模型,它在图像识别、计算机视觉和自然语言处理中表现出色。最近几年,CNN 在句子分类中也获得了很大的成功。 CNN 句子分类模型的输入是一个序列,输出是类别标签。与传统的 RNN 模型不同之处在于,CNN 可以使每个神经元只能捕获一个固定大小的区域的特征,从而加快模型的训练和降低了模型的复杂度。 CNN 句子分类模型的基本架构包括词嵌入层、卷积层、池化层和全连接层。词嵌入层将输入的文本转化为向量表示。卷积层通过滑动窗口对输入的序列进行卷积操作,提取出局部特征。池化层在每个滑动窗口上提取出一个最大值或平均值,进一步降低维度。最后,全连接层将提取出的特征传递到输出层进行分类。 CNN 句子分类模型的优点在于它可以处理不定长的文本序列,并在仅有少量特征的情况下表现出色。但是,CNN 模型的缺点在于不善于处理长期依赖关系,例如情感分析中的Irony识别。为了解决这个问题,可以引入 RNN 或 Transformer 等模型。 总的来说,CNN 模型为句子分类问题提供了一个简单有效的解决方案。在实践中,需要根据具体的任务选择合适的模型结构和参数设置,才能取得最佳效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值