挖掘电视观看模式的数据处理系统及方法与流程

文档序号:12039345阅读:168来源:国知局
挖掘电视观看模式的数据处理系统及方法与流程
本发明涉及用户观看电视模式的挖掘,尤其涉及的是基于率失真理论的挖掘电视观看模式的数据处理系统及方法。

背景技术:
目前,用户习惯在消费品与服务提供方面起到至关重要的作用,而想要推广自己的产品和服务就必须了解使用该产品和服务的用户,针对该问题,现有技术中有很多解决方案,然而这些解决方案都不是很理想,因为用户的行为有很强的确定性因素。此外有些技术方案通过隐性方式研究用户反馈,比如使用用户的程序选择历史或观看历史去发现观看者的偏好,然而这种方式过于简单,不能真正揭示隐藏在用户行为下更深层次的模式。而在电视领域,对于用户观看模式的挖掘也决定了产品的服务质量,决定了电视产业的发展,由于一个家庭的组成多样化、不同家庭成员观看时间的重叠性特点、不可避免的意外干扰观看记录内容标题之间又存在的微妙联系等等,这些问题使得对用户观看模式的挖掘变得非常困难。用户观看历史记录中存在很强的自相关性,尤其对于稳定的家庭,在这种家庭中,电视的观看模式更易被发掘。如图1所示,其中圆形、三角和方形代表关键电视节目序列,‘X’代表其他非关键节目,而圆形、方形、三角形所代表的点在一个长时期的统计中呈现出周期反复性的特点。虽然自相关性研究被用于各种各样的数据统计分析之中,像如网络访问、音乐和音频、图像与视频等,但还没有人尝试将这种方式引入电视观看历史学习中。自相关性会被噪声点所掩盖(如不可预料的事)或者同一个家庭的多个模式常常会重叠在一起,而这些都是自相关性引入该领域所要面临的困难。也就是说如何在一个带有噪声的数据中发现模式和如何在用户使用历史相互交叉的记录中分割重叠模式,是现有技术人员所要面临的挑战。另一方面,在电影、电视节目、新闻、音乐、游戏等等的大量的用户数据中又存在着复杂的互相关联的关系。这些关系又必需在用户电视观看模式挖掘处理过程中予以考虑。因此,现有技术还有待于改进和发展。

技术实现要素:
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种挖掘电视观看模式的数据处理系统及方法,通过将电视用户观看模式挖掘问题转换为优化问题,并采用率失真理论解决该优化问题,进而挖掘出最优的用户观看行为模式。本发明解决技术问题所采用的技术方案如下:一种挖掘电视观看模式的数据处理系统,其中,包括数据收集模块,用于收集电视节目的观看历史数据;数据过滤模块,用于从数据收集模块收集的电视节目的观看历史数据中过滤识别出用户的观看历史数据,将噪声数据滤除;数据挖掘与特征分类模块,用于通过对存储有用户观看历史和电视节目信息的内容数据库进行数据挖掘与数据特征分类,找出用户的观看信息,并将特征分类后的用户观看信息形成一个聚类集;分析模块,用于分析用户观看历史内容特征和从数据挖掘与特征分类模块获取到的聚类集,从中选择分类,获取代表原始用户行为内容历史的观看历史数据集;模式挖掘模块,用于从分析模块获取的观看历史数据集中发掘出主要的用户观看模式集。所述的挖掘电视观看模式的数据处理系统,其中,所述模式挖掘模块包括:用户观看模式分析模块,用于将所述观看历史数据集进行数学模型化,生成用户的观看历史数据集,并对观看历史数据集进行重新架构;对比模块,用于对比观看历史数据集和用户观看模式分析模块重新架构的观看历史数据集,找出最优的用户观看模式组合。一种挖掘电视观看模式的数据处理方法,其中,包括以下步骤:A、数据收集模块预先收集电视节目的观看历史数据,并通过数据过滤模块从中过滤识别出用户的观看历史数据,滤掉噪声数据;B、数据挖掘与特征分类模块通过对存储有用户观看历史和电视节目信息的内容数据库进行数据挖掘与数据特征分类,找出用户的观看信息,并将特征分类后的用户观看信息形成一个聚类集;C、分析模块通过分析用户观看历史内容特征和从上一步获取到的聚类集,从中选择分类,获取代表原始用户行为内容历史的观看历史数据集;D、模式挖掘模块从所述观看历史数据集中发掘出主要的用户观看模式集,并输出。所述的挖掘电视观看模式的数据处理方法,其中,所述步骤D具体包括:D1、将所述观看历史数据集进行如下定义:指定N为用户特定的时间段的长度,{Vi}(i=0,1,...,N-1)是第i个时间点观看历史数据集;将用户观看模式定义为P(c,s,n,m,p),其中,c表示内容类别,s表示用户观看模式开始时间点,且s∈{0,1,...,N-1};n是用户观看行为发生周期的长度,且n∈{1,2,...,N/2};m表示周期重复次数,且m∈{1,...,N/n};p表示模式字符串长度,且p∈{1,...,n};定义{Pr(c,s,n,m,p)}(r=0,1,...,R-1)为用户观看模式的结果集,并通过所述结果集对观看历史数据集进行重新架构,结果定义为其中,R表示从历史数据中找出来的具有代表性的模式数量;D2、对比观看历史数据集{Vi}和重新架构的观看历史数据集找出差异最小的并通过确定最优的用户观看模式。所述的挖掘电视观看模式的数据处理方法,其中,对比观看历史数据集{Vi}和重新架构的观看历史数据集的步骤具体还包括:定义观看历史数据集{Vi}和重新架构的观看历史数据集的差异为失真度,并定义表达式量化衡量失真度,其中,所述的挖掘电视观看模式的数据处理方法,其中,当失真度最小时,观看历史数据集{Vi}和重新架构的观看历史数据集的差异最小,其中失真度最小为满足R≤RThreshold,RThreshold是模式数量限制条件。所述的挖掘电视观看模式的数据处理方法,其中,所述步骤D还采用拉格朗日乘子法实现,定义拉格朗日函数其中,λ为拉格朗日乘子,确定一个λ*,使u*=arg[minuJλ(u)],且满足R(u*)=RThreshold,u*表示满足R≤RThreshold的最优解。所述的挖掘电视观看模式的数据处理方法,其中,所述步骤D还包括:定义决策点向量U,而uk代表第k项决策点向量集(uk={(c,s,n,m,p)k,o}(o代表模式总数),以及定义代价函数Gk(uk-q,...,uk),表示第k项的最小代价,而GN(uN-q,...,uN)表示最后一项所需最小代价;根据给定q+1个决策向量集uk-q-1,...,uk-1计算出到uk-1项的代价函数Gk-1(uk-q-1,...,uk-1)的值,而到uk项的代价函数值不依赖u1,u2,...,uk-q-1的向量集,确定最优的用户观看模式数量。所述的挖掘电视观看模式的数据处理方法,其特征在于,采用K-means算法对所述内容数据库进行数据特征分类。所述的挖掘电视观看模式的数据处理方法,其特征在于,通过主成分分析的方法分析用户观看历史内容特征。本发明所提供的挖掘电视观看模式的数据处理方法,由于采用了将用户观看模式挖掘问题转换为最优化问题,并通过率失真理论解决最优化问题,进而挖掘出最优的电视用户观看模式,在用户观看电视时能够智能给出用户的电视观看模式,不仅方便了用户对电视节目的观看,而且还提升了电视产品的服务质量,利于产品的推广。附图说明图1是现有技术中采用符号显示的统计观看历史的坐标图。图2是本发明提供的挖掘电视观看模式的数据处理系统的结构示意图。图3是本发明提供的挖掘电视观看模式的数据处理系统中的模式挖掘模块的结构示意图。图4是本发明的系统工作流程图。图5是本发明的挖掘电视观看模式的数据处理方法的具体流程图。具体实施方式为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明利用用户观看历史的自相似特点,并将挖掘用户观看电视的模式转换到率失真优化问题上,利用失真度理论寻找解决方案。使用率失真理论来寻找用户观看模式,可以使原始历史记录统计信息与由代表观看模式重构统计出的信息达到差距最少化。这种新的用于观看模式的数据挖掘过程包括:内容分类、类别的选择原则和用户观看模式识别三部分。同时提出了一种高效的动态规划算法来解决所提出的优化问题。这个工作可以很方便用于解决其它具有自相似特点的数据统计问题,换句话说,可以容易的将其用于电视和电影节目推荐、广告与服务推荐、用户/访问者发现与识别、家庭与移动设备个性化、社交活动等等。本发明目标在于通过将挖掘用户观看模式问题转换为求解最优化问题,将用户的观看历史内容建立数学模型,并转换为最优化求解,进而挖掘出最优的用户观看模式。参见图2,图2是本发明提供的挖掘电视观看模式的数据处理系统的结构示意图,包括:数据收集模块10、用于收集电视节目的观看历史数据;数据过滤模块20,用于从数据收集模块10收集的电视节目的观看历史数据中过滤识别出用户的观看历史数据,将噪声数据滤除,比如和用户平时观看记录差异较大的数据;数据挖掘与特征分类模块30,用于通过对存储有用户观看历史和电视节目信息的内容数据库进行数据挖掘与数据特征分类,找出用户的观看信息,并将特征分类后的用户观看信息形成一个聚类集;分析模块40,用于分析用户观看历史内容特征和从数据挖掘与特征分类模块获取到的聚类集,从中选择分类,获取代表原始用户行为内容历史的观看历史数据集;模式挖掘模块50,用于从分析模块40获取的观看历史数据集中发掘出主要的用户观看模式集。其中,如图3所示,所述模式挖掘模块50还包括:用户观看模式分析模块51,用于将所述观看历史数据集进行数学模型化,生成用户的观看历史数据集,并对观看历史数据集进行重新架构;对比模块52,用于对比观看历史数据集和用户观看模式分析模块51重新架构的观看历史数据集,并通过找出两个观看历史数据集确定最优的用户观看模式集。基于上述挖掘电视观看模式的数据处理系统,本发明还提供了一种挖掘电视观看模式的数据处理方法,图4是本发明的系统工作流程图,主要包括以下步骤:程序开始后,进行数据收集与过滤;对内容数据库中的数据进行内容挖掘与分类;定义类别的选择原则;用户观看模式识别;用户观看模式输出;结合上述本发明的系统工作流程图,如图5所示,是本发明的具体方法流程图,主要包括以下步骤:步骤S10、数据收集模块预先收集电视节目的观看历史数据,并通过数据过滤模块从中过滤识别出用户的观看历史数据,滤掉噪声数据;步骤S20、数据挖掘与特征分类模块通过对存储有用户观看历史和电视节目信息的内容数据库进行数据挖掘与数据特征分类,找出用户的观看信息,并将特征分类后的用户观看信息形成一个聚类集;步骤S30、分析模块通过分析用户观看历史内容特征和从上一步获取到的聚类集,从中选择分类,获取代表原始用户行为内容历史的观看历史数据集;步骤S40、模式挖掘模块从所述观看历史数据集中发掘出主要的用户观看模式集,并输出。下面结合具体的实施例对上述步骤进行具体的说明。在步骤S10中,收集并过滤用户的观看历史数据主要是为后面的用户观看模式识别选出关键点数据,比如用户喜欢看的节目。这些数据包括用户在每天、每周或者每月中在固定时间点收看的节目的类型、观看持续时间、观看次数等等。在步骤S20中,内容数据库中存储的是用户的观看历史记录,还有电视节目信息,在进行数据挖掘与分类时采用K-means算法,也可采用其他的算法,找出有用的用户观看信息,并将用户的观看历史内容以一个聚类集的形式表示出来,并对这一类别做一综合描述,方便后续的处理。在步骤S30中,对用户观看历史内容特征和步骤S20中形成的聚类集进行分析,自动从中选择分类,获取最能代表原始用户观看内容历史的数据,并采用数据集的形式表示。其中对用户观看历史内容特征的分析可以采用主成分分析(PCA:PrincipalComponentAnalysis),或者采用主特征分析算法(PFA:PotentialFieldApproach)等等。步骤S40是对观看历史数据集进行发掘,发掘主要的用户观看模式,而模式的数量与分类数量是密切相关的,模式识别也是本发明的重点和难点。因为必须保证模式识别算法的鲁棒性,其主要的难点如下所述:1)典型的家庭都是由多个成员所组成,因此所有的家庭成员观看电视节目的历史组成了该家庭的观看历史。这样每个人的历史都是难以独立抽离出来;2)当前电视用户识别技术都不能完全适用于遥控系统与电视系统中,因此如果不通过明确的用户登录我们是无法分辨出使用电视的用户;3)一个用户也许会有广泛兴趣爱好,他(她)的兴趣爱好也会随着时间而慢慢转移,这也造成了识别用户模式的难度;4)节目之间又有着微妙的关联,而这些关联之下隐藏着一些模式,但这些模式是很难被发掘的;5)很多意外的事件发生,例如大事件的发生,会改变用户短期的日常观看模式,我们如何将其与噪声的区别。为了降低技术处理复杂度,本发明将一个完整的时间划分成多个时间带,因为不同年龄段的用户观看电视的主要时间带是不同的,例如大部分的小孩会在下午晚些时候到傍晚早些时候看电视,而有工作的父母会在午夜看电视。当然时间带的划分可以由家庭来确定,不同的家庭时间带划分不同。因此可以很容易的找到适合一个家庭的时间带划分。这样就将一个复杂的问题用时间带划分的方法进行了简化,并将模式识别的数据进行公式化,将模式识别问题转换为最优化求解问题。以下对模式识别数据的公式化及将模式识别问题转换为最优化求解问题的过程进行详细的说明。本发明是从用户的一段历史数据中挖掘出用户观看模式,所以用N来代表用户特定的时间段的长度,{Vi}(i=0,1,...,N-1)表示第i个时间点观看历史数据集,Vi数据集可以为空,代表着这个时间段没有观看记录;如果有记录则记录集为Vi={Tij}(j=0,1,...,M-1),其中M代表第i个时间点观看的节目总数量;c(Tij)代表Tij所属类别,最终从这些数据中挖掘出有用的用户观看模式数据。用户观看模式可以被定义为P(c,s,n,m,p)形式的数学表达式,c代表内容类别,s代表模式开始时间点,且s∈{0,1,...,N-1};n是行为发生周期长度,且n∈{1,2,...,N/2};m代表周期重复次数且m∈{1,2,...,N/n};p表示模式字符串长度,且p∈{1,...,n}。例如,对于P0(爱情,20120206180000,1,3,1),该P0表示,从2012/2/6号开始,在晚上18:00的时候,每隔1天,爱情类型出现一次,己循环3次,长度为1天;对于P1(p0,20120206180000,2,2,5),该P1表示,从2012/2/6号开始,在18:00的时候,每隔2天,p0类型出现一次,己循环2次,长度为5天。有了以上的周期性规律,就可以从p0中推测出每个星期的1,3,5的晚上18:00有较高的概率去看爱情类型节目。与K-means算法类似,通过集合的形式限定一个输出集大小,其结果集定义为{Pr(c,s,n,m,p)}(r=0,1,...,R-1),其中R代表要从历史数据中找出来的具有代表性的模式数量。下面比较与原始数据的相似性:设经过{Pr(c,s,n,m,p)}(r=0,1,...,R-1)重构观看历史数据集通过与原始观看历史数据集进行比对,两者之间的差异就是率失真,这里将其称为失真度,可以通过表达式(1)用来量化衡量失真度。其中,通过表达式(3),可以很容易得出:从观看模式生成的观看历史数据集与原始观看历史数据集中数据会有多次不匹配的计算,然而最理想的情况是只计算一次,但是这种情况并不会影响算法的正确性,依然可以找出最优的最具代表的用户观看模式集,并使失真度最小。由于是由用户观看模式集{Pr(c,s,n,m,p)}生成,所以有可能是空或由多个观看模式数据组成,R就是这个模式的组合数。本发明最重要的工作是从中找出符合条件的最具代表性的用户观看模式,而由这些模式重构的观看历史数据集与原始观看历史数据集的失真率最小。假设选择从最开始就是最优的与原始数据失真度最小,那么R越大,找出的模式则越多,与原始数据集失真度越小,即D越小。因此可以将问题转换成为在条件R下的最优化问题求解,其结果满足表达式(4):满足R≤RThreshold(4)其中RThreshold是模式数量限制条件。而本发明针对公式(4)所代表的问题,采用拉格朗日乘子法来处理模式限制问题,而整个问题可以由图论中的最短路径算法来解决。假定U是所有可能的决策点向量集,而uk代表第k项决策点向量集(uk={(c,s,n,m,p)k,o}(o代表模式总数))。表达式(5)为拉格朗日函数:λ为拉格朗日乘子。如果存在一个λ*使得u*=arg[minuJλ(u)]表达式成立,且满足R(u*)=RThreshold,那么u*就是表示表达式(4)的最优解。因此表达式(4)的解可以等价转换为解Jλ(u),而Jλ(u)可以通过找到一个适当的拉格朗日乘子解出。由于每个模式的形成都依赖于该类型对象附近时间段内的对象。在不失一般性的前提下,本发明假设一个类型对象是否属于一个己知类型模式,仅与它之前的q个类型对象所包含的模式相关。为了量化解决最优化问题,本发明定义代价函数Gk(uk-q,...,uk),它代表到第k项最小的代价,GN(uN-q,...,uN)代表到最后一项所需最小代价。因此可以将表达式(5)的最优化问题转化为表达式(6)的解:通过限定依赖集可以大大提高算法的效率,假设根据给定q+1个决策向量集uk-q-1,...,uk-1己计算出到uk-1项的代价函数Gk-1(uk-q-1,...,uk-1)的值,到uk项的代价函数值不依赖u1,u2,...,uk-q-1等的向量集。上述描述可以被表达成为(7)的数学表达形式:其中rk(uk-q,...,uk)代表到uk新增用户观看模式数量,其中不包括在uk-q,...,uk-1的用户观看模式数,Rk(uk-q,...,uk)代表到K项用户观看模式总数量。从表达式(7)中可以观察到用户模式是可以被叠加的,例如Pr(c,s,n,m,p)可以看成是两个用户观看模式Pr(c,s,n,1,p)和Pr(c,s+n,n,m-1,p)的组合,而与原始记录集的失真度是这两个子模式失真度的累记,但不会影响R的值。再做下一次优化迭代计算的时候其值是不依赖于前面的过程,这个特点决定了本发明可以使用动态规划来处理此问题。优选地,上述问题还可以图论中有向无环图的最短路径算法求解。算法的时间复杂度为O(N*|U|q+1)(|U|为U的基数),可以看出其时间复杂度与q的成指数关系。总的来说,q是一个小的数目(一般不会超过14,因为对于一个实时的商用系统,短期的用户行为更加贴切用户当前的使用习惯),所以本算法的效率要远完高于穷举法的指数级时间复杂度。本发明提供的一种挖掘电视观看模式的数据处理系统及方法,将发掘隐藏在用户观看历史下的用户观看模式的问题映射成为可以使用率失真理论的优化问题,通过给定用户观看历史记录,本发明能够很高效的找出用户观看模式,并且保证由这些用户观看模式重构出的数据与原始数据失真率最小,本发明不仅方便了用户对电视节目的观看,而且还提升了电视产品的服务质量,利于产品的推广。应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1