一种基于大数据分析的接口api推荐方法及系统的制作方法_3

文档序号:9597964阅读:来源:国知局
[0119] S302 :根据数据信息获取各类APP的API,对API进行分类处理,获取通用API和 特征API ;
[0120] S303 :获取API的使用情况信息;
[0121] S304 :获取API在APP集合中被APP使用频率和API在各类APP中被APP使用频 率;
[0122] S305 :根据使用情况信息和使用频率,获取API的推荐度;
[0123] S306 :根据APP中出现两个API的频率构建API常用组合表;
[0124] S307 :根据API推荐度和API常用组合表向用户推荐相应的API。
[0125] 对S301作进一步说明:
[0126] 通过获取APP集合中的APP数据信息,其中APP数据信息包括APP的名称、描述、 标签、源代码、评分(评论)和下载量;对APP集合中的APP进行分类,提取APP数据信息 中的APP的名称、描述和标签,在这些APP数据信息中提取有关描写或描述该APP功能的词 汇,将这些功能性词汇作为对该APP分类的关键词,根据这些关键词对这些APP进行分类, 如分为游戏类,聊天类,视频类等等。
[0127] 对已分类的APP进行分类后排序;通过获取APP的评分(评论)和下载量,若是评 论,则根据评论好坏设置等级,分别为优秀、良好、及格、不及格,其中优秀为9-10分、良好 为7-9分、及格6-7分、不及格为0-6分;评分统一换算为十分制;对所有评分进行归一化处 理,本实施例采用Max-Min归一化的方法进行处理,获取归一化处理结果A,其中,处理公式 如下:
[0129] 其中,\是该分第i个APP的评分,ΧΜιη是该分类APP中评分最小的,X Max是该分类 APP中评分最大的。
[0130] 根据该分类APP的下载量采用,采用归一化的方法对这些下载量进行处理,本实 施例采用Max-Min归一化方法进行处理,获取归一化结果Di,其中,公式如下:
[0132] 其中,51是该分第i个APP的下载量,SMin是该分类APP中下载量最小的,S Max是该 分类APP中下载量最大的。
[0133] 根据上述归一化结果,进行综合加权合并,获取合并结果,根据合并结果的大小进 行该类APP的排序,其中,综合加权合并公式如下:
[0134] Ax= a U χ+β D1;
[0135] 其中,六1是综合加权合并结果,α、β分别为权值,且α+β = 1,本实施例取值为 α = 0. 3,β = 0. 7。
[0136] 对S302作进一步说明:
[0137] 根据上述S11获取ΑΡΡ的源代码,分析源代码,获取ΑΡΡ的API,统计API在ΑΡΡ 集合中和各类APP中的使用平率和逆向文件频率,采用TF-IDF算法进行API分类,其中, TF-IDF算法公司为:
[0138] TF-IDF =用平率X逆向文件频率;
[0139] 获取TF-IDF结果,采用TF-IDF结果与预设阈值进行比较,其中预设阈值为0. 1,判 断使用权重是否大于阈值;若是,则API为通用API,若否,则API为特征API。将API分为 APP集合的通用API、特征API和各类APP的通用API、特征API。
[0140] 对S303作进一步说明:
[0141] 通过在开放的web API上收集用户对该API的评分和使用量;对评分进行归一化 处理,获取结果Ei,对使用量进行归一化处理,获取结果Fi,本实施例采用Max-Min归一化方 法进行处理;对上述归一化结果进行综合加权,即:
[0142] Β = α Εχ+β F1;
[0143] 其中,81是综合加权合并结果,α、β分别为权值,且α +β = 1,本实施例取值为 α = 0. 3,β = 0. 7。
[0144] 对S304作进一步说明:
[0145] 通过统计的方式获取每个API在ΑΡΡ集合中被ΑΡΡ使用的总次数%和每个API在 各类APP中被APP使用的总次数Nn;通过统计的方式获取APP集合中的APP的数量Μ和各 类ΑΡΡ中的ΑΡΡ数量V ;即API在ΑΡΡ集合被ΑΡΡ使用频率为Ρ1:
[0147] 即API在各类ΑΡΡ中被ΑΡΡ使用频率Ρ2:
[0149] 对S305作进一步说明:
[0150] 根据上述S302中,若是通用API,则推荐度R :
[0153] 若该通用API不存在使用情况信息,则推荐度R :
[0156] 若该API是特征API,则则推荐度R :
[0157] R = ηΒ+κ Ρ^λΡ^
[0158] 其中,η = 0· 3,κ: = 〇· 4,λ = 〇· 3 ;
[0159] 若该特征API不存在使用情况信息,则推荐度R :
[0160] R = v Ρ!+ τ P2;
[0161] 其中,v = 〇· 6,τ = 〇· 4。
[0162] 对S306作进一步说明:
[0163] 采用统计的方式获取同一 APP源代码上出现两个不相同的API的频率,构建有向 图G = {V,E},其中V表示所有API的集合,E表示两个API同时出现在一个APP中的情况 的集合,每当第i个API和第j个API同时出现在一个APP中,两个API之间的边的权值Ey 和^都增加1 ;
[0164] 采用深度优先搜索的方法遍历该有向图G,并且在选择下一个访问的点时优先选 择Eg与e相差不大的点,其中E u表示当前访问结点i和下一个待访问结点j之间的边的 权值,e表示在该次遍历中所经过的边的权值的平均值;
[0165] 在一次深度优先搜索中,若每次搜到末端点(回溯前)所访问过的点的数目大于 1时,计算经过的各边的权值与平均值的方差,若方差小于一定的数值(0.05)时,可认为所 访问过的API可以构成一个常用组合,并将该常用组合加入到API常用组合表中。
[0166] 对S307作进一步说明:
[0167] 根据API推荐度和API常用组合表向用户推荐相应的API,是当用户输入相应的功 能词或源代码进行检索时,根据功能词或源代码获取相对应的API,根据相对应的API的推 荐度和常用组合表对用户进行推荐,具体是向用户推荐推荐度靠前的API,根据这些推荐度 靠前的API调用其在常用组合表中的组合关系,推荐其经常同时出现和使用的API ;或是自 动检测用户的使用习惯,推荐与用户使用习惯相关度较高且推荐度也是较高的API和与该 API经常同时出现的常用组合API。
[0168] 图4是本发明实施例的基于大数据分析的接口 API推荐系统的结构组成示意图, 如图4所示,该系统包括:
[0169] 分类模块:用于获取APP集合中各个APP的数据信息,对APP集合中的APP按功能 进行分类;
[0170] API获取模块:用于根据数据信息获取各类APP的API,对API进行分类处理,获取 通用API和特征API ;
[0171] 推荐度获取模块:用于根据API的使用情况信息和API的使用频率,获取API的推 荐度;
[0172] 组合表构建模块:用于根据APP中出现两个API的频率构建API常用组合表;
[0173] 推荐度获取模块:根据API的出现总次数和API的使用频率,获取API的推荐度;
[0174] 优选地,数据信息包括APP的名称、描述、标签、源代码、评分和下载量;
[0175] 分类模块,包括:
[0176] 信息获取单元:用于获取APP的名称、描述和标签;
[0177] 关键词提取单元:用于根据APP的名称、描述和标签,提取APP的功能关键词;
[0178] 分类单元:根据APP的功能关键词对APP进行分类。
[0179] 优选地,对API进行分类处理,获取通用API和特征API,包括:
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1