CN109547546B - 一种请求任务的调度方法及调度中心服务器 - Google Patents
一种请求任务的调度方法及调度中心服务器 Download PDFInfo
- Publication number
- CN109547546B CN109547546B CN201811393124.5A CN201811393124A CN109547546B CN 109547546 B CN109547546 B CN 109547546B CN 201811393124 A CN201811393124 A CN 201811393124A CN 109547546 B CN109547546 B CN 109547546B
- Authority
- CN
- China
- Prior art keywords
- training
- scheduled
- support vector
- training sample
- scheduling
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012549 training Methods 0.000 claims abstract description 190
- 238000012706 support-vector machine Methods 0.000 claims abstract description 65
- 230000006870 function Effects 0.000 claims description 29
- 239000013598 vector Substances 0.000 claims description 15
- 238000012360 testing method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/95—Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种请求任务的调度方法及控制中心服务器,其中,所述方法包括:接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本;创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定;利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值;基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。本申请提供的技术方案,能够提高请求任务的调度精度。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种请求任务的调度方法及调度中心服务器。
背景技术
随着直播行业的不断兴起,为了给用户提供流畅的视频直播体验,直播服务商通常会选用CDN(Content Delivery Network,内容分发网络)分担直播流,并且对直播流进行加速。
目前,CDN的控制中心在接收到用户发来的用于加载直播流的请求任务时,可以根据当前网络中各个CDN节点的负载数、卡顿率等参数,确定出适合处理该请求任务的CDN节点,并将该请求任务调度至确定出的CDN节点处。
然而,目前对于请求任务的调度方法,对于CDN节点的判断依据过于单一,因此可能会造成误判,从而导致请求任务分配不均的情况。而一旦增加判断依据,会使得判断过程过于复杂,目前还没有合适的方案能够应对复杂的判断过程。
发明内容
本申请的目的在于提供一种请求任务的调度方法及调度中心服务器,能够提高请求任务的调度精度。
为实现上述目的,本申请一方面提供一种请求任务的调度方法,所述方法包括:接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本;创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定;利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值;基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。
为实现上述目的,本申请另一方面还提供一种调度中心服务器,所述调度中心服务器包括:训练样本构建单元,用于接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本;支持向量机模型创建单元,用于创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定;迭代训练单元,用于利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值;任务调度单元,用于基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。
为实现上述目的,本申请另一方面还提供一种调度中心服务器,所述调度中心服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的请求任务的调度方法。
由上可见,本申请提供的技术方案,可以通过机器学习的方式,对CDN节点的各项节点信息进行训练,从而得到能够进行请求任务调度的分类器。具体地,CDN中的调度中心可以接收待调度的多个CDN节点上报的各项节点信息,并可以基于这些节点信息构建多个训练样本。后续,可以创建包含多个二分类器的支持向量机(Support Vector Machine,SVM)模型,然后利用上述的训练样本对该SVM模型进行多轮训练,从而生成多个弱分类器。其中,SVM模型中包含多个二分类器的目的是,可以将一个多分类的问题转换为多个二分类的问题,从而能够顺利地对两个以上的CDN节点进行调度。在得到多个弱分类器之后,可以分别确定各个弱分类器的权重值,并根据确定的权重值,将多个弱分类器组合为最终分类器。各个弱分类器的权重值大小可以表示弱分类器在最终分类器中所起的作用大小。这样,通过大量训练样本对SVM模型进行训练后,便可以得到精准的最终分类器。后续当接收到新的请求任务时,可以通过该最终分类器对各个待调度的CDN节点的节点信息进行分析,从而确定出适合处理该新的请求任务的目标CDN节点。这样,本申请提供的技术方案,通过机器学习的方式,能够对多方面的节点信息进行综合考量,并且通过训练样本的不断校正,能够产生精度足够高的最终分类器,从而提高请求任务的调度精度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中调度中心服务器与CDN节点的结构示意图;
图2是本发明实施方式中请求任务的调度方法流程图;
图3是本发明实施方式中DAG模型的示意图;
图4是本发明实施方式中多轮训练的流程示意图;
图5是本发明实施方式中调度中心服务器的功能模块示意图;
图6是本发明实施方式中调度中心服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本申请提供一种请求任务的调度方法,所述方法可以应用于CDN的调度中心服务器中。请参阅图1,所述调度中心服务器可以接收用户客户端发来的拉取直流视频流的请求任务,然后可以对当前待调度的多个CDN节点的节点信息进行分析,从而确定出应当将该请求任务调度至哪一个CDN节点处。
具体地,请参阅图2,本申请提供的请求任务的调度方法,可以包括以下步骤。
S1:接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本。
本申请提供的技术方案,可以包括训练阶段和预测阶段。针对训练阶段,可以预先构建多个训练样本。具体地,待调度的多个CDN节点可以采集各自的节点信息,并将采集的节点信息上传至调度中心服务器。其中,所述节点信息可以包括性能参数、负载参数、剩余带宽量、网络延时以及直播流的码率等多方面的信息。针对不同的信息,可以通过不同的物理量来表示。具体地,性能参数可以用Ai表示、负载参数可以用Li表示、剩余带宽量可以用Bi表示、网络延时可以用Pi表示以及直播流的码率可以用BRi表示。其中,下标i可以表示第i个待调度的CDN节点的节点信息。
在本实施方式中,待调度的CDN节点可以按照指定的时间间隔,定期向控制中心服务器上报不同时刻的节点信息。这样,调度中心服务器可以收集所述待调度的CDN节点在不同时刻上报的节点信息,并将同一时刻各个所述待调度的CDN节点上报的节点信息构建为一个信息向量。所述信息向量可以通过以下方式表示:
I=[A1,L1,B1,P1,BR1,A2,L2,B2,P2,BR2...An,Ln,Bn,Pn,BRn];
其中,I可以表示当前时刻的信息向量,该信息向量中可以包括n个待调度的CDN节点在当前时刻发来的各项节点信息。这样,每个不同的时刻均可以生成如上所示的一个信息向量,不同时刻构建的各个信息向量,便可以作为构建的所述多个训练样本。例如,在本实施方式中,可以针对m个不同时刻上报的节点信息构建m个训练样本,每个训练样本均可以通过上述的信息向量的形式来表示。
S3:创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定。
在本实施方式中,为了完成机器学习的过程,可以创建一个SVM模型,该SVM模型可以针对多个待调度的CDN节点的节点信息进行分析,从而确定出目前应当将请求任务调度至哪一个CDN节点。因此,创建的该SVM模型实际上就是一个多分类器,该多分类器所支持的分类数量,与待调度的CDN节点的数量一致。例如,当前共计有5个CDN节点参与调度,那么该SVM模型就需要从这5个CDN节点中选取一个合适的CDN节点,因此,该SVM模型就相当于一个5分类器。
在本实施方式中,具备多分类功能的SVM模型可以通过多个二分类器构建。具体地,可以通过DAG(Directed Acyclic Graph,有向无环图)模型,将一个多分类的问题拆解为多个二分类的问题。请参阅图3,假设现在要从5个CDN节点中挑选出一个CDN节点,这5个CDN节点的标号可以是从1至5,那么在图3中,可以将五选一的问题,拆解为10个二选一的问题,其中,1-5表示从标号为1和标号为5的CDN节点中挑选一个CDN节点,其它圆圈内的成对数字可以以此类推。这样,在当前层完成二选一的问题之后,可以根据选择的结果,进入到下一层的二选一问题,最终可以得到5个标号中的一个标号,最终得到的该标号对应的CDN节点便可以作为请求任务应当调度至的CDN节点。
在本实施方式中,SVM模型中可以包含指定数量的二分类器,而该指定数量与待调度的CDN节点的总数量具备一定的关联。具体地,首先可以根据所述待调度的CDN节点的总数量,分别确定等差数列中的首项和末项。其中,所述等差数列的首项可以是1,末项可以是q-1,其中,q可以表示所述待调度的CDN节点的总数量。然后可以基于确定的所述首项和所述末项,计算所述等差数列的和,并将计算的所述等差数列的和作为所述指定数量。在一个实际应用示例中,所述指定数量可以按照以下公式确定:
其中,P表示所述指定数量,q表示所述待调度的CDN节点的总数量。
这样,在实际应用中,可以预先统计参与调度的CDN节点的总数量,然后再按照上式计算出SVM模型中应当包含的二分类器的数量,最终便可以按照DAG模型构建出这些二分类器的逐层排布情况。
S5:利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值。
在本实施方式中,在构建出所述SVM模型时,便可以利用所述多个训练样本对所述SVM模型进行多轮训练。在利用训练样本进行训练时,首先需要为各个训练样本设置对应的权重值。在第一次训练时,可以为每个所述训练样本分配相同的初始权重值。具体地,该初始权重值例如可以是1/m,其中,m表示训练样本的总个数。这样,这些训练样本的权重值之和可以保证为1。
在本实施方式中,在为各个训练样本分配了初始权重值之后,便可以利用具备所述初始权重值的训练样本对所述支持向量机模型进行训练,训练的目的是,让SVM模型对训练样本的训练结果,能够逼近训练样本的标准结果。其中,所述训练样本的标准结果可以是调度中心服务器在接收节点信息时一并获取的。具体地,在构建训练样本时所采用的节点信息,都可以是已经完成请求任务调度的历史信息。举例来说,在某个历史时刻,调度中心服务器接收到用户客户端发来的请求任务,并经过一系列计算之后,将该请求任务调度至标号为5的CDN节点中,并且本次调度后续被证明是正确的调度。那么,调度中心服务器可以从CDN节点上报的节点信息中,查询出该历史时刻对应的节点信息,并按照查询出的节点信息构建上述的信息向量,从而得到该历史时刻的训练样本。同时,该训练样本已经具备了标准结果:请求任务应当被调度至标号为5的CDN节点。因此,在利用该训练样本对SVM模型进行训练后,如果SVM模型输出的训练结果也是标号为5的CDN节点,则表示针对该训练样本的训练结果与标准结果是一致的。若SVM模型输出的训练结果不是标号为5的CDN节点,则表示针对该训练样本的训练结果与标准结果不一致,在这种情况下就需要对训练过程进行校正,以使得校正之后再次进行训练时,使得训练结果能够与标准结果一致。
鉴于此,在本实施方式中,在利用具备初始权重值的训练样本对所述SVM模型进行训练后,可以根据训练结果与所述训练样本的标准结果之间的差异,确定本轮训练的误差函数。具体地,针对所述多个训练样本中的当前训练样本,可以确定所述当前训练样本的判定数值。其中,若所述当前训练样本的训练结果与标准结果相同,可以将所述判定数值置为0,若所述当前训练样本的训练结果与标准结果不同,可以将所述判定数值置为1。然后,可以计算所述当前训练样本的初始权重值与所述判定数值的乘积,从而得到所述当前训练样本对应的误差贡献值。按照上述方式,便可以计算得到各个训练样本各自对应的误差贡献值。最终,可以将各个所述训练样本对应的误差贡献值之和作为所述误差函数。在一个实际应用示例中,可以按照以下公式确定所述误差函数:
其中,er表示所述误差函数,Ii表示第i个训练样本,W0(i)表示第i个训练样本对应的初始权重值,G(Ii)表示第i个训练样本在本轮的训练结果,yi表示第i个训练样本的标准结果,m表示所述训练样本的个数,f(*)表示若*成立,f(*)=1,若*不成立,f(*)=0。
由上可见,本轮训练结束后,对应的误差函数实际上就是被错误分类的训练样本的权重值之和。
在本实施方式中,本轮训练后的SVM模型可以视为一个弱分类器,在本轮训练结束之后,可以根据上述的误差函数,对各个训练样本的权重值进行调节,从而可以利用调节过权重值的训练样本进行下一轮的训练过程。同时,还可以为本轮训练后的弱分类器设置一个权重值,弱分类器的权重值可以表征该弱分类器对于最终分类结果的影响。具体地,可以按照以下公式确定本轮对应的弱分类器的权重值:
其中,α表示本轮对应的弱分类器的权重值。
另外,可以按照以下公式为每个所述训练样本分配新的权重值:
其中,W1(i)表示为第i个训练样本分配的新的权重值,Z表示归一化因子,该归一化因子可以使得分配的各个新的权重值之和始终为1。
这样,根据所述误差函数,可以确定本轮对应的弱分类器的权重值,并基于确定的所述弱分类器的权重值,重新为每个所述训练样本分配新的权重值,从而可以利用分配了新的权重值的训练样本,对所述支持向量机模型进行下一轮训练。
请参阅图4,下一轮训练的过程与上文描述的内容一致,只不过各个训练样本的权重值发生了改变,在下一轮训练结束之后,同样可以再次计算误差函数,并通过误差函数确定下一轮弱分类器的权重值,并且再次为各个训练样本重新分配权重值,以此类推,直至完成所有轮的训练过程。
S7:基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。
在本实施方式中,所有轮的训练过程结束之后,便可以通过加权求和的方式,将各个所述弱分类器组合为最终分类器。
在本实施方式中,完成训练阶段之后,便可以进入预测阶段。具体地,当控制中心服务器接收到新的请求任务时,可以实时采集各个所述待调度的CDN节点的节点信息,并按照上述构建信息向量的方式,根据采集的所述节点信息构建测试样本。然后,可以将所述测试样本输入所述最终分类器,从而得到表征目标CDN节点的节点标识。该节点标识例如可以是CDN节点的标号,那么控制中心服务器便可以将所述新的请求任务调度至所述目标CDN节点处。
当然,如果后续发现本次的预测结果与真实的应当调度的结果存在偏差,则可以将本次的预测样本作为新的训练样本,并将真实的应当调度的结果作为该训练样本的标准结果,再次对最终分类器进行训练,从而完善最终分类器的调度精度。由此可见,针对实际应用中存在调度误判的情况,可以通过机器学习的方式继续对最终分类器进行训练,从而进一步地提高最终分类器的分类精度。
在一个实施方式中,SVM模型接收到训练样本后,可以通过分类超平面来对该训练样本进行分类。具体地,所述SVM模型的表达式可以表示为:
f(x)=w·φ(x)+b;
其中,f(x)=0时可以表示分类超平面,而f(x)大于0或者等于0则可以表示不同的分类结果。其中,x表示输入的训练样本,φ(x)表示对训练样本进行一定的映射计算,w和b则表示两个系数。
在实际应用中,为了求解上式,可以将上述的表达式转换为以下带约束条件的解:
其中,ξi表示松弛变量,C表示惩罚因子,yi表示训练样本的标准结果,l表示训练样本中包含的元素个数。
进一步地,可以利用核函数将输入的训练样本映射到高维空间。其中,所述核函数可以为径向基核函数,数学表示为:
其中,xi表示训练样本中的第i个元素,xj表示训练样本中的第j个元素,σ为可调节的预设常数。
后续,可以引入拉格朗日乘子,将上式转化为对偶问题,得到如下的对偶形式:
最终,所述支持向量机模型的分类表达式可以为:
其中,f(x)表示所述支持向量机模型的分类表达式,K(xi,x)表示径向基核函数,xi表示训练样本中的第i个元素,x表示输入的训练样本,b*表示冗余因子,ai表示最优拉格朗日乘子中的第i个元素,表示ai的共轭转置,l表示训练样本中元素的总个数,SV表示支持向量域,Nnsv表示支持向量的个数,C表示惩罚因子,yi表示第i个训练样本的标准结果,ε表示松弛变量的实部。
需要说明的是,为了达到更好的分类效果,在实际应用中可以寻找合适的参数σ和C。具体地,可以采用网格寻优的方式确定,先以0.1的精度进行初步搜寻,得到准确率较高的区域后,再以0.01的精度进行进一步的搜寻,从而得到最优的参数σ和C。
请参阅图5,本申请还提供一种调度中心服务器,所述调度中心服务器包括:
训练样本构建单元,用于接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本;
支持向量机模型创建单元,用于创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定;
迭代训练单元,用于利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值;
任务调度单元,用于基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。
在一个实施方式中,所述迭代训练单元包括:
初始权重分配模块,用于预先为每个所述训练样本分配初始权重值,并利用具备所述初始权重值的训练样本对所述支持向量机模型进行训练;
误差函数确定模块,用于根据训练结果与所述训练样本的标准结果之间的差异,确定本轮训练的误差函数;
权重值重新分配模块,用于根据所述误差函数,确定本轮对应的弱分类器的权重值,并基于确定的所述弱分类器的权重值,重新为每个所述训练样本分配新的权重值;
继续训练模块,用于利用分配了新的权重值的训练样本,对所述支持向量机模型进行下一轮训练。
在一个实施方式中,所述任务调度单元包括:
节点信息采集模块,用于在接收到新的请求任务时,采集各个所述待调度的CDN节点的节点信息,并根据采集的所述节点信息构建测试样本;
节点标识预测模块,用于将所述测试样本输入所述最终分类器,得到表征目标CDN节点的节点标识;
调度模块,用于将所述新的请求任务调度至所述目标CDN节点处。
请参阅图6,本申请还提供一种调度中心服务器,所述调度中心服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,可以实现如上述的请求任务的调度方法。具体地,如图6所示,在硬件层面,该调度中心服务器可以包括处理器、内部总线和存储器。所述存储器可以包括内存以及非易失性存储器。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行。本领域普通技术人员可以理解,图6所示的结构仅为示意,其并不对上述识别装置的结构造成限定。例如,所述调度中心服务器还可包括比图6中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如GPU(Graphics Processing Unit,图像处理器),或者具有与图6所示不同的配置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等。
本实施方式中,所述的处理器可以包括中央处理器(CPU)或图形处理器(GPU),当然也可以包括其他的具有逻辑处理能力的单片机、逻辑门电路、集成电路等,或其适当组合。本实施方式所述的存储器可以是用于保存信息的记忆设备。在数字系统中,能保存二进制数据的设备可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也可以为存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也可以叫存储器等。实现的时候,该存储器也可以采用云存储器的方式实现,具体实现方式,本说明书不错限定。
需要说明的是,本说明书中的调度中心服务器,具体的实现方式可以参照方法实施方式的描述,在此不作一一赘述。
由上可见,本申请提供的技术方案,可以通过机器学习的方式,对CDN节点的各项节点信息进行训练,从而得到能够进行请求任务调度的分类器。具体地,CDN中的调度中心可以接收待调度的多个CDN节点上报的各项节点信息,并可以基于这些节点信息构建多个训练样本。后续,可以创建包含多个二分类器的支持向量机(Support Vector Machine,SVM)模型,然后利用上述的训练样本对该SVM模型进行多轮训练,从而生成多个弱分类器。其中,SVM模型中包含多个二分类器的目的是,可以将一个多分类的问题转换为多个二分类的问题,从而能够顺利地对两个以上的CDN节点进行调度。在得到多个弱分类器之后,可以分别确定各个弱分类器的权重值,并根据确定的权重值,将多个弱分类器组合为最终分类器。各个弱分类器的权重值大小可以表示弱分类器在最终分类器中所起的作用大小。这样,通过大量训练样本对SVM模型进行训练后,便可以得到精准的最终分类器。后续当接收到新的请求任务时,可以通过该最终分类器对各个待调度的CDN节点的节点信息进行分析,从而确定出适合处理该新的请求任务的目标CDN节点。这样,本申请提供的技术方案,通过机器学习的方式,能够对多方面的节点信息进行综合考量,并且通过训练样本的不断校正,能够产生精度足够高的最终分类器,从而提高请求任务的调度精度。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种请求任务的调度方法,其特征在于,所述方法包括:
接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本;
创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定;
利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值;
基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。
2.根据权利要求1所述的方法,其特征在于,所述节点信息中包括性能参数、负载参数、剩余带宽量、网络延时以及直播流的码率中的至少一种;
相应地,所述构建多个训练样本包括:
收集所述待调度的CDN节点在不同时刻上报的节点信息,并将同一时刻各个所述待调度的CDN节点上报的节点信息构建为一个信息向量;
将不同时刻构建的各个信息向量作为构建的所述多个训练样本。
3.根据权利要求1所述的方法,其特征在于,所述指定数量按照以下方式确定:
根据所述待调度的CDN节点的总数量,分别确定等差数列中的首项和末项;
基于确定的所述首项和所述末项,计算所述等差数列的和,并将计算的所述等差数列的和作为所述指定数量;其中,所述等差数列的首项是1,末项是q-1,其中,q表示所述待调度的CDN节点的总数量。
4.根据权利要求1所述的方法,其特征在于,所述利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练包括:
预先为每个所述训练样本分配初始权重值,并利用具备所述初始权重值的训练样本对所述支持向量机模型进行训练;
根据训练结果与所述训练样本的标准结果之间的差异,确定本轮训练的误差函数;
根据所述误差函数,确定本轮对应的弱分类器的权重值,并基于确定的所述弱分类器的权重值,重新为每个所述训练样本分配新的权重值;
利用分配了新的权重值的训练样本,对所述支持向量机模型进行下一轮训练。
5.根据权利要求4所述的方法,其特征在于,所述误差函数按照以下方式确定:
针对所述多个训练样本中的当前训练样本,确定所述当前训练样本的判定数值;其中,若所述当前训练样本的训练结果与标准结果相同,将所述判定数值置为0,若所述当前训练样本的训练结果与标准结果不同,将所述判定数值置为1;
计算所述当前训练样本的初始权重值与所述判定数值的乘积,得到所述当前训练样本对应的误差贡献值;
将各个所述训练样本对应的误差贡献值之和作为所述误差函数。
8.根据权利要求1所述的方法,其特征在于,所述通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度包括:
在接收到新的请求任务时,采集各个所述待调度的CDN节点的节点信息,并根据采集的所述节点信息构建测试样本;
将所述测试样本输入所述最终分类器,得到表征目标CDN节点的节点标识;
将所述新的请求任务调度至所述目标CDN节点处。
12.一种调度中心服务器,其特征在于,所述调度中心服务器包括:
训练样本构建单元,用于接收待调度的CDN节点上报的节点信息,并基于所述节点信息,构建多个训练样本;
支持向量机模型创建单元,用于创建支持向量机模型,所述支持向量机模型中包括指定数量的二分类器,并且所述指定数量基于所述待调度的CDN节点的总数量确定;
迭代训练单元,用于利用构建的所述多个训练样本对所述支持向量机模型进行多轮训练,每轮训练后均生成对应的弱分类器,并且所述弱分类器具备权重值;
任务调度单元,用于基于各个所述弱分类器的权重值,将各个所述弱分类器组合为最终分类器,并通过所述最终分类器将接收到的新的请求任务在所述待调度的CDN节点中进行调度。
13.根据权利要求12所述的调度中心服务器,其特征在于,所述迭代训练单元包括:
初始权重分配模块,用于预先为每个所述训练样本分配初始权重值,并利用具备所述初始权重值的训练样本对所述支持向量机模型进行训练;
误差函数确定模块,用于根据训练结果与所述训练样本的标准结果之间的差异,确定本轮训练的误差函数;
权重值重新分配模块,用于根据所述误差函数,确定本轮对应的弱分类器的权重值,并基于确定的所述弱分类器的权重值,重新为每个所述训练样本分配新的权重值;
继续训练模块,用于利用分配了新的权重值的训练样本,对所述支持向量机模型进行下一轮训练。
14.根据权利要求12所述的调度中心服务器,其特征在于,所述任务调度单元包括:
节点信息采集模块,用于在接收到新的请求任务时,采集各个所述待调度的CDN节点的节点信息,并根据采集的所述节点信息构建测试样本;
节点标识预测模块,用于将所述测试样本输入所述最终分类器,得到表征目标CDN节点的节点标识;
调度模块,用于将所述新的请求任务调度至所述目标CDN节点处。
15.一种调度中心服务器,其特征在于,所述调度中心服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至11中任一所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/120101 WO2020098030A1 (zh) | 2018-11-12 | 2018-12-10 | 一种请求任务的调度方法及调度中心服务器 |
US16/966,900 US20210049424A1 (en) | 2018-11-12 | 2018-12-10 | Scheduling method of request task and scheduling center server |
EP18940424.7A EP3879786A1 (en) | 2018-11-12 | 2018-12-10 | Scheduling method for request task and scheduling center server |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018113407870 | 2018-11-12 | ||
CN201811340787 | 2018-11-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109547546A CN109547546A (zh) | 2019-03-29 |
CN109547546B true CN109547546B (zh) | 2020-06-05 |
Family
ID=65848932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811393124.5A Expired - Fee Related CN109547546B (zh) | 2018-11-12 | 2018-11-21 | 一种请求任务的调度方法及调度中心服务器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210049424A1 (zh) |
EP (1) | EP3879786A1 (zh) |
CN (1) | CN109547546B (zh) |
WO (1) | WO2020098030A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547546B (zh) * | 2018-11-12 | 2020-06-05 | 网宿科技股份有限公司 | 一种请求任务的调度方法及调度中心服务器 |
CN113826116A (zh) * | 2019-05-15 | 2021-12-21 | 北京嘀嘀无限科技发展有限公司 | 用于多类分类的对抗性多二元神经网络 |
CN110391955B (zh) * | 2019-07-22 | 2022-04-12 | 平安科技(深圳)有限公司 | 网络数据预处理方法、装置、设备及可读存储介质 |
CN111144784A (zh) * | 2019-12-31 | 2020-05-12 | 中国电子科技集团公司信息科学研究院 | 面向有人/无人协同编队系统的任务分配方法及系统 |
CN111913791B (zh) * | 2020-07-02 | 2023-10-13 | 北京和瑞精湛医学检验实验室有限公司 | 任务调度方法、装置、设备和计算机可读存储介质 |
CN112101609B (zh) * | 2020-07-24 | 2023-08-01 | 西安电子科技大学 | 关于用户还款及时性的预测系统、方法、装置及电子设备 |
CN114064262A (zh) * | 2020-08-07 | 2022-02-18 | 伊姆西Ip控股有限责任公司 | 管理存储系统中的计算资源的方法、设备和程序产品 |
KR20220036494A (ko) * | 2020-09-16 | 2022-03-23 | 삼성전자주식회사 | 딥러닝 워크로드를 위한 하이브리드 스케줄링 방법과 이를 수행하는 컴퓨팅 장치 |
CN113268322B (zh) * | 2021-05-17 | 2023-11-07 | 深圳番多拉信息科技有限公司 | 一种拥有资源能力计算的方法、系统、装置以及存储介质 |
CN114726749B (zh) * | 2022-03-02 | 2023-10-31 | 阿里巴巴(中国)有限公司 | 数据异常检测模型获取方法、装置、设备及介质 |
CN115102779B (zh) * | 2022-07-13 | 2023-11-07 | 中国电信股份有限公司 | 预测模型的训练、访问请求的决策方法、装置、介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163239A (zh) * | 2011-05-11 | 2011-08-24 | 中科院成都信息技术有限公司 | 一种基于浮动分类阈值的分类器集成方法 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN107948004A (zh) * | 2017-12-29 | 2018-04-20 | 北京奇艺世纪科技有限公司 | 一种视频cdn调取优化方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101442561A (zh) * | 2008-12-12 | 2009-05-27 | 南京邮电大学 | 一种基于支持向量机的网格监控方法 |
US9258217B2 (en) * | 2008-12-16 | 2016-02-09 | At&T Intellectual Property I, L.P. | Systems and methods for rule-based anomaly detection on IP network flow |
CN106375452B (zh) * | 2016-09-05 | 2019-07-12 | 河海大学 | 一种加权分类Web服务QoS监控方法 |
CN106650806B (zh) * | 2016-12-16 | 2019-07-26 | 北京大学深圳研究生院 | 一种用于行人检测的协同式深度网络模型方法 |
US11621969B2 (en) * | 2017-04-26 | 2023-04-04 | Elasticsearch B.V. | Clustering and outlier detection in anomaly and causation detection for computing environments |
CN109547546B (zh) * | 2018-11-12 | 2020-06-05 | 网宿科技股份有限公司 | 一种请求任务的调度方法及调度中心服务器 |
-
2018
- 2018-11-21 CN CN201811393124.5A patent/CN109547546B/zh not_active Expired - Fee Related
- 2018-12-10 WO PCT/CN2018/120101 patent/WO2020098030A1/zh unknown
- 2018-12-10 US US16/966,900 patent/US20210049424A1/en not_active Abandoned
- 2018-12-10 EP EP18940424.7A patent/EP3879786A1/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163239A (zh) * | 2011-05-11 | 2011-08-24 | 中科院成都信息技术有限公司 | 一种基于浮动分类阈值的分类器集成方法 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN107948004A (zh) * | 2017-12-29 | 2018-04-20 | 北京奇艺世纪科技有限公司 | 一种视频cdn调取优化方法及装置 |
Non-Patent Citations (1)
Title |
---|
ProxyDetector: A Guided Approach to Finding Web Proxies;Zhipeng CHEN等;《2017 IEEE 42nd Conference on Local Computer Networks》;20171116;第676-682页 * |
Also Published As
Publication number | Publication date |
---|---|
EP3879786A1 (en) | 2021-09-15 |
US20210049424A1 (en) | 2021-02-18 |
WO2020098030A1 (zh) | 2020-05-22 |
CN109547546A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109547546B (zh) | 一种请求任务的调度方法及调度中心服务器 | |
CN108764273B (zh) | 一种数据处理的方法、装置、终端设备及存储介质 | |
CN110457589B (zh) | 一种车辆推荐方法、装置、设备及存储介质 | |
CN110503531B (zh) | 时序感知的动态社交场景推荐方法 | |
US10438130B2 (en) | Computer-implemented system and method for relational time series learning | |
CN106446959B (zh) | 一种云计算资源动态匹配方法及装置 | |
CN106484777B (zh) | 一种多媒体数据处理方法以及装置 | |
CN104392250A (zh) | 一种基于MapReduce的图像分类方法 | |
US20160321265A1 (en) | Similarity calculation system, method of calculating similarity, and program | |
CN111494964B (zh) | 虚拟物品的推荐方法、模型的训练方法、装置及存储介质 | |
CN103870604B (zh) | 旅游推荐方法和装置 | |
CN110598065A (zh) | 一种数据挖掘方法、装置和计算机可读存储介质 | |
CN107423396A (zh) | 一种基于功能隐含关系及聚类的Mashup推荐方法 | |
Long et al. | Fedsiam: Towards adaptive federated semi-supervised learning | |
CN110210506A (zh) | 基于大数据的特征处理方法、装置和计算机设备 | |
Abd Elrahman et al. | D-SmartML: a distributed automated machine learning framework | |
Liang et al. | Top-N-rank: A scalable list-wise ranking method for recommender systems | |
Elyiv et al. | Machine-learning computation of distance modulus for local galaxies | |
Aziz et al. | Increasing electrical grid stability classification performance using ensemble bagging of C4. 5 and classification and regression trees | |
JP2018517963A (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
CN116339932A (zh) | 资源调度方法、装置和服务器 | |
CN114764469A (zh) | 一种内容推荐方法、装置、计算机设备和存储介质 | |
CN117216375A (zh) | 一种信息推荐的训练方法、系统及存储介质和服务器 | |
Chen et al. | A user dependent web service QoS collaborative prediction approach using neighborhood regularized matrix factorization | |
JP2015179512A (ja) | リレーショナルモデルを決定する方法と装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200605 |
|
CF01 | Termination of patent right due to non-payment of annual fee |