[发明专利]开源软件主题自动标注方法有效
申请号: | 201210097159.0 | 申请日: | 2012-04-05 |
公开(公告)号: | CN102760149A | 公开(公告)日: | 2012-10-31 |
发明(设计)人: | 王怀民;尹刚;王涛;李翔;朱沿旭;史殿习;丁博;刘惠;滕猛;袁霖 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 主题 自动 标注 方法 | ||
技术领域
本发明涉及一种开源软件主题自动标注方法,特别是通过构建开源项目标签网络模型来对未知软件自动添加标签的方法。
背景技术
开源软件(0SS)在软件工程领域扮演者越来越重要的角色。在众多开源社区中已有成千上万个开源软件项目,部分巨型社区如sourceforge.net和googlecode含有海量的开源项目。其中含有关于开源项目的多种数据,对帮助软件工程领域的研究有着重大作用。
随着开源项目数据的迅速累积,对项目工程师来说迅速找到所需开源项目的问题变得复杂。然而,针对项目概要的文本处理和标注技术能用于应对上述需求,这里的项目概要主要包括项目描述、项目层次化分类和社会化标签等信息。举例来说,现在每个开源项目都有一段文字描述其功能和技术特征;在sourceforge中有363个软件类别,而freshmeat社区中有6000多个软件标签。这些标签数据在一方面能体现功能或技术特性,从而非常有助于了解某个特定软件;在另一方面,这些标签有效地索引和组织了大量的软件,为方便的浏览和搜索提供了帮助。应该说标签从用户角度反应了开源软件的语义关联,因此有助于构建项目间的内在联系,对组织和理解海量的项目有重要意义。综上,通过挖掘项目文本概述来揭露和构建这种标签信息网络将会对海量项目的挖掘与分析带来很大帮助。
潜式狄利克雷分布(Latent Dirichlet Allocation,缩写为LDA)在文本处理和主题挖掘领域被作为统计模型广泛使用。在开源软件领域,LDA被用来发现源代码或漏洞报告的主题演化。S.Kawaguchi和K.Tian等人提出了使用基于LDA的源代码分析方法来对软件进行自动归类。S.W.Thomas和E.Linseed等人使用主题模型来对软件资源库的主题演化进行建模。然而,这些应用主要关注于挖掘某些特定项目,而不是针对海量的开源软件进行分析。
经过几年的发展,LDA模型有了一些变种,其中一种可用于文档标注的变种为带标注的LDA(Labeled LDA)通过将文档中的每个单词关联到合适的标签解决了多标签文档的主题归因问题。在传统LDA模型基础上,该方法将主题映射为已有的标签,以此来获得单词-标签关联关系。这个模型已被用于Yahoo!中多标签文本的分类问题,然而,开源项目的标签过于细化,且项目描述文本相对较短,导致Labeled LDA不适用。本发明将该方法进行了修改,提出一种开源软件标签网络模型。该模型能建立标签、软件和关键词之间的内在联系,从而利用该模型对未知开源软件进行自动标注。
发明内容
本发明提出一种开源软件主题的自动标注方法,其中使用了标签网络模型,该模型构建了标签、软件和关键词之间的内在关系,针对当前LDA模型及其变种的不足,改进并设计了一种LDA模型来建立标签网络,该网络能用于开源软件项目的进一步分析,如利用该网络对软件进行自动标注。本发明的具体技术方案包括以下步骤:
步骤1、爬取开源社区,获取开源项目数据,所述项目数据包括开源项目名称、标签和项目描述,对所述项目描述和项目标签进行预处理,所述预处理包括:将所述项目标签转换为其词根后将相同词根的标签合并,删除标签数小于预定数目的项目,将项目描述转换为单词包。
步骤2、以开源项目的名称、标签和项目描述作为输入,应用带标注LDA模型,通过吉布斯抽样过程对输入数据进行训练,稳定后获得项目描述中某单词所指派的所有标签及计数,生成单词到标签指派,建立单词与标签之间的映射。
进一步的,步骤2包括下列步骤:
步骤2.1、将LDA模型中的主题个数T设置为输入数据中的标签个数,设置吉布斯抽样的循环次数N。
步骤2.2、初始化每个单词的所属标签,将项目描述中的每个单词的每次出现指派到该项目所具有的其中任意的两个标签。
步骤2.3、使用倒塌的吉布斯抽样(collapsed Gibbs sampling)对每个单词的每次出现的标签进行重新指派,并将该步骤迭代N次,以达到稳定状态。
进一步的,步骤2.3中的所述重新指派满足下列条件:每次迭代对每个单词zi重新指派到某标签k,以使概率公式取最大值:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210097159.0/2.html,转载请声明来源钻瓜专利网。