End-to-End Web Service Recommendations by Extending Collaborative Topic Regression

End-to-End Web Service Recommendations by Extending Collaborative Topic Regression

Bing Bai (Department of Automation, Tsinghua University, Beijing, China), Yushun Fan (Department of Automation, Tsinghua University, Beijing, China), Wei Tan (IBM Thomas J. Watson Research Center, Yorktown Heights, NY, USA), Jia Zhang (Department of Electrical and Computer Engineering, Carnegie Mellon University, Moffett Field, CA, USA), Keman Huang (Sloan School of Management, Massachusetts Institute of Technology, Cambridge, MA, USA) and Jing Bi (School of Software Engineering, Beijing University of Technology, Beijing, China)
Copyright: © 2018 |Pages: 24
DOI: 10.4018/IJWSR.2018010105


Mashup has emerged as a lightweight way to compose multiple web services and create value-added compositions. Facing the large amount of services, effective service recommendations are in great need. Service recommendations for mashup queries suffers from a mashup-side cold-start problem, and traditional approaches usually overcome this by first applying topic models to mine topic proportions of services and mashup queries, and then using them for subsequent recommendations. This solution overlooks the fact that usage record can provide a feedback for text extraction. Besides, traditional approaches usually treat all the usage records equally, and overlook the fact that the service usage pattern is evolving. In this article, the authors overcome these issues and propose an end-to-end service recommendation algorithm by extending collaborative topic regression. The result is a generative process to model the whole procedure of service selection; thus, usage can guide the mining of text content, and meanwhile, they give time-aware confidence levels to different historical usages. Experiments on the real-world ProgrammableWeb data set show that the proposed algorithm gains an improvement of 6.3% in terms of mAP@50 and 10.6% in terms of Recall@50 compared with the state-of-the-art methods.
Article Preview

1. Introduction

With the wide adoption of Service-Oriented Architecture (SOA) and Cloud Computing, web services, usually in the form of web APIs, have grown rapidly both in quantity and diversity (Zhang and Zhang, 2013; Wu et al., 2015). To create value-added software efficiently and effectively, reusing existing services to composite mashups has become a promising solution (Cao et al., 2015; Wang et al., 2014). To deal with the large amount of services, performing service recommendations based on the massive historical usage data has been proved to be an expedient method (Zhong et al., 2015).

Apart from some non-personalized approaches (Ni et al., 2016; Huang et al., 2014), existing personalized service recommendation approaches can be roughly divided into two categories, i.e., Quality-of-Service (QoS)-based service recommendations and function-based service recommendations. For QoS-based ones, recommendations are achieved by predicting non-functional characteristics such as reliability, availability and response time (Xiong et al., 2009; Zheng et al., 2009; Wei et al., 2012). For function-based service recommendations, researchers focus on finding services that meet the functional requirements the best (Zhong et al., 2015; Xia et al., 2014). In this paper, we focus on the latter one.

Function-based service recommendations suffers from an issue of, what we call, Mashup-side Cold-start problem. Different from traditional (and the most common) matrix completion recommendation tasks (QoS-based recommendations mainly belongs to this category), for function-based service recommendations, service usage of the mashup queries is what need to be predicted and completely unknown to recommender systems. The only information about the queries are the descriptions in the form of text (Zhong et al., 2015; Xia et al., 2014). Figure 1 illustrates the differences between these two tasks.

Figure 1.

Illustration of matrix completion recommendations and function-based service recommendations for mashup development. Unlike the former one, service usages of the query are totally unknown, thus service recommendations suffers the mashup-side cold-start problem.


In other recommender systems, such a problem is often referred as a user-side cold-start problem. When new users join a system, it is difficult to recommend for them due to lack of information. Common recommendation algorithms, like standard collaborative filtering or matrix factorization, cannot be directly applied (Adomavicius and Tuzhilin, 2005).

In recent years, Latent Dirichlet Allocation (LDA) (Blei, Ng and Jordan, 2003) has been applied to extract service topics from textual information, in order to address the mashup-side cold-start problem (Zhong et al., 2015; Xia et al., 2014; Li et al., 2013). However, our study has revealed that traditional approaches may lead to the following two issues, which prohibit high-quality service recommendations.

Complete Article List

Search this Journal:
Open Access Articles
Volume 17: 4 Issues (2020): 1 Released, 3 Forthcoming
Volume 16: 4 Issues (2019)
Volume 15: 4 Issues (2018)
Volume 14: 4 Issues (2017)
Volume 13: 4 Issues (2016)
Volume 12: 4 Issues (2015)
Volume 11: 4 Issues (2014)
Volume 10: 4 Issues (2013)
Volume 9: 4 Issues (2012)
Volume 8: 4 Issues (2011)
Volume 7: 4 Issues (2010)
Volume 6: 4 Issues (2009)
Volume 5: 4 Issues (2008)
Volume 4: 4 Issues (2007)
Volume 3: 4 Issues (2006)
Volume 2: 4 Issues (2005)
Volume 1: 4 Issues (2004)
View Complete Journal Contents Listing