A Recommended Method Based on the Weighted RippleNet Network Mode

User preferences were modeled by the RippleNet network and successfully applied in the recommender systems, but the weight of the entity was not considered. This paper proposes a RippleNet model incorporating the influence of complex network nodes. After the construction of complex networks based on knowledge Graphs, we build the maximum subnet model and calculate the influence of nodes in the graph network. We added it to the RippleNet as the weight of entities. The experimental results showed that new method increased the AUC and ACC values of RippleNet to 92.0% and 84.6%, solve the problem that entity influence was not considered in the RippleNet network, and made the recommended results more in line with users’ expectations.


Introduction
The traditional recommendation system method is based on collaborative filtering. That guess their possible common interests through the analysis of users' historical interactive data [1]. But this method has the problems of cold start and sparse matrix. Researchers have proposed many solutions, such as combining knowledge graphs and social networks [2]. They add side information to the matrix. But there are still have some limitations.
There are two recommendation methods based on knowledge graph in recommender systems. They are embedding-based method and path-based method.
Zhang et al. proposed a collaborative knowledge base embedding (CKE) method and combined the collaborative filtering model with embedding [3] in 2016. Wang et al. proposed deep knowledge perception Network (DKN) in 2018. He divided entity embedding and word embedding into two different channels, and designed a CNN model to combine them [4]. Yu et al. proposed the heterogeneous information network method [5] in 2014. Zhao et al. proposed the recommendation method based on meta-graphs [6] in 2017. Both of them represent the relationship between users and items by creating heterogeneous information networks and extracting meta paths or meta graphs based on the potential characteristics of the network. Wang et al. Proposed RippleNet [7] by combining embedding and path based methods. Wang simulated the propagation mode of water ripple and the user preference and got very good results. However, RippleNet does not consider the weight of entities in the limited domain knowledge graph which cannot get the recommendation results of entities with different weights and does not focus on the more important entities. So it reduces the accuracy of recommendation.
Scholars have done many researches on the evaluation of node propagation ability in complex network science. Currently, the commonly used methods are Degree Centrality [8], Betweenness

Node Influence Calculation
A complex network usually contains important nodes. Some important nodes generally affect most of the nodes in the network. Node influence refers to the analysis of all nodes in a complex network and the sorting of influential or important nodes in the network. In different networks, researchers will establish measurement indexes of node influence from different scales, directions and experimental conditions. Trying to find the most influential nodes in the most accurate and rapid way, then sort them [12]. We use the maximum connected subnet as a complex network to calculate the influence of all triple nodes. In this paper, the degree centrality method [8] is used to calculate the node influence of the film knowledge graph network to find the node with greater influence in the film knowledge graph. In degree centrality, the degree value of a node refers to the number of other nodes connecting the node.
Degree centrality is calculated according to the degree value of a single node and the total number of nodes. The greater the degree value is, the greater the degree centrality will be. In the knowledge graph of limited domain, the degree distribution of most networks is power-law distribution. So the degree value of a few nodes is large, while the degree value of a large number of nodes is small. Therefore, we use degree centrality to calculate node influence, which can accurately distinguish nodes with different degree values and calculate their centrality for all entities as their weight information.
Since the network composed of film knowledge graph is a directionless network, the specific calculation formula is as follows: In a directionless network, g is the total number of nodes. i is a single node.
The final result is a scale, ranging from 0 to 1. 0 means it has no relationship to any node and 1 means it has a direct relationship to each node. We calculate the degree centrality of all nodes in the knowledge graph network and add to the entities in the graph. We use dictionary to save, which is marked as C .

RippleNet Model of Joint Complex Network
The RippleNet is a propagation method that simulates water ripples. It takes the user's click history as the seed and uses the seed as the initial point in the limited domain knowledge graph to spread outward round by round. This process is called the user's preference propagation. The model considers that the items in the seed outer ring still belong to the user's potential preference, so it should be considered. The RippleNet model is improved as follows: The degree centrality of head in the current Hop of Ripple set(triple) is obtained by the above experiment and is used as the weight of the head. Then multiply the embedding matrix of the Ripple set with the weight matrix of head to obtain the Ripple set embedding with weight. Finally, user embedding and item embedding are calculated to get the final result with entity weight.
The framework of improved RippleNet is shown in figure 2:  First, we use the user's historical click data u v in the knowledge graph to represent the preferencerelated entities based on the user's historical u v . A set of preference-related entities is created for user u by recursive method, as shown below: These entities can be viewed as extensions of the user's preferences in the knowledge graph based on the historical click u v . After defining the relevant entities, we define the K-hop Ripple set for user u as follows: In each Hop, the degree centrality i C of the head entity in the Ripple set is taken as the weight and multiplied by the embedding matrix i head of the Ripple set to get the weighted i h . As shown below: The correlation probability can be viewed as a measure of  Finally, combined with user embedding and item embedding, the predicted click probability is output:

Data Set
In our experiment, we used the following two data sets for experiments: MovieLens-1M and Book-Crossing are data sets often used in movie recommendation and book recommendation respectively. The movie data set MovieLens-1M contains millions of ratings from real users. Book-Crossing also contains millions of books which are rated by users in the Book Exchange community. This paper uses the knowledge graph constructed for each data set in RippleNet model to conduct experiments. We can get the entity, relationship, and triples of the two data sets in table 1.  6 We will process each data set separately and divide the whole data set into training set, evaluation set and test set. The proportion of data is 6:2:2. Five experiments were carried out for each data set, and the average value was taken as the final result.
3. Valuation Methodology ACC (accuracy) and AUC (area under curve) are used as the evaluation indexes of the experiment. AUC comes from ROC, which is the area of the lower part of the ROC curve. The value of AUC is less than 1. The ROC curve graph is used to judge the advantages and disadvantages of binary classifiers. The horizontal coordinate of the curve graph is FPR (false positive rate) and the vertical coordinate is TPR (true positive rate). These coordinate pairs are connected to form the ROC curve graph. Finally, the area of AUC is calculated to get a value of 0.5 to 1. The larger the AUC, the better the classification effect.

Experimental Results
This paper constructs the knowledge graph of movies and books and uses the subnet extraction algorithm based on set operation to construct the complex network. Part of the triple data of the maximum connected subnet is shown in table 3. For the convenience of use and statistics, entities and relationships are represented by serial numbers. Table 3. Partial data of maximum connected subnet.

Head
Rel Tail  49695  4  73697  36508  9  9892  34029  4  73698  73699  9  73700  6511  1  57474  4159  4  73701  73702 2 2466 By calculating the influence of nodes, we get the degree centrality of each entity in the subnet. The results of degree centrality of some film knowledge graph entities are as follows in table 4:  The results obtained when different parameters are tested. The Cn-RippleNet model performs best when parameters dim=16, lr=0.02, kg_wight=0.02 and both AUC and ACC obtained satisfactory results.
As shown in table 5, compared with other mainstream recommendation models based on knowledge graph, Cn-RippleNet achieves the best performance on both datasets. The reason is that Cn-RippleNet combines path based and embedding based methods. It uses the side information and node influence of knowledge graph and gives weight to the entities in the network which can give better recommendation to the recommendation system and get more accurate recommendation results.
According to the results of table 5, we can find that compared with the performance of CKE, Cn-RippleNet is respectively 12 and 11 percentage points higher in the evaluation index of AUC and ACC. Because CKE combines knowledge graphs with collaborative filtering method. It only makes use of the structural knowledge characteristics of graphs and does not consider the path of graphs.
DKN failed to perform satisfactorily in terms of movie and book recommendations, being increased by 27 percentage points and 25 percentage points respectively by Cn-RippleNet model. Because DKN pays more attention to the text content and requires multiple entities to ensure the accuracy of prediction. For DKN, the entity name of data set is not long enough to provide useful information and the result is more inaccurate.
Cn-RippleNet overcomes this problem by combining path-based method and gaining node influence. Therefore, Cn-RippleNet can also achieve high performance in the case of insufficient data length.
As user-defined meta-paths are hardly the best, PER's performance in film and book adaptations is not satisfactory. While Cn-RippleNet's path combining knowledge graph entities achieves higher performance. In these two data sets, Cn-RippleNet performs better.
In contrast to Ripplenet, the improved Cn-RippleNet in the MovieLens-1M data set was 1 percentage point higher in both AUC and ACC. While the index in the BookCrossing data set was 2 percentage points higher. This shows that the recommendation effect of RippleNet considering the influence of nodes is more accurate. Therefore, this paper believes that the effect of Cn-RippleNet is better after the method of integrating node influence according to the path.
At the same time, it can be seen from figure 3 that the result is the best when the value of Hop is 2 or 3. The result of Hop number on performance is not that the higher value, the better the effect. Shown in figure 4, the result of Dim is also similar to Hop. At Dim 16, the model performance is optimal.

Conclusion
We proposed a RippleNet recommendation model combining the influence of complex network nodes in this paper. We networked the domain knowledge graph and calculated the influence of the entities in the knowledge graph. And integrated into the RippleNet. So that the recommendation result is more in line with people's interest. The problem that the RippleNet does not consider the influence of key nodes on the recommendation result is solved. Thus increasing the recommendation accuracy. Experiments show that the improved RippleNet algorithm by node influence can improve the effect of the recommended algorithm. The next step is that consider the maximum connected subnet of the knowledge graph as a directed network. Then refine the relationships and assign different weights to different relationships. More new node influence algorithms can also be considered.