[0042] 为了进一步理解本发明,下面结合具体实施方式对本发明提供的一种基于双层胶囊网络的短视频点击率预测方法进行具体描述,但本发明并不限于此,该领域技术人员在本发明核心指导思想下做出的非本质改进和调整,仍然属于本发明的保护范围。
[0043] 短视频点击率预测任务是建立一个模型去预测用户点击短视频的概率。用户的历史序列表示为 其中p∈{+,‑}分别代表点击和未点击行为,xj代表第j个短视频,l是序列的长度。整个序列可以进一步细分为点击序列 和未点击序列也就是正反馈和负反馈信息。因此,短视频点击率预测问题可以表示成:输入用户点击序列 未点击的序列 以及目标短视频xnew,来预测用户对目标短视频xnew的点击率。
[0044] 为此,本发明提出了一种基于双层胶囊网络的短视频点击率预测方法。它根据用户对短视频的正反馈和负反馈信息,挖掘出用户对短视频不同模块的情感,预测用户对目标短视频的点击率。这里的正反馈是指用户点击了短视频;负反馈是指平台展示了短视频的封面,但是用户没有点击短视频,说明用户对短视频没有兴趣。本方法认为用户对短视频的不同模块有不同的情感,且用户正反馈和负反馈序列中都同时存在正面情感和负面情感,但是在用户正反馈序列中正面情感占主要部分,用户负反馈序列中负面情感占主要部分。所以预测用户对目标短视频的点击率,应该分析用户正反馈和负反馈序列中对短视频不同模块的偏好。
[0045] 本方法主要由四个部分组成,如图2所示。第一个部分是利用第一层胶囊网络从用户正反馈和负反馈信息中抽取模块特征。第二个部分是将两种模块特征和目标短视频进行一一配对,组合成逻辑单元(logit unit)。第三个部分是利用第二层胶囊网络从逻辑单元中抽取用户对短视频的不同模块的情感。第四个部分是基于用户对当前短视频的情感特征,进行短视频点击率的预测。
[0046] 如图1所示,按照本发明的一个实施例,本方法包括如下步骤:
[0047] S100,分别从用户点击序列和未点击序列抽取模块属性特征。对于一个用户的点击行为序列 可以表示为 而对于一个用户的未点击序列 可以表示为其中 分别是用户点击了和未点击了的短视频封面图特征向
量,d是特征向量长度。本方法从点击序列和未点击序列中抽取相同模块的特征,因此点击序列和未点击序列的胶囊网络中的转换矩阵相同。以下公式为了表达方便,使用p来代替{+,‑}。用户点击序列和未点击序列中的模块属性特征 为:
[0048]
[0049]
[0050] 其中, 是用户正反馈或负反馈序列中短视频特征向量,Wi是用户序列到模块胶囊i的转换矩阵,点击序列和未点击序列的转换矩阵相同,模块胶囊的个数是M,本方法M设置为5。g是胶囊网络中常用的squash激活函数。 是连接系数,代表 的权重, 参数采用动态路由算法更新:
[0051]
[0052]
[0053] 其中, 是输入胶囊j到输出胶囊i的连接系数且初始化为0。相比于原来的动态路由更新算法,本方法更改了动态路由算法的归一化方式,使之更适合本法中的聚类场景。
[0054] S200,将用户从点击序列和未点击序列中抽取的模块属性特征和目标短视频进行匹配,生成逻辑单元:new
[0055] 其中, 是用户模块属性特征,x 为目标短视频特征, 为向量拼接操作。
[0056] S300,根据从用户正反馈和负反馈序列中抽取出的逻辑单元,生成用户的正面情感和负面情感。本方法认为,用户正反馈和负反馈中都同时存在正面情感和负面情感,但是在用户正反馈序列中正面情感占主要部分,用户负反馈序列中负面情感占主要部分。所以本方法改进胶囊网络,从正反馈和负反馈序列中抽取出的逻辑单元中抽取情感特征:
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[0063] 其中, 是从点击序列和未点击序列中抽取的逻辑单元。 是正反馈序列的第i个激活单元到正面情感胶囊pos的转换矩阵, 是正反馈序列的第i个激活单元到负面情感胶囊neg的转换矩阵, 是负反馈序列的第i个激活单元到正面情感胶囊pos的转换矩阵, 是负反馈序列的第i个激活单元到负面情感胶囊neg的转换矩阵。从公式中可以看出,正反馈序列和负反馈序列都对正面情感产生影响,具体正面情感受正负反馈的影响程度由超参数α决定且α<0.5,本方法中α设置为0.4。
同样,负面情感受正负反馈的影响程度也由超参数α决定。正面情感胶囊spos通过 和的加权和得到,同样负面情感胶囊sneg通过 和 的加权和得到。这里的g是胶囊网络中常用的squash激活函数。 是连接系数,代表 的权重, 参数采用动态路由算法更新,其中p∈{+,‑},k∈{pos,neg}:
[0064]
[0065]
[0066]
[0067]
[0068] 其中,p∈{+,‑}, 表示和p相反。例如,如果p=‑,那么 且k∈{pos,neg}。是输入胶囊i到输出胶k的连接系数且初始化为0。本方法认为从正反馈和负反馈中抽取的相同模态的逻辑单元,不太可能同时出现强烈的正面情感或负面情感的情况。所以增加去修正原来的归一化方式。
[0069] S400,根据用户正面和负面情感,预测用户对目标短视频的点击率。给定情感胶囊sk,计算用户点击目标短视频的概率为:
[0070]
[0071]
[0072] 其中,k∈{pos,neg}, 和 是转移矩阵, 是偏置向量,bk,2是偏置标量。σ是sigmoid激活函数,||sk||是向量的长度,代表情感的置信度。
[0073] S500,根据模型特性,设计损失函数。通过用户对目标短视频的点击率预测值 计算预测值 和真实值y之间的误差,进而使用误差来更新模型参数。我们采用交叉熵损失函数(cross‑entropy loss)来指导模型参数的更新过程:
[0074]
[0075] 其中,y∈{0,1}是真实值,代表用户是否点击了目标短视频。σ是sigmoid函数。最后采用Adam优化器更新模型参数。
[0076] 上述对实施例的描述是为方便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。