A Survey on Thai Input Methods on Smartphones <s> Word Candidate Generation <s> This paper introduces an approach to improve Thai text entry on virtual keyboards. We propose a word completion on new keyboard layouts called vowel-separated keyboard layouts. Based on a Thai writing system, all vowels locate only four positions i.e. top, bottom, left and right of a consonant. Thus, we design our keyboard layouts by grouping vowels with the same position together and place the vowel group buttons into four positions of keyboard area. This should reduce the searching time when typing vowels. While all consonants still contain in the middle area and the consonant's arrangement is based on standard Thai layout named Kedmanee layout. We design two type of the vowel-separated layouts i.e. distance-based layout and big-button layout. We compare the performance of the proposed layout with the ordinary layout. Both proposed layouts yield better performance than the ordinary one especially the big-button layout. Most of test subjects prefer to use big-button layout because the layout look more simple and they can easily find the character they want. <s> BIB001 </s> A Survey on Thai Input Methods on Smartphones <s> Word Candidate Generation <s> This paper presents an approach to improve the correctness for Thai text inputting via virtual keyboard on touch screen mobile phones. The proposed approach is to generate candidate character based on statistical model from bivariate analysis of pre-collected coordinate data and apply the character trigram model to each candidate character sequence. From user's touch positions, a set of candidate characters with high position-based probability is generated. Then, the character trigram model is applied to each generated candidate characters sequence. For each character sequence, a probability is computed from the weighted combination of position-based and character trigram models. In the end, the character sequence with the highest probability is selected to be the most appropriate sequence. Experiments were conducted to compare the typing accuracy between an ordinary Thai virtual keyboard and our proposed algorithm using the same Thai keyboard layout. Results demonstrate that the proposed algorithm provides the improvement in the text entry accuracy in both character levels and word levels. <s> BIB002
Word candidate generation is a process that generates a list of word candidates from a number of character candidates. It can be defined in form of a function as: where S is a set of character sequences, and W is a set of known words. A list of word candidates can be generated by matching the character sequence in the character buffer against words in the known word list, or applying a language model to construct a list of possible words. The retrieved words are ranked based on a ranking technique before showing to the user. Here are the techniques proposed for constructing a Fig. 9 Word candidate generation in BIB002 . word list in Thai input methods. Generating word candidates based on character ngram model is a technique used in BIB002 . A word candidate is formed in this technique by connecting the character candidates in the Character Buffer. Figure 9 shows how the word candidates are constructed. Here, x t , y t denotes the tth touch coordinate, c ti is the ith character candidate from the tth coordinate. A word candidate is generated from selecting one character candidate from each touch coordinate in the buffer. These word candidates are evaluated and filtered by the character n-gram model. For example, a character trigram model can be used to evaluate a word candidate, i.e.: where c 1 c 2 . . . c n represents a word candidate forming from a sequence of characters, c i is the ith character in the word candidate, and P(c i |c i−2 c i−1 ) is the trigram probability of the ith character. Generating word candidates based on known word list is an approach that generates a list of candidates from a sequence of character candidates and a list of known words. This approach is performed by applying an approximate string matching algorithm  to select a list of words similar to the input sequence of characters. This approach has been applied in various Thai input methods since it helps reduce the number of keystrokes to input a word. Janpinijrut et al. BIB001 applied this approach with the vowel-separated keyboard layout by using a sequence of character candidates as a prefix to match the words in the known word list. The experimental results have suggested that the approach is able to reduce the number of keystrokes required to input a word. Generating word candidates from only consonants is a technique proposed by Ballungpattama et al  ,  for a consonant-only Thai input method. This technique aims to generate a list of words from a sequence of Thai consonants without any vowels. It is done by applying the Boolean retrieval technique. The known word list is kept in the system using a pair of consonants as the index. Each pair is composed of a consonant from the first consonant in a word, and Fig. 10 Example of the data structure used in consonant-only keyboard. a consonant in that word. Figure 10 shows an example of a small word list. Given a sequence of consonants, a list of word candidates can be retrieved by (1) forming a set of indexes from the input sequence, (2) retrieving lists of words from the set of indexes, and, (3) intersecting the retrieved lists. The technique is able to generate a list of word candidates from a sequence of consonants. The input sequence needs to start with the first consonant in the intended word, and is followed by a number of consonants in the word in any order. The technique allows users to input words in the form of acronyms/abbreviations since the users may decide to omit some consonants. However, unknown words cannot be handled by the technique since the keyboard does not provide all the available Thai characters.