【実施例1】
【0041】
次に、文字入力について、具体的な例を用いて説明する。
図3は、端末装置の画面表示例を示す図である。
図3に示したレイアウトは、トグル入力(「お」を入力する場合、「あ」を5回押下)の日本語入力キーボード3で、且つ候補単語予測機能が「補完機能」である場合の一例である。
【0042】
例えば、「漢字(かんじ)」をトグル入力するときに、文字列表示部7と、入力中文字列格納部11に送られる文字は、
「か」→「かわ」→「かを」→「かん」→「かんさ」→「かんし」→「かんじ」
と変化していく。
【0043】
同時に、これらの入力中文字列が、入力中文字列格納部11から候補単語予測部21に送信される。その結果、候補単語予測機能として「補完機能」が設定されている場合は、各入力文字列に対し、以下のような単語がそれぞれ取得され、候補単語表示部9に表示される。
「か」 :彼、彼女、学校、学生、が、かなり、画像
「かわ」 :かわ、為替、可愛い、側、かわいい、川崎
「かを」 :化を、可を、下を、火を、価を、家を
「かん」 :感じ、考え、関係、感覚、簡単、環境
「かんさ」:関西、監査、神崎川、観察
「かんし」:感謝、感心、頑丈、感情
「かんじ」:感じ、感情、幹事、肝心、頑丈
【0044】
この時に、候補単語群格納部は、少なくとも入力中文字列に対し行なった削除またはカーソルの移動等の操作の累計回数、文字の最終入力時刻、文字の入力再開時刻および入力中文字列の表示時間の情報を格納する。また、補完機能以外の、仮名漢字変換機能および文字列修正機能の候補単語予測機能による候補単語列の抽出結果も、バックグラウンドで予測され、候補単語群格納部へ格納される。
【0045】
仮名漢字変換機能および文字列修正機能の抽出結果の一例を、以下に挙げる。文字列「かんじ」が入力された時の仮名漢字変換機能による抽出結果として、
「かんじ」:感じ、漢字、幹事、寛治、監事
といった結果を取得することができる。そして、文字列修正機能による抽出結果として、
「かんじ」:感じ、漢字、何時、三時、監査が
といった結果を取得することができる。
【0046】
以上のように、「補完機能」では、「漢字」という単語が取得されない、もしくは候補単語表示部の領域が狭いため、表示されないことがある。しかし、仮名漢字変換機能や文字列修正機能を用いると、「かんじ」を入力した時に、候補単語表示部の2番目に表示され、選択しやすくなっている。この場合、補完機能ではなく、仮名漢字変換機能または文字列修正機能を用いたほうが有効であることがわかる。
【0047】
候補単語予測機能の推定について、ここでは「既存のデータから推定する方法」と「教師ありの機械学習により推定する方法」の2例を用いて説明する。
【0048】
[既存のデータから推定する方法]
候補単語予測機能スコア算出部は、候補単語予測部と並行して、候補単語予測機能スコアを算出する。ここで、候補単語予測機能の例として、仮名漢字変換機能、補完機能および文字列修正機能を用いるが、これらの機能に限定されない。また、既存のデータから推定する方法として、ここでは、各候補単語予測機能のスコアを求め、比較する例を示すが、直接比較してもよい。
【0049】
スコアの算出法として、各候補単語予測機能内で各々算出される上位N個のスコアを用いる例がある。例えば、1画面に表示されるすべての変換候補の平均、和または積を取る例が挙げられる。それを候補単語予測機能スコア比較部で比較できる形に重みづけや正規化を用いて比較する。以下に、仮名漢字変換機能によるスコア算出例、補完機能によるスコア算出例、および文字列修正機能によるスコア算出例を示す。
【0050】
(仮名漢字変換機能によるスコア算出例)
仮名漢字変換機能の仕組みを、
図4に示す。入力中のかな文字列Stringが与えられた場合に、ある変換結果W
convertを出力する確率P
convは、文字列Stringに対して「漢字→漢字」の言語モデル確率、および「漢字→かな」の変換モデル確率を、Viterbiサーチで探索することにより、算出される。
【0051】
(補完機能によるスコア算出例)
補完機能による予測変換のスコア算出法の例としては、以下のように確率を算出する例が挙げられる。確定済の単語列W
historyと入力中のかな文字列Stringが与えられた場合に、変換後の単語W
completeを出力する確率P
compは、
Pcomp=P(W
complete|W
history,String)
を用いて算出することができる。例えば、上の式は、全単語中の集合においてW
historyの後に、W
completeが出力される確率P(W
complete|W
history)と、Stringから始まる単語集合の中でのW
completeが出力される確率との積で、与えることができる。前者は単語n−gramによる確率モデルで定義することができ、後者は、該当する単語集合の中で均等に確率を割り振ってもよいし、StringやW
completeの文字列長により重みを変えてもよい。
【0052】
(文字列修正機能によるスコア算出例)
文字列修正機能によるスコア算出法の例としては、以下のような例が挙げられる。確定済の単語列Whistoryおよびタッチパネルの入力を想定して、座標列(x
t,y
t)が与えられた場合、修正後の単語W
correctを出力する確率P(W
correct|W
history,(x
t,y
t))を用いることができる。これは、全単語中の集合において、Whistoryの後にW
completeが出力される確率P(W
correct|W
history)と、W
correctであった時に入力が(x
t,y
t)である確率P((x
t,y
t)|W
correct)の積で表すことができる。前者は単語n−gramによる確率モデルで定義することができ、後者は、文字毎に(x,y)の二次元正規分布で定義された尤度の入力列に対する積で表すことができる。例えば、W
correctが文字列長がTで、t文字目の入力の時に文字c
tの文字列で構成されるとすると、以下の式が成り立つ。
【0053】
【数1】
【数2】
【数3】
ここで、Nは、平均μ、共分散行列Σをもつ文字ごとの正規分布である。
【0054】
候補単語予測機能スコア比較部は、候補単語予測機能スコア算出部で算出されたスコアを用いて、スコアの比較を行なう。また、各候補単語の予測機能のスコア算出方法によっては、尤度や対数尤度などのように異なる種類のスコアを算出することが考えられる。そこで、候補単語予測機能スコア比較部では、候補単語予測機能スコア算出部で算出されたスコアを比較できる形に変換、重みづけおよび正規化を行ない、スコアの順に結果を出力する。
【0055】
例えば、仮名漢字変換機能、補完機能、文字列修正機能の各スコアを、P
conv、P
comp、P
corrと表わすとする。次に、αP
conv、βP
comp、γP
corrの大小を比較する。ここで、α、β、γは正規化パラメタを示す。正規化としては、各候補単語予測機能が予測したM個のデータのスコアの平均が0、標準偏差が1となるような正規化が挙げられる。その他の正規化として、予め与えられた複数のテンプレート文の入力に対して出力されたスコア群の平均・分散を用いてもよい。また、文字列および候補単語群格納部から取得し、加工してできる値、例えば、文字列長などを用いてもよい。
【0056】
このように、仮名漢字変換機能、補完機能、文字列修正機能の例を記載したが、他の候補単語予測機能として、文字列修正に対する補完機能や他の言語への変換機能や過去の入力履歴からの前方一致による補完などもある。また、文字列修正機能に対する補完機能の例としては、前述の「かんじ」という文字列の文字列修正例において、「さんじ」と修正した後、「三時間」のように補完することもできる。
【0057】
そして、スコアは、入力された系列からある仮名文字列S
1を出力(予測)するスコアp
corrと、S
1から予測できる補完結果を出力する確率p
compとの積を、その単語を出力するスコアとし、各候補単語予測機能内で各々算出される上位N個スコアを用いることもできる。例えば、1画面に表示されるすべての変換候補の平均や、総和や積を取る算出方法がある。
【0058】
[教師ありの機械学習により推定する方法]
ここでは、SVMのような識別モデルによる推定を例示する。共通の特徴量と、それぞれの候補単語予測機能特有の特徴量からなる特徴ベクトルを用いて、教師データとして、各ベクトルに対して人手でラベル付け、もしくはWizard of Ozのような手法で実験的にラベル付けしたものを用いて学習を行なう。
【0059】
共通の特徴量と、それぞれの候補単語予測機能特有の特徴量には、例えば、以下のような特徴量が挙げられる。
(a)共通の特徴量:入力文字列長、文字列マッチによりマッチした語句のID
(b)候補単語予測機能特有の特徴量(補完機能):上位N個のスコア、一連の入力中の出現候補の重複数、候補数
(c)候補単語予測機能特有の特徴量(仮名漢字変換機能):上位N個のスコア、候補数、単語数(文節数)
【0060】
以上のように、候補単語予測機能スコア比較部でスコア比較が行なわれ、比較結果は、候補単語予測機能切り替え部へ送信される。候補単語予測機能切り替え部では、候補単語予測機能スコア比較部の結果を受け、現在自装置で有効となっていない候補単語予測機能のスコアが高い場合は、スコアが高いとされた候補単語予測機能に切り替える。
【0061】
また、アドバイス提示部では、候補単語予測機能スコア比較部の結果を受け、アクティブではない候補単語予測機能のスコアが高い場合は、自動で候補単語予測機能を切り替えることは行なわずに、候補単語予測機能を切り替えるように、アドバイスを提示することもできる。
図5は、アドバイスを提示した例を示す図である。アドバイス方法は、音声であっても、画像の重畳によるものであっても、トーストなどによる文字列などでもよい。
【0062】
候補単語予測機能切り替え部、およびアドバイス提示部の2機能は、いずれか一方が動作すればよいものとする。また、アドバイス提示条件として、ユーザの入力スキルがある一定(第1の閾値)以下の場合に限り、アドバイスを提示してもよい。そして、入力スキルの判定の手法は問わないが、例えば、1文字目の入力開始から最後の文字が入力されるまでの入力速度WPM(Word Per Minute)や誤り率によって、いくつかの段階を定める方法がある。あるi段階の基準となる入力速度をWPMiとし、ユーザ操作により取得した入力速度をwpmとすると、スキルは、
WPMi ≦ wpm < WPMi+1
を満たすi段階のスキルと判別する方法がある。もしくは、入力時系列と入力時系列から算出できる、例えば、オブジェクトの中心からの距離の平均値やその分散、操作の間隔、頻度(キーボードアプリであればキー=オブジェクト)の特徴量から、複数段階のスキルを定義したスキルモデルにより判別することもできる。スキルモデルは、パターンマッチングでも、例えば、マルチクラスSVMなどの機械学習を、用いてもよい。
【0063】
候補単語予測機能切り替え部での切り替えのタイミングや、アドバイス提示部でのアドバイス提示のタイミングは、上記説明した方法において、候補単語予測機能推定部が、現在、有効ではない候補単語予測機能が最適だと推定した回数をカウントして、ある一定の閾値(第2の閾値)を超えた場合に、候補単語予測機能切り替え部やアドバイス提示部で動作するようにしてもよい。
【0064】
以上説明したように、本実施形態によれば、PCや携帯端末の操作に不慣れなユーザであっても、ユーザは候補単語予測機能を意識することなく、所望する文字列または候補単語を取得することができるようになる。また、候補単語予測機能を適切に切り替えるように限定するため、表示に際する視認性、操作性低減を防ぐことができるようになる。