A Context-Aware Keyboard Generator for Smartphone Using Random Forest and Rule-Based System

Similar documents
UniGest: Text Entry Using Three Degrees of Motion

Phone Tilt. Dynamic UI Adaptations for single-handed smartphone interaction. Fasil Negash Mtr No.:

Investigating the Effects of User Age on Readability

Arranging Touch Screen Software Keyboard Split-keys based on Contact Surface

JESK. Usability Evaluation of Touch Keyboard in Smart Watch Environment. Euitaek Oh, Jinhae Choi, Minhaeng Cho, Jiyoung Hong

Design and Engineering of Software Applications for Touch Input Collection on Mobile Devices

A novel approach to classify human-motion in smart phone using 2d-projection method

Input. Managing text and positional input

Ensemble Learning: An Introduction. Adapted from Slides by Tan, Steinbach, Kumar

Multiple Classifier Fusion using k-nearest Localized Templates

Accelerometer Gesture Recognition

KeyGlasses : Semi-transparent keys to optimize text input on virtual keyboard

Multimodal Interfaces. Remotroid

MoViSign: A novel authentication mechanism using mobile virtual signatures

Activity recognition and energy expenditure estimation

Activity Recognition Using Cell Phone Accelerometers

A SIMPLE HIERARCHICAL ACTIVITY RECOGNITION SYSTEM USING A GRAVITY SENSOR AND ACCELEROMETER ON A SMARTPHONE

Classification of Daily Life Activities by Decision Level Fusion of Inertial Sensor Data

Web Accessibility for Older Readers: Effects of Font Type and Font Size on Skim Reading Webpages in Thai

Coin Size Wireless Sensor Interface for Interaction with Remote Displays

Evaluation Measures. Sebastian Pölsterl. April 28, Computer Aided Medical Procedures Technische Universität München

Web page recommendation using a stochastic process model

Tap Position Inference on Smart Phones

Towards Grading Gleason Score using Generically Trained Deep convolutional Neural Networks

MIBA: Multitouch Image-Based Authentication on Smartphones

Strathprints Institutional Repository

Toward Interlinking Asian Resources Effectively: Chinese to Korean Frequency-Based Machine Translation System

Keyword Extraction by KNN considering Similarity among Features

A Mouse-Like Hands-Free Gesture Technique for Two-Dimensional Pointing

MIT Samberg Center Cambridge, MA, USA. May 30 th June 2 nd, by C. Rea, R.S. Granetz MIT Plasma Science and Fusion Center, Cambridge, MA, USA

Improving Touch Based Gesture Interfaces Ridhô Jeftha University of Cape Town Computer Science Student Rondebosch Cape Town 03 July 2012

Information Select and Transfer Between Touch Panel and Wearable Devices Using Human Body Communication

Character Recognition from Google Street View Images

A Comparison of Gaze-Based and Gesture-Based Input for a Point-and-Click Task

Random Forest A. Fornaser

Flickey: Flick-Based QWERTY Software Keyboard for Ultra-small Touch Screen Devices

Human Activity Recognition in WSN: A Comparative Study

(2014) : '14. ACM, ISBN

String Vector based KNN for Text Categorization

Proposal for Right-Centric ActionBar Layout to facilitate single-handed content consumption for Android Applications

Measuring the Capability of Smartphones for Executing Context Algorithms

LetterScroll: Text Entry Using a Wheel for Visually Impaired Users

Combining SVMs with Various Feature Selection Strategies

COMS W4170 Scaling Up and Down 2: From Wall-Sized to Hand-Held

Linking Entities in Chinese Queries to Knowledge Graph

COMPUTATIONAL INTELLIGENCE SEW (INTRODUCTION TO MACHINE LEARNING) SS18. Lecture 6: k-nn Cross-validation Regularization

Face Alignment Under Various Poses and Expressions

DUCK : a deductive Keyboard

Interface for Digital Notes Using Stylus Motions Made in the Air

Data Mining Lecture 8: Decision Trees

Improved Non-Local Means Algorithm Based on Dimensionality Reduction

Video Aesthetic Quality Assessment by Temporal Integration of Photo- and Motion-Based Features. Wei-Ta Chu

The Grid 2 is accessible to everybody, accepting input from eye gaze, switches, headpointer, touchscreen, mouse, and other options too.

Fundamental Matrices from Moving Objects Using Line Motion Barcodes

Detecting Harmful Hand Behaviors with Machine Learning from Wearable Motion Sensor Data

Human Activity Recognition via Cellphone Sensor Data

Activity recognition using a wrist-worn inertial measurement unit: a case study for industrial assembly lines

Image Classification using Fast Learning Convolutional Neural Networks

Voronoi Diagrams, Vectors and the Visually Impaired

Optimization Model of K-Means Clustering Using Artificial Neural Networks to Handle Class Imbalance Problem

Keystroke Biometric Studies with Short Numeric Input on Smartphones

HoverLink: Joint Interactions using Hover Sensing Capability

Applying Small-Keyboard Computer Control to the Real World

Learning Binary Code with Deep Learning to Detect Software Weakness

Gathering Text Entry Metrics on Android Devices

KAUSTUBH DEKATE KEDAR AYACHIT KALPESH BHOIR SAGAR KEDARE DHAWAL JADHAV NITIN DHALE

Are Senior Smartphones really better?

Some questions of consensus building using co-association

Human Detection, Tracking and Activity Recognition from Video

Rotation Invariant Finger Vein Recognition *

Using Text Learning to help Web browsing

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique

Machine Learning Final Project

Classification of Imbalanced Marketing Data with Balanced Random Sets

On the automatic classification of app reviews

A Psychophysical Comparison of Two Stylus-Driven Soft Keyboards

Feel the touch. touchscreen interfaces for visually impaired users. 21 November 2016, Pisa. 617AA Tecnologie assistive per la didattica

Semi-Supervised PCA-based Face Recognition Using Self-Training

The Design and Evaluation of a Text Editing Technique for Stylus-Based Tablets

Best First and Greedy Search Based CFS and Naïve Bayes Algorithms for Hepatitis Diagnosis

ITU EXPERT GROUP ON HOUSEHOLD INDICATORS (EGH) BACKGROUND DOCUMENT 3 PROPOSAL FOR A DEFINITION OF SMARTPHONE 1

Linear combinations of simple classifiers for the PASCAL challenge

Motion Sequence Recognition with Multi-sensors Using Deep Convolutional Neural Network

New input methods for blind users on wide touch devices

A Performance Evaluation of HMM and DTW for Gesture Recognition

Accessibility Options for Visual Impairment. Date: November 2017

Mass Classification Method in Mammogram Using Fuzzy K-Nearest Neighbour Equality

Mobile Query Interfaces

Integration Base Classifiers Based on Their Decision Boundary

The Design and Evaluation of a High-Performance Soft Keyboard

Search Costs vs. User Satisfaction on Mobile

Stacked Denoising Autoencoders for Face Pose Normalization

Non-rigid body Object Tracking using Fuzzy Neural System based on Multiple ROIs and Adaptive Motion Frame Method

Development of Prediction Model for Linked Data based on the Decision Tree for Track A, Task A1

Sensor Based Time Series Classification of Body Movement

Writing a Research Paper

Robustness of Selective Desensitization Perceptron Against Irrelevant and Partially Relevant Features in Pattern Classification

Public Scene Recognition Using Mobile Phone Sensors

Alternative GUI for Interaction in Mobile Environment

ASSISTIVE CONTEXT-AWARE TOOLKIT (ACAT)

Transcription:

A Context-Aware Keyboard Generator for Smartphone Using Random Forest and Rule-Based System Sang-Muk Jo and Sung-Bae Cho (&) Department of Computer Science, Yonsei University, Seoul, South Korea {sangmukjo,sbcho}@yonsei.ac.kr Abstract. A soft keyboard is popular for inputting texts on the display of smartphone. As it is a keyboard in display, it has an advantage that can be easily changed unlike the hardware keyboard. An adaptive soft keyboard is needed as different types of people use smartphone in various situations. In this paper, we propose a hybrid system that predicts user behavior patterns using smartphone sensor log data based on random forest and generates the appropriate GUI to the predicted behavior patterns by the rules constructed from users preference. The random forest for predicting user behavior patterns has a high generalization performance due to the ensemble of various decision trees. The GUI mapping rules are constructed according to the data collected from 210 users of different ages and genders. Experimental results with the real log data confirm that the proposed system effectively recognizes the situations and the user satisfaction is doubled compared to the conventional methods. 1 Introduction Nowadays most of the people use smartphone every day, anywhere. Smartphone allows users to enter texts through soft keyboard, but it is difficult to input with the same performance in various situations for different purposes. Since the soft keyboard is controlled by software unlike the hardware keyboard, it can easily change the keyboard type [1] and can be entered by the gestures [2]. In this paper, we provide the users with proper GUI according to their situation by exploiting the variability of the soft keyboard. Romanoa, et al. made the keyboard that had the smaller number of keys and was entered by using the tap and gestures [3]. Because the QWERTY keyboard has many keys in small display, the key size in the smartphone gets very small. As the smaller number of keys allows a key to have larger region, it can reduce the wrong input. However, the new type of keyboard requires extra learning efforts as many people are familiar with the standard QWERTY keyboard. Figure 1 is the acceleration vectors in user patterns and available soft keyboard GUI. For a particular user pattern, the acceleration vector is different from that for other patterns. Human activities can be recognized by using a classifier with acceleration data [4]. In this paper, we propose a hybrid system based on the familiar QWERTY keyboard that can be changed in the user s situations. Random forest is trained with acceleration, gyroscope, magnetic field and orientation data of smartphone. The trained Springer International Publishing Switzerland 2016 F. Martínez-Álvarez et al. (Eds.): HAIS 2016, LNAI 9648, pp. 91 101, 2016. DOI: 10.1007/978-3-319-32034-2_8

92 S.-M. Jo and S.-B. Cho Fig. 1. The accelerometer log data for user patterns and the available soft keyboard GUIs model predicts the user behavior patterns with which the rules generate the adaptive GUI for smartphone. The user behavior patterns are constructed from the typing hands and the situations in which the users mainly use the smartphone. The situations include sitting, standing, lying and walking. The typing hands include both hands, left hand and right hand. The main contribution of this paper is to analyze the log data from smartphone to automatically determine the user s pattern, and generate different GUIs of the keyboard that keeps the form of the QWERTY keyboard. The GUI is determined by the keyboard layout of keys, the height of keyboard and the size of keys. The keyboard layout has the four levels such as standard form, both split form, left shifted form and right shifted form. The height of keyboard and the size of keys have three levels. The rest of the paper is organized as follows. Section 2 presents the related works for adaptive keyboard. Section 3 describes in details the context-aware soft keyboard. Section 4 shows the experiments conducted to confirm the usefulness of the system. 2 Related Works Researchers have studied in three aspects to improve input speed and error rate for the soft keyboard as shown in Table 1. The first aspect is to use new key arrangement rather than using QWERTY keyboard. It leads to frequent typos because of placing a lot of keys on a small screen. An alternative method is to reduce the number of keys and use gestures [3]. It changes the key arrangement to minimize the movement of the fingers during the key input [5, 6]. There are studies to change the key arrangement by placing similarly with QWERTY keyboard [5] and analyzing the words in each language [6].

A Context-Aware Keyboard Generator for Smartphone 93 Table 1. Related works for the performance improvement of soft keyboard Authors Description Elements M. Romanoa [3] Key arrangement that reduces the number Key arrangement of keys and uses gestures X. Bi [5] Optimized key arrangement that is similar Key arrangement with QWERTY X. Bi [6] Key arrangement to minimize the travel Key arrangement distance for each language P. Sakkos [7] Changing predicted key size by using Key size personal dictionary E. Rodrigues [8] Changing predicted key GUI Key color, key size, activation area R. Mathieu [9] Dynamic predicted key generation to Dynamic key minimize the travel distance Y. Yin [10] Generate activation area depending on input Activation area posture and individual person M. Goel [11] Coordinating activation area by using an Activation area acceleration sensor A. Gunawardana [12] Setting a fixed part in activation area Activation area K. Hwang [13] Word recommended by using dictionary Additional layout for words The second aspect is a visual alternation in the keyboard. They change the color, size and activation area of the next key predicted based on the current input sequence with the words dictionary [7 9]. Sakkos, et al. predicted the next word by using words in the personal dictionary constructed by the user inputs rather than words in dictionary [7]. Rodrigues, et al. compared three elements (key color, key size and activation area) of predicted keys [8]. Mathieu, et al. added new button at each corner of the predicted keys for minimizing the movement of hands [9]. The third aspect is an activation area to determine the value of the key based on the touch position on the keyboard without any visual change. Because the input in border of keys is ambiguous in touchscreen, the method determines a proper key depending on user s situations. Probability models constituted by using the user input pattern in various situations are used to determine the key [10, 11]. The models generated by using user s input posture and individual input pattern create a proper activation area [10]. The walk models generated by analyzing users walk pattern changes the activation area [11]. Language models of predicting next keys coordinate the activation area [12]. Most of research change the keyboard based on the word dictionary. In case of using the word dictionary, time, skills and additional storage are needed to build the word dictionary. They have drawbacks to prepare word dictionaries for different languages. This paper does not use a word dictionary and provides the user with GUI of soft keyboard according to the behavior patterns. As it keeps the QWERTY keyboard, the learning efforts can be minimized.

94 S.-M. Jo and S.-B. Cho 3 Adaptive Keyboard Generator Figure 2 shows the structure of the proposed system which consists of collecting log data, preprocessing log data, modeling random forest with log data, predicting user behavior patterns and mapping the patterns to GUI. The Latin IME is a Google open source that is running on Android [14]. The main idea is to analyze the user s behavior pattern from the log data collected with smartphone, and present a keyboard GUI appropriate to the pattern. 3.1 Data Collection In order to recognize the user behavior patterns, the user log data were collected in smartphone. An Android application was made for collecting log data. While users enter the English sentences by using soft keyboard, the log data are collected in background. We used the English sentences proposed by Mackenzie, et al. [15]. Log data consist of sensor log and key log. Sensor log data such as acceleration, gyroscope, magnetic field, orientation and light are collected from smartphone sensors. Key log data such as keyboard GUI, key position, current time, intended key and entered key are collected from soft keyboard. In this paper, 150 males and 60 females participated to collect the log data. In a total of 12 different situations, the subjects selected the most appropriate GUI and entered the sentences 10 times for one situation. 3.2 Data Analysis Fig. 2. The overall system structure In the correlation matrix between the changeable elements of soft keyboard selected by users and the smartphone sensor log data, the maximum value is 0.32, indicating that there is no correlation between the sensor data and the GUI. Figure 3 is the scatterplot

A Context-Aware Keyboard Generator for Smartphone 95 Fig. 3. Scatter plot for the sensor log data matrices for each sensor. According to the user s situation, the points are shown in different colors. The points are separated into lying and walking in many scatterplots, whereas the points of walking, standing and sitting are overlapped. 3.3 User Behavior Pattern Recognition Random forest is used for predicting user behavior patterns. Decision tree can be easily understood through the tree structure and achieve high accuracy with fast process. However, they are subject to get overfitting and bias to features. Random forest based on the ensemble of decision trees overcomes this problem. It makes several decision trees and votes the final result based on them. To model decision trees, the features for splitting a node are selected from a set of randomly chosen attributes [16]. As the result, the decision trees in random forest have different forms that have better generalization performance while a decision tree is dependent on training data. In this paper, the random forest gets the sensor log and key log as input and predicts the user situations and input posture. To grow a tree in the random forest, the feature with the highest information gain is chosen at each node. The information gain for a certain feature Y,

96 S.-M. Jo and S.-B. Cho Information GainðYÞ ¼ IT ð Þ X S s¼1 T s j j jtj IT ð sþ; ð1þ is a criterion of splitting data that become purer, where T is the training log data, T s is the log data in subset s by splitting with the feature Y, and I(T) is the entropy of the data T. Random forest has the property of random feature selection. For every tree in the forest, m features are randomly selected at each node and the tree chooses the feature with the highest information gain in the m features. It is the difference between the decision tree and the random forest. The number of random attributes are mainly set to log 2 M þ 1, where M is the number of attributes in the data, since the number of random attributes does not have a significant effect on performance. After training the decision trees, classification is done by voting with the result of trees. The predicted class r, r ¼ arg max r2r XT2F ½hljT ð Þ ¼ rš; ð2þ is the one with the most votes from the trees, where R is the class set, l is the log vector and T is the tree in the forest F. The output of random forest that is combined by the outputs of the multiple decision trees makes the result to generalize and reduces the risk of overfitting. Figure 4 shows the process of voting from the trees. Fig. 4. Process of voting from trees

A Context-Aware Keyboard Generator for Smartphone 97 3.4 GUI Generation Figure 5 shows the possible GUI elements. Keyboard height and key size have three levels. Layout has four levels such as standard layout, left shifted layout, right shifted layout and both split layout. Therefore, the proposed soft keyboard can have 36 (3*3*4) different GUIs. In order to map 12 user behavior patterns to 36 GUIs, we choose the best GUIs from the 36 cases. The best GUI for each user behavior pattern is determined by the GUI that users selected most frequently in that situation: We make the rules that match the user behavior patterns to the GUIs based on the users choice for each situation. The following rules show the result of the best GUI from the collected log data. For the key size and height, the normal size is the most frequently selected. For the keyboard layout, left-shifted is always selected for the left input posture. The sensor log data and the key log data are preprocessed and used to predict the input posture and situation by using the random forest trained. The rules based on the number of GUIs for each user behavior pattern in different situations produce the best GUI for that situation. The rules are as follows. Fig. 5. The possible GUIs of the proposed soft keyboard

98 S.-M. Jo and S.-B. Cho 4 Experimental Results We analyzed the results for 10 persons among 210 participants for evaluating the proposed system by using Android smartphone. The subjects entered two sentences in one set and repeated ten sets for one user behavior pattern out of the total 12 patterns that are constructed by 4 situations and 3 postures. The sentences are randomly selected in 500 sentences proposed by Mackenzie [15]. In the result, one subject entered in total 240 sentences. We conducted 10-fold cross validation by using the collected data. Figure 6 is the graphs of accuracy and AUC in the various numbers of random attributes. The bar chart represents the accuracy of random forest and the line chart represents ROC (Receiver Operating Characteristics) area of random forest. Figure 6(a) is the graph for input situations and Fig. 6(b) is the graph for input posture. The best accuracy of input situations is 81.4 % and the best accuracy of input postures is 70.0 %. Because the accuracy and AUC get lower or unchanged after 6 random attributes, and we chose the random forest with 6 random attributes while the split node is generated in trees.

A Context-Aware Keyboard Generator for Smartphone 99 Fig. 6. Accuracy and ROC area for (a) input situation and (b) input posture Figure 7 is the boxplot of comparison with other classification methods. The proposed random forest shows the higher accuracy than other methods. SVM has the second highest accuracy and MLP has the lowest accuracy. We conducted the satisfaction test that the subjects chose the satisfaction of 1 to 10 scores when using the proposed keyboard and the standard keyboard. The average satisfaction of the standard keyboard was 4.7 and the satisfaction of the proposed keyboard was 8.1, which shows the significant improvement of the user satisfaction with the proposed system. Fig. 7. Comparison of accuracies with other classification methods for (a) input situation and (b) input posture

100 S.-M. Jo and S.-B. Cho 5 Concluding Remarks In this paper we proposed a context-aware keyboard interface that changes depending on user s situations and typing hands. Experiments with the real log data collected from 210 participants resulted in higher user satisfaction. The proposed method was used as an app for smartphone, which turned out to be acceptable because the new GUI was initialized without any extra cost. We need to investigate on performance from larger dataset with more users. Also, comparison with other techniques in the conventional approach like the use of predictive text should be conducted to show the practical usefulness of the proposed method. Acknowledgements. This work was supported by LG Electronics, Inc. References 1. Cheng, L., Liang, H., Wu, C., Chen, M.: igrasp grasp-based adaptive keyboard for mobile devices. In: CHI 2013 Extended Abstracts on Human Factors in Computing Systems, pp. 2791 2792 (2013) 2. Smith, B.A., Bi, X., Zhai, S.: Optimizing touchscreen keyboards for gesture typing. In: Proceedings of the ACM CHI 2015, pp. 3365 3374 (2015) 3. Romanoa, M., Paolino, L., Tortora, G., Vitiello, G.: The tap and slide keyboard: a new interaction method for mobile device text entry. Int. J. Hum.-Comput. Interact. 20(12), 935 945 (2014) 4. Bao, L., Intille, S.S.: Activity recognition from user-annotated acceleration data. In: Ferscha, A., Mattern, F. (eds.) PERVASIVE 2004. LNCS, vol. 3001, pp. 1 17. Springer, Heidelberg (2004) 5. Bi, X., Smith, B., Zhai, S.: Quasi-qwerty soft keyboard optimization. In: Proceedings of ACM SIGCHI Conference on Human Factors in Computing Systems, pp. 283 286 (2010) 6. Bi, X., Smith, B., Zhai, S.: Multilingual touchscreen keyboard design and optimization. Hum.-Comput. Interact. 27, 352 382 (2012) 7. Sakkos, P., Kotsakos, D., Katakis, I., Gunopulos, D.: Anima: adaptive personalized software keyboard. arxiv:1501.05696 (2015) 8. Rodrigues, É., Carreira, M., Gonçalves, D.: Improving text-entry experience for older adults on tablets. In: Stephanidis, C., Antona, M. (eds.) UAHCI 2014, Part III. LNCS, vol. 8515, pp. 167 178. Springer, Heidelberg (2014) 9. Mathieu, R.: KeyGlasses: semi-transparent keys on soft keyboard. In: Proceedings of the 16th International ACM SIGACCESS Conference on Computers and Accessibility, pp. 347 349 (2014) 10. Yin, Y., Ouyang, T.Y., Partridge, K., Zhai, S.: Making touchscreen keyboards adaptive to keys, hand postures, and individuals A hierarchical spatial backoff model approach. In: Proceedings of the SIGCHI Conference on Human Factors in Computing System, pp. 2775 2784. ACM (2013) 11. Goel, M., Findlater, L., Wobbrock, J.: WalkType: using accelerometer data to accommodate situational impairments in mobile touch screen text entry. In: Proceedings of ACM CHI 2012, pp. 2687 2696 (2012)

A Context-Aware Keyboard Generator for Smartphone 101 12. Gunawardana, A., Paek, T., Meek, C.: Usability guided key-target resizing for soft keyboards. In: Proceedings of International Conference on Intelligent User Interfaces, pp. 111 118. ACM (2010) 13. Hwang, K., Lee, J.: Preliminary study on soft keyboard with recommendation for mobile device. J. Inst. Webcasting Internet Telecommun. 13(6), 137 145 (2013) 14. https://android.googlesource.com/platform/packages/inputmethods/latinime/+/master 15. Mackenzie, I.S., Soukoreff, R.W.: Phrase sets for evaluating text entry techniques. In: Extended Abstracts of the ACM Conference on Human Factors in Computing Systems, pp. 754 755 (2003) 16. Breiman, L.: Random forests. Mach. Learn. 45(1), 5 32 (2001)