Hostname: page-component-74656f9884-6grmk Total loading time: 0 Render date: 2026-11-05T23:19:00.345Z Has data issue: false hasContentIssue false

Mining, analyzing, and modeling text written on mobile devices

Published online by Cambridge University Press:  10 October 2019

K. Vertanen*
Affiliation:
Michigan Technological University, Houghton, MI, USA
P.O. Kristensson
Affiliation:
University of Cambridge, Cambridge, UK
*
*Corresponding author. Email: vertanen@mtu.edu
Rights & Permissions [Opens in a new window]

Abstract

We present a method for mining the web for text entered on mobile devices. Using searching, crawling, and parsing techniques, we locate text that can be reliably identified as originating from 300 mobile devices. This includes 341,000 sentences written on iPhones alone. Our data enables a richer understanding of how users type “in the wild” on their mobile devices. We compare text and error characteristics of different device types, such as touchscreen phones, phones with physical keyboards, and tablet computers. Using our mined data, we train language models and evaluate these models on mobile test data. A mixture model trained on our mined data, Twitter, blog, and forum data predicts mobile text better than baseline models. Using phone and smartwatch typing data from 135 users, we demonstrate our models improve the recognition accuracy and word predictions of a state-of-the-art touchscreen virtual keyboard decoder. Finally, we make our language models and mined dataset available to other researchers.

Information

Type
Article
Copyright
© Cambridge University Press 2019
Figure 0

Table 1. The number of posts, the average words per post, and the percentage of words that were out-of-vocabulary (OOV) in each dataset. ± values denote 95% confidence intervals of the mean

Figure 1

Table 2. The percentage of posts that contained emoticons, texting slang, email addresses, or URLs. ± values denote 95% confidence intervals of the mean

Figure 2

Table 3. The percentage of posts that contained emphasized words, runs of the same letter, or runs of the same punctuation. ± values denote 95% confidence intervals of the mean

Figure 3

Table 4. Character-level metrics on a per-post basis. This includes the average characters per post and the percentage of characters that were: lowercase, uppercase, numeric, or whitespace. ± values denote 95% confidence intervals of the mean

Figure 4

Table 5. The average words per sentence and the average characters per word. ± values denote 95% confidence intervals of the mean

Figure 5

Table 6. The percentage of sentences that were questions, exclamations, contained one or more commas, or were in mixed case. ± values denote 95% confidence intervals of the mean

Figure 6

Table 7. The number of sentences in each set and how often any type of error was detected in a sentence. This table also shows the percentage of sentences that contained an insertion, substitution nearby, or substitution error

Figure 7

Table 8. The percentage of sentences in which our algorithm detected a deletion, transposition, apostrophe deleted, or space deleted error. We omitted space inserted errors since they occurred very infrequently

Figure 8

Table 9. The 15 most frequent words in the different training sets. Words are ordered in descending order of frequency

Figure 9

Table 10. The cosine similarity between each of the training sets

Figure 10

Table 11. Development test sets and evaluation test sets used in our experiments

Figure 11

Table 12. The cosine similarity between the test sets and the training sets

Figure 12

Figure 1. Average perplexity of 10 3-gram language models trained on increasing amounts of data from different sources. Results are the average perplexity on our four development test sets. Two standard deviation error bars were no larger than the data point symbols and have been omitted for clarity.

Figure 13

Figure 2. Average perplexity of 10 language models trained on 8 M words of data from different sources. Results on each development test set. Some poorly performing models appear off the top of the graph and have been omitted.

Figure 14

Figure 3. Perplexity of language models trained on different training sources and with different model orders. Results are the average on the four development test sets.

Figure 15

Figure 4. Relative change to perplexity on the four development test sets with varying amounts of automatic correction. Change computed with respect to a language model with no automatic correction.

Figure 16

Figure 5. Relative perplexity change on sentences with no OOV words with increasing amounts of automatic correction of the training data.

Figure 17

Figure 6. Relative perplexity change on sentences with one or more OOV words with increasing amounts of automatic correction of the training data.

Figure 18

Figure 7. Perplexity of 3-gram language models using different amounts of pruning to reduce model size. Results are the average on the four evaluation test sets.

Figure 19

Table 13. The size and performance of models trained on 128 M words of data. KS = keystroke savings, CER = character error rate, WER = word error rate. ± values denote sentence-wise bootstrap 95% confidence intervals

Figure 20

Table 14. The size and performance of mixture models varying the amount of training data

Figure 21

Table 15. The size and performance of pruned mixture models

Figure 22

Table 16. The performance of the LARGE pruned model set using different number of prediction slots. ± values denote sentence-wise bootstrap 95% confidence intervals