Page 181 - 《软件学报》2021年第9期
P. 181
杨博 等:一种协同过滤式零次学习方法 2805
3.1 视觉特征抽取
零次学习主要面向零次图像分类任务,模型输入通常为未处理的原始图片.本文采用广泛应用于计算机视
觉领域中的深度卷积神经网络,将图像转换为模型可识别数据,提取图片中各目标的有效视觉特征.通过将各卷
积层、激活层、池化层组合在一起,图像特征不断被提取和压缩,最终每张图片表示为一个 d 维视觉特征向量,
所有图像的视觉特征向量构成视觉特征矩阵 P,P∈ N*d ,N 为训练集样本总量(这里不区分传统零次学习和广义
零次学习).
3.2 语义知识表示
能否为类别学得准确的特征表示,使潜在的语义特征矩阵能够表达更多信息,是影响协同过滤效果的重要
模块.为了挖掘已知类别与新类别之间的语义关联,实现知识迁移,本文通过构建语义图的方式建立类间关联.
语义图定义为 G=〈H,A〉,图中节点由已知类别和新类别共同构成,H 表示节点特征矩阵,每个节点 h i 的初始表示
为类别语义知识(本文选用类别属性特征),即 h = i 0 c ∈ i S ∪ U .A 表示图的邻接矩阵,a ij 表示第 i 个类别与第 j 个类
别的语义关系,构造过程如下:
首先计算两两节点间的语义距离 d ij ,在这里,选择欧氏距离进行计算:
m
d , i j = d (,h h = i 0 0 j ) d ( , )c c = i j (c − 1 i c 1 j ) + 2 (c − 2 i c 2 j ) + 2 ... (c+ n i − c n j ) = 2 (c − ∑ k i c k j ) 2 (1)
k = 1
,
其中, cc 分别表示两个节点各维度的语义特征,m 为语义知识维度.计算得到 d ij 之后,应用转换函数κ(⋅)将此
k i k j
距离关系转化为语义关联,见公式(2):
a i,j =κ(d i,j )=exp(−d i,j /ε) (2)
其中,ε表示转换系数,是一个大于 1 的正数.两个节点的初始语义特征越相近,则其计算出的语义距离越小,那么
语义关联越大;反之,不相似的节点之间的语义关联较小.不难发现:邻接矩阵 A 的对角线位置值均为 1,表示每个
类别与自己本身的关联最大;其余位置值均在 0-1 之间,表示两个类别的语义关联系数.
语义图构建完毕后,本文选用图神经网络进行图上节点的表示学习.在图卷积过程中,每个节点在特征表示
的更新过程中会受到相关性较大的邻域节点的影响,相似节点的特征表示趋于相似,不相似节点的特征表示的
差异更大.图 2 语义知识表示模块中的虚线表示相似节点的特征表示趋于相似这一过程.由于图上的消息传递
机制在所有节点对中共享,语义图中同时包含已知类别与新类别,所以通过已知类别样本训练好的传递机制可
直接泛化至新类别,从而为新类别学得合适的特征表示.图的具体更新过程如下:首先,在训练之前随机初始化
所有可学习参数 W 和 b,A 为上述过程计算出来的语义关系矩阵(图邻接矩阵).在每次迭代中,每个节点 i 压缩并
整合来自其邻域节点传递的信息,在此过程中,邻接矩阵数值越大,越会促进此位置节点向节点 i 的消息传递.然
后,使用整合后的信息与节点 i 上一次迭代后的特征表示共同对节点 i 的表示进行更新.具体更新公式如下:
⎛ ⎞
ˆ
( )l
h i (l+ 1) = σ ⎜ ⎜ Ah W ( )l + b ⎟ ∑ ( )l ⎟ (3)
j
⎝ jN∈ i ⎠
1 − 1
−
A = ˆ D 2 (A I+ )D 2 (4)
0
其中: h 表示节点特征, h = c ;W 和 b 表示图卷积神经网络中的可学习参数矩阵;N i 表示节点 i 的邻居节点集合;
l
i
i
i
ˆ
A 表示经标准化处理后的对称邻接矩阵;I 为单位矩阵;D 为图的度矩阵, D − 1 2 起归一化作用.模型趋于使用相似
度更高的邻居信息来对当前节点的表示进行更新.使用图卷积神经网络 g(⋅)多层迭代消息传递过程,最终为每
d
0
个节点 i 学得合适的语义特征表示 (), ( )gh i 0 gh ∈ ,最终所有节点的语义特征构成语义特征矩阵 Q.
i
3.3 协同过滤式零次学习
在推荐任务中,使用“用户-物品评分矩阵”描述用户对物品的偏好信息,由于用户只会与其中一小部分物品
产生交互,故评分矩阵中会存在很多空白.这些空白的存在导致很难对矩阵进行分析,所以在分析之前,一般需