欢迎光临散文网 会员登陆 & 注册

【授权转载】融合主题模型和动态路由的小样本学习方法 [上]

2022-08-18 23:05 作者:执念残生轮回  | 我要投稿

%5Ctext%7B%E5%BC%A0%E6%B7%91%E8%8A%B3%7D%5E%7B1%7D%5Ctext%7B%EF%BC%8C%E5%94%90%E7%84%95%E7%8E%B2%7D%5E%7B1%2C3%2C4%7D%5Ctext%7B%EF%BC%8C%E9%83%91%20%E6%B6%B5%7D%5E%7B2%7D%5Ctext%7B%EF%BC%8C%E5%88%98%E5%AD%9D%E7%82%8E%7D%5E%7B1%7D%5Ctext%20%7B%EF%BC%8C%E7%AA%A6%E5%85%A8%E8%83%9C%7D%5E%7B1%2C3%2C4%7D%5Ctext%7B%EF%BC%8C%E9%B2%81%E6%98%8E%E7%BE%BD%7D%5E%7B5%7D

(1. 山东工商学院计算机科学与技术学院,烟台 264005;2. 山东工商学院信息与电子工程学院,烟台 264005;3. 山东省高等学校协同创新中心:未来智能计算,烟台 264005;4. 山东省高校智能信息处理重点实验室(山东工商学院),烟台 264005;5. 大连海事大学信息科学技术学院,大连 116026)

摘 要:针对小样本学习标注训练样本过少,导致特征表达力弱的问题,本文结合有监督主题模型(Supervised LDA,SLDA)和动态路由算法提出一种新的动态路由原型网络模型(Dynamic routing prototypical network based on SLDA,DRP⁃SLDA)。利用SLDA主题模型建立词汇与类别之间的语义映射,增强词的类别分布特征,从词粒度角度编码获得样本的语义表示。提出动态路由原型网络 (Dynamic routing prototypical network,DR⁃Proto),通过提取交叉特征利用样本之间的语义关系,采用动态路由算法迭代生成具有类别代表性的动态原型,旨在解决特征表达问题。实验结果表明,DRP⁃SLDA模型能有效提取词的类别分布特征,且获取动态原型提高类别辨识力,从而能够有效提升小样本文本分类的泛化性能。

关键词:小样本学习;元学习;原型网络;有监督主题模型;文本分类

引   言

        有监督深度学习需要大量的标注样本,然而标注样本获取代价昂贵;相反,人类能够在样本匮乏的情况下学习新知识。因此小样本学习(Few⁃shot learning,FSL)方法的研究得到广泛关注,其目标是在每个类别只有少量样本的情况下训练模型,但是在无法有效提取特征时,导致模型泛化性能下降,是小样本学习亟待解决的问题。早期研究者应用迁移学习微调预训练模型。近年来,元学习能够比较好地解决小样本学习问题,主要有基于度量的算法、基于数据增强的算法和基于模型优化的算法。其中,基于度量的小样本学习简单有效,在面向图像和文本的任务中得到广泛关注。Vinyals等提出匹配网络,通过分段训练策略迁移元知识生成以余弦距离度量的加权K⁃近邻分类器。Snell等提出原型网络,假设每个类的样本在度量空间中都存在原型,同属一个类别的样本均值向量作为该类的原型。Fort等提出高斯原型网络,将样本表示为高斯协方差矩阵,利用样本权重构造与类相关的度量函数。Gao等提出基于注意力的混合原型网络,设计了样本级别和特征级别的两种注意力机制,分别捕捉对分类更重要的样本和特征,提高关系分类模型在噪声数据集上的性能和鲁棒性。Sun等提出层次注意力原型网络,构建了特征、单词和样本 3种级别的注意力机制,分别赋予不同的权重分数,训练每个类的原型。度量学习应用于自然语言处理的不同领域,如单词预测、知识图谱以及任务型对话系统。有效提取不同粒度的词特征和样本特征,是基于度量的小样本学习需要解决的难点问题。本文从词粒度考虑不同类别的词分布特征,动态更新每类的原型,提出一种基于SLDA的动态路由原型网络模型(Dynamic routing prototypical network based on SLDA,DRP⁃SLDA)。利用SLDA主题模型识别词与类别之间的精准语义映射,获得每个类别的词分布特征。基于支持集和查询集,提出动态路由原型网络(Dynamic routing prototypical network,DR⁃Proto),旨在通过动态路由算法有效利用样本之间语义交叉特征训练动态原型,从而提升小样本文本分类的泛化性能。

1 DRP‑SLDA模型

1. 1 DRP‑SLDA模型框架

        C⁃way K⁃shot 表示含有C个类别且每类有K个标记样本的小样本分类问题。令 D%3D%5Cleft%5C%7BD_%7B%5Ctext%20%7Btrain%7D%7D%2C%20D_%7B%5Ctext%20%7Btest%7D%7D%5Cright%5C%7DD_%7B%5Ctext%20%7Btrain%7D%7D%20%5Ccap%20D_%7B%5Ctext%20%7Btest%7D%7D%3D%5Cvarnothing。从训练集D_%7B%5Ctext%20%7Btrain%7D%7DC个类别,每类选K个有标签样本S%3D%5Cleft%5C%7B%5Cleft(x_%7Bi%7D%2C%20y_%7Bi%7D%5Cright)%5Cright%5C%7D_%7Bi%3D1%7D%5E%7Bm%7D  (m%3DC%20%5Ctimes%20K),作为支持集 ,x_%7Bi%7D表示第i个样本,y_%7Bi%7D%20%5Cin%5B1%2C%20C%5Dx_%7Bi%7D的类标签 ;每类另外选L个无标签样本Q%3D%5Cleft%5C%7B%5Cleft(x_%7Bq%7D%2C%20y_%7Bq%7D%5Cright)%5Cright%5C%7D_%7Bq%3D1%7D%5E%7Bh%7D  (m%3DC%20%5Ctimes%20K)作为查询集,x_%7Bq%7D表示第q个样本,y_%7Bi%7D%20%5Cin%5B1%2C%20C%5Dx_%7Bq%7D的类标签。测试集D_%7B%5Ctext%20%7Btest%7D%7DC类的有标签支持集和无标签查询集构成。元学习方法仅从D_%7B%5Ctext%20%7Btrain%7D%7D中采样1组支持集和查询集,样本过少模型难以学习良好特征表示。【Bao Y ,  Wu M ,  Chang S , et al. Few-shot Text Classification with Distributional Signatures[J].  2019.】引入源集辅助训练,增强特征表示,如图1所示。以20newsgroup数据集的3⁃way 2⁃shot任务为例,选3个类作为D_%7B%5Ctext%20%7Btest%7D%7D,其余 17个类作为D_%7B%5Ctext%20%7Btrain%7D%7D。元训练时,从D_%7B%5Ctext%20%7Btrain%7D%7D选 3 个类采样支持集和查询集,剩余14个类作为源集。元测试时,从D_%7B%5Ctext%20%7Btest%7D%7D中采样支持集和查询集,D_%7B%5Ctext%20%7Btrain%7D%7D中所有类的样本作为源集。DRP⁃SLDA模型框架如图 2所示,由Encoder和DR⁃Proto network构成。其中,Encoder利用SLDA主题模型增强词的分布特征,得到词的特征编码。DR⁃Proto network为本文提出的动态路由原型网络,利用动态路由算法提取支持集和查询集的样本交叉特征计算每类的原型。通过欧氏距离d(%5Cbullet)度量查询集与原型的相似性以分类预测。

图 1 元训练样本

图 2 DRP⁃SLDA模型的C⁃way K⁃shot(C=3,K=2)框架

1. 2 基于SLDA编码方法

        为获得每个类别的词分布特征,本文提出基于 SLDA 主题模型的词编码方法,即图 2 所示DRP⁃SLDA 模型框架中Encoder。

1.2.1 SLDA 主题模型

        SLDA主题模型的概率图模型如图3所示。

图3 SLDA概率图模型

支持集S%3D%5Cleft%5C%7B%5Cleft(x_%7Bi%7D%2C%20y_%7Bi%7D%5Cright)%5Cright%5C%7D_%7Bi%3D1%7D%5E%7Bm%7D%2C%20x_%7Bi%7D表示第i个样本,

y_%7Bi%7Dx_%7Bi%7D的标签。 其中m为样本数,C为类别数,T为主题数,l为第i个样本的长度。l表示第 i个样本中第 w个 词,z_%7Bi%7D%5E%7Bw%7D 表示分配给 x_%7Bi%7D%5E%7Bw%7D 的主题,z%3D%5Cleft(z_%7B1%7D%2C%20%5Ccdots%2C%20z_%7BV%7D%5Cright) 为主题向量(V 为单词数)。%5Ctheta_%7Bi%7D 为样本i的主题概率分布,%5Cvarphi_%7Bt%7D为第t个主题的词概率分布,%5Cdelta_%7Bt%7D为第t个主题的类别 概率分布。%5Ctheta_%7Bi%7D 、%5Cvarphi_%7Bt%7D%5Cdelta_%7Bt%7D服从Dirichlet分布,其先验参数为α、β、γ。获得词x_%7Bi%7D%5E%7Bw%7D的主题标号z后,假设 x_%7Bi%7D%5E%7Bw%7D%3Dw且所在样本i的类标签y_%7Bi%7D%3Dj%2C%20j%5Cin%5B1%2C%20C%5D,通过统计频次计算 %5Ctheta_%7Bi%7D%5Cvarphi_%7Bt%7D和 %5Cdelta_%7Bt%7D,有

%5Ctheta_%7Bi%2C%20t%7D%3D%5Cleft(n_%7Bi%7D%5E%7B(t)%7D%2B%5Calpha_%7Bt%7D%5Cright)%20%2F%20%5Csum_%7Bz%3D1%7D%5E%7BT%7D%5Cleft(n_%7Bi%7D%5E%7B(z)%7D%2B%5Calpha_%7Bz%7D%5Cright)              (1)

%5Cvarphi_%7Bt%2C%20w%7D%3D%5Cleft(n_%7Bt%7D%5E%7B(w)%7D%2B%5Cbeta_%7Bw%7D%5Cright)%20%2F%20%5Csum_%7Bv%3D1%7D%5E%7BV%7D%5Cleft(n_%7Bv%7D%5E%7B(w)%7D%2B%5Cbeta_%7Bv%7D%5Cright)         (2)

%5Cdelta_%7Bt%2C%20j%7D%3D%5Cleft(n_%7Bt%7D%5E%7B(j)%7D%2B%5Cgamma_%7Bj%7D%5Cright)%20%2F%20%5Csum_%7Bc%3D1%7D%5E%7Bc%7D%5Cleft(n_%7Bt%7D%5E%7B(c)%7D%2B%5Cgamma_%7Bc%7D%5Cright)              (3)

式中:%5Ctheta_%7Bi%2C%20t%7D表示样本i的词分配给主题t的概率;%5Cvarphi_%7Bt%2C%20w%7D表示主题t分配给词w的概率;%5Cdelta_%7Bt%2C%20j%7D表示主题t属于类别j的概率。n_%7Bi%7D%5E%7B(t)%7D表示第i个样本被赋予主题t的次数;n_%7Bt%7D%5E%7B(w)%7D表示词w被赋予主题t的次数;n_%7Bj%7D%5E%7B(t)%7D表示类别j被赋予主题t的次数。a_%7Bt%7D为主题t的Dirichlet先验;%5Cbeta_%7Bw%7D为词w的Dirichlet先验;y_%7Bj%7D为类别j的Dirichlet先验。t%3D1%2C%20%5Ccdots%2C%20T%20%3B%20w%3D1%2C%20%5Ccdots%2C%20V%20%3B%20j%3D1%2C%20%5Ccdots%2C%20C

1.2.2 基于SLDA 的编码表示

        小样本学习因样本匮乏难以较好学习词特征,由于SLDA主题模型的%5Cvarphi%5Cdelta识别词汇与类别之间的精准映射,基于SLDA的Encoder旨在从单词⁃类别分布中增强特征表示学习,如图4所示。SLDA模型提取单词在特定类分布特征,源集获取单词的通用性特征表示。通过双向长短期记忆网络(Bi⁃directional long short⁃term memory,BiLSTM)计算单词权重,将 word2vec后的单词加权求和获得样本特征表示。

图 4 基于SLDA的Encoder架构

%5Cboldsymbol%7BS%7D%3D%5Cleft(%5Cleft(-%5Cleft(%5Cboldsymbol%7B%5Cdelta%7D%5E%7B%5Cmathrm%7BT%7D%7D%20%5Cboldsymbol%7B%5Cvarphi%7D%5Cright)%20%5Clog%20%5Cleft(%5Cboldsymbol%7B%5Cdelta%7D%5E%7B%5Cmathrm%7BT%7D%7D%20%5Cboldsymbol%7B%5Cvarphi%7D%5Cright)%5Cright)%5E%7B-1%7D%5Cright)%5E%7B%5Cmathrm%7BT%7D%7D     (4)

因B站最多允许100张图片(包括公式),所以将本文拆成两半。


【授权转载】融合主题模型和动态路由的小样本学习方法 [上]的评论 (共 条)

分享到微博请遵守国家法律