Feature Fusion for Mobile Usage Prediction Using Rank ... - IEEE Xplore

3 downloads 1158 Views 809KB Size Report
There are two simple ways to combine multiple features for ranking the items: .... problems include redial button, list of recent calls, and favorite list etc. For example ... the one year usage history collected from 25 iPhone users between Feb.
Feature Fusion for Mobile Usage Prediction Using Rank-Score Characteristics Chen Sun, Yang Wang, Jun Zheng

D. Frank Hsu

Department of Computer Science and Engineering New Mexico Insititute of Mining and Technology Socorro, NM 87801 Email: {chen, yangwang, zheng}@nmt.edu

Department of Computer and Information Science Fordham University New York, NY 10023 Email: [email protected]

Abstract—The aim of this paper is to investigate feature fusion problem for mobile usage prediction using combinatorial fusion analysis (CFA). CFA uses the rank-score characteristics (RSC) function to guide the process of selecting score-based fusion (SF) or rank-based fusion (RF). We study the feature fusion of two mobile adaptive user interface applications: dynamic shortcuts for application launching and dynamic contact list, which improve the usability of mobile devices through usage predication. Our results confirm that for mobile usage prediction RSC function is useful for feature fusion decision. It also proves that RF outperforms SF when the features have unique scoring behavior and relatively high performance.

I.

I NTRODUCTION

text categorization [8], protein structure prediction [9] and cognitive diversity [6] etc. The rest of the paper is organized as follows. Section II presents the background of feature fusion methods. In Section III, we introduce two adaptive user interface applications that improve the usability of mobile devices through usage prediction. The features used for prediction are also described in this section. Section IV decribes the datasets used for study and some observations obtained from the datasets. The results of performance evaluation are then presented in this section. Finally, the conclusions are drawn in Section V. II.

Mobile devices like mobile phones and tablets have become very popular nowadays. With powerful processor and ample storage capacity, today’s mobile devices can provide a large number of functions and services. For example, the user can install a large number of various applications (apps) and keep a list containing hundreds of contacts. However, it becomes harder to access those functions and services because of the limitations of mobile devices such as small screen size and inefficient input mechanism etc. To address the limitations of mobile devices and improve their usability, several adaptive user interface solutions have been proposed to adapt to user’s behavior through usage prediction. Fukazawa et al. [4] proposed an adaptive menu solution for mobile device that ranks the functions based on frequency and recency. In [14], Yan and Chen used a RFD (Recency, Frequency and Duration) model to quantify the usage of mobile apps and make personalized app recommendations to users. Recently Yan et al. [15] proposed an app prelaunching solution on Windows Phone platform using context information including temporal bursts, trigger-follower sequences and locations for app launching prediction. Most existing works concentrate on extracting different features for usage prediction. There are few works on how these feature should be combined. In this paper, we investigate the feature fusion problem for mobile usage prediction using two mobile adaptive user interface applications: dynamic shortcuts for app launching and dynamic contact list. Specifically, a new approach: combinatorial fusion analysis (CFA) is studied which uses the rank-score characteristics (RSC) function for feature fusion decision. CFA has been successfully applied in areas such as information retrieval [5], target tracking [10], Proc. 12th IEEE Int. Conf. on Cognitive Informatics & Cognitive Computing (ICCI*CC’13) D.F. Hsu, Y. Wang, A.R. Rao, D. Zhang, W. Kinsner, W. Pedrycz, R.C. Berwick & L.A. Zadeh (Eds.) 978-1-4799-0783-0/13/$31.00 ©2013 IEEE

212

F EATURE F USION

A. Score-based Fusion and Rank-based Fusion Let I = {Ii |i = (1, 2, ..., n)} be the set of items to be ranked. For mobile devices, the items could be apps, contacts, browsed web pages, locations etc. The feature space for the item set is defined as F = {fj |j = (1, 2, ..., m)}. The score function of a featue fi for I can be denoted as Sfi (I) : I → R (the set of real numbers). The items in I can be ranked using a rank fuction based on the scores obtained from the score fuction of a feature fj , which can be defined as R(Sfj (I)) : I → N, where N = {1, 2, ..., n}. Since the scores of features could be in different ranges, normalization has to be performed before feature fusion. The normalized score function of a feature fj can be defined as Sf∗j (I) : I → [0, 1]. There are two simple ways to combine multiple features for ranking the items: score-based fusion (SF) and rank-based fusion (RF). SF combines the scores of m features for an item Ii based on Eq. (1), SFF (Ii ) =

m  Sf∗j (Ii ) j=1

m

(1)

The items can then be ranked using a rank function on the combined scores: R(SFF (I)) : I → N. RF combines the features of an item using its ranks of the features as shown in Eq.(2), RFF (Ii ) =

m  R(Sfj (Ii )) j=1

m

(2)

The items are then sorted based on the combined ranks: R(RFF (I)) : I → N.

Rfj(●)

I

N RSCfj(●)

Sfj(●)

R Fig. 1.

RSC function of a feature fj

1

Normalized Score

RSCfA(●)

0

Fig. 2.

Fig. 3. A single-row AppRush widget with the shortcuts of top 4 apps predicted to be launched

RSCfB(●) RSCfC(●)

1

Rank

As shown in [5], RF usually outperforms SF if the two features have relatively high performance individually and the diversity value is large enough. Otherwise SF should be used to combine the two features.

n

Graphs of three RSC functions

III. B. Combinatorial Fusion Analysis Using Rank-Score Characteristics In order to determine which feature fusion method is appropriate for certain task, Hsu and Taksa [5] proposed a CFA method using the RSC function, which describe the relationship between the scores and ranks of a feature for the item set. The RSC function of a feature fj is defined based on the score function R(Sf∗j (I)) and the rank function R(Sfj (I)) as shown in Eq. (3), RSCfj (k) = Sf∗j (Rf−1 (k)) j

(3)

where k (k = 1, 2, ..., n) is the rank of an item for feature fj . It can be seen from Fig. 1 that the RSC function RSC(k) : N → R assigns a score to the corresponding rank. The RSC functions of different features can be drawn as graphs as shown in Fig. 2. As can be seen from Fig. 2, all RSC functions are monotonically non-increasing and the features’ RSC graphs may have different shapes. For example, the scores of a feature may be linearly decreasing for the items (feature fB in Fig. 2). The RSC graph of feature fA shows that majority of the items have high scores for fA . On the other hand, the RSC graph of feature fC implies that only a few items have high scores for fC . In [5], Hsu and Taksa used a diversity measure between two features to determine which fusion method will produce a better result. The diversity between two features A and B is calculated as the difference between their RSC graphs as follows: n  |RSCfA (k) − RSCfB (k)| (4) d(fA , fB ) = k=1

213

S AMPLE M OBILE A DAPTIVE U SER I NTERFACE A PPLICATIONS

To study feature fusion for mobile usage prediction, we use two mobile adaptive user interface applications: dynamic shortcuts for quick app launching and dynamic contact list. A. App Launching With the large number of mobile apps available in the various app markets, the mobile phone users tend to install plenty of them in their devices. For example, a study done in April 2011 showed that average 35 apps were installed by an Android phone user [2]. Although shortcuts of a user’s favorite apps can be placed on the home screen for quick launching, usually the user needs to search the long list of installed apps to find the one to be launched due to the small screen size of mobile phones. In [13], we developed an intelligent solution for quick Android app launching called AppRush which dynamically organizes the app shortcuts based on app usage history. The AppRush system monitors the user’s app usage behavior and predict the next app to be launched. The top ranked apps will be shown in the front-end widget placed on the home screen. Fig. 3 shows the screenshot of a single-row AppRush widget with the shortcuts of top 4 ranked apps. The prediction algorithm in [13] uses a score-based fusion method to combine four different features. Among the four features adopted in [13], two are major contributors for the prediction performance: combined recency and frequency (CRF) and app launching sequence score (SEQ). The two features are defined as following: •

CRF: CRF is a feature combing both recency and frequency [7]. The CRF value of an app A at a given

time t is defined in Eq. (5) as follows, nA,t  λ(t−ti )  1 CRFA,t = p i=1

(5)

where nA,t is the total number of launches of app A by the time t, ti is the time of the ith launch, p and λ are parameters used for weighting each launch. The computation of CRF value can be found to be incremental with some transformations on Eq. (5). Thus, the CRF value of an app A at time ti+1 can be calculated based on the its CRF value at time ti without recalculating the contribution of all of the past launches, as shown in Equation (6) CRF A,ti+1 = bA,ti+1 + r × CRF A,ti

(6)

where bA,ti+1 is a base score to credit every launch, bA,ti+1 = 1 if there is a launch of app A at time ti+1 , or bA,ti+1 = 0 if app A is not launched at time ti+1 , and r = 1/pλ is a real number in (0, 1) which is used as a weighting factor to age the CRF value at a earlier time. •

(a) Fig. 4.

(b)

Recent call list and favorite contact list of an Android phone

SEQ: SEQ is a Markov chain based feature (also called as trigger and follower [15]) describing the probability of launching of one app followed by launching of another app. The SEQ score of an App Aj after nth launch can be calculated with Bayesian probability as shown in Eq. (7). SEQAj ,n = P (Ln+1 = Aj |Ln = Ai ) =

|Ai →Aj | |Ai |

(7)

where Ln indicates the nth launched app, |Ai → Aj | denotes the number of launching of app Ai followed directly by launching of app Aj , and |Ai | is the total number of launches of app Ai . B. Contact List Nowadays mobile phones have ample space for their users to store a large amount of contacts, which may include those temporarily or infrequently used ones. However, the limitations of mobile phones such as small screen size, input mechanisms and possible single-hand operating, pose problems in finding the information of the desired contact from a long contact list. The mechanisms used in mobile phones to solve the problems include redial button, list of recent calls, and favorite list etc. For example, Android phones typically have a recent call list and a favorite contact list as shown in Fig. 4. To improve the usability of the contact list, we design an solution named CallRush that presents a dynamic contact list predicted based on the out-going call history. Fig. 5 shows the screenshot of a single-row CallRush widget with the photo and name information of the top 4 ranked contacts. The prediction algorithm of the solution combines the frequency and recency features extracted from the user’s outgoing call history to predict the phone numbers that are most likely to be dialed next by the user. The two features are defined as: •

Frequency: Frequency measures how often a contact has been called, which is a feature used in many

214

Fig. 5. A single-row CallRush widget with the information of top 4 ranked contacts

studies to build the dynamic contact list [1], [12]. It has been shown in [12] that the contact list usage pattern may follow the Pareto Principle (i.e. the 80/20 rule). The frequency score of a contact C at a given time t is defined as: FC,t =

NC,t Nt

(8)

where NC,t is the number of out-going calls to C at t and Nt is the total number of out-going calls at t. •

Recency: Recency measures how much time has passed since the last out-going call to a contact. Redial button and recent call list are examples of using recency for usability. The recency score of a contact C at a given time t is defined as: RC,t = (1 − δ)t−tC

(9)

where tC is the time of last out-going call to C and δ is a user-defined decaying speed (δ ∈ (0, 1)).

IV.

CRF SEQ

0.9

A. Datasets 1) App Launching Dataset: The app launching dataset were collected from anonymous Android users between May and August 2012 who installed our AppRush app from Google Play1 . The users were presented a detailed privacy notice about the data collection behavior. The log containing the detailed time information of a user’s app usage was submitted to our central sever on a daily basis once the user accepted the policy and installed the AppRush app. The dataset used for performance evaluation contains 52 anonymous users’ app usage history in a period of 49 days (7 weeks). The statistics of the dataset are shown in Table I. TABLE I.

1

1

D IVERSITY- BASED F EATURE F USION FOR M OBILE U SAGE P REDICTION

S TATISTICS OF APP LAUNCHING DATASET

0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

0.4

0.4

0.3

0.3

0.2

0.2 0.1

0.1 0

0

10

20

30

40

50

60

70

80

90

100

Maximum Minimum Average

Average number of launches happened per day 182.1 9.8 41.6

CRF SEQ

20

30

40

50

60

70

80

CRF SEQ

0.9

0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

0.4

0.4

0.3

0.3

0.2

0.2 0.1 0

20

40

60

80

100

120

0

0

10

20

30

(c)

40

50

60

(d)

Fig. 6. RSC graphs from randomly selected user traces of the app launching dataset 1 Frequency Recency

0.9 0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

0.4

0.4

0.3

0.3

0.2

0.2 0.1

0.1 0

Frequency Recency

0.9

0

50

100

150

0

0

5

10

15

(a)

S TATISTICS OF CONTACT LIST DATASET Total number of outgoing calls 2601 321 1414.7

0.8

0.7

0.7

0.6

0.6

0.5

0.5

0.4

0.4

0.3

0.3

0.2

0.2

0.1

To determine which fusion method is appropriate for the two sample applications, we first investigate the RSC graphs of the features used for the two applications. Fig. 6 and Fig. 7 plot the RSC graphs at the end of some randomly selected user traces from the two datasets, respectively. It can be observed that the two features of the app launching datasets: CRF and SEQ have similar scoring behavior because their RSC graphs have almost the same shape. For the contact list dataset, the two features: frequency and recency have significant different RSC graph shapes indicating that they have unique scoring behavior. Fig. 8 and Fig. 9 are the boxplots of the diversity values for all user traces of the two datasets, respectively. It can be observed that the diversity values between CRF and SEQ used for the app launching dataset are small (< 0.1) while the diversity values between recency and frequency used for the contact list dataset are significantly larger. Based on the discussion in Section II-B, RF should be more appropriate for 1 https://play.google.com/store/apps/details?id=net.chensun.apprush

215

30

35

40

45

50

Frequency Recency

0.9

0.8

0

25

1

Frequency Recency

0.9

B. RSC Graph and Diversity

20

(b)

1

Maximum Minimum Average

10

1

1

1

Total number of contacts 452 73 196.4

0

(b)

0.9

0

2) Contact List Dataset: We use the Rice LiveLab dataset [11] for studying the dynamic contact list. The dataset contains the one year usage history collected from 25 iPhone users between Feb. 2010 to Feb. 2011. The users’ call history include incoming, outgoing and dropped calls. In this study, we only consider the outgoing calls and the trace of one user is excluded because the call history is too short. The statistics of the dataset is shown in Table II. TABLE II.

0

(a)

0.1

Average number of apps used per day 20.2 3.5 10.1

CRF SEQ

0.9

0.1

0

10

20

30

40

50

60

70

80

(c) Fig. 7. dataset

90

0

0

20

40

60

80

100

120

(d)

RSC graphs from randomly selected user traces of the contact list

fusing the two features of the contact list dataset if each feature has relatively high performance while SF should work better for fusing the two features of the app launching dataset.

C. Performance Evaluation To measure the performance of different prediction algorithms, we use the hit ratio as shown in Eq. (10), where Nh and Nm represent the number of hits and the number of misses, respectively. A hit happens when the next launched app or the next contact is among the top K predicted results, where K is set to 4 in this study. For both datasets, the first 100 app launches or out-going calls are used to build up the usage

0.1

0.09

0.08

Diversity

0.07

0.06

0.05

0.04

0.03

0.02

0.01

0

Fig. 8.

1

10

20

User

30

40

50

Boxplots of diversity values of the user traces in the app launching dataset

0.7

0.6

Diversity

0.5

0.4

0.3

0.2

0.1

1

Fig. 9.

2

3

4

5

6

7

8

9

10

11

12

13

User

14

15

16

17

18

19

20

21

22

23

24

Boxplots of diversity values of the user traces in the contact list dataset

history which are not included in performance evaluation. P redictionAccuracy =

Nh Nh + Nm

(10)

The prediction results for the app launching dataset are shown in Fig. 10. We compare the performance of SF and RF with that of CRF and SEQ. The weighting factor of CRF, r, is set to 0.9. The results show that CRF has a realtively better

216

performance than SEQ in terms of average prediction accuracy (69.2% vs. 63.3%). SF has the highest average prediction accuracy (70.7%) among all methods. It outperforms RF due to the low diversity between CRF and SEQ. The prediction results for the contact list dataset are shown in Fig. 11. We compare the performance of SF and RF with that of most-frequently-use (MFU) and most-recently-used (MRU). MFU and MRU use frequency and recency for prediction,

V.

0.8

C ONCLUSION

In this paper, we investigate the problem of feature fusion for mobile usage prediction using RSC function. Two sample mobile usage prediction applications: app launching and contact list are used for the study. The experimental results demonstrate that RSC function is useful for selecting the appropriate feature fusion method. Our findings confirm the result of [5] that features with significantly different RSC graphs should be combined with RF instead of SF. In our future work, we will investigate the combination of more features including duration, sequence and location etc. and use CFA to guide the feature selection process in addition to feature fusion.

0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

CRF

Fig. 10.

SEQ

SF

RF

R EFERENCES

Prediction results for app launching dataset

[1]

0.6

[2]

0.5

[3]

0.4

[4]

0.3 [5]

0.2 [6]

0.1

[7]

0

MFU

Fig. 11.

MRU

SF

RF

Prediction results for contact list dataset

[8]

respectively. For recency, the decaying factor δ is set to 0.02 and the event number is used for calculation instead of real time information. The results show that MFU and MRU have relatively close performance (41.2% vs. 49.9%). Both SF and RF have better performance than MRU and MFU. The average prediction accuracy of RF is more than 2% higher than that of SF (53.7% vs. 51.5%) due to the significant diversity between the frequency and recency features. We summarize the observations based on the experimental results reported in Figs. 6 to 11 and the investigation of individual user’s result as follows: •

Our results confirm that RSC function is useful for guiding the selection of feature fusion method and features with significant different RSC graphs should be combined with RF instead of SF.



Feature fusion works when the features have relatively high performance. The investigation of individual user’s result show that both SF and RF fail to produce better performance when one feature has much lower performance than another.

[9]

[10]

[11]

[12]

[13]

[14]

217

[15]

O. Barzaiq and S. Loke, ”Adapting the mobile phone for task efficiency: the case of predicting outgoing calls using frequency and regularity of historial calls,” Pers. Ubiquit. Comput., vol. 15, pp. 857–870, 2011. Consumers and mobile apps in the u.s.: All about android and apple ios, http://blog.nielsen.com/nielsenwire/onlinemobile/ consumers-and-mobile-apps-in-the-u-s-all-about-android-and-apple-ios/. N. Eagle, A. Pentland, and D. Lazer, ”Inferring social network structure using mobile phone data”, Proceedings of the National Academy of Sciences, vol. 106, no. 36, pp. 15274–15278, 2009. Y. Fukuzawa, M. Hara, M. Onogi and H. Ueno, ”Automatic mobile menu customization based on user operation history,” in Proc. of ACM MobileHCI’09, 2009, pp. 50:1–50:4. D. F. Hsu and I. Taksa, ”Comparing rank and score combination methods for data fusion in information retrieval,” Information Retrival, vol. 8, no. 3, pp. 449–480, 2005. D. F. Hsu, B. S. Kristal, and C. Scheweikert, ”Rank-score chracteristics (RSC) function and cognitive diversity,” Brain Informatics, LNAI 6334, 2010, pp. 42–54. D. Lee, J. Choi, J.-H. Kim et. al., ”On the existence of a spectrum of policies that subsumes the least recently used (lru) and least frequently used (lfu) policies,” SIGMETRICS Perform. Eval. Rev., vol. 27, no. 1, pp. 134-143, May 1999. Y. Li, D. F. Hsu, and S. M. Chung, ”Combing multiple feature selection methods for text categorization by using rank-score chracteristics,” in Proc. of the 21st IEEE International Conference on Tools with Artificial Intelligence (ICTAI 2009), Newark, NJ, Nov. 2–4, 2009, pp. 508–517. C. Lin, K. Lin, C. Huang, H. Chang, C. Yang, C. Lin, C. Tang, and D. F. Hsu, ”Feature selection and combination criteria for improving accuracy in protein structure prediction,” IEEE Trans. on Nanobioscience, vol. 6, no. 2, 2007, pp. 186–196. D. M. Lyons and D. F. Hsu, ”Combing multiple scoring systems for target tracking using rank-score chracteristics,” Information Fusion, vol. 10, no. 2, pp. 124–136, 2009. C. Shepard, A. Rahmati, C. Tossell, L. Zhong, and P. Kortum, ”LiveLab: measuring wireless networks and smartphone users in the field”, ACM SIGMETRICS Perform. Eval. Rev., vol. 38, no. 3, pp. 15–20, Dec. 2010. V. Stefanis, A. Plessas, A. Komninos, and J. Garofalakis, ”Patterns of usage and context in interaction with communication support applications in mobile devices,” in Proc. of ACM MobileHCI’12, Sept. 21-24, 2012, San Francisco, CA, pp. 25–34. C. Sun, J. Zheng, H. Yao, Y. Wang, and D. F. Hsu, ”AppRush: using dynamic shortcuts to facilitate application launching on mobile devices,” to appear in Proc. of the 4th International Conference on Ambient Systems, Networks and Technologies (ANT 2013), June 25–28, Halifax, Nova Scotia, Canada. B. Yan and G. Chen, ”Appjoy: personalized mobile application discovery,” in Proc. of ACM MobiSys’11, 2011, pp. 113–126. T. Yan, D. Chu, D. Ganesan, A. Kansal, J. Liu, ”Fast app launching for mobile devices using predictive user context,” in Proc. of ACM MobiSys’12, 2012, pp. 113–126.