CN101489107B - 一种基于人口属性关键字向量的协作过滤推荐方法 - Google Patents
一种基于人口属性关键字向量的协作过滤推荐方法 Download PDFInfo
- Publication number
- CN101489107B CN101489107B CN200910045655XA CN200910045655A CN101489107B CN 101489107 B CN101489107 B CN 101489107B CN 200910045655X A CN200910045655X A CN 200910045655XA CN 200910045655 A CN200910045655 A CN 200910045655A CN 101489107 B CN101489107 B CN 101489107B
- Authority
- CN
- China
- Prior art keywords
- user
- keywords
- keyword
- targeted customer
- scoring
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种引入基于人口属性关键字向量的协作过滤推荐方法,特点是IPTV节目的界面上,提供用户评分的可视化菜单,并根据终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户。本发明能够有效解决以往推荐系统所存在的无法对新用户产生推荐的问题,并能很好的提高对评分稀疏的用户的推荐精度。
Description
技术领域
本发明涉及IPTV个性化推荐系统,具体地说是一种基于人口属性关键字向量的协作过滤推荐方法。
背景技术
随着Internet上信息的剧增出现了所谓的“信息过载”和“信息迷向”现象,推荐系统应运而生,他能根据用户操作历史和反馈等信息为用户找到适合其兴趣的资源,为其产生个性化的推荐。如今,推荐技术已经应用在电子商务、数字图书馆、影视娱乐等各个领域。尤其是IPTV领域,随着数字电视和通信技术的不断发展,电视节目资源越来越丰富,一方面用户为能够收看到如此之多的节目而感到兴奋不已,另一方面又为如何从成百上千个节目中找到他们真正喜爱的节目,而感到苦恼。协作过滤技术是当前最成功的个性化推荐技术,一些比较有名的推荐系统如WebWatcher、GroupLens、Firefly、SELECT、LileMinds和Citeseer都采用了协作过滤的方法。基本思想就是基于评分相似的最近邻居的评分数据向目标用户产生推荐,即根据其他用户的观点产生对目标用户的推荐列表。它基于这样一个假设:如果用户对一些项目的评分比较相似,则他们对其他项目的评分也比较相似。其出发点是找到与你兴趣相同的一组用户,术语叫做“最近邻”。最近邻搜索的核心是计算两个用户的相似度。例如用户A和用户B,首先需要获取用户A和用户B所有的评分项,然后选择一个合适的相似度计算方法,基于评分项数据,计算得到用户A和用户B的相似度数值。以上三种类型的推荐系统各有其优缺点,但所有的推荐系统均面临一个共同的问题,即冷启动问题。即传统的协作过滤算法均要求用户已对一部分项目进行过评分,当无评分或者评分非常少的时候,系统则无法产生推荐或者推荐的精度非常差。
发明内容
本发明的目的是针对现有技术的不足而设计的一种基于人口属性关键字向量依据人口属性状况建立人口属性向量,这些人口属性状况包括年龄、性别、民族、职业、收入状况、爱好、自我描述等一系列用户在注册时给定的信息。人口属性向量为一关键字集,之后根据每个用户的属性向量集计算两用户之间的相似度,并同传统推荐算法计算出的相似度混合,之后选择出跟目标邻居最相似的若干个用户,然后综合这些用户的评分来预测用户未评分的项目,最后产生推荐。这种方法能在系统冷启动阶段很好的为用户提供推荐。
本发明的目的是这样实现的:
一种引入基于人口属性关键字向量的协作过滤推荐方法,特点是IPTV节目的界面上,提供用户评分的可视化菜单,并根据终端机项盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,其具体步骤如下:
a)、收集用户人口属性信息和自我描述信息;
b)、收集用户对项目的评分数据形成用户-项目评分矩阵A(m,n);
c)、使用中文分词技术和关键字匹配寻找每个用户所拥有的关键字集合;
d)、计算目标用户和其他用户之间的关键字集合之间的交集;
e)、计算目标用户和其他用户之间的共同评分项目;
f)、根据d、e步骤的结果计算出目标用户和其他用户之间的相似度;
g)、选取相似度最大的K个用户作为其最近邻居集;
h)、根据最近邻居集对目标用户未评分项目来预测评分并排序;
i)、将预测评分最大的前N个项目作出推荐列表给目标用户。
所述“用户-项目”评分矩阵A(m,n),以用户评分信息和用户行为数据进行矩阵排列,行代表用户,列代表项目,矩阵中的元素值则代表该行用户对该列项目的喜爱程度。
所述使用中文分词技术和关键字匹配寻找每个用户所拥有的关键字集合是在用户每次注册以及更新个人信息时使用。
所述目标用户和其他用户间的相似度是根据人口属性相似度和用户评分相似度混合后共同计算得到的。
本发明能够有效解决以往推荐系统所存在的无法对新用户产生推荐的问题,并能很好的提高对评分稀疏的用户的推荐精度。
附图说明
图1为本发明系统架构图
图2为本发明所使用的基于人口属性关键字向量的协作过滤推荐算法流程图
具体实施方式
实施例
参阅附图1~2,本发明在IPTV节目的界面上,提供用户评分的可视化菜单,并根据终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,其具体步骤如下:
(1)、数据收集部件在IPTV系统中通过跟踪用户的观看时间、行为操作等特征来获取代表用户兴趣的信息。
(2)、将上述用户的行为特征信息由系统进行原始数据的处理,并代替用户完成评价,然后根据用户评分信息和用户行为数据,整理得到“用户-项目”评分矩阵A(m,n),评分的值从1到rmax(即打分范围为1-5),该矩阵作为用户兴趣模型存储在推荐引擎装置上,行代表用户,列代表项目,矩阵中的元素值代表该行用户对该列项目的喜爱程度,喜爱程度设置为5档,分别对应为:①、很不喜欢,②、比较不喜欢,③、一般,④、比较喜欢,⑤、很喜欢。若用户对某项目没有评价过,那么在评分矩阵中设置为0。
(3)、通过注册时用户填写的资料来收集用户信息来创建用户属性集(userprofile)。比如包括年龄、性别、职业、自我描述等。然后采用中文分词技术将用户填写的资料分解成一关键字集。例如某用户的注册信息如下:
姓名:张小二性别:男职业:软件工程师年龄:27(青年)爱好:旅游,摄影,唱歌自我性格描述:开朗,喜爱交际。
对上述信息所分解所得的关键字集将为{男,软件,工程师,青年,旅游,摄影,唱歌,开朗,交际}。这里我们将每个用户的关键字集用pu表示。
(4)、当目标用户a到达时,扫描评分矩阵A(m,n),得到a已评分项目集合Ta,对每个项目t∈Ta,在W(n)中找到对应的wt;推荐引擎根据“用户-项目”评分矩阵A(m,n)和所有用户的人口属性关键字集,采用目标用户a和其他用户u的相似度计算形成用户相似度矩阵Sim(m,m),在相似度计算中引入人口属性关键字集,计算过程如下:
I)、计算用户i和用户j之间的共同关键字profileij
假设profilei表示用户i的关键字集合,profilej表示用户j的关键字集合。则有:
profileij=profilei∩profilej
II)、计算profileij中每个关键字wx的权重TFx所构成的向量Vectorij=(TF1,TF2,...,TFx),其中
TFx表示关键字wx对两用户相似度影响的大小,TFx越大,则表示wx对两用户相似度的影响越大。其中fx表示关键字wx在所有用户属性关键字集合中出现的次数,maxz表示在所有用户属性关键字集合中出现最多的关键字所出现的次数,即:也就是说,如果一个关键字wk非常普遍,几乎每个用户属性关键字集合中都有,那么其TFx越小。反之两用户的profileij中某个关键字wk在所有用户的profile集中出现的频率相当小,那么其TFx则比较大。极端情况,如果某关键字Wk在每个用户profile集中都出现,则其TFx将为0。
III)、根据Vectorij=(TF1,TF2,...,TFx)得到计算相似度SimNewij,公式如下:
IV)、将SimNewij与传统协同过滤计算出的相似度SimColij进行融合
由于在用户评分非常少的情况下传统的协同过滤产生的推荐精度都很差,因此在新用户评分非常少的时候,我们依然可以使用SimNewij。使用如下公式:
k是用户已评分过的项目的数量,N为系统设定值,表示在用户评分项目数量达到多少以前均考虑使用用户人口统计信息。
(5)、根据上述目标用户a与其他用户间的相似度大小并排序,找到与目标用户a最相似的前k个最近邻居,形成最近邻居集[knn1,knn2,...,knnk],使得sim(a,knn1)>sim(a,knn2)>...>sim(a,knnk)。
(6)、扫描A(m,n),找到用户a未评分的项目集合T′a,针对活动用户a每个未评分的项目j,预测用户a对项目j的评分,采用如下公式对每个t∈T′a计算预测评分值;
计算出的用户a对所有未评分项目的预测评分,将其按照从大到小进行排序,选取评分值最大的前N个项目组成推荐列表RecList(N)给当前活动用户a。
Claims (2)
1.一种引入基于人口属性关键字向量的协作过滤推荐方法,其特征在于IPTV节目的界面上,提供用户评分的可视化菜单,并根据终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,其具体步骤如下:
a)、收集用户人口属性信息和自我描述信息;
b)、收集用户对项目的评分数据形成“用户-项目”评分矩阵A(m,n);评分矩阵A(m,n),以用户评分信息和用户行为数据进行矩阵排列,m为行代表用户,n为列代表项目,矩阵中的元素值则代表该行用户对该列项目的喜爱程度;
c)、使用中文分词和关键字匹配技术寻找每个用户所拥有的关键字集合;
d)、计算目标用户和其他用户之间的关键字集合之间的交集;
e)、计算目标用户和其他用户之间的共同评分项目;
f)、根据步骤d)得到的用户之间关键字集合的交集,利用词频权重公式计算交集中各个关键字的权重,其中fx表示关键字wx在所有用户属性关键字集合中出现的次数,maxz表示在所有用户属性关键字集合中出现最多的关键字所出现的次数;该集合中所有的关键字权重之和基于为人口属性的相似度SimNewij;根据步骤e)的结果,用协同过滤计算方法计算基于“用户-评分”矩阵的相似度SimColij;将SimNewij与SimColij进行融合,得目标用户和其他用户之间的相似度;其融合公式如下:
g)、选取相似度最大的K个用户作为其最近邻居集;
h)、根据最近邻居集对目标用户未评分项目采用预测评分公式计算得到预测评分值并对其值排序;
i)、将预测评分最大的前N个项目作出推荐列表给目标用户。
2.根据权利要求1所述的协作过滤推荐方法,其特征在于所述使用中文分词和关键字匹配技术寻找每个用户所拥有的关键字集合是在用户每次注册以及更新个人信息时使用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910045655XA CN101489107B (zh) | 2009-01-21 | 2009-01-21 | 一种基于人口属性关键字向量的协作过滤推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910045655XA CN101489107B (zh) | 2009-01-21 | 2009-01-21 | 一种基于人口属性关键字向量的协作过滤推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101489107A CN101489107A (zh) | 2009-07-22 |
CN101489107B true CN101489107B (zh) | 2011-06-29 |
Family
ID=40891751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910045655XA Expired - Fee Related CN101489107B (zh) | 2009-01-21 | 2009-01-21 | 一种基于人口属性关键字向量的协作过滤推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101489107B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103620592A (zh) * | 2011-04-19 | 2014-03-05 | 诺基亚公司 | 用于推荐结果的灵活多样化的方法和装置 |
CN102779131B (zh) * | 2011-05-12 | 2015-02-18 | 同济大学 | 基于用户间多相似度的协同过滤推荐方法 |
CN102710988A (zh) * | 2012-05-15 | 2012-10-03 | 中山大学 | 一种基于机顶盒的电视节目推荐方法及机顶盒设备 |
CN102802050B (zh) * | 2012-08-24 | 2015-04-01 | 青岛海信电器股份有限公司 | 电视节目推荐方法及系统 |
CN105744370A (zh) * | 2012-09-17 | 2016-07-06 | 中国传媒大学 | 基于群体收视行为的广播电视系统及其个性节目推荐方法 |
CN102917256A (zh) * | 2012-09-19 | 2013-02-06 | 中山大学 | 一种基于android系统的电视节目推荐方法及智能电视系统 |
CN104918118B (zh) * | 2012-10-24 | 2019-08-02 | 北京奇虎科技有限公司 | 基于历史信息的视频推荐方法和装置 |
KR102233805B1 (ko) * | 2013-03-13 | 2021-03-30 | 구글 엘엘씨 | 미인지된 및 새로운 유저들에 대한 향상된 유저 경험 |
CN103345473B (zh) * | 2013-06-06 | 2016-12-28 | 华东师范大学 | 一种识别iptv用户是家庭用户的方法 |
CN104252496A (zh) * | 2013-06-28 | 2014-12-31 | 国际商业机器公司 | 用于提供资源访问的方法和系统 |
CN103336831B (zh) * | 2013-07-09 | 2017-04-12 | 清华大学 | 基于块对角矩阵的推荐方法和装置 |
CN104090900B (zh) * | 2013-12-20 | 2015-07-29 | 深圳市腾讯计算机系统有限公司 | 一种热度关联的海量数据实时计算方法、装置及服务器 |
US20170148083A1 (en) * | 2014-06-12 | 2017-05-25 | Hewlett Packard Enterprise Development Lp | Recommending of an item to a user |
JP6493006B2 (ja) * | 2015-06-18 | 2019-04-03 | 富士通株式会社 | 人口推計方法、人口推計プログラム、および人口推計装置 |
CN105376648B (zh) * | 2015-11-13 | 2018-09-25 | 云南大学 | 一种用于推荐技术的用户配置文件更新方法 |
CN107454474B (zh) * | 2017-08-17 | 2019-11-05 | 四川长虹电器股份有限公司 | 一种基于协同过滤的电视终端节目个性化推荐方法 |
CN107592572B (zh) * | 2017-09-21 | 2021-05-14 | 广州方硅信息技术有限公司 | 视频推荐方法、装置及其设备 |
CN108765051B (zh) * | 2018-04-16 | 2022-03-22 | 达而观信息科技(上海)有限公司 | 物品推荐方法和装置 |
CN109327736B (zh) * | 2018-10-25 | 2021-01-26 | 合肥澳视智能科技有限公司 | 一种基于节目观看表情与用户信息的节目推荐方法 |
CN110598016B (zh) * | 2019-09-11 | 2021-08-17 | 腾讯科技(深圳)有限公司 | 一种多媒体信息推荐的方法、装置、设备和介质 |
CN110851731B (zh) * | 2019-09-25 | 2022-05-03 | 浙江工业大学 | 一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 |
CN110766206A (zh) * | 2019-09-29 | 2020-02-07 | 东软睿驰汽车技术(沈阳)有限公司 | 一种信息预测方法及装置 |
-
2009
- 2009-01-21 CN CN200910045655XA patent/CN101489107B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101489107A (zh) | 2009-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101489107B (zh) | 一种基于人口属性关键字向量的协作过滤推荐方法 | |
CN100581227C (zh) | 一种引入节目热门度权重的协作过滤推荐方法 | |
CN110430471B (zh) | 一种基于瞬时计算的电视推荐方法和系统 | |
CN102929928B (zh) | 基于多维相似度的个性化新闻推荐方法 | |
CN103209342B (zh) | 一种引入视频流行度和用户兴趣变化的协作过滤推荐方法 | |
CN101271559A (zh) | 一种基于用户局部兴趣挖掘的协作推荐系统 | |
CN105430505B (zh) | 一种基于组合策略的iptv节目推荐方法 | |
Oh et al. | When to recommend: A new issue on TV show recommendation | |
CN108573041B (zh) | 基于加权信任关系的概率矩阵分解推荐方法 | |
CN101764661A (zh) | 基于数据融合的视频节目推荐系统 | |
CN103778260A (zh) | 一种个性化微博信息推荐系统和方法 | |
CN102523511A (zh) | 一种网络节目聚合及节目推荐系统和方法 | |
CN102411754A (zh) | 一种基于商品属性熵值的个性化推荐方法 | |
CN106471491A (zh) | 一种时变的协同过滤推荐方法 | |
CN103136275A (zh) | 个性化视频推荐系统及方法 | |
CN108650532B (zh) | 有线电视点播节目推荐方法及系统 | |
CN112507163B (zh) | 时长预测模型训练方法、推荐方法、装置、设备及介质 | |
CN107122447A (zh) | 一种基于偏好的多数据源融合的网络搜索系统及控制方法 | |
CN104423621A (zh) | 拼音字符串处理方法和装置 | |
KR101174213B1 (ko) | 인맥에 기초한 검색 결과 제공 시스템 및 방법 | |
KR20130090344A (ko) | Tv 프로그램 콘텐츠와 웹 콘텐츠의 연계추천 장치, 시스템, 방법 및 그 방법을 실행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 | |
CN107657347A (zh) | 一种面向群组的旅游推荐方法 | |
CN102456044A (zh) | 推送信息的方法与系统 | |
CN107592572A (zh) | 视频推荐方法、装置及其设备 | |
CN104008193A (zh) | 一种基于典型用户群组发现技术的信息推荐方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110629 Termination date: 20180121 |
|
CF01 | Termination of patent right due to non-payment of annual fee |