首页> 中国专利> 一种SDN架构下基于深度学习的内容流行度预测方法

一种SDN架构下基于深度学习的内容流行度预测方法

摘要

本发明公开了一种SDN架构下基于深度学习的内容流行度预测方法,包括:利用SDN网络中各节点计算资源以及链路构建可重构、分布式深度学习网络,SDN网络具有SDN控制器和多个SDN交换机节点,每个SDN交换机实现若干神经元的计算功能,神经元之间通过SDN交换机的链路彼此连接;SDN网络中的各个节点实时地采集内容被请求的时空联合分布的数据并作为深度学习网络的输入,利用栈式自编码器对时空联合分布的数据进行特征学习,利用Softmax分类器对内容流行度进行预测。本发明基于SDN的可编程、全局视野集中控制的特性,实现深度学习网络的可重构,包括能够调整隐含层和每层神经元节点的数量等;所述方法对ICN的解析系统非常关键,也可帮助其中的动态路由和缓存的决策。

著录项

  • 公开/公告号CN106570597A

    专利类型发明专利

  • 公开/公告日2017-04-19

    原文格式PDF

  • 申请/专利权人 广州大学;

    申请/专利号CN201611000381.9

  • 申请日2016-11-14

  • 分类号G06Q10/04(20120101);G06N3/06(20060101);G06N3/08(20060101);

  • 代理机构44245 广州市华学知识产权代理有限公司;

  • 代理人李君

  • 地址 510006 广东省广州市番禺区大学城外环西路230号

  • 入库时间 2023-06-19 01:56:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-05

    授权

    授权

  • 2017-05-17

    实质审查的生效 IPC(主分类):G06Q10/04 申请日:20161114

    实质审查的生效

  • 2017-04-19

    公开

    公开

说明书

技术领域

本发明涉及一种内容流行度预测方法,尤其是一种SDN架构下基于深度学习的内容流行度预测方法。属于软件定义网络和深度学习技术领域。

背景技术

目前,对于内容流行度的研究,主要集中在对微博/Twitter等社交网络中的主题(topic)的流行度预测。内容流行度可以从空间的角度(传播范围)衡量,也可以从时间的角度(传播周期)衡量。从模型角度看,目前,微博信息流行度预测的研究方法以基于传染病模型和分类或回归模型的预测方法为主。对于传染病模型,源于早期信息扩散理论,其主要包括羊群效应、信息级联、创新扩散理论以及传染病模型(Zafarani R,Abbasi M A,LiuH.Social media mining:an introduction[M].Cambridge University Press,2014.),其中以传染病模型和信息级联模型最为典型。而对于分类或回归模型,将待预测的微博信息表示成一组基于影响因素的特征,把微博信息流行度预测问题转化为分类(Hong L,Dan O,Davison B D.Predicting popular messages in twitter[C]//Proceedings of the20th international conference companion on World wide web.ACM,2011:57-58)或者回归问题(Bakshy E,Hofman J M,Mason W A,et al.Everyone's an influencer:quantifying influence on twitter[C]//Proceedings of the fourth ACMinternational conference on Web search and data mining.ACM,2011:65-74),通过大量的已知数据训练出机器学习模型对未知信息进行预测。

然而,当前方法所依赖的数据不是全局视野的,也无法捕获到预测目标对象的时空联合分布特征,所以,预测的准确度不理想。

发明内容

本发明的目的是为了克服上述现有技术的缺陷,提供了一种SDN架构下基于深度学习的内容流行度预测方法,该方法预测内容流行度的准确率高,所预测的内容流行度不仅对ICN(Information-centric networking,信息中心网络)的解析系统非常关键,也可以帮助动态路由决策、动态路由决策、ICN进行缓存决策。

本发明的目的可以通过采取如下技术方案达到:

一种SDN架构下基于深度学习的内容流行度预测方法,所述方法包括:

S1、利用SDN网络中各节点计算资源以及链路构建可重构、分布式深度学习网络;其中,所述SDN网络具有SDN控制器和多个SDN交换机,每个SDN交换机构成SDN网络中的一个节点,每个SDN交换机贡献小部分资源实现若干神经元的计算功能,神经元之间通过SDN交换机的链路彼此连接;

S2、SDN网络中的各个节点实时地采集内容被请求的时空联合分布的数据并作为深度学习网络的输入,在底层利用栈式自编码器对时空联合分布的数据进行特征学习,在顶层利用Softmax分类器对内容流行度进行预测;其中,所述栈式自编码器由若干个自编码器堆叠在一起形成,每个自编码器具有一个输入层、一个隐藏层和一个输出层。

进一步的,所述利用Softmax分类器对内容流行度进行预测是指将内容流行度离散化为c类,将内容流行度的预测转化为c类的分类问题,利用Softmax分类器输出c个结果实现对内容流行度的预测。

进一步的,步骤S2中,所述在底层利用栈式自编码器对时空联合分布的数据进行特征学习,在顶层利用Softmax分类器对内容流行度进行预测,采用分布式协同内容流行度预测算法实现;

对于给定的训练集X,假设隐藏层神经元数量为l,所述分布式协同内容流行度预测算法如下:

S201、栈式自编码器的预训练

S2011、设定稀疏权重γ以及稀疏参数ρ,同时,随机地初始化权重矩阵w1和偏移向量b1

S2012、通过贪心逐层算法自底向上训练隐藏层参数;

S2013、在隐藏层,用第k层的输出作为第(k+1)层的输入;其中,原始的训练集X是第l层的输入;

S2014、重复进行步骤S2011~S2013,通过实现目标函数的最小化,为第(k+1)层找到参数其中,w1是神经元之间连接的权重矩阵,b1是编码的偏移向量,分别表示第(k+1)层的w1和b1

S202、栈式自编码器网络的精调

S2021、经过预训练后,获得初始化参数

S2022、使用基于梯度下降的BP算法自顶向下修正整个网络的初始化参数

S203、内容流行度预测

S2031、初始化输入层神经元的数量inputSize和输出分类的数量c,以及权重衰减因子λ;

S2032、计算带有权重衰减因子λ的Softmax代价函数J(θ);

S2033、在训练Softmax预测模型之前进行梯度检验;

S2034、从带标签的训练数据集中提取通过栈式自编码器学习到的特征,基于这些提取特征的L-BFGS算法,通过带标签数据集训练Softmax预测模型;

S2035、训练好的Softmax回归层即为测试数据集输出分类预测结果,从而实现对内容流行度的预测。

进一步的,以v分钟为一个时间片,1年被划分为(365*24*60)/v个时间片;在步骤S2的预测过程中,以时隙为基本单位,一个时隙由k个时间片组成,1<k<12;采集数据时,各个神经元一个时隙统计一次SDN网络中的参数;根据时隙的值计算出本次时隙统计时所在的当地时间;

采用一个时空联合分布的过程来描述内容的请求过程,具体为:在第t个时隙中,SDN网络中某个节点i的内容请求到达的数量,用r(t,i)表示;然后计算持续传播时间,持续传播时间是指内容自发布时开始到一个时隙内请求数量小于ε*num_max为止的时间间隔;其中,num_max是一个时隙内请求数量的最大值,ε取0.1~0.2。

进一步的,所述自编码器可将一个多维度的数据集{x(1),x(2),…}映射到另一个数据集{z(1),z(2),…};其中,x(i)∈Rd,z的维度低于x的维度,并且能够从z重构出x;

自编码器将前一次的输出作为本次的输入,如此不断重复:根据下式(1)对x(i)进行编码,用隐藏层z(x(i))表示编码结果,再根据下式(2)对z(x(i))进行解码获得

z(i)=f(w1x(i)+b1)(1)

其中,w1是神经元之间连接的权重矩阵,b1是编码的偏移向量;w2是解码矩阵,b2是解码的偏移向量;函数f(x)和g(x)为1/(1+exp(-x));

和x(i)之间的差值平方和J(w1,b1,w2,b2)作为优化的目标函数:

通过最小化J(w1,b1,w2,b2)获得栈式自编码器模型的参数θ,即w1,b1,w2,b2

进一步的,将稀疏的约束条件加到J(w1,b1,w2,b2)中,在自编码器的基础上实现稀疏自编码器,在隐含层实现对上一级输入的稀疏表示,那么优化目标函数就变为如下形式,然后通过反向传播算法解出其最优解:

其中,γ是权重,HD是隐藏层神经元的数量,ρ是一个约等于0的稀疏调节参数,是k个隐藏层神经元在训练集中的平均值,是KL散度,当时,的定义为:

进一步的,所述SDN交换机采集的数据作为栈式自编码器模型的输入,设SDN网络中有q个节点,其中n个节点用于构建深度学习网络,每个节点上虚拟出m个神经元,分别用于采集以下m种参数的数据:

1)第t个时隙中所有内容被请求的数量(request_total(t));

2)第t个时隙中内容o被请求的数量(request_num(o,t));

3)第t个时隙中内容类别的熵(request_entropy(t));

内容o的发布者(publisher(o))、内容o的类型(type(o))对于SDN网络中所有节点都是一样的;

假设节点采集了当前时隙之前的r个时隙的历史数据,系统的输入维度是n*r*m+2,即在输入层需要n*r*m+2个神经元;当n>1时,n个节点是实际网络中相连的节点,节点采集的数据蕴含了内容流行度的空间相关性;当r>1时,节点采集的数据蕴含了内容流行度的时间相关性;系统的输出维度为c,若预测当前时隙后s个时隙的流行度,则输出维度是c*s。

进一步的,步骤S1中,所述神经元之间通过SDN交换机的链路彼此连接,具体为:

SDN交换机利用Openflow流表中的Proactive模式实现神经元之间的连接,即,SDN控制器制定好Openflow的流表,然后下发到SDN交换机中。

进一步的,所述深度学习模型的重构,具体为:

SDN控制器修改Openflow流表,并重新下发到SDN交换机,完成神经元之间的连接关系的调整,实现调整隐含层和每层神经元节点的数量。

进一步的,所述SDN网络中,一个SDN控制器负责管理一个区域内SDN交换机的Openflow流表,一个SDN控制器部署一个Softmax分类器,即,一个区域内的SDN控制器负责输出该区域内的内容流行度的预测结果;当要预测多个区域内甚至是全网内的内容流行度时,则需要多个SDN控制器之间的协同,多个SDN控制器组成了一个扁平或层次式的分布式控制器结构。

本发明相对于现有技术具有如下的有益效果:

1、本发明方法将深度学习网络的计算功能分散到SDN网络节点中,每个交换机贡献小部分资源实现若干神经元的计算功能,神经元之间通过交换机的链路彼此连接,从而构建深度学习网络,基于SDN网络的可编程特性,利用SDN控制器在全局视野上对网络的控制能力,实现深度学习网络的可重构,包括隐含层数量、每层神经元节点数量的调整,预测机制基本架构是SAE+Softmax分类器,在底层利用栈式自编码器SAE对时空联合分布的数据进行特征学习,在顶层将内容流行度离散化为c类,将内容流行度的预测转化为c类的分类问题,利用Softmax分类器输出c个结果实现对内容流行度的预测,所预测的内容流行度不仅对ICN的解析系统非常关键,也可以帮助动态路由决策、ICN进行缓存决策,由于通过对全局视野的、时空联合分布的数据进行特征学习,可以更准确地预测内容流行度。

2、本发明方法采用分布式协同内容流行度预测算法实现,与已有的单点或多点协同监测的预测算法相比,一方面,多个SDN交换机分布式地采集目标内容被请求的数据,这些数据具有时空联合分布的特征,基于此可以发现内容的流行度规律,也不会漏掉内容流行规律的微小变化;另一方面,具有全局视野的SDN控制器能够控制所属节点采集到数据的特征也是全局视野的。

3、本发明方法与BP神经网络及其他方法相比,一方面,内容流行度变化是一个连续的过程,在一个内容流行度的时间序列中,样本点之间存在很强的相关性;同时,多个内容的序列之间也存在着很强的相关性。而深度学习利用多隐层的神经网络可以从无标签的数据中学习到能刻画数据本质的特征,能够学习到序列之间内在的函数关系,包括复杂的非线性映射关系;另一方面,SDN网络节点众多,具有全局视野的SDN控制器可以根据需要构建出隐含层数量任意多、每层神经元节点数量任意多的深度学习网络,实现重构。

附图说明

图1为本发明实施例的SDN架构示意图。

图2为本发明实施例的预测机制基本架构示意图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

实施例:

本实施例提供了一种内容流行度预测方法,该方法以SDN为基础架构,包括以下步骤:

步骤一、在SDN网络中部署深度学习网络

SDN是一种新型网络创新架构,其将网络设备控制面与数据面分离开来,通过OpenFlow协议实现控制面对数据面的集中控制,从而实现了网络流量的灵活控制。

如图1所示,SDN网络具有SDN控制器和多个SDN交换机,每个SDN交换机是SDN网络中的一个节点,将深度学习网络的计算功能分散到SDN网络节点中,每个SDN交换机贡献小部分资源实现若干神经元的计算功能,神经元之间通过SDN交换机的链路彼此连接,从而构建可重构、分布式深度学习网络。

步骤二、内容流行度预测

本实施例的内容流行度是指:SDN架构下ICN中内容块的流行度,即用户在网络层对内容块请求的持续传播时间,所以实际上,本实施例预测的是内容的被请求次数.内容流行度预测不仅对ICN的解析系统非常关键,也可以帮助动态路由决策、ICN进行缓存决策。

ICN是另外一种新型网络创新架构,其是各种以信息为中心的网络架构的统称,具有“基于全网缓存的信息分发模式”、“内在地支持移动性”、“内在的安全机制”等特点。

SDN网络中的各个节点实时地采集内容被请求的时空联合分布的数据并作为深度学习网络的输入,如图2所示,本实施例的预测机制基本架构是SAE+Softmax分类器,在底层利用栈式自编码器(SAE,Stacked Auto-Encoder)对时空联合分布的数据进行特征学习,在顶层利用Softmax分类器对内容流行度进行预测,利用Softmax分类器对内容流行度进行预测是指将内容流行度离散化为c类,将内容流行度的预测转化为c类的分类问题,利用Softmax分类器输出c个结果实现对内容流行度的预测;其中,所述栈式自编码器由若干个自编码器堆叠在一起形成,每个自编码器具有一个输入层、一个隐藏层和一个输出层。

深度学习模型中的自编码器(Auto-Encoder)采用了“自下而上的无监督学习”和“自顶向下的监督学习”策略来实现对网络的“预训练”和“微调”,可使学习算法收敛到较为理想的解上;深度学习最具吸引力的地方还在于能凭借无标签的数据来进行学习,而不需要依赖于监督信息的支撑;深度学习系统由包括输入层、隐层(多层)、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接(参见文献《焦李成,神经网络七十年:回顾与展望,计算机学报,2016》)。

所述在底层利用栈式自编码器对时空联合分布的数据进行特征学习,在顶层利用Softmax分类器对内容流行度进行预测,采用分布式协同内容流行度预测(Deep-Learning-based Content Popularity Prediction,DLCPP)算法实现;

对于给定的训练集X,假设隐藏层神经元数量为l,分布式协同内容流行度预测算法如下:

1)栈式自编码器的预训练

1-1)设定稀疏权重γ以及稀疏参数ρ,同时,随机地初始化权重矩阵w1和偏移向量b1

1-2)通过贪心逐层(Greedy layerwise)算法自底向上训练隐藏层参数;

1-3)在隐藏层,用第k层的输出作为第(k+1)层的输入;其中,原始的训练集X是第l层的输入;

1-4)重复进行步骤1-1)~1-3),通过实现目标函数的最小化,为第(k+1)层找到参数其中,w1是神经元之间连接的权重矩阵,b1是编码的偏移向量,分别表示第(k+1)层的w1和b1表示从k=0到k=l-1;

2)栈式自编码器网络的精调

2-1)经过预训练后,获得初始化参数

2-2)使用基于梯度下降的BP(Error Back Propagation)算法自顶向下修正整个网络的初始化参数

3)内容流行度预测

3-1)初始化输入层神经元的数量inputSize和输出分类的数量c,以及权重衰减(weight decay)因子λ;

3-2)计算带有权重衰减因子λ的Softmax代价函数J(θ);

3-3)在训练Softmax预测模型之前进行梯度检验;

3-4)从带标签的训练数据集中提取通过栈式自编码器学习到的特征,基于这些提取特征的L-BFGS(Limited-Memory BFGS)算法,通过带标签数据集训练Softmax预测模型;

3-5)训练好的Softmax回归层即为测试数据集输出分类预测结果,从而实现对内容流行度的预测。

A、相关约定

研究表明,内容的流行度与其发布的时间是相关的,也与被请求的时间有关。本实施例以10分钟为一个时间片,把1年的时间切分为52560个时间片;在上述的预测过程中,以时隙为基本单位,一个时隙由k个时间片组成,1<k<12,即,每个时隙为10分钟-2小时;采集数据时,各个神经元一个时隙统计一次SDN网络中的参数;根据时隙的值计算出本次时隙统计时所在的当地时间,那么,季节、白天/夜间、节假日/工作日等影响内容流行度的时间维度的因素都可被涵盖。

采用一个时空联合分布的过程来描述内容的请求过程,具体为:预测在第t个时隙中,SDN网络中节点i的内容请求到达的数量,用r(t,i)表示;然后计算持续传播时间,持续传播时间是指内容自发布时开始到一个时隙内请求数量小于ε*num_max为止的时间间隔;其中,num_max是一个时隙内请求数量的最大值,ε一般取0.1~0.2。

B、自编码器

自编码器可将一个多维度的数据集{x(1),x(2),…}映射到另一个数据集{z(1),z(2),…};其中,x(i)∈Rd,Rd是指x(i)的取值空间,z的维度低于x的维度,并且能够从z重构出x;

自编码器将前一次的输出作为本次的输入,如此不断重复:根据下式(1)对x(i)进行编码,用隐藏层z(x(i))表示编码结果,再根据下式(2)对z(x(i))进行解码获得

z(i)=f(w1x(i)+b1)(1)

其中,w1是神经元之间连接的权重矩阵,b1是编码的偏移向量;w2是解码矩阵,b2是解码的偏移向量;logistic>

和x(i)之间的差值平方和J(w1,b1,w2,b2)作为优化的目标函数:

通过最小化J(w1,b1,w2,b2)获得栈式自编码器模型的参数θ,即w1,b1,w2,b2

进一步地,本实施例可以在自编码器的基础上实现稀疏自编码器,即,将稀疏的约束条件加到J(w1,b1,w2,b2)中,在隐含层实现对上一级输入的稀疏表示,那么优化目标函数就变为如下形式,然后通过反向传播算法解出其最优解:

其中,γ是权重,HD是隐藏层神经元的数量,ρ是一个约等于0的稀疏调节参数,是k个隐藏层神经元在训练集中的平均值,是KL散度,当时,的定义为:

C、栈式自编码器模型的设计

在本实施例中,将SDN交换机采集的数据作为栈式自编码器模型的输入,设SDN网络中有q个节点,其中n(n≤q)个节点用于构建深度学习网络,每个节点上虚拟出m个神经元,分别用于采集以下m种参数的数据:

1)第t个时隙中所有内容被请求的数量(request_total(t));

2)第t个时隙中内容o被请求的数量(request_num(o,t));

3)第t个时隙中内容类别的熵(request_entropy(t));

内容o的发布者(publisher(o))、内容o的类型(type(o))对于SDN网络中所有节点都是一样的;

假设节点采集了当前时隙之前的r个时隙的历史数据,所以系统的输入维度是n*r*m+2,即在输入层需要n*r*m+2个神经元。特别地,当n>1时,n个节点是实际网络中相连的节点,节点采集的数据蕴含了内容流行度的空间相关性;当r>1时,节点采集的数据蕴含了内容流行度的时间相关性。那么,输入层的数据就蕴含了时空联合分布特征,深度学习网络学习到这些特征后,就可以更准确地预测内容流行度。

本实施例将内容流行度离散化为c类,将内容流行度的预测转化为c类的分类问题,Softmax分类器输出c个分类结果就可实现对内容流行度的预测;所以,系统的输出维度为c,若预测当前时隙后s个时隙的流行度,则输出维度是c*s。

D、基于分布式深度学习的内容流行度预测方法在基于OpenFlow的SDN中的部署

经过栈式自编码器模型训练后,可以获得最优的深度学习网络模型参数,包括隐含层的数量,每一层的神经元数量等,那么,深度学习网络中节点之间的连接关系是固定的;所以,利用Openflow中的Proactive模式实现神经元之间的固定连接,SDN控制器制定好如下表1所示的Openflow的流表,然后下发到SDN交换机中。如果需要重构深度学习网络,也是修改表1,然后重新下发。

表1 OpenFlow流表

Switch PortMAC srcMAC dstSrc IPDst IPSrc portDst portActionport 1***1.2.3.44.5.6.7**port2,port 3,port 4,port 5

注:*表示任意值。

在SDN网络中,一个SDN控制器负责管理一个区域内SDN交换机的Openflow流表,一个SDN控制器部署一个Softmax分类器,即,一个区域内的SDN控制器负责输出该区域内的内容流行度的预测结果;当要预测多个区域内甚至是全网内的内容流行度时,则需要多个SDN控制器之间的协同,多个SDN控制器组成了一个扁平或层次式的分布式控制器结构。

E、实验结果

使用均方误差MSE(Mean Squared Error)来衡量预测结果,观察以下参数对实验结果的影响:1≤历史数据步长r≤15;10≤输入层节点数量n≤100;1≤隐藏层数量≤6;每一层隐藏层神经元的数量范围是{100,200,300,400,500,600,700,800,900,1000},经过比较后获得最优结果如下表2所示;其中,s=1,k=1。

表2预测结果

历史数据步长r输入层节点数量n隐藏层数量隐藏层神经元数量(自底向上)MSE5103[100 100 100]1.0310503[400 400 400]0.88151004[200 200 200 200]0.65

综上所述,本发明方法将深度学习网络的计算功能分散到SDN网络节点中,每个交换机贡献小部分资源实现若干神经元的计算功能,神经元之间通过交换机的链路彼此连接,从而构建深度学习网络,基于SDN网络的可编程特性,利用SDN控制器在全局视野上对网络的控制能力,实现深度学习网络的可重构,包括隐含层数量、每层神经元节点数量的调整,预测机制基本架构是SAE+Softmax分类器,在底层利用栈式自编码器SAE对时空联合分布的数据进行特征学习,在顶层将内容流行度离散化为c类,将内容流行度的预测转化为c类的分类问题,利用Softmax分类器输出c个结果实现对内容流行度的预测,所预测的内容流行度不仅对ICN的解析系统非常关键,也可以帮助动态路由决策、ICN进行缓存决策,由于通过对全局视野的、时空联合分布的数据进行特征学习,可以更准确地预测内容流行度。

以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明专利构思加以等同替换或改变,都属于本发明专利的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号