CN109446422B - 一种基于离群用户过滤的服务推荐方法 - Google Patents
一种基于离群用户过滤的服务推荐方法 Download PDFInfo
- Publication number
- CN109446422B CN109446422B CN201811240451.7A CN201811240451A CN109446422B CN 109446422 B CN109446422 B CN 109446422B CN 201811240451 A CN201811240451 A CN 201811240451A CN 109446422 B CN109446422 B CN 109446422B
- Authority
- CN
- China
- Prior art keywords
- user
- users
- service
- clustering
- group
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于离群用户过滤的服务推荐方法,首先获取Grouplens平台提供的两个具有代表性的数据集Last.FM和Delicious中的用户‑服务‑标签信息,针对每个服务,对所有关注(表现为对服务进行了标签标注)过它的用户进行聚类,并将聚类后规模最小的分组中的用户视为候选不可信用户;然后基于用户被标记为候选不可信次数再对用户进行第二次聚类,从而将候选不可信次数偏多的分组中用户视为最终的不可信用户集;最后集中在可信用户集中为目标用户推荐top‑k个相似用户,并按照相似用户的偏好进行服务推荐。本发明能以较高的推荐精度实现服务推荐,改善了不可信用户对推荐结果造成误导的问题。
Description
技术领域
本发明属于计算机技术领域,涉及一种智能服务计算领域的服务推荐方法,具体涉及一种基于两阶段k-means聚类与协同过滤推荐方法。
背景技术
互联网的快速发展促使web服务的数量与日俱增,使得用户在选择实际所需的服务过程中越来越复杂。推荐系统可有效地帮助用户处理信息负载问题,从而快速找到适合自己的服务,甚至可以根据用户的特点,提供个性化推荐服务。典型的服务推荐应用有商品推荐、电影推荐、图书推荐等等。
协同过滤是服务推荐中常用的有效方法之一,主要根据相似用户或服务的历史数据进行相关推荐。在整个推荐过程中,用户或服务历史数据的质量对推荐精准的影响至关重要。然而,现实中很多业余用户或恶意用户提供的数据并不具有代表性、甚至为虚假数据,如果建模过程中引入这部分用户的数据,毫无疑问推荐结果会对用户造成误导。
发明内容
本发明主要是针对用户在给服务标记标签过程中,表现出行为异常、标签不相关等不可信性问题,为保证服务推荐过程中用户数据的质量,从聚类的角度,利用两阶段无监督的K-means算法,提出一种基于离群用户过滤的服务推荐方法,从而提高服务推荐的质量。
本发明所采用的技术方案是:一种基于离群用户过滤的服务推荐方法,首先通过两阶段的K-means聚类筛选出标签标记行为异常的用户集;然后再基于剩下用户集为目标用户进行服务协同推荐。
A.两阶段K-means聚类,包括以下子步骤:
步骤A1,针对每个服务,对所有关注过它的用户根据标签集进行K-means聚类。考虑到用户的标签集中,不同标签在代表用户兴趣的权重上存在差异,即一个用户在标记不同服务时重复使用某一个标签,则该标签在代表此用户的兴趣方向时权重更高。利用经典的TF-IDF(Term Frequency–Inverse Document Frequency)方法,构建每个用户的标签向量。
其中,fui为用户u使用标签i的次数,#user为用户总数,#useri为使用了标签i的用户数;tfui表示用户u在标签i上的词频,idfi表示标签i的逆文本频率指数,∑kfuk表示用户u在所有标签上使用次数累计和,k表示标签数;
考虑用户使用的标签有限,因此,fui可能为0,因此,我们对数据进行对数处理,即用户u在标签i上的权重值wui的表达式为:
因此,用户u的标签向量为L(u)=(wu1,wu2,…,wun),n为标签集的大小。
步骤A2,根据得到的用户标签向量,利用K-means算法对用户进行聚类,K-means算法以欧式距离作为相似度计算方法,用户u到聚类中心z的距离如下公式:
其中,wzi表示聚类中心z的向量的第i维的权重;
聚类后,服务s上K个分组的大小会有所差异,使用表示服务s上第k个分组(1≤k≤K1),为了区别第二阶段K-means算法的K值,我们分别用K1和K2区分。将规模最小的分组中的用户标记为该服务上的候选离群用户公式如下所示:
在上述对每个服务的关注用户聚类之前,需要初始化矩阵Am×n和矩阵Bm×m,分别用于记录该阶段聚类后每个服务上不可信候选用户情况和两个用户被聚类到同一个分组的次数情况。换而言之,如果用户u在服务s上聚类后被标记为不可信候选用户,则可表示au,s=1;如果用户u和用户v在4个不同的服务上都被聚类在同一个分组中,则可表示为bu,v=4。
步骤A3,通过对每个服务上的用户聚类,可最终得到每个用户被标记为候选离群用户的次数,即CETimesu为用户u的离群次数,表示如下:
步骤A4,通过对A3中用户u的CETimesu值,再次采用K-means方法进行用户聚类,在得到的K2个分组中,K2表示第二阶段K-means算法的K值;将分组中用户平均CETimes值最大的分组标记为离群用户组,标记为Outlier_group,其他分组的用户为正常大众用户组,标记为Normal_group;
再结合矩阵B中记录的两个用户被聚类到同一个分组的次数,去除Normal_group中与用户u(u∈Outlier_group)的bu,v≥ρ(ρ=4)的用户v(v∈Normal_group),得到最终的用户集Final_Users。(ρ的取值需根据实际情况而定,在本次的两个数据集中,该参数取值为4)
Final_Users={u|u∈Normal_group,v∈Outlier_group,bu,v<ρ}
B.基于正常大众用户的服务推荐,包括以下步骤;
步骤B1,对于给定的目标用户u,从矩阵B中获取与用户u的b值不低于第k个值的所有可信用户,组成SimUseru,其中为用户u与所有其他用户的bu值按从大到小排序后的第k个值,即为目标用户返回Top-k个最相似的可信用户。
步骤B2,根如果用户u对服务s做了标注,则表示用户u关注了服务s,即qu,s=1。对于用户u未关注的服务s',可根据用户u的可信用户u′(u′∈SimUseru)对服务s′的关注情况,计算用户在该服务上的关注概率Pu,s′。当Pu,s′大于等于阈值θ(θ=0.5)时,则qu,s′=1,即将服务s'推荐给用户u。(θ的取值应不小于0.5,在本次的两个数据集中,该参数取值为0.5)
其中,SimUseru表示用户u的相似用户,qu′s′表示用户u′对服务s′的关注情况
本发明具有如下优点:
(1)直接通过无监督的聚类方法,过滤数据中异常用户信息带来的干扰,提高服务推荐质量,确保用户的服务体验;
(2)相比已有方法,本文所提方法在两个数据集上的推荐精度可分别提高6.8%和13.4%。
附图说明
图1是本发明实施例方法的主要框架示意图;
图2是本发明实施例中基于用户标签向量的聚类示意图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
请见图1,本发明提供的一种基于离群用户过滤的服务推荐方法,首先通过两阶段的K-means聚类筛选出标签标记行为异常的用户集;然后再基于剩下用户集为目标用户进行服务协同推荐。
表1为一个具有5个用户和4个服务的样例数据集,li,j为用户在服务i上标注的第j个标签,对应的关注矩阵如表2所示。值得注意的是,现实中不是所有的用户都会关注某个服务,而且同一个服务上两个用户也可以标注相同的标签。例如,用户u4和u5没有关注服务s1,而用户u2和u4在服务s2上拥有相同的标签集{l22,l23}。
表1一个简单的样例数据
表2用户-服务关注矩阵M
关注矩阵M5×4
A.两阶段K-means聚类,包括以下子步骤,
因此L(u1)=(0.1197,0.2103,0.1197,0.0670,0.1197,0.2103,0,…,0),其他用户的标签向量计算方式类似,这里不一一列举。
步骤A2,基于用户标签向量聚类。得到每个用户的标签向量L后,利用K-means算法对用户进行聚类。
根据前述方法,若取K1=2时,对4个服务上的用户进行K-means聚类,结果如图2所示。每个服务上的用户被划分为2个分组,规模最小的分组被标记为服务s1上分组包含用户u1和u2,分组只包含u3一个用户,所以用户u3将被记为服务s1上的候选离群用户矩阵A中对应的a2,0=1。类似地,其他三个服务的最小聚类分组分别为: 另外,根据两个用户在聚类过程中被聚到同一分组,则存在一次bi,j增加1,最终更新后的矩阵A,B如表3所示。因用户u2和用户u3在服务s2和服务s3上都划分在同一分组,所以b1,2和b2,1的值为2。
表3更新后的矩阵A和B
步骤A3,基于用户CETimes指标聚类。根据矩阵A,可得到5个用户的CETimes值
其中u1,u4和u5的CETimes值均为2,聚为一组,另外u2和u3为一组。因为前组的CETimes值比后组达,所以,被标记为离群用户组。另外,根据矩阵B中用户之间的b值均小于4,所以,u1,u4和u5将作为离群点在用户集中被去除。
B.基于可信用户的服务推荐,包括以下步骤:
根据Grouplens平台提供的实验数据:Last.FM和Delicious。Last.FM数据集包含用户1,892个,服务(音乐)17,632个,标签11,946个;Delicious数据集包含用户1,867个,服务(书)104,799个,标签53,388个。本发明所提方法在使用过程中,第一阶段聚类K1取值6或7,为目标用户推荐最相似的前4或5个用户,以及关注概率阈值取值为[0.5,07]时,推荐效果整体上会更好。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (2)
1.一种基于离群用户过滤的服务推荐方法,其特征在于,包括以下步骤:
步骤1:两阶段K-means聚类;
步骤1.1:针对每个服务,对所有关注过它的用户根据标签集进行K-means聚类,构建每个用户的标签向量;
其中,fui为用户u使用标签i的次数,#user为用户总数,#useri为使用了标签i的用户数;tfui表示用户u在标签i上的词频,idfi表示标签i的逆文本频率指数,∑nfun表示用户u在所有标签上使用次数累计和,n表示标签数;
对数据进行对数处理,设定用户u在标签i上的权重值wui为:
因此,用户u的标签向量为L(u)=(wu1,wu2,…,wun);
步骤1.2:根据得到的用户标签向量,利用K-means算法对用户进行聚类,用户u到聚类中心z的距离如下公式:
其中,wzi表示聚类中心z的向量的第i维的权重;
在上述对每个服务的关注用户聚类之前,需要初始化矩阵Am×n和矩阵Bm×m,分别用于记录该阶段聚类后每个服务上不可信候选用户情况和两个用户被聚类到同一个分组的次数情况;换而言之,如果用户u在服务s上聚类后被标记为不可信候选用户,则表示为au,s=1;如果用户u和用户v在4个不同的服务上都被聚类在同一个分组中,则表示为bu,v=4;
步骤1.3:通过对每个服务上的用户聚类,最终得到每个用户被标记为候选离群用户的次数,即CETimesu为用户u的离群次数,表示如下:
步骤1.4:通过步骤1.3中得到的每个用户u的CETimesu值,再次采用K-means方法进行用户聚类,在得到的K2个分组中,K2表示第二阶段K-means算法的K值;将分组中用户平均CETimes值最大的分组标记为离群用户组,标记为Outlier_group,其他分组的用户为正常大众用户组,标记为Normal_group;
再结合矩阵B中记录的两个用户被聚类到同一个分组的次数,去除Normal_group中与用户u的bu,v≥ρ的用户v,得到最终的用户集Final_Users;其中,u∈Outliergroup,v∈Normalgroup;
Final_Users={u|u∈Normal_group,v∈Outlier_group,bu,v<ρ};
步骤2:基于正常大众用户的服务推荐;
步骤2.1:对于给定的目标用户u,从矩阵B中获取与用户u的b值不低于第k个值的所有可信用户,组成SimUseru,其中为用户u与所有其他用户的bu值按从大到小排序后的第k个值,即为目标用户返回Top-k个最相似的可信用户;
步骤2.2:根如果用户u对服务s做了标注,则表示用户u关注了服务s,即qu,s=1;对于用户u未关注的服务s′,根据用户u的可信用户u对服务s′的关注情况,计算用户在该服务上的关注概率Pu,s′;当Pu,s′大于等于阈值θ时,则qu,s′=1,即将服务s′推荐给用户u;其中,u′∈SimUseru;
其中,SimUseru表示用户u的相似用户,qu′s′表示用户u对服务s′的关注情况。
2.根据权利要求1所述的基于离群用户过滤的服务推荐方法,其特征在于:步骤1.1中利用经典的TF-IDF方法,并对TF部分进行数据处理,构建每个用户的标签向量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811240451.7A CN109446422B (zh) | 2018-10-24 | 2018-10-24 | 一种基于离群用户过滤的服务推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811240451.7A CN109446422B (zh) | 2018-10-24 | 2018-10-24 | 一种基于离群用户过滤的服务推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109446422A CN109446422A (zh) | 2019-03-08 |
CN109446422B true CN109446422B (zh) | 2021-09-14 |
Family
ID=65547731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811240451.7A Active CN109446422B (zh) | 2018-10-24 | 2018-10-24 | 一种基于离群用户过滤的服务推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446422B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112130154A (zh) * | 2020-08-21 | 2020-12-25 | 哈尔滨工程大学 | 一种融合网格LOF的自适应K-means离群去约束优化方法 |
CN113127748B (zh) * | 2021-05-18 | 2023-09-05 | 北京奇艺世纪科技有限公司 | 数据过滤方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101707617A (zh) * | 2009-12-04 | 2010-05-12 | 福建星网锐捷网络有限公司 | 报文过滤方法、装置及网络设备 |
CN103678635A (zh) * | 2013-12-19 | 2014-03-26 | 中国传媒大学 | 基于标签有向图的网络音乐聚合推荐方法 |
CN107507073A (zh) * | 2017-09-14 | 2017-12-22 | 中国人民解放军信息工程大学 | 基于信任扩展和列表级排序学习的服务推荐方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100076960A1 (en) * | 2008-09-19 | 2010-03-25 | Sarkissian Mason | Method and system for dynamically generating and filtering real-time data search results in a matrix display |
-
2018
- 2018-10-24 CN CN201811240451.7A patent/CN109446422B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101707617A (zh) * | 2009-12-04 | 2010-05-12 | 福建星网锐捷网络有限公司 | 报文过滤方法、装置及网络设备 |
CN103678635A (zh) * | 2013-12-19 | 2014-03-26 | 中国传媒大学 | 基于标签有向图的网络音乐聚合推荐方法 |
CN107507073A (zh) * | 2017-09-14 | 2017-12-22 | 中国人民解放军信息工程大学 | 基于信任扩展和列表级排序学习的服务推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109446422A (zh) | 2019-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110807527B (zh) | 一种基于客群筛选的额度调整方法、装置和电子设备 | |
CN104834686B (zh) | 一种基于混合语义矩阵的视频推荐方法 | |
CN106651542B (zh) | 一种物品推荐的方法及装置 | |
US20210049421A1 (en) | Classification of data using aggregated information from multiple classification modules | |
CN105512331A (zh) | 一种视频推荐方法及装置 | |
US20090123090A1 (en) | Matching Advertisements to Visual Media Objects | |
CN105159910A (zh) | 信息推荐方法和装置 | |
CN105825396B (zh) | 一种基于共现的广告标签聚类的方法及系统 | |
CN106874503B (zh) | 获取推荐数据的方法和装置 | |
JP2017054214A (ja) | 判定装置、学習装置、情報配信装置、判定方法及び判定プログラム | |
US8793201B1 (en) | System and method for seeding rule-based machine learning models | |
CN111429161B (zh) | 特征提取方法、特征提取装置、存储介质及电子设备 | |
CN109446422B (zh) | 一种基于离群用户过滤的服务推荐方法 | |
CN112231555A (zh) | 基于用户画像标签的召回方法、装置、设备及存储介质 | |
JP2017201535A (ja) | 判定装置、学習装置、判定方法及び判定プログラム | |
JP2018060469A (ja) | 抽出装置、抽出方法、及び抽出プログラム | |
WO2023024408A1 (zh) | 用户特征向量确定方法、相关设备及介质 | |
US20130108180A1 (en) | Information processing device, information processing method, and program | |
CN114330584A (zh) | 数据聚类方法、装置、存储介质以及电子设备 | |
CN113505154B (zh) | 一种基于大数据的数字阅读统计分析方法及系统 | |
US10909144B1 (en) | Taxonomy generation with statistical analysis and auditing | |
CN109949090A (zh) | 客户推荐方法、装置、电子设备及介质 | |
CN114912031A (zh) | 基于聚类和协同过滤的混合推荐方法和系统 | |
López-Sánchez et al. | Dynamic detection of radical profiles in social networks using image feature descriptors and a case-based reasoning methodology | |
Huang et al. | A Hybrid Clustering Approach for Bag‐of‐Words Image Categorization |
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 |