论文部分内容阅读
随着SaaS技术的日臻成熟,基于服务的软件系统(SBS)开发成为了互联网上生成软件的主要手段。为了将各类服务资源放在云端,涌现出很多公共服务注册中心,如PWeb、Mashape等,这些注册中心已存在大量的服务。然而,这些服务资源间具有明显的异构特征,包括它们所遵循的协议(如SOAP、REST等)和所使用的描述方式(如WSDL、自然语言文本等)。如何从海量的异构服务中为软件系统推荐合适的服务,是基于服务的软件系统开发中一个极具挑战性的问题,其效果会直接影响到软件系统开发的效率和服务重用的质量。针对上述问题,本文拟解决的关键问题是“面对互联网上大量的、异构的、语义稀疏的服务资源,针对基于服务的软件系统开发如何进行有效地服务推荐”。以这个关键问题为中心,论文的创新点有三个:(1)提出了一种基于RGPS语义增强的服务聚类方法。首先将服务描述文档基于RGPS服务特征建模元模型框架进行语义特征扩展,然后基于BTM对扩展后的服务特征表示进行主题建模,最后利用K-means完成服务聚类。该方法从RGPS多维度扩展服务特征,为主题模型聚类奠定了基础。实验证明,在语义稀疏情境下,该方法有良好的聚类效果。(2)提出了一种基于异构信息网元路径的服务推荐方法。首先利用异构信息网将公共注册中心中异构的服务资源进行统一建模,然后融合元路径和词嵌入技术度量SBS间的相似性,最后利用协同过滤方法进行服务推荐。通过大量实验证明,SBS间不同的元路径在相似度计算中的贡献是不同的,可针对不同类型的SBS需求给出最佳的元路径计算组合。(3)提出了一种基于异构信息网表示学习的服务推荐方法。以贡献(2)为基础,利用嵌入技术对异构信息网中的异构对象(SBS和Service)进行向量化表示,以解决推荐过程中SBS-Service交互信息稀疏的问题。首先使用异构网络嵌入和词嵌入技术分别提取Service的结构特征和内容特征,然后通过协同联合学习对异构信息网中SBS和Service进行统一表示,最后依据在矢量空间中SBS与Service之间的距离进行服务推荐。该方法通过网络表示学习挖掘对象的潜在特征,进一步改善了推荐效果。本文围绕“面对互联网上大量的、异构的、语义稀疏的服务资源,针对基于服务的软件系统开发如何进行有效的服务推荐”这个关键问题,逐步提出了一种较为完善的基于异构信息网的服务推荐方法,在面向主题的服务聚类基础上,利用异构信息网对异构服务资源建模,通过元路径和网络表示学习的方式,为多场景下基于服务的软件系统需求提供多策略的服务推荐方案。