图像
08/18/2016 16:00

当前ossean去重过程如下:

image


问题及优化:

 1.目前通过homepage 判断是否是相同项目,只是简单地字符串判别(加上https等前缀)是否相等。

     然而不同社区对项目的链接的地址不一样,比如:

    OSChina上tortoise svn的主页地址为:http://tortoisesvn.tigris.org/;

    Openhub上tortoise svn的地址为:http://tortoisesvn.net;

解决方法:可以过滤掉一级域名、社区前缀、后缀信息,进行比较


2.当前默认若项目来自同一社区,则判别不重复。

   sourceforge社区有很多相同项目,比如Hibernate在sourceforge中,很多都是个人上传的项目,名字相同,且这些项目没有项目标签和描述信息,是否可以根据页面信息,下载量等直接过滤掉,因为本身价值不大。

https://sourceforge.net/projects/hibernate/?source=directory-featured

https://sourceforge.net/projects/hibernatemyproject/?source=directory;

https://sourceforge.net/projects/hibneraexample/?source=directory;


3.由项目名相同判断是否重复,不够准确

  应该在这个判断基础上,再通过homepage,项目tag、描述进行相似度比较。


4.别名(同义词)提取算法还可优化,去重主要通过别名(包含项目名称)得到与新项目相关联的匹配项目,有时候没有提取到,导致漏掉一些名字相似的匹配项目,比如openhub的spring 和sourceforge社区的 spring framework,实为同一项目。

另外,对于具有相同别名但识别为不同项目的,应只对其中一个项目保留该别名,即所有项目最终都不应保留相同别名,使得后面的项目,帖子匹配更精确。


5.根据项目标签和描述信息计算相似度,效果不是很好,继续优化根据tag和描述信息计算相似度的算法。


总结:应当主要通过homepage来匹配项目,项目名称相同的需要再利用其他信息判别,要尽量保证匹配的项目一定是重复的,且一个别名只对应一个项目,否则对于后面的项目帖子匹配会有影响。



回复 (2)
10?1449542945
余跃 8年前
确实挺好的。。。很认真,湛大哥要好好学习这种风格和态度。

11?1648889181
王涛 8年前
雅蓉分析总结的很好!后续抓紧时间按照我们讨论的别名和去重合并的思路等进行改进,并且每次改进后注意保留实验结果,与改进前的进行对比分析。具体也请湛云再认真审阅一下!@湛云

© Copyright 2007~2021 国防科技大学Trustie团队 & IntelliDE 湘ICP备 17009477号

问题和建议
还能输入50个字符 Submit

加入QQ群

关注微信APP


×