1 Introduction
With the wide adoption of mobile devices (e.g., smartphones and tablets), the past decade has seen a rapid increase of the mobile gaming industry into a billiondollar market around the globe. $70.3 billion revenue was generated by mobile games in 2018 according to Newzoo’s Global Games Market Report [NewZooReport]. And it is expected that mobile games will generate $106.3 billion revenue in 2021, accounting for more than half of the overall game market. Driven by this increasingly vital market, software and hardware providers of mobile devices (e.g., Apple, Google and Samsung) have provided integrated mobile game platforms and services for end users, game developers and other stakeholders. Some examples of such platforms and services are Apple App Store, Google Play and Samsung Game Launcher [SamsungGameLauncher].
One particularly crucial task, within these mobile game platforms and services, is understanding the churn behavior in mobile games, which usually involves two levels of analysis: the micro level (between an app and a specific user) and the macro level (between an app and all its users). In many traditional business applications [zaki2016fallacy], accurately predicting microlevel churn has been a longstanding and important task, the objective of which is to predict the likelihood that a user will stop using a service or product. In our problem setting, the aim is to predict the likelihood that a user will stop using a particular game app in the future. The task is vital for the following reasons. First, the churn rate of a mobile game is an important business metric to measure its success. With accurately predicted churn probabilities of playergame pairs, a game platform is able to prioritize its resources for better operation and management. Second, predicting individual churn probabilities will enable a game platform to design better marketing strategies to improve user retention. Examples include sending push notifications and providing free items in games to users who are likely to churn. Since, as well known, the acquisition cost for new users is much higher than the retention cost for existing users, successful microlevel churn prediction could largely reduce costs for game developers and platform operators to increase the number of active users, which plays a critical role in the success of a mobile game. Third, the microlevel churn prediction provides direct input to determine the right timing of app recommendations for a game platform. The results of this research will enable testing of the hypothesis that a user is more likely to act on an app recommendation when he/she is about to stop playing other games.
The objective of macrolevel churn ranking is to provide a list of games ranked by their total number of users who will churn in the near future. It is an equally important problem, and its solution can be applicable to various mobile app services such as trend prediction [malmi2014quality], rating and review spam detection, ranking fraud detection [zhu2015popularity], and especially trendsensitive recommendation [cao2017version]. There has been a general consensus that the mobile app market is highly dynamic; new apps continuously enter the market and distract users’ attention from existing ones. A recommender can use the results of macrolevel churn ranking as a prior knowledge, e.g., an attribute in the representation of games. A recommender can also slightly adjust the position of recommended games before delivering to users in preference to those that have smaller total numbers of nearfuture churn, e.g., a postfilter. Macrolevel churn ranking in general can be very challenging because the order of the games on the list (1) can change very fast with the dynamics of the market, and (2) is based on future events, which can only be estimated. The macrolevel churn ranking problem is intimately related to the microlevel churn prediction problem. Consider the extreme case that all microlevel churn predictions are 100% correct, then the number of users to churn in the future can be directly computed.
There have been several previous studies [hadiji2014predicting, runge2014churn, xie2015predicting, perianez2016churn, tamassia2016predicting, drachen2016rapid, xie2016predicting, bertens2017games, viljanen2017measuring, viljanen2017playtime, kim2017churn]
on microlevel mobile game churn prediction by using traditional machine learning models (e.g., logistic regression, random forests, Cox regression). However, we observe several major limitations of these studies. First, they were developed for predicting churn of a single or a few mobile games; none is capable of handling churn prediction of largescale mobile apps and users. For realworld applications, a solution needs to handle tens of thousands of mobile games and hundreds of millions of userapp interactions on a daily basis. Second, userapp interaction data often comes with rich contextual information (e.g., WiFi connection status, screen brightness, and audio volume), which has never been considered in the existing studies. Third, the existing methods rely on handcrafted features that usually cannot scale well in practice.
To overcome all these limitations, we propose a novel inductive semisupervised embedding model that jointly learns the prediction function and the embedding function for usergame interaction. The userapp interaction data includes detailed information of opens, closes, installs and uninstalls of game apps for each individual user. This data is collected from the Samsung Game Launcher platform^{\myfnsymbolmult}^{\myfnsymbolmult}https://www.samsung.com/au/support/mobiledevices/howtousegametools/, which is preloaded in most smartphones manufactured by Samsung. We model the interplay between users and games by an attributed bipartite graph and then learn these two functions by deep neural networks with a unique embedding technique that is able to capture both contextual information and dynamic usergame interaction. Our method is fully automatic and can be easily integrated into existing mobile platforms.
With the predicted microlevel churn probabilities, we devise a simple method SimSum to estimate the macrolevel churn ranking. Under the presupposition that the churn probabilities are properly estimated, we show that SimSum
is based on an unbiased estimation. Furthermore, as the churn behavior may be related among users and games, we propose to construct a usergame graph with edges weighted by the estimated churn probabilities and adapt link analysis algorithms to infer the macrolevel churn ranking of games. Among the family of link analysis algorithms,
PageRank [page1999pagerank] and HITS (HyperlinkInduced Topic Search) [kleinberg1999authoritative] are chosen because they have been widely applied in abundant realworld applications and shown to have stable performance.Contributions. Our research contributions are summarized as follows:

To the best of our knowledge, this paper is the first to develop a solution for both microlevel churn prediction and macrolevel churn ranking of largescale mobile games using hundreds of millions of userapp interaction records. This solution has been tested in Samsung Game Launcher, one of the largest commercial mobile gaming platforms. Although the paper mainly applies the proposed solution to mobile game churn analysis, the solution is also applicable to churn analysis in other contexts.

We propose a novel semisupervised and inductive model based on embedding. Our model can capture the dynamics between users and mobile games based on the introduced temporal loss in the formulated objective function. The model is able to embed new users or games not used in training. This is critical for mobile game churn prediction because new games and users continually enter the market.

We develop an attributed random walk technique that enables us to sample the contexts of edges in an attributed bipartite graph and that takes into account both topological adjacency and attribute similarities.

We propose a simple method SimSum and adapt two link analysis algorithms PageRank and HITS to solve the macrolevel churn ranking problem.

We conduct a comprehensive experimental evaluation with largescale realworld data collected from Samsung Game Launcher. The experimental results demonstrate that our model outperforms all stateoftheart methods with respect to different evaluation metrics for microlevel churn prediction and macrolevel churn ranking.
The rest of the paper is organized as follows. Section 2 formulates the twolevel mobile game churn analysis problem. Section 3 discusses our solution in detail. Section 4 presents our experimental results on largescale realworld data. Section 5 reviews the related literature. Finally, Section 6 concludes our work.
2 Problem Formulation
In the context of mobile games, churn is defined as a player stopping using a game within a given period (i.e., there is no app usage in the period). The duration of the period may vary from application to application depending on different business goals. days and days are some typical settings used in industry [hadiji2014predicting, runge2014churn, drachen2016rapid]. In this paper, we consider the generic microlevel game churn prediction and macrolevel churn ranking problems without assuming any particular value of . We note that uninstall is different from churn. Regarding only uninstall as churn would be problematic since there may be a large time gap between cessation of playing and uninstall, if any.
Notations  Descriptions or Definitions 

Attributed graph at time  
Historical attributed graphs  
Set of all player nodes in  
Set of all game nodes in  
Set of all edges in  
Indicator of the existence of edge in  
Feature vector of user 

Feature vector of game  
Aggregated feature vector of edge  
,  Numbers of attributes in and , resp. 
Number of attributes in  
Embedding dimension  
Edge embedding function  
Churn prediction function  
Number of embedding hidden layers in Part I  
Number of prediction hidden layers in Part III  
Cardinality of a set  
Set of elements in but not in  
Indicator function for condition  
Ranking score of game at time 
The relationship between players and games can be represented by an attributed bipartite graph as illustrated in Fig.1, whose two parts correspond to players and games. In the sequel, we use the terms player and user, and game and app interchangeably. Let be the attributed bipartite graph at time , the vertex set denote the set of users and the vertex set denote the set of games. A player is represented by a node and a game is represented by a node . Each user is associated with a feature vector , where is the size of ; each game is associated with a feature vector , where is the size of . There is an edge between nodes and in if player has played in the time window . The set of neighbor nodes that connect to game at time is denoted by . The set of edges at time is denoted by .
Now we are ready to define the twolevel mobile game churn analysis problem below.
Definition 2.1 (Mobile game churn analysis)
Consider a collection of attributed bipartite graphs observed from time to time (), which is denoted by . Let be the number of neighbors of game at time and be the indicator of the existence of edge in . The dual objectives are:

Microlevel churn prediction that estimates the probability for an edge in , which is the probability that disappears in ;

Macrolevel churn ranking that ranks the games in a descending order of the total number of users to churn at time .
The notations used in this paper and their descriptions are listed in Table 1.
3 Methods
3.1 Overview of Our Solution
Most existing works [hadiji2014predicting, runge2014churn, xie2015predicting, perianez2016churn, tamassia2016predicting, drachen2016rapid, xie2016predicting, bertens2017games, viljanen2017measuring, viljanen2017playtime, kim2017churn] rely on traditional machine learning models to solve the microlevel churn prediction problem, which suffer from several major limitations as mentioned in Section 1. In view of the recent progress in graph embedding, a promising way is to adopt graph embedding frameworks for churn prediction. However, we face several key technical challenges that have not been addressed in prior studies: (1) Most existing methods are transductive, and thus cannot produce embeddings for new playergame pairs. (2) Existing methods are either purely supervised or unsupervised, and thus do not take full advantage of relevance between embedding and a task. (3) Existing methods are nodecentric, and thus are not directly applicable to edgecentric tasks. (4) Existing methods mainly handle a static graph and do not incorporate graph dynamics in embedding. In the mobile game industry, players and games, however, change very quickly. There are many new players, new games, and new playergame relationships almost every day.
In addressing these challenges, we propose a novel inductive semisupervised embedding model in dynamic graphs that jointly learns the prediction function and the embedding function . The prediction function and the embedding function are learned by deep neural networks (DNN). The architecture of the proposed DNN is presented in Fig. 2, which consists of three parts. Part I is responsible for producing embedding feature vectors from raw edge feature vectors , where is the size of raw edge feature vectors. To learn the probability of churn, we need to construct a feature vector for each with . However, it is impractical to calculate features for all possible edges that may appear in the prediction period because the number of possible edges is huge, which is . Instead, we construct the feature vector of
from attributewise cosine similarity aggregation of
and . As such, all can be readily computed from the features of nodes, where denotes the cardinality of a set.Part II is for inferring contexts from embedding feature vectors. Here the context of an edge refers to the edges that are similar to and cooccur with the edge under some graph sampling strategy, for example, random walk. Part I and Part II form the unsupervised component of our model. They are jointly trained by minimizing the error of incorrect context inference and inconsistency with temporal smoothness (see Section 3.3 for an explanation of temporal smoothness). Part I and Part II are trained in an inductive and edgecentric way. In contrast to transductive node embedding that learns a distinct embedding vector for each node, our model is to learn an embedding function that is generalized to any unseen edges as long as their feature vectors are available. We propose a novel attributed random walk to sample similar edges as contexts (see Section 3.4 for details).
Part III fulfills the supervised churn prediction task from embedding feature vectors. Part III forms the supervised component of the proposed model, which is trained by minimizing the error of incorrect churn predictions. The supervised component and unsupervised component are simultaneously trained as combined into a single objective function. Traditional unsupervised embedding techniques are not designed in a taskspecific way and hence are not able to incorporate taskspecific information to improve performance. In contrast, in our model Part III and Part II share the common hidden layers in Part I, and therefore they are implicitly coupled with each other. This helps the embedding align with the supervised prediction task.
Part I and Part III both consider graph dynamics in training. Part I handles graph dynamics by requiring the embeddings of the same edge at two consecutive timestamps to stay close. Part III handles graph dynamics by requiring the churn probabilities of the same edge at two consecutive timestamps to follow a decaying pattern.
The overall objective function of our model consists of four parts:
(1) 
denotes the supervised loss due to incorrect predictions and will be discussed in Section 3.2.1. denotes the unsupervised loss, which comes from failures of context inference and will be addressed in Section 3.2.2. is the temporal loss that consists of two parts: temporal smoothness and temporal dynamics, and will be explained in Section 3.3. presented in Section 3.2.3 is the regularization term, and (, , ) are tradeoff weights.
After the prediction function and embedding function
are learned through minimizing the loss function in Equation (
1), the churn probability of any individual usergame pair can be estimated by . Under the assumption that the microlevel churn probability is properly estimated, we are able to show that for a specific game , the sum of its churn probabilities of all its users is an unbiased estimator of the ground truth . This inspires us to derive a simple solution for macrolevel churn ranking: first estimate the total number of churns for any game by summing all its users’ churn probabilities and then rank all games based on the estimations. This method is referred to as SimSum. Furthermore, we observe that there may be correlations in the churn behavior between different games and different users. For instance, for the same user, the probability of his/her churning a game is likely to be influenced by the probability of churning other games. On the other hand, similar users may exhibit similar patterns of churning the same game. Therefore, we propose to construct a usergame graph with edges weighted by the estimated churn probabilities and adapt link analysis algorithms to estimate macrolevel churn ranking. Specifically, PageRank [page1999pagerank] and HITS [kleinberg1999authoritative] are chosen due to their wide applications and stable performance. Details will be discussed in Section 3.5.3.2 Static Loss Functions
3.2.1 Supervised Loss Function
The supervised loss function is designed for Part III. Let be the th hidden layer for churn prediction (referred to as prediction hidden layer in the sequel), where and are the weights and biases in the th prediction hidden layer, and
is a nonlinear activation function. We model the churn prediction function
by such layers in Part III. Then the prediction output layer can be represented by:(2)  
where is the estimate of ,
is the sigmoid function, and
is the sigmoid weights vector that combines the output from the last hidden layer to predict churn. Now we can define the supervised loss as follows:(3) 
where is the number of training examples and is a censoring indicator that will be discussed in Section 3.3.
3.2.2 Unsupervised Loss Function
The unsupervised loss function is devised for Part II, which guides to embed the handcrafted features into a latent space , where is the size of the latent space. Denote the th hidden layer for embedding (referred to as embedding hidden layer in the sequel) by , where and are the weights and biases in the th embedding hidden layer. We use the layers in Part I to represent the embedding function , and the embedding output layer can be represented by:
(4) 
We can define the unsupervised loss function as follows:
(5) 
where denotes the context (i.e., contextual edges) of in . The contextual edges are obtained by attributed random walk on the bipartite graph, which will be discussed in Section 3.4.
The likelihood of having a contextual edge of conditional on the embedding of is:
(6) 
where and are the vectors of weights for edges and
in the softmax layer, respectively. The denominator is computed by negative sampling
[liang2017seano]. Although the embedding function is learned by training a context inference task, it is still considered as “unsupervised” because the contexts are calculated by sampling on the attributed graph, which is independent of any supervised learning task [yang2016revisiting].The objective function in Equation (1) contains both the supervised loss function and the unsupervised loss function. Thus the embedding hidden layers are jointly trained with prediction hidden layers. Compared to traditional embedding methods, the semisupervised approach makes the embedding more suitable for the prediction task.
Note that the target of the embedding process is to learn a mapping function from the feature space to the embedding space, instead of directly learning the embeddings. Thus, the input for the embedding hidden layers only contains attributes. A new edge can be embedded for churn prediction as long as we can observe its attributes. This indicates that the proposed approach is inductive. It is able to produce the embedding for an edge that is not used in training.
3.2.3 Regularization Loss
Regularization loss is introduced mainly to avoid overfitting. The weights for regularization consists of . Therefore the regularization part can be expressed as:
(7)  
where are tradeoff weights on different regularization terms.
3.3 Temporal Loss Function
Temporal loss refers to the loss related to graph dynamics. Different from existing works [liang2017seano, yang2016revisiting, hamilton2017inductive], the proposed embedding model takes into account graph dynamics. Understanding the temporal dynamics of attributed bipartite graphs is crucial to precisely model the churn behavior. We make several key observations of the temporal dynamics, which help to achieve good prediction performance in practical settings.
For a given usergame play relationship, the longer the relationship exists, the more likely the user is to churn the game.
This is because the content of a mobile game is usually somewhat fixed. Players can easily lose interests after going through all contents and passing all levels in the game, let alone many players churn before passing all levels. With more days of play, their initial interests in the game are gradually effacing. Indeed, of all mobile app users churn within 90 days [AppChurn]. The churn rate of mobile games is even higher. We plot the average retention rate of mobile games as a function of time, based on Game Launcher data in Fig. 3. It shows that 95% of usergame play relationships end after 40 days, which well justifies our observation. We formally state Observation 3.3 below.
(8) 
where and represents “almost always smaller than”. We refer to this observation as temporal dynamics in the following discussion.
The second observation we make is stated in Observation 3. For a given usergame play relationship denoted by an edge in the attributed bipartite graph, its context usually evolves slowly at two consecutive timestamps.
This observation is also derived from the realworld data. Due to space limitation, we omit the figure here. It follows that the topology and attribute values of the attributed bipartite graph mostly evolve smoothly at two consecutive timestamps, resulting in similar contexts for a given edge at consecutive timestamps. Therefore, its embeddings at these two timestamps should also be close, that is,
(9) 
where represents “almost always equal to”. We refer to this observation as temporal smoothness in the later discussion.
The final observation is: By definition, churn in nature introduces right censoring to the training dataset. The problem of right censoring has been widely studied [wu1988estimation] and is illustrated in Fig. 4. The observation period refers to some time duration in history. Suppose we are at time and the observation period is from time to time . Data for training and testing all comes from the observation period. Since the label of a playergame pair at a specific timestamp is determined by their interaction in the next time duration, the labels of some playergame pairs in the last duration could be unknown. For instance, the last observation of the pair of player 2 and game 1 (denoted by p2g1) was in the last time duration, and therefore the labels after that time are unknown. This is known as right censoring. In contrast, the pair p3g3 has play records every day in the last days, and it is not censored during the observation period.
Considering the existence of censored instances, we introduce a binary indicator to indicate whether an edge is censored at timestamp . if is censored; otherwise. Then Inequality～(8) needs to be updated by
(10)  
where denotes the timestamp when the edge was observed, i.e., . The update reflects the fact that after timestamp the label of becomes unknown. Since the existence of edge after is unknown, it is more reasonable to just require that Inequality (10) holds pairwise between time point and all time points after . Therefore the temporal loss can be expressed as:
(11)  
where denotes the indicator function for event and . The first term corresponds to the temporal smoothness and the second term corresponds to the temporal dynamics. Taking Equations (2) and (4) into Equation (11), we have the temporal loss as follows.
(12)  
3.4 Context Generation by Attributed Random Walk
All above discussion assumes the availability of contexts of edges. There have been a series of nodecentric research on graph embedding proposing to apply random walk to sample contexts [grover2016node2vec]. These methods are normally topologybased. In our problem setting, our goal is to embed an edge, not a node. In this case, a simple topologybased random walk may return two adjacent edges having the same player or the same game while totally ignoring the similarity of the other end. This is undesirable. In contrast, attributed random walk measures such similarity by attributes and allows to transit to similar nodes even if they are not connected.
To this end, we propose a novel attributed random walk technique that takes into account both topological adjacency and attribute similarities to make the transition decision of the walk. Fig. 5 gives an illustrative example of attributed random walk in an attributed bipartite graph. For clarity, we omit the time index in the following discussion. The solid line indicates that there exists an edge in the attributed bipartite graph. We denote the type of node by . A node’s type can be of value either player or game. The dashed directed lines do not exist in the original attributed graph but may be considered as transitions by our attributed random walk due to attribute similarities.
It is timeconsuming to calculate pairwise similarities between a node and all other nodes with the same type. For this reason, we add augmented edges for a proportion of the sametype nodes. For example, the augmented edges of node are , where is a filtering parameter and:
(13) 
The dashed undirected lines in Fig. 5 represent the added augmented edges between the nodes and their similar sametyped nodes.
Consider a random walker that just traversed edge in Fig. 5 and now resides at node . Now the walker needs to decide which node to transit to. Since attribute similarities matter in this walk, the walker cannot just evaluate those nodes that are neighbors of as suggested in [grover2016node2vec]. The walker needs to evaluate all nodes of the same type within the twohop neighborhood of . We denote the onehop sametyped adjacent nodes of by , where is the length of shortest path between and . For example, (due to the augmented edge between and ). Similarly, we denote the set of twohop sametyped neighbor nodes of by . Then the transition probability in attributed random walk can be calculated as follows:
(14) 
where and are normalization constants used to control the walk strategy. Recall that if there is an edge between and . The attributed walk in an attributed bipartite graph walks through different types of nodes repeatedly. It enlarges the probability of making any two consecutive edges in a path similar, and thus the probability of making the whole set of edges in the attributed random walk path similar. As an example, suppose we are at from as shown in Fig. 5. Since and are highly similar, the walker may transit to and produce a path with edges and although is not connected to in the bipartite graph.
Our proposed method shares some similarities with the idea of [ahmed2017framework]. However, in their work attribute similarities have no influence on which nodes a walker goes through. In our proposed method, when choosing the next node to visit, there is a nonzero probability to choose those that are not connected to the present node but share similar attributes to the previous node. For those that are connected to the present node, the probability to choose from them is weighted by the similarity between the descendant and the ancestor nodes. In this way, an edge can be the context of another even when they are not adjacent but similar in both ends.
3.5 MacroLevel Churn Ranking
The objective of macrolevel churn ranking is to provide a ranked list of games based on their total numbers of users to churn in the near future. The ground truth of the number for game is . Let denote the score of ranking for game , where a larger means a higher position. One solution is to first estimate the total number of users to churn as the score for a game and then rank all games based on the estimations. After the prediction function and the embedding function are learned, the churn probability of any individual usergame pair can be estimated by . We sum up the churn probabilities across all users of game and consider the sum as the estimation of the total number of users to churn:
(15) 
where the subscript “ss” marks that the score is computed by the SimSum method.
Now we show that SimSum provides an unbiased estimation of the ground truth under the assumption that the microlevel churn probability is properly estimated. This is because we have:
and , then
(16)  
Since the right hand side of Equation 16 is , we complete the proof.
Furthermore, we observe that there may exist correlation of the churn behavior between different games and users. As such, we employ link analysis algorithms, which are able to take into consideration the global information and mutual reinforcing effects among different games and users, for inferring the macrolevel churn of games. In particular, we choose PageRank [page1999pagerank] and HITS [kleinberg1999authoritative] algorithms due to their wide application and stable performance. To apply both algorithms, we first construct a usergame relation graph , where and are copied from the attributed graph and is an adjacency matrix with the element at th row and th column satisfying
(17) 
This relation graph will be the input of both algorithms. The ranking scores computed by PageRank and HITS are referred to as and , respectively.
The procedures to compute is given in Algorithm 1. The algorithm assigns a larger ranking score to a game if the game has more abouttochurn players with larger scores. Moreover, the score will be propagated along with a damping factor from one game to another game. The algorithm handles different players differently for a specific game. In the algorithm, players with distinct propensities of churn contribute differently to the computation of the game’s ranking score. Considering that is a bipartite graph, in each iteration, the algorithm computes a game’s ranking score by summing up its players’ scores. The sum is weighted by the churn probabilities, where the players with larger churn probabilities are more likely to contribute greater proportions to the game’s ranking score. Meanwhile, this preponderance is normalized by the total number of games the player is playing. The intuition is that the algorithm reduces the proportion if the player is more probable to churn other games at this time point as a player is rarely observed to churn all games at a single time point in experiments. In this way, the correlation between game churn for a specific player is addressed.
The procedures to compute is presented in Algorithm 2. The algorithm uses the final authority score as the ranking score for game . Since the graph is a bipartite graph composed of players and games, a larger authority score is assigned to a game if the game has more players with large hub scores. Similarly, a player has a large hub score when the player is playing many games with large authority scores. In other words, the hub score for a player in some sense describes the chance that a churn will happen with the player. And the authority score of a game to some extent captures the number of its players with high churn propensity. Meanwhile, for a specific game, the algorithm handles different players differently, and for a specific player, different games contribute different proportions. This is reflected by Lines of Algorithm 2, where the computation of the authority score and the hub score are weighted by the estimated probability of churn.
4 Experimental Evaluation
In this section, we conduct a comprehensive experimental evaluation over the largescale real data collected from the Samsung Game Launcher platform. We compare our semisupervised model (referred to as SS in the sequel) with the following stateoftheart models for mobile game churn prediction:

LR: the logistic regression based solution used in [kim2017churn, xie2016predicting, xie2015predicting]

RS: the supervised variant of our model, in which the loss function contains only the supervised component and the regularization term

DT
: a decision tree based solution

RF: the random forests based solution used in [kim2017churn, xie2015predicting]

SVM: the SVM based solution used in [xie2016predicting, xie2015predicting].
In the experiments, we consider the churn duration , but again the proposed solution is not restricted to any particular choice of .
4.1 Dataset and Feature/Label Construction
Two anonymous datasets were collected independently from the Samsung Game Launcher platform within a 4month period (from August 1st, 2017 to November 30th, 2017) with users’ consent, one from the users in USA and the other from the users in Korea. We summarize the key statistics of these two datasets in Table 2.
Dataset  # of users  # of games  # of play records 

USA  15,000  19,705  76,468,301 
Korea  25,000  18,470  106,544,313 
The collected data contains three major types of information: (1) play history, (2) game profiles, and (3) user information. Each play record in the play history contains the anonymous user id, the game package name, and the timestamp of play. It is also accompanied with rich contextual information, such as WiFi connection status, screen brightness, audio volume, etc. Game profiles are collected from different game stores, which include features like genre, developer, number of downloads, rating values, number of ratings, etc. User information contains the device model, region, OS version, etc. However, data within games (e.g., levels) is not available due to privacy concerns.
Features and labels need to be generated with care in order to avoid data leakage. In general, labels and features are taken from disjoint periods to avoid data leakage. The semisupervised model is trained based on features and labels within the observation period. Labels are whether a player churns a game on that day. Features are constructed from historical data before the day to be predicted. The training set and test set are split by label days in chronological order [chamberlain2017customer], for example, taking the labeled data in the first 2/3 of the observation period as the training set and the remaining 1/3 as the test set. This is also to ensure that there is a time difference between the test set and the training set. The semisupervised model along with the SimSum, PageRank and HITS methods are evaluated on the test datasets.
4.2 Experimental Settings
We tune the hyperparameters, including learning rate, batch size, regularization terms, number of layers and number of neurons per layer, based on the model performance on the test datasets. To determine the parameters for microlevel churn prediction, we follow what we did in our previous work
[liu2018semi]. A grid search on these parameters is performed and the combination yielding the best performance is chosen. The regularization parameters are all set to be 1. , , and in Equation (1) are chosen to be 0.02, 0.01, 1e5, respectively. , , and discussed in Section 3.4 are set to be 1, 1, and 0.05, respectively. The parameters used for training the deep neural network are summarized below. The maximal number of iterations for the PageRank and HITS methods is set to be . The damping factor for PageRank is set to be . We summarize the parameter settings of the two datasets below.Parameter settings of the USA dataset:

Player feature dimension: 10,042

Game feature dimension: 10,042

Playergame feature dimension: 30

Learning rate: the initial value is 0.017 and decay by , where
is the number of epochs

Number of neurons: input layers 30, embedding layers 50, output layers 380K

Number of epochs: 68

Batch size: 1,024

Context number per usergame pair: 4

Optimizer: Adam method [kingma2014adam]

Activation function: rectified linear unit (ReLU)
Parameter settings of the Korea dataset:

Player feature dimension: 10,042

Game feature dimension: 10,042

Playergame feature dimension: 30

Learning rate: the initial value is 0.019 and decay by , where is the number of epochs

Number of neurons: input layers 30, embedding layers 50, output layers 632K

Number of epochs: 812

Batch size: 4,096

Context number per usergame pair: 4

Optimizer: Adam method [kingma2014adam]

Activation function: rectified linear unit (ReLU)
Model  AUC  Recall  Precision 

SS  0.82  0.78  0.32 
RS  0.77  0.75  0.27 
LR  0.66  0.38  0.26 
DT  0.59  0.28  0.32 
RF  0.75  0.31  0.41 
SVM  0.61  0.78  0.18 
Model  AUC  Recall  Precision 

SS  0.82  0.70  0.34 
RS  0.76  0.70  0.25 
LR  0.67  0.59  0.21 
DT  0.58  0.26  0.30 
RF  0.73  0.27  0.42 
SVM  0.63  0.67  0.18 
4.3 Experimental Results
4.3.1 MicroLevel Churn Prediction
We use three widelyused evaluation metrics to compare the performance of different microlevel churn prediction models. The most important metric with respect to the business goals is the area under the ROC curve (AUC). Following previous studies [kim2017churn, xie2016predicting, xie2015predicting], we also consider precision and recall. Accuracy is not used because our data is imbalanced with around negative instances in the USA dataset and negative instances in the Korea dataset.
We report the main experimental results in Table 3 and Table 4. It can be observed that in general our model achieves the best AUC and recall on both datasets. Our model outperforms all single models (i.e., LR, DT and SVM) in terms of all the three metrics. In particular, it is worth mentioning that SVM achieves a high recall at the cost of a very low precision. This is because it makes a large number of false positives. This fact makes it less useful for business decision making. Compared with the ensemble method RF, which has been considered so far the best method in the field, our model still achieves AUC improvement and recall improvement. RF achieves the highest precision on the datasets. However, we point out that this number is actually misleading because it can easily overfit and only recognize a small proportion of churn labels. This is partially evidenced by its poor recall, which makes it difficult to meet business requirements of churn prediction (e.g., targeted promotion campaigns). We also carefully compare the AUC of SS in training and testing in Fig. 6. Since the curves are very close, it can be learned that our model is neither overfitting nor underfitting.
The performance difference between SS and RS justifies the benefits of incorporating unsupervised loss and temporal loss in the objective function. We provide a further comparison between SS and RS with respect to the number of epochs in Fig. 7. Both models take 57 epochs to reach relatively stable performance. We observe that SS outperforms RS in general under different numbers of epochs and for both Korean users and USA users.
Since the architecture of our DNN is novel and unique (e.g., contain both supervised outputs and unsupervised outputs), we expose more details on how we choose the parameters and train the model. A comparison of AUC in training under different learning rates is given in Fig. 8. It can be observed that the choice of the learning rate greatly influences the model performance after the initial epoch. We experimentally find that is too large for the learning rate, which makes the step in gradient descent too large to find a good minimum and that is too small, making it converge very slowly to the optimal point. Therefore we experimentally test learning rates between and and find that works best for training on USA while works best for training on Korea.
For the supervised and unsupervised components, we try two different training methods: cotrain and alternative train. Cotrain means that we simultaneously train the supervised loss function and the unsupervised loss function; alternative train means that we alternately train the unsupervised component with the unsupervised loss function and the supervised component with the supervised loss function. Alternative train is a widelyused training method for similar structures [yang2016revisiting, liang2017seano]. It is interesting to observe that, however, cotrain outperforms alternative train in terms of AUC under different numbers of epochs as shown in Fig. 9. Therefore, we choose cotrain as the final training method in our experiments.
4.3.2 MacroLevel Churn Ranking
We use five widelyused evaluation metrics to compare the performance of different macrolevel churn ranking methods based on different microlevel churn prediction methods, including Kendall’s Tau correlation coefficient, weighted Kendall’s Tau correlation coefficient, Spearman correlation coefficient, Average Precision at K and Mean Average Precision (MAP).
In statistics, the Kendall’s Tau coefficient, also known as Kendall rank correlation coefficient, the weighted Kendall’s tau coefficient and the Spearman coefficient are all measures of rank correlation: the similarity of two orderings on the same data. For instance, Kendall’s Tau coefficient [kendall1945treatment] is defined as:
where is the number of concordant pairs in two orderings, is the number of discordant pairs, and is the number of elements in the ranked list. In our problem setting, one ordering is obtained by ranking the games based on one of ranking scores, namely , , or , and the other ordering is obtained by ranking the games based on the ground truth . The weighted Kendall’s Tau is a weighted version of Kendall’s Tau, in which tiebreaking exchanges of high ranking are more influential than exchanges of low rankings, e.g., in [vigna2015weighted] an exchange to break the ties between elements with rank and has weight . Spearman coefficient, on the other hand, quantifies how well the relationship between two ranked lists can be described using a monotonic function. Unlike Pearson correlation that can only assess linear relationships, Spearman correlation considers both linear and nonlinear monotonic relationships. The range of all three evaluation metrics is between and . Having a value closer to indicates that the ranking of the games is more similar to that based on the ground truth.
Since macrolevel churn ranking is based on the results of microlevel churn prediction, we compare the performance of different combinations between the two parts. Each combination is referred to in the “macromicro” format. For example, SimSumSS represents the combination of using SimSum as the macrolevel churn ranking method and our semisupervised method as the microlevel churn prediction model. Fig. 10, Fig. 11, and Fig. 12 present the performance of different combinations in terms of Kendall’s Tau, weighted Kendall’s Tau and Spearman coefficients, respectively. Each performance metric is experimentally evaluated on the same test datasets described in Section 4.1. Since microlevel churn prediction is performed daily, macrolevel churn ranking is also calculated every day. The performance reported in the figures is the average over the testing period. As the ranked list of games can be as long as , we only report the performance on the top games where the maximal value is set to 500. It can be observed that in most cases the macrolevel churn ranking methods in combination with our semisupervised method outperform those in combination with different baselines (i.e., LR, DT), especially when the value of is small. This is because the SS achieves better performance in churn prediction than other baselines. This indicates that the quality of the churn prediction results is important for subsequent churn ranking, which takes the predicted churn probabilities as inputs. Moreover, we find that based on the Kendall’s Tau, Weighted Kendall’s Tau and Spearman coefficient, the performance of HITS is more sensitive to the quality of churn prediction results. This may be because in the iteration, HITS
normalizes the scores over the sum of scores across all nodes, which can be large and lead to a skewed score distribution. In contrast,
SimSum and PageRank normalize the scores based on only the scores of neighbors, which is more robust.We also evaluate the performance of different churn ranking methods by two widelyadopted metrics in the recommendation domain: Average Precision at and Mean Average Precision (MAP). Precision at corresponds to the percentage of relevant results in the top games of the ranked list. A game at position in the ranked list based on our ranking scores, is considered relevant if it is in the top games of the ranked list based on the ground truth. The comparison is reported in Fig. 13. Similarly, the scores reported are the average of all days in the testing period. In Fig. 13, we observe similar patterns to those observed under the previous statistic metrics. In most cases, different macrolevel churn ranking methods in combination with the proposed semisupervised mode SS achieve better performance than the combinations with other baseline. This again indicates the importance of the positive interaction between microlevel churn prediction and macrolevel churn ranking. One shortcoming of this metric is that it fails to take into account the positions of relevant games. To overcome this limitation, we further adopt Mean Average Precision [zhu2004recall], in which the relevance score is weighted by the position before being averaged. We report the comparison of the methods in terms of MAP in Table 5. Similar conclusions can be drawn from the results based on MAP. It is interesting to note that after putting larger weights on relevant games with higher ranking, the difference of HITS between other two methods in the sensitivity to churn prediction quality is reduced.
AreaModel  SimSum  HITS  PageRank 

KoreaSS  0.41  0.40  0.40 
KoreaLR  0.40  0.39  0.39 
KoreaDT  0.40  0.40  0.39 
USASS  0.41  0.40  0.38 
USALR  0.38  0.38  0.37 
USADT  0.38  0.38  0.38 
5 Related Work
In this section, we review two categories of existing works that are relevant to this paper. The first category includes the existing works for (game) churn analysis. The early works [hadiji2014predicting, xie2015predicting, runge2014churn, tamassia2016predicting, xie2016predicting, drachen2016rapid]
are based on more traditional machine learning models, such as logistic regression, random forests, SVM, naive Bayes, etc., and are experimentally evaluated on extremely small numbers of games (i.e., less than five). As shown in our experiments, their performance on largescale real data with tens of thousands of mobile games and hundred of millions of userapp interactions is generally not satisfactory. In addition, we also observe scalability issues when they are applied to largescale data. Some recent research has started to use more advanced models.
[perianez2016churn, bertens2017games, viljanen2017playtime] propose to use survival model for churn prediction, in which churn probability is modeled as a function of playtime. Kim et al. [kim2017churn]achieve good performance by using convolution neural networks (CNN) and long shortterm memory networks (LSTM). There are also several recent deeplearningbased studies
[wangperawong2016churn, umayaparvathi2017automated, martins2017predicting] for nongame churn prediction problems, which report better performance. This motivates us to employ deep neural network models. While being a generic solution, our model is able to accommodate the unique characteristics of mobile gaming. We provide a comparison between all existing works and ours in Table 6. Much of the research relevant to macrolevel churn ranking pays particular attention to popularity prediction, the opposite of churn ranking problem. However, they solve the problem from scratch and thus require efforts on feature engineering [malmi2014quality] or a complex model [zhu2015popularity]. In contrast, we propose to reuse the estimated churn probabilities of the microlevel churn prediction task to reduce the overhead.Paper  Data size  Key techniques 

[hadiji2014predicting] 
5 games
50 thousand users 
Decision tree, naive Bayes 
[runge2014churn] 
2 games
10 thousand users 
Hidden Markov Model combined with a single layer neural network 
[perianez2016churn, bertens2017games] 
1 game
3 thousand users 
Survival ensembles 
[viljanen2017playtime] 
1 game
1 thousand users 
Survival model 
[tamassia2016predicting] 
1 game
10 thousand users 
Hidden Markov Model 
[xie2015predicting] 
2 games
1 thousand users 
SVM, decision tree, logistic regression 
[drachen2016rapid] 
1 game
130 thousand users 
Heuristic decision tree 
[xie2016predicting] 
3 games
60 thousand users 
Logistic regression, decision tree, SVM 
[kim2017churn] 
3 games
200 thousand users 
Logistic regression, random forests, CNN, LSTM 
Ours 
40,000 games
40 thousand users 
Deep attributed edge embedding 
The second category contains recent works on graph embedding. Graph embedding automates the entire process of feature engineering by casting feature extraction as a representation learning problem. It frees models from human bottleneck introduced by handcrafted features and is able to utilize the full richness of data. However, most existing works such as Node2Vec
[grover2016node2vec], Deep Walk [perozzi2014deepwalk] and LINE [tang2015line] are nodecentric embedding. When it comes to game churn prediction, the entities to be embedded are edges that represent the relationship between players and games. Very limited work has studied edge embedding. AbuElHaija et al. [abu2017learning] propose to model edge embedding as a function of node embedding, in which the two ends of an edge are first embedded and then passed into a deep neural network with edge embedding as output. This method embeds edges in an indirect way and does not take into account any attribute information. In addition, these models [grover2016node2vec, perozzi2014deepwalk, tang2015line] all belong to the transductive framework, in which embedding cannot be generated if an object has never appeared in training. However, in our problem new users and new games appear continuously; new relationships between existing users and games may form anytime in the future. Therefore, for game churn prediction the capability of handling new edges is indispensable.Several very recent works have proposed the idea of inductive graph embedding [liang2017seano, hamilton2017inductive, yang2016revisiting, liu2018streaming], inspired by which we propose our inductive edge embedding model for microlevel churn prediction. Our model improves these works in several major ways. First, our embedded features are learned in a semisupervised manner, where the supervised component is for churn prediction while the unsupervised component is for context recovery. Compared to unsupervised methods, embedding features learned in a semisupervised way have been shown to achieve better performance [yang2016revisiting]. Second, our model captures graph dynamics by imposing temporal loss to the embeddings of the same edge in consecutive graph snapshots. Unlike all existing works, where embeddings represent structures or attribute information, embeddings in our model are designed to simultaneously capture contexts and graph dynamics. To our best knowledge, our model is the first to achieve such benefits.
6 Conclusion
Churn analysis of mobile games is a vital research and business problem that is backed up by a billiondollar market. In this paper, we consider two important aspects of churn analysis of mobile games: microlevel churn prediction and macrolevel churn ranking. We proposed a novel inductive semisupervised embedding model for largescale microlevel game churn prediction. It jointly learns a prediction function and an edge embedding function that can automatically map highdimensional raw feature vectors to more informative latent feature vectors. We modeled the prediction function and the embedding function by deep neural networks, where the embedding component is designed to capture both contextual information and relationship dynamics. The contexts of an edge are sampled by a novel attributed random walk technique, which considers both topological adjacency and attribute similarities. To solve the macrolevel churn ranking problem without much overhead, we proposed a simple method SimSum based on the outputs of the microlevel churn prediction model and adapted the link analysis algorithms PageRank and HITS to further take into consideration the global information and mutual reinforcing effects among different games and users. We compared our approaches with several stateoftheart baseline methods on largescale realworld data collected from the Samsung Game Launcher platform. The extensive experimental results clearly demonstrate the effectiveness of our proposed solutions.
Although the paper focuses on mobile game churn analysis, the proposed methods are not restricted to this specific problem and also work for more general problems. Since the inputs of our model only contain the attributes of objects and their relationships at different timestamps, the proposed model can be generalized to fulfill any churn analysis task where the underlying data can be modeled in a similar way, for instance, customer disengagement prediction in membership business (e.g., Apple Music, Costco, and insurance companies) and interest group unsubscription prediction in social networks (e.g., Facebook, Meetup, and Google+).
Acknowledgements.
TBAAuthor Biographies
Xi Liu
is a Computer Engineering PhD candidate at Texas A&M University. His research interests include graph representation learning, deep reinforcement learning and their application in recommender and data mining.
Muhe Xie
received his M.S. degree in data science from New York University. He is currently a software engineer at Samsung Research America. His research interests include machine learning and deep learning. He published paper in ICDM.
Xidao Wen is a Ph.D candidate at PITT Computational Social Science Lab (Picso), from the School of Computing and Information, University of Pittsburgh. His research interests include data mining, machine learning and Information Visualization.
Rui Chen received the Ph.D. degree in Computer Science from Concordia University. He is currently the Head of Data Science at Samsung Research America, leading the R&D of productionscale machine/deep learning solutions for multiple Samsung services. Before that, he was a Research Assistant Professor in the Department of Computer Science at Hong Kong Baptist University and a Postdoctoral Fellow at the University of British Columbia. His research interests include machine learning, data privacy and databases. He has published more than 40 technical papers in top venues, including CSUR, VLDBJ, PVLDB, IEEE TKDE, IEEE TDSC, ACM KDD, ACM CCS and IEEE ICDE, and won CIKM 2015 Best Paper Runner Up, the Best Papers of ICDE 2016 and the Best Papers of ICDM 2018. He has served as program committee member for leading conferences, including ACM KDD, IEEE ICDM, ACM CIKM, PAKDD and DASFAA, and as reviewer for numerous flagship journals, including VLDBJ, PVLDB, IEEE TKDE, IEEE TDSC, IEEE TIFS, IEEE TOPS, ACM TOS and IEEE TSC.
Yong Ge received his Ph.D. in Information Technology from Rutgers, The State University of New Jersey in 2013, the M.S. degree in Signal and Information Processing from the University of Science and Technology of China (USTC) in 2008, and the B.E. degree in Information Engineering from Xi’an Jiao Tong University in 2005. He is currently an Assistant Professor at University of Arizona. His research interests include data mining and business analytics. He received the ICDM2011 Best Research Paper Award, Excellence in Academic Research (one per school) at Rutgers Business School in 2013, and the Dissertation Fellowship at Rutgers University in 2012. He has published prolifically in refereed journals and conference proceedings, such as IEEE TKDE, ACM TOIS, ACM TKDD, ACM TIST, ACM SIGKDD, SIAM SDM, IEEE ICDM, and ACM RecSys. He has served as Program Committee members at premier conferences such as ACM SIGKDD conferences and IEEE ICDM conferences. Also he has served as a reviewer for numerous journals, including IEEE TKDE, ACM TKDD, ACM TIST, KAIS, Information Science, and TSMCB.
Nick Duffield is a Professor in the Department of Electrical and Computer Engineering at Texas A&M University, a Professor by Courtesy, in the Department of Computer Science and Engineering, and Director of the Texas A&M Institute of Data Science. From 1995 until 2013, he worked at AT&T LabsResearch, Florham Park, NJ, where he was a Distinguished Member of Technical Staff and an AT&T Fellow. He previously held postdoctoral and faculty positions in Dublin, Ireland, and Heidelberg, Germany. He received a BA in Natural Sciences in 1982 and an MMath in 1983 from the University of Cambridge, UK, and a PhD in Mathematical Physics from the University of London, U.K., in 1987. His research concerns data science and computer networking, with current projects involving algorithms for data streaming and machine learning, computer network measurement and resilience, and applications of data science to transportation, agriculture and hydrology. He is an IEEE Fellow, an IET Fellow, and has twice received the ACM SIGMETRICS TestofTime award. He is an elected member of the governing board of ACM SIGMETRICS. He was an Associate Editor for the IEEE/ACM Transactions on Networking from 20072011, and has been an EditoratLarge since 2014. He is Chief Editor for Big Data Network at Frontiers.
Na Wang received her M.S. and Ph.D. degrees in Information Sciences and Technology from the Pennsylvania State University. She is currently a Staff Software Engineer at Samsung Research America. Her research interests include machine learning and humancomputer interaction. She has published papers in top conference proceedings, including IEEE ICDM, ACM SIGCHI, ACM IUI, ACM MobileHCI, and ACM CSCW, and won Best Paper Award of CHI 2015.
Rui Chen, Samsung Research America, Mountain View, CA, USA. Email: rui.chen1@samsung.com