WO2008120033A1 - Prioritizing words based on content of input - Google Patents

Prioritizing words based on content of input Download PDF

Info

Publication number
WO2008120033A1
WO2008120033A1 PCT/IB2007/001400 IB2007001400W WO2008120033A1 WO 2008120033 A1 WO2008120033 A1 WO 2008120033A1 IB 2007001400 W IB2007001400 W IB 2007001400W WO 2008120033 A1 WO2008120033 A1 WO 2008120033A1
Authority
WO
WIPO (PCT)
Prior art keywords
text
dictionary
adaptive predictive
priority list
predictive text
Prior art date
Application number
PCT/IB2007/001400
Other languages
French (fr)
Inventor
John Rieman
Minna Hekanaho
Minna Koutonen
Tero Rantonen
Original Assignee
Nokia Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Corporation filed Critical Nokia Corporation
Publication of WO2008120033A1 publication Critical patent/WO2008120033A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Definitions

  • the present invention relates to methods for predicting and prioritizing words using a predictive text system with an adaptive dictionary in a portable apparatus, a rendering application, a portable apparatus comprising a display and means for navigating, a system, and a computer-readable medium having computer-executable components.
  • computing and communication devices such as personal computers,0 palmtop computers, and some mobile phones have been equipped with a full QWERTY keyboard for alphanumeric text entry
  • many other computing and communication apparatuses such as mobile phones, PDAs, and PDTs, are equipped with a limited or no keyboard. Entering text into computing and communication apparatuses with a limited or no keyboard can be done in5 several ways. If the apparatus have no keyboard or keys the text can be entered by either writing the text on a special surface, e.g. the screen of the apparatus, with a stylus, or by tapping on a virtual keyboard displayed on the apparatuses screen.
  • Text entering using a keyboard with a limited number of keys is often done by pressing a key a varying number of times, generally0 within a limited period of time, to input a specific letter.
  • This technique is known as multi-tap.
  • entering text with multi-tap or with a stylus is quite cumbersome for the user, especially if large quantities of text are going to be entered. Therefore, a number of text entering systems have been developed to facilitate and to speed-up the text entering. These systems, often referred to as single-tap system with predictive text technologies, uses predictive letter patterns to allow the user to enter text by press the keys as few times as possible.
  • the predictive text system uses a predictive text dictionary to "intelligently guess" which character(s) or word(s) the user is about to enter.
  • the predictive text dictionary essentially contains a list of character strings, words, acronyms, abbreviations, etc. that is used to predict which word that is being entered by the user.
  • the predictive text system may then select the best match(es), i.e. making a priority list of matching words, based on information about word frequency in the used language or word frequency in the users idiolect.
  • this does not reflect the vocabulary changes in a person since the vocabulary used in these messages services may vary quite a lot depending such things as topic, physical and social context, recipient etc..
  • an objective of the invention is to solve or at least reduce the problems discussed above.
  • an objective is to provide a user friendly and efficient text prediction system based on an adaptive predictive text dictionary.
  • a method for a portable apparatus comprising enabling said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary, prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list, displaying of said priority list, enabling selection from said displayed priority list, and enabling updating of said adaptive predictive text dictionary based on said selection.
  • the method may comprise updating of said adaptive predictive text dictionaries based on any of the group: analysis of said inputted text, analysis of said selected text in said priority list, and statistics based on said inputted text and selected words in said displayed priority list.
  • the method may comprise initialization of the adaptive predictive text dictionary, wherein said initialization determines at least one of the group comprising: current user, current application, and recipient.
  • the method may comprise communicating by wire or wirelessly with an external server via a network for acquiring said dictionary.
  • the method may comprise storing said dictionaries via said network and retrieving said dictionaries from said external server.
  • a rendering application for a portable apparatus comprising a display and navigation means, said application arranged to cause enabling of said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary, prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list, displaying of said priority list, enabling selection from said displayed priority list, and enabling updating of said adaptive predictive text dictionary based on said selection.
  • an apparatus comprising a display and a comparator arranged to receive a user input, wherein said user input comprise of a text input, compare inputted text with text in an adaptive predictive text dictionary, a processor arranged to prioritize and list matches of an output of said comparator in a priority list, wherein said display is arranged to, under control of said processor to display said priority list, and wherein said user input selection from said displayed priority list, wherein said processor is arranged to update said adaptive predictive text dictionary based on said selection.
  • a computer program product comprising program code means stored in a computer-readable medium, the program code means being adapted to enable said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary, prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list, displaying of said priority list, enabling selection from said displayed priority list, and enabling updating of said adaptive predictive text dictionary based on said selection.
  • a system comprising an apparatus according to the third aspect of the invention, and a dictionary server arranged to provide the associated dictionary for downloading.
  • the system may comprise a communications network, wherein the dictionary server and the apparatus is in communication via the communications network.
  • a user interface comprising a display, and an input receiver, wherein said user interface is arranged to enable a portable apparatus for text input where said inputted text are compared with text in an adaptive predictive text dictionary, and where matches of said comparisons are prioritized and listed in a priority list, and to display said priority list in said display.
  • a renderer should be interpreted as a functional block applicable to any communication device, such as a mobile phone, capable of performing at least one of the following tasks; inputting, prioritizing, displaying, enabling, selecting, and updating.
  • Fig. 1 shows a mobile communication apparatus according to an embodiment of the present invention
  • Fig. 2 shows a flow chart describing a common character input process using a predictive text dictionary
  • Fig. 3 shows a display view of a handheld communication apparatus
  • Fig. 4 shows a flow chart describing a character input process using an adaptive predictive text dictionary
  • Fig. 5 shows a flow chart describing an initialization process
  • Fig. 6 shows the dictionary distribution in a communication device, a network, and a externally stored dictionary
  • Fig. 7 shows several dictionary update processes
  • Fig. 8 schematically illustrates a system according to an embodiment of the present invention
  • 0 Fig. 9 illustrates a computer readable medium according to an embodiment of the present invention
  • Fig. 10 illustrates a user interface of the present invention. Detailed description of preferred embodiments
  • Some predictive text systems may also change the priority of the predicted word(s) for example if the user frequently selecting the word 'me' instead of the alternative 'of. However, the priority is based on long-term usage of a single user neglecting sudden changes. 5
  • the priority of the suggested words may also be based on which application it is used. For example when writing SMS, one priority of the matched words are given while another priority is given when text is entered into an e-mail.
  • the predictive text systems do not take into account when a single user changes topic, physical and social context, and the0 recipient of the text. Neither does the predictive text system take into account if several persons with different language styles, for example mother and daughter, use the same mobile device.
  • Figure 1 shows a mobile communication apparatus 100 comprising a0 display 102 and means 104 for navigating among items (not shown) displayed in a display area 102.
  • the navigation means 104 can be a rotating input, a joystick, a touch pad, but can also be implemented using a touch sensitive display, wherein the displayed items directly can be tapped by a user for selection, or be voice activated via a headset or a built-in microphone.
  • the mobile communication apparatus can also comprise other elements normally present in such an apparatus, such as a keypad 106, a speaker 108, a microphone 110, a processor (not shown), a memory (not shown), etc.
  • Figure 2 shows a flow chart illustrating a common process of entering text in a handheld communication device, such as a mobile phone, with a predictive text system 200.
  • Text can, in this case, comprise any combination of the group: an alphanumerical character, a group of alphanumerical characters (forming words and sentences), a symbol(e.g. Chinese symbols), or a group of symbols.
  • the alphanumerical characters can be entered 202 using a stylus, writing or tapping the characters on the screen or on a dedicated area of the apparatus, or by using all or some of the keys on the handheld communication apparatuses full or limited keyboard.
  • the last entered alphanumerical character is compared 212 with a predetermined and/or user configurable end-character such as a for example a 'space' character. If the entered 202 alphanumeric character is an end- character 212 the input of that specific character, group of characters, word, phrase, slang, abbreviation, etc. (hereinafter referred to as a word) is complete and the text entry ends 214. If the user continues to enter alphanumerical characters after the end-character, i.e. begins to input a new word, the process restarts 201 , else the user have entered all the words to complete a message and terminates the input process.
  • a predetermined and/or user configurable end-character such as a for example a 'space' character.
  • the character entry is continued and the alphanumeric character, either by itself or in combination with other previous added characters forming a word or a part of a word, are compared in 204 with characters, words, phrases, abbreviations, slang, etc. stored in a predictive text dictionary 206.
  • the content of the dictionary 206 can be user- configurable in such way that words can be added/removed, new dictionaries can be downloaded and replace the dictionary in the handheld apparatus.
  • the statistics in 210 stores information about a languages word frequency and/or the users long-term word frequency. The statistics will provide useful information in the comparison (prediction) process 204.
  • the statistics 210 may be connected to the predictive text dictionary so if the dictionary changes the statistics also changes, e.g. if a new predictive text dictionary in another language is downloaded new statistics for that language is also downloaded.
  • Figure 3 illustrates an example of a common display view in a handheld communication apparatus 300, running a predictive text system, comprising a general status indication section 302, a softkey bar 306 and a general display area 304.
  • the general status indication section 302 can for example include symbols for battery status, reception quality, speaker on/off, present mode, clock time, etc.
  • the status indication section is not in any way limited to only include these symbols. Thus, other symbols in any shape, form or color can occur.
  • the softkey bar 306, situated at the bottom of the display view, is operable using the navigation means 104 mentioned in conjunction with Fig. 1.
  • the functions of these softkeys are not limited by the functions indicated in the figure.
  • the preferred function of the general display area 304 residing between the status indication section 302 at the top and the softkey bar 306 at the bottom, is to display information from running applications in the handheld communication apparatus.
  • the display area 304 also comprise a scroll bar 308, a suggestion list 314, inputted characters 310, and a cursor 312 showing where next character, word, phrase, abbreviation, etc. can be inputted.
  • Figure 3 shows an example of how a common predictive text system, such as described in figure 2, operates.
  • a user has entered the characters 'D' and 'e' 310 which together with a cursor 312 is shown at the top of the display views display area 304.
  • the last entered character is 'e' which in this case is not an end-character.
  • the two characters 'D 1 and 'e' forms the word 'De' which is compared against the words and the letter combinations stored in the predictive text dictionary. Several matches are found and they are displayed to the user in a suggestion list 314.
  • the displayed suggestions are 'De', 'Fe', and 'Dear' where 'De' is rated the most likely word (highest priority) and therefore displayed first in the list.
  • 'Fe' is rated second most likely (priority 2) and 'Dear' rated third most likely (priority 3). Since the user in this example wants to enter the word 'Dear', the user have to navigated amongst the suggestions down to the suggestion 'Dear', indicated by the black cursor bar 316. The user selects 'Dear' by operating 'Select' in the softmenu and 'De' is replaced by 'Dear' 318 as shown in the figure.
  • the user can continue to enter characters, for example a 's' to complete the word 'Dears' or enter a 'space', indicating that the word is complete and a new word is going to be entered, thus restarting the inputting and prediction process as described in conjunction with figure 2.
  • One of the problems becomes clear in the example in Figure 3 where the user wants to enter the word 'Dear' into a message.
  • the predicted word 'Dear' is placed third on the suggestions list and not first as it should. This shows a clear problem with the prioritizing of the predicted words. Navigating and selecting the third alternative in the suggestions list requires nearly as many key actuations as entering the letters 'a' and V manually which is clearly not beneficial. If the predictive text system had taken into account aspects such as current application, recipient, current user etc. it would have placed the word 'Dear' first in the suggestions list.
  • Figure 4 shows a flow chart illustrating an embodiment of the present invention comprising a process of entering text in a handheld communication device, such as a mobile phone, with an adaptive predictive text system 400.
  • the alphanumerical characters can be entered 402 using a stylus, writing or tapping the characters on the screen or a dedicated area of the apparatus, or by using all or some of the keys on the handheld communication apparatuses full or limited keyboard.
  • the last entered alphanumerical character is compared 404 with a predetermined or user configurable end-character such as for example a 'space' character. If the entered 402 alphanumeric character is an end- character 404 the input of that specific character, characters, word, phrase, slang, abbreviation, etc. is completed and the text entry is ended 418. If the user continues to enter alphanumerical characters after the end-character, i.e. begins to input a new word, the process restarts 401 , else the user have entered all the words to complete a message and terminates the input process.
  • the wanted word is always displayed at the top of the suggestion list.
  • the user is then able to choose any of the available words from the displayed suggestions list using the navigation means 104 mentioned in conjunction with fig. 1.
  • the text input process is continued 402 regardless of if the user chooses a word from the displayed suggestion list 408 or just continues to input new characters 402.
  • the input process continuous until an 'end character' is detected 404 or the text entry is terminated by the user.
  • the current predictive text dictionary 412 is and adaptive dictionary meaning that the content of the dictionary is subject for continuous change and adaptation depending on the vocabulary of the user, current application, recipient, previous entered text, current context, etc..
  • the system will initialize 420, and the initialization process 420 will provide the current predictive text dictionary 412 with all or some of the parameters; user identification, application identification, and recipient identification. These parameters will provide help in using the correct predictive text dictionaries at the starting point for the prediction 412 and comparison 406 of the first entered characters or words.
  • the initialization process 420 is described in more detail in figure 5.
  • Static statistics 410 such as a languages word frequency are one type used while a users word frequency and word frequency of specific categories of words belonging for example to a specific application, recipient etc. are another more dynamic type of statistics that can be utilized.
  • Static statistics 410 such as a languages word frequency are one type used while a users word frequency and word frequency of specific categories of words belonging for example to a specific application, recipient etc. are another more dynamic type of statistics that can be utilized.
  • the statistics will provide a basis for the determination of if the current dictionary needs to be modified in some way to better predict the users text input.
  • each word can be tagged to identify for instance how many times the word have been used, the degree of formality, inappropriate words, preferred words, words associated with specific recipients or a context.
  • the tags can, if wanted, be user-configurable so for instance a preferred word can be set as non-preferred if wanted.
  • the statistics 410 along with information of which current predictive text dictionary(ies) 412 that are active and the entered text 402, are analyzed in 414 to determine if the current dictionary(ies) that is used is sufficient or if it needs to be updated/modified to better predict the users text input. If the analysis comes to the conclusion that the current dictionary(ies) is deficient in some way, the whole or parts of the dictionary(ies) are modified by adding or removing character combinations, words, abbreviations, phrases, etc.. Figure 6 and 7 will describe the dictionaries and the modification process in more detail. If the analysis can't come to a conclusion the parameters can be sent either wirelessly or by wire, depending how the handheld communication device is currently connected to a communications network 416, to an external server with more computational power for further analysis 416.
  • Figure 5 shows a flow chart describing an embodiment of the present invention comprising an initialization process of the predictive text dictionary system with an adaptive dictionary 500.
  • an initialization process 500 is started to determine the optimal predictive text dictionary to use in the beginning of the dictionary adaptation process.
  • a handheld communication device can be shared amongst a plurality of users such as for example a family with the 3 family members; a father, a mother, and a daughter. Since every person in the family uses different vocabulary and has different styles when conversing via text messages, it is helpful to identify who the current user of the device is. In this way that users specific dictionary, or person specific words, can be loaded or added to the current dictionary.
  • the current user of the handheld mobile device is identified. If the handheld communication device contains several user accounts, e.g. one for each family member, the active user, the family member currently using the handheld device, can be identified by detecting which user account that is currently active.
  • statistics 508 may optionally be used to "intelligently guess" who currently is using the handheld communication device.
  • the statistics 508 can for instance provide information such as that 'User V has a high probability of using the handheld device between 6pm to 10pm on a week day, while 'User 2' is more likely to use the handheld device between 10am to 1 pm on weekends, so if it is 11 :23am a Saturday it is most likely 'User 2' who is using the hand held communication device.
  • Other statistics such as basic user frequency, which applications that have been used up to now, etc..
  • the current running application(s) such as SMS, e-mail, chat, etc.
  • the user may use one vocabulary style when writing an SMS and another when chatting.
  • the recipient of the text message is identified. Determining the recipient 510 is also helpful in loading the right context-based dictionary. For example if the user has started a SMS application the recipient of the SMS is analyzed. If for example the recipient is the grandmother a context-based dictionary with respectful and loving words, phrases, etc. is loaded since they are the most likely words to be used.
  • the initialization process 420 provides the information to the current predictive text dictionary 412 in Figure 4, which loads the proper dictionary(ies).
  • the current predictive text dictionary 412 will have 1 to 3 parameters (user, application, and recipient) coming from the initialization process 500 to help in determine the right predictive text dictionary(ies), and to set the right priority among the matches which later are displayed in the suggestion list 408 in Figure 4.
  • the handheld device 600 in Figure 6 may have, depending on available storage, one or more dictionaries stored 604 in the devices memory
  • a full dictionary 603 (hereinafter called a full dictionary) together with several smaller customized dictionaries 604 can be stored in the device at the same time. If the storage size is small a reduced full dictionary or only one or more customized dictionaries 604 may be stored at the same time in the device. If the storage size is small it is important that the dictionary in the device is tailored to the user so no unnecessary words (i.e. words never or seldom used by the user) in the dictionary take up valuable storage space.
  • the full dictionary 603 stores a multitude of character combinations and words from every possible subject while a custom dictionary focus on just one or a few particular areas.
  • a custom dictionary 604 can for instance be a user dictionary comprised of words commonly used by a user or all words from one time instance to another, e.g. from the day the device was first used by the user until current time and day.
  • a custom dictionary can also comprise of the words used when a specific application has been used, for example words used when composing e-mails or SMS. Dictionaries can also be customized comprising words depending on context, words not appropriate (e.g. swear words), special interests (e.g. bird watching, computing, sports, beer, etc.), time and date, age group, recipient (e.g. friend, grandmother, co- worker, etc.).
  • the comparison 406 in Figure 4 fails to identify one or more characters or words entered by a user, it may be time to update or replace the current predictive text dictionary 412 used in the prediction process.
  • the analysis 414 of the entered characters and words in 402 will together with the statistics 410 information will detect if the current dictionary in 412 will need to be updated.
  • the reasons for changing the current dictionary can be many. It could for example be the first time the handheld device is ever used; the user has changed vocabulary, another user that the ordinary user uses the handheld device, a new recipient (e.g. started at a new word), or any other reason for changing vocabulary. Another reason to change the current dictionary can for instance be when it has expired.
  • a dictionary can be set to expire at a certain point in time for example when the handheld device becomes active (turned off), turns into sleep mode, turns into Screensaver mode, when an application is terminated, an SMS, email or other text application is ended, etc.. It can also be set to expire after a certain amount of time, on a specific date, or after running a certain application a specific number of times, or when the memory is full and another dictionary downloaded to the device. This avoids that the dictionary becomes irrelevant or stale due to the user getting older (matures and changes vocabulary) or the user and/or the context changes. Over time the user or users may change their behavior and degree of formality in their text correspondence.
  • the analysis process can be user-configured to continue analyzing for a certain amount of time (e.g. two or more entered words, one or more inputted sentences, etc.). It can also be configured to send the analysis material to an external server 416 having a much greater database and more computational power than the handheld device. The external server will send back instructions and if needed additional dictionaries to the handheld device.
  • Figure 6 illustrates how the dictionaries relate to each other.
  • the communication device 600 can hold 602 one current dictionary 603 used as the current predictive text dictionary and, if possible, several smaller customized dictionaries 604.
  • the handheld device 600 can communicate with an external server, via a network 606, storing a multitude of dictionaries 605.
  • the update process of the current dictionary can either be done by adding-on, as shown in 718 in Figure 7, a dictionary by copying or moving a whole or a part 720 of a stored custom dictionary 722 into the current dictionary 716, or by replacing the whole or a part 714 of the current dictionary 710 with a whole or a part 712 of a custom dictionary 714, or by using a union 706 of several dictionaries for example the current dictionary 702, a first custom dictionary 704, and a second custom dictionary 708, as shown in figure 7.
  • the custom dictionaries can be either internally stored as shown in 604 in Figure 6 or externally stored 605.
  • the internally stored dictionaries 604 can if wanted, be in constant change depending on the users change in vocabulary etc..
  • the dictionaries can be sent 606 to an external storage for safekeeping.
  • the external storage can either be the same as the server 605 doing the analysis and storing external dictionaries as discussed above or a separate personal storage place. This will also save precious internal storage in the handheld communication device since not all custom dictionaries are needed to be stored internally.
  • a system architecture for managing a system 800 is shown in Fig. 8.
  • a Home Location Register (HLR) 802 contains a database (not shown) including relevant subscriber information for provision of telecommunication service.
  • a CCITT specified network 804 interconnects the individual parts of the system 800.
  • a dictionary gateway 806 is a switching unit routing a requested dictionary to a mobile communication apparatus 808-812.
  • a Dictionary Service Center 814 (DSC) and the dictionary gateway 806 handle and routes the dictionaries between the DSC 814 and the network 804.
  • the dictionaries are routed to the mobile communication apparatuses 808-812 via a Mobile Switching Center (MSC) 816 to a Base Station Controller (BSC) 817 and a Base Transceiver Station (BTS) 820, 821 , or a Radio Network Controller (RNC) 818 and a Node B 822.
  • MSC Mobile Switching Center
  • BSC Base Station Controller
  • BTS Base Transceiver Station
  • RNC Radio Network Controller
  • the dictionaries are routed to the mobile communication apparatuses 808-812 via a Serving GPRS Support Node (SGSN) 826, 828 to the BSC 817 and the BTS 820, 821 , or the RNC 818 and the Node B 822, respectively.
  • SGSN Serving GPRS Support Node
  • the BTS 820, 821 or the Node B 822 establish the air connection to the mobile communication apparatuses 808-812.
  • a network operator or other third party company handling a dictionary server 824 could offer a dictionary service function where dictionaries associated with certain applications can be purchased.
  • a network operator may have a dictionary server 824 supporting a feature where the user may send a dictionary request from his mobile communication apparatus 808-812 to the dictionary server 824 upon using a certain application of the mobile communication apparatus, e.g. a gaming or messaging application.
  • the invention can be computer-implemented, i.e. the media handling is performed on a general or dedicated computerized apparatus 901 , such as a personal computer, a mobile phone, a digital camera, a personal digital assistant, a media player, or other similar apparatus. Instructions for performing the invention can then be executed by the apparatus. These instructions can be loaded into the apparatus 901 from a computer-readable medium 902, as exemplary illustrated in Fig. 9, having a data structure stored.
  • the data structure comprises the control instructions, which upon execution causes the apparatus to perform any of the embodiments of the present invention as described above.
  • Figure 10 illustrates a user interface (Ul) 1001 in a portable apparatus having an input interface 1002, which as described in above embodiments can be actuated by a user, and a display interface 1004 for displaying information to the user as described in the above embodiments of the present invention.
  • Ul user interface
  • FIG. 10 illustrates a user interface (Ul) 1001 in a portable apparatus having an input interface 1002, which as described in above embodiments can be actuated by a user, and a display interface 1004 for displaying information to the user as described in the above embodiments of the present invention.
  • the embodiments of the present invention have been described with specificity to handheld communication devices, other types of computing devices with which the embodiments can be used will occur to those skilled in the art.
  • a personal computer can benefit from the invention in the same manner as the handheld communication device.
  • the illustrated embodiments discusses the use of user-configurability, the user- configurability may be implicit or provided in some other manner than described above.

Abstract

A mobile communication apparatus comprising means for enabling the mobile communication apparatus for text input, comparing inputted text with alphanumerical characters and words in an adaptive predictive text dictionary, and prioritizing and listing matches in a priority list, and displaying the priority list to a user. Further enabling selection among matches on the displayed priority list, and enabling updating of the adaptive predictive text dictionary. A corresponding application, apparatus, system, user interface and a computer program product is also disclosed.

Description

PRIORITIZING WORDS BASED ON CONTENT OF INPUT
Technical field
The present invention relates to methods for predicting and prioritizing words using a predictive text system with an adaptive dictionary in a portable apparatus, a rendering application, a portable apparatus comprising a display and means for navigating, a system, and a computer-readable medium having computer-executable components.
Background of the invention In our modern and busy world people are constantly on the move and therefore have lesser and lesser time to communicate with each other in realtime, e.g. via voice. People tend therefore to more and more converse via text messages using different messaging services such as short message service (SMS), e-mails, chats, blogs, instant messaging, etc.. 5 One popular way of communicating these messages, when on the move, is by using some kind of handheld communication device such as a mobile phone, a PDA, a palmtop computer, etc.. Entering text messages into these handheld communication devices is often a cumbersome work. While some computing and communication devices, such as personal computers,0 palmtop computers, and some mobile phones have been equipped with a full QWERTY keyboard for alphanumeric text entry, many other computing and communication apparatuses, such as mobile phones, PDAs, and PDTs, are equipped with a limited or no keyboard. Entering text into computing and communication apparatuses with a limited or no keyboard can be done in5 several ways. If the apparatus have no keyboard or keys the text can be entered by either writing the text on a special surface, e.g. the screen of the apparatus, with a stylus, or by tapping on a virtual keyboard displayed on the apparatuses screen. Text entering using a keyboard with a limited number of keys is often done by pressing a key a varying number of times, generally0 within a limited period of time, to input a specific letter. This technique is known as multi-tap. However, entering text with multi-tap or with a stylus is quite cumbersome for the user, especially if large quantities of text are going to be entered. Therefore, a number of text entering systems have been developed to facilitate and to speed-up the text entering. These systems, often referred to as single-tap system with predictive text technologies, uses predictive letter patterns to allow the user to enter text by press the keys as few times as possible.
The predictive text system uses a predictive text dictionary to "intelligently guess" which character(s) or word(s) the user is about to enter. The predictive text dictionary essentially contains a list of character strings, words, acronyms, abbreviations, etc. that is used to predict which word that is being entered by the user. When entering text using multi-tap or single-tap there may be several words that match a given keystroke(character)sequence. The predictive text system may then select the best match(es), i.e. making a priority list of matching words, based on information about word frequency in the used language or word frequency in the users idiolect. However, this does not reflect the vocabulary changes in a person since the vocabulary used in these messages services may vary quite a lot depending such things as topic, physical and social context, recipient etc.. However, there is a need for improving features related to text input as described above.
Summary of the invention
In view of the above, an objective of the invention is to solve or at least reduce the problems discussed above. In particular, an objective is to provide a user friendly and efficient text prediction system based on an adaptive predictive text dictionary.
According to a first aspect of the present invention, there is provided a method for a portable apparatus, comprising enabling said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary, prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list, displaying of said priority list, enabling selection from said displayed priority list, and enabling updating of said adaptive predictive text dictionary based on said selection.
The method may comprise updating of said adaptive predictive text dictionaries based on any of the group: analysis of said inputted text, analysis of said selected text in said priority list, and statistics based on said inputted text and selected words in said displayed priority list.
The method may comprise initialization of the adaptive predictive text dictionary, wherein said initialization determines at least one of the group comprising: current user, current application, and recipient. The method may comprise communicating by wire or wirelessly with an external server via a network for acquiring said dictionary.
The method may comprise storing said dictionaries via said network and retrieving said dictionaries from said external server.
According to a second aspect of the present invention, there is provided a rendering application for a portable apparatus comprising a display and navigation means, said application arranged to cause enabling of said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary, prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list, displaying of said priority list, enabling selection from said displayed priority list, and enabling updating of said adaptive predictive text dictionary based on said selection.
According to a third aspect of the present invention, there is provided an apparatus comprising a display and a comparator arranged to receive a user input, wherein said user input comprise of a text input, compare inputted text with text in an adaptive predictive text dictionary, a processor arranged to prioritize and list matches of an output of said comparator in a priority list, wherein said display is arranged to, under control of said processor to display said priority list, and wherein said user input selection from said displayed priority list, wherein said processor is arranged to update said adaptive predictive text dictionary based on said selection.
According to a fourth aspect of the present invention, there is provided a computer program product comprising program code means stored in a computer-readable medium, the program code means being adapted to enable said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary, prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list, displaying of said priority list, enabling selection from said displayed priority list, and enabling updating of said adaptive predictive text dictionary based on said selection.
According to a fifth aspect of the present invention, there is provided a system comprising an apparatus according to the third aspect of the invention, and a dictionary server arranged to provide the associated dictionary for downloading.
The system may comprise a communications network, wherein the dictionary server and the apparatus is in communication via the communications network. According to a sixth aspect of the present invention, there is provided a user interface comprising a display, and an input receiver, wherein said user interface is arranged to enable a portable apparatus for text input where said inputted text are compared with text in an adaptive predictive text dictionary, and where matches of said comparisons are prioritized and listed in a priority list, and to display said priority list in said display.
The second, third, fourth, fifth and sixth aspects of the present invention may be combined in any way with the features of the first aspect of the present invention. In the above description a renderer should be interpreted as a functional block applicable to any communication device, such as a mobile phone, capable of performing at least one of the following tasks; inputting, prioritizing, displaying, enabling, selecting, and updating.
Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to "a/an/the [element, device, component, means, step, etc]" are to be interpreted openly as referring to at least one instance of said element, device, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated. Other objectives, features and advantages of the present invention will appear from the following detailed disclosure, from the attached dependent claims as well as from the drawings.
Brief description of the drawings
The above, as well as additional objects, features and advantages of the present invention, will be better understood through the following illustrative and non-limiting detailed description of preferred embodiments of the present invention, with reference to the appended drawings, where the same reference numerals will be used for similar elements, wherein:
Fig. 1 shows a mobile communication apparatus according to an embodiment of the present invention; and
Fig. 2 shows a flow chart describing a common character input process using a predictive text dictionary; and Fig. 3 shows a display view of a handheld communication apparatus; and
Fig. 4 shows a flow chart describing a character input process using an adaptive predictive text dictionary; and
Fig. 5 shows a flow chart describing an initialization process; and Fig. 6 shows the dictionary distribution in a communication device, a network, and a externally stored dictionary; and
Fig. 7 shows several dictionary update processes; and
Fig. 8 schematically illustrates a system according to an embodiment of the present invention; and 0 Fig. 9 illustrates a computer readable medium according to an embodiment of the present invention; and
Fig. 10 illustrates a user interface of the present invention. Detailed description of preferred embodiments
To better understand the problem addressed above a brief introduction is given.
When conversing in a business context formal words and expressions are often used, when conversing with acquaintances, elderly and certain family members (grandmother, grandfather etc.) informal but polite and respectful words and expressions are used, while casual and some time even profound words may be used with close friends and the immediate family.
Some predictive text systems may also change the priority of the predicted word(s) for example if the user frequently selecting the word 'me' instead of the alternative 'of. However, the priority is based on long-term usage of a single user neglecting sudden changes. 5 The priority of the suggested words may also be based on which application it is used. For example when writing SMS, one priority of the matched words are given while another priority is given when text is entered into an e-mail. However, the predictive text systems do not take into account when a single user changes topic, physical and social context, and the0 recipient of the text. Neither does the predictive text system take into account if several persons with different language styles, for example mother and daughter, use the same mobile device. When the priority of the predicted words is wrong it will take unnecessary long time to navigating through the list matching words to be able to select the right word. 5 The approaches discussed above often results in that the text predictive system works unsatisfactory and to the user becomes unusable and is tumed-off.
Figure 1 shows a mobile communication apparatus 100 comprising a0 display 102 and means 104 for navigating among items (not shown) displayed in a display area 102. The navigation means 104 can be a rotating input, a joystick, a touch pad, but can also be implemented using a touch sensitive display, wherein the displayed items directly can be tapped by a user for selection, or be voice activated via a headset or a built-in microphone.
The mobile communication apparatus can also comprise other elements normally present in such an apparatus, such as a keypad 106, a speaker 108, a microphone 110, a processor (not shown), a memory (not shown), etc.
Figure 2 shows a flow chart illustrating a common process of entering text in a handheld communication device, such as a mobile phone, with a predictive text system 200. Text can, in this case, comprise any combination of the group: an alphanumerical character, a group of alphanumerical characters (forming words and sentences), a symbol(e.g. Chinese symbols), or a group of symbols. The alphanumerical characters can be entered 202 using a stylus, writing or tapping the characters on the screen or on a dedicated area of the apparatus, or by using all or some of the keys on the handheld communication apparatuses full or limited keyboard.
The last entered alphanumerical character is compared 212 with a predetermined and/or user configurable end-character such as a for example a 'space' character. If the entered 202 alphanumeric character is an end- character 212 the input of that specific character, group of characters, word, phrase, slang, abbreviation, etc. (hereinafter referred to as a word) is complete and the text entry ends 214. If the user continues to enter alphanumerical characters after the end-character, i.e. begins to input a new word, the process restarts 201 , else the user have entered all the words to complete a message and terminates the input process.
If no end-character is detected 212 the character entry is continued and the alphanumeric character, either by itself or in combination with other previous added characters forming a word or a part of a word, are compared in 204 with characters, words, phrases, abbreviations, slang, etc. stored in a predictive text dictionary 206. The content of the dictionary 206 can be user- configurable in such way that words can be added/removed, new dictionaries can be downloaded and replace the dictionary in the handheld apparatus. The statistics in 210 stores information about a languages word frequency and/or the users long-term word frequency. The statistics will provide useful information in the comparison (prediction) process 204. The statistics 210 may be connected to the predictive text dictionary so if the dictionary changes the statistics also changes, e.g. if a new predictive text dictionary in another language is downloaded new statistics for that language is also downloaded.
If one or several, complete or partial, matches between an entered word(s) 202 and words in the dictionary 206 are detected, they are made available, e.g. displayed on the screen of the handheld communication apparatus as a list of suggestions, to the user 208. If several matches are found the long-term statistics helps in deciding the prioritized order of the matches when displayed in the suggestions list. The user is then able to choose any of the available words from the displayed suggestions list using the navigation means 104 mentioned in conjunction with fig. 1. The character input process is continued 202 regardless of if the user chooses a word from the displayed list or continues to input characters. The input process continuous until an 'end character' is detected 212 or the character input is terminated by the user.
Figure 3 illustrates an example of a common display view in a handheld communication apparatus 300, running a predictive text system, comprising a general status indication section 302, a softkey bar 306 and a general display area 304. The general status indication section 302 can for example include symbols for battery status, reception quality, speaker on/off, present mode, clock time, etc. The status indication section is not in any way limited to only include these symbols. Thus, other symbols in any shape, form or color can occur. The softkey bar 306, situated at the bottom of the display view, is operable using the navigation means 104 mentioned in conjunction with Fig. 1. The functions of these softkeys are not limited by the functions indicated in the figure. The preferred function of the general display area 304, residing between the status indication section 302 at the top and the softkey bar 306 at the bottom, is to display information from running applications in the handheld communication apparatus. In our case the display area 304 also comprise a scroll bar 308, a suggestion list 314, inputted characters 310, and a cursor 312 showing where next character, word, phrase, abbreviation, etc. can be inputted.
Figure 3 shows an example of how a common predictive text system, such as described in figure 2, operates. A user has entered the characters 'D' and 'e' 310 which together with a cursor 312 is shown at the top of the display views display area 304. The last entered character is 'e' which in this case is not an end-character. The two characters 'D1 and 'e' forms the word 'De' which is compared against the words and the letter combinations stored in the predictive text dictionary. Several matches are found and they are displayed to the user in a suggestion list 314. The displayed suggestions are 'De', 'Fe', and 'Dear' where 'De' is rated the most likely word (highest priority) and therefore displayed first in the list. 'Fe' is rated second most likely (priority 2) and 'Dear' rated third most likely (priority 3). Since the user in this example wants to enter the word 'Dear', the user have to navigated amongst the suggestions down to the suggestion 'Dear', indicated by the black cursor bar 316. The user selects 'Dear' by operating 'Select' in the softmenu and 'De' is replaced by 'Dear' 318 as shown in the figure. The user can continue to enter characters, for example a 's' to complete the word 'Dears' or enter a 'space', indicating that the word is complete and a new word is going to be entered, thus restarting the inputting and prediction process as described in conjunction with figure 2.
A common predictive text system as the one depicted in Figure 2 and exemplified in Figure 3, suffers from the problems discussed in the above section describing the background of the invention. One of the problems becomes clear in the example in Figure 3 where the user wants to enter the word 'Dear' into a message. In the example the predicted word 'Dear' is placed third on the suggestions list and not first as it should. This shows a clear problem with the prioritizing of the predicted words. Navigating and selecting the third alternative in the suggestions list requires nearly as many key actuations as entering the letters 'a' and V manually which is clearly not beneficial. If the predictive text system had taken into account aspects such as current application, recipient, current user etc. it would have placed the word 'Dear' first in the suggestions list.
Figure 4 shows a flow chart illustrating an embodiment of the present invention comprising a process of entering text in a handheld communication device, such as a mobile phone, with an adaptive predictive text system 400. The alphanumerical characters can be entered 402 using a stylus, writing or tapping the characters on the screen or a dedicated area of the apparatus, or by using all or some of the keys on the handheld communication apparatuses full or limited keyboard. The last entered alphanumerical character is compared 404 with a predetermined or user configurable end-character such as for example a 'space' character. If the entered 402 alphanumeric character is an end- character 404 the input of that specific character, characters, word, phrase, slang, abbreviation, etc. is completed and the text entry is ended 418. If the user continues to enter alphanumerical characters after the end-character, i.e. begins to input a new word, the process restarts 401 , else the user have entered all the words to complete a message and terminates the input process.
If no end-character is detected 404 the character entry is continued and the alphanumeric character, either by itself or in combination with other previous added characters forming a word or a part of a word, are compared in 406 with characters, words, phrases, abbreviations, slang, etc. stored in the current predictive text dictionary 412.
If one or several, complete or partial, matches between an entered character or word(s) 402 and words in the current predictive text dictionary 412 are detected, they are made available, e.g. displayed on the screen of the handheld communication apparatus as a list of suggestions 408, to the user. Multiple matches are displayed in the suggestions list in a prioritized order with the most likely first at the top of the list. Words that are never or seldom used by a user, words that in a specific context is unlikely to be chosen, and words that in a context is deemed inappropriate words can be made to (user configurable) not appear in the suggestion list 408, thus making the list considerably shorter. These measures will speed-up the selection process considerably since the user does not have to navigate a long suggestions list to find the correct word. Optimally the wanted word is always displayed at the top of the suggestion list. The user is then able to choose any of the available words from the displayed suggestions list using the navigation means 104 mentioned in conjunction with fig. 1. The text input process is continued 402 regardless of if the user chooses a word from the displayed suggestion list 408 or just continues to input new characters 402. The input process continuous until an 'end character' is detected 404 or the text entry is terminated by the user.
The current predictive text dictionary 412 is and adaptive dictionary meaning that the content of the dictionary is subject for continuous change and adaptation depending on the vocabulary of the user, current application, recipient, previous entered text, current context, etc.. When the text entry process starts 401 the system will initialize 420, and the initialization process 420 will provide the current predictive text dictionary 412 with all or some of the parameters; user identification, application identification, and recipient identification. These parameters will provide help in using the correct predictive text dictionaries at the starting point for the prediction 412 and comparison 406 of the first entered characters or words. The initialization process 420 is described in more detail in figure 5.
There are two types of statistics 410 used in this text prediction process 400. Static statistics 410 such as a languages word frequency are one type used while a users word frequency and word frequency of specific categories of words belonging for example to a specific application, recipient etc. are another more dynamic type of statistics that can be utilized. Continues statistics of which words that are entered by the user, predicted and prioritized, and selected by a user is constantly recorded. The statistics will provide a basis for the determination of if the current dictionary needs to be modified in some way to better predict the users text input. To help in the prioritizing process each word can be tagged to identify for instance how many times the word have been used, the degree of formality, inappropriate words, preferred words, words associated with specific recipients or a context. The tags can, if wanted, be user-configurable so for instance a preferred word can be set as non-preferred if wanted.
The statistics 410 along with information of which current predictive text dictionary(ies) 412 that are active and the entered text 402, are analyzed in 414 to determine if the current dictionary(ies) that is used is sufficient or if it needs to be updated/modified to better predict the users text input. If the analysis comes to the conclusion that the current dictionary(ies) is deficient in some way, the whole or parts of the dictionary(ies) are modified by adding or removing character combinations, words, abbreviations, phrases, etc.. Figure 6 and 7 will describe the dictionaries and the modification process in more detail. If the analysis can't come to a conclusion the parameters can be sent either wirelessly or by wire, depending how the handheld communication device is currently connected to a communications network 416, to an external server with more computational power for further analysis 416.
Figure 5 shows a flow chart describing an embodiment of the present invention comprising an initialization process of the predictive text dictionary system with an adaptive dictionary 500. When a user starts a message application (401 in Figure 4) an initialization process 500 is started to determine the optimal predictive text dictionary to use in the beginning of the dictionary adaptation process.
A handheld communication device can be shared amongst a plurality of users such as for example a family with the 3 family members; a father, a mother, and a daughter. Since every person in the family uses different vocabulary and has different styles when conversing via text messages, it is helpful to identify who the current user of the device is. In this way that users specific dictionary, or person specific words, can be loaded or added to the current dictionary. In 501 the current user of the handheld mobile device is identified. If the handheld communication device contains several user accounts, e.g. one for each family member, the active user, the family member currently using the handheld device, can be identified by detecting which user account that is currently active. If the handheld communication device doesn't have several user accounts, all family members uses the same account, or a current user can't be determined 502, statistics 508 may optionally be used to "intelligently guess" who currently is using the handheld communication device. The statistics 508 can for instance provide information such as that 'User V has a high probability of using the handheld device between 6pm to 10pm on a week day, while 'User 2' is more likely to use the handheld device between 10am to 1 pm on weekends, so if it is 11 :23am a Saturday it is most likely 'User 2' who is using the hand held communication device. Other statistics such as basic user frequency, which applications that have been used up to now, etc..
In 506 the current running application(s) such as SMS, e-mail, chat, etc., is identified. This will be helpful in determine in which context the message is entered and to consequently load the current users context-based dictionary. The user may use one vocabulary style when writing an SMS and another when chatting.
In 510 the recipient of the text message is identified. Determining the recipient 510 is also helpful in loading the right context-based dictionary. For example if the user has started a SMS application the recipient of the SMS is analyzed. If for example the recipient is the grandmother a context-based dictionary with respectful and loving words, phrases, etc. is loaded since they are the most likely words to be used. When the recipient is (or not) identified the initialization process 420 provides the information to the current predictive text dictionary 412 in Figure 4, which loads the proper dictionary(ies). The current predictive text dictionary 412 will have 1 to 3 parameters (user, application, and recipient) coming from the initialization process 500 to help in determine the right predictive text dictionary(ies), and to set the right priority among the matches which later are displayed in the suggestion list 408 in Figure 4. The handheld device 600 in Figure 6 may have, depending on available storage, one or more dictionaries stored 604 in the devices memory
602 at one time. If the storage size in the device is large a standard dictionary
603 (hereinafter called a full dictionary) together with several smaller customized dictionaries 604 can be stored in the device at the same time. If the storage size is small a reduced full dictionary or only one or more customized dictionaries 604 may be stored at the same time in the device. If the storage size is small it is important that the dictionary in the device is tailored to the user so no unnecessary words (i.e. words never or seldom used by the user) in the dictionary take up valuable storage space.
The full dictionary 603 stores a multitude of character combinations and words from every possible subject while a custom dictionary focus on just one or a few particular areas. A custom dictionary 604 can for instance be a user dictionary comprised of words commonly used by a user or all words from one time instance to another, e.g. from the day the device was first used by the user until current time and day. A custom dictionary can also comprise of the words used when a specific application has been used, for example words used when composing e-mails or SMS. Dictionaries can also be customized comprising words depending on context, words not appropriate (e.g. swear words), special interests (e.g. bird watching, computing, sports, beer, etc.), time and date, age group, recipient (e.g. friend, grandmother, co- worker, etc.).
If the comparison 406 in Figure 4 fails to identify one or more characters or words entered by a user, it may be time to update or replace the current predictive text dictionary 412 used in the prediction process. The analysis 414 of the entered characters and words in 402 will together with the statistics 410 information will detect if the current dictionary in 412 will need to be updated. The reasons for changing the current dictionary can be many. It could for example be the first time the handheld device is ever used; the user has changed vocabulary, another user that the ordinary user uses the handheld device, a new recipient (e.g. started at a new word), or any other reason for changing vocabulary. Another reason to change the current dictionary can for instance be when it has expired. A dictionary can be set to expire at a certain point in time for example when the handheld device becomes active (turned off), turns into sleep mode, turns into Screensaver mode, when an application is terminated, an SMS, email or other text application is ended, etc.. It can also be set to expire after a certain amount of time, on a specific date, or after running a certain application a specific number of times, or when the memory is full and another dictionary downloaded to the device. This avoids that the dictionary becomes irrelevant or stale due to the user getting older (matures and changes vocabulary) or the user and/or the context changes. Over time the user or users may change their behavior and degree of formality in their text correspondence. When people grow up they tend to mature into using a more formal tone in their correspondence with other people, even with their close friends. To be able to update or replace the dictionary the inputted text is stored for analysis as shown in 414 in Figure 4. For example if a text input starts with 'Yo' (as in 'Yo brother what's up') it is very likely that the user is communicating with a close friend in a not so formal way but if the user starts with 'Hi' it could either be a close friend ('Hi Melissa how are you?') or a more formal conversation ('Hi my name is lnga and I'm writing...'), and if the user starts with 'Dear' (as in 'Dear grandmother ..." or 'Dear Mr Wick ...') it is probably a more formal conversation.
If the analysis in 414 can't directly identify clues and keywords for determining the right dictionary or combination of dictionaries the analysis process can be user-configured to continue analyzing for a certain amount of time (e.g. two or more entered words, one or more inputted sentences, etc.). It can also be configured to send the analysis material to an external server 416 having a much greater database and more computational power than the handheld device. The external server will send back instructions and if needed additional dictionaries to the handheld device.
Figure 6 illustrates how the dictionaries relate to each other. The communication device 600 can hold 602 one current dictionary 603 used as the current predictive text dictionary and, if possible, several smaller customized dictionaries 604. As discussed above the handheld device 600 can communicate with an external server, via a network 606, storing a multitude of dictionaries 605. The update process of the current dictionary can either be done by adding-on, as shown in 718 in Figure 7, a dictionary by copying or moving a whole or a part 720 of a stored custom dictionary 722 into the current dictionary 716, or by replacing the whole or a part 714 of the current dictionary 710 with a whole or a part 712 of a custom dictionary 714, or by using a union 706 of several dictionaries for example the current dictionary 702, a first custom dictionary 704, and a second custom dictionary 708, as shown in figure 7. The custom dictionaries can be either internally stored as shown in 604 in Figure 6 or externally stored 605.
As discussed above the internally stored dictionaries 604, can if wanted, be in constant change depending on the users change in vocabulary etc.. To be able to safely store and to migrate the dictionaries to other handheld communication devices the dictionaries can be sent 606 to an external storage for safekeeping. The external storage can either be the same as the server 605 doing the analysis and storing external dictionaries as discussed above or a separate personal storage place. This will also save precious internal storage in the handheld communication device since not all custom dictionaries are needed to be stored internally.
A system architecture for managing a system 800 according to an embodiment of the present invention is shown in Fig. 8. A Home Location Register (HLR) 802 contains a database (not shown) including relevant subscriber information for provision of telecommunication service. A CCITT specified network 804 interconnects the individual parts of the system 800. A dictionary gateway 806 is a switching unit routing a requested dictionary to a mobile communication apparatus 808-812. A Dictionary Service Center 814 (DSC) and the dictionary gateway 806 handle and routes the dictionaries between the DSC 814 and the network 804. From the network 804, the dictionaries are routed to the mobile communication apparatuses 808-812 via a Mobile Switching Center (MSC) 816 to a Base Station Controller (BSC) 817 and a Base Transceiver Station (BTS) 820, 821 , or a Radio Network Controller (RNC) 818 and a Node B 822. Alternatively, the dictionaries are routed to the mobile communication apparatuses 808-812 via a Serving GPRS Support Node (SGSN) 826, 828 to the BSC 817 and the BTS 820, 821 , or the RNC 818 and the Node B 822, respectively. The BTS 820, 821 or the Node B 822 establish the air connection to the mobile communication apparatuses 808-812.
According to an embodiment of the present invention, a network operator or other third party company, for example the provider of the application, handling a dictionary server 824 could offer a dictionary service function where dictionaries associated with certain applications can be purchased. For example a network operator may have a dictionary server 824 supporting a feature where the user may send a dictionary request from his mobile communication apparatus 808-812 to the dictionary server 824 upon using a certain application of the mobile communication apparatus, e.g. a gaming or messaging application.
The invention can be computer-implemented, i.e. the media handling is performed on a general or dedicated computerized apparatus 901 , such as a personal computer, a mobile phone, a digital camera, a personal digital assistant, a media player, or other similar apparatus. Instructions for performing the invention can then be executed by the apparatus. These instructions can be loaded into the apparatus 901 from a computer-readable medium 902, as exemplary illustrated in Fig. 9, having a data structure stored. The data structure comprises the control instructions, which upon execution causes the apparatus to perform any of the embodiments of the present invention as described above.
Figure 10 illustrates a user interface (Ul) 1001 in a portable apparatus having an input interface 1002, which as described in above embodiments can be actuated by a user, and a display interface 1004 for displaying information to the user as described in the above embodiments of the present invention. While the embodiments of the present invention have been described with specificity to handheld communication devices, other types of computing devices with which the embodiments can be used will occur to those skilled in the art. For example, a personal computer can benefit from the invention in the same manner as the handheld communication device. Further, while the illustrated embodiments discusses the use of user-configurability, the user- configurability may be implicit or provided in some other manner than described above. The above-described embodiments of the invention are intended to be examples of the invention and alterations and modification may be affected thereto, by those skilled in the art, without departing from the scope of the invention, which is defined solely by the claims appended hereto.

Claims

1. A method for a portable apparatus, comprising: enabling said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary; prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list; displaying of said priority list; enabling selection from said displayed priority list; and enabling updating of said adaptive predictive text dictionary based on said selection.
2. The method according to claims 1 , wherein said updating of said adaptive predictive text dictionaries based on any of the group: analysis of said inputted text, analysis of said selected text in said priority list, and statistics based on said inputted text and selected words in said displayed priority list.
3. The method according to claim 1 or 2, further comprises initialization of said adaptive predictive text dictionary, wherein said initialization determines at least one of the group comprising: current user, current application, and recipient.
4. The method according to any of the previous claims 1-3, communicating by wire or wirelessly with an external server via a network for acquiring said adaptive predictive text dictionary.
5. The method according to claim 4, storing said adaptive predictive text dictionary via said network and retrieving said adaptive predictive text dictionary from said external server.
6. A rendering application for a portable apparatus comprising a display and navigation means, said application arranged to cause enabling of said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary; prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list; displaying of said priority list; enabling selection from said displayed priority list; and enabling updating of said adaptive predictive text dictionary based on said selection.
7. The application according to claim 6, arranged for updating said adaptive predictive text dictionaries based on any of the group: analysis of said inputted text, analysis of said selected text in said priority list, and statistics based on said inputted text and selected words in said displayed priority list.
8. The application according to claim 6 or 7, arranged for initialization of said adaptive predictive text dictionary, and from said initialization determine at least one of the group comprising: current user, current application, and recipient.
9. The application according to any of the previous claims 6-8, arranged for communicating by wire or wirelessly with an external server via a network for acquiring said adaptive predictive text dictionary.
10. The application according to claim 9, arranged for storing said adaptive predictive text dictionary via said network and retrieving said adaptive predictive text dictionary from said external server.
11. An apparatus comprising a display and a comparator arranged to receive a user input, wherein said user input comprise of a text input, compare inputted text with text in an adaptive predictive text dictionary, a processor arranged to prioritize and list matches of an output of said comparator in a priority list, wherein said display is arranged to, under control of said processor to display said priority list, and wherein said user input selection from said displayed priority list, wherein said processor is arranged to update said adaptive predictive text dictionary based on said selection.
12. The apparatus according to claim 11 , further comprising a renderer for updating said adaptive predictive text dictionaries based on any of the group: analysis of said inputted text, analysis of said selected text in said priority list, and statistics based on said inputted text and selected words in said displayed priority list.
13. The apparatus according to claim 11 or 12, further comprising a renderer for initialization of said adaptive predictive text dictionary, wherein said initialization determines at least one of the group comprising: current user, current application, and recipient.
14. The apparatus according to any of the previous claims 11-13, further comprising a renderer for communicating by wire or wirelessly with an external server via a network for acquiring said adaptive predictive text dictionary.
15. The apparatus according to claim 14, further comprising a renderer for storing said adaptive predictive text dictionary via said network and retrieving said adaptive predictive text dictionary from said external server.
16. A computer program product comprising program code means stored in a computer-readable medium, the program code means being adapted to enable said portable apparatus for text input, comparing inputted text with text in an adaptive predictive text dictionary; prioritizing matches in said comparison and listing said matches based on said prioritizing in a priority list; displaying of said priority list; enabling selection from said displayed priority list; and enabling updating of said adaptive predictive text dictionary based on said selection.
17. The computer program product according to claim 16, further comprising instructions for updating said adaptive predictive text dictionaries based on any of the group: analysis of said inputted text, analysis of said selected text in said priority list, and statistics based on said inputted text and selected words in said displayed priority list.
18. The computer program product according to claim 16 or 17, further comprising instructions for initialization of said adaptive predictive text dictionary, wherein said initialization determines at least one of the group comprising: current user, current application, and recipient
19. The computer program product according to any of the previous claims 16-18, further comprising instructions for communicating by wire or wirelessly with an external server via a network for acquiring said adaptive predictive text dictionary.
20. The computer program product according to claim 19, further comprising instructions for storing said adaptive predictive text dictionary via said network and retrieving said adaptive predictive text dictionary from said external server.
21. A system comprising an apparatus and a dictionary server wherein said apparatus comprises a memory storing a set of instructions, and a processor, executing the stored set of instructions, to perform a method comprising determining an application to be executed; determining a dictionary associated to said determined application; and enabling said associated dictionary, and said dictionary server is arranged to provide the associated dictionary for downloading.
22. The system according to claim 21 , further comprising a communications network, wherein the adaptive predictive text dictionary server and the apparatus is in communication via the communications network.
23. A user interface comprising a display, and an input receiver, wherein said user interface is arranged to; enable a portable apparatus for text input where said inputted text are compared with text in an adaptive predictive text dictionary, and where matches of said comparisons are prioritized and listed in a priority list; display said priority list in said display.
PCT/IB2007/001400 2007-03-29 2007-05-29 Prioritizing words based on content of input WO2008120033A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US90878607P 2007-03-29 2007-03-29
US60/908,786 2007-03-29

Publications (1)

Publication Number Publication Date
WO2008120033A1 true WO2008120033A1 (en) 2008-10-09

Family

ID=38758061

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2007/001400 WO2008120033A1 (en) 2007-03-29 2007-05-29 Prioritizing words based on content of input

Country Status (1)

Country Link
WO (1) WO2008120033A1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012090027A1 (en) * 2010-12-30 2012-07-05 Nokia Corporation Language models for input text prediction
US8782556B2 (en) 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
US20140278349A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Language Model Dictionaries for Text Predictions
WO2014150104A1 (en) * 2013-03-14 2014-09-25 Microsoft Corporation Text prediction based on multiple language models
US9046932B2 (en) 2009-10-09 2015-06-02 Touchtype Ltd System and method for inputting text into electronic devices based on text and text category predictions
WO2015080822A1 (en) * 2013-11-27 2015-06-04 Intel Corporation Recipient-based predictive texting
US9189472B2 (en) 2009-03-30 2015-11-17 Touchtype Limited System and method for inputting text into small screen devices
US9330083B2 (en) * 2012-02-14 2016-05-03 Facebook, Inc. Creating customized user dictionary
US9424246B2 (en) 2009-03-30 2016-08-23 Touchtype Ltd. System and method for inputting text into electronic devices
US9659002B2 (en) 2009-03-30 2017-05-23 Touchtype Ltd System and method for inputting text into electronic devices
US10042841B2 (en) 2015-07-17 2018-08-07 International Business Machines Corporation User based text prediction
US10372310B2 (en) 2016-06-23 2019-08-06 Microsoft Technology Licensing, Llc Suppression of input images

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5896321A (en) * 1997-11-14 1999-04-20 Microsoft Corporation Text completion system for a miniature computer
US20050289141A1 (en) * 2004-06-25 2005-12-29 Shumeet Baluja Nonstandard text entry
WO2006078912A2 (en) * 2005-01-21 2006-07-27 Prashant Parikh Automatic dynamic contextual data entry completion system
US20060247915A1 (en) * 1998-12-04 2006-11-02 Tegic Communications, Inc. Contextual Prediction of User Words and User Actions
US20070005336A1 (en) * 2005-03-16 2007-01-04 Pathiyal Krishna K Handheld electronic device with reduced keyboard and associated method of providing improved disambiguation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5896321A (en) * 1997-11-14 1999-04-20 Microsoft Corporation Text completion system for a miniature computer
US20060247915A1 (en) * 1998-12-04 2006-11-02 Tegic Communications, Inc. Contextual Prediction of User Words and User Actions
US20050289141A1 (en) * 2004-06-25 2005-12-29 Shumeet Baluja Nonstandard text entry
WO2006078912A2 (en) * 2005-01-21 2006-07-27 Prashant Parikh Automatic dynamic contextual data entry completion system
US20070005336A1 (en) * 2005-03-16 2007-01-04 Pathiyal Krishna K Handheld electronic device with reduced keyboard and associated method of providing improved disambiguation

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10402493B2 (en) 2009-03-30 2019-09-03 Touchtype Ltd System and method for inputting text into electronic devices
US9189472B2 (en) 2009-03-30 2015-11-17 Touchtype Limited System and method for inputting text into small screen devices
US10073829B2 (en) 2009-03-30 2018-09-11 Touchtype Limited System and method for inputting text into electronic devices
US9659002B2 (en) 2009-03-30 2017-05-23 Touchtype Ltd System and method for inputting text into electronic devices
US9424246B2 (en) 2009-03-30 2016-08-23 Touchtype Ltd. System and method for inputting text into electronic devices
US9046932B2 (en) 2009-10-09 2015-06-02 Touchtype Ltd System and method for inputting text into electronic devices based on text and text category predictions
US9613015B2 (en) 2010-02-12 2017-04-04 Microsoft Technology Licensing, Llc User-centric soft keyboard predictive technologies
US8782556B2 (en) 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
US10156981B2 (en) 2010-02-12 2018-12-18 Microsoft Technology Licensing, Llc User-centric soft keyboard predictive technologies
US10126936B2 (en) 2010-02-12 2018-11-13 Microsoft Technology Licensing, Llc Typing assistance for editing
US9165257B2 (en) 2010-02-12 2015-10-20 Microsoft Technology Licensing, Llc Typing assistance for editing
WO2012090027A1 (en) * 2010-12-30 2012-07-05 Nokia Corporation Language models for input text prediction
US9330083B2 (en) * 2012-02-14 2016-05-03 Facebook, Inc. Creating customized user dictionary
CN105229575A (en) * 2013-03-14 2016-01-06 微软技术许可有限责任公司 Based on the text prediction of multiple language model
CN105190489A (en) * 2013-03-14 2015-12-23 微软技术许可有限责任公司 Language model dictionaries for text predictions
WO2014150104A1 (en) * 2013-03-14 2014-09-25 Microsoft Corporation Text prediction based on multiple language models
US20140278349A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Language Model Dictionaries for Text Predictions
WO2015080822A1 (en) * 2013-11-27 2015-06-04 Intel Corporation Recipient-based predictive texting
US10042841B2 (en) 2015-07-17 2018-08-07 International Business Machines Corporation User based text prediction
US10372818B2 (en) 2015-07-17 2019-08-06 International Business Machines Corporation User based text prediction
US10372310B2 (en) 2016-06-23 2019-08-06 Microsoft Technology Licensing, Llc Suppression of input images

Similar Documents

Publication Publication Date Title
US7797269B2 (en) Method and apparatus using a context sensitive dictionary
WO2008120033A1 (en) Prioritizing words based on content of input
US20080243737A1 (en) Club dictionaries
EP2089790B1 (en) Input prediction
JP5305592B2 (en) Predicting the user's word and user's action by context
US7149550B2 (en) Communication terminal having a text editor application with a word completion feature
US10146404B2 (en) String prediction
EP1901534B1 (en) Method of managing a language information for a text input and method of inputting a text and a mobile terminal
JP5116772B2 (en) Adaptive database
US7822434B2 (en) Handheld electronic device including automatic selection of input language, and associated method
US20080182599A1 (en) Method and apparatus for user input
US20100122164A1 (en) Contextual prediction of user words and user actions
KR20150037935A (en) Generating string predictions using contexts
JP2007200243A (en) Mobile terminal device and control method and program for mobile terminal device
CA2899779A1 (en) Text prediction based on multiple language models
AU2008284527A1 (en) Method for storing telephone number by automatically analyzing message and mobile terminal executing the method
JP2008293403A (en) Character input device, portable terminal and character input program
JP5429377B2 (en) Candidate display method for character input
US20080243738A1 (en) Game dictionaries
JP2009276818A (en) Character input program, character input device, and character input method
KR20080041974A (en) Method and apparatus for entering text in a mobile device
JP3848961B2 (en) Apparatus, program and method for supporting creation of electronic mail
JP5363420B2 (en) Portable terminal device and control method thereof
KR100761807B1 (en) Apparatus and method for inputting character of portable terminal
JP2010182334A (en) Portable terminal, control method and program of portable terminal

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07734698

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07734698

Country of ref document: EP

Kind code of ref document: A1