CN110262906B - 接口标签推荐方法、装置、存储介质和电子设备 - Google Patents
接口标签推荐方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN110262906B CN110262906B CN201910492605.XA CN201910492605A CN110262906B CN 110262906 B CN110262906 B CN 110262906B CN 201910492605 A CN201910492605 A CN 201910492605A CN 110262906 B CN110262906 B CN 110262906B
- Authority
- CN
- China
- Prior art keywords
- interface
- label
- interfaces
- determining
- labels
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及一种接口标签推荐方法、装置、存储介质和电子设备,以解决相关技术中对接口的特征分析不充分,标签推荐准确性较低的技术问题,该方法包括:获取网络平台中多个接口对应的接口向量,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量;根据多个接口的接口向量,确定多个接口中与上述多个接口中未附带标签的第一接口相似度最高的一个或多个第二接口;根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。能够对接口的多个维度的特征进行结合,获取能够充分体现接口特征的特征向量,再根据该特征向量为新添加的接口推荐标签,提高接口特征分析的全面性,进而提高标签推荐的准确性。
Description
技术领域
本公开涉及信息管理领域,具体地,涉及一种接口标签推荐方法、装置、存储介质和电子设备。
背景技术
随着网络应用的普及,网络平台开发和运维所涉及的数据量急剧增加。在为网络平台添加新的功能时,通常需要为网络平台添加新的API(Application ProgrammingInterface,应用程序编程接口),以进行相应的数据交互。标签作为一种资源描述方式,能够帮助网络应用的开发人员或运维人员记录或者标识出API的核心信息,提高开发和运维效率。因此,在为网络平台设置API时,通常需要根据API的功能和特征为API添加标签,以方便后期资源管理和查询。
发明内容
本公开的主要目的是提供一种接口标签推荐方法、装置、存储介质和电子设备,以解决相关技术中对接口的特征分析不充分,标签推荐准确性较低的技术问题。
为了实现上述目的,本公开第一方面提供一种接口标签推荐方法,所述方法包括:
获取网络平台中多个接口对应的接口向量,所述接口向量为根据所述接口的关联关系、描述文本和服务端类型确定的所述接口的特征向量;
根据多个所述接口的接口向量,确定多个所述接口中与第一接口相似度最高的一个或多个第二接口,所述第一接口为多个所述接口中未附带标签的接口;
根据一个或多个所述第二接口附带的多个标签确定所述第一接口对应的推荐标签。
可选的,多个所述接口包括所述第一接口和已附带标签的多个第三接口,所述获取网络平台中多个接口对应的接口向量,包括:
根据所述关联关系确定每个所述第三接口的关联路径;
通过Skip-gram方式根据所述关联路径获取多个接口对,其中,所述接口对包含在同一关联路径中互相连接的两个第三接口;
通过多个所述接口对中的所述第三接口的关联信息、描述文本、服务端类型和one-hot向量生成训练样本集,所述关联信息为根据所述关联关系确定的接口的关联接口数量信息;
通过所述训练样本集对神经网络模型进行训练,以获取训练好的神经网络模型;
将所述第一接口的关联信息、描述文本和服务端类型作为所述训练好的神经网络模型的输入,以获取所述训练好的神经网络模型输出的所述第一接口的接口向量。
可选的,所述通过所述第三接口的关联关系、描述文本、服务端类型和one-hot向量生成训练样本集,包括:
根据所述两个第三接口中的一者的关联信息、描述文本和服务端类型确定所述接口对对应的输入端训练样本;
根据所述两个第三接口中的另一者的one-hot向量确定所述接口对对应的输出端训练样本;
获取由所述输入端训练样本和所述输出端训练样本组成的所述接口对对应的训练样本;
将多个所述接口对对应的多个所述训练样本作为所述训练样本集。
可选的,所述根据多个所述接口的接口向量,确定多个所述接口中与第一接口相似度最高的一个或多个第二接口,包括:
根据多个所述接口的接口向量,计算每个所述第三接口相对于所述第一接口的余弦相似度;
获取具备最大余弦相似度的一个或多个第三接口,作为一个或多个所述第二接口。
可选的,所述根据一个或多个所述第二接口附带的多个标签确定所述第一接口对应的推荐标签,包括:
确定标签关联图中每个标签的重要性评分,所述标签关联图为以所述多个标签为节点,以每两个第二接口之间的调用关系和标签针对于同一第二接口的共现关系为有向边的有向关联图;
根据所述每个标签的出现频次、所述重要性评分以及所述每个标签对应的第二接口与所述第一接口的相似度,从所述多个标签中筛选出所述推荐标签。
可选的,所述确定标签关联图中每个标签的重要性评分,包括:
获取每个所述第二接口附带的标签,作为所述节点;
根据所述调用关系以及所述共现关系,在多个所述节点之间建立所述有向边,以生成所述标签关联图,其中,所述有向边包括单向边和双向边,所述单向边以所述调用关系为依据建立,所述双向边以所述共现关系为依据建立;
根据所述标签关联图确定所述每个标签的重要性评分。
可选的,所述根据所述每个标签的出现频次、所述重要性评分以及所述每个标签对应的第二接口与所述第一接口的相似度,从所述多个标签中筛选出所述推荐标签,包括:
计算所述第一标签在目标服务端的出现频次与所述第一标签在所述网络平台对应的所有服务端的总出现频次的比值,作为所述第一标签的出现频次占比,所述目标服务端为具备所述第一接口对应的服务端类型的服务端,所述第一标签为所述标签关联图中的任一标签;
根据所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度以及所述重要性评分,确定所述推荐标签。
可选的,所述根据所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度以及所述重要性评分,确定所述推荐标签,包括:
将所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度、所述重要性评分以及预设的调节系数作为预设的标签推荐得分计算公式的输入,以获取所述标签推荐得分计算公式输出的所述每个标签对应于所述第一接口的标签推荐得分;
获取具备最高标签推荐得分的一个或多个标签,作为所述推荐标签。本公开第二方面提供一种接口标签推荐装置,所述装置包括:
向量获取模块,用于获取网络平台中多个接口对应的接口向量,所述接口向量为根据所述接口的关联关系、描述文本和服务端类型确定的所述接口的特征向量;
接口确定模块,用于根据多个所述接口的接口向量,确定多个所述接口中与第一接口相似度最高的一个或多个第二接口,所述第一接口为多个所述接口中未附带标签的接口;
标签确定模块,用于根据一个或多个所述第二接口附带的多个标签确定所述第一接口对应的推荐标签。
可选的,多个所述接口包括所述第一接口和已附带标签的多个第三接口,所述向量获取模块,用于:
根据所述关联关系确定每个所述第三接口的关联路径;
通过Skip-gram方式根据所述关联路径获取多个接口对,其中,所述接口对包含在同一关联路径中互相连接的两个第三接口;
通过多个所述接口对中的所述第三接口的关联信息、描述文本、服务端类型和one-hot向量生成训练样本集,所述关联信息为根据所述关联关系确定的接口的关联接口数量信息;
通过所述训练样本集对神经网络模型进行训练,以获取训练好的神经网络模型;
将所述第一接口的关联信息、描述文本和服务端类型作为所述训练好的神经网络模型的输入,以获取所述训练好的神经网络模型输出的所述第一接口的接口向量。
可选的,所述向量获取模块,用于:
根据所述两个第三接口中的一者的关联信息、描述文本和服务端类型确定所述接口对对应的输入端训练样本;
根据所述两个第三接口中的另一者的one-hot向量确定所述接口对对应的输出端训练样本;
获取由所述输入端训练样本和所述输出端训练样本组成的所述接口对对应的训练样本;
将多个所述接口对对应的多个所述训练样本作为所述训练样本集。
可选的,所述接口确定模块,用于:
根据多个所述接口的接口向量,计算每个所述第三接口相对于所述第一接口的余弦相似度;
获取具备最大余弦相似度的一个或多个第三接口,作为一个或多个所述第二接口。
可选的,所述标签确定模块,用于:
确定标签关联图中每个标签的重要性评分,所述标签关联图为以所述多个标签为节点,以每两个第二接口之间的调用关系和标签针对于同一第二接口的共现关系为有向边的有向关联图;
根据所述每个标签的出现频次、所述重要性评分以及所述每个标签对应的第二接口与所述第一接口的相似度,从所述多个标签中筛选出所述推荐标签。
可选的,所述标签确定模块,用于:
获取每个所述第二接口附带的标签,作为所述节点;
根据所述调用关系以及所述共现关系,在多个所述节点之间建立所述有向边,以生成所述标签关联图,其中,所述有向边包括单向边和双向边,所述单向边以所述调用关系为依据建立,所述双向边以所述共现关系为依据建立;
根据所述标签关联图确定所述每个标签的重要性评分。
可选的,所述标签确定模块,用于:
计算所述第一标签在目标服务端的出现频次与所述第一标签在所述网络平台对应的所有服务端的总出现频次的比值,作为所述第一标签的出现频次占比,所述目标服务端为具备所述第一接口对应的服务端类型的服务端,所述第一标签为所述标签关联图中的任一标签;
根据所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度以及所述重要性评分,确定所述推荐标签。
可选的,所述标签确定模块,用于:
将所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度、所述重要性评分以及预设的调节系数作为预设的标签推荐得分计算公式的输入,以获取所述标签推荐得分计算公式输出的所述每个标签对应于所述第一接口的标签推荐得分;
获取具备最高标签推荐得分的一个或多个标签,作为所述推荐标签。
本公开第三方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的接口标签推荐方法的步骤。
本公开第四方面提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面所述的接口标签推荐方法的步骤。
采用本公开提供的技术方案,至少可以达到如下技术效果:
能够获取网络平台中多个接口对应的接口向量,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量;根据上述多个接口的接口向量,确定上述多个接口中与第一接口相似度最高的一个或多个第二接口,该第一接口为上述多个接口中未附带标签的接口;根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。能够对接口的多个维度的特征进行结合,获取能够充分体现接口特征的特征向量,再根据特征向量为新添加的接口推荐标签,提高接口特征分析的全面性,进而提高标签推荐的准确性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种接口标签推荐方法的流程图;
图2是根据图1示出的一种接口向量获取方法的流程图;
图3是根据图1示出的一种相似接口确定方法的流程图;
图4是根据图1示出的一种推荐标签确定方法的流程图;
图5是根据一示例性实施例示出的一种接口标签推荐装置的框图;
图6是根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在为网络平台中的API添加标签时,除了由开发人员或者运维人员手动为每个API添加标签这种耗时耗力的方式外,还涉及多种自动为API推荐标签的方法,其中包括:基于统计热门标签的推荐方法、基于API描述文中的关键词的标签推荐方法以及基于有监督机器学习的分类预测方法。
但是,基于统计热门标签的推荐方法仅根据标签的使用频次从已有的标签中为新添加的API筛选和推荐标签。另外,基于API描述文本中的关键词的标签推荐方法通过TF-IDF(term frequency-inverse document frequency,词频-逆文本频率指数)算法从API的描述文本中提取关键词,进而根据关键词为新添加的API推荐标签。而基于有监督机器学习的方法,利用机器学习模型或传统分类算法对API标签对进行分类预测。可见,这些方法都仅以标签的单方面特性为依据进行标签的预测和推荐,没有充分考虑API相对于网络平台中的其他API以及网络平台本身的多种特征,标签推荐的准确性较低。
发明人注意到这一问题,提出了一种新的接口标签推荐方法,具体如下:
图1是根据一示例性实施例示出的一种接口标签推荐方法的流程图,如图1所示,该方法包括以下步骤:
在步骤101中,获取网络平台中多个接口对应的接口向量。
其中,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量。该网络平台可以为网络交易平台或者信息交互平台,该接口为网络平台的API(Application Programming Interface,应用程序编程接口),该接口向量为API的向量化表达(或称数学向量)。
示例地,可以通过Skip-gram方式结合具备适当结构的神经网络模型,获取每个接口的向量化表达。该Skip-gram方式用于决定神经网络模型的每个训练样本的组成。每个训练样本对应于互相之间存在关联关系的至少两个API,该训练样本本身实际为上述至少两个API的embedding(植入)向量和one-hot向量。该embedding向量为对每个API的特征进行embedding处理后获取到的embedding向量。该embedding处理过程为一个映射过程,在该embedding处理过程中,需要将元素的特征从其原先所属的空间映射到能够描述该特征的新的多维空间中,进而获取每个元素在新的多维空间中的向量,作为上述的embedding向量。在本公开实施例中,可以将每个API的三种不同的特征(即API的关联关系、描述文本和服务端类型)嵌入至每个特征对应的空间中,以获取每个API对应的三种embedding向量。例如,可以通过Graph Embedding(图植入)方式获取每个API对应的关联关系embedding向量,通过Word Embedding(词植入)方式获取每个API对应的描述文本embedding向量,以及,通过CategoryEmbedding(类别植入)方式获取每个API对应的服务端类型embedding向量。之后,可以将这三种embedding向量拼接而成的embedding向量作为神经网络模型的训练样本。再通过训练好的神经网络模型获取新添加的API(即下列的未附带标签的第一接口)的接口向量。
另外,需要说明的是,API的特征并不仅限于关联关系、描述文本和服务端类型这三种,还可以包括接口所实现的功能和接口的创建时间等多种特征。在实际的操作中,网络平台的开发和运维人员可以根据需要通过与上述类似的embedding处理过程对API的任意数量的特征进行处理,再将处理后的多个embedding向量拼接为神经网络模型的训练样本。
在步骤102中,根据上述多个接口的接口向量,确定上述多个接口中与第一接口相似度最高的一个或多个第二接口。
其中,该第一接口为上述多个接口中未附带标签的接口。
示例地,该相似度可以为余弦相似度。在该步骤102中,可以将多个接口的接口向量直接输入预先设置的余弦相似度计算公式,以获取该公式输出的余弦相似度,进而根据该余弦相似度的数值排序对接口进行筛选。
在步骤103中,根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。
示例地,在确定与第一接口相似度最高的一个或多个第二接口后,可以将这些第二接口的附带的多个标签直接作为该第一接口的推荐标签;或者,可以通过每个标签的其他特性(包括关联特性和出现频次特性)再次对这些标签进行筛选,并将筛选出的标签作为该第一接口对应的推荐标签。
综上所述,本公开的实施例所提供的技术方案,能够获取网络平台中多个接口对应的接口向量,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量;根据上述多个接口的接口向量,确定上述多个接口中与第一接口相似度最高的一个或多个第二接口,该第一接口为上述多个接口中未附带标签的接口;根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。能够对接口的多个维度的特征进行结合,获取能够充分体现接口特征的特征向量,再根据特征向量为新添加的接口推荐标签,提高接口特征分析的全面性,进而提高标签推荐的准确性。
图2是根据图1示出的一种接口向量获取方法的流程图,上述多个接口包括该第一接口和已附带标签的多个第三接口,如图2所示,上述步骤101包括以下步骤:
在步骤1011中,根据该关联关系确定上述每个第三接口的关联路径。
示例地,可以通过Random walk采样方式结合每个第三接口的关联关系获取该关联路径。可以理解的是,每个接口的关联关系既用于确定该关联路径,也可以在经过embedding处理后作为神经网络模型的训练样本。
在步骤1012中,通过Skip-gram方式根据该关联路径获取多个接口对。
其中,该接口对包含在同一关联路径中互相连接的两个第三接口。
示例地,可以将每一条该关联路径作为一条语句,通过Skip-gram方式将该关联路径中的多个API划分为多个API组。其中,每个API组可以包含互相之间存在关联关系的至少两个API。可以理解的是,每个API组对应一个训练样本,可以通过这些训练样本对预先选取的适当的神经网络模型进行训练,进而获取到能够输出API对应的接口向量的神经网络模型。需要说明的是,当一个API组包括两个以上的API时,实际上还是需要将该API组拆分成多个小组,每个小组仅包含两个API,然后再通过上述多个小组对应的训练样本进行训练神经网络模型的步骤。因此,在本公开实施例中,以仅包含互相之间存在关联关系的两个API的API组(即上述的接口对)为例对神经网络的训练过程和接口向量的获取过程进行说明。
在步骤1013中,通过上述多个接口对中的该第三接口的关联信息、描述文本、服务端类型和one-hot向量生成训练样本集。
其中,该关联信息为根据该关联关系确定的接口的关联接口数量信息。
示例地,该步骤1013包括:根据该两个第三接口中的一者的关联信息、描述文本和服务端类型确定该接口对对应的输入端训练样本;根据该两个第三接口中的另一者的one-hot向量确定该接口对对应的输出端训练样本;获取由该输入端训练样本和该输出端训练样本组成的该接口对对应的训练样本;将上述多个接口对对应的上述多个训练样本作为该训练样本集。该one-hot向量为通过one-hot编码和该两个第三接口中的另一者的接口ID确定的接口向量。
具体地,例如,通过上述步骤1011和1012确定的接口对包含API1和API2(两个第三接口),在步骤1013中,可以将该API1的关联关系embedding向量、描述文本embedding向量以及服务端类型embedding向量拼接而成的embedding向量作为输入端训练样本,API2的one-hot向量作为输出端训练样本,该输入端训练样本和该输出端训练样本即可组合成为一个训练样本。如此,可以获取n个接口对对应的n个训练样本,作为该训练样本集。
在步骤1014中,通过该训练样本集对神经网络模型进行训练,以获取训练好的神经网络模型。
在步骤1015中,将该第一接口的关联信息、描述文本和服务端类型作为该训练好的神经网络模型的输入,以获取该训练好的神经网络模型输出的该第一接口的接口向量。
示例地,可以将新添加的API(即该第一接口)的三个特征(关联关系embedding向量、描述文本embedding向量以及服务端类型embedding向量拼接而成的embedding向量)直接输入训练好的神经网络模型,得到该第一接口的接口向量;或者,将该第一接口的三个特征对应的embedding向量加入训练样本集,重新对神经网络模型进行训练,如此,不但可以在训练的过程中得到该第一接口的向量化表达,还可以根据该第一接口的特征对神经网络模型进行微调。
图3是根据图1示出的一种相似接口确定方法的流程图,如图3所示,上述步骤102包括以下步骤:
在步骤1021中,根据上述多个接口的接口向量,计算上述每个第三接口相对于该第一接口的余弦相似度。
示例地,余弦相似度实际为两个接口向量的夹角的余弦值。若两个接口向量的指向的方向相同(即相似度最高),则余弦相似度的值为1;若两个接口向量夹角为90°,则余弦相似度的值为0;若两个接口向量指向完全相反的方向(即相似度最低),余弦相似度的值为-1。可以理解的是,余弦相似度与接口向量的长度无关的,仅仅与接口向量的指向方向相关。两个接口向量间的余弦相似度可以通过使用预先设置的余弦相似度计算公式(例如,欧几里得点积公式)求出。
在步骤1022中,获取具备最大余弦相似度的一个或多个第三接口,作为上述一个或多个第二接口。
示例地,在通过上述的欧几里得点积公式求出上述每个第三接口相对于该第一接口的余弦相似度后,可以获取具备最大余弦相似度的X个第三接口,作为该第二接口。即,获取在余弦相似度排行中排在前X位的第三接口,作为该第一接口对应的推荐接口。其中,上述X的具体数值可以根据需要任意设置。
图4是根据图1示出的一种推荐标签确定方法的流程图,如图4所示,上述步骤103包括以下步骤:
在步骤1031中,确定标签关联图中每个标签的重要性评分。
其中,该标签关联图为以上述多个标签为节点,以每两个第二接口之间的调用关系和标签针对于同一第二接口的共现关系为有向边的有向关联图。
示例地,该步骤1031包括:获取上述每个第二接口附带的标签,作为该节点;根据该调用关系以及该共现关系,在上述多个节点之间建立该有向边,以生成该标签关联图,其中,该有向边包括单向边和双向边,该单向边以该调用关系为依据建立,该双向边以该共现关系为依据建立;根据该标签关联图确定上述每个标签的重要性评分。
具体来说,该标签关联图用于把上述的一个或多个第二接口之间的关联结构转变为一个或多个第二接口附带的多个标签之间的关联结构。若两个标签处于在不同的第二接口中,并且两个第二接口存在调用关系,则在这两个标签之间建立单向边,该单向边的方向与两个第二接口之间的调用关系的方向一致;若两个标签处于在相同的第二接口中,则认为这两个标签具备共现关系,进而在这两个标签之间建立双向边。可以理解的是,当确定两个标签之间既有该调用关系又具备该共现关系时,可以仅在这两个标签之间建立双向边。
示例地,在建立了该标签关联图之后,可以通过Pagerank方法确定该标签关联图中每个标签的重要性评分。具体地,假设该标签关联图中包含N个节点(即N个标签),上述Pagerank方法对应的重要性评分计算公式可以表示为下列公式1:
其中,R表示N个节点的重要性向量,该重要性向量中包含每个节点的重要性评分;d为可调参数,用于表示节点的随机跳出概率,并且0<d<1;表示节点pi关联至节点pj的归一化权重。具体地,可以取其中,Ni可以表示由节点pi指出的边的总数。
在步骤1032中,根据上述每个标签的出现频次、该重要性评分以及上述每个标签对应的第二接口与该第一接口的相似度,从上述多个标签中筛选出该推荐标签。
示例地,该步骤1032包括:步骤10321,计算该第一标签在目标服务端的出现频次与该第一标签在该网络平台对应的所有服务端的总出现频次的比值,作为该第一标签的出现频次占比,该目标服务端为具备该第一接口对应的服务端类型的服务端,该第一标签为该标签关联图中的任一标签;步骤10322,根据上述每个标签的出现频次占比、上述每个标签对应的第二接口针对于该第一接口的余弦相似度以及该重要性评分,确定该推荐标签。
示例地,该步骤10322包括:将上述每个标签的出现频次占比、上述每个标签对应的第二接口针对于该第一接口的余弦相似度、该重要性评分以及预设的调节系数作为预设的标签推荐得分计算公式的输入,以获取该标签推荐得分计算公式输出的上述每个标签对应于该第一接口的标签推荐得分;获取具备最高标签推荐得分的一个或多个标签,作为该推荐标签。其中,该标签推荐得分计算公式可以表示为下列公式2:
S=a×tagp×(tagi+tagd)+(1-a)×tagi×tagd (2),
其中,S表示该标签推荐得分,tagp表示该出现频次占比,tagi表示该重要性评分,tagd表示该余弦相似度,a表示该调节系数,且0≤a≤1。
综上所述,本公开的实施例所提供的技术方案,能够获取网络平台中多个接口对应的接口向量,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量;根据上述多个接口的接口向量,确定上述多个接口中与第一接口相似度最高的一个或多个第二接口,该第一接口为上述多个接口中未附带标签的接口;根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。能够对接口的多个维度的特征进行结合,获取能够充分体现接口特征的特征向量,再根据特征向量确定接口的相似度,并结合接口相似度、标签之间的关联特性以及标签的出现频次,为新添加的接口推荐标签,能够从多个维度对接口的特征和标签的特性进行分析,提高接口特征分析和标签筛选的全面性与合理性,进而提高标签推荐的准确性。
图5是根据一示例性实施例示出的一种接口标签推荐装置的框图,如图5所示,该装置500包括:
向量获取模块510,用于获取网络平台中多个接口对应的接口向量,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量;
接口确定模块520,用于根据上述多个接口的接口向量,确定上述多个接口中与第一接口相似度最高的一个或多个第二接口,该第一接口为上述多个接口中未附带标签的接口;
标签确定模块530,用于根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。
可选的,上述多个接口包括该第一接口和已附带标签的多个第三接口,该向量获取模块510,用于:
根据该关联关系确定上述每个第三接口的关联路径;
通过Skip-gram方式根据该关联路径获取多个接口对,其中,该接口对包含在同一关联路径中互相连接的两个第三接口;
通过上述多个接口对中的该第三接口的关联信息、描述文本、服务端类型和one-hot向量生成训练样本集,该关联信息为根据该关联关系确定的接口的关联接口数量信息;
通过该训练样本集对神经网络模型进行训练,以获取训练好的神经网络模型;
将该第一接口的关联信息、描述文本和服务端类型作为该训练好的神经网络模型的输入,以获取该训练好的神经网络模型输出的该第一接口的接口向量。
可选的,该向量获取模块510,用于:
根据该两个第三接口中的一者的关联信息、描述文本和服务端类型确定该接口对对应的输入端训练样本;
根据该两个第三接口中的另一者的one-hot向量确定该接口对对应的输出端训练样本;
获取由该输入端训练样本和该输出端训练样本组成的该接口对对应的训练样本;
将上述多个接口对对应的上述多个训练样本作为该训练样本集。
可选的,该接口确定模块520,用于:
根据上述多个接口的接口向量,计算上述每个第三接口相对于该第一接口的余弦相似度;
获取具备最大余弦相似度的一个或多个第三接口,作为上述一个或多个第二接口。
可选的,该标签确定模块530,用于:
确定标签关联图中每个标签的重要性评分,该标签关联图为以上述多个标签为节点,以每两个第二接口之间的调用关系和标签针对于同一第二接口的共现关系为有向边的有向关联图;
根据上述每个标签的出现频次、该重要性评分以及上述每个标签对应的第二接口与该第一接口的相似度,从上述多个标签中筛选出该推荐标签。
可选的,该标签确定模块530,用于:
获取上述每个第二接口附带的标签,作为该节点;
根据该调用关系以及该共现关系,在上述多个节点之间建立该有向边,以生成该标签关联图,其中,该有向边包括单向边和双向边,该单向边以该调用关系为依据建立,该双向边以该共现关系为依据建立;
根据该标签关联图确定上述每个标签的重要性评分。
可选的,该标签确定模块530,用于:
计算该第一标签在目标服务端的出现频次与该第一标签在该网络平台对应的所有服务端的总出现频次的比值,作为该第一标签的出现频次占比,该目标服务端为具备该第一接口对应的服务端类型的服务端,该第一标签为该标签关联图中的任一标签;
根据上述每个标签的出现频次占比、上述每个标签对应的第二接口针对于该第一接口的余弦相似度以及该重要性评分,确定该推荐标签。
可选的,该标签确定模块530,用于:
将上述每个标签的出现频次占比、上述每个标签对应的第二接口针对于该第一接口的余弦相似度、该重要性评分以及预设的调节系数作为预设的标签推荐得分计算公式的输入,以获取该标签推荐得分计算公式输出的上述每个标签对应于该第一接口的标签推荐得分;
获取具备最高标签推荐得分的一个或多个标签,作为该推荐标签。
综上所述,本公开的实施例所提供的技术方案,能够获取网络平台中多个接口对应的接口向量,该接口向量为根据该接口的关联关系、描述文本和服务端类型确定的该接口的特征向量;根据上述多个接口的接口向量,确定上述多个接口中与第一接口相似度最高的一个或多个第二接口,该第一接口为上述多个接口中未附带标签的接口;根据上述一个或多个第二接口附带的多个标签确定该第一接口对应的推荐标签。能够对接口的多个维度的特征进行结合,获取能够充分体现接口特征的特征向量,再根据特征向量确定接口的相似度,并结合接口相似度、标签之间的关联特性以及标签的出现频次,为新添加的接口推荐标签,能够从多个维度对接口的特征和标签的特性进行分析,提高接口特征分析和标签筛选的全面性与合理性,进而提高标签推荐的准确性。
示例地,图6是根据一示例性实施例示出的一种电子设备600的框图。参照图6,电子设备600包括处理器601,其数量可以为一个或多个,以及存储器602,用于存储可由处理器601执行的计算机程序。存储器602中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器601可以被配置为执行该计算机程序,以执行上述的接口标签推荐方法。
另外,电子设备600还可以包括电源组件603和通信组件604,该电源组件603可以被配置为执行电子设备600的电源管理,该通信组件604可以被配置为实现电子设备800的通信,例如,有线或无线通信。此外,该电子设备600还可以包括输入/输出(I/O)接口605。电子设备600可以操作基于存储在存储器602的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的接口标签推荐方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由电子设备600的处理器601执行以完成上述的接口标签推荐方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
Claims (16)
1.一种接口标签推荐方法,其特征在于,所述方法包括:
获取网络平台中多个接口对应的接口向量,所述接口向量为根据所述接口的关联关系、描述文本和服务端类型确定的所述接口的特征向量;
根据多个所述接口的接口向量,确定多个所述接口中与第一接口相似度最高的一个或多个第二接口,所述第一接口为多个所述接口中未附带标签的接口;
根据一个或多个所述第二接口附带的多个标签确定所述第一接口对应的推荐标签,
其中,多个所述接口包括所述第一接口和已附带标签的多个第三接口,所述获取网络平台中多个接口对应的接口向量,包括:
根据所述关联关系确定每个所述第三接口的关联路径;
通过Skip-gram方式根据所述关联路径获取多个接口对,其中,所述接口对包含在同一关联路径中互相连接的两个第三接口;
通过多个所述接口对中的所述第三接口的关联信息、描述文本、服务端类型和one-hot向量生成训练样本集,所述关联信息为根据所述关联关系确定的接口的关联接口数量信息;
通过所述训练样本集对神经网络模型进行训练,以获取训练好的神经网络模型;
将所述第一接口的关联信息、描述文本和服务端类型作为所述训练好的神经网络模型的输入,以获取所述训练好的神经网络模型输出的所述第一接口的接口向量。
2.根据权利要求1所述的方法,其特征在于,所述通过所述第三接口的关联关系、描述文本、服务端类型和one-hot向量生成训练样本集,包括:
根据所述两个第三接口中的一者的关联信息、描述文本和服务端类型确定所述接口对对应的输入端训练样本;
根据所述两个第三接口中的另一者的one-hot向量确定所述接口对对应的输出端训练样本;
获取由所述输入端训练样本和所述输出端训练样本组成的所述接口对对应的训练样本;
将多个所述接口对对应的多个所述训练样本作为所述训练样本集。
3.根据权利要求1所述的方法,其特征在于,所述根据多个所述接口的接口向量,确定多个所述接口中与第一接口相似度最高的一个或多个第二接口,包括:
根据多个所述接口的接口向量,计算每个所述第三接口相对于所述第一接口的余弦相似度;
获取具备最大余弦相似度的一个或多个第三接口,作为一个或多个所述第二接口。
4.根据权利要求1所述的方法,其特征在于,所述根据一个或多个所述第二接口附带的多个标签确定所述第一接口对应的推荐标签,包括:
确定标签关联图中每个标签的重要性评分,所述标签关联图为以所述多个标签为节点,以每两个第二接口之间的调用关系和标签针对于同一第二接口的共现关系为有向边的有向关联图;
根据所述每个标签的出现频次、所述重要性评分以及所述每个标签对应的第二接口与所述第一接口的相似度,从所述多个标签中筛选出所述推荐标签。
5.根据权利要求4所述的方法,其特征在于,所述确定标签关联图中每个标签的重要性评分,包括:
获取每个所述第二接口附带的标签,作为所述节点;
根据所述调用关系以及所述共现关系,在多个所述节点之间建立所述有向边,以生成所述标签关联图,其中,所述有向边包括单向边和双向边,所述单向边以所述调用关系为依据建立,所述双向边以所述共现关系为依据建立;
根据所述标签关联图确定所述每个标签的重要性评分。
6.根据权利要求4所述的方法,其特征在于,所述根据所述每个标签的出现频次、所述重要性评分以及所述每个标签对应的第二接口与所述第一接口的相似度,从所述多个标签中筛选出所述推荐标签,包括:
计算第一标签在目标服务端的出现频次与所述第一标签在所述网络平台对应的所有服务端的总出现频次的比值,作为所述第一标签的出现频次占比,所述目标服务端为具备所述第一接口对应的服务端类型的服务端,所述第一标签为所述标签关联图中的任一标签;
根据所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度以及所述重要性评分,确定所述推荐标签。
7.根据权利要求6所述的方法,其特征在于,所述根据所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度以及所述重要性评分,确定所述推荐标签,包括:
将所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度、所述重要性评分以及预设的调节系数作为预设的标签推荐得分计算公式的输入,以获取所述标签推荐得分计算公式输出的所述每个标签对应于所述第一接口的标签推荐得分;
获取具备最高标签推荐得分的一个或多个标签,作为所述推荐标签。
8.一种接口标签推荐装置,其特征在于,所述装置包括:
向量获取模块,用于获取网络平台中多个接口对应的接口向量,所述接口向量为根据所述接口的关联关系、描述文本和服务端类型确定的所述接口的特征向量,多个所述接口包括第一接口和已附带标签的多个第三接口,所述向量获取模块,具体用于:根据所述关联关系确定每个所述第三接口的关联路径;通过Skip-gram方式根据所述关联路径获取多个接口对,其中,所述接口对包含在同一关联路径中互相连接的两个第三接口;通过多个所述接口对中的所述第三接口的关联信息、描述文本、服务端类型和one-hot向量生成训练样本集,所述关联信息为根据所述关联关系确定的接口的关联接口数量信息;通过所述训练样本集对神经网络模型进行训练,以获取训练好的神经网络模型;将所述第一接口的关联信息、描述文本和服务端类型作为所述训练好的神经网络模型的输入,以获取所述训练好的神经网络模型输出的所述第一接口的接口向量;
接口确定模块,用于根据多个所述接口的接口向量,确定多个所述接口中与第一接口相似度最高的一个或多个第二接口,所述第一接口为多个所述接口中未附带标签的接口;
标签确定模块,用于根据一个或多个所述第二接口附带的多个标签确定所述第一接口对应的推荐标签。
9.根据权利要求8所述的装置,其特征在于,所述向量获取模块,用于:
根据所述两个第三接口中的一者的关联信息、描述文本和服务端类型确定所述接口对对应的输入端训练样本;
根据所述两个第三接口中的另一者的one-hot向量确定所述接口对对应的输出端训练样本;
获取由所述输入端训练样本和所述输出端训练样本组成的所述接口对对应的训练样本;
将多个所述接口对对应的多个所述训练样本作为所述训练样本集。
10.根据权利要求8所述的装置,其特征在于,所述接口确定模块,用于:
根据多个所述接口的接口向量,计算每个所述第三接口相对于所述第一接口的余弦相似度;
获取具备最大余弦相似度的一个或多个第三接口,作为一个或多个所述第二接口。
11.根据权利要求8所述的装置,其特征在于,所述标签确定模块,用于:
确定标签关联图中每个标签的重要性评分,所述标签关联图为以所述多个标签为节点,以每两个第二接口之间的调用关系和标签针对于同一第二接口的共现关系为有向边的有向关联图;
根据所述每个标签的出现频次、所述重要性评分以及所述每个标签对应的第二接口与所述第一接口的相似度,从所述多个标签中筛选出所述推荐标签。
12.根据权利要求11所述的装置,其特征在于,所述标签确定模块,用于:
获取每个所述第二接口附带的标签,作为所述节点;
根据所述调用关系以及所述共现关系,在多个所述节点之间建立所述有向边,以生成所述标签关联图,其中,所述有向边包括单向边和双向边,所述单向边以所述调用关系为依据建立,所述双向边以所述共现关系为依据建立;
根据所述标签关联图确定所述每个标签的重要性评分。
13.根据权利要求11所述的装置,其特征在于,所述标签确定模块,用于:
计算第一标签在目标服务端的出现频次与所述第一标签在所述网络平台对应的所有服务端的总出现频次的比值,作为所述第一标签的出现频次占比,所述目标服务端为具备所述第一接口对应的服务端类型的服务端,所述第一标签为所述标签关联图中的任一标签;
根据所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度以及所述重要性评分,确定所述推荐标签。
14.根据权利要求13所述的装置,其特征在于,所述标签确定模块,用于:
将所述每个标签的出现频次占比、所述每个标签对应的第二接口针对于所述第一接口的余弦相似度、所述重要性评分以及预设的调节系数作为预设的标签推荐得分计算公式的输入,以获取所述标签推荐得分计算公式输出的所述每个标签对应于所述第一接口的标签推荐得分;
获取具备最高标签推荐得分的一个或多个标签,作为所述推荐标签。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至7中任一项所述的接口标签推荐方法的步骤。
16.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910492605.XA CN110262906B (zh) | 2019-06-06 | 2019-06-06 | 接口标签推荐方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910492605.XA CN110262906B (zh) | 2019-06-06 | 2019-06-06 | 接口标签推荐方法、装置、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110262906A CN110262906A (zh) | 2019-09-20 |
CN110262906B true CN110262906B (zh) | 2021-07-02 |
Family
ID=67917207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910492605.XA Active CN110262906B (zh) | 2019-06-06 | 2019-06-06 | 接口标签推荐方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110262906B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112287238B (zh) * | 2020-12-30 | 2021-04-09 | 腾讯科技(深圳)有限公司 | 用户特征的确定方法和装置、存储介质及电子设备 |
CN113742084A (zh) * | 2021-09-13 | 2021-12-03 | 城云科技(中国)有限公司 | 基于接口特性分配计算资源的方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021366A (zh) * | 2016-05-10 | 2016-10-12 | 浙江大学 | 一种基于异构信息的api标签推荐方法 |
CN107103514A (zh) * | 2017-04-25 | 2017-08-29 | 北京京东尚科信息技术有限公司 | 商品性别标签确定方法和装置 |
CN107832047A (zh) * | 2017-11-27 | 2018-03-23 | 北京理工大学 | 一种基于lstm的非api函数实参推荐方法 |
CN108959431A (zh) * | 2018-06-11 | 2018-12-07 | 中国科学院上海高等研究院 | 标签自动生成方法、系统、计算机可读存储介质及设备 |
CN109299366A (zh) * | 2018-09-28 | 2019-02-01 | 西安交通大学深圳研究院 | 一种基于内容相似度实时计算的网络数据分类推荐系统 |
CN109493881A (zh) * | 2018-11-22 | 2019-03-19 | 北京奇虎科技有限公司 | 一种音频的标签化处理方法、装置和计算设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10430255B2 (en) * | 2017-07-03 | 2019-10-01 | Fujitsu Limited | Application program interface mashup generation |
-
2019
- 2019-06-06 CN CN201910492605.XA patent/CN110262906B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021366A (zh) * | 2016-05-10 | 2016-10-12 | 浙江大学 | 一种基于异构信息的api标签推荐方法 |
CN107103514A (zh) * | 2017-04-25 | 2017-08-29 | 北京京东尚科信息技术有限公司 | 商品性别标签确定方法和装置 |
CN107832047A (zh) * | 2017-11-27 | 2018-03-23 | 北京理工大学 | 一种基于lstm的非api函数实参推荐方法 |
CN108959431A (zh) * | 2018-06-11 | 2018-12-07 | 中国科学院上海高等研究院 | 标签自动生成方法、系统、计算机可读存储介质及设备 |
CN109299366A (zh) * | 2018-09-28 | 2019-02-01 | 西安交通大学深圳研究院 | 一种基于内容相似度实时计算的网络数据分类推荐系统 |
CN109493881A (zh) * | 2018-11-22 | 2019-03-19 | 北京奇虎科技有限公司 | 一种音频的标签化处理方法、装置和计算设备 |
Non-Patent Citations (1)
Title |
---|
面向服务的社会化标注方法研究;黄媛;《中国博士学位论文全文数据库信息科技辑》;20180715(第7期);第1-45页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110262906A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110147551B (zh) | 多类别实体识别模型训练、实体识别方法、服务器及终端 | |
CN108804641B (zh) | 一种文本相似度的计算方法、装置、设备和存储介质 | |
CN108345702A (zh) | 实体推荐方法和装置 | |
CA3083723C (en) | Method and apparatus for providing personalized self-help experience | |
CN112119388A (zh) | 训练图像嵌入模型和文本嵌入模型 | |
US11276099B2 (en) | Multi-perceptual similarity detection and resolution | |
CN112131261B (zh) | 基于社区网络的社区查询方法、装置和计算机设备 | |
CN111159563A (zh) | 用户兴趣点信息的确定方法、装置、设备及存储介质 | |
CN107291774B (zh) | 错误样本识别方法和装置 | |
CN112380421A (zh) | 简历的搜索方法、装置、电子设备及计算机存储介质 | |
CN110262906B (zh) | 接口标签推荐方法、装置、存储介质和电子设备 | |
CN118043802A (zh) | 一种推荐模型训练方法及装置 | |
CN111460206B (zh) | 图像处理方法、装置、电子设备和计算机可读存储介质 | |
CN113569118A (zh) | 自媒体推送方法、装置、计算机设备及存储介质 | |
CN117216393A (zh) | 信息推荐方法、信息推荐模型的训练方法及装置、设备 | |
CN114547312B (zh) | 基于常识知识图谱的情感分析方法、装置以及设备 | |
CN113792230B (zh) | 服务链接方法、装置、电子设备和存储介质 | |
CN117009621A (zh) | 信息搜索方法、装置、电子设备、存储介质及程序产品 | |
CN115269816A (zh) | 基于信息处理方法的核心人员挖掘方法、装置和存储介质 | |
CN108920492A (zh) | 一种网页分类方法、系统、终端及存储介质 | |
CN114707068A (zh) | 一种智库知识推荐的方法、装置、设备及介质 | |
CN112417260B (zh) | 本地化推荐方法、装置及存储介质 | |
CN113705692A (zh) | 基于人工智能的情感分类方法、装置、电子设备及介质 | |
WO2020151318A1 (zh) | 基于爬虫模型的语料构建方法、装置及计算机设备 | |
WO2019236338A1 (en) | Computerized relevance scoring engine for identifying potential investors for a new business entity |
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 |