删除或更新信息,请邮件至freekaoyan#163.com(#换成@)

基于句法树节点嵌入的作者识别方法

本站小编 Free考研考试/2023-11-25

<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});</script> <script type="text/javascript" src="https://cdn.bootcdn.net/ajax/libs/mathjax/2.7.9/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>张洋, 江铭虎
清华大学 人文学院中文系, 计算语言学实验室, 北京 100084
收稿日期:2022-04-25
基金项目:国家自然科学基金重点项目(62036001)
作者简介:张洋(1990-), 男, 博士研究生
通讯作者:江铭虎, 教授, E-mail: jiang.mh@tsinghua.edu.cn

摘要:作者识别是通过分析未知文本的写作风格推断作者归属的交叉学科。现有的研究多基于字符和词汇特征, 而句法关联信息在研究中鲜有涉及。该文提出了基于句法树节点嵌入的作者识别方法, 将句法树的节点表示成其所有依存弧对应的嵌入之和, 把依存关系信息引入深度学习模型中。然后构建句法注意力网络, 并通过该网络得到句法感知向量。该向量同时融合了依存关系、词性以及单词等信息。接着通过句子注意力网络得到句子的表示, 最后通过分类器进行分类。在3个英文数据集的实验中, 该文方法的性能位列第2或3位。更重要的是, 依存句法组合的引入为模型的解释提供了更多的方向。
关键词:作者识别句法树节点依存关系注意力机制
Authorship identification method based on the embedding of the syntax tree node
ZHANG Yang, JIANG Minghu
Computational Linguistics Laboratory, Department of Chinese, School of Humanities, Tsinghua University, Beijing 100084, China

Abstract: [Objective] Authorship identification is a study for inferring authorship of an unknown text by analyzing its stylometry or writing style. The traditional research on authorship identification is generally based on the empirical knowledge of literature or linguistics, whereas modern research mostly relies on mathematical methods to quantify the author's writing style. Currently, researchers have proposed various feature combinations and neural network models. Some feature combinations can achieve better results with traditional machine learning classifiers, while some neural network models can autonomously learn the relationship between the input text and corresponding author to extract text features implicitly. However, the current research mostly focuses on character and lexicon features. Furthermore, the exploration of syntactic features is limited. How to use the dependency relationship between different words in a sentence and combine syntactic features with neural networks still remains unclear. This paper proposes an authorship identification method based on the syntax tree node embedding, which introduces syntactic features into a deep learning model. [Methods] We believe that an author's writing style is mainly reflected in the way he chooses words and constructs sentences. Therefore, this paper mainly develops the authorship identification model from the perspectives of words and sentences. The attention mechanism is used to construct sentence-level features. First, an embedding representation of the syntax tree node is proposed, and the syntax tree node is expressed as a sum of embeddings corresponding to all its dependency arcs. Thus, the information on sentence structure and the association between words are introduced into the neural network model. Then, a syntactic attention network using different embedding methods to vectorize text features, such as dependencies, part-of-speech tags, and words, is constructed, and a syntax-aware vector is obtained through this network. Furthermore, the sentence attention network is used to extract the features from the syntax-aware vector to distinguish between different authors, thereby generating the sentence representation. Finally, the result is obtained by the classifier and the correct rate is used to evaluate the result. [Results] Experiments on CCAT10, CCAT50, IMDb62, and the Chinese novel data sets show that an increase in the number of authors causes a downward trend in the accuracy rate of the model proposed in the paper. In some data points, an increase in the number of authors result ed in an increase instead of a decrease in the correct rate. This shows that the ability of the model proposed in this study to capture the writing style of different authors is considerably different. Furthermore, when we change the number of authors on the IMDb dataset, the correct rate of the model in the paper is found to be slightly lower than the BertAA model in the case of 5 authors; however, the rate is higher than the BertAA model in the case of 10, 25, and 50 authors. Additionally, when the experimental results of the model are compared to other models on the CCAT10, CCAT50, and IMDb62 data sets, the performance of this model is observed to be ranked as second or third. [Conclusions] The attention mechanism demonstrated its efficiency in text feature mining, which can fully capture an author's style that is reflected in different parts of the document. The integration of lexical and syntactic features based on the attention mechanism enhances the overall performance of the model. Our model performs well on different Chinese and English datasets. Notably, the introduction of dependency syntactic combination provides more space for the interpretation of the model, which can explain the text styles of different authors at the word selection and sentence construction levels.
Key words: authorship identificationnode of the syntax treedependencyattention mechanism
随着数字科技的不断发展,获取信息变得越来越容易,于是便产生了处理这些信息的需求。作者识别(authorship identification)又称为作者归属(authorship attribution),是通过某些可以表征文本风格或写作方式的特征确定作者身份的一类研究。作者识别是自然语言处理领域的一个重要的分支,与其他分支不同的是,作者识别关注的是文本中的元知识,即除内容之外能够从文本中获得的有关作者的身份信息或写作风格等知识[1]。近年来,随着信息科学的发展,作者识别受到研究人员的广泛关注。
一般来说,作者识别通常分为2个步骤:提取文本特征和分类器识别。某些不需要构建特征集的方法如压缩方法则缺少提取文本特征这个步骤。针对文本特征的研究多集中于元素的n元组合(n-gram),常见的组合是基于字符、单词和词性标签的n-gram[2-4],也有研究者选用标点符号n-gram或句法n-gram[5-6]。在上述5种n-gram中,句法n-gram是经过句法解析后从句法树中提取的特征,反映了句子的结构信息;而其他4种n-gram是按照文本组成顺序提取的,反映的是文本的局部组合信息。大部分n-gram特征主要用于构建作者轮廓,通过计算文本之间的相似度进行分类[7-8];少部分n-gram特征可以直接作为神经网络的输入[4]n-gram特征在作者识别中具有较好的效果,然而其仅能反映特定元素在局部组合方面的风格差异。根据训练数据是否有标注,可以将作者识别的方法分为有监督方法和无监督方法。其中,有监督的方法又可以细分为两大类,第1类是传统的机器学习方法,通常搭配从文档中提取的离散特征如字符分布[2]、功能词频率[9]、句法结构[10]等。这些离散的特征反映了文本在字符、词汇、句法等方面的统计信息。文[11]指出,字符和词汇能够较好地刻画写作风格,因而成为研究者研究得最多的特征。然而,离散的特征也有着明显的局限性,它们无法反映文本的顺序信息。第2类则主要基于神经网络模型,网络的输入通常是单词或字符的序列。文[4]将这种单词或字符的序列称为连续特征,该特征具有连续表示的优势,有效地利用了文本的顺序信息,可以在更高的维度上刻画作者风格,因而具有较大的研究意义。
Raghavan等[12]根据不同作者撰写的文档构建概率上下文无关文法(probabilistic context-free grammar, PCFG),对于每个测试文档,使用每个作者的语法进行解析,将其分配给能够产生最高可能性的PCFG对应的作者。该方法优于朴素Bayes模型等基线方法,同时具有一定扩展性。Sari等[4]使用基于字符或单词的n-gram表示作为连续特征研究作者识别,将离散特征转化为连续特征,同时使用神经网络挖掘文本潜在的风格信息,获得了比离散特征更好的结果。Jafariakinabad等[13]将每个句子表示为词性标签的序列,然后使用编码器从这些序列中学习句子的表示,接着将句子聚合成文档,同时使用注意力机制奖励那些对预测具有更大贡献的句子。该方法直接使用词性标签替代单词,利用句法循环网络挖掘潜在的句法信息。结果表明, 该方法的性能超过同架构的基于词汇的方法。Jafariakinabad等[14]改进了文[13]方法,在原有的句法表示的基础上添加了词汇表示,并将词汇表示和句法表示连接成一个向量作为文档表示,在4个数据集上获得了较优的性能。Zhang等[15]提取句子中每个单词对应的短语结构树中的路径,并结合字符特征利用卷积神经网络进行作者识别。该方法利用了短语结构信息,但仍然缺少词语之间的关系信息,仅靠短语结构路径嵌入得到的实验结果较差,较好的结果主要来源于字符特征的使用。
本文提出一种基于句法树节点嵌入的作者识别方法,将句法树节点表示成与之相关联的若干个依存句法组合的嵌入之和,挖掘句子中不同词语之间的关系信息,并利用注意力机制筛选那些对于区分不同作者或文本风格有帮助的信息。
1 句法节点嵌入给定如下例句:
The Winter Olympics were successfully held in Beijing.
图 1为该例句的依存句法树图,其中圆圈代表树的节点,有向边为2个单词之间的依存弧,有向边旁边的字符串代表该有向边对应的依存关系,单词下方的字符串为该单词的词性标签。
图 1 依存句法树图
图选项





可以看出,该句法树共有9个节点,对应句子的8个单词和1个标点符号。其中有1个根节点、2个内部节点以及6个叶子节点。不同节点对应的依存关系数量差别很大:叶子节点仅拥有1个依存关系,内部节点拥有2个或3个依存关系,而根节点拥有多达5个的依存关系。如果把叶子节点去掉,只保留根节点和内部节点,则例句变为“Olympics held Beijing”,仅靠剩下的3个单词,读者就可以获得原句的大部分信息,原句实际损失的信息很少。这说明,组成句子的单词,其依存关系数量能够在很大程度上衡量该单词对句子的贡献。更一般的规律是:树根支撑了整个句子结构,对句子的贡献最大;内部节点连接了树根和叶子节点,对句子的贡献次之;而叶子节点仅与内部节点相连,对句子的贡献最小。
本文认为作者的写作风格主要由其遣词造句的模式所决定,而遣词造句的模式则主要体现在依存句法树中与根节点和内部节点相关的依存关系上。因此,可以将节点以及其对应的依存关系向量化。节点“Olympics”对应3个依存关系,这3个依存关系的总和为单词“Olympics”对整个句子的贡献,直观的想法是用词性标签和依存关系的嵌入计算该贡献:
$\begin{aligned}\boldsymbol{C}= & \overline{\mathrm{NNPS}} \circ \overline{\mathrm{det}} \circ \overline{\mathrm{DT}}+\overline{\mathrm{NNPS}} \circ \overline{\text { compound }} \circ \overline{\mathrm{NNP}}+ \\& \overline{\mathrm{VBN}} \circ \overline{\mathrm{nsubj}: \text { pass }} \circ \overline{\mathrm{NNPS}} .\end{aligned}$ (1)
其中:字符串“NNPS”“det”“DT”“compound”“NNP”“VBN”和“nsubj: pass”分别表示专有名词复数、限定关系、限定词、复合关系、专有名词单数、动词过去分词和被动名词性主语,字符串上面加横线表示该字符串对应的嵌入,不同嵌入之间的“ $ \circ $”表示点乘(按位相乘且不相加)。这种表示方式相当于利用依存关系把节点“Olympics”进行了嵌入。由于一个依存关系表示式包括两个词性标签和一个依存关系标签,其中2个词性标签属于同类型的元素,而词性标签和依存关系标签类型不同。为了体现这一差异,在计算节点嵌入时,可以把2个词性标签相加,所得的和再与依存关系标签相乘。按照这个思路,式(1)可以改为
$\begin{aligned}\boldsymbol{C}= & (\overline{\mathrm{NNPS}}+\overline{\mathrm{DT}}) \circ \overline{\mathrm{det}}+(\overline{\mathrm{NNPS}}+\overline{\mathrm{NNP}}) \circ \\& \overline{\text { compound }}+(\overline{\mathrm{VBN}}+\overline{\mathrm{NNPS}}) \circ \\& \overline{\text { nsubj : pass. }}\end{aligned}$ (2)
更一般地,句子中任意一个单词对应的依存句法树节点的嵌入可以表示为
${\bf{embedding}}=\sum\limits_{i=1}^n\left(\overline{\operatorname{pos} 1_i}+\overline{\operatorname{pos} 2_i}\right) \circ \overline{{{\rm{s r}}_i}} \text {. }$ (3)
其中:n表示该单词的依存关系数量,$ \overline{\operatorname{pos} 1_i}、\overline{\operatorname{pos} 2_i}$$ \overline{{{\rm{s r}}_i}}$分别表示该单词的第i个依存关系表示式中处于依存弧始端的词性标签嵌入、处于依存弧末端的词性标签嵌入和依存关系的嵌入。
2 网络模型本文所采用的深度神经网络结构如图 2所示。该网络主要由句法注意力网络、句子注意力网络和分类器3部分组成。下面简单叙述数据流如何在网络中流动。以句子为单位对文本进行处理,句子进行分词标注和句法解析2类处理得到依存关系、词性标签和单词。接下来,依存关系、词性标签和单词经过嵌入层分别得到相应的依存关系嵌入、词性标签嵌入和单词嵌入,然后三者通过句法注意力网络得到句法感知向量。句法感知向量融合了依存关系、词性标签和单词等多种文本特征,是利用注意力机制生成的针对特定作者写作风格的向量表示。句法感知向量通过句子注意力网络得到句子的表示,然后通过一个分类器输出类别标签。
图 2 网络模型图
图选项





2.1 句法注意力网络句法注意力网络包括2部分:第1部分的网络输入为依存关系三元组嵌入,输出为上下文向量,如图 3所示;第2部分的网络输入为单词嵌入和上下文向量,输出为句法感知向量,如图 4所示。
图 3 句法注意力网络第1部分示意图
图选项





图 4 句法注意力网络第2部分示意图
图选项





在第1部分,词性标签嵌入和依存关系嵌入分别通过一个线性网络,然后按照式(4),同类型的变量相加,不同类型的变量相乘,结果再输入到sigmoid函数中得到注意力向量:
$\boldsymbol{a}_{i j}=\operatorname{sigmoid}\left(\left({\boldsymbol{V} \overline{\operatorname{pos}_i}}+{\boldsymbol{W} \operatorname{pos}_{i j}}\right) \circ {\boldsymbol{U} \overline{\operatorname{sr}_{i j}}}+\boldsymbol{b}\right) .$ (4)
为了便于特征嵌入的表示,使用$ \overline{\operatorname{pos}_i}$表示句中第i个单词的词性标签嵌入,$\overline{\operatorname{pos}_{i j}} $表示依存句法树中与第i个单词相邻的第j个单词的词性标签嵌入,$ \overline{\mathrm{sr}_{i j}}$表示句中第i个单词的第j个依存关系嵌入。$\boldsymbol{U} 、\boldsymbol{V}$W为线性网络的权重矩阵,b为相应的偏置项。设$\boldsymbol{x}=\left(x_1, x_2, \cdots, x_n\right), x_i \in \boldsymbol{x} $函数为
$\begin{gathered}\operatorname{sigmoid}(\boldsymbol{x})=\left(\operatorname{sigmoid}\left(x_1\right), \operatorname{sigmoid}\left(x_2\right), \cdots, \right. \\\left.\operatorname{sigmoid}\left(x_n\right)\right), \\\operatorname{sigmoid}\left(x_i\right)=\frac{\exp \left(x_i\right)}{\exp \left(x_i\right)+1} .\end{gathered}$ (5)
注意力向量aij经过softmax归一化后,与$\overline{\operatorname{pos}_{i j}} $经过W的结果点乘后求和,得到上下文向量:
$\boldsymbol{c}_i=\sum\limits_{j=1}^{N_i} \operatorname{softmax}\left(\boldsymbol{a}_{i j}\right) \circ\left(\boldsymbol{W} \overline{\operatorname{pos}_{i j}}+\boldsymbol{b}_1\right) .$ (6)
其中:b1为相应的偏置项,Ni为句中第i个单词拥有的依存关系数量。softmax函数为
$\begin{gathered}\operatorname{softmax}(\boldsymbol{x})=\left(\operatorname{softmax}\left(x_1\right), \operatorname{softmax}\left(x_2\right), \cdots, \right. \\\left.\operatorname{softmax}\left(x_n\right)\right) \\\operatorname{softmax}\left(x_i\right)=\frac{\exp \left(x_i\right)}{\sum\limits_{j=1}^n \exp \left(x_j\right)}\end{gathered}$ (7)
句法注意力网络的第1部分使用依存关系组合构建ci,而在第2部分中则使用ci和单词嵌入来计算句法感知向量zi。单词嵌入经过一个线性网络,结果通过函数tanh限定值域在-1到1之间。计算过程如下:
$\boldsymbol{h}_i=\tanh \left(\boldsymbol{W}_1 \overline{\operatorname{word}_i}+\boldsymbol{b}_2\right) \text {. }$ (8)
其中:W1为线性网络的权重矩阵,b2为该线性网络的偏置项,hi为中间变量,tanh函数为
$\begin{aligned}& \tanh (\boldsymbol{x})=\left(\tanh \left(x_1\right), \tanh \left(x_2\right), \cdots, \tanh \left(x_n\right)\right), \\& \tanh \left(x_i\right)=\frac{\exp \left(x_i\right)-\exp \left(-x_i\right)}{\exp \left(x_i\right)+\exp \left(-x_i\right)} .\end{aligned}$ (9)
计算出hi后,hici分别经过一个线性网络,二者相加后结果经过sigmoid函数得到
$\boldsymbol{g}=\operatorname{sigmoid}\left(\boldsymbol{U}_1 \boldsymbol{h}_i+\boldsymbol{V}_1 \boldsymbol{c}_i+\boldsymbol{b}_3\right) .$ (10)
其中:U1V1为线性网络的权重矩阵,b3为相应的偏置项。计算出g后,ghi点乘,再加上门函数变换与上下文向量ci的点乘,即得到句法感知向量:
$\boldsymbol{z}_i=\boldsymbol{g} \circ \boldsymbol{h}_i+(1-\boldsymbol{g}) \circ \boldsymbol{c}_i.$ (11)
2.2 句子注意力网络句法注意力网络通过多维注意力机制,充分挖掘了句子中的各项关联信息,并得到了zi,接下来是根据句法感知向量进行分类。本文仍然采用注意力网络提取句法感知向量中能够有效区分不同文本风格的特征,生成句子表示。zi经过一个线性网络,再经过sigmoid函数,将函数值映射到0到1之间,然后通过第2个线性网络得到权重向量:
$\boldsymbol{m}_i=\boldsymbol{U}_2 \operatorname{sigmoid}\left(\boldsymbol{W}_2 \boldsymbol{z}_i+\boldsymbol{b}_4\right)+\boldsymbol{b}_5 \text {. }$ (12)
其中:W2为第1个线性网络的权重矩阵,b4为第1个线性网络的偏置项;U2为第2个线性网络的权重矩阵,b5为第2个线性网络的偏置项。然后,mi经过softmax函数归一化后,再与zi点乘后求和,得到句子表示:
$\boldsymbol{s}=\sum\limits_{i=1}^l \operatorname{softmax}\left(\boldsymbol{m}_i\right) \circ \boldsymbol{z}_i.$ (13)
其中l表示该句所包含的单词数。句子注意力网络的示意图如图 5所示。
图 5 句子注意力网络示意图
图选项





2.3 分类层分类层的结构比句法注意力层和句子注意力层简单很多,s经过一个线性网络和softmax函数,得到预测标签的概率分布:
$\widetilde{\boldsymbol{y}}=\operatorname{softmax}\left(\boldsymbol{W}_3 \boldsymbol{s}+\boldsymbol{b}_6\right) .$ (14)
其中:W3为线性网络的权重矩阵,b6为该网络的偏置项。对于模型训练,使用真实分布y和预测分布$\tilde{\boldsymbol{y}} $之间的Kullback-Leibler散度作为损失函数:
$\operatorname{Loss}(\boldsymbol{y}, \tilde{\boldsymbol{y}})=\frac{1}{N} \sum\limits_{k=1}^N y_k\left(\ln \left(y_k\right)-\ln \left(\tilde{y}_k\right)\right) .$ (15)
其中N表示y的维度。
3 实验部分3.1 数据集介绍本文选用CCAT10、CCAT50、IMDb62和中文小说数据集进行实验,表 1展示了这4个数据集的统计信息。
表 1 4个数据集的统计信息
项目 CCAT10 CCAT50 IMDb62 中文小说数据集
文本最小字符数量/个 483 345 82 1 000
文本最大字符数量/个 8 716 8 716 11 617 1 000
文本平均字符数量/个 3 071 3 069 1 742 1 000
文本字符数量标准差/个 871.94 817.48 1 148.18 0
文本最小词汇数量/个 74 50 16 458
文本最大词汇数量/个 1 452 1 452 2 144 893
文本平均词汇数量/个 491 490 341 729
文本词汇数量标准差/个 139.64 131.19 223.40 49.10


表选项






1) CCAT10数据集[16]是路透社语料库第1卷(Reuters Corpus Volume 1, RCV1)的一个子集。它由10位作者的新闻专线报道组成,每位作者有100篇文档,共1 000篇文档,内容涉及公司或产业新闻。
2) CCAT50数据集[16]也是RCV1的子集,是比CCAT10规模更大的数据集,总共有来自50位作者的5 000个文档,其中每位作者100篇文档。数据集的主题与CCAT10一致。
3) IMDb62数据集[17]包含互联网电影资料库(internet movie database, IMDb)中62位超级用户的62 000条电影评论和17 550个留言板帖子。其中每个用户撰写了1 000条电影评论以及不同数量的留言板帖子,涉及的主题包括电影、电视、音乐等。
4) 中文小说数据集[18]包含莫言、路遥、贾平凹等10位作家的多部小说作品(共48.7 MB),这些作品被集中起来然后在实验前进行分割。
3.2 实验过程以句子为单位进行预处理,使用stanford parser 4.2.0(https://stanfordnlp.github.io/CoreNLP/)获得单词对应的词性标签以及依存关系序列。然后使用预训练模型实现单词的向量化,其中英文预训练模型(https://www.cnblogs.com/taolusi/p/9249578.html)是在Google新闻数据集上训练的向量,包含300万个单词和短语,向量维度为300;而中文预训练模型(https://ai.tencent.com/ailab/nlp/zh/embedding.html)是在新闻、网页、小说等文本上训练的向量,包含200万个单词和短语,向量维度为200。本文使用pytorch的nn.Embedding()函数(https://pytorch.org/docs/stable/generated/torch.nn.Embedding.html)来实现词性标签和依存关系的向量化。该嵌入方式是从索引到固定维度向量表示的映射,并未使用预训练模型。之所以采用差异化的嵌入方式是因为本文希望ci仅包含句法信息,而zi则同时包含句法信息和词汇差异信息。因为与词汇相关的信息能够在更高维度上刻画作者的写作风格。
对于CCAT10、CCAT50和IMDb62数据集,直接使用其全部语料;而对于中文小说数据集,首先把同一位作家的多部作品进行合并,按照每个文档1 000字的长度进行分割,然后每位作者选择1 000个文本进行实验。因此,对于中文小说数据集来说,实际参与实验的语料有31.1 MB。对于中英文文本,实验集和测试集的数据数量占比分别为70%和30%,然后根据需要再从实验集中划分出一部分用于交叉验证。对于CCAT10、CCAT50和IMDb62数据集,本文除了跟前人的研究结果作对比,还会验证不同作者数量对模型性能的影响。本文比较不同作者数量对作者识别的影响,此外针对CCAT10和中文小说数据集,还会比较选用不同类型的节点对作者识别的影响。为了更好地训练模型,使用网格搜索来确定不同层的dropout、小批量大小、周期数、学习率等参数的最优组合。
4 结果及分析表 2展示了11个模型在3个英文数据集上的实验结果,使用正确率来进行评估。这些模型可以分为单特征模型和多特征模型。其中单特征模型通常较为简单,搭配常见的机器学习分类器即可完成识别过程。其优点是计算简便,而缺点是难以在更高维度上刻画作者的写作风格,因而正确率往往较低。而多特征模型可以从不同维度上刻画作者的写作风格,因此通常会有更高的正确率。前3个模型属于典型的单特征模型,均使用字符n-gram特征,区别是特征的组合方式不同。它们的正确率偏低。后8个模型均属于多特征模型。模型4拥有多种不同类型和不同维度的特征,由于采用无监督的方式进行训练,所以正确率通常不高。模型5涉及字符、词汇等特征,所选的结果是利用字符特征得到的最佳结果。模型6基于单词和字符的n-gram,所获得的最佳结果来源于字符n-gram。值得注意的是,单词n-gram的加入可以提高该模型在CCAT10上的性能。模型7同时使用了字符特征和句法特征,获得了较高的正确率,并且高性能主要由于字符特征的使用。模型8同时使用了风格特征和混合特征,这使得其训练少量周期就能达到很高的正确率,训练效率远超其他模型。然而,模型8适合短句数据集以及数量多但相对平衡的文本语料,而IMDb62数据集的标准差较大,因此模型8在IMDb62数据集上并未取得最佳结果。模型9同时使用了统计风格特征、内容特征、句法特征和语义特征,这使得其特征集庞大。而该方法使用简单的逻辑回归即取得了不错的结果,这说明在刻画文本风格方面,人为增加特征集的数量和维度可能比单纯分类器学习的效率更高。模型10和本文模型均同时使用了词汇和句法特征,并使用注意力网络来捕获文档结构信息。不同之处在于,前者使用词性标签的顺序排列刻画句法结构,而后者使用依存句法组合刻画句法结构。前者模型便于计算并且正确率较高,而可解释性较差;而后者模型正确率相对较低,但可解释性更强。从整体上来看,本文模型在3个英文数据集上的性能位列第2或3位,综合性能优秀,并且依存句法组合的引入也为模型的解释提供了更多的方向。
表 2 不同模型在3个数据集上的正确率?
%
序号 模型 CCAT10 CCAT50 IMDb62
1 SVM搭配词缀和标点符号的3-gram[19] 78.8 69.3
2 SVM搭配2 500个最高频的3-gram[20] 80.8
3 SVM搭配字符n-gram的局部直方图[21] 86.4
4 主题模型[22] 91.79
5 CNn-char[23] 91.7
6 连续的n-gram表示[4] 77.80 72.60 94.80
7 句法-CNN[15] 88.20 81.00 96.16
8 BertAA+风格+混合特征[24] 93.0
9 多特征+逻辑回归[25] 91.71 80.62 88.19
10 风格-HAN[14] 90.58 82.35
11 本文模型 89.64 81.26 94.71


表选项






图 67分别展示了本文模型在英文和中文数据集上不同作者数量下的正确率。
图 6 英文数据集上不同作者数量下的正确率
图选项





图 7 中文小说数据集上不同作者数量下的正确率
图选项





可以看出,随着作者数量的增多,本文模型在不同数据集上所对应的正确率均整体呈现出下降的趋势,在某些数据点上出现了作者数量增多而正确率不降反升的情况。这说明本文模型对不同作者的写作风格的捕获能力差异较大。同时,将本文模型与BertAA[24]对比,如表 3所示,其中BertAA的数据来源于文[24]。可以看出,本文模型的正确率在5位作者的情况下略低于BertAA,而在10、25和50位作者的情况下均高于BertAA。
表 3 BertAA与本文模型在IMDb数据集上的正确率
作者数量 BertAA正确率/% 本文模型正确率/%
5 99.6 98.87
10 98.1 98.57
25 93.2 97.41
50 90.7 95.4


表选项






一个句子对应的依存句法树中有根节点、内部节点和叶子节点3类节点,它们在句法树中发挥的作用不同。为了探究不同类型的节点对作者识别结果的影响,本文在CCAT10数据集和中文小说数据集上使用不同类型的节点进行作者识别,正确率如表 4所示。
表 4 使用不同类型的节点对应的正确率?
%
使用节点 CCAT10 中文小说数据集
仅内部节点 73.83 82.73
仅叶子节点 57.67 68.74
根节点+内部节点 75.57 83.21
内部节点+叶子节点 89.06 93.20
全部节点 89.64 93.19


表选项






当使用全部节点时,正确率是最高的;使用内部节点和叶子节点次之。从另一个角度来说,当获得了所有内部节点和叶子节点信息时,根据这些信息就可以推理出根节点的信息,因此只缺少根节点的信息对识别结果影响并不大。值得注意的是,当由“内部节点”变为“根节点+内部节点”时,在CCAT10数据集上的正确率绝对提升了1.74%,而在中文小说数据集上的正确率仅绝对提升了0.48%。类似的情况也出现在由“内部节点+叶子节点”变为“全部节点”时,这说明对于CCAT数据集来说,根节点的影响比中文小说数据集的影响更大。出现这种情况的原因可能在于,CCAT数据集的句长通常较长,因此根节点承接了更多的信息,这意味着缺少根节点会损失更多的信息。另一方面,CCAT数据集每位作者所拥有的文本数量仅是中文小说数据集的1/10,较少的数据加大了模型捕捉特定作者写作风格的难度。
仅使用根节点和内部节点,在CCAT10数据集和中文小说数据集上的正确率与使用全部节点相比,分别绝对下降了14.07%和9.98%。在长句子中,叶子节点较多,然而从实验结果可以推断,叶子节点的实际作用并不大,仅靠根节点和内部节点就可以支撑依存句法结构,从而提供大部分句法信息。而当仅使用内部节点时,在2个数据集上的正确率比仅使用叶子节点时都高。这说明,内部节点是比叶子节点更重要的信息来源。根据上面的分析也可以得出,在没有使用叶子节点时,根节点的作用会被放大。表 4表明,在设计注意力网络时,可以有意识地提高那些可能提供更大贡献的节点权重。
5 结论本文提出了一种基于句法树节点嵌入的作者识别方法,将句法树的节点表示成其所有依存弧对应的嵌入之和,通过这种方式将句法信息以及单词之间的关联信息嵌入到节点表示中。然后,构建了句法注意力网络,该网络把词汇信息和句法信息嵌入到一起形成句法感知向量。句法感知向量融合了依存关系、词性以及单词等特征,是借助注意力机制生成的针对特定作者写作风格的向量表述。接着,通过句子注意力网络抽取句法感知向量中那些可以用于区分不同作者的特征生成句子表示,最后,通过分类器进行分类。在3个英文数据集的实验中,本文模型的性能位列第2或3位。这说明注意力机制在特征整合方面的有效性。更重要的是,依存句法组合的引入为模型的解释提供了更多的方向。
下一步可以尝试:优化句法注意力网络的结构,减少网络节点,适当调整权重分配,比如给那些可能提供更大贡献的节点配置更高的权重;句子注意力网络改用其他网络结构,研究不同网络的搭配;在数据集上的实验进一步细化对某项特征的研究。

参考文献
[1] DAELEMANS W. Explanation in computational stylometry[C]//Proceedings of the 14th International Conference on Computational Linguistics and Intelligent Text Processing. Karlovasi, Greece: Springer, 2013: 451-462.
[2] STAMATATOS E. Ensemble-based author identification using character N-grams[C]//Proceedings of the 3rd International Workshop on Text-based Information Retrieval. 2006: 41-46.
[3] MARTINC M, ?KRJANEC I, ZUPAN K, et al. PAN 2017: Author profiling-gender and language variety prediction[C]//Working Notes of the Conference and Labs of the Evaluation Forum 2017. Dublin, Ireland: CLEF, 2017.
[4] SARI Y, VLACHOS A, STEVENSON M. Continuous N-gram representations for authorship attribution[C]//Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics. Valencia, Spain: Association for Computational Linguistics, 2017: 267-273.
[5] MARTíN-DEL-CAMPO-RODRíGUEZ C, ALVAREZ D A P, SIFUENTES C E M, et al. Authorship attribution through punctuation n-grams and averaged combination of SVM[C]//Working Notes of the Conference and Labs of the Evaluation Forum 2019. Lugano, Switzerland: CLEF, 2019.
[6] SIDOROV G, VELASQUEZ F, STAMATATOS E, et al. Syntactic N-grams as machine learning features for natural language processing[J]. Expert Systems with Applications, 2014, 41(3): 853-860. DOI:10.1016/j.eswa.2013.08.015
[7] KE?ELJ V, PENG F C, CERCONE N, et al. N-gram-based author profiles for authorship attribution[C]//Proceedings of the Pacific Association for Computational Linguistics. Halifax, Canada: Pacific Association for Computational Linguistics, 2003: 255-264.
[8] HOUVARDAS J, STAMATATOS E. N-gram feature selection for authorship identification[C]//Proceedings of the 12th International Conference on Artificial Intelligence: Methodology, Systems, and Applications. Varna, Bulgaria: Springer, 2006: 77-86.
[9] GARCíA A M, MARTíN J C. Function words in authorship attribution studies[J]. Literary and Linguistic Computing, 2007, 22(1): 49-66. DOI:10.1093/llc/fql048
[10] TSCHUGGNALL M, SPECHT G. Enhancing authorship attribution by utilizing syntax tree profiles[C]//Proceedings of the 14th Conference of the European Chapter of the Association for Computational Linguistics. Gothenburg, Sweden: Association for Computational Linguistics, 2014: 195-199.
[11] BOUANANI S E M E, KASSOU I. Authorship analysis studies: A survey[J]. International Journal of Computer Applications, 2014, 86(12): 22-29. DOI:10.5120/15038-3384
[12] RAGHAVAN S, KOVASHKA A, MOONEY R. Authorship attribution using probabilistic context-free grammars[C]//Proceedings of the ACL 2010 Conference Short Papers. Uppsala, Sweden: Association for Computational Linguistics, 2010: 38-42.
[13] JAFARIAKINABAD F, TARNPRADAB S, HUA K A. Syntactic recurrent neural network for authorship attribution[R/OL]. (2019-02-27)[2022-03-18]. https://arxiv.org/pdf/1902.09723.pdf.
[14] JAFARIAKINABAD F, HUA K A. Style-aware neural model with application in authorship attribution[C]//Proceedings of the 18th IEEE International Conference on Machine Learning and Applications. Boca Raton, USA: IEEE, 2019: 325-328.
[15] ZHANG R C, HU Z Y, GUO H Y, et al. Syntax encoding with application in authorship attribution[C]//Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. Brussels, Belgium: Association for Computational Linguistics, 2018: 2742-2753.
[16] STAMATATOS E. Author identification: Using text sampling to handle the class imbalance problem[J]. Information Processing & Management, 2008, 44(2): 790-799.
[17] SEROUSSI Y, ZUKERMAN I, BOHNERT F. Collaborative inference of sentiments from texts[C]//Proceedings of the 18th International Conference on User Modeling, Adaptation, and Personalization. Big Island, USA: Springer, 2010: 195-206.
[18] 张洋, 江铭虎. 基于注意力机制的文本作者识别[J]. 计算机应用, 2021, 41(7): 1897-1901.
ZHANG Y, JIANG M H. Authorship identification of text based on attention mechanism[J]. Journal of Computer Applications, 2021, 41(7): 1897-1901. (in Chinese)
[19] SAPKOTA U, BETHARD S, MONTES-Y-GóMEZ M, et al. Not all character n-grams are created equal: A study in authorship attribution[C]//Proceedings of the 2015 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Denver, Colorado: Association for Computational Linguistics, 2015: 93-102.
[20] PLAKIAS S, STAMATATOS E. Tensor space models for authorship identification[C]//Proceedings of the 5th Hellenic Conference on Artificial Intelligence: Theories, Models and Applications. Syros, Greece: Springer, 2008: 239-249.
[21] ESCALANTE H J, SOLORIO T, MONTES-Y-GóMEZ M. Local histograms of character n-grams for authorship attribu- tion[C]//Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics. Portland, USA: Association for Computational Linguistics, 2011: 288-298.
[22] SEROUSSI Y, ZUKERMAN I, BOHNERT F. Authorship attribution with topic models[J]. Computational Linguistics, 2014, 40(2): 269-310. DOI:10.1162/COLI_a_00173
[23] RUDER S, GHAFFARI P, BRESLIN J G, et al. Character-level and multi-channel convolutional neural networks for large-scale authorship attribution[R/OL]. (2016-09-21)[2022-03-18]. https://arxiv.org/pdf/1609.06686.pdf.
[24] FABIEN M, VILLATORO-TELLO E, MOTLICEK P, et al. BertAA: BERT fine-tuning for authorship attribution[C]//Proceedings of the 17th International Conference on Natural Language Processing. Patna, India: ACL, 2020: 127-137.
[25] 吴海燕. 基于神经网络的句法结构建模与应用研究[D]. 北京: 清华大学, 2020.
WU H Y. Syntactic structure modeling and application based on neural networks[D]. Beijing: Tsinghua University, 2020. (in Chinese)

相关话题/

  • 领限时大额优惠券,享本站正版考研考试资料!
    大额优惠券
    优惠券领取后72小时内有效,10万种最新考研考试考证类电子打印资料任你选。涵盖全国500余所院校考研专业课、200多种职业资格考试、1100多种经典教材,产品类型包含电子书、题库、全套资料以及视频,无论您是考研复习、考证刷题,还是考前冲刺等,不同类型的产品可满足您学习上的不同需求。 ...
    本站小编 Free壹佰分学习网 2022-09-19