[发明专利]基于主题模型聚类的Web API推荐方法有效
申请号: | 202110508530.7 | 申请日: | 2021-05-11 |
公开(公告)号: | CN113343078B | 公开(公告)日: | 2022-07-15 |
发明(设计)人: | 陆佳炜;郑嘉弘;赵伟;马超治;徐俊;张元鸣;肖刚 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06F16/9535 | 分类号: | G06F16/9535;G06F16/35;G06F40/216;G06F40/284;G06K9/62 |
代理公司: | 杭州斯可睿专利事务所有限公司 33241 | 代理人: | 王利强 |
地址: | 310014 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 主题 模型 web api 推荐 方法 | ||
1.一种基于主题模型聚类的Web API推荐方法,其特征在于,所述方法包括如下步骤:
第一步:根据上下文信息计算单词的语义权重信息从而得到文档-单词语义权重信息矩阵D;
第二步:统计单词共现信息,从而计算出单词的上下文SPPMI矩阵信息;
第三步:基于第一步,第二步得到Mashup服务文档单词的文档-单词语义权重信息矩阵D,单词的上下文SPPMI矩阵M,通过分解M得到词嵌入信息矩阵,进一步将文档-单词语义权重信息矩阵和单词的上下文SPPMI矩阵M进行结合,计算服务的主题信息;
第四步:将第三步得到的Mashup服务主题特征,作为谱聚类的输入进行聚类,通过对所有数据点组成的图进行切图,让切图后不同的子图间边权重和尽可能的低,而子图内的边权重和尽可能的高,从而达到聚类的目的;
第五步:结合GBDT和FM方法对Web API服务进行预测推荐,步骤如下:
5.1利用第三步对Mashup服务需求Mre进行主题模型建模,获取服务需求Mre的文档-主题矩阵Tre作为Mashup服务主题特征;之后,对Web API服务语料APIA进行建模,获取APIA的文档-主题矩阵Tapi作为Web API服务主题特征;
5.2设置一个为空的set类型的集合Um,set集合为只包含唯一值的集合,设置sim为0,对第四步最终输出的服务类簇Mset进行遍历处理,每次遍历的簇设置为C,将Mashup服务类簇主题功能特征向量的平均值作为每一个类的簇中心,即计算C中所有向量的平均值,将Tre中的所有向量分别与该平均值利用余弦公式进行相似度计算,并将该相似度计算结果之和设置为Temp,对sim与Temp的大小进行判断,若Temp大于sim,则将Um设置为C,sim设置为Temp,遍历结束,此时的Um即为与Mashup服务需求Mre最相近的类簇;
余弦相似度计算公式如下所示:
其中Vi与Vj分别表示计算相似度的两个向量,T表示矩阵倒置运算,‖V‖表示向量的模运算;
5.3设置Setapi为候选的Web API集合,将步骤5.2输出的Um与Web API服务主题特征Tapi作为输入,统计Mashup服务类簇中所有Mashup服务所调用过的Web API服务,将其对应的Tapi中的主题特征存入Setapi中,获取候选API集合;
5.4设置Pop为Web API服务的流行度,以Web API服务语料A为输入,计算Web API服务的流行度,流行度计算公式如下:
pop(api)为API的流行度,其表示Web API在不同类簇中的流行程度,其中use(api)表示该Web API被数据集中Mashup服务使用过的次数,Cuse(api)表示聚类后的Mashup服务类簇中该Web API被调用过的次数,通过计算Web API的类簇中流行度,可以有效地反应WebAPI的可用性;
设置Co为Web API服务的共现度信息,计算Web API服务的共现度,共现度计算公式如下:
Co(apii,apij)为Web API服务之间的共现度,其表示Web API之间可组合性,其中M(apii,apij)表示同时调用Web API服务i和j的Mashup服务的数量,O(apii)表示调用过apii的Mashup服务数量;
设置AvCo为Web API服务的平均共现度信息,平均共现度信息计算公式如下:
AvCo(apii)为平均共现度信息,其中NO(apij)表示和apii间共现度不为0的Web API数量,根据平均共现度反应了Web API的可组合性;
5.5以步骤5.1中计算得到的Mashup服务主题特征Tre与Web API服务主题特征Tapi,步骤5.3中计算得到的候选Web API集合Setapi,5.4步骤中得到的Web API服务的流行度Pop与Web API服务的平均共现度AvCo作为参数,将Mashup服务名称与Web API服务名称One-Hot化,组合形成原始特征向量Vec(Idm,Ida,Tm,Ta,Pop,AvCo),其中Idm表示Mashup服务名称的One-Hot编码,Ida表示Web API服务名称的One-Hot编码,Tm表示Mashup服务的主题功能特征,为Mashup服务描述对应的文档-主题矩阵Tre中的向量,Ta表示Web API的主题功能特征,为Web API服务描述对应的文档-主题矩阵Tapi中的向量,Pop和AvCo为对应Web API服务的流行度信息以及平均共现度信息,在原始特征向量Vec综合了功能特征信息和非功能特征信息,可以更全面的考虑Web API服务的质量,提高推荐的可靠性,One-Hot编码利用与分类状态数量相同的状态寄存器来对所有状态进行编码,每个状态都有独立的寄存器位,并且在任意时候只有一位有效,表示形式为只有一个分量为1,其余分量都为0的二进制向量;
5.6设置转换后的特征向量为TranVec,以步骤5.5中获得的原始特征向量Vec为输入,基于梯度提升决策树GBDT进行特征转换,GBDT是一种功能强大的回归和分类模型,GBDT模型由若干棵独立的决策树组成,每棵树都由之前的树的残差进行训练,GBDT不断地进行迭代,每一次迭代都会产生一个增益较大的分类特征,每个节点的分裂可以视作为特征选择的操作,多棵树以及多层节点的结构可以对原始特征进行自动选择和组合,进而生成新的特征向量,通过GBDT模型可以自动对特征选择,组合和转换,从而提高后续推荐模型的学习能力,通过GBDT对原始特征向量进行转换得到维度较低的转换后的特征向量集合TranVec,向量中包含所有叶节点的序号;
5.7对步骤5.6得到的TranVec进行One-Hot编码处理,获得向量集合OTvec;
5.8以OTvec为输入,输入到因子分解机FM模型中对Web API服务的得分进行预测;
FM模型能较好解决大规模稀疏数据下的特征组合问题,能适应各种输入,拓展性更强,能在原始特征上进行高阶特征交互,使用二阶FM模型对API服务进行推荐,其定义如下:
x为特征向量,xi为向量x的第i个分量,n为特征向量的维度,y(x)为预测的得分,w0为全局偏置,w为特征向量每个分量对应权重的集合,wi为特征向量第i个分量对应的权重,部分为传统的线性模型,vei是维度为k的向量,k是超参数,用来定义矩阵分解的维度;vei,vej表示向量vei和vej的点积对应的实数值,其代表特征向量中第i个与第j个特征的相互作用,将该实数值分解为两个向量点积,能在高稀疏度环境下考虑不同特征之间的联系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110508530.7/1.html,转载请声明来源钻瓜专利网。