CN112559682A - 基于GitHub软件仓库数据集的开源项目个性化检索推荐方法 - Google Patents

基于GitHub软件仓库数据集的开源项目个性化检索推荐方法 Download PDF

Info

Publication number
CN112559682A
CN112559682A CN202011405987.7A CN202011405987A CN112559682A CN 112559682 A CN112559682 A CN 112559682A CN 202011405987 A CN202011405987 A CN 202011405987A CN 112559682 A CN112559682 A CN 112559682A
Authority
CN
China
Prior art keywords
github
candidate
data set
item
user
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
Application number
CN202011405987.7A
Other languages
English (en)
Other versions
CN112559682B (zh
Inventor
傅栩萌
任洪敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Maritime University
Original Assignee
Shanghai Maritime University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Maritime University filed Critical Shanghai Maritime University
Priority to CN202011405987.7A priority Critical patent/CN112559682B/zh
Publication of CN112559682A publication Critical patent/CN112559682A/zh
Application granted granted Critical
Publication of CN112559682B publication Critical patent/CN112559682B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,包括:对GitHub活动数据集进行预处理,形成“标题‑描述‑URL”数据集和“标题‑Star‑watch‑fork”数据集;基于Milvus搜索引擎结合Bert预处理模型搭建关键字搜素引擎,并将“标题‑描述‑URL”数据集作为搜索数据源;接收用户输入的查询关键字,使用所述关键字搜索引擎进行软件资源检索定位,获得开源项目候选集;根据所述“标题‑Star‑watch‑fork”数据集对所述开源项目候选集中各个候选项目进行质量评分;根据质量评分结果,将Top‑N的候选项目推荐给用户。本发明对于开源软件项目本身进行质量评估,从而提升搜索结果的质量,提升搜索项目的可参考性。

Description

基于GitHub软件仓库数据集的开源项目个性化检索推荐方法
技术领域
本发明属于开源项目检索个性化推荐技术领域,具体涉及一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法、电子设备及可读存储介质。
背景技术
Bert是由Google发布的一种预训练语言表示的方法,它在一个大型文本语料库上训练一个通用的语言理解模型,然后使用该模型执行下游NLP任务,比如回答问题、情绪判断等。相比于之前Word2Vec或是Elmo的方法,它是第一个用于预训练NLP的无监督、深度双向系统,所以在下游的NLP任务上,Bert的效果要远远由于以往的方法。实验证明,Bert在11项自然语言理解任务上刷新了最好指标。
Milvus是一款开源向量相似度搜索引擎,建立在Faiss、NMSLIB、Annoy等向量索引库基础之上,具有功能强大、稳定可靠以及易于使用等特点。Milvus集成了这些向量索引库,对外提供了一套简单而一致的API。除了提供针对向量的近实时搜索能力外,Milvus可以对标量数据进行过滤。随着数据和查询规模的增加,Milvus还提供了集群分片的解决方案,支持读写分离、水平扩展、动态扩容等功能,实现了对于超大数据规模的支持。
Github是个面向开源及私有软件项目的托管平台,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万,开源软件项目的资源也非常多。由此,许多开发者都会选择在Github上搜索可以学习借鉴或是使用的软件项目资源。
GitHub目前提供的项目仓库检索功能是基于普通的文本匹配和项目流行度来进行搜索推荐。随着开源软件项目资源的增多,使用这种传统检索方法,很难在较短时间内让开发人员轻松地搜索到优质的开源软件。
发明内容
本发明的目的是提供一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法、电子设备及可读存储介质,对于开源软件项目本身进行质量评估,从而提升搜索结果的质量,提升搜索项目的可参考性。
为达到上述目的,本发明提供一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,包括:
对GitHub活动数据集进行预处理,形成“标题-描述-URL”数据集和“标题-Star-Watch-Fork”数据集;
基于Milvus搜索引擎结合Bert预处理模型搭建关键字搜素引擎,并将“标题-描述-URL”数据集作为搜索数据源;
接收用户输入的查询关键字,使用所述关键字搜索引擎进行软件资源检索定位,获得开源项目候选集;
根据所述“标题-Star-Watch-Fork”数据集对所述开源项目候选集中各个候选项目进行质量评分;
根据质量评分结果,将Top-N的候选项目推荐给用户。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,所述根据所述“标题-Star-Watch-Fork”数据集对所述开源项目候选集中各个候选项目进行质量评分,包括:
针对每一候选项目,从所述“标题-Star-Watch-Fork”数据集中获取该候选项目的Star、Watch、Fork数量并进行归一化处理,再使用线性组合方法对该候选项目的质量进行计算,得到质量评分。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,采用如下公式对候选项目的质量进行计算:
pq(i)=nor(nor(Watch(i))+nor(Fork(i))+nor(Star(i))),
其中,pq(i)表示候选项目i的质量评分,Watch(i)、Star(i)、Fork(i)分别表示候选项目i的Watch、Star、Fork数量,nor(x)表示对参数x进行归一化处理。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,所述方法还包括:
获取用户在GitHub开源社区中的活动数据;
根据所述活动数据,使用TextRank算法构建用户近期关注倾向词汇库;
基于Bert预处理模型,对所述开源项目候选集中各个候选项目与所述词汇库进行语义相似度评价,获得各个候选项目与用户的关联程度评分。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,所述根据质量评分结果,将Top-N的候选项目推荐给用户,包括:
根据所述质量评分结果和所述关联程度评分结果,使用线性组合方法计算最终评分,将最终评分结果中Top-N的候选项目推荐给用户。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,采用如下公式计算最终评分:
value(i)=α×nor(sm(i))+β×nor(pq(i));
式中,value(i)表示候选项目i的最终评分,sm(i)表示候选项目i与用户的关联程度评分,pq(i)表示候选项目i的质量评分,α、β表示权重值,nor(x)表示对参数x进行归一化处理。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,所述方法还包括:
提供GitHub OAuth第三方登录页面,以连接到用户的GitHub账号,用于获取用户在GitHub开源社区中的活动数据。
进一步的,在上述基于GitHub软件仓库数据集的开源项目个性化检索推荐方法中,所述将Top-N的候选项目推荐给用户,包括:
将Top-N的候选项目以“标题-描述”的形式推荐给用户,并提供对应的URL以便于直接跳转到相应的候选项目。
基于同一发明构思,本发明还提供一种电子设备,包括处理器和存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现上文任一项所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法。
基于同一发明构思,本发明还提供一种可读存储介质,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上文任一项所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法。
本发明提供一种基于GitHub数据集的个性化搜索推荐方法、电子设备及可读存储介质,提升GitHub开源托管平台中软件资源发现效率,本发明具有如下优点:
(1)通过利用Bert预训练模型,提升语义相似度判断,可以有效提升候选集搜索的准确程度;
(2)结合软件仓库本身和用户关注项目的信息,以及项目本身质量的评判,进一步提升了目标软件定位的准确性;
(3)实现与用户自身已有GitHub账号的绑定链接,以及搜索结果可直接跳转GitHub的功能,有效增加用户使用的友好程度。
附图说明
图1是本发明一实施例提供的一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法的流程图;
图2本发明一示例提供的实施流程图;
图3本发明一示例提供的系统架构图。
具体实施方式
以下结合附图1~3和具体实施方式对本发明提供的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法、电子设备及可读存储介质作进一步详细说明。根据下面说明,本发明的优点和特征将更清楚。需要说明的是,附图采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施方式的目的。为了使本发明的目的、特征和优点能够更加明显易懂,请参阅附图。须知,本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
如图1所示,本发明提供的一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法包括如下步骤:
步骤S100,对GitHub活动数据集进行预处理,形成“标题-描述-URL”数据集和“标题-Star-Watch-Fork”数据集。
具体的,从GHTorrent上下载公开的GitHub活动数据集,然后对数据集进行预处理,形成“标题-描述-URL”、“标题-Star-Watch-Fork”数据集。
步骤S200,基于Milvus搜索引擎结合Bert预处理模型搭建关键字搜素引擎,并将“标题-描述-URL”数据集作为搜索数据源。
步骤S300,接收用户输入的查询关键字,使用所述关键字搜索引擎进行软件资源检索定位,获得开源项目候选集。
即,所述关键字搜索引擎在“标题-描述-URL”数据集中搜索,查找与所述关键字相匹配的软件资源,获得开源项目候选集。
步骤S400,根据所述“标题-Star-Watch-Fork”数据集对所述开源项目候选集中各个候选项目进行质量评分。
具体的,针对每一候选项目,从所述“标题-Star-Watch-Fork”数据集中获取该候选项目的Star、Watch、Fork数量并进行归一化处理,再使用线性组合方法对该候选项目的质量进行计算,得到质量评分。
可以采用如下公式对候选项目的质量进行计算:
pq(i)=nor(nor(Watch(i))+nor(Fork(i))+nor(Star(i))),
其中,pq(i)表示候选项目i的质量评分,Watch(i)、Star(i)、Fork(i)分别表示候选项目i的Watch、Star、Fork数量,nor(x)表示对参数x进行归一化处理。
步骤S500,根据质量评分结果,将Top-N的候选项目推荐给用户。
即,可以将质量评分排名靠前的若干个候选项目推荐给用户。具体的,将Top-N的候选项目以“标题-描述”的形式推荐给用户,并提供对应的URL以便于直接跳转到相应的候选项目。
由以上可见,本发明基于Milvus搜索引擎,结合Bert预处理模型,针对Github开源软件仓库数据集,提供一种高性能的开源项目个性化搜索推荐方法,提升GitHub平台中软件资源发现于定位的效率,利用开源项目的社区信息来判断项目质量,提升搜索结果的质量。
进一步的,本发明提供的一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法还包括:对所述开源项目候选集中各个候选项目与用户的关联程度进行评分,从而根据各个候选项目自身的质量评分以及与用户的关联程度评分,来推荐候选项目给用户,实现针对用户的个性化搜索推荐,提高搜索项目的个性化程度和可参考性。
具体的,对所述开源项目候选集中各个候选项目与用户的关联程度进行评分,包括如下步骤:
获取用户在GitHub开源社区中的活动数据;
根据所述活动数据,使用TextRank算法构建用户近期关注倾向词汇库;
基于Bert预处理模型,对所述开源项目候选集中各个候选项目与所述词汇库进行语义相似度评价,获得各个候选项目与用户的关联程度评分。
活动数据包括特定时间内(例如一年内)用户Star(标星号)的项目、用户自身Repositories(收藏)的项目等。对于这些活动数据中项目的名称和描述信息,使用TextRank算法可构建用户近期关注倾向词汇库。然后,基于Bert预处理模型对该词汇库和候选集中每一候选项目的描述信息进行词向量转换,完成语义相似度评价,并以此作为候选集中每一候选项目与用户的关联程度评分。
相应的,步骤S500所述根据质量评分结果,将Top-N的候选项目推荐给用户,具体包括:
根据所述质量评分结果和所述关联程度评分结果,使用线性组合方法计算最终评分,将最终评分结果中Top-N的候选项目推荐给用户。
具体的,可采用如下公式计算最终评分:
value(i)=α×nor(sm(i))+β×nor(pq(i));
式中,value(i)表示候选项目i的最终评分,sm(i)表示候选项目i与用户的关联程度评分,pq(i)表示候选项目i的质量评分,α、β表示权重值,nor(x)表示对参数x进行归一化处理。
进一步的,还可以提供GitHub OAuth第三方登录页面,以连接到用户的GitHub账号,如此可通过调用GitHub API,获取用户在GitHub开源社区中的活动数据。
由以上可知,本发明提供一种构建“用户近期关注词汇库”的方法,即根据用户过去在GitHub平台上的行为,对过去特定时间内所关注的开源项目和仓库进行特征提取,构造该用户的近期关注词汇库,对搜索出的候选集与之进行比较,提升最终推荐结果的个性化程度和准确度。
请参考图2、3,下面通过一个具体示例对本发明提供的一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法进行介绍。
S101、数据收集及预处理:从GHTorrent上下载GitHub所有活动数据集,整理成“标题-描述-URL”和“标题-Star-Watch-Fork”数据集。
S102、搭建搜索引擎:基于Milvus结合Bert构建关键字搜索引擎,并导入S101中的“标题-描述-URL”数据集,作为数据源。
S103、获取GitHub授权:GitHub OAuth第三方登录授权,跳转到GitHub,用户登录GitHub并同意授权,系统获得授权码并请求获得令牌,获得令牌后即可向GitHub获取用户数据。
S104、候选集搜索:用户在输入搜索关键字,S102搭建的关键字搜索引擎进行软件资源检索定位,获得候选集。
S105、候选集质量评分:根据候选集查询“标题-Star-Watch-Fork”数据集,并归一化处理各候选项目在GitHub平台的Star、Watch、Forks数,归一化公式如下:Nor(x)=x/max;
归一化的过程就是将每个特征值与该特征最大值相比,通过归一化,使得各个特征在相同的数量级下进行操作,便于参数调节。最后,为了量化度量每一候选项目的质量,通过如下公式对候选项目质量进行计算:
pq(i)=nor(nor(Watch(i))+nor(Fork(i))+nor(Star(i))),
其中,pq(i)表示候选项目i的质量评分,Watch(i)、Star(i)、Fork(i)分别表示候选项目i的Watch、Star、Fork数量。
S106、候选集与用户关联程度评分:首先,调用GitHub API,获取用户在开源社区中的活动数据,包括:一年内Star项目的名称和描述信息、用户自身Repositories的名称和描述信息。随后,对于这些数据,使用TextRank来构建用户近期关注词汇库。然后,基于Bert完成语义相似度评价,即获得候选集在每一候选项目与与用户的关联程度评分。
S107、候选集推荐排序及展示:候选集的排序由两个指标构成,一个是S105获得的候选项目质量评分,另一个是S106获得的候选项目与用户近期关注词汇库的相似程度评分。对于S105和S106获得的量化数据,使用线性组合的方式,手动调参获得最终评分,公式如下:
value(i)=α×nor(sm(i))+β×nor(pq(i)),
其中sm(i)表示候选项目和用户近期关注词汇库的相关联程度评分,pq(i)表示候选项目的质量评分。根据最终所得value的值,将Top-N的候选项目推荐给用户。
综上可知,本示例通过构建用户近期关注词汇库来提升搜索推荐候选集的个性化程度,利用开源项目的社区信息来判断项目质量,最终可以提升搜索结果的可信度。
基于同一发明构思,本发明还提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如上文所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法。
所述处理器在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器(例如GPU(Graphics Processing Unit-图形处理器))、或其他数据处理芯片。该处理器通常用于控制所述电子设备的总体操作。本实施例中,所述处理器用于运行所述存储器中存储的程序代码或者处理数据,例如运行基于GitHub软件仓库数据集的开源项目个性化检索推荐方法的程序代码。
所述存储器至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器可以是所述电子设备的内部存储单元,例如该电子设备的硬盘或内存。在另一些实施例中,所述存储器也可以是所述电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器还可以既包括所述电子设备的内部存储单元也包括其外部存储设备。本实施例中,所述存储器通常用于存储安装于所述电子设备的操作方法和各类应用软件,例如基于GitHub软件仓库数据集的开源项目个性化检索推荐方法的程序代码等。此外,所述存储器还可以用于暂时地存储已经输出或者将要输出的各类数据。
基于同一发明构思,本实施例还提供一种可读存储介质,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如上文所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。

Claims (10)

1.一种基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,包括:
对GitHub活动数据集进行预处理,形成“标题-描述-URL”数据集和“标题-Star-Watch-Fork”数据集;
基于Milvus搜索引擎结合Bert预处理模型搭建关键字搜素引擎,并将“标题-描述-URL”数据集作为搜索数据源;
接收用户输入的查询关键字,使用所述关键字搜索引擎进行软件资源检索定位,获得开源项目候选集;
根据所述“标题-Star-Watch-Fork”数据集对所述开源项目候选集中各个候选项目进行质量评分;
根据质量评分结果,将Top-N的候选项目推荐给用户。
2.如权利要求1所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,所述根据所述“标题-Star-Watch-Fork”数据集对所述开源项目候选集中各个候选项目进行质量评分,包括:
针对每一候选项目,从所述“标题-Star-Watch-Fork”数据集中获取该候选项目的Star、Watch、Fork数量并进行归一化处理,再使用线性组合方法对该候选项目的质量进行计算,得到质量评分。
3.如权利要求2所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,采用如下公式对候选项目的质量进行计算:
pq(i)=nor(nor(Watch(i))+nor(Fork(i))+nor(Star(i))),
其中,pq(i)表示候选项目i的质量评分,Watch(i)、Star(i)、Fork(i)分别表示候选项目i的Watch、Star、Fork数量,nor(x)表示对参数x进行归一化处理。
4.如权利要求1所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,所述方法还包括:
获取用户在GitHub开源社区中的活动数据;
根据所述活动数据,使用TextRank算法构建用户近期关注倾向词汇库;
基于Bert预处理模型,对所述开源项目候选集中各个候选项目与所述词汇库进行语义相似度评价,获得各个候选项目与用户的关联程度评分。
5.如权利要求4所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,所述根据质量评分结果,将Top-N的候选项目推荐给用户,包括:
根据所述质量评分结果和所述关联程度评分结果,使用线性组合方法计算最终评分,将最终评分结果中Top-N的候选项目推荐给用户。
6.如权利要求5所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,采用如下公式计算最终评分:
value(i)=α×nor(sm(i))+β×nor(pq(i));
式中,value(i)表示候选项目i的最终评分,sm(i)表示候选项目i与用户的关联程度评分,pq(i)表示候选项目i的质量评分,α、β表示权重值,nor(x)表示对参数x进行归一化处理。
7.如权利要求4所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,所述方法还包括:
提供GitHub OAuth第三方登录页面,以连接到用户的GitHub账号,用于获取用户在GitHub开源社区中的活动数据。
8.如权利要求1所述的基于GitHub软件仓库数据集的开源项目个性化检索推荐方法,其特征在于,所述将Top-N的候选项目推荐给用户,包括:
将Top-N的候选项目以“标题-描述”的形式推荐给用户,并提供对应的URL以便于直接跳转到相应的候选项目。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1至8中任一项所述的方法。
10.一种可读存储介质,其特征在于,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1至8中任一项所述的方法。
CN202011405987.7A 2020-12-03 2020-12-03 基于GitHub软件仓库数据集的开源项目个性化检索推荐方法 Active CN112559682B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011405987.7A CN112559682B (zh) 2020-12-03 2020-12-03 基于GitHub软件仓库数据集的开源项目个性化检索推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011405987.7A CN112559682B (zh) 2020-12-03 2020-12-03 基于GitHub软件仓库数据集的开源项目个性化检索推荐方法

Publications (2)

Publication Number Publication Date
CN112559682A true CN112559682A (zh) 2021-03-26
CN112559682B CN112559682B (zh) 2023-09-29

Family

ID=75048211

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011405987.7A Active CN112559682B (zh) 2020-12-03 2020-12-03 基于GitHub软件仓库数据集的开源项目个性化检索推荐方法

Country Status (1)

Country Link
CN (1) CN112559682B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780986A (zh) * 2021-08-26 2021-12-10 济南浪潮数据技术有限公司 一种用于软件研发过程的度量方法、系统、设备和介质
CN114693482A (zh) * 2022-04-14 2022-07-01 湖南智擎科技有限公司 在线编程实验与开源项目贡献转化方法和装置
CN115858942A (zh) * 2023-02-27 2023-03-28 西安电子科技大学 面向用户输入的序列化推荐方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389329A (zh) * 2015-09-21 2016-03-09 中国人民解放军国防科学技术大学 一种基于群体评论的开源软件推荐方法
US20200250015A1 (en) * 2019-02-06 2020-08-06 Fujitsu Limited Api mashup exploration and recommendation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389329A (zh) * 2015-09-21 2016-03-09 中国人民解放军国防科学技术大学 一种基于群体评论的开源软件推荐方法
US20200250015A1 (en) * 2019-02-06 2020-08-06 Fujitsu Limited Api mashup exploration and recommendation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
伏广宇;李传艺;葛季栋;骆斌;: "基于构建软件功能描述的可复用软件检索方法", 应用科学学报, no. 05 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780986A (zh) * 2021-08-26 2021-12-10 济南浪潮数据技术有限公司 一种用于软件研发过程的度量方法、系统、设备和介质
CN113780986B (zh) * 2021-08-26 2024-02-27 济南浪潮数据技术有限公司 一种用于软件研发过程的度量方法、系统、设备和介质
CN114693482A (zh) * 2022-04-14 2022-07-01 湖南智擎科技有限公司 在线编程实验与开源项目贡献转化方法和装置
CN114693482B (zh) * 2022-04-14 2024-04-16 湖南智擎科技有限公司 在线编程实验与开源项目贡献转化方法和装置
CN115858942A (zh) * 2023-02-27 2023-03-28 西安电子科技大学 面向用户输入的序列化推荐方法及装置

Also Published As

Publication number Publication date
CN112559682B (zh) 2023-09-29

Similar Documents

Publication Publication Date Title
US10261973B2 (en) System and method for causing downloads of applications based on user intents
CN112559682B (zh) 基于GitHub软件仓库数据集的开源项目个性化检索推荐方法
US8886589B2 (en) Providing knowledge content to users
US9489401B1 (en) Methods and systems for object recognition
US9104979B2 (en) Entity recognition using probabilities for out-of-collection data
CN108280114B (zh) 一种基于深度学习的用户文献阅读兴趣分析方法
US9213746B2 (en) Method for searching for information using the web and method for voice conversation using same
US20100274804A1 (en) System and method for invoking functionalities using contextual relations
US7818341B2 (en) Using scenario-related information to customize user experiences
US10540365B2 (en) Federated search
WO2012061275A1 (en) Multi-modal approach to search query input
CN108388582A (zh) 用于识别相关实体的方法、系统和装置
US20100191758A1 (en) System and method for improved search relevance using proximity boosting
US20160328403A1 (en) Method and system for app search engine leveraging user reviews
US20230153870A1 (en) Unsupervised embeddings disentanglement using a gan for merchant recommendations
US11061893B2 (en) Multi-domain query completion
JP2022073981A (ja) ソースコード取得
US20120130972A1 (en) Concept disambiguation via search engine search results
Arguello et al. Using query performance predictors to reduce spoken queries
CN113934869A (zh) 一种数据库构建方法、多媒体文件的检索方法及装置
US20090182759A1 (en) Extracting entities from a web page
CN111737413A (zh) 基于概念网语义的反馈模型信息检索方法、系统及介质
Hong et al. An efficient tag recommendation method using topic modeling approaches
Kyriakakis et al. Enabling ontology-based search: a case study in the bioinformatics domain
KR20200082583A (ko) 쿠키 데이터를 이용한 사용자 맞춤형 웹페이지 제어 방법 및 장치

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