




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本人我,本及其研究工作是由在导师指导下独立完成的,在完成时所利用的一切资料均已考文献中列出。时间:20146:推荐系统,隐私保护,k-,此消彼 ysisofk-anonymityprivacy-menderAuthor:WangRuijunTutor:Zhangmerceismakinguseof putertechnologyandnetworkcommunicationtechnologyforbusinessactivities.Nowadays, merceinmodernlifeisnotonlyanindustry,butalsohave eawayoflife,divingdeeplyintopeople'slives.Activewebsitesaroundus,suchas,JingdongMall,andsomesiteswhichwasfoundedintheUnitedStates,likeAmazon,eBay,andsomefoundedinJapan,likeLotte, mercehaseanindispensablepartofmodernlife.Withtheincreasingnumberofusers,howtooptimizeandimprovetheuserexperiencein mercehas eanimportantpartofhowtoimprovetheabilityofgettingmoreactiveusersfor merceenterpirses.Amongthem,the mendersystemisanapplicationofinformationfiltering. systemcanbeinformationorpreferencesmaybeaffectedbyphysical(eg:movies,TVshows,music,books,news,images,webpages)to mendtotheuser.Itisaimedatusersinterestedindatamining,withtheestablishmentofuserinterestmodelrelevanttomathematicalmodels,andfurtherforsomeusersoftheproductthathasnotbeenexposedtopredicttheendusertopredictthelikelyfavoritecommodity mendation.Theoptimizationofalgorithm,whichisused menditemsmatchinguser’sneed,istoimprovethequalityofservices menderBecauseoftheaboverequirements,thedevelopmentofamoreaccurateprediction,higher mendersystem,issomethingmanyscholarsdevotedthemselvesto.Duringthesestudies,itoftenrequiresreleasingtheuserdatatotheresearchers,however,intheprocess,userswillhaveinevitablybeenleakedtheirprivacy.Thus,undersuchcircumstances,k-anonymityemergedattheexpenseofslightlyStudyprerequisite mendedpredictionaccuracygreatlyprotectstheprivacyoftheuserinvolvedintheresearchdata,achievingthepurposeofprotectingtheprivacyofthe mendersystemHowever,undertheabovecases,inrecentyears,manystudiesaimingatprivacy-preservingmendersystemsaresomethingaboutatrade-offbetweenpredictionaccuracypreservingtheusers’privacy.AndthispaperistoachievethefollowingFirst,studyoftheclassicalitem-based mendersystem,whileimplementitwithprogram,intermscomparedtoother mendersystemscanachievehighpredictionaccuracy.Alsostudiedk-anonymity,oneofthecommonlyusingalgorithmk-clusteringalgorithm,thesystemanonymizationprocedurestoachievethek-anonymityprivacyprotectionmendationsystembasedSecond,fortherealizationofprivacy-perserving mendersystem,afteritspredictiveaccuracywerecalculatedandyzed,andtheitem-based mendationsystemiscomparedtothestudyandmeetthe mendedsystempredictionaccuracyofanonymityaftertheconclusionbuthighandexplainedtheysis.Third,basedontheabove mendationsystemmodel,althoughitspredictionaccuracycomparedtotheclassic mendationsystemishigherintermsofaccuracy,butk-anonymitytoprotecttheirprivacyaspectsofthetheorycomparedtoclassicaltherearemoredamaged,sothepredictionaccuracyanduserprivacyprotection,"trade-off",madesomeimprovements,undertheprivacyprotectionsystemtoimprovetheoriginalpremiseofprivacy,alittlesacrificesomepredictiveaccuracy,butstillbetterthanthemenderInaddition,wealsouseexperimentstosimulatetheusertousethesystemintheprocess,theeffectivenessandperformanceofthesystemiscarriedoutevaluation,summarizessomeoftheresultsobtainedandthelackofmethods,andfutureworkisalsodiscussed. mendersystems,privacypreserving,k-anonymity,trade- 绪 研究背 国内外研究现 课题来 的组织结 相关技术现 基于商品的推荐系 k-推荐系 k-集群系统化算 本章小 k-的基于商品推荐系统设 系统功能需 系统总体架构设 系统顶层流程设 系统结构模块概要设 系统功能模块详细设 推荐模块设 系统化模块设 测试模块设 本章小 k-的基于商品推荐系统实 系统开发环 系统实现概述和功能模块 推荐模块实 用户评分数据转化为矩阵实 商品相似度矩阵计 预测用户评分的实 系统化模块实 往矩阵中未评论的位置填入预测 原OKA算法实 改进OKA算法实 测试模块实 本章小 系统实 实验环 预测精度实 实验目 实验过 实验总结与分 隐私保护实 实验目 实验过 实验总结与分 本章小 总结与展 工作总 工作展 致 参考文 绪(InternetAddedNetwork)上以电子交易方式进行交易活动和相关服务活动,是传统商业活动各DI近年来用户增长,电子商务规模也不断增长。据中国电子商务 同期增长27.6%。同时,近年来国内外也出现很多有代表性的电子商务,例如的Amazon,eBay等,国内的主要有淘宝网,京东商城,当当网等。各提高自身竞争力的关键。从1999年明尼苏达大学的Sarwar经典的以商品为基准的推荐系统以来,如件下,k-作为推荐系统里保护用户隐私的法而产生。将用户数据进行k-化,即使研究者获得数据,也难以直接分辨用户,从而达到了一定的保护同时,问题再次产生。由于的过程中,数据同样被改变,用这样“不实”的数本正是在以上的背景之下,研究了经典的推荐系统和k-方法,将两者结合并且程序实现,并验证了化之后的系统比起之前预测精度更高的结论。同时在这种户隐私的目的。Canny提出了一个使用工具实现的隐私保护推荐系统[5]。在这个系同时信息能够保持加密状态。Polat等人提出了一个推荐方案[7],其中用户的评价是随机从用户自身的评价中抽取,整个推荐是基于被随机的用户评价进行的。Parra-Aranu等人他们的方案并不能给出一个完备的关于数据集已经被化的数学证明,的诞生他们的实验结果说明预测的评分没有损失精度。Chang等人提出了一个先将用户评论的方法是先通过奇异值分解让矩阵密集化,然后使用了k-得到结果矩阵。且设计了者模型测试隐私保护的程度。首先需要研究基于商品的推荐系统的架构,并将其程序实现;在实现基本的推荐系统之后,再将其进行k-化,获得隐私保护的第一章绪论系统化算法等方面。了明确阐述,如何具体实现了推荐,化和测试隐私保护几个模块的功能。并用实验测试了可能隐私的概率,比较改进前后的系统隐私保护情况。相关技术现或是服务的个性化推荐提供资讯挖掘技术。从1995年卡耐基梅隆大学的荐系统的研究已走过将近20个年头。而在这二十多年中,协同过滤,矩阵分解等推荐N(knrtnighborollrtefilteringlgritm)在网络上得到的应用十分广泛。同时也随着用户群指数式的增长,如何实现高推荐质量和更加快捷的推荐算法就成为了计算机科学家的首要任务。1999年,明尼苏达大学的roupLens团队的Saar和onan提出了基于商品的协同过滤算法]。本课题的推荐系统,也正是基于这个算法进行推荐,所以在此就重点描述这个系 和这些“邻居”对商品的评分历史记录,自然也能计算出甲对“邻居”们所接触商品商品用户
用户相相相相用户相
商品商品用户商品用户推荐商品2图2.12sim(𝑖⃗,𝑗⃗)=𝑐𝑜𝑠(𝑖⃗,𝑗⃗)=‖𝑖⃗‖∗‖𝑗⃗2̅𝑖⃗sim(𝑖⃗,𝑗⃗)= −̅)2 − ̅𝑢̅𝑢sim(𝑖⃗,𝑗⃗)= −̅)2 −̅ 用户评论的权重和,就得到了目标用户对目标商品的预分:∑𝑗⃗∈最相似的前𝑁个商品(𝑠𝑖⃗,𝑗⃗∗𝑃𝑢,𝑖⃗ (|𝑠𝑗⃗∈最相似的前𝑁个商 说到k-推荐系统,首先必须得提到k-的概念。银行或者医院这样的公共机涉及机构中用户的,,工作单位或是收入,健康状况等个人信息。在这种情况然而人的研究中我们知道,即使用户被去除,由于用户-商品评论矩李三对应的具体用户。tΩk-的。 用户图2.2𝑡𝑢=𝑟𝑢∈𝑅𝑚,整个评分数据库表示为T{𝑟𝑢}𝑛T中任意一个用户评分矢量,如果至少存在k−1个用户和其相同,那么我们就称这个系统是k-的。一个的推荐系统也可表示为𝑇= ,𝑘)}𝑛′这其中𝑟与𝑘代表在T中𝑟的数量为𝑘 我们的目的是将一个原始数据k-化,不难想到,我们的需求则是在保持信息损阐释一下这个概念。从之前推荐系统的定义我们可以知道,T{}𝑛。首先,对于一Tm维矢量的欧式距离来表示,即dist(𝑢,𝑣)=√∑(𝑟𝑢𝑖⃗−div(𝑈)=∑𝑑𝑖⃗𝑠𝑡(𝑢,一个用户矢量和一个矢量集的差异就定义为此矢量集的大小与此用户矢量和中心矢量的差异的乘积,即为:dist(𝑢,𝑈)=|𝑈|∗𝑑𝑖⃗𝑠𝑡(𝑢,InformationLoss(𝑈) 𝜏𝑖⃗⊊𝑈且根据以上的定义,将一个推荐系统化,则主要分为以下两个步骤k集当中,所有子集的用户数都至少为k。本章主要介绍了本文实现的基于k-的以商品为基准的推荐系统在设计与实现中所用到的相关技术和理论基础。2.1节介绍了基于商品的推荐系统,主要介绍和分析了此系统的定义,数学模型和预测一般用户对商品评分的过程。2.2节介绍了k-的概念并由此延伸介绍了k-推荐系统的数学模型。2.3节介绍并分析了常用的k-化算法,重点介绍了本系统中的算法——k-集群(k-clustering)化算法。k-的基于商品推荐系统设除此之外,我们则需要对数据提供者提供的数据进行化,将用户进行的评分行中有许多组评分相同的用户,从而每个用户的具体都被k-化所“”。到的是,在对系统进行化时,我们使用了两种方法。化测定分析了不同的化系统用户隐私被危害的概率。针对用不同化的系统,用者模型来测试其隐私保护的能力。也就是,用率就能得出不同化推荐系统在隐私保护方面的优劣性。源数原系统分 3.1正是把文件形式的数据生成为用户-商品的评分矩阵,进而为后来的预测和化作准原用户-商品评分矩阵化。这是本系统的部分。首先应该初始化用户-OKA算法将其分为若干个子集,其中每个子集中的元素个数至少为k,且每个子集中所有用户的评分相同。系统测试。在获得化的数据之后,先利用化的数据对用户评分进系统模块,系统化模块和测试模块。推荐系统模块包括了所有通过用户-商品矩阵预测用户评分的功能,包括化前与化之后;系统化模块主要负责通过用户责测试化推荐系统的预测精度以及其受者模型危害隐私的概率。用户按矢量距离集群用户按矢量距离集群集群矢量平均用用户-商品矩测试模分权重和公式文件数据转化为矩计算用户和各集群距取距离最近集群为结3.2系统化模块。系统化模块是本课题中的另一算法。在获得用户-商户评分进行平均化,获得化之后的用户评分,从而达到了k-的目标。测试模块。这个模块展示了所实现的k-推荐系统的实用性与进步性。主要是在于预测精度和对用户隐私的保护程度。化后的系统和化前的原系统𝑟=1
∑𝑚 𝑢∈𝑈
−𝑟
ij的用户。𝑟𝑙𝑖⃗为用户-商品矩阵中l对商i的评分,𝑟∗𝑖⃗为商i获得评分的平均值。𝑟𝑙𝑗⃗和𝑟∗𝑗⃗以此类推商品i的预分则由下列公式给出:+f(𝑢,𝑖⃗;𝑤(𝑢)=𝑢)= ∑𝑞∈𝐼𝑢𝑠𝑖⃗𝑞(𝑟𝑢𝑞−+ |𝑠𝑞∈𝐼𝑢以上公式中,𝐼𝑢是用户u评论过的商品集合。而在上述公式中,𝑢,𝑖⃗表示预分涉及的目标用户和目标商品;𝑤(𝑢𝑢为用户向推荐系统提供的预测信息,在此,我们定义预测输入为当用户需要获得个性化推荐事提供给预测者的信息。因为用户-商品矩阵在化之后,每个用户都至少有k-1个相同评分的用户,所以用户需要提供给推荐者以而对于化的推荐系统,用户的相似度由化之后的用户-商品矩阵得到,如⃗ 𝑙=1 𝑙=1 以上公式中,𝑟̃𝑙𝑖⃗表示化矩阵中用户l对于商品i的评分,𝑟̃∗𝑖⃗表示其品i的评而在计算化用户-商品矩阵中某用户u对于某商品i的预分时由于矩阵已度的评分矢量𝑟𝑢。 ̃∗𝑞 |̃𝑠| 以上公式提供的预分使用的是化后商品的平均评分和从化后的矩阵推荐的目的,即使用户-商品矩阵已经被化了。这一点同样在第五章的实验中能够上面的分析我们知道,无论矩阵化与否,其都是用一个二维矩阵评分信息。将其至一个二维矩阵当中。这一步同样是无论化与否都是相同的。这一步需要考虑到化与否的差异。若矩阵未化,则使用的是矩阵中本身的用户对商品的评分值。然而在化之后,对于一个用户而言,使用的是其化之前知道用户具体是对应哪个ID。开开结获得用户-商品评数据图3.3系统化模块设户u和v,其差异性公式如下:dist(𝑢,𝑣)=√∑𝑖⃗∈𝐼(𝑟𝑢𝑖⃗−∑𝑗⃗∈τ=centroid(τ)
如算法1所示:输出:一个原推荐系统的分割τ𝑖⃗(𝑖⃗=1,2令K令τ𝑖⃗{𝑟𝑖⃗},从i1While(T!=T中的第一个用户评分矢量T=T\{𝑟输入:一个系T的分割τ𝑖⃗(𝑖⃗=1,2输出:一个调整后的分割τ𝑖⃗(𝑖⃗=1,2令RFor每一个|𝜏𝑖⃗|>𝑘的𝜏𝑖⃗进行如下步While(|𝜏𝑖⃗|>𝑟𝜏𝑖⃗且𝑟是和𝜏𝑖⃗距离最远的一个用户评分矢令𝜏𝑖⃗𝜏𝑖⃗𝑟};RR𝑟While(𝑅!=令R=RIf存在一个子集𝜏𝑖⃗满足|𝜏𝑖⃗|<r更新每一个𝜏𝑖⃗的中心由于即使经过以上的化,用户在获得自身个性化推荐时,仍需要向推荐者提供自身实际而非化的商品评分。并且由以上的化步骤可知,假如对原用户-商品矩阵进行的是3-化,并且用户甲,乙,丙是归属于同一个用户集群中。如果甲给推荐们可以移除甲在这个集群中的评分再除以二,整个系统就从3-降到了2-。这无𝑟̅
𝑟1+𝑟2+𝑟3𝑟2+𝑟 =3𝑟̅−𝑟k输入:一个系T的分割τ𝑖⃗(𝑖⃗=1,2输出:一个调整后的分割τ𝑖⃗(𝑖⃗=1,2令RFor每一个|𝜏𝑖⃗|>𝑘的𝜏𝑖⃗进行如下步While(|𝜏𝑖⃗|>𝑟𝜏𝑖⃗且𝑟是和𝜏𝑖⃗距离最远的一个用户评分矢令𝜏𝑖⃗𝜏𝑖⃗𝑟};RR𝑟While(𝑅!=令R=R{𝑟}If存在一个子集𝜏𝑖⃗满足|𝜏𝑖⃗|<For每一个𝜏𝑖⃗进行从T−𝜏𝑖⃗中找到一个离𝜏𝑖⃗最近的用户评分矢量将𝑟加入𝜏𝑖⃗=𝜏𝑖⃗−{𝑟他子集中的未知矢量,因此系统未从k-降到(k-1)-。同时,在者模型中𝑟1+𝑟2+𝑟3+𝑟𝑟̅4𝑟2+𝑟3≠3𝑟̅− 开开用户-输T=空否是结任选KR图3.5OKA算法k开开个数多于是是否否否是是否是图3.6OKA 正确鉴别至所属集群的概率为1。我们就以1为最弱者的基准线
M=⌊𝑛⌋然后,根据化模块中的算法,我们设计了一个可能的者模型。每当我们获们在此重复500次,并把识别出来的次数除以500所得到的频率作为用户被正确鉴别的开开否是结图3.7则次数加1,若不正确,则加0。最后用总次数除以500,得到用户被鉴别的概率。k-的基于商品推荐系统实根据第三章介绍的k-的基于商品的推荐系统的总体设计和功能模块详细设计,实验过程和数据均在Eclipse4.3.0的控制台中显示。操作系统:Windows本系统总体实现了化的推荐系统,包括生成用户-商品评分矩阵,通过计算商品相似度挖掘商品之间的联系,化用户商品矩阵,以及预测用户对商品的评分和化统预精。下点述了全的现。图4.1展现系统所有的评分转化为用户-商品的矩阵。由于文件中的信息包括评论用户,评论商品,评分和时间,我们获取最主要的信息于新的二维数组之中。4.1基于用户-商品的评分矩阵,利用OKA化算法实现推荐系统的k-化的实现原OKA算法。OKA算法的是一个系统从源数据成为k-化的数据然后把其中的用户根据商品进行分类,最后化各个集群中的用户。实现接口模块,我们需要实现将于文件中的用户评分数据转化为用户-商品评分的二维数组,计算获得商品的相似度值,以及获得用户对未评论商品的预分值。图4.2publicdouble[][]GetMatrixFromFile(Stringfilename,intMaxUser,intthrowsFileNotFoundException,IOException{fr=newbr=newdouble[][]Matrix=newdouble[MaxUser][MaxItem];Strings;while((s=br.readLine())!={StringTokenizerst=newStringTokenizer(s,"\t");Matrix[Integer.parseInt(st.nextToken())-1][Integer.parseInt(st.nextToken())-1]=}return}fr用来文件,br用来文件中的每一行,st去除文件中的空格并获得主要信息如二维数组Matrix当中。publicvoidGetSimilarMatrix()SimilarMatrix=newdouble[MaxItem][MaxItem];for(inti=0;i<MaxItem-1;i++){for(intj=i+1;j<MaxItem;j++)doubledotProduct=0;doublemagnitudei=0;doublemagnitudej=0;for(intk=0;k<MaxUser;k++)if(UIMatrix[k][i]!=0&&UIMatrix[k][j]!=0){dotProduct+=(UIMatrix[k][i]ItemAverMatrix[i])*(UIMatrix[k][j]-ItemAverMatrix[j]);magnitudei+=(UIMatrix[k][i]-ItemAverMatrix[i])*(UIMatrix[k][i]-ItemAverMatrix[i]);magnitudej+=(UIMatrix[k][j]-ItemAverMatrix[j])*(UIMatrix[k][j]-ItemAverMatrix[j]);}}if(magnitudei!=0&&magnitudejSimilarMatrix[i][j]=dotProduct/(Math.sqrt(magnitudei)*SimilarMatrix[i][j]=SimilarMatrix[i][j]=1;SimilarMatrix[j][i]=SimilarMatrix[i][j];}SimilarMatrix[i][i]=}publicvoidGetItemAver()ItemAverMatrix=newdouble[MaxItem];for(inti=0;i<MaxItem;i++){doubleRatingSum=intRatingNum=for(intj=0;j<MaxUser;j++)if(UIMatrix[j][i]!={RatingSum+=UIMatrix[j][i];}}if(RatingNum!=ItemAverMatrix[i]=RatingSum/ItemAverMatrix[i]=}}得到商品平均评分矩阵后,根据权重和公式,预测商品的评分实现如下publicdoubleGetPredictValue(double[][]Matrix,intpreuser,intpreitem)doublepresum=0,preplus=for(inti=0;i<{if(i==preitem)continue;if(Matrix[preuser][i]!=0){presum+=(Matrix[preuser][i]-ItemAverMatrix[i])*preplus+=}}if(preplus!=returnItemAverMatrix[preitem]+presum/return}系统化模块实填入矩阵中使稀疏性为0,在通过OKA算法进行k-化并且检测是否化成功。图4.3化模块结构publicvoidGetDenseMatrix()UIDenseMatrix=newdouble[MaxUser][MaxItem];for(inti=0;i<MaxUser;i++)for(intj=0;j<MaxItem;j++)if(UIMatrix[i][j]!=0)UIDenseMatrix[i][j]=UIMatrix[i][j];}}intuserintuser=intitem=Matrix[0].length;K=(int)(user/k);ArrayList<Integer>AllData=newfor(inti=0;i<user;i++)for(inti=0;i<{Randomrad=newintremain=intindex=rad.nextInt(remain);ArrayList<Integer>al=newArrayList<Integer>();cluster.put(i,al);}centroid=newdouble[K][item];for(inti=0;i<K;i++){intj=cluster.get(i).get(0);centroid[i]=Matrix[j];}while(AllData.size()!={intr=intpn=doubledist=cluster.get(0).size()*DistanceOne(r,0,for(inti=1;i<K;i++)if(cluster.get(i).size()*DistanceOne(r,i,item)<{pn=dist=cluster.get(i).size()*DistanceOne(r,i,}}updatecenter(cluster.get(pn),item,pn);}当用户分配到相应集群时,则把相应id从AllData中去除。时,通过集群的编号在cluster中找到相应的集群并添加用户。DistanceOne:计算用户矢量之间的欧氏距离。具体实publicdoubleDistanceOne(inta,intb,intc)doubledist=for(inti=0;i<dist+=(Matrix[a][i]-centroid[b][i])*(Matrix[a][i]-return}publicvoidupdatecenter(ArrayList<Integer>al,intitem,intp)for(intj=0;j<item;j++)doublesum=for(inti=0;i<{sum+=}centroid[p][j]=sum/}}2)k群都至少有k个元素为止。具体实现如下:ArrayList<Integer>newal=newfor(inti=0;i<K;i++)while(cluster.get(i).size()>k){intfar=doubledist=DistanceOne(cluster.get(i).get(0),i,intj=while(j<cluster.get(i).size())if(DistanceOne(cluster.get(i).get(j),i,item)>{far=dist=DistanceOne(cluster.get(i).get(j),i,}updatecenter(cluster.get(i),item,i);}}while(newal.size()!={Randomr=newintseed=intranrec=newal.get(seed);intflag=1;ArrayList<Integer>lessthank=newfor(inti=0;i<K;i++)if(cluster.get(i).size()<flag=0;}}if(flag==0)intpn=doubledist=cluster.get(pn).size()*DistanceOne(ranrec,pn,inti=while(i<lessthank.size())if((cluster.get(lessthank.get(i)).size()*DistanceOne(ranrec,lessthank.get(i),item))<dist){pn=dist=cluster.get(lessthank.get(i)).size()*DistanceOne(ranrec,lessthank.get(i),item);}updatecenter(cluster.get(pn),item,pn);}elseintpn=doubledist=cluster.get(0).size()*DistanceOne(ranrec,0,for(inti=1;i<K;i++){pn=}}updatecenter(cluster.get(pn),item,pn);}}达到了k-化的目标。具体如下:publicvoidGetAnonyMatrix()KAnonymityMatrix=newdouble[Matrix.length][Matrix[0].length];for(inti=0;i<K;i++){for(intj=0;j<cluster.get(i).size();j++)KAnonymityMatrix[cluster.get(i).get(j)]=centroid[i];}}在改进的化算法当中,无论是集群步骤还是k值的调整步骤,其大体和原OKA户进行化,从而每个集群的中心矢量也受到了其他集群中用户的影响。具体如下:for(inti=0;i<K;i++)doubledist intN=for(intj=0;j<K;j++)if(j==i)for(intr=0;r<cluster.get(j).size();r++)if(cluster.get(i).size()*DistanceOne(cluster.get(j).get(r),item)<dist)
N=cluster.get(j).get(r);dist=cluster.get(i).size()*}}}updatecenter(cluster.get(i),item,i);}以上各变量的意义和之前原OKA算法一样。上面的实现中,调整好的各用户集群分publicvoidGetAnonyMatrixThree()KAnonymityMatrix=newdouble[Matrix.length][Matrix[0].length];for(inti=0;i<K;i++){for(intj=0;j<cluster.get(i).size()-1;j++)KAnonymityMatrix[cluster.get(i).get(j)]=centroid[i];}for(inti=0;i<cluster.size();i++)cluster.get(i).remove(cluster.get(i).size()-1);}publicintattackeronerating(double[][]Matrix,intuser)doubledist=intbelong=dist=cluster.get(0).size()*DistanceOne(user,0,for(inti=1;i<K;i++)if(cluster.get(i).size()*DistanceOne(user,i,Matrix[0].length)< Matrix[0].length);belong=i;}}for(inti=0;i<returnreturn} 表示用户和集群之间的距离值。belong:根据上一章节的需求说明和设计,本章介绍了整个社区发现系统的实现。4.1节介绍了系统开发的平台环境和语言基础。4.2节总体概述了系统的实现点,再对应需求细系统实前两个章节分别介绍了k-的基于商品的推荐系统的详细设计及功能模块 (R)Core(TM)2Quad 一个基于网络的研究用推荐系统,于1997年设立。当这个数据被用于基于商品的本实验使用过的数据则是在筛选评论过超过20个以上的用户的前提下,从所有评100000条用户评分作为实验数据。因此,在一定程度上保证了实验数品评分矩阵中,未评价的比率则为1−
=0.9369AE(nAboluteError)预分来计得到一系统的精度。这一个衡量预分比起际评分来差𝑝𝑖𝑞𝑖绝对值,即为|𝑝𝑖⃗−𝑞𝑖|。而对整个数据集来说,平均绝对误差先计算所有数据对的绝对MAE= Error
∑𝑁(𝑝𝑖⃗−RMSE=√Sarwar在基于商品的推荐系统中的实验我们得知,当训练集占所有数据的比例为0.8时,最后的预测结果最佳。因此在此处我们直接使用训练集比例为0.8,剩下的测试集为0.2。所有数据的80%和20%。为了确保实验结果的准确性和客观性,我们重复五次实验来达5.2所示,源数u.data被分割成u1.base,u1.testu5.base,u5.test五组数据集进试。5.1出现的评分,ui.base一定不会出现。继而我们得到了各个系统预测的评分,再用平均5.3所示,原推荐系统成功初始化,并且计算获得了相应的平均绝对误差和均图5.2原推荐系统RMSE系统化及数据预损失,首先,在未评分的位置填入用原系统得到的预分,再将其用OKA算法进行化并根据k-的定义检验是否达到此标准为了测试在不同k值之下的效果,我们取k值为2至15的所有整数值。成功化之后,再进行评分预测,得到结果。图5.3原化推荐系统预测精度图5.4改进化推荐系统RMSE同系统在不同k值下的预测精度图像,如下图所示。这幅图中,ANONY1表示原OKA算法生成的化推荐系统,而ANONY2则表图5.5系统预测精度随k着k值的增加而减少。除此之外,对于所实现的三个系统,化后的两个系统的预测名化推荐系统性能更佳的结论。而对于我们所改进的化推荐系统,其预测精度比起第一种化推荐系统来说确实是稍弱,但却也仍然比化之前的原推荐系统要优越。系统化的OKA算法成功运行,实现的新系统达到了k-的标准,符k-的定义化之后的系统预测精度相较于原系统而言都更佳。这符合文献中的结论,在此我们也析一下这“反现象发的原因。在们的的实验步中,其中的重要一步是先将用户商品矩阵中的零值由原推荐系统的预测值代替。所以,我证统性利预分持分前致前之同时0除去对用户评分的预测之外,对用户隐私的保护同样是化推荐系统的重要性能两个不同的化系统对于用户隐私的保护程度本实验所用的数据即为以上步骤生成的两个化成功后的用户-商品矩阵从化的用户-商品矩阵中随机抽取一个用户评分矢量,再使用实现的测试模块5.6图5.7系统随k渐减少。同时,改进后的化系统除了在k=2,比起原化系统被鉴别的概率在各k值都要小,从而说明改进后的系统隐私保护能力略微增强。除此之外,从之前化系统实现的分析我们可以得知,虽然被识别的概率被稍微减小,但在第二个改进的分矢量的和。从而改进的系统不会像原系统一样从k-降低到k-1-,改进得到本章介绍了面向人人网的社区发现系统的功能测试的过程和结果。5.1节主要介绍 总结与展电子商务提高自身服务质量的重要一环。信息不被,就是隐私保护推荐系统研究者需要完成的使命。提高了对用户隐私的保护程度,减少了系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 60730-2-13:2025 EXV EN Automatic electrical controls - Part 2-13: Particular requirements for humidity sensing controls
- 暑假培优练:传送带模型 -2025高一物理暑假专项提升(人教版)
- 新解读《GB 31144-2014木工机床安全 手动式摇臂锯》
- 视觉界面设计师专业知识考试题库与答案
- 社会科学研究方法 课件 第1-6章 导论-实验研究
- 老年人热水袋应用课件
- 浪潮继续教育方案
- CN120209125A 单克隆抗体与分泌单克隆抗体的杂交瘤细胞及应用
- 老年人安全防护规范课件
- 三角形及其性质(14个高频考点)原卷版
- 2024年(IPA)国际注册对外汉语教师资格认证考试真题卷(含答案)
- 女性原发盆腔腹膜后肿瘤诊治中国专家共识(2025年版)解读
- 2025至2030年中国电力巡检无人机行业市场竞争格局及投资前景展望报告
- 起重机械安全装置知识学习
- 2025重庆轨道集团招聘130人笔试参考题库附带答案详解(10套)
- 乡镇卫生院医师三基考试理论综合试题及答案
- 动静脉内瘘狭窄病例分析
- 丝印考试题目及答案
- 软件无形资产管理办法
- 学堂在线 西方哲学精神探源 期末考试答案
- 微生物与人类的关系第1课时教学课件 2025-2026学年生物北师大版2024八年级上册
评论
0/150
提交评论