Font Size: a A A

Service Recommendation And Service Discovery Method Based On Knowledge Graph

Posted on:2023-03-04Degree:MasterType:Thesis
Country:ChinaCandidate:J C YangFull Text:PDF
GTID:2568306791967979Subject:Engineering
Abstract/Summary:PDF Full Text Request
Mashup is a new type of application that integrates multiple services such as open APIs.For the development of Mashup,the quality of the selected service is extremely important.However,with the rapid development of Internet technology,the number of services is increasing rapidly.It is unrealistic to manually select appropriate services in a large number of services.How to provide appropriate services for mashup developers has become a hot and difficult issue in the field of service computing.At present,the methods for developers to obtain services can be roughly divided into two types-service recommendation and service discovery.Service recommendation is a method of proactively recommending services for developers only based on historical usage records and service information when developers do not have clear requirements.Service discovery is a method of passively discovering services according to the needs of developers when there are clear requirements.In recent years,researchers have proposed many methods of service recommendation and service discovery to obtain high-quality services for developers and achieved good results.However,the existing research still has the following shortcomings:(1)Most of the existing service recommendation methods are based on collaborative filtering,which is easily affected by data sparsity.In ad dition,when there is a lack of service historical usage records,many existing service recommendation methods have the problem of cold start;(2)Existing service discovery methods rely too much on semantic information and cannot mine deep relationships between services.In addition,the requirements put forward by developers are often inaccurate,resulting in low accuracy of service discovery.In view of the above problems,this paper proposes service recommendation and service discovery based on knowledge graph,and uses knowledge graph technology to solve the above-mentioned problems of data sparseness in service recommendation and excessive dependence on semantic information in service discovery.The main research contents of this paper are as follows:(1)Service recommendation approach based on knowledge graph and collaborative filteringIn order to solve the problems of data sparseness and cold start in existing service recommendation approaches,this paper proposes a service recommendation approach based on knowledge graph and Collaborative filtering(KGCF-SR).The approach embeds service-related information into the knowledge graph to reduce the adverse effects of data sparsity.Furthermore,the problem of cold start is solved by analyzing the similarities of function sets between mashups.Specifically,the KGCF-SR model includes the following steps.First,we take the relevant information of services and Mashups as entities to construct the knowledge graph of service and embed the service entities in the graph into low-dimensional space through the representation learning method Trans H.Then we calculate the similarities between service vectors and recommend candidate services by collaborative filtering.Secondly,function sets in the description information of Mashups are extracted,and the candidate services are recommended for the target mashup by calculating the similarities between the function sets.Thirdly,based on the historical usage records of services,service-based and mashup-based invocation matrices are constructed respectively.Then,we calculate the similarities between invocation matrices and recommend candidate services by collaborative filtering.Finally,we normalize and rank the similarities of all candidate services to obtain the final recommendation set.In the data experiment part,we use the real data set obtained from the Programmable Web to verify the effectiveness of our approach.The experimental results show that the accuracy of our method is significantly improved compared with the current mainstream service recommendation approaches.(2)Service discovery approach based on knowledge graphTo solve the problems of over-reliance on semantic information and inaccurate requirements in current service discovery approaches,this paper proposes a service discovery approach based on the knowledge graph(SDKG).This method uses knowledge graph technology to mine deep relationships between services,thereby improving the accuracy of service discovery.In addition,the SDKG method can also provide developers with servicerelated information,so that developers can build accurate requirement statements to discover services.Specifically,the SDKG model includes the following steps.First,we extract service entities from the service knowledge graph and build dictionaries of different categories.Secondly,we analyze the requirement questions put forward by mashup developers,and determine the service matching template based on the entity type and question word type in the question.Thirdly,the Cypher query statement is constructed according to the service matching template and the corresponding entities are queried in the knowledge graph.Finally,we discover services for developers.When the developer requires is to obtain service-related information,the queried service information is directly provided to the developer,so that the developer can construct an accurate requirement statement based on the service information to discover services.When the developer requires to discover services,the similarities between the requirement question and the candidate service description text are calculated based on the word2 vec model,and services with the high matching degree with the requirement question are provided to the developer.Experimental results show that our approach has obvious advantages in accuracy compared with the existing mainstream service discovery approaches.In addition,based on the SDKG model,we designed and developed an intelligent service question answering system.On the one hand,the system can discover services for developers;On the other hand,the system can also provide service-related information to developers to build accurate demand statements to discover services.
Keywords/Search Tags:knowledge graph, service recommendation, service discovery, representation learning, collaborative filtering
PDF Full Text Request
Related items