CN106599226B - 一种内容推荐方法及内容推荐系统 - Google Patents

一种内容推荐方法及内容推荐系统 Download PDF

Info

Publication number
CN106599226B
CN106599226B CN201611177415.1A CN201611177415A CN106599226B CN 106599226 B CN106599226 B CN 106599226B CN 201611177415 A CN201611177415 A CN 201611177415A CN 106599226 B CN106599226 B CN 106599226B
Authority
CN
China
Prior art keywords
content
contents
vector
user
target user
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
Application number
CN201611177415.1A
Other languages
English (en)
Other versions
CN106599226A (zh
Inventor
王娜
王文君
高睿
汪景福
陈昭南
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen University
Original Assignee
Shenzhen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen University filed Critical Shenzhen University
Priority to CN201611177415.1A priority Critical patent/CN106599226B/zh
Publication of CN106599226A publication Critical patent/CN106599226A/zh
Application granted granted Critical
Publication of CN106599226B publication Critical patent/CN106599226B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据分析与处理技术领域,尤其涉及一种用于向目标用户推荐感兴趣内容的内容推荐方法及内容推荐系统。本发明基于自然语言处理中的连续词袋模型对各用户的历史查看内容序列进行学习训练得到连续词袋模型,从而得到每个内容的内容向量,再根据每个内容的内容向量获取目标用户查看过的内容的相似内容,然后计算目标用户对各相似内容的兴趣度,最后提取出目标用户兴趣度最高的预设数量个内容推荐给目标用户。本发明不利用内容和用户的描述信息、属性或标签,不会因内容和用户的信息的缺失导致算法的鲁棒性变差。同时,本发明计算速度远超协同过滤和基于内容的推荐算法。再者,本发明将内容表示成等长的向量,可迎合各种现成的相似度算法。

Description

一种内容推荐方法及内容推荐系统
技术领域
本发明涉及数据分析与处理技术领域,尤其涉及一种用于向目标用户推荐感兴趣内容的内容推荐方法及内容推荐系统。
背景技术
随着人们逐渐步入信息时代,当今世界正处于信息大爆炸的环境下,并且面临着严峻的信息过剩问题。仅在2011年,全球数据量就达到了1.8ZB,相当于全世界每个人产生200GB以上的数据。这种增长趋势仍在加速,据保守预计,接下来几年中,数据将始终保持每年50%的增长速度。如今,各大电商、视频播放等平台用户每天都将产生海量的数据,因此如何有效地利用用户产生的数据是当今互联网企业亟需解决的问题。这时候个性化的推荐系统作为数据挖掘的手段便应运而生了。推荐系统指的是互联网站向用户提供产品信息或建议,让用户发现自己潜在的兴趣和需求并帮助用户选择产品。
传统的相关视频推荐算法有基于视频的协同过滤和基于内容的相关推荐。基于视频的协同过滤使用用户对视频的偏好,发现视频间的相似度,然后根据用户的历史偏好信息将相似视频推荐给用户。基于视频的协同过滤根据用户-视频评分矩阵计算视频间的相似度,从而确定目标视频的邻居视频,再向目标用户推荐与其历史观看的视频相似度高的视频,其中查找用户观看历史视频的邻居视频是协同过滤算法的关键步骤。其优点在于,不依赖用户的属性信息和视频的内容信息,仅仅通过分析大量用户对视频的行为数据,从中找到特定的行为模式,据此来预测用户的兴趣并作出相关推荐。它不需要对视频或者用户进行严格的建模就可以作出令人满意的推荐结果。基于内容的推荐算法是根据视频的描述信息发现视频之间的相关性,这是推荐系统出现之初应用最为广泛的推荐机制,其核心思想在于利用视频的描述信息发现视频之间的相关性,然后基于用户以往的喜好记录推荐给用户相似的视频。其优点在于易于实现,不需要用户数据因此不存在稀疏性和冷启动问题,而且基于视频本身的特征也不会出现过度推荐热门的问题。
基于视频的协同过滤的缺点有:①推荐效果依赖于用户历史偏好数据的多少和准确性;②用户历史和偏好是用稀疏矩阵进行存储的,而且稀疏矩阵上的计算有明显的问题,少部分人的错误偏好对准确度有较大的影响;③由于用户和视频的数量非常大,因此用户-视频矩阵的计算量会非常大,在实时推荐实现时难度也会较大。基于内容的相关推荐的缺点有:①视频的描述信息会有缺失,导致无法提取视频属性;②抽取的视频特征纪要保证准确性又要具有一定的实际意义,否则很难保证推荐结果的相关性。
上述缺陷同样也出现在其他诸如音乐、新闻、商品的推荐过程中。
发明内容
本发明所要解决的技术问题是,提供一种内容推荐方法及内容推荐系统,不使用内容的描述信息或属性,也不使用用户的描述信息或属性,即可实现内容的准确推荐。本发明是这样实现的:
一种内容推荐方法,包括如下步骤:
步骤A:获取所有用户的内容查看历史数据,每个用户的内容查看历史数据包括该用户查看过的所有内容以及各内容的查看时间;
步骤B:按照查看时间先后顺序分别对每个用户查看过的所有内容进行排序,得到每个用户的历史查看内容序列;
步骤C:对每个用户的历史查看内容序列进行连续词袋模型训练,得到连续词袋模型,从而得到每个内容的内容向量;
步骤D:获取目标用户在预设时间窗口内查看过的内容的集合;
步骤E:从所有用户查看过的所有内容中分别提取内容向量与所述集合中的每个内容最相似的第一预设数量个内容;
步骤F:计算目标用户对提取出的所有内容中的每个内容的兴趣度;设目标用户为u,所述集合为M,提取的内容为j,内容向量与内容j最相似的第二预设数量个内容的集合为N,则目标用户u对内容j的兴趣度Puj的计算方法为:
Figure GDA0002285203030000031
其中,Wij表示内容i与内容j的内容向量相似度,Pui表示目标用户u对内容i的兴趣度;
步骤G:根据目标用户对内容的兴趣度高低从提取出的所有内容中提取出目标用户兴趣度最高的第三预设数量个内容推荐给目标用户。
进一步地,所述内容为网络上的视频、音乐、新闻或商品,所述查看为点击所述内容的链接。
进一步地,所述步骤C包括如下步骤:
步骤C1:建立连续词袋模型的输入矩阵V和输出矩阵U,并对所述输入矩阵V和输出矩阵U进行随机初始化;其中,V∈Rn×|V|,U∈R|V|×n,n表示向量维度;
步骤C2:从所述每个用户的历史查看内容序列中选取一个内容xc作为中心内容,并读取中心内容的前后的各m个内容,并对读取出的2m个内容进行独热码编码,得到这2m个内容的独热码;该2m个内容的独热码分别表示如下:
x(c-m),...,x(c-1),x(c+1),...,x(c+m)
步骤C3:将这2m个内容的独热码分别乘以所述输入矩阵,得到这2m个内容的输入内容向量;该2m个内容的输入内容向量分别表示如下:
vc-m=Vx(c-m),...vc-1=Vx(c-1),vc+1=Vx(c+1),...,vc+m=Vx(c+m);vi表示内容wi的输入内容向量;
步骤C4:对所述2m个内容的输入内容向量求平均值
Figure GDA0002285203030000032
Figure GDA0002285203030000033
步骤C5:根据所述平均值计算得分向量z:
Figure GDA0002285203030000034
步骤C6:将所述得分向量转换为概率分布
Figure GDA0002285203030000041
步骤C7:利用交叉熵作为目标函数计算中心内容在输出矩阵U中的内容向量与所述概率分布之间的误差:
Figure GDA0002285203030000042
其中,
Figure GDA0002285203030000043
为步骤C6中得到的概率分布,y为中心内容在输出矩阵U中的内容向量;
步骤C8:根据所述误差得到最终的优化目标函数:
Figure GDA0002285203030000044
ui表示内容wi的输出内容向量;
步骤C9:采用梯度下降法对输出矩阵中的中心内容的内容向量和输入矩阵中的2m个内容对应的内容向量进行更新,得到最终的输入矩阵V和输出矩阵U,从而得到所述连续词袋模型。
一种内容推荐系统,包括:
内容查看历史数据获取模块,用于获取所有用户的内容查看历史数据和目标用户在预设时间窗口内查看过的内容的集合;每个用户的内容查看历史数据包括该用户查看过的所有内容以及各内容的查看时间;
历史查看内容序列生成模块,用于按照查看时间先后顺序分别对每个用户查看过的所有内容进行排序,得到每个用户的历史查看内容序列;
连续词袋模型训练模块,用于对每个用户的历史查看内容序列进行连续词袋模型训练,得到连续词袋模型,从而得到每个内容的内容向量;
相似内容提取模块,用于从所有用户查看过的所有内容中分别提取内容向量与所述集合中的每个内容最相似的第一预设数量个内容;
兴趣度计算模块,用于计算目标用户对提取出的所有内容中的每个内容的兴趣度;设目标用户为u,所述集合为M,提取的内容为j,内容向量与内容j最相似的第二预设数量个内容的集合为N,则目标用户u对内容j的兴趣度Puj的计算方法为:
Figure GDA0002285203030000051
其中,Wij表示内容i与内容j的内容向量相似度,Pui表示目标用户u对内容i的兴趣度;
推荐内容提取模块,用于根据目标用户对内容的兴趣度高低从提取出的所有内容中提取出目标用户兴趣度最高的第三预设数量个内容推荐给目标用户。
进一步地,所述内容为网络上的视频、音乐、新闻或商品,所述查看为点击所述内容的链接。
进一步地,所述连续词袋模型训练模块包括:
矩阵建立模块,用于建立连续词袋模型的输入矩阵V和输出矩阵U,并对所述输入矩阵V和输出矩阵U进行随机初始化;其中,V∈Rn×|V|,U∈R|V|×n,n表示向量维度;
独热码编码模块,用于从所述每个用户的历史查看内容序列中选取一个内容xc作为中心内容,并读取中心内容的前后的各m个内容,并对读取出的2m个内容进行独热码编码,得到这2m个内容的独热码;该2m个内容的独热码分别表示如下:
x(c-m),...,x(c-1),x(c+1),...,x(c+m)
输入内容向量计算模块,用于将这2m个内容的独热码分别乘以所述输入矩阵,得到这2m个内容的输入内容向量;该2m个内容的输入内容向量分别表示如下:
vc-m=Vx(c-m),...vc-1=Vx(c-1),vc+1=Vx(c+1),...,vc+m=Vx(c+m);vi表示内容wi的输入内容向量;
向量平均值计算模块,用于对所述2m个内容的输入内容向量求平均值
Figure GDA0002285203030000052
Figure GDA0002285203030000061
得分向量计算模块,用于根据所述平均值计算得分向量z:
Figure GDA0002285203030000062
概率分布转换模块,用于将所述得分向量转换为概率分布
Figure GDA0002285203030000063
误差计算模块,用于利用交叉熵作为目标函数计算中心内容在输出矩阵U中的内容向量与所述概率分布之间的误差:
Figure GDA0002285203030000064
其中,
Figure GDA0002285203030000065
为概率分布转换模块中得到的概率分布,y为中心内容在输出矩阵U中的内容向量;
优化目标函数生成模块,用于根据所述误差得到最终的优化目标函数:
Figure GDA0002285203030000066
ui表示内容wi的输出内容向量;
连续词袋模型生成模块,用于采用梯度下降法对输出矩阵中的中心内容的内容向量和输入矩阵中的2m个内容对应的内容向量进行更新,得到最终的输入矩阵V和输出矩阵U,从而得到所述连续词袋模型。
本发明基于自然语言处理中的连续词袋模型对各用户的历史查看内容序列进行学习训练得到连续词袋模型,从而得到每个内容的内容向量,再根据每个内容的内容向量获取目标用户查看过的内容的相似内容,然后计算目标用户对各相似内容的兴趣度,最后提取出目标用户兴趣度最高的预设数量个内容推荐给目标用户。与现有技术相比,本发明不利用内容和用户的描述信息、属性或标签,不会因内容和用户的信息的缺失导致算法的鲁棒性变差。同时,本发明计算速度远超协同过滤和基于内容的推荐算法。再者,本发明将内容表示成等长的向量,可迎合各种现成的相似度算法。
附图说明
图1:本发明实施例1提供的内容推荐方法的总体流程示意图;
图2:实施例1提供的内容推荐方法中用户对内容的兴趣度的计算原理举例;
图3:实施例1提供的内容推荐方法中连续词袋模型训练的具体流程示意图;
图4:本发明实施例2提供的内容推荐系统的总体组成示意图;
图5:实施例2提供的内容推荐系统中连续词袋模型训练模块的具体组成示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。
如图1所示,本发明实施例1提供了一种内容推荐方法,包括如下步骤:
步骤A:获取所有用户的内容查看历史数据,每个用户的内容查看历史数据包括该用户查看过的所有内容以及各内容的查看时间。内容可以为网络上的视频、音乐、新闻或商品,查看为点击内容的链接。当内容为视频或音乐时,点击视频或音乐的链接将播放该视频或音乐,当内容为新闻时,点击新闻链接将呈现出新闻的内容,点击商品链接将呈现出商品信息。内容的查看时间是指查看该内容的时刻。
步骤B:按照查看时间先后顺序分别对每个用户查看过的所有内容进行排序,得到每个用户的历史查看内容序列。
步骤C:对每个用户的历史查看内容序列进行连续词袋模型训练,得到连续词袋模型,从而得到每个内容的内容向量。连续词袋模型训练是整个本发明整个方法流程的最核心的部分,其利用了自然语言处理算法。将本用于进行语言处理领域的自然语言处理算法应用到本发明中。自然语言处理算法通过学习训练语料获取词向量和概率密度函数。词向量是多维实数向量,词向量中包含了自然语言中的语义和语法关系,词向量之间的余弦距离代表了词语之间的相似度。每个历史查看内容序列当做自然语言中的一个句子,序列中的每个内容当成句子中的一个词。使用语言模型对每个用户的历史查看内容序列进行学习训练后将得到每个内容的内容向量,内容向量等效于自然语言处理中获得的词向量。本实施例中采用的语言模型为连续词袋模型,连续词袋模型是一种能够根据一句话中的前后词语预测或产生出中心词语的词袋模型。以句子“The cat jump over the puddle”为例,连续词袋模型能够以{“The”,“cat”,“over”,“the”,“puddle”}为上下文,预测或产生出中心词语“jump”,这种模型称为连续词袋模型。
步骤D:获取目标用户在预设时间窗口内查看过的内容的集合。时间窗口是一个时间段,可根据需要预设。
步骤E:从所有用户查看过的所有内容中分别提取内容向量与集合中的每个内容最相似的第一预设数量个内容。本实施例中以内容向量相似度代表内容相似度,内容向量相似度高,则内容相似度高,内容向量相似度低,则内容相似度低。
步骤F:计算目标用户对提取出的所有内容中的每个内容的兴趣度。设目标用户为u,集合为M,提取的内容为j,内容向量与内容j最相似的第二预设数量个内容的集合为N,则目标用户u对内容j的兴趣度Puj的计算方法为:
Figure GDA0002285203030000081
其中,Wij表示内容i与内容j的内容向量相似度,Pui表示目标用户u对内容i的兴趣度。
图2以内容为视频举例,假设目标用户在某时间窗口内观看过A视频和B视频,由于目标用户观看过A视频和B视频,可以简单地使用户对A视频和B视频的兴趣度为1。将A视频和B视频输入训练好的视频模型,得到与A视频最相似的3个视频分别是u视频、v视频和x视频,和B视频最相似的3个视频分别是x视频、y视频和z视频。其中,x视频与A视频和B视频均相似。如图2所示,A视频与u视频的相似度为0.7,与v视频的相似度为0.6,与x视频的相似度为0.5;B视频与x视频的相似度为0.4,与y视频的相似度为0.5,与z视频的相似度为0.6。根据上述公式,目标用户对u视频的兴趣度为0.7*1=0.7,对v视频的兴趣度为0.6*1=0.6,对x视频的兴趣度为0.5*1+0.4*1=0.9,对y视频的兴趣度为0.5*1=0.5,对z视频的兴趣度为0.6*1=0.6。因此,按照目标用户兴趣度从高到底对上述各视频排序为:x>u>v=z>y。
步骤G:根据目标用户对内容的兴趣度高低从提取出的所有内容中提取出目标用户兴趣度最高的第三预设数量个内容推荐给目标用户。
如图3所示,步骤C包括如下步骤:
步骤C1:建立连续词袋模型的输入矩阵V和输出矩阵U,并对输入矩阵V和输出矩阵U进行随机初始化。其中,V∈Rn×|V|,U∈R|V|×n,n表示向量维度。首先,需要建立模型的一些已知参数,把训练集中所有内容进行one-hot(独热)编码,再将内容序列表示为一些one-hot向量作为模型的输入,记为x(c)。模型只有一个输出,即中心内容,记为y。以上文的英文句子为例,y就是我们已知的中心词语“jump”。然后定义模型中的未知参数,建立两个矩阵U、V,V∈Rn×|V|,U∈R|V|×n。其中n可任意指定,表示内容向量的维度,V表示输入词矩阵。当内容wi(one_hot向量)作为模型输入的时候,V的第i列就是这个内容wi对应的n维内容向量,这一列表示为vi。类似地,U是输出矩阵,当内容wj(one_hot向量)作为模型输出的时候,U的第i行就是这个内容wi对应的n维内容向量,这一行表示为ui。我们对每个内容wi学习了两个内容向量,一个是输出内容的向量ui,另一个是输入内容的向量vi
步骤C2:从每个用户的历史查看内容序列中选取一个内容xc作为中心内容,并读取中心内容的前后的各m个内容,并对读取出的2m个内容进行独热码编码,得到这2m个内容的独热码。该2m个内容的独热码分别表示如下:
x(c-m),...,x(c-1),x(c+1),...,x(c+m)
步骤C3:将这2m个内容的独热码分别乘以输入矩阵,得到这2m个内容的输入内容向量。该2m个内容的输入内容向量分别表示如下:
vc-m=Vx(c-m),...vc-1=Vx(c-1),vc+1=Vx(c+1),...,vc+m=Vx(c+m)。vi表示内容wi的输入内容向量。
步骤C4:对2m个内容的输入内容向量求平均值
Figure GDA0002285203030000106
Figure GDA0002285203030000101
步骤C5:根据平均值计算得分向量z:
Figure GDA0002285203030000102
步骤C6:将得分向量转换为概率分布
Figure GDA0002285203030000103
步骤C7:利用交叉熵作为目标函数计算中心内容在输出矩阵U中的内容向量与概率分布之间的误差:
Figure GDA0002285203030000104
其中,
Figure GDA0002285203030000107
为步骤C6中得到的概率分布,y为中心内容在输出矩阵U中的内容向量。
步骤C8:根据误差得到最终的优化目标函数:
Figure GDA0002285203030000105
ui表示内容wi的输出内容向量。
步骤C9:采用梯度下降法对输出矩阵中的中心内容的内容向量和输入矩阵中的2m个内容对应的内容向量进行更新,得到最终的输入矩阵V和输出矩阵U,从而得到连续词袋模型。
如图4所示,本发明实施例2提供了一种内容推荐系统,包括内容查看历史数据获取模块1、历史查看内容序列生成模块2、连续词袋模型训练模块3、相似内容提取模块4、兴趣度计算模块5和推荐内容提取模块6。其中:
内容查看历史数据获取模块1用于获取所有用户的内容查看历史数据和目标用户在预设时间窗口内查看过的内容的集合。每个用户的内容查看历史数据包括该用户查看过的所有内容以及各内容的查看时间。
历史查看内容序列生成模块2用于按照查看时间先后顺序分别对每个用户查看过的所有内容进行排序,得到每个用户的历史查看内容序列。
连续词袋模型训练模块3用于对每个用户的历史查看内容序列进行连续词袋模型训练,得到连续词袋模型,从而得到每个内容的内容向量。
相似内容提取模块4用于从所有用户查看过的所有内容中分别提取内容向量与集合中的每个内容最相似的第一预设数量个内容。
兴趣度计算模块5用于计算目标用户对提取出的所有内容中的每个内容的兴趣度。设目标用户为u,集合为M,提取的内容为j,内容向量与内容j最相似的第二预设数量个内容的集合为N,则目标用户u对内容j的兴趣度Puj的计算方法为:
Figure GDA0002285203030000111
其中,Wij表示内容i与内容j的内容向量相似度,Pui表示目标用户u对内容i的兴趣度。
推荐内容提取模块6用于根据目标用户对内容的兴趣度高低从提取出的所有内容中提取出目标用户兴趣度最高的第三预设数量个内容推荐给目标用户。
内容可为网络上的内容、音乐、新闻或商品,查看为点击内容的链接。
如图5所示,连续词袋模型训练模块3包括矩阵建立模块301、独热码编码模块302、输入内容向量计算模块303、向量平均值计算模块304、得分向量计算模块305、概率分布转换模块306、误差计算模块307、优化目标函数生成模块308、连续词袋模型生成模块309。其中:
矩阵建立模块301用于建立连续词袋模型的输入矩阵V和输出矩阵U,并对输入矩阵V和输出矩阵U进行随机初始化。其中,V∈Rn×|V|,U∈R|V|×n,n表示向量维度。
独热码编码模块302用于从每个用户的历史查看内容序列中选取一个内容xc作为中心内容,并读取中心内容的前后的各m个内容,并对读取出的2m个内容进行独热码编码,得到这2m个内容的独热码。该2m个内容的独热码分别表示如下:
x(c-m),...,x(c-1),x(c+1),...,x(c+m)
输入内容向量计算模块303用于将这2m个内容的独热码分别乘以输入矩阵,得到这2m个内容的输入内容向量。该2m个内容的输入内容向量分别表示如下:
vc-m=Vx(c-m),...vc-1=Vx(c-1),vc+1=Vx(c+1),...,vc+m=Vx(c+m)。vi表示内容wi的输入内容向量。
向量平均值计算模块304用于对2m个内容的输入内容向量求平均值
Figure GDA0002285203030000121
Figure GDA0002285203030000122
得分向量计算模块305用于根据平均值计算得分向量z:
Figure GDA0002285203030000123
概率分布转换模块306用于将得分向量转换为概率分布
Figure GDA0002285203030000124
误差计算模块307用于利用交叉熵作为目标函数计算中心内容在输出矩阵U中的内容向量与概率分布之间的误差:
Figure GDA0002285203030000125
其中,
Figure GDA0002285203030000126
为概率分布转换模块中得到的概率分布,y为中心内容在输出矩阵U中的内容向量。
优化目标函数生成模块308用于根据误差得到最终的优化目标函数:
Figure GDA0002285203030000127
ui表示内容wi的输出内容向量。
连续词袋模型生成模块309用于采用梯度下降法对输出矩阵中的中心内容的内容向量和输入矩阵中的2m个内容对应的内容向量进行更新,得到最终的输入矩阵V和输出矩阵U,从而得到连续词袋模型。
实施例2提供的内容推荐系统中的各模块与实施例1提供的内容推荐方法中的各步骤相对应,具体工作原理可参照实施例1中对相应步骤的说明。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种内容推荐方法,其特征在于,包括如下步骤:
步骤A:获取所有用户的内容查看历史数据,每个用户的内容查看历史数据包括该用户查看过的所有内容以及各内容的查看时间;
步骤B:按照查看时间先后顺序分别对每个用户查看过的所有内容进行排序,得到每个用户的历史查看内容序列;
步骤C:对每个用户的历史查看内容序列进行连续词袋模型训练,得到连续词袋模型,从而得到每个内容的内容向量;
步骤D:获取目标用户在预设时间窗口内查看过的内容的集合;
步骤E:从所有用户查看过的所有内容中分别提取内容向量与所述集合中的每个内容最相似的第一预设数量个内容;
步骤F:计算目标用户对提取出的所有内容中的每个内容的兴趣度;设目标用户为u,所述集合为M,提取的内容为j,内容向量与内容j最相似的第二预设数量个内容的集合为N,则目标用户u对内容j的兴趣度Puj的计算方法为:
Figure FDA0002285203020000011
其中,Wij表示内容i与内容j的内容向量相似度,Pui表示目标用户u对内容i的兴趣度;
步骤G:根据目标用户对内容的兴趣度高低从提取出的所有内容中提取出目标用户兴趣度最高的第三预设数量个内容推荐给目标用户;
其中,所述步骤C包括如下步骤:
步骤C1:建立连续词袋模型的输入矩阵V和输出矩阵U,并对所述输入矩阵V和输出矩阵U进行随机初始化;其中,V∈Rn×|V|,U∈R|V|×n,n表示向量维度;
步骤C2:从所述每个用户的历史查看内容序列中选取一个内容xc作为中心内容,并读取中心内容的前后的各m个内容,并对读取出的2m个内容进行独热码编码,得到这2m个内容的独热码;该2m个内容的独热码分别表示如下:
x(c-m),...,x(c-1),x(c+1),...,x(c+m)
步骤C3:将这2m个内容的独热码分别乘以所述输入矩阵,得到这2m个内容的输入内容向量;该2m个内容的输入内容向量分别表示如下:
vc-m=Vx(c-m),...vc-1=Vx(c-1),vc+1=Vx(c+1),...,vc+m=Vx(c+m);vi表示内容wi的输入内容向量;
步骤C4:对所述2m个内容的输入内容向量求平均值
Figure FDA0002285203020000027
Figure FDA0002285203020000021
步骤C5:根据所述平均值计算得分向量z:
Figure FDA0002285203020000022
步骤C6:将所述得分向量转换为概率分布
Figure FDA0002285203020000023
步骤C7:利用交叉熵作为目标函数计算中心内容在输出矩阵U中的内容向量与所述概率分布之间的误差:
Figure FDA0002285203020000024
其中,
Figure FDA0002285203020000025
为步骤C6中得到的概率分布,y为中心内容在输出矩阵U中的内容向量;
步骤C8:根据所述误差得到最终的优化目标函数:
Figure FDA0002285203020000026
ui表示内容wi的输出内容向量;
步骤C9:采用梯度下降法对输出矩阵中的中心内容的内容向量和输入矩阵中的2m个内容对应的内容向量进行更新,得到最终的输入矩阵V和输出矩阵U,从而得到所述连续词袋模型。
2.如权利要求1所述的内容推荐方法,其特征在于,所述内容为网络上的视频、音乐、新闻或商品,所述查看为点击所述内容的链接。
3.一种内容推荐系统,其特征在于,包括:
内容查看历史数据获取模块,用于获取所有用户的内容查看历史数据和目标用户在预设时间窗口内查看过的内容的集合;每个用户的内容查看历史数据包括该用户查看过的所有内容以及各内容的查看时间;
历史查看内容序列生成模块,用于按照查看时间先后顺序分别对每个用户查看过的所有内容进行排序,得到每个用户的历史查看内容序列;
连续词袋模型训练模块,用于对每个用户的历史查看内容序列进行连续词袋模型训练,得到连续词袋模型,从而得到每个内容的内容向量;
相似内容提取模块,用于从所有用户查看过的所有内容中分别提取内容向量与所述集合中的每个内容最相似的第一预设数量个内容;
兴趣度计算模块,用于计算目标用户对提取出的所有内容中的每个内容的兴趣度;设目标用户为u,所述集合为M,提取的内容为j,内容向量与内容j最相似的第二预设数量个内容的集合为N,则目标用户u对内容j的兴趣度Puj的计算方法为:
Figure FDA0002285203020000031
其中,Wij表示内容i与内容j的内容向量相似度,Pui表示目标用户u对内容i的兴趣度;
推荐内容提取模块,用于根据目标用户对内容的兴趣度高低从提取出的所有内容中提取出目标用户兴趣度最高的第三预设数量个内容推荐给目标用户;
其中,所述连续词袋模型训练模块包括:
矩阵建立模块,用于建立连续词袋模型的输入矩阵V和输出矩阵U,并对所述输入矩阵V和输出矩阵U进行随机初始化;其中,V∈Rn×|V|,U∈R|V|×n,n表示向量维度;
独热码编码模块,用于从所述每个用户的历史查看内容序列中选取一个内容xc作为中心内容,并读取中心内容的前后的各m个内容,并对读取出的2m个内容进行独热码编码,得到这2m个内容的独热码;该2m个内容的独热码分别表示如下:
x(c-m),...,x(c-1),x(c+1),...,x(c+m)
输入内容向量计算模块,用于将这2m个内容的独热码分别乘以所述输入矩阵,得到这2m个内容的输入内容向量;该2m个内容的输入内容向量分别表示如下:
vc-m=Vx(c-m),...vc-1=Vx(c-1),vc+1=Vx(c+1),...,vc+m=Vx(c+m);vi表示内容wi的输入内容向量;
向量平均值计算模块,用于对所述2m个内容的输入内容向量求平均值
Figure FDA0002285203020000047
Figure FDA0002285203020000041
得分向量计算模块,用于根据所述平均值计算得分向量z:
Figure FDA0002285203020000042
概率分布转换模块,用于将所述得分向量转换为概率分布
Figure FDA0002285203020000043
误差计算模块,用于利用交叉熵作为目标函数计算中心内容在输出矩阵U中的内容向量与所述概率分布之间的误差:
Figure FDA0002285203020000044
其中,
Figure FDA0002285203020000045
为概率分布转换模块中得到的概率分布,y为中心内容在输出矩阵U中的内容向量;
优化目标函数生成模块,用于根据所述误差得到最终的优化目标函数:
Figure FDA0002285203020000046
ui表示内容wi的输出内容向量;
连续词袋模型生成模块,用于采用梯度下降法对输出矩阵中的中心内容的内容向量和输入矩阵中的2m个内容对应的内容向量进行更新,得到最终的输入矩阵V和输出矩阵U,从而得到所述连续词袋模型。
4.如权利要求3所述的内容推荐系统,其特征在于,所述内容为网络上的视频、音乐、新闻或商品,所述查看为点击所述内容的链接。
CN201611177415.1A 2016-12-19 2016-12-19 一种内容推荐方法及内容推荐系统 Expired - Fee Related CN106599226B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611177415.1A CN106599226B (zh) 2016-12-19 2016-12-19 一种内容推荐方法及内容推荐系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611177415.1A CN106599226B (zh) 2016-12-19 2016-12-19 一种内容推荐方法及内容推荐系统

Publications (2)

Publication Number Publication Date
CN106599226A CN106599226A (zh) 2017-04-26
CN106599226B true CN106599226B (zh) 2020-08-28

Family

ID=58599437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611177415.1A Expired - Fee Related CN106599226B (zh) 2016-12-19 2016-12-19 一种内容推荐方法及内容推荐系统

Country Status (1)

Country Link
CN (1) CN106599226B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113378045A (zh) * 2021-06-08 2021-09-10 深圳Tcl新技术有限公司 数字内容分发方法、装置及存储介质

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107247753B (zh) * 2017-05-27 2018-12-04 深圳大学 一种相似用户选取方法及装置
WO2018218405A1 (zh) * 2017-05-27 2018-12-06 深圳大学 一种相似用户选取方法及装置
CN107315780B (zh) * 2017-06-06 2020-09-04 阿里巴巴(中国)有限公司 应用软件推送方法及装置
CN110309188A (zh) * 2018-03-08 2019-10-08 优酷网络技术(北京)有限公司 内容聚类方法及装置
CN108810577B (zh) * 2018-06-15 2021-02-09 深圳市茁壮网络股份有限公司 一种用户画像的构建方法、装置及电子设备
CN108921221B (zh) 2018-07-04 2022-11-18 腾讯科技(深圳)有限公司 用户特征的生成方法、装置、设备及存储介质
CN109447698B (zh) * 2018-10-18 2021-01-29 广州云从人工智能技术有限公司 一种基于神经网络的推荐方法
CN109344335B (zh) * 2018-12-20 2020-12-25 广东小天才科技有限公司 一种内容推荐方法及电子设备
CN109871487B (zh) * 2019-02-22 2021-03-23 北京搜狐新媒体信息技术有限公司 一种新闻召回方法和系统
CN109902231A (zh) * 2019-02-22 2019-06-18 新疆大学 基于cbow模型的学习资源推荐方法
CN109885748A (zh) * 2019-02-22 2019-06-14 新疆大学 基于语意特征的优化推荐方法
CN110162701B (zh) * 2019-05-10 2023-12-19 深圳市雅阅科技有限公司 内容推送方法、装置、计算机设备和存储介质
CN110297918A (zh) * 2019-06-25 2019-10-01 深圳市酷开网络科技有限公司 一种计算影视内容相关程度的方法、智能终端及存储介质
CN110442977B (zh) * 2019-08-08 2023-09-29 广州华建工智慧科技有限公司 基于建筑施工工序网络推荐的移动端bim模型智能缓存方法
CN111291264B (zh) * 2020-01-23 2023-06-23 腾讯科技(深圳)有限公司 基于机器学习的访问对象预测方法、装置和计算机设备
CN111681107A (zh) * 2020-06-11 2020-09-18 黄锐 一种基于Embedding的实时个性化金融产品推荐算法
CN112861004B (zh) * 2021-02-20 2024-02-06 中国联合网络通信集团有限公司 一种富媒体的确定方法及装置
CN113626638A (zh) * 2021-09-06 2021-11-09 深圳市易平方网络科技有限公司 短视频推荐处理方法、装置、智能终端及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101819572A (zh) * 2009-09-15 2010-09-01 电子科技大学 一种用户兴趣模型的建立方法
CN103778260A (zh) * 2014-03-03 2014-05-07 哈尔滨工业大学 一种个性化微博信息推荐系统和方法
CN103870453A (zh) * 2012-12-07 2014-06-18 盛乐信息技术(上海)有限公司 数据推荐方法及系统
CN105117440A (zh) * 2015-08-11 2015-12-02 北京奇虎科技有限公司 确定待推荐应用app的方法及装置
CN105677715A (zh) * 2015-12-29 2016-06-15 海信集团有限公司 一种基于多用户的视频推荐方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101819572A (zh) * 2009-09-15 2010-09-01 电子科技大学 一种用户兴趣模型的建立方法
CN103870453A (zh) * 2012-12-07 2014-06-18 盛乐信息技术(上海)有限公司 数据推荐方法及系统
CN103778260A (zh) * 2014-03-03 2014-05-07 哈尔滨工业大学 一种个性化微博信息推荐系统和方法
CN105117440A (zh) * 2015-08-11 2015-12-02 北京奇虎科技有限公司 确定待推荐应用app的方法及装置
CN105677715A (zh) * 2015-12-29 2016-06-15 海信集团有限公司 一种基于多用户的视频推荐方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113378045A (zh) * 2021-06-08 2021-09-10 深圳Tcl新技术有限公司 数字内容分发方法、装置及存储介质
CN113378045B (zh) * 2021-06-08 2024-02-09 深圳Tcl新技术有限公司 数字内容分发方法、装置及存储介质

Also Published As

Publication number Publication date
CN106599226A (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
CN106599226B (zh) 一种内容推荐方法及内容推荐系统
Hidasi et al. Parallel recurrent neural network architectures for feature-rich session-based recommendations
CN110162749B (zh) 信息提取方法、装置、计算机设备及计算机可读存储介质
WO2018112696A1 (zh) 一种内容推荐方法及内容推荐系统
US20180336193A1 (en) Artificial Intelligence Based Method and Apparatus for Generating Article
CN112131350B (zh) 文本标签确定方法、装置、终端及可读存储介质
CN111581510A (zh) 分享内容处理方法、装置、计算机设备和存储介质
CN111046275B (zh) 基于人工智能的用户标签确定方法及装置、存储介质
CN110083729B (zh) 一种图像搜索的方法及系统
CN110162594B (zh) 文本数据的观点生成方法、装置及电子设备
CN113705313A (zh) 文本识别方法、装置、设备及介质
CN110717038B (zh) 对象分类方法及装置
CN112241626A (zh) 一种语义匹配、语义相似度模型训练方法及装置
CN110955750A (zh) 评论区域和情感极性的联合识别方法、装置、电子设备
CN113704507B (zh) 数据处理方法、计算机设备以及可读存储介质
CN110968775A (zh) 商品属性生成模型的训练方法及生成、搜索方法和系统
CN111260428A (zh) 一种商品推荐方法和装置
CN112749330A (zh) 信息推送方法、装置、计算机设备和存储介质
CN114240552A (zh) 基于深度聚类算法的产品推荐方法、装置、设备及介质
CN113688951A (zh) 视频数据处理方法以及装置
CN116680363A (zh) 一种基于多模态评论数据的情感分析方法
He et al. Deep learning in natural language generation from images
CN115964560A (zh) 基于多模态预训练模型的资讯推荐方法及设备
CN113961666B (zh) 关键词识别方法、装置、设备、介质及计算机程序产品
CN113408282B (zh) 主题模型训练和主题预测方法、装置、设备及存储介质

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: 20200828