CN113255844B - 基于图卷积神经网络交互的推荐方法及系统 - Google Patents

基于图卷积神经网络交互的推荐方法及系统 Download PDF

Info

Publication number
CN113255844B
CN113255844B CN202110761639.1A CN202110761639A CN113255844B CN 113255844 B CN113255844 B CN 113255844B CN 202110761639 A CN202110761639 A CN 202110761639A CN 113255844 B CN113255844 B CN 113255844B
Authority
CN
China
Prior art keywords
graph
feature
click rate
neural network
convolution neural
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110761639.1A
Other languages
English (en)
Other versions
CN113255844A (zh
Inventor
李传珍
张洋
蔡娟娟
肖晗
王晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Communication University of China
Original Assignee
Communication University of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Communication University of China filed Critical Communication University of China
Priority to CN202110761639.1A priority Critical patent/CN113255844B/zh
Publication of CN113255844A publication Critical patent/CN113255844A/zh
Application granted granted Critical
Publication of CN113255844B publication Critical patent/CN113255844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies

Abstract

本发明公开一种基于图卷积神经网络交互的推荐方法及系统,方法包括:构建点击率预估模型,点击率预估模型包括图卷积神经网络和输出层,图卷积神经网络包含多个图卷积层,将各特征域上的特征作为节点,通过各节点间相互连接的连接边构成无向图输入到图卷积神经网络中,图卷积神经网络输出各特征交互向量,将各特征交互向量拼接起来输入到输出层,输出点击率预估值,反复优化,直至获得最优点击率预估模型;利用最优点击率预估模型输出点击率预估值,并根据点击率预估结果对候选集排序,输出推荐列表。本发明通过引入图卷积神经网络,解决点击率预估领域的高阶特征交互问题,并以图的方式展示特征交叉的方式,提高推荐结果的可解释性。

Description

基于图卷积神经网络交互的推荐方法及系统
技术领域
本发明涉及推荐技术领域,具体地说,涉及一种基于图卷积神经网络交互的推荐方法及系统。
背景技术
随着互联网的发展,信息大爆炸时代的到来,人们完成了从信息匮乏到信息过载的过渡。个性化推荐系统的出现缓解了信息过载的压力,帮助用户从海量的数据中获得真正对自身有帮助的信息。点击率预估模型,最开始只应用于计算广告领域,如今在推荐领域也得到了广泛应用,特别是在推荐系统的排序部分,通过点击率预估模型,计算召回数据的点击率,根据点击率大小对数据进行排序之后,将排序后的结果推荐给用户。
近年来CTR(点击率)预估成为工业界和学术界研究的热点,早期的CTR预估任务多采用LR(逻辑回归)线性模型,LR模型在大规模系统中表现出实现简单和高性能的特性,使之成为工业界最广泛的CTR预估模型。但是LR模型的缺点也很明显,一是由于输入特征是高维稀疏向量,大部分的特征都为0,这样就会导致模型参数学习不准确,影响预测的准确性;二是LR 需要进行人工特征组合,这就需要开发者有非常丰富的领域经验,这样的模型迁移起来比较困难且模型学习能力有限,不能捕获高阶特征(非线性信息)。除此之外,Facebook的研究人员还提出了另一种筛选特征和特征组合的方式,称为GBDT+LR方案,其基本思想是GBDT(梯度提升树)来帮助筛选有区分度的特征和特征组合,并将其作为LR模型的输入,从而增强LR的非线性学习能力。
针对LR模型存在的问题,Oentaryo等人提出了基于FM(因子分解机)的CTR预估模型,该模型不仅考虑了单个特征携带的信息,而且考虑了二阶组合特征(Featuresinteractions)携带的信息,在FM中每个特征用一个D维隐含向量表示,将One-hot编码后的高维稀疏向量转化成一个低维稠密连续向量,二阶特征组合用两个隐含向量的点积表示,FM的出现解决了LR模型因为数据稀疏而导致的参数学习不充分的缺点。FM也存在缺陷,FM的缺陷在于每个特征都只学习一个唯一的隐含向量,在与其他不同特征进行组合时,同一个特征产生的影响力都是相同的;而事实上,当与不同特征域的特征组合时,可能表现出不同的隐含特征分布。Yitao等人在FM模型的基础上引入了特征域(Field)的概念,提出了FFM(Field-aware Factorization Machine,面向特征域的因子分解机)模型。其基本思想是将特征分割为若干领域,每个特征将针对不同的特征域学习不同的隐含向量。FM、FFM都是在LR基础上增加对二阶特征组合的权重自动学习的模型。
综上,LR、FM、FFM被称为基于浅层模型的CTR预估方案,其优点是模型简单、预测性能较好、可解释性强;缺点主要在于很难自动提取高阶组合特征携带的信息。随着深度学习的发展,其探索特征间高阶隐含信息的能力也被应用到CTR预估问题中。早期具有影响力的基于深度学习的CTR预估模型是Zhang等人在2016年提出的基于因子分解机的神经网络模型,其特点是通过FM模型预先训练得到每个特征的稠密嵌入向量(Dense Vector),拼接以后直接输入到DNN(深度神经网络),从而获得高阶特征交互。之后提出的DeepFM、DCN、Wide&Deep、PNN、NFM、AFM也都是基于相同的思想,将类FM的模型通过串行结构或者并行结构的方式与DNN结合,进行高阶特征和低阶特征的分别建模,提高点击率预估的准确性。
然而,在点击率预估问题中,特征通常是高维稀疏的,并且预测的准确性很大程度上依赖于高阶特征组合。因此,在点击率预估领域,人们一直在努力寻找稀疏高维原始特征的低维表示及其有意义的组合,节约人工特征工程时间成本的同时提高模型的准确性。
发明内容
为解决以上问题,本发明提供一种基于图卷积神经网络交互的推荐方法,包括以下步骤:
将数据库划分为训练集、验证集、测试集,所述训练集、验证集、测试集都包括分类型特征和连续型特征;
构建点击率预估模型,所述点击率预估模型包括依次连接的图卷积神经网络和输出层,所述图卷积神经网络包含多个依次连接的图卷积层,将训练集的各个特征作为节点,通过各节点之间相互连接的连接边构成无向图输入到图卷积神经网络中,图卷积神经网络输出各个特征对应的特征交互向量,将各个特征交互向量拼接起来输入到输出层,输出层输出点击率预估值,通过优化器优化损失函数,直至迭代收敛,并通过验证集验证以调整超参数,反复优化,直至获得经过测试集测试合格的最优点击率预估模型;
利用所述最优点击率预估模型对候选集输出点击率预估值,并根据点击率预估结果对候选集排序,从而输出推荐列表。
可选地,所述将数据库划分为训练集、验证集、测试集之前,先对数据进行预处理,所述预处理包括用嵌入方法将分类型特征按照不同特征域映射到低维空间,分别形成低维特征向量,将连续型特征进行标准化处理。可选地,图卷积神经网络的每一个图卷积层的传播方式如公式1所示:
Figure 965313DEST_PATH_IMAGE001
(1)
Figure 413612DEST_PATH_IMAGE002
(2)
其中,
Figure 724508DEST_PATH_IMAGE003
Figure 385296DEST_PATH_IMAGE004
是无向图的邻接矩阵;
𝑤是连接边的权重;
Figure 465248DEST_PATH_IMAGE005
是一个单位矩阵,是无向图的自连接矩阵;
Figure 553289DEST_PATH_IMAGE006
Figure 600749DEST_PATH_IMAGE007
的度矩阵,即
Figure 65228DEST_PATH_IMAGE008
Figure 999686DEST_PATH_IMAGE009
是第T个图卷积层的激活单元矩阵,
Figure 258629DEST_PATH_IMAGE010
Figure 544117DEST_PATH_IMAGE011
E是各分类型特征转化的低维特征向量构成的矩阵;
Figure 546708DEST_PATH_IMAGE012
是每一层的参数矩阵;
Figure 351984DEST_PATH_IMAGE013
是非线性激活函数。
可选地,所述将数据库划分为训练集、验证集、测试集之前,对于数据库中任一特征缺失的值,采用均值插补、利用同类均值插补、极大似然估计中的任一种方式填充。
可选地,采用自适应矩估计的优化方式优化损失函数。
可选地,在每个图卷积层之后都具有Dropout层,所述Dropout层将上一图卷积层的输出以部分随机抛弃的方式输入到下一图卷积层。
可选地,所述输出层是sigmoid 函数。
可选地,生成所述最优点击率预估模型后,还将所述点击率预估模型保存成调用的接口,推荐系统通过所述接口调用所述最优点击率预估模型,实现基于IPTV(交互式网络电视)点播节目的推荐系统。
本发明还提供一种基于图卷积神经网络交互的推荐系统,包括:
数据处理模块,用于将数据库划分为训练集、验证集、测试集,所述训练集、验证集、测试集都包括分类型特征和连续型特征;
模型训练模块,用于构建点击率预估模型,所述点击率预估模型包括依次连接的图卷积神经网络和sigmoid 函数,所述图卷积神经网络包含多个依次连接的图卷积层,将训练集的各个特征作为节点,通过各节点之间相互连接的连接边构成无向图输入到图卷积神经网络中,图卷积神经网络输出特征交互向量,将经过图卷积神经网络输出的特征交互向量拼接起来,输入sigmoid函数,sigmoid函数输出点击率预估值,通过优化器优化损失函数,直至迭代收敛,并通过验证集验证以调整超参数,反复优化,直至获得经过测试集测试合格,则获得最优点击率预估模型;
推荐展示模块,用于利用所述最优点击率预估模型对候选集输出点击率预估值,并根据点击率预估结果对候选集排序,从而输出推荐列表。
本发明还提供一种基于图卷积神经网络交互的推荐系统,数据处理模块还用于在对将数据库划分为训练集、验证集、测试集之前,先对数据进行预处理,所述预处理包括用嵌入方法将分类型特征按照不同特征域映射到低维空间,分别形成低维特征向量,将连续型特征进行标准化处理。
本发明基于图卷积神经网络设计并实现了点击率预估模型,并应用在推荐系统对候选集的排序部分。在低阶特征交互的基础上,通过引入图卷积神经网络,解决了点击率预估领域的高阶特征交互问题,并且以图的方式展示特征交叉的方式,提高了推荐结果的可解释性。
并且本发明还利用点击率预估模型,基于Django框架实现了一个IPTV个性化推荐系统,可以根据点击率预估值为IPTV的用户推荐更接近用户需求的节目。
附图说明
通过结合下面附图对其实施例进行描述,本发明的上述特征和技术优点将会变得更加清楚和容易理解。
图1是表示本发明实施例的基于图卷积神经网络交互的推荐方法的流程示意图;
图2是表示本发明实施例的点击率预估模型的结构示意图;
图3是表示本发明实施例的基于图卷积神经网络交互的推荐系统的示意图。
具体实施方式
下面将参考附图来描述本发明所述的实施例。本领域的普通技术人员可以认识到,在不偏离本发明的精神和范围的情况下,可以用各种不同的方式或其组合对所描述的实施例进行修正。因此,附图和描述在本质上是说明性的,而不是用于限制权利要求的保护范围。此外,在本说明书中,附图未按比例画出,并且相同的附图标记表示相同的部分。
如图1所示,基于GCN-int(Graph Convolutional Network Interactions--图卷积神经网络交互)的推荐方法包括以下步骤:
步骤S10,将IPTV数据库中的数据进行预处理,数据库中的数据包括分类型特征和连续型特征。所述预处理包括使用Embedding(嵌入)方法将分类型特征按照不同特征域映射到低维空间,形成低维特征向量,将连续型特征进行标准化,并将所述低维特征向量和标准化连续型特征划分数据集,一部分划分为训练集,一部分划分为测试集,一部分划分为验证集。
具体的,点击率预估处理的问题其实是多类别特征的预测问题,在该类问题中常见的特征类型主要是两种:一种是连续性的数值型特征(即连续型特征);另外一种是离散型的分类型特征。分类型特征,例如性别、国籍等;数值型特征,例如年龄、尺寸等。对于连续型特征,可以经过标准化后直接输入到后续的点击率预估模型中,但是分类型特征则需要进行处理,才能输入到模型中进行计算。如图2所示,假设有这样一组数据:
x={工作日:周三;性别:男性;城市:上海;国家:中国}
其中,工作日、性别、城市、国家是特征域,针对该特征域的表述为特征,例如特征域“城市”的特征是上海。假设数据库中“城市”和“国家”这两个特征域分别只有三个取值,上述数据x可以用 One-hot 编码表示为:
𝑥 = [0010000 10 100 001]
对于分类型特征,经过 One-hot 编码之后,数据就会变得很稀疏,上文只是举例有 4 个特征域的数据,在工业界,商品或者电影的特征域可能成千上万个,针对每个特征域的特征也是成千上万个,这样就会导致输入数据是一个高维、多领域、稀疏的向量。这样的数据直接输入到模型中,不仅会造成计算资源的浪费,也会导致参数学习不充分,降低模型的准确率。通过对不同特征域的特征分别进行Embedding,将高维稀疏的向量,降维成低维稠密的特征,具体表达式如下:
Figure 312987DEST_PATH_IMAGE014
其中E是降维后得到的低维特征向量构成的矩阵,
Figure 820191DEST_PATH_IMAGE015
是一个D维的向量,它用来表示第i个特征域的特征低维化向量,m表示一共有多少个特征域。通过特征域降维化的方式,将之前高维稀疏的向量,转换为低维稠密的向量。如图2所示,是以4个特征域为例的示意,特征域1经过field embedding layer(特征域嵌入层)转换为e1向量,特征域2经过特征域嵌入层转换为e2向量。
步骤S20,将训练集的数据输入到点击率预估模型中,所述点击率预估模型包括依次连接的GCN网络和输出层,将各个低维特征向量以及连续型特征作为节点,通过各节点之间相互连接的连接边构成无向图输入到GCN网络(图卷积神经网络)中,所述GCN网络包含多个图卷积层,每个图卷积层只处理当前节点的一阶邻域信息。所述一阶邻域是指在图神经网络中,如果节点A和节点B是通过一条连接边直接相连的,那么节点A就是节点B的一阶邻域。
通过叠加若干个图卷积层实现多阶邻域的信息传递,也就实现对各节点的特征进行交互,GCN网络输出各节点对应的特征交互向量。将经过GCN网络输出的特征交互向量拼接起来,输入到输出层,输出层可以采用sigmoid函数,从而输出点击率预估值。通过优化器优化损失函数,直至迭代收敛,并通过验证集验证以调整超参数,反复优化,则获得最优点击率预估模型。
具体的,特征交互向量整合成为一个𝑚×𝐷维的向量,其中m是特征域个数,D是特征交互向量的大小。并输入到sigmoid函数,可以得到在[0,1]之间的数值,即点击率预估值,表示用户点击的可能性。数值越大,表示点击的可能性越大,数值越小,表示点击的可能性越小。
其中,图卷积神经网络的每一个图卷积层的传播方式如公式1所示:
Figure 360894DEST_PATH_IMAGE001
(1)
Figure 269944DEST_PATH_IMAGE016
(2)
其中,
Figure 400185DEST_PATH_IMAGE003
Figure 394686DEST_PATH_IMAGE004
是无向图的邻接矩阵,如公式2所示,其中𝑤是连接边的权重,
Figure 739080DEST_PATH_IMAGE017
是一个单位矩阵,是无向图的自连接矩阵,
Figure 502636DEST_PATH_IMAGE018
矩阵即是在
Figure 539863DEST_PATH_IMAGE004
邻接矩阵的基础上,加上一个单位矩阵
Figure 21659DEST_PATH_IMAGE017
,防止由于
Figure 169744DEST_PATH_IMAGE004
的对角线上都是0,而导致在计算过程中忽略当前节点本身的特征;
Figure 538540DEST_PATH_IMAGE019
表示矩阵中第i行;
Figure 746667DEST_PATH_IMAGE020
表示矩阵中第j列;
Figure 450181DEST_PATH_IMAGE021
Figure 401956DEST_PATH_IMAGE018
的度矩阵,即
Figure 140105DEST_PATH_IMAGE022
Figure 519134DEST_PATH_IMAGE009
是第T个图卷积层的激活单元矩阵,
Figure 709944DEST_PATH_IMAGE010
Figure 449099DEST_PATH_IMAGE011
,E是各分类型特征转化的低维特征向量构成的矩阵;
Figure 776175DEST_PATH_IMAGE023
是每一层的参数矩阵;
Figure 591684DEST_PATH_IMAGE013
是非线性激活函数。
经过特征交互后的每个特征域的低维特征向量,都聚合了其邻居节点的状态信息,从而实现了特征交互的目的。
如图2所示,4个低维特征向量e1、e2、e3、e4,输入到图卷积神经网络中,包含T个图卷积层,从左至右为T个图卷积层。在图2中,低维特征向量是e1、e2、e3、e4,包含T个图卷积层,第一个图卷积层H1,4个低维特征向量e1、e2、e3、e4通过连接边形成无向图后依次输入到从左至右的T个图卷积层中,
Figure 269790DEST_PATH_IMAGE024
表示e1向量在第一个图卷积层的表示,
Figure 828947DEST_PATH_IMAGE025
表示e2向量在第一个图卷积层的表示,
Figure 292421DEST_PATH_IMAGE026
表示e3向量在第一个图卷积层的表示,
Figure 747673DEST_PATH_IMAGE027
表示e4向量在第一个图卷积层的表示。
表示经过一阶特征交互后,特征域1的向量在第二个图卷积层的表示,表示经过一阶特征交互后,特征域2的向量在第二个图卷积层的表示,
Figure 913075DEST_PATH_IMAGE028
表示经过一阶特征交互后,特征域3的向量在第二个图卷积层的表示。
Figure 744765DEST_PATH_IMAGE029
表示经过一阶特征交互后,特征域4的向量在第二个图卷积层的表示。
Figure 312012DEST_PATH_IMAGE030
表示经过T阶特征交互后,特征域1的向量在第T个图卷积层的表示,
Figure 203745DEST_PATH_IMAGE031
表示经过T阶特征交互后,特征域2的向量在第T个图卷积层的表示,
Figure 856443DEST_PATH_IMAGE032
表示经过T阶特征交互后,特征域3的向量在第T个图卷积层的表示,
Figure 744021DEST_PATH_IMAGE033
表示经过T阶特征交互后,特征域4的向量在第T个图卷积层的表示。
并且优选地,还采用Adam(自适应矩估计)优化的方式,相比较于传统的梯度下降方式,Adam 很适合应用于大规模的数据及参数的场景,能够自动调整学习率、实现简单、计算高效且对内存的需求较少。由于数据量较大,训练数据送入模型的时候可以按照每个文件,分批次送入模型训练。
并且优选地,在训练的过程中,为了防止过拟合的发生,在每个图卷积层之后都定义了Dropout层,即每个更新周期中有部分输入将被随机排除。并且防止由于深层网络层数增加而带来的网络退化问题,GCN-int网络模型中还引入了残差网络,保证深度网络至少与浅层网络有着相同的拟合能力。所述残差网络用以将上一图卷积层的输出与该图卷积层的输出组合相加输入到下一图卷积层中。
如图2所示,将One-Hot编码后的类特征通过特征域嵌入层转化到低维稠密空间,形成低维稠密的向量后,将每个特征域的特征理解为GCN网络中的一个节点,因此每个特征之间的交互,就可以理解为图2中每个节点的交互,从这个角度来看,使用 GCN 进行特征交互增强了特征交互的可解释性,相比较于DNN 这种“黑盒”,利用GCN网络可以看到哪些特征进行了交互。
进一步地,定义邻接矩阵A为一个除了主对角线,都为 1 的矩阵,即在公式2中,
Figure 900196DEST_PATH_IMAGE034
的取值为 1,之所以取值为 1,是因为在不确定哪些特征进行交互会提高预测的准确率的情况下,将所有的特征都进行交互,交互的深度由GCN网络的图卷积层数来决定。经过特征交互后的每个特征域的低维特征向量,都聚合了其邻居节点的状态信息,从而实现了特征交互的目的。
在点击率预估问题中,样本特征类型大部分是多类别(Field)的分类型特征,该类特征并不具备空间或者时间上的连续性,为非欧式空间的数据。对于这类无结构的特征进行特征交互和特征提取是有困难的。如何科学有效地进行特征组合,节约人工特征工程成本的同时,提高模型预测的准确性是技术难点。图卷积神经网络可以对非欧式空间的数据进行建模,通过传播方式学习图结构中每个节点的内部依赖关系,经过若干层图卷积层的叠加,实现多阶邻域的信息传递。
本发明结合图卷积神经网络的特点,利用图卷积神经网络的方式进行特征交互。相较于现有技术中简单的将低维特征向量拼接起来进行特征交互,本发明将各个低维特征向量表示为一个无向图结构,利用GCN进行特征交互,解决了点击率预估领域的高阶特征交互问题,并且以图的方式展示特征交叉的方式,提高了推荐结果的可解释性。
步骤S30,利用所述最优点击率预估模型对候选集输出点击率预估值,并根据点击率预估结果对候选集排序,从而输出推荐列表。所述候选集是通过粗选的方式生成的集合,例如根据用户的历史行为数据,为用户在海量的信息中粗选一批待推荐的内容,形成的候选集。
进一步地,在生成所述点击率预估模型后,利用所述点击率预估模型输出点击率预估值之前,先将所述点击率预估模型保存成可以调用的接口,然后基于Django框架开发一个推荐系统示例。Django框架是一个开放源代码的Web应用框架。该推荐系统示例将点击率预估模型作为 Web 网站后端实现推荐的主要算法,通过调用接口来调用点击率预估模型,从而实现一个基于IPTV点播节目的推荐系统,完成可视化。
进一步地,还进行算法评测,将所述点击率预估模型与基线模型进行对比,从而确定所述点击率预估模型的算法性能。
进一步地,由于在数据采集过程中可能由于网络延迟等因素,导致数据不完整,存在缺失的情况。所述缺失值处理方法可以是均值插补、利用同类均值插补、极大似然估计中的任一种,例如均值插补的方法是:如果缺失值是连续性特征,就以该字段存在值的平均值来插补缺失的值;如果缺失值是分类型特征,就根据统计学中的众数原理,用该属性的众数,即出现频率最高的值来补齐缺失的值。
本发明还提供一种基于图卷积神经网络交互的推荐系统100,包括数据处理模块101、模型训练模块102、算法评测模块103、推荐展示模块104,其系统框图如图3所示。
其中,数据处理模块101用于获得数据集,例如包含IPTV数据的数据集。将IPTV数据库中的数据进行预处理,数据库中的数据包括分类型特征和连续型特征。所述预处理包括将分类型特征按照不同特征域进行Embedding(嵌入)到低维空间,形成低维特征向量,将连续型特征进行标准化,并将所述低维特征向量和标准化连续型特征划分数据集,一部分划分为训练集,一部分划分为测试集,一部分划分为验证集。
具体的,点击率预估处理的问题其实是多类别特征的预测问题,在该类问题中常见的特征类型主要是两种:一种是连续性的数值型特征(即连续型特征);另外一种是离散型的分类型特征。分类型特征,例如性别、国籍等;数值型特征,例如年龄、尺寸等。对于连续型特征,可以经过标准化后直接输入到后续的点击率预估模型中,但是分类型特征则需要进行处理,才能输入到模型中进行计算。如图2所示,假设有这样一组数据:
x={工作日:周三;性别:男性;城市:上海;国家:中国}
其中,工作日、性别、城市、是特征域,针对该特征域的表述为特征,例如特征域“城市”的特征是上海。假设数据库中“城市”和“国家”这两个特征域分别只有三个取值,上述数据x可以用 One-hot 编码表示为:
𝑥 = [0010000 10 100 001]
对于分类型特征,经过 One-hot 编码之后,数据就会变得很稀疏,上文只是举例有 4 个特征域的数据,在工业界,商品或者电影的特征域可能成千上万个,针对每个特征域的特征也是成千上万个,这样就会导致输入数据是一个高维、多领域(Multi-Field)、稀疏的向量。这样的数据直接输入到模型中,不仅会造成计算资源的浪费,也会导致参数学习不充分,降低模型的准确率。通过对不同特征域的特征分别进行 Embedding,将高维稀疏的向量,降维成低维稠密的特征,具体表达式如下:
Figure 228409DEST_PATH_IMAGE035
其中E是降维后的低维特征向量构成的矩阵,
Figure 102824DEST_PATH_IMAGE015
是一个D维的向量,它用来表示第i个特征域的特征低维化向量,m 表示一共有多少个特征域。通过特征域降维化的方式,将之前高维稀疏的向量,转换为低维稠密的向量。如图2所示,是以4个特征域为例的示意,特征域1经过field embedding layer(特征域嵌入层)转换为e1向量,特征域2经过特征域嵌入层转换为e2向量。
其中,模型训练模块102用于建立点击率预估模型,所述点击率预估模型包括依次连接的GCN网络和输出层,将训练集的数据输入到点击率预估模型中,点击率预估模型将各个低维特征向量以及连续型特征作为节点,通过各节点之间相互连接的连接边构成无向图输入到GCN网络(图卷积神经网络)中,所述GCN网络包含多个图卷积层,每个图卷积层只处理当前节点的一阶邻域信息。所述一阶邻域是指在图卷积神经网络中,如果节点 A和节点B是通过一条连接边直接相连的,那么节点A就是节点B的一阶邻域。
通过叠加若干个图卷积层实现多阶邻域的信息传递,也就实现对各节点的特征进行交互,GCN网络输出各节点对应的特征交互向量。将经过 GCN网络输出的特征交互向量拼接起来,输入到输出层,输出层可以采用sigmoid 函数,从而输出点击率预估值。通过优化器优化损失函数,直至迭代收敛,并通过验证集验证以调整超参数,反复优化,则获得最优点击率预估模型。
具体的,特征交互向量整合成为一个𝑚×𝐷维的向量,其中m是Field个数,D是特征交互向量的大小。并输入到sigmoid 函数,可以得到在[0,1]之间的数值,即点击率预估值,表示用户点击的可能性。数值越大,表示点击的可能性越大,数值越小,表示点击的可能性越小。
其中,图卷积神经网络的每一个图卷积层的传播方式如公式1所示:
Figure 541896DEST_PATH_IMAGE001
(1)
Figure 818156DEST_PATH_IMAGE036
(2)
其中,
Figure 51692DEST_PATH_IMAGE003
Figure 429715DEST_PATH_IMAGE004
是无向图的邻接矩阵,如公式2所示,其中𝑤是连接边的权重,
Figure 406898DEST_PATH_IMAGE017
是一个单位矩阵,是无向图的自连接矩阵;
Figure 537665DEST_PATH_IMAGE021
Figure 942101DEST_PATH_IMAGE018
的度矩阵,即
Figure 791109DEST_PATH_IMAGE022
Figure 306404DEST_PATH_IMAGE009
是第T个图卷积层的激活单元矩阵,
Figure 557256DEST_PATH_IMAGE010
Figure 381862DEST_PATH_IMAGE011
E是各分类型特征转化的低维特征向量构成的矩阵;
Figure 983744DEST_PATH_IMAGE012
是每一层的参数矩阵;
Figure 302730DEST_PATH_IMAGE013
是非线性激活函数。
经过特征交互后的每个Field的Embedding向量,都聚合了其邻居节点的状态信息,从而实现了特征交互的目的。
如图2所示,4个低维特征向量e1、e2、e3、e4,输入到图卷积神经网络中,包含T个图卷积层,从左至右为T个图卷积层。在图2中,低维特征向量是e1、e2、e3、e4,包含T个图卷积层,第一个图卷积层H1,4个低维特征向量e1、e2、e3、e4通过连接边形成无向图后依次输入到从左至右的T个图卷积层中,
Figure 408090DEST_PATH_IMAGE024
表示e1向量在第一个图卷积层的表示,
Figure 154329DEST_PATH_IMAGE025
表示e2向量在第一个图卷积层的表示,
Figure 977928DEST_PATH_IMAGE026
表示e3向量在第一个图卷积层的表示,
Figure 851337DEST_PATH_IMAGE027
表示e4向量在第一个图卷积层的表示。
表示经过一阶特征交互后,特征域1的向量在第二个图卷积层的表示,
Figure 811203DEST_PATH_IMAGE037
表示经过一阶特征交互后,特征域2的向量在第二个图卷积层的表示,
Figure 728344DEST_PATH_IMAGE028
表示经过一阶特征交互后,特征域3的向量在第二个图卷积层的表示。
Figure 39239DEST_PATH_IMAGE029
表示经过一阶特征交互后,特征域4的向量在第二个图卷积层的表示。
Figure 700028DEST_PATH_IMAGE030
表示经过T阶特征交互后,特征域1的向量在第T个图卷积层的表示,
Figure 514400DEST_PATH_IMAGE031
表示经过T阶特征交互后,特征域2的向量在第T个图卷积层的表示,
Figure 868021DEST_PATH_IMAGE032
表示经过T阶特征交互后,特征域3的向量在第T个图卷积层的表示,表示经过T阶特征交互后,特征域4的向量在第T个图卷积层的表示。
并且优选地,还采用Adam(自适应矩估计)优化的方式,相比较于传统的梯度下降方式,Adam 很适合应用于大规模的数据及参数的场景,能够自动调整学习率、实现简单、计算高效且对内存的需求较少。由于数据量较大,训练数据送入模型的时候可以按照每个文件,分批次送入模型训练。
并且优选地,在训练的过程中,为了防止过拟合的发生,在每个图卷积层之后都定义了Dropout层,即每个更新周期中有部分输入将被随机排除。并且防止由于深层网络层数增加而带来的网络退化问题,GCN-int网络模型中还引入了残差网络,保证深度网络至少与浅层网络有着相同的拟合能力。所述残差网络用以将上一图卷积层的输出与该图卷积层的输出组合相加输入到下一图卷积层中。
如图2所示,将One-Hot编码后的类特征通过Embedding层转化到低维稠密空间,形成低维稠密的向量后,将每个特征域的特征理解为GCN网络中的一个节点,因此每个特征之间的交互,就可以理解为图2中每个节点的交互,从这个角度来看,使用 GCN 进行特征交互增强了特征交互的可解释性,相比较于 DNN 这种“黑盒”,利用GCN网络可以看到哪些特征进行了交互。
进一步地,定义邻接矩阵A为一个除了主对角线,都为 1 的矩阵,即在公式2中,
Figure 918410DEST_PATH_IMAGE034
的取值为 1,之所以取值为 1,是因为在不确定哪些特征进行交互会提高预测的准确率的情况下,将所有的特征都进行交互,交互的深度由GCN网络的图卷积层数来决定。经过特征交互后的每个特征域的低维特征向量,都聚合了其邻居节点的状态信息,从而实现了特征交互的目的。
在点击率预估问题中,样本特征类型大部分是多类别(Field)的分类型特征,该类特征并不具备空间或者时间上的连续性,为非欧式空间的数据。对于这类无结构的特征进行特征交互和特征提取是有困难的。如何科学有效地进行特征组合,节约人工特征工程成本的同时,提高模型预测的准确性是技术难点。图卷积神经网络可以对非欧式空间的数据进行建模,通过传播方式学习图结构中每个节点的内部依赖关系,经过若干层图卷积层的叠加,实现多阶邻域的信息传递。
本发明结合图卷积神经网络的特点,利用图卷积神经网络的方式进行特征交互。相较于现有技术中简单的将低维特征向量拼接起来进行特征交互,本发明将各个低维特征向量表示为一个无向图结构,利用GCN进行特征交互,解决了点击率预估领域的高阶特征交互问题,并且以图的方式展示特征交叉的方式,提高了推荐结果的可解释性。
其中,推荐展示模块104用于利用所述最优点击率预估模型对候选集输出点击率预估值,并根据点击率预估结果对候选集排序,从而输出并展示出推荐列表。
进一步地,还包括算法评测模块103,用于进行算法评测,将所述点击率预估模型与基线模型进行对比,从而确定所述点击率预估模型的算法性能。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于图卷积神经网络交互的推荐方法,其特征在于,包括以下步骤:
将数据库划分为训练集、验证集、测试集,所述训练集、验证集、测试集都包括分类型特征和连续型特征;
构建点击率预估模型,所述点击率预估模型包括依次连接的图卷积神经网络和输出层,所述图卷积神经网络包含多个依次连接的图卷积层,每个图卷积层只处理当前节点的一阶邻域信息,将训练集的各个特征作为节点,通过各节点之间相互连接的连接边构成无向图输入到图卷积神经网络中,图卷积神经网络输出各个特征对应的特征交互向量,将各个特征交互向量拼接起来输入到输出层,输出层输出点击率预估值,通过优化器优化损失函数,直至迭代收敛,并通过验证集验证以调整超参数,反复优化,直至获得经过测试集测试合格的最优点击率预估模型;
利用所述最优点击率预估模型对候选集输出点击率预估值,并根据点击率预估结果对候选集排序,从而输出推荐列表,
其中, 在每个图卷积层之后都具有Dropout层,所述Dropout层将上一图卷积层的输出以部分随机抛弃的方式输入到下一图卷积层,通过残差网络用以将上一图卷积层的输出与该图卷积层的输出组合相加输入到下一图卷积层中。
2.根据权利要求1所述的基于图卷积神经网络交互的推荐方法,其特征在于,所述将数据库划分为训练集、验证集、测试集之前,先对数据进行预处理,所述预处理包括用嵌入方法将分类型特征按照不同特征域映射到低维空间,分别形成低维特征向量,将连续型特征进行标准化处理。
3.根据权利要求2所述的基于图卷积神经网络交互的推荐方法,其特征在于,
图卷积神经网络的每一个图卷积层的传播方式如公式1所示:
Figure DEST_PATH_IMAGE001
(1)
Figure 873013DEST_PATH_IMAGE002
(2)
其中,
Figure DEST_PATH_IMAGE003
Figure 711525DEST_PATH_IMAGE004
是无向图的邻接矩阵;
𝑤是连接边的权重;
Figure DEST_PATH_IMAGE005
是一个单位矩阵,是无向图的自连接矩阵;
Figure 960103DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE007
的度矩阵,即
Figure 89733DEST_PATH_IMAGE008
Figure DEST_PATH_IMAGE009
是第T个图卷积层的激活单元矩阵,
Figure 825477DEST_PATH_IMAGE010
Figure DEST_PATH_IMAGE011
E是各分类型特征转化的低维特征向量构成的矩阵;
Figure 116781DEST_PATH_IMAGE012
是每一层的参数矩阵;
Figure DEST_PATH_IMAGE013
是非线性激活函数。
4.根据权利要求1所述的基于图卷积神经网络交互的推荐方法,其特征在于,所述将数据库划分为训练集、验证集、测试集之前,对于数据库中任一特征缺失的值,采用均值插补、利用同类均值插补、极大似然估计中的任一种方式填充。
5.根据权利要求1所述的基于图卷积神经网络交互的推荐方法,其特征在于,
采用自适应矩估计的优化方式优化损失函数。
6.根据权利要求1所述的基于图卷积神经网络交互的推荐方法,其特征在于,
所述输出层是sigmoid 函数。
7.根据权利要求1所述的基于图卷积神经网络交互的推荐方法,其特征在于,生成所述最优点击率预估模型后,还将所述点击率预估模型保存成调用的接口,推荐系统通过所述接口调用所述最优点击率预估模型,实现基于IPTV 点播节目的推荐系统。
8.一种基于图卷积神经网络交互的推荐系统,其特征在于,包括:
数据处理模块,用于将数据库划分为训练集、验证集、测试集,所述训练集、验证集、测试集都包括分类型特征和连续型特征;
模型训练模块,用于构建点击率预估模型,所述点击率预估模型包括依次连接的图卷积神经网络和sigmoid 函数,所述图卷积神经网络包含多个依次连接的图卷积层,每个图卷积层只处理当前节点的一阶邻域信息,将训练集的各个特征作为节点,通过各节点之间相互连接的连接边构成无向图输入到图卷积神经网络中,图卷积神经网络输出特征交互向量,将经过图卷积神经网络输出的特征交互向量拼接起来,输入sigmoid函数,sigmoid函数输出点击率预估值,通过优化器优化损失函数,直至迭代收敛,并通过验证集验证以调整超参数,反复优化,直至获得经过测试集测试合格,则获得最优点击率预估模型,
其中,在每个图卷积层之后都具有Dropout层,所述Dropout层将上一图卷积层的输出以部分随机抛弃的方式输入到下一图卷积层,通过残差网络用以将上一图卷积层的输出与该图卷积层的输出组合相加输入到下一图卷积层中;
推荐展示模块,用于利用所述最优点击率预估模型对候选集输出点击率预估值,并根据点击率预估结果对候选集排序,从而输出推荐列表。
9.根据权利要求8所述的基于图卷积神经网络交互的推荐系统,其特征在于,
数据处理模块还用于在对将数据库划分为训练集、验证集、测试集之前,先对数据进行预处理,所述预处理包括用嵌入方法将分类型特征按照不同特征域映射到低维空间,分别形成低维特征向量,将连续型特征进行标准化处理。
CN202110761639.1A 2021-07-06 2021-07-06 基于图卷积神经网络交互的推荐方法及系统 Active CN113255844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110761639.1A CN113255844B (zh) 2021-07-06 2021-07-06 基于图卷积神经网络交互的推荐方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110761639.1A CN113255844B (zh) 2021-07-06 2021-07-06 基于图卷积神经网络交互的推荐方法及系统

Publications (2)

Publication Number Publication Date
CN113255844A CN113255844A (zh) 2021-08-13
CN113255844B true CN113255844B (zh) 2021-12-10

Family

ID=77190802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110761639.1A Active CN113255844B (zh) 2021-07-06 2021-07-06 基于图卷积神经网络交互的推荐方法及系统

Country Status (1)

Country Link
CN (1) CN113255844B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113793175A (zh) * 2021-09-07 2021-12-14 广东工业大学 基于双线性ffm和多头注意力机制的广告点击率预估方法
CN114153997B (zh) * 2022-02-09 2022-05-10 中国传媒大学 基于双线性感知图神经网络模型的视听推荐系统、方法
CN114861065B (zh) * 2022-05-31 2023-06-06 山东省人工智能研究院 基于多行为的级联残差图卷积网络的个性化推荐方法
CN116740049B (zh) * 2023-07-12 2024-02-27 强联智创(北京)科技有限公司 用于盲补连头颈胸血管中心线的方法、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108416397A (zh) * 2018-03-30 2018-08-17 华南理工大学 一种基于ResNet-GCN网络的图像情感分类方法
CN111506811A (zh) * 2020-03-19 2020-08-07 上海理工大学 一种基于深度残差网络的点击率预测方法
CN112487143A (zh) * 2020-11-30 2021-03-12 重庆邮电大学 一种基于舆情大数据分析的多标签文本分类方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109299373B (zh) * 2018-10-20 2021-10-29 上海交通大学 基于图卷积技术的推荐系统
CN111445020B (zh) * 2019-01-16 2023-05-23 阿里巴巴集团控股有限公司 一种基于图的卷积网络训练方法、装置及系统
CN110569437B (zh) * 2019-09-05 2022-03-04 腾讯科技(深圳)有限公司 点击概率预测、页面内容推荐方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108416397A (zh) * 2018-03-30 2018-08-17 华南理工大学 一种基于ResNet-GCN网络的图像情感分类方法
CN111506811A (zh) * 2020-03-19 2020-08-07 上海理工大学 一种基于深度残差网络的点击率预测方法
CN112487143A (zh) * 2020-11-30 2021-03-12 重庆邮电大学 一种基于舆情大数据分析的多标签文本分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Revisiting Graph based Collaborative Filtering: A Linear Residual Graph Convolutional Network Approach;Lei Chen 等;《https://arxiv.org/pdf/2001.10167v1.pdf》;20200128;1-9 *
基于MGCNN的商品评论情感分析;许犇 等;《武汉工程大学学报》;20201031;第42卷(第5期);585-590 *

Also Published As

Publication number Publication date
CN113255844A (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
CN113255844B (zh) 基于图卷积神经网络交互的推荐方法及系统
CN110955834B (zh) 一种知识图谱驱动的个性化精准推荐方法
CN111275521B (zh) 一种基于用户评论与满意层面嵌入的商品推荐方法
CN111797321B (zh) 一种面向不同场景的个性化知识推荐方法及系统
CN112989064B (zh) 一种聚合知识图神经网络和自适应注意力的推荐方法
CN110245285B (zh) 一种基于异构信息网络的个性化推荐方法
CN112967088A (zh) 基于知识蒸馏的营销活动预测模型结构和预测方法
CN113344615B (zh) 一种基于gbdt和dl融合模型的营销活动预测方法
CN112910690A (zh) 基于神经网络模型的网络流量预测方法、装置及设备
CN112819523B (zh) 结合内/外积特征交互和贝叶斯神经网络的营销预测方法
CN110110372B (zh) 一种用户时序行为自动切分预测方法
CN111611488A (zh) 基于人工智能的信息推荐方法、装置、电子设备
CN115661550A (zh) 基于生成对抗网络的图数据类别不平衡分类方法及装置
CN114154565A (zh) 一种基于多层次特征交互的点击率预测方法及装置
CN116976505A (zh) 基于信息共享的解耦注意网络的点击率预测方法
CN116756391A (zh) 一种基于图数据增强的不平衡图节点神经网络分类方法
CN114842247B (zh) 基于特征累加的图卷积网络半监督节点分类方法
CN113360772B (zh) 一种可解释性推荐模型训练方法与装置
CN116452293A (zh) 一种融合物品受众特征的深度学习推荐方法及系统
CN114692012A (zh) 一种基于Bert的神经协同过滤的电子政务推荐方法
CN115689639A (zh) 一种基于深度学习的商业广告点击率预测方法
CN115048530A (zh) 融合邻居重要度和特征学习的图卷积推荐系统
CN114547310A (zh) 一种假新闻早期检测方法、系统、设备及介质
CN113689234A (zh) 一种基于深度学习的平台相关的广告点击率预测方法
CN111949884A (zh) 一种基于多模态特征交互深度融合推荐方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant