WO2014087704A1 - 入力支援装置、入力支援方法、及び入力支援プログラム - Google Patents

入力支援装置、入力支援方法、及び入力支援プログラム Download PDF

Info

Publication number
WO2014087704A1
WO2014087704A1 PCT/JP2013/071712 JP2013071712W WO2014087704A1 WO 2014087704 A1 WO2014087704 A1 WO 2014087704A1 JP 2013071712 W JP2013071712 W JP 2013071712W WO 2014087704 A1 WO2014087704 A1 WO 2014087704A1
Authority
WO
WIPO (PCT)
Prior art keywords
input
phrase
language
word
character string
Prior art date
Application number
PCT/JP2013/071712
Other languages
English (en)
French (fr)
Inventor
祐太 林部
正人 萩原
Original Assignee
楽天株式会社
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 楽天株式会社 filed Critical 楽天株式会社
Priority to US14/650,220 priority Critical patent/US20150309991A1/en
Priority to JP2014526291A priority patent/JP5897711B2/ja
Publication of WO2014087704A1 publication Critical patent/WO2014087704A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3337Translation of the query language, e.g. Chinese to English
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • G06F40/129Handling non-Latin characters, e.g. kana-to-kanji conversion

Definitions

  • One aspect of the present invention relates to an input support device, an input support method, and an input support program.
  • An input support apparatus includes a reception unit that receives an input character string in Roman characters, a first language phrase expressed in alphabet, and a second language corresponding to the first language phrase
  • a search unit that executes a second process for searching for a phrase in the first language corresponding to the Roman character notation including the input character string, and a result of the first process and a result of the second process are input.
  • An output unit for outputting as a candidate.
  • An input support method is an input support method executed by an input support device, the receiving step of receiving an input character string in Roman letters, a phrase of a first language expressed in alphabet, A phrase of the first language including the input character string from a storage unit for storing the Roman language notation of the phrase of the second language corresponding to the phrase of the first language in a manner in which their correspondence can be specified
  • a search step for executing a first process for searching for a word and a second process for searching for a phrase of the first language corresponding to the Roman alphabet notation including the input character string from the storage unit; And an output step for outputting the result of the second process and the result of the second process as input candidates.
  • An input support program includes a reception unit that receives an input character string in Roman characters, a first language phrase expressed in alphabet, and a second language corresponding to the first language phrase
  • a search unit for executing a second process for searching for a phrase in the first language corresponding to the Roman character notation including the input character string, and a result of the first process and a result of the second process are input.
  • An output unit that outputs as a candidate is executed by a computer.
  • the process of searching for a phrase from the input character string itself without translation and the process of translation based on the input character string are executed, and the phrase obtained from these processes (the first phrase) Language phrases) are collectively output as input candidates.
  • the phrase obtained from these processes (the first phrase) Language phrases) are collectively output as input candidates.
  • the input character string includes a plurality of words
  • the search unit executes the first process and the second process for each of the plurality of words
  • the output unit includes the plurality of words. May be output as input candidates.
  • the input of the selected word / phrase may be confirmed by replacing the common first language word / phrase selected by the user with the entire input character string. . With this replacement, the user can immediately start the next editing operation.
  • the input character string includes a plurality of words
  • the output unit outputs, as input candidates, words in the first language searched for in some of the plurality of words. May be. By searching for input candidates using only some of the words, it is possible to avoid a situation in which too many or too few words in the first language are extracted.
  • some words may be the last word in the input character string.
  • the phrase of the first language selected by the user is replaced with only a word used as a search condition for the selected phrase among a plurality of words, The input of the selected word may be confirmed. By replacing in this way, the user can know which word has been replaced.
  • an input candidate when an input candidate includes a word in a first language to which information indicating an unconfirmed part is added, and an input of a word having an unconfirmed part is confirmed, the input candidate is confirmed.
  • a focus may be set on the fixed part. By setting the focus position in this way, the user can immediately start the next editing operation without performing an operation such as moving the cursor.
  • an input candidate when an input candidate includes a word in a first language to which information indicating an unconfirmed part is added, and an input of a word having an unconfirmed part is confirmed, the input candidate is confirmed.
  • word candidates that can be inserted into the undetermined part are presented, so that the user can create a sentence or a sentence more easily.
  • the additional processing unit is unconfirmed by referring to a predetermined storage unit in which correspondence between an unconfirmed part of a word and a word that can be inserted into the unconfirmed part is stored. You may acquire the phrase which can be inserted in a part.
  • the additional processing unit refers to a predetermined storage unit in which a corpus of at least one of the first language and the second language is stored, so that the unconfirmed part Words that can be inserted into the URL may be acquired.
  • further input candidates may be displayed in an order according to the number of appearances in the corpus.
  • the additional processing unit may estimate a phrase that can be inserted into an undetermined part by analyzing a confirmed character string positioned before the input character string.
  • a word or phrase that can be inserted into an uncertain part based on a sentence or sentence that has already been input, a user who is inputting the sentence or sentence may be presented in advance. it can.
  • the phrase estimated by the analysis of the confirmed character string may be displayed in preference to the phrase not estimated by the analysis.
  • the additional processing unit acquires further input candidates for each undetermined part. And obtaining combination information indicating a natural combination of a phrase that can be inserted into the first unconfirmed part and a phrase that can be inserted into the second unconfirmed part, and further inputting the combination information into each unconfirmed part
  • a word that can be output together with the candidate and inserted into the other unconfirmed part according to a user operation in one unconfirmed part of the first and second unconfirmed parts may be presented based on the combination information . In this way, by presenting a natural combination of phrases, the user can easily create a natural sentence or sentence.
  • the input candidates may be displayed separately in a word column and a phrase column.
  • the user can easily find and select a desired word / phrase.
  • the phrases may be further divided into a plurality of columns and displayed according to the word meaning.
  • the user can easily find and select a desired word / phrase by presenting the phrase after dividing it by word meaning.
  • the input candidates may be displayed in a plurality of columns according to the meaning.
  • the user can easily find and select a desired word / phrase by presenting the input candidate word / phrase after being divided into word meanings.
  • input candidates may be displayed so that each column scrolls independently.
  • the user can look around the words in a specific column while continuing to look at the words in other columns.
  • the user can input a phrase of a target language without specifying the language of the input character string.
  • alphabet in this specification means a general term for Western European characters arranged in a certain order.
  • Roman character means a character used when a certain language is written in Latin. In this specification, expressing a certain language using Roman letters is called "Roman alphabet notation”.
  • This system 1 is a computer system that supports English text input. By using this system 1, a user who is not familiar with English can expect to easily create English sentences.
  • the user may input an English character string when inputting English text, or may input a Japanese character string by inputting Roman characters (step S1).
  • the user does not need to make the system 1 recognize in advance the language of the character string that he / she will input.
  • the user may input “okuru” and Japanese, or “e-mail” and English Good.
  • the input support system 1 executes two types of processing using the character string.
  • One is a process in which the input character string is regarded as English and a word or phrase including the character string is searched from the database (step S2).
  • the other is processing that regards the input character string as Japanese and acquires an English translation related to the character string from the database (step S3).
  • the input support system 1 presents the results obtained by these two processes to the user at a time as input candidates (step S4).
  • English phrases are obtained, so all the phrases presented to the user as input candidates are in English.
  • the phrase in this specification means one or both of a word and a phrase.
  • the input support system 1 includes a user terminal 10, an input support server (input support device) 20, and a language database (storage unit) 30.
  • the user terminal 10 and the input support server 20 can communicate bidirectionally via a communication network such as the Internet or a dedicated line. Further, the input support server 20 can access the language database 30 via a similar communication network.
  • the user terminal 10 is a computer used by a user who wants to create an English sentence.
  • the type of the user terminal 10 is not limited, and may be, for example, a stationary or portable personal computer, or a portable terminal such as a high-function mobile phone (smart phone), a mobile phone, or a personal digital assistant (PDA).
  • PDA personal digital assistant
  • the number of user terminals 10 present in the input support system 1 is not limited.
  • the user terminal 10 includes an editor 11 that executes character input and display.
  • the editor 11 has a function of communicating with the input support server 20, but the specific method for mounting the editor 11 is not limited.
  • the editor 11 may be implemented on a web browser (Web Browser) or may be incorporated in a specific word processor application program.
  • the input support server 20 is a computer that searches for input candidates based on the input character string and presents them to the user when Japanese characters in Roman letters or English words are input.
  • the input support server 20 refers to the language database 30 in order to execute such processing.
  • the language database 30 is a device that stores parallel translations between English and Japanese.
  • the specific configuration (mode) of the language database 30 and the data stored therein is not limited as long as the correspondence between the English phrase and the Japanese phrase expressed in Roman letters can be specified.
  • an existing dictionary database or corpus may be used as the language database 30.
  • Japanese in the language database 30 needs to be written in at least Roman characters.
  • the language database 30 includes a bilingual database of English and Japanese written in Hiragana, Katakana, or Kanji (Japanese written in Kana), and Japanese written in Roman and Kanji. It may consist of a conversion table indicating correspondence with words.
  • the editor 11 displays the input candidate English phrases separately for each Japanese meaning, so information relating to the Japanese meaning (for example, case frame dictionary information) is added to each phrase in advance. Yes.
  • the language database 30 may include not only parallel translation data but also data indicating a list of English words / phrases. As shown in FIG. 1, since the input support system 1 executes two types of searches, the database or storage area to be referenced may be changed for each search process. For example, the input support system 1 uses a database in which only English expressions are registered when performing a search from English, and bilingual translation between two languages is registered when performing a search from Japanese. Existing databases may be used.
  • the input support server 20 includes a CPU 201 that executes an operating system, application programs, and the like, a main storage unit 202 composed of ROM and RAM, and an auxiliary storage unit 203 composed of a hard disk and the like. And a communication control unit 204 composed of a network card, an input device 205 such as a keyboard and a mouse, and an output device 206 such as a display.
  • Each functional component of the input support server 20 to be described later reads predetermined software on the CPU 201 or the main storage unit 202, and controls the communication control unit 204, the input device 205, the output device 206, and the like under the control of the CPU 201.
  • the operation is realized by reading and writing data in the main storage unit 202 or the auxiliary storage unit 203. Data and a database necessary for processing are stored in the main storage unit 202 or the auxiliary storage unit 203.
  • FIG. 3 shows that the input support server 20 is configured by a single computer, the functions of the input support server 20 may be distributed to a plurality of computers.
  • the input support server 20 includes a receiving unit 21, a search unit 22, and a providing unit (output unit) 23 as functional components.
  • the reception unit 21 is a functional element that receives an input character string in alphabet.
  • the editor 11 of the user terminal 10 transmits the input character string to the input support server 20, and the reception unit 21 receives the input character string and outputs the character string to the search unit 22.
  • the timing at which the editor 11 transmits the input character string to the input support server 20 is not limited.
  • the editor 11 may transmit the character string to the input support server 20 for the first time when receiving an input of a character string having a predetermined length or more (for example, a character string having two or more characters).
  • a character string having two or more characters By setting the lower limit of the length of the input character string received by the receiving unit 21, the editor 11 can be reduced by reducing the search load of words or phrases, or by suppressing the number of input candidates displayed on the user terminal 10. It can be made easier to use.
  • the editor 11 may transmit an input character string when a delimiter (space) is input. By using one word as an input character string, it is possible to further reduce the search load and further reduce the number of input candidates.
  • the editor 11 may transmit the input character string when the key input is interrupted for a predetermined time (for example, 2 seconds).
  • a predetermined time for example, 2 seconds
  • the editor 11 may transmit the input character string in response to the user pressing a search button, a transmission button, or the like. According to these two methods, an input character string made up of a plurality of words separated by spaces can be transmitted to the input support server 20.
  • the receiving unit 21 or the editor 11 may automatically specify a plurality of words from an input character string without a delimiter. For example, when the receiving unit 21 or the editor 11 receives a character string “nimotsukeukuru” (corresponding to “send a package” in English), the receiving unit 21 or the editor 11 considers this character string as Japanese in Roman characters and performs morphological analysis. , “Nimoto”, “wo”, and “okuru” may be specified, and these words may be output to the search unit 22. In such word division, the reception unit 21 or the editor 11 deletes specific words (for example, particles) that are less necessary for the search, and outputs only the remaining words (for example, nouns and verbs) to the search unit 22. May be. For example, the reception unit 21 or the editor 11 may delete the Japanese particle “wo” and output only the noun “nimoto” and the verb “okuru” to the search unit 22.
  • specific words for example, particles
  • the reception unit 21 or the editor 11 may delete the
  • the search unit 22 is a functional element that acquires input candidates corresponding to the input character string from the language database 30.
  • the search unit 22 acquires an English word / phrase by two methods as shown in FIG.
  • the search unit 22 acquires an English (first language) phrase including an input character string from the language database 30 as a first search result.
  • the search unit 22 performs a search assuming that the input language is English. Therefore, when Japanese in Roman letters is input, the search unit 22 cannot acquire an English word / phrase in the first process (search from English). Of course, even if the user intends to input Japanese and there is an accidental occurrence of English including the character string, the search unit 22 acquires one or more English words / phrases in this first process.
  • the search unit 22 searches for words such as “forget”, “forgot”, “forgive”, and phrases such as “get forgotten”, “get forgetful”, “forgive A for B”. get.
  • the search unit 22 acquires an English (first language) phrase corresponding to a Japanese (second language) phrase including the input character string as a second search result.
  • the search unit 22 performs a search assuming that the input language is Japanese. Therefore, when English is input, the search unit 22 performs the second process (from Japanese). Search) cannot get English phrases. Of course, even if the user intends to input English, if the Japanese language indicated by the character string happens to exist, the search unit 22 acquires one or more English words / phrases in the second process.
  • the search unit 22 uses words such as “send”, “give”, and “lead” that can correspond to Japanese, and “send e-mail” that can correspond to this Japanese. to ",” e-mail the address of "," lead a gracieous life "and other phrases. Since one Japanese word may correspond to a plurality of English words, English phrases having various meanings may be extracted from one Japanese word as in this example.
  • search unit 22 extracts a related word “kamoto (cargo)” in Japanese “nimoto” and a related word “soufu (send)” in Japanese “okuru” from the thesaurus, and uses these two related words.
  • An English phrase may be acquired from the language database 30.
  • search methods as described above, and the search unit 22 may search for a phrase using any one or more methods.
  • the search unit 22 outputs the first and second search results obtained by such two types of processing to the providing unit 23. At this time, the search unit 22 determines whether each of the acquired English words / phrases has been extracted by a search from English (first processing) or a search from Japanese (first A flag indicating whether it has been extracted by the process 2) is added. Of course, both the first and second search results may be empty (NULL) due to a typographical error of the user.
  • the search unit 22 When the input character string includes a plurality of words, the search unit 22 performs the above-described two types of search for each word, and finally acquires a common phrase extracted in all the input words. Good (search for common phrases). By searching for input candidates using all the words constituting the input character string, it is possible to present with high accuracy the word or phrase that the user intends to input.
  • the input character string may consist only of English, may consist only of Japanese, or may be a mixture of Japanese and English.
  • search unit 22 uses the phrase “send a package” (meaning “send a package” in Japanese) in both cases of Japanese “nimoto” and English “send”. Search for.
  • the search unit 22 may perform the above two types of searches only for some of the words (search using some words). For example, the search unit 22 may perform the above two types of searches only for the last word in the input character string. By searching for input candidates using only some words, it is possible to avoid a situation in which too many or too few English phrases are extracted.
  • the search unit 22 may perform both a search for a common phrase and a search using some words, and obtain these two types of search results.
  • the search unit 22 uses a flag for distinguishing whether each word obtained as an input candidate is a word obtained by searching for a common phrase or a word obtained by a search using some words. Is added.
  • the providing unit 23 is a functional element that transmits the search result by the search unit 22 to the user terminal 10 as an input candidate.
  • each English word / phrase included in the search result is associated with a flag indicating what kind of search the word / phrase is extracted.
  • the editor 11 receives the input candidates and displays them on the screen.
  • the editor 11 obtains a character string having a predetermined length or more input in alphabet (step S11), and transmits the input character string to the input support server 20 (step S12).
  • the reception unit 21 receives the input character string (step S12, reception step), and then the search unit 22 searches for input candidates based on the character string. Specifically, the search unit 22 searches for an English phrase including the input character string (step S13, search step), and searches for an English phrase corresponding to the Japanese phrase including the input character string (step S13). S14, search step). Note that the search unit 22 may execute a search from English (step S13) after performing a search from Japanese (step S14). Finally, the providing unit 23 transmits the results of these two types of searches as input candidates to the user terminal 10 (step S15, output step).
  • the editor 11 receives the input candidates and displays them on the screen (step S16, output step).
  • the user can select one of the displayed input candidates, and the selected English phrase is displayed on the editor 11 as a fixed phrase.
  • the editor 11 transmits the input character string “okuru” to the input support server 20, and the search unit 22 executes two types of searches based on the character string. Since there is no English word including “okuru”, the search unit 22 cannot obtain an English phrase by searching from English. However, since “okuru” in Japanese has a meaning equivalent to several words such as “send”, “give”, “present”, and “lead” in English, the search unit 22 performs a search from Japanese. Get an English phrase by running. Therefore, the providing unit 23 transmits one or a plurality of English words as input candidates to the user terminal 10, and the editor 11 displays the input candidates on the screen.
  • FIG. 10 An example of input candidates displayed on the user terminal 10 is shown in FIG.
  • the editor 11 displays a list of input candidates in the candidate field C.
  • Each of the searched English phrases E is accompanied by a Japanese translation J.
  • the title “word (from Japanese)” in the upper left of the candidate column indicates that the current word / phrase is obtained by searching from Japanese.
  • the editor 11 can determine the title by referring to the flag associated with the acquired word / phrase.
  • the editor 11 displays the input candidates separately for the word list L1 displayed in the leftmost column and the phrase list displayed in the other columns. Furthermore, the editor 11 divides the phrases into columns L2 to L4 for each meaning of Japanese “okuru”. In the example of FIG. 6, since the number of English words is larger than the height of the candidate field C, a scroll bar is displayed in the column L1, but the editor 11 displays this scroll bar as the number of words in each column. Or set to each column according to the number of phrases. Therefore, the user can look around the words in a specific column while continuing to look at the words in other columns. If the number of groups when the English phrase is divided into Japanese meanings is larger than the width of the candidate field C, the editor 11 sets a horizontal scroll bar for looking over the phrase column.
  • the user can easily find and select a desired word or phrase.
  • the editor 11 may display the acquired words or phrases without dividing them into words and phrases, but only after dividing them into meanings. Also in this case, the user can easily find and select a desired word / phrase.
  • FIGS. 6 and 7 another meaning of the selected word may be indicated by a box B.
  • the editor 11 transmits the input character string “e-mail” to the input support server 20, and the search unit 22 executes two types of searches based on the character string. Since there is no Japanese written in Roman letters as “e-mail”, the search unit 22 cannot obtain an English word / phrase when searching from Japanese. However, as a matter of course, the search unit 22 can acquire an English phrase including “e-mail” by executing a search from English. Even if the input character string is “e-mai”, the same result can be obtained. Therefore, the providing unit 23 transmits one or a plurality of English words as input candidates to the user terminal 10, and the editor 11 displays the input candidates on the screen.
  • FIG. 12 shows an example of input candidates displayed on the user terminal 10 in this case.
  • the editor 11 also writes a Japanese translation for each English phrase in the candidate field C.
  • “e-mail” having a plurality of meanings is focused, and explanations of other meanings are displayed in box B in response to this focus setting.
  • whether or not to implement the function of the box B in the editor 11 may be arbitrarily determined.
  • the editor 11 displays the selected word / phrase in place of the input character string “e-mail”, thereby confirming the input.
  • FIG. 13 shows an example of input candidates when the input character string includes a plurality of words.
  • a list of English words corresponding to the last Japanese word “okuru” in the input character string is displayed.
  • a list of English phrases including translations of both two Japanese “nimoto” and “okuru” included in the input character string is displayed.
  • columns L3 and L4 a list of English phrases including the translation of the last Japanese word “okuru” in the input character string is displayed.
  • the editor 11 can determine in which column the phrase should be displayed by referring to the flag associated with each phrase.
  • the editor 11 selects only the last word “okuru” in the input character string. Replace the selected word and confirm the input. In other words, the editor 11 replaces only the word used as the search condition for the English phrase in the input support server 20 with the phrase specified by the user. In this case, the user can know which word has been replaced.
  • the editor 11 confirms the input by replacing the two Japanese words “nimoto” and “okuru” included in the input character string with the selected phrase. Let Therefore, the user can immediately start the next editing work.
  • the editor 11 can determine the replacement portion of the input character string by referring to the flag of each word in the input candidate.
  • the input character string includes two words. However, as described above, the input character string may include three or more words. For example, the input character string may include three words “Japanese” “okuru”, “nimoto”, and “kuukubin (corresponding to“ airmail ”in English)”.
  • the input support program P includes a client program P1 for causing the user terminal 10 to function the editor 11 and a server program P2 for causing the computer to function as the input support server 20.
  • the client program P1 includes an editor module P11, and the function of the editor 11 is realized by this module.
  • the server program P2 includes a main module P20, a reception module P21, a search module P22, and a provision module P23.
  • the main module P20 is a part that controls the functions of the input support server 20 in an integrated manner.
  • the functions realized by executing the reception module P21, the search module P22, and the provision module P23 are the same as the functions of the reception unit 21, the search unit 22, and the provision unit 23, respectively.
  • Each of the client program P1 and the server program P2 is provided after being fixedly recorded on a tangible recording medium such as a CD-ROM, DVD-ROM, or semiconductor memory.
  • Each program P1, P2 may be provided via a communication network as a data signal superimposed on a carrier wave.
  • the process of searching for a phrase from the input character string itself without searching (search from English) and the process of translation based on the input character string (search from Japanese) ) are executed, and English words and phrases obtained from these two types of processing are collectively output as input candidates.
  • the user needs to input a sentence or a sentence after performing an operation such as switching an input mode.
  • the user since two systems of processing are performed on one input character string and both search results are output, the user does not specify the language of the input character string himself (for example, input) You can enter words in the desired language (without switching modes).
  • This system 2 is the first embodiment (input support system) in that when the user selects one word from input candidates and confirms the input, the word corresponding to the slot of the word is further presented. Different from 1).
  • the input support system 2 includes an input support server 20A.
  • “Slot” in this specification is an undetermined part set in one word selected from input candidates, and an object, a complement or the like can be inserted into the undetermined part. This slot is set before or after a word, or before, after or in the middle of a phrase. For example, “someone” in the phrase “give someone a birthday present” is a slot set in the phrase. As another example, a portion following the phrase “e-mail the address of” can also be set as a slot. Alternatively, “A” and “B” in the phrase “provide A with B” are also examples of slots. If words and phrases that apply to such a slot are further presented, it can be expected that the text input is further simplified.
  • the input support server 20A of the present embodiment has a slot processing unit (additional processing unit) in addition to the three functional components in the first embodiment in order to realize the additional function as described above. 24.
  • the editor 11 further has a function for obtaining a word that may be applied to the slot.
  • information indicating the slot position is associated in advance with at least some of the English phrases that can be displayed as input candidates on the user terminal 10.
  • the editor 11 When the user selects one word from the input candidates, the editor 11 confirms the input of the word and transmits information on the word to the input support server 20A. The editor 11 sets the focus at the slot position. If there are a plurality of slots, the editor 11 sets the focus to one of the slots (for example, the first slot). Thereafter, the editor 11 receives a further input candidate sent from the input support server 20 in response to the transmission of the fixed phrase information, and displays the input candidate on the screen. This further input candidate is a phrase that can be inserted into the slot.
  • the slot processing unit 24 is a functional element that, when input of an English word / phrase having a slot is confirmed, acquires an English word / phrase inserted into the slot and outputs the acquired word / phrase as a further input candidate.
  • the slot processing unit 24 acquires a phrase that may be inserted into the slot based on the fixed phrase information received from the editor 11, and transmits the processing result to the user terminal 10.
  • the method of searching for a phrase that applies to a slot is not limited.
  • the slot processing unit 24 determines whether Phrases that can be inserted into the slots may be extracted from the language database 30.
  • the slot processing unit 24 may determine a phrase that can be inserted into a slot of a definite phrase by using a conventional natural language processing technique. For example, the slot processing unit 24 obtains further input candidates by using an n-gram method for English sentences, and further inputs by referring to the parallel translation data including information of the case frame dictionary. Candidates may be obtained. As described above, the slot processing unit 24 uses both the search from English and the search from Japanese as in the case of obtaining the input candidate (first input candidate) described in the first embodiment. Candidates can be obtained. In this case, the slot processing unit 24 associates a flag indicating which of the two types of search processing the obtained word / phrase is obtained with the word / phrase. Note that the natural language processing used in this processing is not limited to n-grams and case frame dictionaries, and any method can be adopted.
  • the slot processing unit 24 may extract further input candidates by searching an English corpus in the language database 30. Specifically, the slot processing unit 24 extracts a sentence including a definite word / phrase, analyzes one or more extracted sentences, and specifies a word / phrase actually inserted at the slot position together with the number of appearances. Then, the slot processing unit 24 creates a list by sorting the specified one or more words in descending order of the number of appearances, and sets this list as a further input candidate. For example, the slot processing unit 24 sets the word groups “you”, “her”, “him”, and “Tom” as further input candidates for the fixed phrase “give someone a birthday present” in descending order of the number of appearances.
  • the slot processing unit 24 may use PMI (Pointwise Mutual Information) or the like to set a characteristic word that is not high in frequency but is a subsequent input candidate.
  • PMI Pointwise Mutual Information
  • the slot processing unit 24 analyzes a sentence or a sentence located before the current fixed phrase on the editor 11 to identify a phrase that has a high probability of being inserted into the slot. May be. For example, it is assumed that a sentence “His birthday is in December. I will” has already been input. In this case, when the user inputs “okuru” and selects the phrase “give someone a birthday present” from the input candidates displayed according to the operation, the slot processing unit 24 uses the word “His” as a clue. “Him” is extracted as a further input candidate. In the fourth method, the slot processing unit 24 needs to receive not only the information of the definite word / phrase but also the information of the sentence or sentence ahead of it from the editor 11. According to the fourth method, it is possible to present in advance a phrase that a user who is inputting a sentence or sentence is likely to input.
  • the slot processing unit 24 may display the word derived according to the fourth technique out of the word group extracted according to the third technique in preference to the word not derived according to the technique (first). Method 5).
  • the slot processing unit 24 may set the display order of each word in the word group so that the display order of the words derived by the fourth technique is earlier than the display order of other words.
  • the method of acquiring words that can be inserted into the slot there is no limitation on the method of acquiring words that can be inserted into the slot. Further, the display order of the words is not limited to the above.
  • the slot processing unit 24 may arrange the acquired words in alphabetical order.
  • the slot processing unit 24 may extract further input candidates for each slot by an arbitrary method (for example, any one of the first to fifth methods described above).
  • the slot processing unit 24 may transmit information on a natural combination of words inserted in each of at least two slots of the plurality of slots to the editor 11 together with words that can be inserted in each slot.
  • the combination information may be stored in the language database 30 or may be held in advance by the slot processing unit 24.
  • the slot processing unit 24 combines the combination information Ca indicating that the combination of “library” and “borrow” is more natural than the combination of “library” and “rent”, and “rental shop” and “ The combination information Cb indicating that the combination of “rent” is more natural than the combination of “rental shop” and “borrow” is read from the language database 30 and transmitted to the editor 11.
  • steps S11 to S16 are the same as that in the first embodiment. Thereafter, when the user selects one word / phrase from the input candidates and confirms the input (step S17), the editor 11 sets the focus to the slot of the confirmed word / phrase (step S18).
  • the editor 11 sets the focus on the entire word “someone”.
  • the editor 11 sets the focus after “of”.
  • the user can immediately start the next editing operation without performing an operation such as moving the cursor. For example, by setting the focus to the entire word, the user can immediately overwrite the word by selecting from the input candidates or by directly inputting the word.
  • the editor 11 transmits information on the fixed phrase to the input support server 20 (step S19).
  • the slot processing unit 24 receives the information (step S19), and acquires an English phrase that can be inserted into the slot by any method described above (step S20). Then, the slot processing unit 24 transmits the extracted word / phrase as a further input candidate to the user terminal 10 (step S21).
  • the editor 11 receives the further input candidates and displays them on the screen (step S22).
  • the selected English word is inserted into the slot, thereby confirming the input.
  • the editor 11 may determine the words of each slot one by one based on the user's selection operation. Alternatively, the editor 11 provides the user with an opportunity to reselect the words and phrases in each slot by confirming the words and phrases in all slots at once after the user performs a selection operation on all slots. Also good.
  • the editor 11 When the combination information is received, the editor 11 automatically selects and presents the words / phrases of the other slot more naturally corresponding to the word / phrase selected by the user in one slot based on the information, or A more natural phrase may be presented to the user as help information without being automatically selected. In this way, by presenting a natural combination of phrases, the user can easily create a natural sentence or sentence.
  • the editor 11 has two English words “rent” and “borrow” that are candidates for the first slot, English words that are candidates for the second slot, “library” and “rental shop”, and the combination information described above. Assume that Ca and Cb are received. Then, it is assumed that the user selects “library” in the second slot after selecting “rent” in the first slot. In this case, the editor 11 replaces “rent” in the first slot with “borrow” or displays help information indicating that “borrow” is a more natural word according to the user operation. .
  • the input is confirmed by selecting the English phrase “chuck a ball to” from the input candidates.
  • the editor 11 transmits information on this phrase to the input support server 20.
  • the slot processing unit 24 acquires further input candidates based on this phrase and transmits the candidates to the user terminal 10.
  • the editor 11 displays the further input candidates on the screen as shown in FIG.
  • the editor 11 lists further input candidates in the candidate field C.
  • further input candidates are displayed separately for a phrase (column L1) obtained by a search from English and a phrase (column L2) retrieved by a search from Japanese. Whether each word / phrase belongs to one of the two groups can be determined by referring to a flag associated with the word / phrase.
  • the editor 11 may set the scroll bar in each column according to the number of words or phrases in each column.
  • the input support program P for realizing the input support system 2 will be described with reference to FIG.
  • the input support program P of this embodiment is different from that of the first embodiment in that the server program P2A includes a slot processing module P24 in addition to the main module P20, the reception module P21, the search module P22, and the provision module P23.
  • the functions realized by executing the slot processing module P24 are the same as the functions of the slot processing unit 24 described above.
  • the second embodiment described above has the same effect as the first embodiment.
  • word candidates further input candidates
  • word candidates that can be inserted into the slot are presented, so that the user can more easily read a sentence or a sentence. Can be created.
  • a client / server type input support system is shown, but an input support apparatus having a function of the input support server 20 or 20A may be adopted by the user terminal or the editor.
  • the editor 11 ⁇ / b> A mounted on the user terminal 10 ⁇ / b> A may include a reception unit 21, a search unit 22, a providing unit 23, and a slot processing unit 24.
  • the search unit 22 and the slot processing unit 24 access the language database 30 via the network.
  • the language database 30 may be provided in the input support server 20 or 20A. Similarly, in the modification of FIG. 19, the language database 30 may be provided in the user terminal 10A.
  • the input support system accepts English input or Japanese input in Roman letters to support English input. That is, in the above embodiment, the first language is English and the second language is Japanese. However, which language is used as the first and second languages is a matter that can be arbitrarily determined. However, the first language is a language (for example, French or German) expressed using alphabets. On the other hand, the second language may be a language (for example, Chinese) that does not normally use an alphabet but can be expressed in alphabet, or a language (for example, French, German, or English) that is expressed by using an alphabet. Therefore, both the first and second languages may be Latin languages.
  • the display method of input candidates and further input candidates on the editor is not limited.
  • the editor 11 may display only one scroll bar for the entire candidate field C, or may display the input candidates in only two columns, a word column and a phrase column.
  • a phrase that is not displayed may be displayed using a page switching technique instead of a scroll bar.
  • the editor 11 sets the focus to the slot and then displays further input candidates.
  • the input support system may end the process at the time when the focus is set to the slot, and may not acquire further input candidates.

Abstract

 一実施形態に係る入力支援装置は、受付部、検索部、及び出力部を備える。受付部は、ローマ字による入力文字列を受け付ける。検索部は、アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する。出力部は、第1の処理の結果と第2の処理の結果とを入力候補として出力する。

Description

入力支援装置、入力支援方法、及び入力支援プログラム
 本発明の一側面は、入力支援装置、入力支援方法、及び入力支援プログラムに関する。
 従来から、他言語(例えば日本人にとっての英語)の入力を支援するシステムが知られている。例えば下記特許文献1に記載の文字入力装置では、コピーされた文字列が英語のスペリングとして正しくない場合に、変換バッファにコピーされた文字列がローマ字読みされ、かな変換され、かなバッファに格納される。かな変換の結果が日本語の意味を持つ場合には、その意味に対応する英語が検索され、その結果が格納される。
特開平11-7448号公報
 しかしながら、上記特許文献1に記載の装置を使う場合には、ユーザはこの装置に対して、自分が入力したアルファベットの文字列を英単語として認識させるのか、それともローマ字入力による日本語の単語として認識させるのかをユーザ自身が指定する必要がある。そこで、ユーザに入力文字列の言語を指定させることなく、目的とする言語の語句を入力することが可能な仕組みが要請されている。
 本発明の一側面に係る入力支援装置は、ローマ字による入力文字列を受け付ける受付部と、アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する検索部と、第1の処理の結果と第2の処理の結果とを入力候補として出力する出力部とを備える。
 本発明の一側面に係る入力支援方法は、入力支援装置により実行される入力支援方法であって、ローマ字による入力文字列を受け付ける受付ステップと、アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する検索ステップと、第1の処理の結果と第2の処理の結果とを入力候補として出力する出力ステップとを含む。
 本発明の一側面に係る入力支援プログラムは、ローマ字による入力文字列を受け付ける受付部と、アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する検索部と、第1の処理の結果と第2の処理の結果とを入力候補として出力する出力部とをコンピュータに実行させる。
 このような側面によれば、翻訳することなく入力文字列そのものから語句を検索する処理と、その入力文字列に基づく翻訳の処理とが実行され、これらの処理から得られた語句(第1の言語の語句)がまとめて入力候補として出力される。このように、一つの入力文字列に対して複数系統の処理が行われて双方の検索結果が出力されるので、ユーザは、入力文字列の言語を自分で指定することなく、目的とする言語の語句を入力することができる。
 別の側面に係る入力支援装置では、入力文字列が複数の単語を含み、検索部が、複数の単語のそれぞれについて第1の処理及び第2の処理を実行し、出力部が、複数の単語のすべてにおいて検索された共通の第1の言語の語句を入力候補として出力してもよい。入力文字列を構成するすべての単語を用いて入力候補を検索することで、ユーザが入力しようとしている語句を確度高く提示することができる。
 さらに別の側面に係る入力支援装置では、ユーザにより選択された共通の第1の言語の語句が入力文字列の全体と置換されることで、該選択された語句の入力が確定してもよい。この置換により、ユーザは直ぐに次の編集作業に取り掛かることができる。
 さらに別の側面に係る入力支援装置では、入力文字列が複数の単語を含み、出力部が、複数の単語のうち一部の単語において検索された第1の言語の語句を入力候補として出力してもよい。一部の単語のみを用いて入力候補を検索することで、抽出される第1の言語の語句が多すぎたり少なすぎたりする状況を回避することが可能になる。
 さらに別の側面に係る入力支援装置では、一部の単語が、入力文字列において最後に位置する単語であってもよい。
 さらに別の側面に係る入力支援装置では、ユーザにより選択された第1の言語の語句が、複数の単語のうち該選択された語句の検索条件として用いられた単語のみと置換されることで、該選択された語句の入力が確定してもよい。このように置換することで、ユーザはどの単語が置き換えられたかを知ることができる。
 さらに別の側面に係る入力支援装置では、入力候補が、未確定部分を示す情報が付加された第1の言語の語句を含み、未確定部分を有する語句の入力が確定した場合に、該未確定部分にフォーカスが設定されてもよい。このようにフォーカスの位置を設定することで、ユーザは、カーソルを移動させる等の操作をすることなく直ぐに次の編集作業に取り掛かることができる。
 さらに別の側面に係る入力支援装置では、入力候補が、未確定部分を示す情報が付加された第1の言語の語句を含み、未確定部分を有する語句の入力が確定した場合に、該未確定部分に挿入され得る語句を取得し、取得した語句を更なる入力候補として出力する追加処理部を更に備えてもよい。未確定部分を有する語句の入力が確定すると直ぐに、その未確定部分に挿入され得る語句の候補が提示されるので、ユーザはより簡単に文又は文章を作成することができる。
 さらに別の側面に係る入力支援装置では、追加処理部が、語句の未確定部分と該未確定部分に挿入可能な語句との対応が記憶された所定の記憶部を参照することで、未確定部分に挿入され得る語句を取得してもよい。
 さらに別の側面に係る入力支援装置では、追加処理部が、第1の言語及び第2の言語のうち少なくとも一方の言語のコーパスが記憶された所定の記憶部を参照することで、未確定部分に挿入され得る語句を取得してもよい。
 さらに別の側面に係る入力支援装置では、更なる入力候補がコーパス内での出現回数に従った順番で表示されてもよい。このように表示順を設定することで、選択される蓋然性が高い語句をそうでない語句よりも優先してユーザに提示することが可能になる。
 さらに別の側面に係る入力支援装置では、追加処理部が、入力文字列より前に位置する確定済の文字列を解析することで、未確定部分に挿入され得る語句を推定してもよい。未確定部分に挿入され得る語句を、既に入力されている文または文章に基づいて推定することで、その文または文章を入力しているユーザがこれから入力しそうな語句を先行して提示することができる。
 さらに別の側面に係る入力支援装置では、更なる入力候補において、確定済の文字列の解析により推定された語句が、該解析により推定されなかった語句よりも優先して表示されてもよい。このように表示順を設定することで、選択される蓋然性が高い語句をそうでない語句よりも優先してユーザに提示することが可能になる。
 さらに別の側面に係る入力支援装置では、入力候補に含まれる第1の言語の語句に未確定部分が複数存在する場合に、追加処理部が、各未確定部分について更なる入力候補を取得すると共に、第1の未確定部分に挿入され得る語句と第2の未確定部分に挿入され得る語句との自然な組合せを示す組合せ情報を取得し、該組合せ情報を各未確定部分の更なる入力候補と共に出力し、第1及び第2の未確定部分のうちの一方の未確定部分におけるユーザ操作に応じて、他方の未確定部分に挿入され得る語句が組合せ情報に基づいて提示されてもよい。このように語句同士の自然な組合せを提示することで、ユーザは自然な文または文章を簡単に作成することが可能になる。
 さらに別の側面に係る入力支援装置では、入力候補が単語の列とフレーズの列とに分かれて表示されてもよい。入力候補を少なくとも二つに分けた上で表示することで、ユーザは所望の語句を容易に見つけて選択することができる。
 さらに別の側面に係る入力支援装置では、フレーズが語義に従って更に複数の列に分かれて表示されてもよい。フレーズを語義毎に分けた上で提示することで、ユーザは所望の語句を容易に見つけて選択することができる。
 さらに別の側面に係る入力支援装置では、入力候補が語義に従って複数の列に分かれて表示されてもよい。入力候補の語句を語義毎に分けた上で提示することで、ユーザは所望の語句を容易に見つけて選択することができる。
 さらに別の側面に係る入力支援装置では、各列が独立してスクロールするように入力候補が表示されてもよい。このようなスクロール方法により、ユーザは他の列の語句をそのまま見続けながら特定の一つの列内の語句を見渡すことができる。
 本発明の一側面によれば、ユーザは、入力文字列の言語を指定することなく、目的とする言語の語句を入力することができる。
実施形態に係る入力支援の概念を示す図である。 第1実施形態に係る入力支援システムの機能構成を示すブロック図である。 入力支援サーバのハードウェア構成を示す図である。 第1実施形態に係る入力支援システムの動作を示すシーケンス図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 エディタの一連の動作を説明する図である。 第1実施形態に係る入力支援プログラムの構成を示す図である。 第2実施形態に係る入力支援システムの機能構成を示すブロック図である。 第2実施形態に係る入力支援システムの動作を示すシーケンス図である。 エディタ上で更なる入力候補が表示された状態を示す図である。 第2実施形態に係る入力支援プログラムの構成を示す図である。 変形例に係る入力支援システム(ユーザ端末)の機能構成を示すブロック図である。
 以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
 本明細書における用語「アルファベット」とは、一定の順序に並べられた西欧語の文字の総称を意味する。また、用語「ローマ字」とは、ある言語をラテン語で表記する際に用いる文字を意味する。本明細書では、ある言語をローマ字を用いて表記することを「ローマ字表記」という。
 (第1実施形態)
 図1~3を用いて、第1実施形態に係る入力支援システム(以下では単に「システム」ともいう)1の機能及び構成を説明する。このシステム1は英文入力を支援するコンピュータシステムである。このシステム1を用いることで、英語に不慣れなユーザも簡単に英文を作成することが期待できる。
 図1に示すように、ユーザは英文を入力する際に英語の文字列を入力してもよいし、ローマ字入力による日本語の文字列を入力してもよい(ステップS1)。言い換えると、ユーザは自分がこれから入力しようとする文字列の言語をシステム1に予め認識させる必要がない。例えば、「e-mail the address of」という英語フレーズを最終的に得たい場合に、ユーザは「okuru」と日本語を入力してもよいし、「e-mail」と英語を入力してもよい。
 文字列が入力されると、入力支援システム1はその文字列を用いて二種類の処理を実行する。一つは、入力文字列を英語とみなして、その文字列を含む単語又はフレーズをデータベースから検索する処理である(ステップS2)。もう一つは、入力文字列を日本語とみなして、その文字列に関連する英語翻訳をデータベースから取得する処理である(ステップS3)。そして、入力支援システム1はこれら二つの処理で得られた結果を入力候補として一度にユーザに提示する(ステップS4)。二つのステップS2,S3ではいずれも英語の語句が得られるので、入力候補としてユーザに提示される語句はすべて英語である。なお、本明細書における語句とは、単語及びフレーズの一方又は双方のことをいう。
 図2に示すように、入力支援システム1はユーザ端末10、入力支援サーバ(入力支援装置)20、及び言語データベース(記憶部)30を備えている。ユーザ端末10と入力支援サーバ20とはインターネットや専用線などの通信ネットワークを介して双方向に通信することが可能である。また、入力支援サーバ20は同様の通信ネットワークを介して言語データベース30にアクセスすることができる。
 ユーザ端末10は、英文を作成しようとするユーザが使用するコンピュータである。ユーザ端末10の種類は限定されず、例えば据置型又は携帯型のパーソナルコンピュータでもよいし、高機能携帯電話機(スマートフォン)や携帯電話機、携帯情報端末(PDA)などの携帯端末でもよい。入力支援システム1内に存在するユーザ端末10の台数も限定されない。ユーザ端末10は文字の入力及び表示を実行するエディタ(editor)11を備えている。本実施形態ではエディタ11は入力支援サーバ20と通信する機能を有するが、エディタ11の具体的な実装方法は何ら限定されない。例えば、エディタ11はウェブブラウザ(Web Browser)上に実装されてもよいし、特定のワードプロセッサ・アプリケーション・プログラム内に組み込まれてもよい。
 入力支援サーバ20は、ローマ字による日本語が入力されるか、または英単語が入力されると、その入力文字列に基づいて入力候補を検索してユーザに提示するコンピュータである。入力支援サーバ20はこのような処理を実行するために言語データベース30を参照する。
 言語データベース30は、英語と日本語との対訳を記憶する装置である。英語の語句と、ローマ字表記された日本語の語句との対応関係が特定できる限り、言語データベース30及びこの中に格納されるデータの具体的な構成(態様)は何ら限定されない。
 例えば、既存の辞書データベース又はコーパスを言語データベース30として用いてもよい。ただし、入力文字列はローマ字で表現されるので、言語データベース30内の日本語は少なくともローマ字で表記されている必要がある。もちろん、言語データベース30中における日本語については、ローマ字表記と共に、平仮名、片仮名、又は漢字による表記が存在していてもよい。言語データベース30は、英語と、平仮名、片仮名、又は漢字により表記された日本語(仮名等で表記された日本語)との対訳データベースと、仮名等で表記された日本語とローマ字表記された日本語との対応を示す変換テーブルとから成っていてもよい。本実施形態では、エディタ11が入力候補の英語のフレーズを日本語の語義毎に分けて表示するので、各フレーズには日本語の語義に関する情報(例えば格フレーム辞書の情報)が予め付加されている。
 また、言語データベース30は対訳データだけでなく、英語の語句のリストを示すデータを含んでいてもよい。図1で示すように入力支援システム1は二種類の検索を実行するので、参照するデータベース又は記憶領域を検索処理毎に変えてもよい。例えば、入力支援システム1は、英語からの検索を実行する場合には英語表現のみが登録されているデータベースを用い、日本語からの検索を実行する場合には二言語間の対訳が登録されているデータベースを用いてもよい。
 次に、入力支援サーバ20の機能及び構成を具体的に説明する。入力支援サーバ20のハードウェア構成を図3に示す。この図に示すように、入力支援サーバ20は、オペレーティングシステムやアプリケーション・プログラムなどを実行するCPU201と、ROM及びRAMで構成される主記憶部202と、ハードディスクなどで構成される補助記憶部203と、ネットワークカードなどで構成される通信制御部204と、キーボードやマウスなどの入力装置205と、ディスプレイなどの出力装置206とを備えている。
 後述する入力支援サーバ20の各機能的構成要素は、CPU201又は主記憶部202の上に所定のソフトウェアを読み込ませ、CPU201の制御の下で通信制御部204や入力装置205、出力装置206などを動作させ、主記憶部202又は補助記憶部203におけるデータの読み出し及び書き込みを行うことで実現される。処理に必要なデータやデータベースは主記憶部202又は補助記憶部203内に格納される。なお、図3では入力支援サーバ20が1台のコンピュータで構成されているように示しているが、入力支援サーバ20の機能を複数台のコンピュータに分散させてもよい。
 図2に示すように、入力支援サーバ20は機能的構成要素として受付部21、検索部22、及び提供部(出力部)23を備えている。
 受付部21は、アルファベットによる入力文字列を受け付ける機能要素である。ユーザ端末10のエディタ11は入力された文字列を入力支援サーバ20に送信し、受付部21はその入力文字列を受信して検索部22にその文字列を出力する。
 エディタ11が入力文字列を入力支援サーバ20に送信するタイミングは限定されない。例えば、エディタ11は所定の長さ以上の文字列(例えば2又は3文字以上の文字列)の入力を受け付けた時に初めて入力支援サーバ20にその文字列を送信してもよい。受付部21が受信する入力文字列の長さの下限を設定することで、単語又はフレーズの検索の負荷を軽減したり、ユーザ端末10上に表示される入力候補の個数を抑えてエディタ11をより使い易くしたりすることができる。あるいは、エディタ11は区切り文字(スペース)が入力された時に入力文字列を送信してもよい。一つの単語を入力文字列とすることで検索の負荷をさらに軽減したり入力候補の個数をさらに抑えたりすることができる。
 あるいは、エディタ11はキー入力が所定の時間(例えば2秒など)途絶えた時に入力文字列を送信してもよい。さらに別の手法として、エディタ11はユーザが検索ボタンや送信ボタンなどを押したことに応じて入力文字列を送信してもよい。これら二つの手法によれば、スペースで区切られた複数の単語から成る入力文字列を入力支援サーバ20に送信することができる。
 受付部21又はエディタ11は、区切り文字が無い入力文字列から複数の単語を自動的に特定してもよい。例えば、受付部21又はエディタ11は、「nimotsuwookuru」(英語の「send a package」に相当)という文字列を受け付けた場合に、この文字列をローマ字表記の日本語とみなして形態素解析することで、「nimotsu」「wo」「okuru」という3単語を特定し、これらの単語を検索部22に出力してもよい。このような単語分割において、受付部21又はエディタ11は、検索での必要性が低い特定の語(例えば助詞)を削除し、残った単語(例えば名詞や動詞など)のみを検索部22に出力してもよい。例えば、受付部21又はエディタ11は日本語の助詞である「wo」を削除して、名詞「nimotsu」及び動詞「okuru」のみを検索部22に出力してもよい。
 検索部22は、入力文字列に対応する入力候補を言語データベース30から取得する機能要素である。検索部22は図1に示すような二通りの手法で英語の語句を取得する。
 まず、検索部22は入力文字列を含む英語(第1の言語)の語句を第1の検索結果として言語データベース30から取得する。この第1の処理では、検索部22は入力された言語が英語であるとみなして検索を行う。したがって、ローマ字表記の日本語が入力された場合には、検索部22は第1の処理(英語からの検索)では英語の語句を取得することができない。もちろん、ユーザが日本語を入力したつもりでもその文字列を含む英語がたまたま存在すれば、検索部22はこの第1の処理で一以上の英語の語句を取得する。
 例えば、入力文字列が「forg」であれば、検索部22は「forget」「forgot」「forgive」などの単語と、「get forgotten」「get forgetful」「forgive A for B」などのフレーズとを取得する。
 次に、検索部22は、入力文字列を含む日本語(第2の言語)の語句に対応する英語(第1の言語)の語句を第2の検索結果として取得する。この第2の処理では、検索部22は入力された言語が日本語であるとみなして検索を行うので、英語が入力された場合には、検索部22はこの第2の処理(日本語からの検索)では英語の語句を取得することができない。もちろん、ユーザが英語を入力したつもりでもその文字列で示される日本語がたまたま存在すれば、検索部22はこの第2の処理で一以上の英語の語句を取得する。
 例えば、入力文字列が「okuru」であれば、検索部22はこの日本語に相当し得る「send」「give」「lead」などの単語と、この日本語に相当し得る「send e-mail to」「e-mail the address of」「lead a gracious life」などのフレーズとを取得する。一つの日本語の単語が複数の英語の単語に対応することがあるので、この例のように一つの日本語の単語から様々な意味の英語の語句が抽出される場合がある。
 なお、入力文字列から語句を検索する方法として前方一致、完全一致、後方一致、部分一致などの様々な手法がある。また、文字そのものの同一性を見るのではなく、入力された単語の関連語句をシソーラス(関連語のデータベース)から検索する手法もある。例えば、検索部22は日本語「nimotsu」の関連語「kamotsu(貨物)」と日本語「okuru」の関連語「soufu(送付)」とをシソーラスから抽出し、これら二つの関連語を用いて言語データベース30から英語の語句を取得してもよい。このように様々な検索手法があるが、検索部22は任意の一以上の手法を用いて語句を検索してよい。
 検索部22はこのような二種類の処理により得た第1及び第2の検索結果を提供部23に出力する。この際には、検索部22は、取得した英語の語句の一つ一つに対して、その語句が英語からの検索(第1の処理)により抽出されたのかそれとも日本語からの検索(第2の処理)により抽出されたのかを示すフラグを付加する。なお、当然ながら、ユーザのタイプミスなどにより第1及び第2の検索結果が共に空(NULL)であることも有り得る。
 入力文字列が複数の単語を含む場合には、検索部22は各単語について上記二種類の検索を行うことで、入力されたすべての単語において抽出された共通のフレーズを最終的に取得してもよい(共通フレーズの検索)。入力文字列を構成するすべての単語を用いて入力候補を検索することで、ユーザが入力しようとしている語句を確度高く提示することができる。共通フレーズの検索において、入力文字列は英語のみから成っていてもよいし、日本語のみから成っていてもよいし、日本語及び英語の混合であってもよい。例えば、入力文字列が二つの英語「send」及び「package」を含む場合、二つの日本語「okuru」(英語の「send」に相当)及び「nimotsu」(英語の「package」に相当)から成る場合、そして日本語「nimotsu」及び英語「send」から成る場合のいずれにおいても、検索部22は「send a package」(日本語で「荷物を送る(nimotsu wo okuru)」という意味)というフレーズを検索する。
 入力文字列が複数の単語を含む場合の別の処理方法として、検索部22はそのうちの一部単語についてのみ上記二種類の検索を行ってもよい(一部の単語を用いた検索)。例えば、検索部22は入力文字列において最後に位置する単語についてのみ上記二種類の検索を行ってもよい。一部の単語のみを用いて入力候補を検索することで、抽出される英語の語句が多すぎたり少なすぎたりする状況を回避することが可能になる。
 さらに別の方法として、検索部22は共通フレーズの検索と、一部の単語を用いた検索との双方を実行して、これら二種類の検索結果を取得してもよい。この場合には、検索部22は入力候補として取得した語句のそれぞれに、共通フレーズの検索で得られた語句か、それとも一部の単語を用いた検索により取得した語句かを区別するためのフラグを付加する。
 提供部23は、検索部22による検索結果を入力候補としてユーザ端末10に送信する機能要素である。上述したように、検索結果に含まれる英語の語句のそれぞれには、その語句がどのような検索により抽出されたかを示すフラグが関連付けられている。ユーザ端末10ではエディタ11がその入力候補を受信して画面上に表示する。
 次に、図4を用いて、入力支援システム1の動作を説明するとともに本実施形態に係る入力支援方法について説明する。
 まず、ユーザ端末10でエディタ11がアルファベットで入力された所定の長さ以上の文字列を取得し(ステップS11)、その入力文字列を入力支援サーバ20に送信する(ステップS12)。
 入力支援サーバ20では、受付部21がその入力文字列を受信し(ステップS12、受付ステップ)、次に検索部22がその文字列に基づいて入力候補を検索する。具体的には、検索部22は入力文字列を含む英語の語句を検索すると共に(ステップS13、検索ステップ)、その入力文字列を含む日本語の語句に対応する英語の語句を検索する(ステップS14、検索ステップ)。なお、検索部22は日本語からの検索(ステップS14)を実行した後に英語からの検索(ステップS13)を実行してもよい。最後に、提供部23がこれら二種類の検索の結果を入力候補としてユーザ端末10に送信する(ステップS15、出力ステップ)。
 ユーザ端末10ではエディタ11がその入力候補を受信して画面上に表示する(ステップS16、出力ステップ)。ユーザは表示された入力候補から一つを選択でき、選択された英語の語句が確定語句としてエディタ11上に表示される。
 次に、図5~13を用いて、エディタ11上で入力候補がどのように表示されるかを説明する。
 例えば、図5に示すように、ユーザがローマ字表記による日本語「okuru」を入力したとする。この場合には、エディタ11が入力文字列「okuru」を入力支援サーバ20に送信し、検索部22がこの文字列に基づいて二種類の検索を実行する。「okuru」を含む英単語は存在しないので、検索部22は英語からの検索では英語の語句を取得することができない。しかし、日本語の「okuru」は、英語の「send」「give」「present」「lead」などのいくつかの単語に相当する意味を持っているので、検索部22は日本語からの検索を実行することで英語の語句を取得する。したがって、提供部23は一又は複数の英語の語句を入力候補としてユーザ端末10に送信し、エディタ11がその入力候補を画面上に表示する。
 ユーザ端末10で表示される入力候補の例を図6に示す。この図では、エディタ11は入力候補を候補欄Cに一覧表示している。検索された英語の語句Eのそれぞれには日本語の翻訳Jが併記される。候補欄の左上にある「単語(日本語から)」というタイトルは、今回の語句が日本語からの検索により得られたものであることを示している。エディタ11は取得した語句に関連付けられているフラグを参照することでそのタイトルを決めることができる。
 この図では、エディタ11は入力候補を、最左列に表示される単語のリストL1と、それ以外の列に表示されるフレーズのリストとに分けて表示する。更に、エディタ11はフレーズを日本語の「okuru」の意味毎にそれぞれの列L2~L4に分ける。図6の例では候補欄Cの高さと比較して英単語の個数が多いので列L1にはスクロールバー(scroll bar)が表示されているが、エディタ11はこのスクロールバーを各列の単語数又はフレーズ数に応じて各列に設定する。したがって、ユーザは他の列の語句をそのまま見続けながら特定の一つの列内の語句を見渡すことができる。英語フレーズを日本語の意味毎に分けた際のグループ数が候補欄Cの幅と比較して多いようであれば、エディタ11はフレーズの列を見渡すための横方向のスクロールバーを設定する。
 このように、入力候補を単語とフレーズに分けたり、あるいはフレーズを語義毎に分けたりした上でその入力候補を表示することで、ユーザは所望の語句を容易に見つけて選択することができる。なお、エディタ11は取得した語句を単語とフレーズとに分けることなく、それらの語句を単に語義のみに分けた上で表示してもよい。この場合にも、ユーザは所望の語句を容易に見つけて選択することができる。
 図7に示すようにユーザが入力候補から単語「send」を選択すると、図8に示すように、エディタ11はその単語を入力文字列「okuru」と入れ替えて表示する。これにより、「send」の入力が確定する。一方、図9に示すようにユーザが入力候補からフレーズ「e-mail the address of」を選択すると、図10に示すように、エディタ11はそのフレーズを入力文字列「okuru」と入れ替えて表示する。これにより、「e-mail the address of」の入力が確定する。
 なお、図6,7に示すように、被選択状態の単語の別の語義をボックスBで示してもよい。
 別の例において、図11に示すように、ユーザがアルファベットで英語「e-mail」と入力したとする。この場合には、エディタ11が入力文字列「e-mail」を入力支援サーバ20に送信し、検索部22がこの文字列に基づいて二種類の検索を実行する。「e-mail」とローマ字表記される日本語は存在しないので、検索部22は日本語からの検索では英語の語句を取得することができない。しかし、当然ながら、検索部22は英語からの検索を実行することでこの「e-mail」を含む英語の語句を取得することができる。なお、仮に入力文字列が「e-mai」であった場合でも同様の結果が得られる。したがって、提供部23は一又は複数の英語の語句を入力候補としてユーザ端末10に送信し、エディタ11がその入力候補を画面上に表示する。
 この場合にユーザ端末10で表示される入力候補の例を図12に示す。この例でも、エディタ11は候補欄C中において英語の語句のそれぞれに日本語の翻訳を併記する。図12では、複数の語義を有する「e-mail」にフォーカスが当たっており、このフォーカス設定を受けて他の語義の説明がボックスBで表示されている。もっとも、エディタ11にこのボックスBの機能を実装するか否かは、任意に定めてよい。ユーザが入力候補から一の単語又はフレーズを選択すると、エディタ11は選択された語句を入力文字列「e-mail」と入れ替えて表示し、これにより入力が確定する。
 図13は、入力文字列が複数の単語を含む場合の入力候補の一例を示している。列L1には、入力文字列中の最後の日本語「okuru」に相当する英単語のリストが表示されている。列L2には、入力文字列に含まれる二つの日本語「nimotsu」及び「okuru」の双方の翻訳を含む英語フレーズのリストが表示されている。列L3,L4には、入力文字列中の最後の日本語「okuru」の翻訳を含む英語フレーズのリストが表示されている。エディタ11は、各フレーズに関連付けられているフラグを参照することで、そのフレーズをどの列に表示させるべきかを判定することができる。
 図13の例では、ユーザが列L1から一つの英単語を選ぶか、あるいは列L3又はL4から一つのフレーズを選んだ場合には、エディタ11は入力文字列の最後の単語「okuru」のみを選択された語句と置き換えて入力を確定させる。言い換えれば、エディタ11は、入力支援サーバ20における英語の語句の検索条件として用いられた単語のみを、ユーザにより指定された語句と置き換える。この場合には、ユーザはどの単語が置き換えられたかを知ることができる。
 これに対して、ユーザが列L2からフレーズを選んだ場合には、エディタ11は入力文字列に含まれる二つの日本語「nimotsu」及び「okuru」を選択されたフレーズと置き換えることで入力を確定させる。したがって、ユーザは直ぐに次の編集作業に取り掛かることができる。エディタ11は、入力候補内の各語句のフラグを参照することで入力文字列の置換部分を判定することができる。
 なお、図13では入力文字列が二つの単語を含んでいるが、上述したように、入力文字列が3以上の単語を含む場合もある。例えば、入力文字列が日本語「okuru」「nimotsu」「koukuubin(英語の「airmail」に相当)」という3単語を含んでもよい。
 次に、図14を用いて、入力支援システム1を実現するための入力支援プログラムPを説明する。入力支援プログラムPは、ユーザ端末10でエディタ11を機能させるためのクライアント・プログラムP1と、コンピュータを入力支援サーバ20として機能させるためのサーバ・プログラムP2とを備えている。
 クライアント・プログラムP1はエディタ・モジュールP11を備えており、このモジュールによりエディタ11の機能が実現される。
 サーバ・プログラムP2は、メインモジュールP20、受付モジュールP21、検索モジュールP22、及び提供モジュールP23を備えている。メインモジュールP20は、入力支援サーバ20の機能を統括的に制御する部分である。受付モジュールP21、検索モジュールP22、及び提供モジュールP23を実行することにより実現される機能はそれぞれ、上記の受付部21、検索部22、及び提供部23の機能と同様である。
 クライアント・プログラムP1及びサーバ・プログラムP2はそれぞれ、例えば、CD-ROMやDVD-ROM、半導体メモリ等の有形の記録媒体に固定的に記録された上で提供される。また、各プログラムP1,P2は、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。
 以上説明したように、本実施形態によれば、翻訳することなく入力文字列そのものから語句を検索する処理(英語からの検索)と、その入力文字列に基づく翻訳の処理(日本語からの検索)とが実行され、これら二種類の処理から得られた英語の語句がまとめて入力候補として出力される。通常、ユーザは入力モードを切り替えるなどの操作を行った上で文または文章を入力する必要がある。しかし本実施形態では、一つの入力文字列に対して二系統の処理が行われて双方の検索結果が出力されるので、ユーザは、入力文字列の言語を自分で指定することなく(例えば入力モードを切り替えることなく)、目的とする言語の語句を入力することができる。
 (第2実施形態)
 次に、第2実施形態に係る入力支援システム2を説明する。このシステム2は、ユーザが入力候補から一の語句を選択して入力を確定させた際にその語句のスロット(slot)に当てはまる語句を更に提示するという点で、第1実施形態(入力支援システム1)と異なる。このために、入力支援システム2は入力支援サーバ20Aを備えている。
 本明細書における「スロット」とは、入力候補から選択された一つの語句に設定された未確定部分であり、この未確定部分には目的語や補語などが挿入され得る。このスロットは単語の前後、あるいはフレーズの前、後ろ、又は途中に設定される。例えば、「give someone a birthday present」というフレーズにおける「someone」は、フレーズ中に設定されたスロットである。別の例として、「e-mail the address of」というフレーズの後に続く部分もスロットとして設定され得る。あるいは「provide A with B」というフレーズにおける「A」「B」もスロットの一例である。このようなスロットに当てはまる語句を更に提示すれば、文章入力が更に簡略化されることが期待できる。
 図15に示すように、本実施形態の入力支援サーバ20Aは上記のような追加機能を実現するために、第1実施形態における三つの機能的構成要素に加えてスロット処理部(追加処理部)24を備えている。また、エディタ11は、スロットに当てはまる可能性がある語句を得るための機能を更に有する。また、入力候補としてユーザ端末10に表示され得る英語の語句のうちの少なくとも一部には、スロットの位置を示す情報が予め関連付けられている。
 エディタ11は、ユーザが入力候補の中から一の語句を選択すると、その語句の入力を確定すると共に、その語句の情報を入力支援サーバ20Aに送信する。また、エディタ11はスロットの位置にフォーカスを設定する。スロットが複数存在すれば、エディタ11はそのうちの一つのスロット(例えば、先頭のスロット)にフォーカスを設定する。その後、エディタ11は、確定語句の情報の送信に応じて入力支援サーバ20から送られてきた更なる入力候補を受信し、その入力候補を画面上に表示する。この更なる入力候補は、スロットに挿入され得る語句のことである。
 スロット処理部24は、スロットを有する英語の語句の入力が確定した場合に、そのスロットに挿入される英語の語句を取得し、取得した語句を更なる入力候補として出力する機能要素である。スロット処理部24は、エディタ11から受信した確定語句の情報に基づいて、スロットに挿入される可能性がある語句を取得し、その処理結果をユーザ端末10に送信する。
 スロットに当てはまる語句を検索する方法は限定されない。第1の手法として、スロットを有する英語の語句と、そのスロットに挿入され得る語句とが関連付けられて言語データベース30に格納されていることを前提とした上で、スロット処理部24は確定語句のスロットに挿入され得る語句を言語データベース30から抽出してもよい。
 あるいは、第2の手法として、スロット処理部24は従来の自然言語処理の技術を用いることで、確定語句のスロットに挿入され得る語句を判断してもよい。例えば、スロット処理部24は、英文に対してnグラム(n-gram)の手法を用いることで更なる入力候補を得るとともに、格フレーム辞書の情報を含む対訳データを参照することで更なる入力候補を得てもよい。このように、スロット処理部24は、第1実施形態で説明した入力候補(最初の入力候補)の取得と同様に、英語からの検索と日本語からの検索との双方を用いて更なる入力候補を得ることができる。この場合には、スロット処理部24は、得られた語句がその二種類の検索処理のどちらで得られたかを示すフラグをその語句に関連付ける。なお、この処理の際に用いる自然言語処理はnグラム及び格フレーム辞書に限定されず、任意の手法を採用し得る。
 あるいは、第3の手法として、スロット処理部24は言語データベース30内の英文コーパスを検索することで更なる入力候補を抽出してもよい。具体的には、スロット処理部24は確定語句を含む文を抽出し、抽出された一以上の文を解析して、スロットの位置に実際に挿入されている語句をその出現回数と共に特定する。そして、スロット処理部24は特定した一以上の語句を出現回数の降順にソートすることでリストを作成し、このリストを更なる入力候補として設定する。例えば、スロット処理部24は確定語句「give someone a birthday present」に対して、出現回数の降順に「you」「her」「him」「Tom」という単語群を更なる入力候補として設定する。出現回数に従って表示順を設定することで、選択される蓋然性が高い語句をそうでない語句よりも優先してユーザに提示することが可能になる。あるいは、スロット処理部24は、PMI(Pointwise Mutual Information。自己相互情報量)などを使って、頻度そのものは大きくないが後に続く特徴的な語を更なる入力候補として設定してもよい。
 あるいは、第4の手法として、スロット処理部24は、エディタ11上で今回の確定語句よりも前に位置している文又は文章を解析することで、スロットに挿入される蓋然性が高い語句を特定してもよい。例えば、「His birthday is in December. I will」という文章が既に入力されているとする。この場合にユーザが「okuru」と入力し、その操作に応じて表示された入力候補から「give someone a birthday present」というフレーズを選んだ場合には、スロット処理部24は単語「His」を手掛かりに「him」を更なる入力候補として抽出する。この第4の手法では、スロット処理部24は確定語句の情報だけでなく、それより前方の文又は文章の情報もエディタ11から受信する必要がある。この第4の手法によれば、文または文章を入力しているユーザがこれから入力しそうな語句を先行して提示することができる。
 あるいは、スロット処理部24は第3の手法に従って抽出した単語群のうち、第4の手法に従って導出された単語を、当該手法により導出されなかった単語よりも優先して表示させてもよい(第5の手法)。例えば、スロット処理部24は、第4の手法で導出された単語の表示順が他の単語の表示順よりも早くなるように、単語群内の各単語の表示順を設定してもよい。
 このように、スロットに挿入され得る語句の取得手法は何ら限定されない。また、この語句の表示順も上記に限定されず、例えばスロット処理部24は取得した語句をアルファベット順に並べてもよい。
 スロットが複数存在する場合には、スロット処理部24は各スロットについて任意の手法(例えば上記第1~第5の手法うちのいずれかの手法)で更なる入力候補を抽出してもよい。
 また、スロット処理部24は、複数スロットのうち少なくとも二つのスロットのそれぞれに挿入される語句の自然な組合せの情報を、各スロットに挿入され得る語句と共にエディタ11に送信してもよい。なお、組合せ情報は言語データベース30に格納されていてもよいし、スロット処理部24が予め保持しておいてもよい。
 例えば、第1のスロットの候補として二つの英単語「rent」「borrow」があり、第2のスロットの候補として二つの英単語「library」「rental shop」があると仮定する。この場合に、スロット処理部24は、「library」と「borrow」との組合せが「library」と「rent」との組合せよりも自然であることを示す組合せ情報Caと、「rental shop」と「rent」との組合せが「rental shop」と「borrow」との組合せよりも自然であることを示す組合せ情報Cbとを言語データベース30から読み出してエディタ11に送信する。
 次に、図16を用いて、入力支援システム2の動作を説明するとともに本実施形態に係る入力支援方法について説明する。
 ステップS11~S16の処理は第1実施形態と同じである。その後ユーザが入力候補から一つの語句を選択して入力を確定すると(ステップS17)、エディタ11は確定語句のスロットにフォーカスを設定する(ステップS18)。
 例えば、確定語句が「give someone a birthday present」であればエディタ11は単語「someone」の全体に対してフォーカスを設定する。別の例で、確定語句が「e-mail the address of」であれば、エディタ11は「of」の後ろにフォーカスを設定する。このようにフォーカスの位置を設定することで、ユーザは、カーソルを移動させる等の操作をすることなく直ぐに次の編集作業に取り掛かることができる。例えば、単語全体に対してフォーカスが設定されることで、ユーザはその単語を入力候補からの選択、又は直接入力により直ぐに上書きできる。この様なフォーカス設定に加えて、エディタ11は確定語句の情報を入力支援サーバ20に送信する(ステップS19)。
 入力支援サーバ20ではスロット処理部24がその情報を受信し(ステップS19)、上述した任意の手法により、スロットに挿入され得る英語の語句を取得する(ステップS20)。そして、スロット処理部24は抽出した語句を更なる入力候補としてユーザ端末10に送信する(ステップS21)。
 ユーザ端末10ではエディタ11がその更なる入力候補を受信して画面上に表示する(ステップS22)。ユーザがその候補の中から一つを選択すると、選択された英語の語句がスロットに挿入され、これにより入力が確定する。
 スロットが複数存在する場合には、エディタ11は、ユーザの選択操作に基づいて各スロットの語句を一つずつ確定していってもよい。あるいは、エディタ11は、ユーザがすべてのスロットに対して選択操作をした後で全スロットの語句を一括して確定することで、個々のスロットでの語句を再選択する機会をユーザに提供してもよい。
 組合せ情報を受信した場合には、エディタ11はその情報に基づいて、一のスロットにおいてユーザが選択した語句とより自然に対応する他のスロットの語句を自動的に選択及び提示するか、あるいは、自動的に選択することなく、より自然な語句をヘルプ情報としてユーザに提示してもよい。このように語句同士の自然な組合せを提示することで、ユーザは自然な文または文章を簡単に作成することが可能になる。
 例えば、エディタ11が、第1のスロットの候補である二つの英単語「rent」「borrow」と、第2のスロットの候補である「library」「rental shop」という英単語と、上述した組合せ情報Ca,Cbを受信したとする。そして、ユーザが第1のスロットで「rent」を選択した後に第2のスロットで「library」を選択したとする。この場合に、エディタ11はそのユーザ操作に応じて、第1のスロットの「rent」を「borrow」に置き換えるか、あるいは「borrow」の方がより自然な単語である旨のヘルプ情報を表示する。
 次に、図17を用いて、エディタ11上で更なる入力候補がどのように表示されるかを説明する。
 入力候補から「chuck a ball to」という英語のフレーズが選択されることで入力が確定したとする。この場合には、エディタ11がこのフレーズの情報を入力支援サーバ20に送信する。続いて、スロット処理部24がこのフレーズに基づいて更なる入力候補を取得してその候補をユーザ端末10に送信する。
 そして、エディタ11がその更なる入力候補を図17に示すように画面上に表示する。この図では、エディタ11は更なる入力候補を候補欄Cに一覧表示している。この例では、更なる入力候補は、英語からの検索により得られた語句(列L1)と、日本語からの検索により検索された語句(列L2)とに分かれて表示されている。各語句が二つのグループのうちのどちらに属するかは、その語句に関連付けられているフラグを参照することで判定できる。図17に示すように、更なる入力候補を表示する際にも、エディタ11はスクロールバーを各列の単語数又はフレーズ数に応じて各列に設定してもよい。
 次に、図18を用いて、入力支援システム2を実現するための入力支援プログラムPを説明する。本実施形態の入力支援プログラムPは、サーバ・プログラムP2Aが、メインモジュールP20、受付モジュールP21、検索モジュールP22、及び提供モジュールP23に加えてスロット処理モジュールP24を備える点で、第1実施形態と異なる。スロット処理モジュールP24を実行することにより実現される機能は上記のスロット処理部24の機能と同様である。
 以上説明した第2実施形態も第1実施形態と同様の効果を奏する。加えて、本実施形態によれば、スロットを有する語句の入力が確定すると直ぐに、そのスロットに挿入され得る語句の候補(更なる入力候補)が提示されるので、ユーザはより簡単に文又は文章を作成することができる。
 以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
 上記実施形態ではクライアント・サーバ型の入力支援システムを示したが、ユーザ端末、あるいはエディタが入力支援サーバ20又は20Aの機能を備える入力支援装置を採用してもよい。例えば図19に示すように、ユーザ端末10Aに実装されたエディタ11Aが受付部21、検索部22、提供部23、及びスロット処理部24を備えていてもよい。この場合には、検索部22及びスロット処理部24はネットワークを介して言語データベース30にアクセスする。
 上記実施形態において、言語データベース30は入力支援サーバ20又は20A内に設けられていてもよい。これと同様に、図19の変形例において、言語データベース30はユーザ端末10A内に設けられていてもよい。
 上記実施形態では、入力支援システムは英文入力を支援するために英語の入力又はローマ字表記の日本語の入力を受け付けた。すなわち、上記実施形態では第1の言語が英語であり、第2の言語が日本語であった。しかし、どの言語を第1及び第2の言語とするかは任意に定めてよい事項である。ただし、第1の言語はアルファベットを用いて表現される言語(例えばフランス語やドイツ語)である。一方、第2の言語は、通常はアルファベットを用いないがアルファベットでも表現可能な言語(例えば中国語)でもよいし、アルファベットを用いて表現される言語(例えばフランス語、ドイツ語、英語)でもよい。したがって、第1及び第2の言語の双方がラテン語系の言語であってもよい。
 エディタ上での入力候補及び更なる入力候補の表示方法も限定されない。例えば、エディタ11はスクロールバーを候補欄C全体に対して一つのみ表示させてもよいし、入力候補を単語の列とフレーズの列との二つにのみ分けて表示させてもよい。あるいは、スクロールバーではなくページ切替の手法を用いて、表示されていない語句を表示させてもよい。
 上記第2実施形態では、エディタ11がスロットにフォーカスを設定し、その後に更なる入力候補を表示した。しかし、入力支援システムは、スロットにフォーカスを設定した時点で処理を終了し、更なる入力候補の取得を行わなくてもよい。
 1,2…入力支援システム、10,10A…ユーザ端末、11,11A…エディタ、20,20A…入力支援サーバ、21…受付部、22…検索部、23…提供部(出力部)、24…スロット処理部(追加処理部)、30…言語データベース(記憶部)、P…入力支援プログラム、P1…クライアント・プログラム、P11…エディタ・モジュール、P2,P2A…サーバ・プログラム、P20…メインモジュール、P21…受付モジュール、P22…検索モジュール、P23…提供モジュール、P24…スロット処理モジュール。

Claims (20)

  1.  ローマ字による入力文字列を受け付ける受付部と、
     アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する検索部と、
     前記第1の処理の結果と前記第2の処理の結果とを入力候補として出力する出力部と
    を備える入力支援装置。
  2.  前記入力文字列が複数の単語を含み、
     前記検索部が、前記複数の単語のそれぞれについて前記第1の処理及び前記第2の処理を実行し、
     前記出力部が、前記複数の単語のすべてにおいて検索された共通の前記第1の言語の語句を前記入力候補として出力する、
    請求項1に記載の入力支援装置。
  3.  ユーザにより選択された前記共通の第1の言語の語句が前記入力文字列の全体と置換されることで、該選択された語句の入力が確定する、
    請求項2に記載の入力支援装置。
  4.  前記入力文字列が複数の単語を含み、
     前記出力部が、前記複数の単語のうち一部の単語において検索された前記第1の言語の語句を前記入力候補として出力する、
    請求項1~3のいずれか一項に記載の入力支援装置。
  5.  前記一部の単語が、前記入力文字列において最後に位置する単語である、
    請求項4に記載の入力支援装置。
  6.  ユーザにより選択された前記第1の言語の語句が、前記複数の単語のうち該選択された語句の検索条件として用いられた単語のみと置換されることで、該選択された語句の入力が確定する、
    請求項4又は5に記載の入力支援装置。
  7.  前記入力候補が、未確定部分を示す情報が付加された前記第1の言語の語句を含み、
     前記未確定部分を有する語句の入力が確定した場合に、該未確定部分にフォーカスが設定される、
    請求項1~6のいずれか一項に記載の入力支援装置。
  8.  前記入力候補が、未確定部分を示す情報が付加された前記第1の言語の語句を含み、
     前記未確定部分を有する語句の入力が確定した場合に、該未確定部分に挿入され得る語句を取得し、取得した語句を更なる入力候補として出力する追加処理部を更に備える、
    請求項1~7のいずれか一項に記載の入力支援装置。
  9.  前記追加処理部が、語句の未確定部分と該未確定部分に挿入可能な語句との対応が記憶された所定の記憶部を参照することで、前記未確定部分に挿入され得る語句を取得する、
    請求項8に記載の入力支援装置。
  10.  前記追加処理部が、前記第1の言語及び前記第2の言語のうち少なくとも一方の言語のコーパスが記憶された所定の記憶部を参照することで、前記未確定部分に挿入され得る語句を取得する、
    請求項8又は9に記載の入力支援装置。
  11.  前記更なる入力候補が前記コーパス内での出現回数に従った順番で表示される、
    請求項10に記載の入力支援装置。
  12.  前記追加処理部が、前記入力文字列より前に位置する確定済の文字列を解析することで、前記未確定部分に挿入され得る語句を推定する、
    請求項8~11のいずれか一項に記載の入力支援装置。
  13.  前記更なる入力候補において、前記確定済の文字列の解析により推定された語句が、該解析により推定されなかった語句よりも優先して表示される、
    請求項12に記載の入力支援装置。
  14.  前記入力候補に含まれる前記第1の言語の語句に前記未確定部分が複数存在する場合に、前記追加処理部が、各未確定部分について前記更なる入力候補を取得すると共に、第1の未確定部分に挿入され得る語句と第2の未確定部分に挿入され得る語句との自然な組合せを示す組合せ情報を取得し、該組合せ情報を各未確定部分の更なる入力候補と共に出力し、
     前記第1及び第2の未確定部分のうちの一方の未確定部分におけるユーザ操作に応じて、他方の未確定部分に挿入され得る語句が前記組合せ情報に基づいて提示される、
    請求項8~13のいずれか一項に記載の入力支援装置。
  15.  前記入力候補が単語の列とフレーズの列とに分かれて表示される、
    請求項1~14のいずれか一項に記載の入力支援装置。
  16.  前記フレーズが語義に従って更に複数の列に分かれて表示される、
    請求項15に記載の入力支援装置。
  17.  前記入力候補が語義に従って複数の列に分かれて表示される、
    請求項1~14のいずれか一項に記載の入力支援装置。
  18.  各列が独立してスクロールするように前記入力候補が表示される、
    請求項15~17のいずれか一項に記載の入力支援装置。
  19.  入力支援装置により実行される入力支援方法であって、
     ローマ字による入力文字列を受け付ける受付ステップと、
     アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する検索ステップと、
     前記第1の処理の結果と前記第2の処理の結果とを入力候補として出力する出力ステップと
    を含む入力支援方法。
  20.  ローマ字による入力文字列を受け付ける受付部と、
     アルファベットで表記される第1の言語の語句と、該第1の言語の語句に対応する第2の言語の語句のローマ字表記と、をそれらの対応関係が特定できる態様で記憶する記憶部から、前記入力文字列を含む前記第1の言語の語句を検索する第1の処理と、該記憶部から、該入力文字列を含む前記ローマ字表記に対応する前記第1の言語の語句を検索する第2の処理とを実行する検索部と、
     前記第1の処理の結果と前記第2の処理の結果とを入力候補として出力する出力部と
    をコンピュータに実行させる入力支援プログラム。
PCT/JP2013/071712 2012-12-06 2013-08-09 入力支援装置、入力支援方法、及び入力支援プログラム WO2014087704A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/650,220 US20150309991A1 (en) 2012-12-06 2013-08-09 Input support device, input support method, and input support program
JP2014526291A JP5897711B2 (ja) 2012-12-06 2013-08-09 入力支援装置、入力支援方法、及び入力支援プログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261734026P 2012-12-06 2012-12-06
US61/734026 2012-12-06

Publications (1)

Publication Number Publication Date
WO2014087704A1 true WO2014087704A1 (ja) 2014-06-12

Family

ID=50883135

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/071712 WO2014087704A1 (ja) 2012-12-06 2013-08-09 入力支援装置、入力支援方法、及び入力支援プログラム

Country Status (3)

Country Link
US (1) US20150309991A1 (ja)
JP (1) JP5897711B2 (ja)
WO (1) WO2014087704A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5728630B1 (ja) * 2014-07-31 2015-06-03 楽天株式会社 情報処理装置、情報処理方法、プログラム、記憶媒体

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH117448A (ja) * 1997-06-17 1999-01-12 Omron Corp 記録媒体および文字入力装置
JP2001265765A (ja) * 2000-03-23 2001-09-28 Seiko Instruments Inc 電子辞書
JP2009059139A (ja) * 2007-08-31 2009-03-19 Seiko Instruments Inc 辞書検索装置、辞書検索方法及び辞書検索プログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11338858A (ja) * 1998-05-22 1999-12-10 Toshiba Corp 入力予測装置、入力予測方法及び入力予測プログラムを記録した記録媒体
US8137105B2 (en) * 2003-07-31 2012-03-20 International Business Machines Corporation Chinese/English vocabulary learning tool
US7376648B2 (en) * 2004-10-20 2008-05-20 Oracle International Corporation Computer-implemented methods and systems for entering and searching for non-Roman-alphabet characters and related search systems
CN101286094A (zh) * 2007-04-10 2008-10-15 谷歌股份有限公司 多模式输入法编辑器
US20100121870A1 (en) * 2008-07-03 2010-05-13 Erland Unruh Methods and systems for processing complex language text, such as japanese text, on a mobile device
JP5320925B2 (ja) * 2008-09-18 2013-10-23 富士通株式会社 情報検索方法、情報検索装置及び情報検索プログラム
US8635539B2 (en) * 2008-10-31 2014-01-21 Microsoft Corporation Web-based language translation memory compilation and application
EP2680159B1 (en) * 2010-07-13 2020-01-15 Motionpoint Corporation Dynamic language translation of a message
US10133737B2 (en) * 2010-08-26 2018-11-20 Google Llc Conversion of input text strings
JP5739718B2 (ja) * 2011-04-19 2015-06-24 本田技研工業株式会社 対話装置
US8706472B2 (en) * 2011-08-11 2014-04-22 Apple Inc. Method for disambiguating multiple readings in language conversion
US8775165B1 (en) * 2012-03-06 2014-07-08 Google Inc. Personalized transliteration interface
US20130326347A1 (en) * 2012-05-31 2013-12-05 Microsoft Corporation Application language libraries for managing computing environment languages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH117448A (ja) * 1997-06-17 1999-01-12 Omron Corp 記録媒体および文字入力装置
JP2001265765A (ja) * 2000-03-23 2001-09-28 Seiko Instruments Inc 電子辞書
JP2009059139A (ja) * 2007-08-31 2009-03-19 Seiko Instruments Inc 辞書検索装置、辞書検索方法及び辞書検索プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FUMIHIKO SHIBATA: "Switch shitemo Smooth ni Sosa dekiru Windows no Omotenashi Dai 9 Kai Kaiteki na Bunsho Sakusei Kankyo no Jitsugen", MAC PEOPLE, vol. 17, no. 15, 29 August 2011 (2011-08-29), pages 116 - 119 *
MIE HIRAYAMA ET AL.: "Tango Toroku de Manzoku... dewa Mottainai!! IME Moji Nyuryoku Shoryakuka no Ogi", PC MODE, vol. 9, no. 11, 24 November 2004 (2004-11-24), pages 103 - 115 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5728630B1 (ja) * 2014-07-31 2015-06-03 楽天株式会社 情報処理装置、情報処理方法、プログラム、記憶媒体
WO2016016994A1 (ja) * 2014-07-31 2016-02-04 楽天株式会社 情報処理装置、情報処理方法、プログラム、記憶媒体

Also Published As

Publication number Publication date
JP5897711B2 (ja) 2016-03-30
US20150309991A1 (en) 2015-10-29
JPWO2014087704A1 (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
JP5761833B2 (ja) ユーザ部分入力のための辞書候補
US7774193B2 (en) Proofing of word collocation errors based on a comparison with collocations in a corpus
KR100641838B1 (ko) 심벌문자를 이용한 다국언어 문자 입력 방법 및 문자 입력시스템
US20060020576A1 (en) Search system reusing search condition and the related method
JP2003223437A (ja) 正解語の候補の表示方法、スペルチェック方法、コンピュータ装置、プログラム
US8782049B2 (en) Keyword presenting device
JP4502615B2 (ja) 類似文検索装置、類似文検索方法、およびプログラム
RU2595531C2 (ru) Способ и система генерирования определения слова на основе множественных источников
JP2009059140A (ja) 電子辞書、電子辞書の検索方法及び電子辞書の検索プログラム
JP5897711B2 (ja) 入力支援装置、入力支援方法、及び入力支援プログラム
JP4491389B2 (ja) 電子機器、プログラム、及びプログラムを記録した記録媒体
JP5380989B2 (ja) 辞書機能を備えた電子装置およびプログラム
JP5271526B2 (ja) 商標検索システム及び商標検索サーバ
JP2008059169A (ja) 中国語例文検索装置および中国語例文検索処理プログラム
JP2007257188A (ja) 辞書検索装置およびその制御プログラム
JP2010146061A (ja) 例文表示装置、例文表示方法および例文表示プログラム
JP6048601B2 (ja) 情報表示装置、プログラムおよび単語情報表示方法
JPS61248160A (ja) 文書情報登録方式
JP2007257189A (ja) 辞書検索装置及びその制御プログラム
JP2008102802A (ja) 文書支援システム及び文書支援プログラム
JP6551066B2 (ja) 電子辞書
JP2000148747A (ja) 変換候補表示方法,およびこの方法によるかな漢字変換用のプログラムの記録媒体ならびにかな漢字変換装置
JP2023114935A (ja) 仮名漢字変換/kearm変換式日本語入力システム
JP5767784B2 (ja) 情報処置装置、文字列候補確定方法及びプログラム
JP2009265845A (ja) 例文検索装置および例文検索処理プログラム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2014526291

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 13861281

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14650220

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13861281

Country of ref document: EP

Kind code of ref document: A1