Micro- and Macro-Level Churn Analysis of Large-Scale Mobile Games

01/14/2019 ∙ by Xi Liu, et al. ∙ SAMSUNG 0

As mobile devices become more and more popular, mobile gaming has emerged as a promising market with billion-dollar revenues. A variety of mobile game platforms and services have been developed around the world. A critical challenge for these platforms and services is to understand the churn behavior in mobile games, which usually involves churn at micro level (between an app and a specific user) and macro level (between an app and all its users). Accurate micro-level churn prediction and macro-level churn ranking will benefit many stakeholders such as game developers, advertisers, and platform operators. In this paper, we present the first large-scale churn analysis for mobile games that supports both micro-level churn prediction and macro-level churn ranking. For micro-level churn prediction, in view of the common limitations of the state-of-the-art methods built upon traditional machine learning models, we devise a novel semi-supervised and inductive embedding model that jointly learns the prediction function and the embedding function for user-app relationships. We model these two functions by deep neural networks with a unique edge embedding technique that is able to capture both contextual information and relationship dynamics. We also design a novel attributed random walk technique that takes into consideration both topological adjacency and attribute similarities. To address macro-level churn ranking, we propose to construct a relationship graph with estimated micro-level churn probabilities as edge weights and adapt link analysis algorithms on the graph. We devise a simple algorithm SimSum and adapt two more advanced algorithms PageRank and HITS. The performance of our solutions for the two-level churn analysis problems is evaluated on real-world data collected from the Samsung Game Launcher platform.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

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 billion-dollar 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 micro-level churn has been a long-standing 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 player-game 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 micro-level 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 micro-level 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 macro-level 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 trend-sensitive 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 macro-level 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 near-future churn, e.g., a post-filter. Macro-level 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 macro-level churn ranking problem is intimately related to the micro-level churn prediction problem. Consider the extreme case that all micro-level 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 micro-level 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 large-scale mobile apps and users. For real-world applications, a solution needs to handle tens of thousands of mobile games and hundreds of millions of user-app interactions on a daily basis. Second, user-app 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 semi-supervised embedding model that jointly learns the prediction function and the embedding function for user-game interaction. The user-app 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\myfnsymbolmulthttps://www.samsung.com/au/support/mobile-devices/how-to-use-game-tools/, which is pre-loaded 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 user-game interaction. Our method is fully automatic and can be easily integrated into existing mobile platforms.

With the predicted micro-level churn probabilities, we devise a simple method SimSum to estimate the macro-level 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 user-game graph with edges weighted by the estimated churn probabilities and adapt link analysis algorithms to infer the macro-level churn ranking of games. Among the family of link analysis algorithms,

PageRank [page1999pagerank] and HITS (Hyperlink-Induced Topic Search) [kleinberg1999authoritative] are chosen because they have been widely applied in abundant real-world applications and shown to have stable performance.

Contributions. Our research contributions are summarized as follows:

  1. To the best of our knowledge, this paper is the first to develop a solution for both micro-level churn prediction and macro-level churn ranking of large-scale mobile games using hundreds of millions of user-app 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.

  2. We propose a novel semi-supervised 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.

  3. 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.

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

  5. We conduct a comprehensive experimental evaluation with large-scale real-world data collected from Samsung Game Launcher. The experimental results demonstrate that our model outperforms all state-of-the-art methods with respect to different evaluation metrics for micro-level churn prediction and macro-level churn ranking.

The rest of the paper is organized as follows. Section 2 formulates the two-level mobile game churn analysis problem. Section 3 discusses our solution in detail. Section 4 presents our experimental results on large-scale real-world data. Section 5 reviews the related literature. Finally, Section 6 concludes our work.

2 Problem Formulation

Figure 1: An example of an attributed bipartite graph for mobile game churn prediction

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 micro-level game churn prediction and macro-level 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
Table 1: Notations and definitions

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 two-level 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:

  1. Micro-level churn prediction that estimates the probability for an edge in , which is the probability that disappears in ;

  2. Macro-level 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 micro-level 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 player-game 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 node-centric, and thus are not directly applicable to edge-centric 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 player-game relationships almost every day.

Figure 2: Deep neural network architecture of the inductive semi-supervised embedding model in training

In addressing these challenges, we propose a novel inductive semi-supervised 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 attribute-wise 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 co-occur 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 edge-centric 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 task-specific way and hence are not able to incorporate task-specific 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 trade-off weights.

After the prediction function and embedding function

are learned through minimizing the loss function in Equation (

1), the churn probability of any individual user-game pair can be estimated by . Under the assumption that the micro-level 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 macro-level 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 user-game graph with edges weighted by the estimated churn probabilities and adapt link analysis algorithms to estimate macro-level 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 non-linear 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 semi-supervised 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 trade-off 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 user-game 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 user-game 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.

Figure 3: Average mobile game retention rate as a function of time

The second observation we make is stated in Observation 3. For a given user-game 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 real-world 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 player-game pair at a specific timestamp is determined by their interaction in the next time duration, the labels of some player-game pairs in the last duration could be unknown. For instance, the last observation of the pair of player 2 and game 1 (denoted by p2-g1) 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 p3-g3 has play records every day in the last days, and it is not censored during the observation period.

Figure 4: An illustration of censored data by three randomly sampled player-game pairs

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 node-centric research on graph embedding proposing to apply random walk to sample contexts [grover2016node2vec]. These methods are normally topology-based. In our problem setting, our goal is to embed an edge, not a node. In this case, a simple topology-based 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.

Figure 5: An illustrative example of attributed random walk in an attributed bipartite graph

It is time-consuming 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 same-type 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 same-typed 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 two-hop neighborhood of . We denote the one-hop same-typed 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 two-hop same-typed 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 Macro-Level Churn Ranking

The objective of macro-level 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 user-game 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 micro-level 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 macro-level 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 user-game 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.

Input: Graph , maximal number of iterations , damping factor
Output: for each ranking scores of games
1 , initialize for ;
2 while   do
3       Copy last iteration scores to : for ;
4       for  do
5            
6       end for
7      
8 end while
return for
Algorithm 1 PageRank Based Macro-Level Churn Ranking

The procedures to compute is given in Algorithm 1. The algorithm assigns a larger ranking score to a game if the game has more about-to-churn 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.

Input: Graph , maximal number of iterations
Output: for each ranking scores of games
1 , initialize for ;
2 while   do
3       Copy last iteration scores to : for ;
4       for  do
5            
6            
7       end for
8       Normalize and
9 end while
return for
Algorithm 2 HITS Based Macro-Level Churn Ranking

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 large-scale real data collected from the Samsung Game Launcher platform. We compare our semi-supervised model (referred to as SS in the sequel) with the following state-of-the-art 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 4-month 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
Table 2: Dataset statistics

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 semi-supervised 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 semi-supervised 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 micro-level 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, 1e-5, 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

  • Player-game 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: 6-8

  • Batch size: 1,024

  • Context number per user-game 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

  • Player-game 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: 8-12

  • Batch size: 4,096

  • Context number per user-game 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
Table 3: Performance of different micro-level churn prediction models on USA
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
Table 4: Performance of different micro-level churn models on Korea

4.3 Experimental Results

4.3.1 Micro-Level Churn Prediction

We use three widely-used evaluation metrics to compare the performance of different micro-level 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 5-7 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.

(a) AUC on USA
(b) AUC on Korea
Figure 6: Comparison of AUC for SS in training and testing
(a) AUC on USA
(b) AUC on Korea
Figure 7: AUC comparison between SS and RS under different numbers of epochs
(a) AUC on USA
(b) AUC on Korea
Figure 8: Comparison of AUC for SS in training under different learning rates
(a) AUC on USA
(b) AUC on Korea
Figure 9: Comparison of AUC for SS in training under different training methods

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: co-train and alternative train. Co-train 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 widely-used training method for similar structures [yang2016revisiting, liang2017seano]. It is interesting to observe that, however, co-train outperforms alternative train in terms of AUC under different numbers of epochs as shown in Fig. 9. Therefore, we choose co-train as the final training method in our experiments.

4.3.2 Macro-Level Churn Ranking

We use five widely-used evaluation metrics to compare the performance of different macro-level churn ranking methods based on different micro-level 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).

(a) SimSum Kendall’s Tau on USA
(b) SimSum Kendall’s Tau on Korea
(c) HITS Kendall’s Tau on USA
(d) HITS Kendall’s Tau on Korea
(e) PageRank Kendall’s Tau on USA
(f) PageRank Kendall’s Tau on Korea
Figure 10: Comparison of Kendall’s Tau correlation coefficients in testing under different macro-level churn ranking and micro-level churn prediction methods

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 tie-breaking 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.

(a) SimSum Weighted Kendall’s Tau on USA
(b) SimSum Weighted Kendall’s Tau on Korea
(c) HITS Weighted Kendall’s Tau on USA
(d) HITS Weighted Kendall’s Tau on Korea
(e) PageRank Weighted Kendall’s Tau on USA
(f) PageRank Weighted Kendall’s Tau on Korea
Figure 11: Comparison of Weighted Kendall’s Tau correlation coefficients in testing under different macro-level churn ranking and micro-level churn prediction methods
(a) SimSum Spearman Coefficient on USA
(b) SimSum Spearman Coefficient on Korea
(c) HITS Spearman Coefficient on USA
(d) HITS Spearman Coefficient on Korea
(e) PageRank Spearman Coefficient on USA
(f) PageRank Spearman Coefficient on Korea
Figure 12: Comparison of Spearman correlation coefficients in testing under different macro-level churn ranking and micro-level churn prediction methods
(a) SimSum Average Precision at K on USA
(b) SimSum Average Precision at K on Korea
(c) HITS Average Precision at K on USA
(d) HITS Average Precision at K on Korea
(e) PageRank Average Precision at K on USA
(f) PageRank Average Precision at K on Korea
Figure 13: Comparison of Average Precision at K in testing under different macro-level churn ranking and micro-level churn prediction methods

Since macro-level churn ranking is based on the results of micro-level churn prediction, we compare the performance of different combinations between the two parts. Each combination is referred to in the “macro-micro” format. For example, SimSum-SS represents the combination of using SimSum as the macro-level churn ranking method and our semi-supervised method as the micro-level 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 micro-level churn prediction is performed daily, macro-level 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 macro-level churn ranking methods in combination with our semi-supervised 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 widely-adopted 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 macro-level churn ranking methods in combination with the proposed semi-supervised mode SS achieve better performance than the combinations with other baseline. This again indicates the importance of the positive interaction between micro-level churn prediction and macro-level 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.

Area-Model SimSum HITS PageRank
Korea-SS 0.41 0.40 0.40
Korea-LR 0.40 0.39 0.39
Korea-DT 0.40 0.40 0.39
USA-SS 0.41 0.40 0.38
USA-LR 0.38 0.38 0.37
USA-DT 0.38 0.38 0.38
Table 5: Mean Average Precision under different micro-level churn prediction and macro-level churn ranking methods on Korea and USA

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 large-scale real data with tens of thousands of mobile games and hundred of millions of user-app interactions is generally not satisfactory. In addition, we also observe scalability issues when they are applied to large-scale 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 short-term memory networks (LSTM). There are also several recent deep-learning-based studies 

[wangperawong2016churn, umayaparvathi2017automated, martins2017predicting] for non-game 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 macro-level 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 micro-level 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
Table 6: Comparison between this paper and existing works in data size and key techniques

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 node-centric 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. Abu-El-Haija 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 micro-level churn prediction. Our model improves these works in several major ways. First, our embedded features are learned in a semi-supervised 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 semi-supervised 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 billion-dollar market. In this paper, we consider two important aspects of churn analysis of mobile games: micro-level churn prediction and macro-level churn ranking. We proposed a novel inductive semi-supervised embedding model for large-scale micro-level game churn prediction. It jointly learns a prediction function and an edge embedding function that can automatically map high-dimensional 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 macro-level churn ranking problem without much overhead, we proposed a simple method SimSum based on the outputs of the micro-level 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 state-of-the-art baseline methods on large-scale real-world 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.
TBA

Author 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 production-scale 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 ICDM-2011 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 TSMC-B.

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 Labs-Research, Florham Park, NJ, where he was a Distinguished Member of Technical Staff and an AT&T Fellow. He previously held post-doctoral 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 Test-of-Time 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 2007-2011, and has been an Editor-at-Large 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 human-computer 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