技术领域
[0001] 本
发明涉及IPTV技术领域和推荐技术领域,具体涉及一种利用人工神经网络推荐IPTV直播频道的方法及系统。
背景技术
[0002] 随着技术的不断进步,电视产业蓬勃发展,电视节目内容日渐丰富,朝着多元化的方向发展。其中,IPTV以其鲜明的交互特性深受广大用户的青睐。与此同时,问题出现了,用户享受观看节目的愉悦之后,需要在浩如烟海的频道中不断切换来选中自己感兴趣的下一个频道,长时间的操作降低了用户体验,且十分浪费资源。虽然有的系统已经设计了检索功能,但用户对自己想看的节目仍然没有一个确定的概念,仅仅局限于检索电视台提供的少数节目,检索功能得不到充分利用。因此,频道推荐成为用户的重要需求和亟待解决的问题。
[0003]
申请号为201610258946.7的中国发明
专利公开了一种基于电视机顶盒的视频推荐系统,其中的推荐引擎混合使用了协同过滤和内容过滤,从用户的历史行为中分析其兴趣,将符合用户兴趣的视频推荐给用户。申请号为201310684807.7的中国发明专利公开的视频推荐系统及方法中,系统需要通过信息获取模
块获取用户个人信息、社交网络信息等多源数据,以此分析用户的性格、情绪和喜好,从而为用户推荐其感兴趣的频道。申请号为200410083188.7的中国发明专利公开的电视频道推荐系统及推荐方法,根据记录的收看时间和频道序号来计算每个频道的推荐分值,向用户推荐分值最大的频道。申请号为
201110203368.4的中国发明专利公开了一种电视频道推荐系统及方法,其中包括了前端系统和终端系统,前端系统包括用户行为采集
服务器和智能分析服务器,智能分析服务器将信息进行一系列处理后得到用户行为轨迹,经过进一步处理得到汇总信息,而后将节目库中与之匹配的节目推荐给用户。但
现有技术大多是针对IPTV点播频道进行推荐,且需要过多的用户属性,例如用户观看的节目信息等,适用范围较窄。
发明内容
[0004] 本发明的目的是针对现有技术的不足,提供了一种利用人工神经网络推荐IPTV直播频道的方法,所述方法融合了多种人工神经网络为用户进行推荐,不需要过多的用户属性,适用范围更广。
[0005] 本发明的另一目的在于提供一种利用人工神经网络推荐IPTV直播频道的系统。
[0006] 本发明的目的可以通过如下技术方案实现:
[0007] 一种利用人工神经网络推荐IPTV直播频道的方法,所述方法包括以下步骤:
[0008] S1、选取滑动窗口天数ΔT,并取[t-ΔT,t]
时间窗口内的数据作为原始
训练数据,其中t表示训练数据的结束日期,时间t不得大于等于用户当前观看的日期,原始训练数据包含以下数据结构<设备号,进入观看时刻,观看频道,观看时长>,其中设备号不局限于机顶盒设备号;
[0009] S2、对提取的原始训练数据进行数据清洗,去除用户因为快速切换频道所产生的噪声数据,清洗后的数据能够表现该用户的行为特征;
[0010] S3、对清洗后的数据进行训练,针对每个设备号得到各自设备的训练模型,每个设备在t+1天使用与其对应的训练模型进行预测,设备实时采集用户当前观看频道的信息,并将该信息送入已训练的模型中进行预测,为相应设备进行推送;
[0011] S4、在当前日期结束时,将原始训练数据窗口结束日期设置为t+1,重复步骤S1。
[0012] 进一步地,步骤S2的具体过程为:将原始训练数据中用户观看时长小于10秒及大于3小时的记录进行删除,去除原始训练数据中用户观看时的无关属性,保留的观看属性为<设备号,当前观看频道,下一观看频道,日期>,表示设备号在该日期内所观看的频道及观看该频道后的下一频道,日期由原始训练数据中进入观看的时刻得来,且清洗后的数据按照用户的观看时间的升序进行排列。
[0013] 进一步地,步骤S3中对清洗后的数据进行训练能够采取三种方法:循环神经网络推荐法、反向神经网络推荐法或多网络冷热频道混合推荐法。
[0014] 进一步地,步骤S3中对清洗后的数据进行训练采用的是循环神经网络推荐法,具体过程为:
[0015] S3.1、将清洗后的数据根据每台设备号进行划分,并得到每个用户的观看序列α={C1,C2,…,Cn},观看序列按照用户的观看时间先后进行排列,Ci表示该设备在训练窗口ΔT内第i次观看的频道;
[0016] S3.2、对每个用户的观看序列进行重构,即将观看序列α从C1到Cm按照序列长度为m向后滑动,其中C1至Cm构成第一个序列,Cm+1为该序列的标签,最终将观看序列α分割为n-m+1个长度为m的序列,且每个序列的标签为该序列末尾频道的下一频道,切分后的每个序列内按照该用户的观看次序进行排列;
[0017] S3.3、按照用户,将每个序列输入至循环神经网络中进行训练,最终得到每个序列的
预测模型;
[0018] S3.4、设备在t+1天实时采集用户的观看信息,包括以下结构:<设备号,当前频道,日期>,将当前频道以序列长度为m输入至已训练好的该设备预测模型当中,并将预测模型输出的频道号向对应设备进行推送。
[0019] 进一步地,步骤S3中对清洗后的数据进行训练采用的是反向神经网络推荐法,具体过程为:
[0020] S3.1、将清洗后的数据根据每台设备号进行划分,并得到每个用户的观看序列α={C1,C2,…,Cn},观看序列按照用户的观看时间先后进行排列,Ci表示该设备在训练窗口ΔT内第i次观看的频道;
[0021] S3.2、训练数据集的构造,为每个用户的观看序列进行标签标注,其中频道Ci的标签为Ci+1,Ci+1为用户U观看频道Ci的下一个频道,针对每个用户的观看序列α={C1,C2,…,Cn}得出标签序列L={C2,C3…,Cn+1},即观看序列α中的频道C1对应标签为C2,频道Cn对应标签为Cn+1,若Cn为当天观看的最后一个频道,则标签Cn+1设为0,表示关机;
[0022] S3.3、将每个用户的观看序列α及其对应的标签序列L输入进反向神经网络当中,得到针对每个用户的训练模型;
[0023] S3.4、设备在t+1天实时采集用户的观看信息,包括以下结构:<设备号,当前频道>,按照设备号将当前频道输入至已训练好的该设备预测模型当中,并将模型输出的频道号向对应设备进行推送。
[0024] 进一步地,步骤S3中对清洗后的数据进行训练采用的是多网络冷热频道混合推荐法,具体过程为:
[0025] S3.1、将清洗后的数据按照设备号进行划分,并统计每个用户在时间窗口[t-ΔT,t]内每个频道的观看
频率,设定冷
门频道
阈值为ρ%,观看频率小于等于ρ%的频道认定为冷门频道,得到冷门频道集合Coldi={C1,C2……,Cx},Coldi表示用户i的冷门频道集合,观看频率大于ρ%的频道认定为热门频道,得到热门频道集合Hoti={C1,C2……,Cy},Hoti表示用户i的热门频道集合;
[0026] S3.2、训练每个用户的冷门频道预测模型和热门频道预测模型,即针对每个用户的冷门频道,采用反向神经网络法,得到每个用户的冷门频道预测模型;针对每个用户的热门频道,采用循环神经网络法,得到每个用户的热门频道预测模型;
[0027] S3.3、设备在t+1天实时采集用户观看信息,包括以下结构:<设备号,当前频道,日期>,将当前信息输入到已经训练好的该设备模型中,若当前观看的频道在该用户的冷门频道集合Coldi内,则使用该用户的冷门频道预测模型进行预测;若当前观看的频道在该用户的热门频道集合Hoti内,则使用该用户的热门频道预测模型进行预测;将预测出的前N个频道向相应用户进行推送。
[0028] 进一步地,所述方法采用缓存器存储每次为每个用户推荐的频道,若用户为开机用户,则为该用户推荐存储在缓存器中最近一次推荐的频道。
[0029] 本发明的另一目的可以通过如下技术方案实现:
[0030] 一种利用人工神经网络推荐IPTV直播频道的系统,包括数据清洗模块、推荐模块和推送模块,原始训练数据在数据清洗模块中进行数据清洗后,通过推荐模块进行推荐,其中,推荐模块包括区分每个用户冷热频道的冷热频道区分器、对清洗后的原始训练数据进行训练的训练器和对每个用户的热门频道进行实时预测的预测器,推荐结果送入推荐模块为用户进行推送。
[0031] 本发明与现有技术相比,具有如下优点和有益效果:
[0032] 本发明所述的利用人工神经网络推荐IPTV直播频道的方法,仅仅需要获取用户的频道观看记录,不需要其他视频数据和描述,就可以通过长短期记忆网络建立训练模型,实时向用户提供可能感兴趣的推荐频道列表,大大提升了用户体验;另外,本发明所提出的个性化实时频道推荐系统,利用滑动窗口不断地更新用户观看数据,从而建立新的推荐模型,可以实时向用户推荐其感兴趣的频道,提高了命中率和用户体验。
附图说明
[0033] 图1为本发明利用人工神经网络推荐IPTV直播频道的方法的
流程图。
[0034] 图2为本发明采用循环神经网络推荐法对清洗后的数据进行训练的示意图。
[0035] 图3为本发明采用反向神经网络推荐法对清洗后的数据进行训练的示意图。
[0036] 图4为本发明采用多网络冷热频道混合推荐法对清洗后的数据进行训练的示意图。
具体实施方式
[0037] 下面结合
实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
[0038] 实施例1:
[0039] 本实施例提供了一种利用人工神经网络推荐IPTV直播频道的方法,所述方法的流程图如图1所示,包括以下步骤:
[0040] S1、选取滑动窗口天数ΔT,并取[t-ΔT,t]时间窗口内的数据作为原始训练数据,其中t表示训练数据的结束日期,时间t不得大于等于用户当前观看的日期,原始训练数据包含以下数据结构<设备号,进入观看时刻,观看频道,观看时长>,其中设备号不局限于机顶盒设备号;
[0041] S2、对提取的原始训练数据进行数据清洗,去除用户因为快速切换频道所产生的噪声数据,清洗后的数据能够表现该用户的行为特征;
[0042] 具体过程为:将原始训练数据中用户观看时长小于10秒及大于3小时的记录进行删除,去除原始训练数据中用户观看时的无关属性,保留的观看属性为<设备号,当前观看频道,下一观看频道,日期>,表示设备号在该日期内所观看的频道及观看该频道后的下一频道,日期由原始训练数据中进入观看的时刻得来,且清洗后的数据按照用户的观看时间的升序进行排列。
[0043] S3、对清洗后的数据进行训练,针对每个设备号得到各自设备的训练模型,每个设备在t+1天使用与其对应的训练模型进行预测,设备实时采集用户当前观看频道的信息,并将该信息送入已训练的模型中进行预测,为相应设备进行推送;
[0044] 其中,对清洗后的数据进行训练能够采取三种方法:循环神经网络推荐法、反向神经网络推荐法或多网络冷热频道混合推荐法。
[0045] 采用循环神经网络推荐法的示意图如图2所示,具体过程为:
[0046] S3.1、将清洗后的数据根据每台设备号进行划分,并得到每个用户的观看序列α={C1,C2,…,Cn},观看序列按照用户的观看时间先后进行排列,Ci表示该设备在训练窗口ΔT内第i次观看的频道;
[0047] S3.2、对每个用户的观看序列进行重构,即将观看序列α从C1到Cm按照序列长度为m向后滑动,其中C1至Cm构成第一个序列,Cm+1为该序列的标签,最终将观看序列α分割为n-m+1个长度为m的序列,且每个序列的标签为该序列末尾频道的下一频道,切分后的每个序列内按照该用户的观看次序进行排列;
[0048] S3.3、按照用户,将每个序列输入至循环神经网络中进行训练,最终得到每个序列的预测模型;
[0049] S3.4、设备在t+1天实时采集用户的观看信息,包括以下结构:<设备号,当前频道,日期>,将当前频道以序列长度为m输入至已训练好的该设备预测模型当中,并将预测模型输出的频道号向对应设备进行推送。
[0050] 采用反向神经网络推荐法的示意图如图3所示,具体过程为:
[0051] S3.1、将清洗后的数据根据每台设备号进行划分,并得到每个用户的观看序列α={C1,C2,…,Cn},观看序列按照用户的观看时间先后进行排列,Ci表示该设备在训练窗口ΔT内第i次观看的频道;
[0052] S3.2、训练数据集的构造,为每个用户的观看序列进行标签标注,其中频道Ci的标签为Ci+1,Ci+1为用户U观看频道Ci的下一个频道,针对每个用户的观看序列α={C1,C2,…,Cn}得出标签序列L={C2,C3…,Cn+1},即观看序列α中的频道C1对应标签为C2,频道Cn对应标签为Cn+1,若Cn为当天观看的最后一个频道,则标签Cn+1设为0,表示关机;
[0053] S3.3、将每个用户的观看序列α及其对应的标签序列L输入进反向神经网络当中,得到针对每个用户的训练模型;
[0054] S3.4、设备在t+1天实时采集用户的观看信息,包括以下结构:<设备号,当前频道>,按照设备号将当前频道输入至已训练好的该设备预测模型当中,并将模型输出的频道号向对应设备进行推送。
[0055] 采用多网络冷热频道混合推荐法的示意图如图4所示,具体过程为:
[0056] S3.1、将清洗后的数据按照设备号进行划分,并统计每个用户在时间窗口[t-ΔT,t]内每个频道的观看频率,设定冷门频道阈值为ρ%,观看频率小于等于ρ%的频道认定为冷门频道,得到冷门频道集合Coldi={C1,C2……,Cx},Coldi表示用户i的冷门频道集合,观看频率大于ρ%的频道认定为热门频道,得到热门频道集合Hoti={C1,C2……,Cy},Hoti表示用户i的热门频道集合;
[0057] S3.2、训练每个用户的冷门频道预测模型和热门频道预测模型,即针对每个用户的冷门频道,采用反向神经网络法,得到每个用户的冷门频道预测模型;针对每个用户的热门频道,采用循环神经网络法,得到每个用户的热门频道预测模型;
[0058] S3.3、设备在t+1天实时采集用户观看信息,包括以下结构:<设备号,当前频道,日期>,将当前信息输入到已经训练好的该设备模型中,若当前观看的频道在该用户的冷门频道集合Coldi内,则使用该用户的冷门频道预测模型进行预测;若当前观看的频道在该用户的热门频道集合Hoti内,则使用该用户的热门频道预测模型进行预测;将预测出的前N个频道向相应用户进行推送。
[0059] S4、在当前日期结束时,将原始训练数据窗口结束日期设置为t+1,重复步骤S1。
[0060] 实施例2:
[0061] 本实施例提供了一种实施所述利用人工神经网络推荐IPTV直播频道的方法的系统,包括数据清洗模块(101)、推荐模块(102)和推送模块(103),原始训练数据在数据清洗模块(101)中进行数据清洗后,通过推荐模块(102)进行推荐,其中,推荐模块(102)包括区分每个用户冷热频道的冷热频道区分器(201)、对清洗后的原始训练数据进行训练的训练器(202)和对每个用户的热门频道进行实时预测的预测器(203),推荐结果送入推荐模块(102)为用户进行推送。
[0062] 以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉
本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明专利构思加以等同替换或改变,都属于本发明专利的保护范围。