一种计算网络流媒体异常播放量并对其修正的方法及系统
技术领域
本发明适用于互联网上各种网络流媒体分享应用领域,,尤其是涉及一种计算网络流媒体异常播放量并对其修正的方法及系统。
背景技术
近年来,随着互联网的不断普及和发展,各种互联网应用如雨后春笋般异军突起,给人们的学习生活带来极大的便利。其中,网络网络流媒体分享应用得到了较快发展,其用户规模迅速扩大,据最近一项调查显示,目前国内的在线网络流媒体用户覆盖率已达到了96%。超越了网络搜索、虚拟社交网络等应用服务成为了互联网第一大应用服务。由此可见,网络流媒体分享网络已成为网民获得信息不可或缺的手段。为网民提供高质量的网络流媒体源和反应网络流媒体真实点播量的数据,是网络流媒体分享行业所关注的重要组成部分,它可以为网络流媒体分享网站带来更多的网络流媒体用户以及减少恶意刷网络流媒体点播量(互联网上经常出现的以恶意提高网络流媒体点播量为目的的一种重复点播行为)对企业所带来的版权损失以实现企业利益的最大化。
发明内容
为了提供可靠的点播量数据,本发明提供了一种计算网络流媒体异常播放量并对其修正的系统,其包括以下模块:用户行为日志收集模块,被刷点播量网络流媒体检测模块,被刷点播量网络流媒体异常点播量计算模块,网络流媒体播点播量纠正模块;
所述用户行为日志收集模块,利用客户端程序将用户数据按照不同行为类型收集起来;
所述被刷点播量网络流媒体检测模块,筛选被刷点播量网络流媒体的行为日志,进行多维度的学习训练;建立正负样本库,计算正负样本具有区分正常网络流媒体和异常网络流媒体的多个特征值;根据特征值获得特征系数从而判断网络流媒体是否为正常或异常;
所述被刷点播量网络流媒体异常点播量计算模块,计算单机被刷网络流媒体的异常点播量;统计需要列入黑名单的计算机,计算分布式网络互刷网络流媒体所产生的异常点播量;对于某一检测出的特定异常网络流媒体,如果产生播放量的所在计算机落入黑名单中,满足播放时长处于预定阈值内,且不存在播放器事件则被认为是异常的播放量;
所述网络流媒体播放量纠正模块利用网络流媒体总播放量与异常播放量的差值修正网络流媒体的总播放量。
进一步,所述客户端程序通过包括tcp、udp协议的网络传输协议与服务器端程序进行数据通信,传输并存储数据。
进一步,所述特征值为:播放量相对于播放时长的变化率、存在播放器事件的播放量相对于播放时长的变化率。
进一步,所述根据特征值获得特征系数从而判断网络流媒体是否为正常或异常进一步包括:将样本的特征值输入到SVM支持向量机学习算法系统计算出分类判别的特征系数a和b;如果学习算法计算出的播放时长、播放器事件相关特征系数分别为a和b,那么满足a*播放时长相关特征值+b*播放器事件相关特征值+c<=0.5条件的网络流媒体被认为是异常网络流媒体,否则为正常网络流媒体,其中c为常数。
进一步,所述用户数据包括:用户观看网络流媒体的来源信息、用户ip及cookieid信息、网络流媒体播放器操作事件、网络流媒体播放时间及播放时长、网络流媒体属性信息。
进一步,监控程序实时监控客户端和服务器端数据通信的状态,数据可以被发送到多个服务器上,当其中一台服务器出现异常无法正常接收数据时,监控程序实时通知客户端程序调整数据发送服务器对象。
进一步,所述列入黑名单的计算机需要满足以下条件:
(a)根据计算机上的某cookieid的总的播放量判断存在异常网络流媒体的播放,其异常网络流媒体的数量阈值和cookie中总的播放量有关,总的播放量越大异常网络流媒体数量阈值相应增大;
(b)多个异常网络流媒体属于不同节目;
(c)该cookieid上,异常网络流媒体对应节目的所有播放量满足:播放时长处于预定阈值内、无播放器事件。
本发明还提供了一种计算网络流媒体异常播放量并对其修正的方法,其包括以下步骤:
步骤(1)利用客户端程序将用户数据按照不同行为类型收集起来;
步骤(2)客户端程序通过包括tcp、udp协议的网络传输协议与服务器端程序进行数据通信,传输并存储数据;
步骤(3)筛选被刷点播量网络流媒体的行为日志,进行多维度的学习训练;建立正负样本库,计算正负样本具有区分正常网络流媒体和异常网络流媒体的多个特征值,所述特征值为:播放量相对于播放时长的变化率、存在播放器事件的播放量相对于播放时长的变化率;将样本的特征值输入到SVM支持向量机学习算法系统计算出分类判别的特征系数a和b;如果学习算法计算出的播放时长、播放器事件相关特征系数分别为a和b,那么满足a*播放时长相关特征值+b*播放器事件相关特征值+c<=0.5条件的网络流媒体被认为是异常网络流媒体,否则为正常网络流媒体,其中c为常数;
步骤(4)计算单机被刷网络流媒体的异常点播量;统计需要列入黑名单的计算机,计算分布式网络互刷网络流媒体所产生的异常点播量;对于某一检测出的特定异常网络流媒体,如果产生播放量的所在计算机落入黑名单中,满足播放时长处于预定阈值内,且不存在播放器事件则被认为是异常的播放量;
步骤(5)利用网络流媒体总播放量与异常播放量的差值修正网络流媒体的总播放量。6、根据权利要求5所述的方法,其特征在于:所述用户数据包括:用户观看网络流媒体的来源信息、用户ip及cookieid信息、网络流媒体播放器操作事件、网络流媒体播放时间及播放时长、网络流媒体属性信息。
进一步,监控程序实时监控客户端和服务器端数据通信的状态,数据可以被发送到多个服务器上,当其中一台服务器出现异常无法正常接收数据时,监控程序实时通知客户端程序调整数据发送服务器对象。
进一步,所述列入黑名单的计算机需要满足以下条件:
(a)根据计算机上的某cookieid的总的播放量判断存在异常网络流媒体的播放,其异常网络流媒体的数量阈值和cookie中总的播放量有关,总的播放量越大异常网络流媒体数量阈值相应增大;
(b)多个异常网络流媒体属于不同节目;
(c)该cookieid上,异常网络流媒体对应节目的所有播放量满足:播放时长处于预定阈值内、无播放器事件。
附图说明
图1为根据本发明的日志收集模块的工作示意图。
图2为根据本发明系统的模块示意图。
图3为根据本发明方法的流程图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步说明。
本发明的目的是检测互联网网络流媒体分享网站上基于某种目的被恶意刷点播量的网络流媒体,并计算其异常点播量使网络流媒体点播量数据恢复到真实量,如图2所示,根据本发明的系统包括用户行为日志收集模块,被刷点播量网络流媒体检测模块,被刷点播量网络流媒体异常点播量计算模块,网络流媒体点播量纠正模块。
如图1所示为用户行为日志收集模块的工作示意图,用户行为日志收集模块实现步骤如下:
步骤(1)当用户上网,产生各种行为和状态数据信息,客户端程序将数据按照不同行为类型收集起来。所述行为信息及状态数据信息包括:用户观看网络流媒体的来源信息、用户ip及cookieid信息、网络流媒体播放器操作事件、网络流媒体播放时间及播放时长、网络流媒体属性信息等;用户在观看网络流媒体时,这些信息是通过在网页中加入js代码获得并发送到服务器端。
步骤(2)客户端程序通过包括tcp、udp协议的多种网络传输协议与服务器端程序进行数据通信,传输并存储数据。
步骤(3)监控程序实时监控客户端和服务器端数据通信的状态,确保数据
准确无误的传输到服务器上保存。具体操作如下:数据可以被发送到多个服务器上,当其中一台服务器出现异常无法正常接收数据时,监控程序实时通知客户端程序调整数据发送服务器对象保证数据的准确性。
被刷点播量网络流媒体检测模块实现步骤如下:
步骤(1)选取由用户产生的大量正常播放网络流媒体和被刷点播量网络流媒体的行为日志进行多维度的学习训练。由于网络流媒体库中大部分是正常的,异常网络流媒体的来源有两种:一种是人为分析认定;另一种是通过前后端的分析,反映网络流媒体播放量的计数有两个,即前端和后端,正常情况下一次播放会发送两个不同的请求,两个计数保持一致,那么刷点播量工具只刷后端不刷前端,被刷点播量网络流媒体的行为日志就很好被筛选出来了。多维度的学习训练包括以下步骤:第一步:建立样本库(包括正样本和负样本,正样本为大量正常播放网络流媒体的日志,而负样本为被刷点播量网络流媒体的行为日志);第二步:计算正负样本具有区分正常网络流媒体和异常网络流媒体的多个特征值,所述特征值为:播放量相对于播放时长的变化率(即播放时长n分钟和播放时长为n+1分钟的点播量之间存在的变化率,简称为播放时长相关特征值)、存在播放器事件的播放量相对于播放时长的变化率(即播放时长n分钟和播放时长为n+1分钟的存在播放器事件的点播量之间存在的变化率,简称为播放器事件相关特征值)。当前一个变化率突变,而后一个变化率较小,那么存在异常的可能性就较大。第三步:将样本的特征值输入到SVM(支持向量机)学习算法系统计算出分类判别的特征系数a和b。
步骤(2)利用步骤(1)中提取的特征值对每天点播的网络流媒体进行分类判断,检测出被刷网络流媒体。如果学习算法计算出的播放时长、播放器事件相关特征系数分别为a和b,那么满足a*播放时长相关特征值+b*播放器事件相关特征值+c<=0.5条件的网络流媒体被认为是异常网络流媒体,否则为正常网络流媒体,其中c为常数。公式中的系数非人为确定,由学习算法以最高概率区分正负样本计算所得。使得用计算出的参数或公式去判断正负样本误差最小。
被刷点播量网络流媒体异常点播量计算模块实现步骤如下:
步骤(1)计算被刷网络流媒体的异常点播量;明显被刷的点播量根据预先确定的阈值进行判断:例如如果在一台电脑上在一天以内点击量超过100,同时大部分点播量的时间间隔小于1分钟,那么属于单机明显被刷的量直接作为异常量。
步骤(2)将存在作弊行为的计算机作为黑名单。与步骤(1)中单机刷播放量相对的是p2p分布式网络互刷播放量的作弊方法,这种方法的特点是1个网络流媒体被服务器随机分配到多台计算机(客户端)上产生播放,一个客户端上被服务器随机分配多个不相关的网络流媒体产生播放;每台计算机被一个唯一的相对稳定的cookieid标识(大多数用户在短时间内不会对浏览器中的cookieid做清理);那么,满足以下特点的计算机被作为作弊计算机计入黑名单:
(a)根据计算机上(某个cookieid)总的播放量判断存在异常网络流媒体的播放,其异常网络流媒体的数量阈值和cookie中总的播放量有关,总的播放量越大异常网络流媒体数量阈值相应增大,即动态变化(具体阈值为经验值);
(b)多个异常网络流媒体属于不同节目(一个电视剧下的所有集作为一个节目);
(c)cookieid上,异常网络流媒体对应节目的所有播放量必须满足:播放时长2-15分钟、无播放器事件。满足这种特点的计算机作弊的概率较大。
步骤(3)计算被刷网络流媒体在被刷时间段异常的点播量;对于某一检测出的特定异常网络流媒体,如果产生播放量的所在计算机落入步骤(2)中计算出的黑名单中,且满足播放时长为1-10分钟,不存在播放器事件则被认为是异常的播放量。
网络流媒体点播量纠正模块实现步骤如下:
步骤(1)利用被刷点播量网络流媒体异常点播量计算模块计算出的异常点播量和网络流媒体点播总量,计算网络流媒体正常点播量;
步骤(2)对保存了原有点播量的日志系统进行数据修正,给用户提供所计算的网络流媒体正常点播量。如图3所示,示出了根据本发明的方法的流程图,具体包括以下步骤:
步骤(1)利用客户端程序将用户数据按照不同行为类型收集起来;
步骤(2)客户端程序通过包括tcp、udp协议的网络传输协议与服务器端程序进行数据通信,传输并存储数据;
步骤(3)筛选被刷点播量网络流媒体的行为日志,进行多维度的学习训练;建立正负样本库,计算正负样本具有区分正常网络流媒体和异常网络流媒体的多个特征值,所述特征值为:播放量相对于播放时长的变化率、存在播放器事件的播放量相对于播放时长的变化率;将样本的特征值输入到SVM支持向量机学习算法系统计算出分类判别的特征系数a和b;如果学习算法计算出的播放时长、播放器事件相关特征系数分别为a和b,那么满足a*播放时长相关特征值+b*播放器事件相关特征值+c<=0.5条件的网络流媒体被认为是异常网络流媒体,否则为正常网络流媒体,其中c为常数;
步骤(4)计算单机被刷网络流媒体的异常点播量;统计需要列入黑名单的计算机,计算分布式网络互刷网络流媒体所产生的异常点播量;对于某一检测出的特定异常网络流媒体,如果产生播放量的所在计算机落入黑名单中,满足播放时长处于预定阈值内,且不存在播放器事件则被认为是异常的播放量;
步骤(5)利用网络流媒体总播放量与异常播放量的差值修正网络流媒体的总播放量。
本发明具有以下一些优点:1)在用户行为信息收集方面,实现了多维度的用户行为信息收集,以适应按网络流媒体分类、网络流媒体时长不同产生的不同行为特征的特点,在监控程序的控制下实现客户端到服务器端数据传输的完整性和准确性;2)在被刷点播量网络流媒体检测方面,从多维度行为特征上提取了区分正常网络流媒体和被刷点播量网络流媒体的典型特征,可以适应单机刷点播量、网络互刷等方式的刷点播量手段;3)在计算被刷网络流媒体异常点播量方面,通过利用普通用户观看多个作弊网络流媒体的概率较小、刷票用户观看多个作弊网络流媒体的概率较大的特点能比较精准的计算出异常网络流媒体的异常播放。