CN107133268A - 一种用于Web服务推荐的协同过滤算法 - Google Patents
一种用于Web服务推荐的协同过滤算法 Download PDFInfo
- Publication number
- CN107133268A CN107133268A CN201710211954.0A CN201710211954A CN107133268A CN 107133268 A CN107133268 A CN 107133268A CN 201710211954 A CN201710211954 A CN 201710211954A CN 107133268 A CN107133268 A CN 107133268A
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- user
- mtd
- service
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search 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
本发明涉及一种用于Web服务推荐的协同过滤算法,首先从原QoS数据中提取出用户偏好数据,将其作为相似邻居近似度计算的源数据;其次从原QoS数据中提取出服务可信度数据,将其作为服务的个性化比重融入用户邻居相似度计算的过程中;然后使用top‑k算法确定目标用户的相似邻居集合;最后联合用户邻居的偏好相似度比重使用调和的皮尔逊相关系数算法(pcc)预测目标用户各未知服务的QoS值。通过WSDREAM库上197万条真实Web服务QoS数据集进行的实验,证明了所提算法相比于目前基于协同过滤的Web服务推荐算法,能有效提高QoS预测准确率从而提高Web服务推荐质量。
Description
技术领域
本发明涉及一种用于Web服务推荐的协同过滤算法,属于Web服务推荐的QoS预测技术领域。
背景技术
Web服务是一种面向服务架构的网络交互技术,也称为WWW(World Wide Web),由众多相互链接的超文本文档(HTML)构成。随着Web的发展,用户很难在网络中快速获取到自己想要的信息,通常需要在大量重复无用的网页之间艰难选择,这就是信息过载问题。
推荐系统可以有效处理信息过载的问题,从上世纪90年代开始,采用评分模式的推荐系统成为研究热点。近十几年来,推荐系统研究及开发一直吸引着众多的学者与公司进行投入,并已取得较大的发展及应用。
推荐系统的目的是为用户推荐合适的服务,所以用户、推荐算法和服务构成了推荐系统的工作模型。这里,推荐算法是核心要素。推荐算法一般来说分成三类:基于内容的推荐算法、使用协同过滤的推荐算法、联合以上两种方法的推荐算法。协同过滤推荐算法分为基于历史数据的、基于模型的、联合两者的协同过滤。
传统的基于用户的协同过滤算法有皮尔逊相关系数(PCC)和向量夹角余弦算法,协同过滤(CF)是一种广泛使用的服务推荐技术,该类方法假设,如果用户1和用户2访问一部分服务的质量相似,那么对于用户2已经访问过的新服务而言,用户1在使用该服务时会有相似的服务质量。已有的基于用户的CF算法使用web服务的服务质量(QoS)计算用户之间的相似度,但是用户的个性化偏好并不能直接体现在QoS数据中。直接使用QoS数据进行相似性计算,会得到不真实的相似度结果。同时,在真实世界中QoS很好的服务可以为网络环境不同的用户提供相似的高质量服务,而QoS很差的服务对于所有用户而言都不能正常的访问,即如果某一个服务对于不同的用户而言QoS值差异不大,那么该服务在计算用户之间相似度时作用不大。
发明内容
本发明所要解决的技术问题是提供一种用于Web服务推荐的协同过滤算法,基于用户偏好和服务可信度,能够有效提高QoS预测准确率,从而提高Web服务推荐质量。
本发明为了解决上述技术问题采用以下技术方案:本发明设计了一种用于Web服务推荐的协同过滤算法,基于用户偏好和服务可信度,针对Web服务进行过滤,并向用户进行推荐,包括如下步骤:
步骤A.利用QoS训练样本集Q构造用户偏好数据集SAT;
步骤B.利用QoS训练样本集Q构造服务可信度数据集C;
步骤C.将服务可信度数据集C作为比重,联合用户偏好数据集SAT,计算各用户之间的偏好相似度;
步骤D.分别针对各个用户,根据各用户之间相似度,采用top-k算法,获得各个用户分别所对应的优先相似邻居集合N(um);其中,1≤m≤M,M表示所有用户的总数,um表示所有用户中的第m位用户;
步骤E.分别针对各个用户,根据用户所对应的优先相似邻居集合N(um),结合该用户与其优先相似邻居集合N(um)中各用户的偏好相似度,计算获得该用户相对各个服务的缺失QoS预测值P(um,sn),进而获得各个用户分别相对各个服务的缺失QoS预测值P(um,sn);其中,1≤n≤N,N表示所有服务的总数,sn表示所有服务中的第n个服务;
步骤F.分别针对各个用户,根据用户相对各个服务的缺失QoS预测值P(um,sn),向用户推荐QoS优秀的候选未知服务,并采用MAE评价准则输出该用户所对应的QoS预测值相较于真实值的准确率结果。
作为本发明的一种优选技术方案,所述步骤A,利用QoS训练样本集Q构造用户偏好数据集SAT,包括如下:
给定用户集合U={u1,…,um,…,uM},给定服务集合S={s1,…,sn,…,sN};定义Satm,n表示用户um对服务sn的偏好,并构建一个mxn的用户偏好矩阵SATmxn;同时构建一个mxn的QoS矩阵Qmxn,qm,n表示用户um访问服务sn的QoS值,然后由QoS数据中提取用户偏好,构造用户偏好数据集SAT。
作为本发明的一种优选技术方案,所述Satm,n如下:
其中公式(2)和公式(3)中,min(um)表示用户um访问的最小的QoS值,max(um)表示用户um访问的最大的QoS值。
作为本发明的一种优选技术方案,所述步骤B,利用QoS训练样本集Q,由QoS数据中提取服务可信度,并定义C1,n为服务sn的可信度,并构建一个1xn的服务可信度矩阵C1xn,构造服务可信度数据集C。
作为本发明的一种优选技术方案,所述C1,n如下:
公式(4)中,Qn表示服务sn全部已知QoS值的集合,表示服务sn全部已知QoS值的平均值,|Qn|表示服务sn全部已知QoS值的数量,δ是预设阈值。
作为本发明的一种优选技术方案,所述步骤C中,将服务可信度数据集C作为比重,联合用户偏好数据集SAT,计算各用户之间的偏好相似度,具体如下:
定义用户相似度矩阵SIMM×M,sim(u,v)表示用户v对于用户u之间的偏好相似度,v∈U,u∈U,v≠u,定义服务可信度比重ωj,这里ωn=C1,n,sim(u,v)的计算如公式(5)所示:
其中,ISat表示用户u和用户v共同访问的Web服务集合,n属于ISat是集合中的一个服务;Satu,n和Satv,n分别表示用户u和用户v对服务n的偏好,和分别表用户u和用户v对各自访问的Web服务的偏好平均值。
作为本发明的一种优选技术方案,所述步骤E中,分别针对各个用户,根据用户所对应的优先相似邻居集合N(um),结合该用户与其优先相似邻居集合N(um)中各用户的偏好相似度,联合PCC算法,采用如下公式:
计算获得该用户相对各个服务的缺失QoS预测值P(um,sn),进而获得各个用户分别相对各个服务的缺失QoS预测值P(um,sn);其中,1≤n≤N,N表示所有服务的总数,sn表示所有服务中的第n个服务;sim(um,v')表示用户um与用户v'之间的偏好相似度,qv',n用户v'访问服务sn的QoS值;表示用户v'对于所有已知服务的访问平均值;表示用户um对于除sn以外所有已知服务的访问平均值。
本发明所述一种用于Web服务推荐的协同过滤算法采用以上技术方案与现有技术相比,具有以下技术效果:本发明设计的用于Web服务推荐的协同过滤算法,针对传统基于用户协同过滤算法的不足,首先从原QoS数据中提取出用户偏好数据,将其作为相似邻居近似度计算的源数据;其次从原QoS数据中提取出服务可信度数据,将其作为服务的个性化比重融入用户邻居相似度计算的过程中;然后使用top-k算法确定目标用户的相似邻居集合;最后联合用户邻居的偏好相似度比重使用调和的皮尔逊相关系数算法(pcc)预测目标用户各未知服务的QoS值,并且通过WSDREAM库上197万条真实Web服务QoS数据集进行的实验,证明了所提算法相比于目前基于协同过滤的Web服务推荐算法,能有效提高QoS预测准确率从而提高Web服务推荐质量。
附图说明
图1是本发明所设计用于Web服务推荐的协同过滤算法的流程示意图。
具体实施方式
下面结合说明书附图对本发明的具体实施方式作进一步详细的说明。
如图1所示,本发明设计了一种用于Web服务推荐的协同过滤算法,基于用户偏好和服务可信度,针对Web服务进行过滤,并向用户进行推荐,实际应用过程当中,具体包括如下步骤:
步骤A.利用QoS训练样本集Q构造用户偏好数据集SAT,具体包括如下:
给定用户集合U={u1,…,um,…,uM},给定服务集合S={s1,…,sn,…,sN};定义Satm,n表示用户um对服务sn的偏好,并构建一个mxn的用户偏好矩阵SATmxn;同时构建一个mxn的QoS矩阵Qmxn,qm,n表示用户um访问服务sn的QoS值。
用户偏好从QoS数据中提取并提供两种评价准则,准则1,QoS值(可靠性等)越高用户越满意;准则2,QoS值(响应时间等)越低用户越满意。
然后由QoS数据中提取用户偏好,构造用户偏好数据集SAT,其中,Satm,n如下:
其中,公式(2)和公式(3)中,min(um)表示用户um访问的最小的QoS值,max(um)表示用户um访问的最大的QoS值。
步骤B.利用QoS训练样本集Q,由QoS数据中提取服务可信度,并定义C1,n为服务sn的可信度,并构建一个1xn的服务可信度矩阵C1xn,构造服务可信度数据集C;真实世界中,QoS很好的服务可以为网络环境不同的用户提供相似的高质量服务,而QoS很差的服务对于所有用户而言都不能正常的访问,即如果某一个服务对于不同的用户而言QoS值差异不大,那么该服务在计算用户之间相似度时作用不大;所以在计算用户之间相似度时,也要考虑服务本身的可信度,即服务是否对不同的用户有不同的QoS表现。
其中,C1,n如下:
公式(4)中,Qn表示服务sn全部已知QoS值的集合,表示服务sn全部已知QoS值的平均值,|Qn|表示服务sn全部已知QoS值的数量,δ是预设阈值。
步骤C.将服务可信度数据集C作为比重,联合用户偏好数据集SAT,计算各用户之间的偏好相似度,具体如下:
定义用户相似度矩阵SIMM×M,sim(u,v)表示用户v对于用户u之间的偏好相似度,v∈U,u∈U,v≠u,定义服务可信度比重ωj,这里ωn=C1,n,sim(u,v)的计算如公式(5)所示:
其中,ISat表示用户u和用户v共同访问的Web服务集合,n属于ISat是集合中的一个服务;Satu,n和Satv,n分别表示用户u和用户v对服务n的偏好,和分别表用户u和用户v对各自访问的Web服务的偏好平均值。
步骤D.分别针对各个用户,根据各用户之间相似度,采用top-k算法,获得各个用户分别所对应的优先相似邻居集合N(um);其中,1≤m≤M,M表示所有用户的总数,um表示所有用户中的第m位用户。
步骤E.分别针对各个用户,根据用户所对应的优先相似邻居集合N(um),结合该用户与其优先相似邻居集合N(um)中各用户的偏好相似度,联合PCC算法,采用如下公式:
计算获得该用户相对各个服务的缺失QoS预测值P(um,sn),进而获得各个用户分别相对各个服务的缺失QoS预测值P(um,sn);其中,1≤n≤N,N表示所有服务的总数,sn表示所有服务中的第n个服务;sim(um,v')表示用户um与用户v'之间的偏好相似度,qv',n用户v'访问服务sn的QoS值;表示用户v'对于所有已知服务的访问平均值;表示用户um对于除sn以外所有已知服务的访问平均值。
步骤F.分别针对各个用户,根据用户相对各个服务的缺失QoS预测值P(um,sn),向用户推荐QoS优秀的候选未知服务,并采用MAE评价准则输出该用户所对应的QoS预测值相较于真实值的准确率结果。
将本发明所设计用于Web服务推荐的协同过滤算法,应用在WSDREAM数据库上进行实验,并将传统的协同过滤推荐算法UPCC、IPCC、WSREC和最新的协同过滤推荐算法PPSR作为对比算法。实验中使用的QoS属性为Web服务的响应时间(response time)和吞吐量(throughput)。
WSDREAM数据集收集了全球30个国家的339个用户和70多个国家的5825个Web服务,包含197万多条真实的Web服务QoS访问记录,分为响应时间和吞吐量两个部分。响应时间指的是从用户发出服务的调用指令开始直至接收到目标服务的相关响应结果为止所花费的时间;吞吐量指的是以比特为信息量单位的在通信信道中每秒成功交付的数据包平均大小的值。
矩阵的密度定义为训练集的密度(density),我们的算法运行在6个不同的密度上,分别是5%、10%、15%、20%、25%、30%。如果矩阵的密度是10%,那么矩阵中10%的数据组成训练集,剩下90%的数据组成测试集。每种算法做10次随机实验,取MAE的平均值作为实验结果。最终的实验结果证明了UPICCF算法相比于目前基于协同过滤的Web服务推荐算法,能有效提高QoS预测准确率从而提高Web服务推荐质量。
方法 | 5% | 10% | 15% | 20% | 25% | 30% |
UPCC | 0.636 | 0.555 | 0.515 | 0.486 | 0.467 | 0.454 |
IPCC | 0.634 | 0.594 | 0.510 | 0.456 | 0.433 | 0.416 |
WSREC | 0.625 | 0.582 | 0.501 | 0.450 | 0.427 | 0.411 |
PPSR | 0.609 | 0.542 | 0.489 | 0.440 | 0.422 | 0.409 |
UPICCF | 0.576 | 0.518 | 0.457 | 0.421 | 0.410 | 0.403 |
表2
方法 | 5% | 10% | 15% | 20% | 25% | 30% |
UPCC | 27.218 | 22.612 | 20.471 | 19.261 | 18.258 | 17.462 |
IPCC | 27.018 | 26.195 | 25.558 | 23.973 | 22.575 | 21.565 |
WSREC | 26.757 | 22.370 | 20.219 | 18.928 | 17.891 | 17.080 |
PPSR | 21.836 | 17.853 | 15.933 | 14.908 | 14.132 | 13.733 |
UPICCF | 19.032 | 15.619 | 14.272 | 13.582 | 13.108 | 12.774 |
表3
如上表2所示RT库上UPICCF算法与对比算法的MAE比较结果,以及表3所示TP库上UPICCF算法与对比算法的MAE比较结果,可以看出,基于用户偏好和服务可信度的协同过滤算法UPICCF在RT库上和TP库上均实现了最低的MAE值,即拥有最佳的QoS预测准确率,我们在该研究方向上的工作是有意义的。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
Claims (7)
1.一种用于Web服务推荐的协同过滤算法,基于用户偏好和服务可信度,针对Web服务进行过滤,并向用户进行推荐,其特征在于,包括如下步骤:
步骤A.利用QoS训练样本集Q构造用户偏好数据集SAT;
步骤B.利用QoS训练样本集Q构造服务可信度数据集C;
步骤C.将服务可信度数据集C作为比重,联合用户偏好数据集SAT,计算各用户之间的偏好相似度;
步骤D.分别针对各个用户,根据各用户之间相似度,采用top-k算法,获得各个用户分别所对应的优先相似邻居集合N(um);其中,1≤m≤M,M表示所有用户的总数,um表示所有用户中的第m位用户;
步骤E.分别针对各个用户,根据用户所对应的优先相似邻居集合N(um),结合该用户与其优先相似邻居集合N(um)中各用户的偏好相似度,计算获得该用户相对各个服务的缺失QoS预测值P(um,sn),进而获得各个用户分别相对各个服务的缺失QoS预测值P(um,sn);其中,1≤n≤N,N表示所有服务的总数,sn表示所有服务中的第n个服务;
步骤F.分别针对各个用户,根据用户相对各个服务的缺失QoS预测值P(um,sn),向用户推荐QoS优秀的候选未知服务,并采用MAE评价准则输出该用户所对应的QoS预测值相较于真实值的准确率结果。
2.根据权利要求1所述一种用于Web服务推荐的协同过滤算法,其特征在于,所述步骤A,利用QoS训练样本集Q构造用户偏好数据集SAT,包括如下:
给定用户集合U={u1,…,um,…,uM},给定服务集合S={s1,…,sn,…,sN};定义Satm,n表示用户um对服务sn的偏好,并构建一个mxn的用户偏好矩阵SATmxn;同时构建一个mxn的QoS矩阵Qmxn,qm,n表示用户um访问服务sn的QoS值,然后由QoS数据中提取用户偏好,构造用户偏好数据集SAT。
3.根据权利要求2所述一种用于Web服务推荐的协同过滤算法,其特征在于,所述Satm,n如下:
<mrow>
<msub>
<mi>Sat</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mi>&alpha;</mi>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>m</mi>
<mi>e</mi>
<mi>a</mi>
<mi>s</mi>
<mi>u</mi>
<mi>r</mi>
<mi>e</mi>
<mn>1</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>&beta;</mi>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>m</mi>
<mi>e</mi>
<mi>a</mi>
<mi>s</mi>
<mi>u</mi>
<mi>r</mi>
<mi>e</mi>
<mn>2</mn>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>&alpha;</mi>
<mo>=</mo>
<mfenced open = "(" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>a</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>=</mo>
<mi>min</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>1</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>=</mo>
<mi>max</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mfrac>
<mrow>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>min</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
<mo><</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo><</mo>
<mi>max</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>&beta;</mi>
<mo>=</mo>
<mfenced open = "(" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mn>1</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>=</mo>
<mi>min</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>=</mo>
<mi>max</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mfrac>
<mrow>
<mi>max</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>min</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
<mo><</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo><</mo>
<mi>max</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
其中公式(2)和公式(3)中,min(um)表示用户um访问的最小的QoS值,max(um)表示用户um访问的最大的QoS值。
4.根据权利要求3所述一种用于Web服务推荐的协同过滤算法,其特征在于,所述步骤B,利用QoS训练样本集Q,由QoS数据中提取服务可信度,并定义C1,n为服务sn的可信度,并构建一个1xn的服务可信度矩阵C1xn,构造服务可信度数据集C。
5.根据权利要求4所述一种用于Web服务推荐的协同过滤算法,其特征在于,所述C1,n如下:
<mrow>
<msub>
<mi>C</mi>
<mrow>
<mn>1</mn>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msqrt>
<mrow>
<msub>
<mo>&Sigma;</mo>
<mrow>
<mi>q</mi>
<mo>&Element;</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
</mrow>
</msub>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<msub>
<mi>q</mi>
<mi>n</mi>
</msub>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>/</mo>
<mo>|</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
<mo>|</mo>
</mrow>
</msqrt>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
<mo>|</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
<mo>|</mo>
<mo>&GreaterEqual;</mo>
<mi>&delta;</mi>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msqrt>
<mrow>
<msub>
<mo>&Sigma;</mo>
<mrow>
<mi>q</mi>
<mo>&Element;</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
</mrow>
</msub>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>q</mi>
<mrow>
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<msub>
<mi>q</mi>
<mi>n</mi>
</msub>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>/</mo>
<mo>|</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
<mo>|</mo>
</mrow>
</msqrt>
<mo>&times;</mo>
<mo>|</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
<mo>|</mo>
<mo>/</mo>
<mi>&delta;</mi>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>f</mi>
<mo>|</mo>
<msub>
<mi>Q</mi>
<mi>n</mi>
</msub>
<mo>|</mo>
<mo><</mo>
<mi>&delta;</mi>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
公式(4)中,Qn表示服务sn全部已知QoS值的集合,表示服务sn全部已知QoS值的平均值,|Qn|表示服务sn全部已知QoS值的数量,δ是预设阈值。
6.根据权利要求5所述一种用于Web服务推荐的协同过滤算法,其特征在于,所述步骤C中,将服务可信度数据集C作为比重,联合用户偏好数据集SAT,计算各用户之间的偏好相似度,具体如下:
定义用户相似度矩阵SIMM×M,sim(u,v)表示用户v对于用户u之间的偏好相似度,v∈U,u∈U,v≠u,定义服务可信度比重ωj,这里ωn=C1,n,sim(u,v)的计算如公式(5)所示:
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>,</mo>
<mi>v</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mi>&Sigma;</mi>
<mrow>
<mi>n</mi>
<mo>&Element;</mo>
<mi>I</mi>
<mi>s</mi>
<mi>a</mi>
<mi>t</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>Sat</mi>
<mrow>
<mi>u</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<mrow>
<msub>
<mi>Sat</mi>
<mi>u</mi>
</msub>
</mrow>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<msub>
<mi>Sat</mi>
<mrow>
<mi>v</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<mrow>
<msub>
<mi>Sat</mi>
<mi>v</mi>
</msub>
</mrow>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msqrt>
<mrow>
<msub>
<mi>&Sigma;</mi>
<mrow>
<mi>n</mi>
<mo>&Element;</mo>
<mi>I</mi>
<mi>s</mi>
<mi>a</mi>
<mi>t</mi>
</mrow>
</msub>
<msub>
<mi>&omega;</mi>
<mi>n</mi>
</msub>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>Sat</mi>
<mrow>
<mi>u</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<mrow>
<msub>
<mi>Sat</mi>
<mi>u</mi>
</msub>
</mrow>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
<msqrt>
<mrow>
<msub>
<mi>&Sigma;</mi>
<mrow>
<mi>n</mi>
<mo>&Element;</mo>
<mi>I</mi>
<mi>s</mi>
<mi>a</mi>
<mi>t</mi>
</mrow>
</msub>
<msub>
<mi>&omega;</mi>
<mi>n</mi>
</msub>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>Sat</mi>
<mrow>
<mi>v</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<mrow>
<msub>
<mi>Sat</mi>
<mi>v</mi>
</msub>
</mrow>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
</mrow>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
其中,ISat表示用户u和用户v共同访问的Web服务集合,n属于ISat是集合中的一个服务;Satu,n和Satv,n分别表示用户u和用户v对服务n的偏好,和分别表用户u和用户v对各自访问的Web服务的偏好平均值。
7.根据权利要求6所述一种用于Web服务推荐的协同过滤算法,其特征在于,所述步骤E中,分别针对各个用户,根据用户所对应的优先相似邻居集合N(um),结合该用户与其优先相似邻居集合N(um)中各用户的偏好相似度,联合PCC算法,采用如下公式:
<mrow>
<mi>P</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>,</mo>
<msub>
<mi>s</mi>
<mi>n</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mover>
<msub>
<mi>q</mi>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
</msub>
<mo>&OverBar;</mo>
</mover>
<mo>+</mo>
<mfrac>
<mrow>
<msub>
<mi>&Sigma;</mi>
<mrow>
<msup>
<mi>v</mi>
<mo>&prime;</mo>
</msup>
<mo>&Element;</mo>
<mi>N</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</msub>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>,</mo>
<msup>
<mi>v</mi>
<mo>&prime;</mo>
</msup>
<mo>)</mo>
</mrow>
<mo>&times;</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>q</mi>
<mrow>
<msup>
<mi>v</mi>
<mo>&prime;</mo>
</msup>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo>-</mo>
<mover>
<msub>
<mi>q</mi>
<msup>
<mi>v</mi>
<mo>&prime;</mo>
</msup>
</msub>
<mo>&OverBar;</mo>
</mover>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msub>
<mi>&Sigma;</mi>
<mrow>
<msup>
<mi>v</mi>
<mo>&prime;</mo>
</msup>
<mo>&Element;</mo>
<mi>N</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</msub>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>m</mi>
</msub>
<mo>,</mo>
<msup>
<mi>v</mi>
<mo>&prime;</mo>
</msup>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
计算获得该用户相对各个服务的缺失QoS预测值P(um,sn),进而获得各个用户分别相对各个服务的缺失QoS预测值P(um,sn);其中,1≤n≤N,N表示所有服务的总数,sn表示所有服务中的第n个服务;sim(um,v')表示用户um与用户v'之间的偏好相似度,qv',n用户v'访问服务sn的QoS值;表示用户v′对于所有已知服务的访问平均值;表示用户um对于除sn以外所有已知服务的访问平均值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710211954.0A CN107133268B (zh) | 2017-04-01 | 2017-04-01 | 一种用于Web服务推荐的协同过滤方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710211954.0A CN107133268B (zh) | 2017-04-01 | 2017-04-01 | 一种用于Web服务推荐的协同过滤方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107133268A true CN107133268A (zh) | 2017-09-05 |
CN107133268B CN107133268B (zh) | 2020-03-31 |
Family
ID=59716359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710211954.0A Active CN107133268B (zh) | 2017-04-01 | 2017-04-01 | 一种用于Web服务推荐的协同过滤方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107133268B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109284086A (zh) * | 2018-08-17 | 2019-01-29 | 浙江工业大学 | 面向需求自适应的Web服务动态演化方法 |
CN111708936A (zh) * | 2020-05-26 | 2020-09-25 | 中国人民解放军海军工程大学 | 基于相似性传播策略的Web服务推荐系统及方法 |
CN115277523A (zh) * | 2022-07-26 | 2022-11-01 | 齐鲁工业大学 | 基于改进条件变分自编码器的混合QoS预测方法及系统 |
CN115964570A (zh) * | 2023-03-17 | 2023-04-14 | 湖南师范大学 | 基于QoS多时段变化特征预测的云服务推荐方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103139310A (zh) * | 2013-03-06 | 2013-06-05 | 杭州电子科技大学 | 一种基于混合协同过滤的Web服务QoS预测方法 |
CN103780461A (zh) * | 2014-01-21 | 2014-05-07 | 北京邮电大学 | 综合考虑主客观权重的Web业务服务质量QoS的测量方法 |
CN104820719A (zh) * | 2015-05-25 | 2015-08-05 | 北京邮电大学 | 基于用户上下文数据的Web服务信誉度度量方法 |
-
2017
- 2017-04-01 CN CN201710211954.0A patent/CN107133268B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103139310A (zh) * | 2013-03-06 | 2013-06-05 | 杭州电子科技大学 | 一种基于混合协同过滤的Web服务QoS预测方法 |
CN103780461A (zh) * | 2014-01-21 | 2014-05-07 | 北京邮电大学 | 综合考虑主客观权重的Web业务服务质量QoS的测量方法 |
CN104820719A (zh) * | 2015-05-25 | 2015-08-05 | 北京邮电大学 | 基于用户上下文数据的Web服务信誉度度量方法 |
Non-Patent Citations (4)
Title |
---|
LINGSHUANG SHAO 等: "Personalized Qos prediction for Web services via collaborative filtering", 《IEEE INTERNATIONAL CONFERENCE ON WEB SERVICES》 * |
YECHUN JIANG 等: "An effective Web service recommendation method based on personalized collaborative filtering", 《2011 IEEE INTERNATIONAL CONFERENCE ON WEB SERVICES》 * |
江晓苏: "Qos感知的Web服务个性化推荐", 《计算机技术与发展》 * |
盛国军 等: "基于协同过滤的可信Web服务推荐", 《东北大学学报(自然科学版)》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109284086A (zh) * | 2018-08-17 | 2019-01-29 | 浙江工业大学 | 面向需求自适应的Web服务动态演化方法 |
CN109284086B (zh) * | 2018-08-17 | 2021-05-18 | 浙江工业大学 | 面向需求自适应的Web服务动态演化方法 |
CN111708936A (zh) * | 2020-05-26 | 2020-09-25 | 中国人民解放军海军工程大学 | 基于相似性传播策略的Web服务推荐系统及方法 |
CN115277523A (zh) * | 2022-07-26 | 2022-11-01 | 齐鲁工业大学 | 基于改进条件变分自编码器的混合QoS预测方法及系统 |
CN115277523B (zh) * | 2022-07-26 | 2023-10-24 | 齐鲁工业大学 | 基于改进条件变分自编码器的混合QoS预测方法及系统 |
CN115964570A (zh) * | 2023-03-17 | 2023-04-14 | 湖南师范大学 | 基于QoS多时段变化特征预测的云服务推荐方法及装置 |
CN115964570B (zh) * | 2023-03-17 | 2023-06-02 | 湖南师范大学 | 基于QoS多时段变化特征预测的云服务推荐方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107133268B (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102594905B (zh) | 一种基于场景的社交网络位置兴趣点推荐方法 | |
CN108205682B (zh) | 一种用于个性化推荐的融合内容和行为的协同过滤方法 | |
CN105005582B (zh) | 多媒体信息的推荐方法及装置 | |
CN107133268A (zh) | 一种用于Web服务推荐的协同过滤算法 | |
Cheng et al. | A novel big data based telecom operation architecture | |
CN108804551B (zh) | 一种兼顾多样性与个性化的空间兴趣点推荐方法 | |
CN102591966B (zh) | 一种移动场景下的搜索结果过滤方法 | |
CN107391670A (zh) | 一种融合协同过滤和用户属性过滤的混合推荐方法 | |
CN107679101A (zh) | 一种基于位置和信任关系的网络服务推荐方法 | |
CN103077220A (zh) | 一种基于用户群关联度的个性化推荐方法及系统 | |
CN103577985A (zh) | 数据渠道选择方法和数据处理平台 | |
CN104021153A (zh) | 一种校园图书的个性化推荐方法 | |
CN107145541B (zh) | 基于超图结构的社交网络推荐模型构建方法 | |
CN104077723A (zh) | 一种社交网络推荐系统及方法 | |
CN105718576A (zh) | 与地理特征相关的个性化位置推荐系统 | |
CN104021230A (zh) | 一种基于社区发现的协同过滤方法 | |
CN107357845A (zh) | 一种基于Spark的旅游兴趣推荐系统及推荐方法 | |
CN103617221B (zh) | 软件推荐方法及系统 | |
CN105138536B (zh) | 基于有向超图的移动社交网络数据分片方法 | |
CN106934004A (zh) | 一种基于地域特征向用户推荐文章的方法和装置 | |
CN114385627A (zh) | 一种基于gis地图的数据分析方法、装置及存储介质 | |
CN106951459B (zh) | 基于熵值法的改进协同过滤推荐方法 | |
CN102750288B (zh) | 一种互联网内容推荐方法及装置 | |
CN106611339B (zh) | 种子用户筛选方法、产品的用户影响力评价方法及装置 | |
CN106354886A (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 |