(57)【要約】【課題】所有者のプライバシーを保護した適切な文字入力の支援を行うことを課題とする。【解決手段】電子機器は、文字入力を受け付ける対象のアプリケーションが、文字入力装置の所有者が一定数以上の文字入力を行う特定アプリケーションに該当するか否かを判定する。電子機器は、特定アプリケーションに該当すると判定された場合、特定アプリケーションに入力された文字にしたがって、所有者が連続して入力する文字の傾向を示す所有者用辞書を構築する。電子機器は、所有者が特定アプリケーション以外のアプリケーションを使用する場合は、所有者用辞書に基づく予測変換を実行し、所有者以外のユーザが特定アプリケーション以外のアプリケーションを使用する場合は、ユーザが連続して入力する文字の傾向を示す一般用辞書に基づく予測変換を実行する。【選択図】図３
2018077593.tif 000002
【特許請求の範囲】
【請求項１】
画面へのタッチ操作による文字入力の予測変換を行う文字入力装置において、
前記文字入力を受け付ける対象のアプリケーションが、前記文字入力装置の所有者が一定数以上の文字入力を行う特定アプリケーションに該当するか否かを判定する判定部と、
前記特定アプリケーションに該当すると判定された場合、前記特定アプリケーションに入力された文字にしたがって、前記所有者が連続して入力する文字の傾向を示す所有者用辞書を構築する構築部と、
前記所有者が前記特定アプリケーション以外のアプリケーションを使用する場合は、前記所有者用辞書に基づく前記予測変換を実行し、前記所有者以外のユーザが前記特定アプリケーション以外のアプリケーションを使用する場合は、前記ユーザが連続して入力する文字の傾向を示す一般用辞書に基づく前記予測変換を実行する予測部と
を有することを特徴とする文字入力装置。
【請求項２】
前記予測部は、前記所有者が前記特定アプリケーションを使用する場合、前記所有者用辞書に基づく前記予測変換を実行し、前記所有者以外のユーザが前記特定アプリケーションを使用する場合、前記一般用辞書に基づく前記予測変換を実行することを特徴とする請求項１に記載の文字入力装置。
【請求項３】
前記所有者が各文字を入力するときの前記タッチ操作の特性である入力特性を記憶する記憶部と、
前記特定アプリケーションに該当しないアプリケーションへの文字入力が行われたときの前記タッチ操作の特性を抽出し、抽出した前記特性が前記記憶部に記憶される前記入力特性と一致するか否かを判定する特性判定部とをさらに有し、
前記予測部は、前記特定判定部によって前記特性が前記入力特性と一致すると判定された場合、前記所有者が前記特定アプリケーション以外のアプリケーションを使用すると判定して、前記所有者用辞書を用いて予測変換を実行することを特徴とする請求項１または２に記載の文字入力装置。
【請求項４】
前記特定アプリケーションに入力された文字と当該文字が入力されたときの前記特性とを抽出し、前記文字と前記特性とを用いて、前記記憶部に記憶される前記入力特性を学習する特性学習部をさらに有することを特徴とする請求項３に記載の文字入力装置。
【請求項５】
前記判定部は、前記文字入力を受け付けたアプリケーションから各アプリケーションの識別に利用されるパッケージ名を取得し、取得した前記パッケージ名が予め指定されるパッケージ名と一致する場合に、前記特定アプリケーションに該当すると判定することを特徴とする請求項１から３のいずれか一つに記載の文字入力装置。
【請求項６】
画面へのタッチ操作による文字入力の予測変換を行うコンピュータが、
前記文字入力を受け付ける対象のアプリケーションが、前記文字入力装置の所有者が一定数以上の文字入力を行う特定アプリケーションに該当するか否かを判定し、
前記特定アプリケーションに該当すると判定された場合、前記特定アプリケーションに入力された文字にしたがって、前記所有者が連続して入力する文字の傾向を示す所有者用辞書を構築し、
前記所有者が前記特定アプリケーション以外のアプリケーションを使用する場合は、前記所有者用辞書に基づく前記予測変換を実行し、前記所有者以外のユーザが前記特定アプリケーション以外のアプリケーションを使用する場合は、前記ユーザが連続して入力する文字の傾向を示す一般用辞書に基づく前記予測変換を実行する
処理を実行することを特徴とする文字入力方法。
【請求項７】
画面へのタッチ操作による文字入力の予測変換を行うコンピュータに、
前記文字入力を受け付ける対象のアプリケーションが、前記文字入力装置の所有者が一定数以上の文字入力を行う特定アプリケーションに該当するか否かを判定し、
前記特定アプリケーションに該当すると判定された場合、前記特定アプリケーションに入力された文字にしたがって、前記所有者が連続して入力する文字の傾向を示す所有者用辞書を構築し、
前記所有者が前記特定アプリケーション以外のアプリケーションを使用する場合は、前記所有者用辞書に基づく前記予測変換を実行し、前記所有者以外のユーザが前記特定アプリケーション以外のアプリケーションを使用する場合は、前記ユーザが連続して入力する文字の傾向を示す一般用辞書に基づく前記予測変換を実行する
処理を実行させることを特徴とする文字入力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字入力装置、文字入力方法および文字入力プログラムに関する。
【背景技術】
【０００２】
従来から、スマートフォンやタブレット端末などの電子機器の普及が進み、メールなどの作成やＷｅｂブラウザを用いた情報検索などに電子機器が使用されることから、電子機器上で文字入力操作を行う機会がある。そして、スマートフォンやタブレット端末などの電子機器は、マルチユーザに対応していることから、１台を複数人で共有して利用することがある。
【０００３】
ユーザの文字入力を支援する技術として、ユーザが入力した文字の入力履歴を学習して予測変換辞書を生成し、文字が入力されると予測変換辞書に基づいて次に入力する文字を予測して、ユーザに提示する予測変換機能が知られている。近年では、個人を識別する識別情報を対応付けて予測変換辞書に登録する技術も知られている。例えば、予測変換辞書に文字等を登録する際に、指紋認証のような事前操作を行って個人を識別し、識別情報と文字等を対応付けて登録する。その後、予測変換を行う場合に、事前操作によってユーザの識別情報を特定し、当該識別情報に対応付けられる文字等を予測文字として選択してユーザに提示する。また、個人を識別する情報としては、文字入力時の癖を関連付ける技術も知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１０９１９９号公報
【特許文献２】特開２００９−１８１３６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記技術では、マルチユーザ環境において所有者のプライバシーを保護した適切な文字入力の支援を行うことができない。例えば、事前操作を用いる技術では、ユーザＡが想定していない状況で急にユーザＢが端末を利用する場合、事前操作が実行できない事象が発生する。この場合、ユーザＢが使用しているにも関わらず、ユーザＡの識別情報で予測変換が行われるので、プライバシーが保護されない。
【０００６】
また、ユーザ自身の癖を学習する場合、ユーザが自分の癖を意識しない状態で数分以上の文字入力によって癖を特定することになるが、ユーザが自分の癖を意識しない状態を数分も維持することが難しく、癖を特定しづらい。
【０００７】
一つの側面では、所有者のプライバシーを保護した適切な文字入力の支援を行うことができる文字入力装置、文字入力方法および文字入力プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の案では、画面へのタッチ操作による文字入力の予測変換を行う文字入力装置は、前記文字入力を受け付ける対象のアプリケーションが、前記文字入力装置の所有者が一定数以上の文字入力を行う特定アプリケーションに該当するか否かを判定する判定部とを有する。文字入力装置は、前記特定アプリケーションに該当すると判定された場合、前記特定アプリケーションに入力された文字にしたがって、前記所有者が連続して入力する文字の傾向を示す所有者用辞書を構築する構築部を有する。文字入力装置は、前記所有者が前記特定アプリケーション以外のアプリケーションを使用する場合は、前記所有者用辞書に基づく前記予測変換を実行し、前記所有者以外のユーザが前記特定アプリケーション以外のアプリケーションを使用する場合は、前記ユーザが連続して入力する文字の傾向を示す一般用辞書に基づく前記予測変換を実行する予測部を有する。
【発明の効果】
【０００９】
一実施形態によれば、所有者のプライバシーを保護した適切な文字入力の支援を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１にかかる電子機器を説明する図である。
【図２】図２は、実施例１にかかる電子機器のハードウェア構成例を示す図である。
【図３】図３は、実施例１にかかる電子機器の機能構成を示す機能ブロック図である。
【図４】図４は、アプリ一覧ＤＢに記憶される情報の例を示す図である。
【図５】図５は、所有者用予測変換ＤＢに記憶される情報の例を示す図である。
【図６】図６は、他者用予測変換ＤＢに記憶される情報の例を示す図である。
【図７】図７は、入力方法学習ＤＢに記憶される情報の例を示す図である。
【図８】図８は、タッチ範囲を用いた文字入力の学習を説明する図である。
【図９】図９は、タッチ領域を用いた文字入力の学習を説明する図である。
【図１０】図１０は、フリック入力を用いた文字入力の学習を説明する図である。
【図１１】図１１は、所有者用予測変換ＤＢの構築処理の流れを示すフローチャートである。
【図１２】図１２は、予測変換処理の流れを示すフローチャートである。
【図１３】図１３は、ＳＮＳアプリが使用されるときのモード判別処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する文字入力装置、文字入力方法および文字入力プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１２】
［電子機器の説明］
図１は、実施例１にかかる電子機器を説明する図である。図１に示す電子機器１０は、電話機能、電子メール、ＳＮＳ（Social  Networking  Service）などの各種アプリケーション（以降、アプリと記載する場合がある）を実行する文字入力装置の一例であり、例えばスマートフォンやタブレット端末などである。この電子機器１０は、所有者を含む複数のユーザで共有することができるマルチユーザ環境を有する。
【００１３】
また、電子機器１０は、特定のユーザの一例である所有者が一定数以上の文字入力を行う特定アプリケーションを識別する情報として、「アプリＡ」などを保持する。なお、特定アプリケーションの一例としては、所有者がログインして使用するブログ投稿アプリケーション、ＳＮＳにメッセージ等を投稿するＳＮＳアプリケーション、電話帳などである。また、通常アプリケーションの一例としては、Ｗｅｂブラウザ、地図アプリ、電子書籍を閲覧するアプリケーションなどである。
【００１４】
このような電子機器１０は、特定アプリケーションへの文字入力結果にしたがって、所有者用の予測変換ＤＢを構築する。その後、電子機器１０は、特定アプリケーションが実行された状態で、特定アプリケーションに対する文字入力を検出すると、所有者用の予測変換ＤＢを用いて、次に入力する文字の予測変換を実行する。一方で、電子機器１０は、上記特定アプリケーション以外の通常のアプリケーションが実行された状態で、通常のアプリケーションに対する文字入力を検出すると、他者用の予測変換ＤＢを用いて、次に入力する文字の予測変換を実行する。
【００１５】
例えば、図１に示すように、電子機器１０は、アプリＡが実行される状態で、文字「と」の入力を受け付けると、所有者用の予測変換ＤＢを用いて、次に入力されると予想される「特許、特許庁」などを表示する。一方で、電子機器１０は、一般的な通常のアプリケーションであるアプリＢが実行される状態で、文字「と」の入力を受け付けると、他者用の予測変換ＤＢを用いて、次に入力されると予想される「止まる、年」などを表示する。
【００１６】
このように、電子機器１０は、所有者が頻繁に文字入力を行うアプリケーションか否かによって、文字入力の予測変換に用いる予測変換用のデータベースを切り替えることができる。したがって、電子機器１０は、マルチユーザ環境において所有者のプライバシーを保護した適切な文字入力の支援を行うことができる。
【００１７】
［ハードウェア構成］
図２は、実施例１にかかる電子機器１０のハードウェア構成例を示す図である。図２に示すように、電子機器１０は、無線部１、センサ２、スピーカ３ａ、マイク３ｂ、メモリ４、タッチパネル５、表示装置６、プロセッサ７を有する。なお、ここで示したハードウェアは例示であり、これら以外にも、例えばＨＤＤ（Hard  Disk  Drive）などの他のハードウェアを有していてもよい。
【００１８】
無線部１は、アンテナ１ａを介して、基地局や他の情報処理端末と無線通信を実行する。センサ２は、加速度センサ、気圧センサ、地磁気センサなどのセンサの一例であり、センサ値を測定してプロセッサ７に出力する。
【００１９】
スピーカ３ａは、音声を出力する。マイク３ｂは、音声を集音する。メモリ４は、記憶装置の一例であり、例えばプログラムやデータなどを記憶する。
【００２０】
タッチパネル５は、表示装置６に重畳される、文字入力などのユーザ操作を受け付ける入力部であり、操作された位置（座標）をプロセッサ７に出力する。なお、タッチパネル５は、静電容量方式や電磁誘導方式など様々な方式を採用することができる。表示装置６は、各種情報を表示する表示部の一例である。
【００２１】
プロセッサ７は、電子機器１０全体の処理を司る処理部であり、例えばＣＰＵ（Central  Processing  Unit）などである。例えば、プロセッサ７は、ＯＳ（Operating  System）を実行する。また、プロセッサ７は、ハードディスク等に記憶されるプログラムを読み出してメモリ４に展開して実行することで、後述する各機能部を実行する。
【００２２】
［機能構成］
図３は、実施例１にかかる電子機器１０の機能構成を示す機能ブロック図である。図３に示すように、電子機器１０は、アプリ一覧ＤＢ１１、所有者入力履歴ＤＢ１２、他者入力履歴ＤＢ１３、所有者用予測変換ＤＢ１４、他者用予測変換ＤＢ１５、入力方法学習ＤＢ１６を有する。また、電子機器１０は、実行部２０、モード判別部２１、学習モード実行部３０、判別モード実行部４０、変換学習部５０を有する。
【００２３】
なお、アプリ一覧ＤＢ１１、所有者入力履歴ＤＢ１２、他者入力履歴ＤＢ１３、所有者用予測変換ＤＢ１４、他者用予測変換ＤＢ１５、入力方法学習ＤＢ１６は、メモリ４やハードディスクなどの記憶装置に記憶される。実行部２０、モード判別部２１、学習モード実行部３０、判別モード実行部４０、変換学習部５０は、プロセッサ７などの電子回路の一例やプロセッサ７が実行するプロセスの一例である。
【００２４】
アプリ一覧ＤＢ１１は、所有者が一定数以上の文字入力を行う特定アプリケーションを識別する識別情報を記憶するデータベースである。具体的には、アプリ一覧ＤＢ１１は、所有者が文字入力を頻繁に行うアプリケーションであって、文字入力の予測変換を切り替える対象となるアプリケーションを識別する識別情報を記憶する。
【００２５】
図４は、アプリ一覧ＤＢ１１に記憶される情報の例を示す図である。図４に示すように、アプリ一覧ＤＢ１１は、「アプリ名、アカウント名、パッケージ名」を対応付けて記憶する。ここで記憶される「アプリ名」は、アプリケーションの名称であり、「アカウント名」は、所有者がアプリケーションを使用するときのアカウント名である。「パッケージ名」は、開発者の所有するドメイン名などで構成され、アプリケーションを一意に識別する識別子の一例である。図４の場合、アプリ「ＳＮＳ（Ａ）」は、パッケージ名「ＰＫＧ００１」を有し、所有者がアカウント名「tokyo001」で使用することを示す。
【００２６】
所有者入力履歴ＤＢ１２は、上記特定アプリケーションに対して、所有者が文字入力した履歴を記憶するデータベースである。具体的には、所有者入力履歴ＤＢ１２は、アプリ一覧ＤＢ１１に記憶される識別子等に該当する特定アプリケーションが実行されている状態で、所有者が当該特定アプリケーションの入力領域等に文字を入力した入力履歴を記憶する。
【００２７】
他者入力履歴ＤＢ１３は、上記特定アプリケーション以外のアプリケーションに対して、所有者以外の他者が文字入力した履歴を記憶するデータベースである。具体的には、他者入力履歴ＤＢ１３は、アプリ一覧ＤＢ１１に記憶される識別子等に該当しないアプリケーションが実行されている状態で、アプリ実行者である他者が当該アプリケーションの入力領域等に文字を入力した入力履歴を記憶する。
【００２８】
所有者用予測変換ＤＢ１４は、所有者が連続して入力する文字の傾向を示す辞書を記憶するデータベースであり、所有者が特定アプリケーションに文字入力を行う際の予測変換に使用される所有者用のデータベースである。ここで記憶される情報は、所有者入力履歴ＤＢ１２に記憶される情報に基づいて生成される。
【００２９】
図５は、所有者用予測変換ＤＢ１４に記憶される情報の例を示す図である。図５に示すように、所有者用予測変換ＤＢ１４は、「入力文字、予測文字」を対応付けて記憶する。ここで記憶される「入力文字」は、特定アプリケーションに入力された文字であり、「予測文字」は、入力文字を受け付けた場合に次に入力されると予測される文字である。図５の場合、「あ」が入力されると、「愛、愛ちゃん」が予測文字として表示されることを示す。
【００３０】
他者用予測変換ＤＢ１５は、一般のユーザが連続して入力する文字の傾向を示す辞書を記憶するデータベースであり、所有者以外のユーザ（他者）が特定アプリケーション以外のアプリケーションに文字入力を行う際の予測変換に使用される一般用のデータベースである。ここで記憶される情報は、他者入力履歴ＤＢ１３に記憶される情報に基づいて生成される。
【００３１】
図６は、他者用予測変換ＤＢ１５に記憶される情報の例を示す図である。図６に示すように、他者用予測変換ＤＢ１５は、「入力文字、予測文字」を対応付けて記憶する。ここで記憶される「入力文字」は、通常のアプリケーションに入力された文字であり、「予測文字」は、入力文字を受け付けた場合に次に入力されると予測される文字である。図６の場合、「あ」が入力されると、「明日、会う」が予測文字として表示されることを示す。
【００３２】
入力方法学習ＤＢ１６は、所有者による文字入力の特性を示す入力特性を記憶するデータベースである。具体的には、入力方法学習ＤＢ１６は、所有者がタッチパネル上で特定アプリケーションに文字入力を行うときに抽出される、所有者の文字入力の操作時の特徴に関する情報を記憶する。なお、ここで取得される各種情報は、タッチパネルを有する端末等で使用されるＩＭＥ（Input  Method  Editor）やＦＥＰ（Front  End  Processor：文字入力機能）などの文字入力を補助するソフトウェアを用いて取得することができる。
【００３３】
図７は、入力方法学習ＤＢ１６に記憶される情報の例を示す図である。図７に示すように、入力方法学習ＤＢ１６は、「文字、入力方法、初期タッチ位置、タッチ領域、フリック方向、フリックスピード、トグル入力間隔、手書きクセ」などを対応付けて記憶する。ここで記憶される「文字」は、入力された文字を示す。「入力方法」は、文字が入力されたときに使用される方法を示し、例えばフリック操作、トグル操作、手書きなどが設定される。「初期タッチ位置」は、文字が入力されたときに最初に指示体（指）がタッチパネル５と接触した位置（Ｘ軸、Ｙ軸）を示す。「タッチ領域」は、文字が入力されたときのタッチパネル５上の接触領域の面積（Ｘ軸の長さ×Ｙ軸の長さ）を示す。「フリック方向」は、フリック操作で文字が入力されたときのフリック方向を示し、始点（Ｘ軸、Ｙ軸）から終点（Ｘ軸、Ｙ軸）で示される。「フリックスピード」は、フリック操作で文字が入力されたときの始点から終点までのスピードを示す。「トグル入力」は、トグル操作で文字が入力されたときに、押下された回数や押下の時間間隔を示す。
【００３４】
図７の場合、文字「あ」の入力特性として、初期タッチ位置が（Ｘ軸、Ｙ軸）＝（８０、１２０）でタッチ領域が（４０×４０）であり、（８０、１２０）から（８０、１２０）へフリックスピード「０」でのタッチ操作が記憶される。つまり、所有者が「あ」を入力する際、指が（８０、１２０）の位置に（４０×４０）の面積で接触して入力する癖があることを示す。
【００３５】
また、文字「い」の入力特性として、初期タッチ位置が（Ｘ軸、Ｙ軸）＝（８５、１２５）でタッチ領域が（３０×４０）であり、（８５、１２５）から（１００、１２６）へフリックスピード「３０」でのフリック操作が記憶される。つまり、所有者が「い」を入力する際、指が（８５、１２５）の位置に（３０×４０）の面積で接触した後、（１００、１２６）まで、フリックスピード「３０」でフリック操作を行って入力する癖があることを示す。なお、重力方向を下にした状態の場合、Ｘ軸は、重力方向と垂直方向で交わる横軸であり、Ｙ軸は重力方向の向きを反転させた縦軸である。また、図７において該当しない項目には「−」が設定される。
【００３６】
実行部２０は、ユーザ操作によってアプリケーションを実行する処理部である。例えば、実行部２０は、ＳＮＳやＷｅｂブラウザなどのアプリケーションを実行し、モード判別部２１などに処理開始を通知する。
【００３７】
モード判別部２１は、実行されたアプリケーションがアプリ一覧ＤＢ１１に登録されている特定アプリケーションに該当するか否かを判定する処理部である。具体的には、モード判別部２１は、実行部２０からアプリケーションの実行開始が通知されると、実行されているアプリケーションからアプリ名やパッケージ名を取得する。そして、モード判別部２１は、取得したアプリ名やパッケージ名がアプリ一覧ＤＢ１１に登録されている場合に、学習モードを選択し、取得したアプリ名やパッケージ名がアプリ一覧ＤＢ１１に登録されていない場合に、判別モードを選択する。
【００３８】
その後、モード判別部２１は、学習モードを選択した場合、学習モード実行部３０に処理開始を指示する。一方、モード判別部２１は、判別モードを選択した場合、判別モード実行部４０に処理開始を指示する。また、モード判別部２１は、判別結果を変換学習部５０に通知する。
【００３９】
なお、モード判別部２１は、ＳＮＳなどのように個人アカウントを使用するアプリケーションの場合は、アカウント名を更なる判別材料にすることもできる。例えば、モード判別部２１は、アプリケーションで使用中のアカウント名を取得して、アカウント名がアプリ一覧ＤＢ１１に登録されている場合に、学習モードを選択することもできる。なお、アカウント名の他に、ログイン名などを用いて同様に処理することができる。
【００４０】
学習モード実行部３０は、構築部３１、受付部３２、学習部３３、第１予測部３４を有し、所有者用予測変換ＤＢ１４の構築や所有者に対する予測変換等を実行する処理部である。具体的には、学習モード実行部３０は、特定アプリケーションへの入力履歴を学習して所有者用予測変換ＤＢ１４を構築した後、所有者によって特定アプリケーションが実行された場合、所有者用予測変換ＤＢ１４による予測変換を実行する。また、学習モード実行部３０は、予測変換と並行して、所有者の入力方法を学習する。
【００４１】
構築部３１は、特定アプリケーションに入力された文字にしたがって、所有者が連続して入力する文字の傾向を示す所有者用予測変換ＤＢ１４を構築する処理部である。具体的には、構築部３１は、電子機器１０が初めて起動されてから所定条件を満たすまでの間、所有者が頻繁に文字入力する特定アプリケーションへの入力履歴を学習して所有者用予測変換ＤＢ１４を構築する。
【００４２】
例えば、構築部３１は、特定アプリケーションへの入力として、「あ」、「あい」、「あい」から変換された「愛」、「ち」、「ゃ」、「ん」を順に検出し、「愛ちゃん」の入力が確定した場合、「入力文字＝あ、予測文字＝愛ちゃん」を所有者用予測変換ＤＢ１４に格納する。また、構築部３１は、特定アプリケーションへの入力として、「ｐ」、「ｏ」、「ｓ」、「ｔ」を順に検出し、「ｐｏｓｔ」の入力が確定した場合、「入力文字＝ｐ、予測文字＝ｐｏｓｔ」を所有者用予測変換ＤＢ１４に格納する。なお、所定条件とは、構築を終了するために設定される構築終了条件であり、一例としては、数時間や数日などのように時間で設定してもよく、全特定アプリケーションの実行回数の合計が２０回以上のように回数で設定してもよい。
【００４３】
受付部３２は、所有者用予測変換ＤＢ１４が構築された後、所有者が頻繁に文字入力する特定アプリケーションの入力領域などの文字入力を受け付ける処理部である。例えば、受付部３２は、ＩＭＥやＦＥＰなどを実行し、アプリ一覧ＤＢ１１に登録されている特定アプリケーション上で、フリック操作等による文字入力を受け付ける。すると、受付部３２は、入力された文字や入力方法などをＩＭＥやＦＥＰなどから取得する。
【００４４】
そして、受付部３２は、入力された未確定の文字を第１予測部３４に通知して、予測変換の表示を要求する。並行して、受付部３２は、入力された文字や入力方法などを学習部３３に出力する。その後、受付部３２は、エンターキーの押下などの確定操作が実行されると、文字入力を確定する。
【００４５】
このように、受付部３２は、特定アプリケーション上で未確定の文字入力を検出するたびに、入力された文字を第１予測部３４に通知して予測変換を実行させるとともに、文字の入力方法を学習部３３に通知する。なお、受付部３２は、未確定の文字および確定した文字（文字列）を変換学習部５０に通知する。
【００４６】
学習部３３は、文字の入力方法を学習する処理部である。具体的には、学習部３３は、受付部３２から入力された入力方法を用いて、入力方法学習ＤＢ１６を学習する。例えば、学習部３３は、文字入力の際に指示体（指）によってタッチパネル５が操作された情報として、初期タッチ位置、タッチ領域、フリック方向、フリックスピードなどを、ＩＭＥやＦＥＰから取得された入力方法から抽出する。そして、学習部３３は、新たに取得された情報と過去に取得された情報等を用いて平均値などを算出して、入力方法学習ＤＢ１６を更新する。
【００４７】
ここで具体例を説明する。図８は、タッチ範囲を用いた文字入力の学習を説明する図であり、図９は、タッチ領域を用いた文字入力の学習を説明する図であり、図１０は、フリック入力を用いた文字入力の学習を説明する図である。
【００４８】
図８に示すように、学習部３３は、受付部３２によって取得された情報を保存し、保存した情報を元に、タッチ操作やフリック操作で触れる領域を回数ごとに異なる色で色付けして、ＦＥＰキー上に表示することができる。図８のＡの領域は、普段あまりタッチしてない領域である。このようにすることで、学習部３３は、所有者が文字入力するときのタッチ範囲を抽出することができる。
【００４９】
図９に示す楕円の領域は、「ら」を入力する際のタッチ領域を示す。図９に示すように、同じ「ら」を入力する場合でもユーザによってタッチする領域が異なる。したがって、学習部３３は、所有者がタッチする領域を特定することで、所有者の入力特性を学習することができる。
【００５０】
図１０に示す楕円および矢印は、「る」をフリック操作で入力したときのフリック方向を示す。図１０に示すように、同じ「る」をフリック入力する場合でもユーザによってフリック方向が異なる。したがって、学習部３３は、所有者がフリック操作する方向を特定することで、所有者の入力特性を学習することができる。
【００５１】
図３に戻り、第１予測部３４は、所有者用予測変換ＤＢ１４を用いて予測変換を行って、次に入力されると予想される文字を表示する処理部である。具体的には、第１予測部３４は、受付部３２から入力された未確定の文字を受け付けると、所有者用予測変換ＤＢ１４を参照して、受け付けた未確定の文字に対応する予測文字を特定する。そして、第１予測部３４は、特定した予測文字を、実行されている特定アプリケーションの入力領域周辺に、選択可能に表示させる。
【００５２】
例えば、第１予測部３４は、「あ」が入力された場合、所有者用予測変換ＤＢ１４から「愛、愛ちゃん」などを特定して予測文字として表示する。なお、表示手法は、一般的な変換予測と同様の手法を採用することができる。
【００５３】
判別モード実行部４０は、受付部４１、判定部４２、第２予測部４３、第３予測部４４を有し、所有者以外の他者に対する予測変換等を実行する処理部である。具体的には、判別モード実行部４０は、所有者が頻繁に文字入力する特定アプリケーション以外の通常のアプリケーションが実行された場合、他者用予測変換ＤＢ１５による予測変換を実行する。
【００５４】
受付部４１は、他者が文字入力するアプリケーションの入力領域などの文字入力を受け付ける処理部である。例えば、受付部４１は、ＩＭＥやＦＥＰなどを実行し、アプリ一覧ＤＢ１１に登録されていない通常のアプリケーション上で、フリック操作等による文字入力を受け付ける。すると、受付部４１は、入力された文字や入力方法などをＩＭＥやＦＥＰなどから抽出する。そして、受付部４１は、入力された未確定の文字や入力方法を判定部４２に通知する。その後、受付部４１は、エンターキーの押下などの確定操作が実行されると、文字入力を確定する。
【００５５】
このように、受付部４１は、通常のアプリケーション上で未確定の文字入力を検出するたびに、入力された文字や入力方法を判定部４２に通知する。なお、受付部４１は、未確定の文字および確定した文字（文字列）を変換学習部５０に通知する。
【００５６】
判定部４２は、上記通常のアプリケーション上で文字入力されたときの特性が所有者の入力特性と一致するか否かを判定する処理部である。具体的には、判定部４２は、受付部４１から入力された文字入力の特性と、入力方法学習ＤＢ１６に記憶される入力特性とを比較し、一致率（類似性）に基づいて判定する。そして、判定部４２は、入力特性と類似する場合、所有者による入力と判定し、第２予測部４３に入力文字を通知して予測変換を要求し、入力特性と類似しない場合、他者による入力と判定し、第３予測部４４に入力文字を通知して予測変換を要求する。
【００５７】
例えば、判定部４２は、「い」がフリック操作で入力された場合の初期タッチ位置（９０、１２８）と、入力方法学習ＤＢ１６に登録される「い」の初期タッチ位置（８５、１２５）とのＸ軸の差およびＹ軸の差が閾値（例えば、８）未満の場合に、所有者による入力と判定する。同様に、判定部４２は、「い」がフリック操作で入力された場合のタッチ領域（４２×４２）と、入力方法学習ＤＢ１６に登録される「い」のタッチ領域（３０×４０）との差が閾値（例えば、１０）未満の場合に、所有者による入力と判定する。また、判定部４２は、「い」がフリック操作で入力された場合のフリック方向についても、入力方法学習ＤＢ１６に登録されるフリック方向と比較し、始点の位置、終点の位置、始点と終点の距離などが閾値未満の場合に、所有者による入力と判定する。なお、判定項目や項目の組み合わせは、図７に示す入力特性の各項目から任意に選択することができる。
【００５８】
第２予測部４３は、所有者用予測変換ＤＢ１４を用いて予測変換を行って、次に入力されると予想される文字を表示する処理部である。具体的には、第２予測部４３は、第１予測部３４と同様、判定部４２から文字を受け付けると、所有者用予測変換ＤＢ１４を参照して、受け付けた文字に対応する予測文字を特定する。そして、第２予測部４３は、特定した予測文字を、実行されている一般的なアプリケーションの入力領域周辺に、選択可能に表示させる。
【００５９】
第３予測部４４は、他者用予測変換ＤＢ１５を用いて予測変換を行って、次に入力されると予想される文字を表示する処理部である。具体的には、第３予測部４４は、判定部４２から文字を受け付けると、他者用予測変換ＤＢ１５を参照して、受け付けた文字に対応する予測文字を特定する。そして、第３予測部４４は、特定した予測文字を、実行されている一般的なアプリケーションの入力領域周辺に、選択可能に表示させる。
【００６０】
例えば、第３予測部４４は、「あ」が入力された場合、他者用予測変換ＤＢ１５から「明日、会う」などを特定して予測文字として表示する。なお、表示手法は、一般的な変換予測と同様の手法を採用することができる。
【００６１】
変換学習部５０は、所有者用予測変換ＤＢ１４や他者用予測変換ＤＢ１５を学習する処理部である。具体的には、変換学習部５０は、学習モード実行部３０から文字入力や確定した入力文字を受け付けると、受け付けた情報を用いて所有者入力履歴ＤＢ１２を更新する。そして、変換学習部５０は、更新した所有者入力履歴ＤＢ１２にしたがって、所有者用予測変換ＤＢ１４を更新する。
【００６２】
同様に、変換学習部５０は、判別モード実行部４０から文字入力や確定した入力文字を受け付けると、受け付けた情報を用いて他者入力履歴ＤＢ１３を更新することもできる。そして、変換学習部５０は、更新した他者入力履歴ＤＢ１３にしたがって、他者用予測変換ＤＢ１５を更新することもできる。
【００６３】
例えば、変換学習部５０は、複数回の文字入力の履歴から、「と」が入力された後に、「特許」、「特定」、「とりあえず」などの文字が確定していることを抽出する。そして、変換学習部５０は、「特許」、「特定」、「とりあえず」について、「と」の入力後に入力が確定した回数を計数する。その後、変換学習部５０は、回数が多い上位数個（例えば、５個）を予測変換対象と決定して、各ＤＢに登録する。
【００６４】
［構築処理の流れ］
図１１は、所有者用変換ＤＢ１４の構築処理の流れを示すフローチャートである。図１１に示すように、構築部３１は、電子機器１０が起動されて（Ｓ１０：Ｙｅｓ）、構築終了条件を満たさない場合（Ｓ１１：Ｎｏ）、特定アプリケーションが実行されたか否かを判定する（Ｓ１２）。
【００６５】
そして、構築部３１は、特定アプリケーションが実行されて（Ｓ１２：Ｙｅｓ）、特定アプリケーション上で文字入力が検出されると（Ｓ１３：Ｙｅｓ）、入力文字の遷移を検出する（Ｓ１４）。その後、構築部３１は、入力文字を取得して（Ｓ１５）、入力文字の遷移と入力が確定した文字とに基づいた情報を所有者用変換ＤＢ１４に格納する（Ｓ１６）。
【００６６】
一方、構築部３１は、特定アプリケーション上で文字入力が検出されずに（Ｓ１３：Ｎｏ）、特定アプリケーションが終了すると（Ｓ１７：Ｙｅｓ）、Ｓ１１以降を繰り返す。ここで、構築部３１は、特定アプリケーションが終了しない場合（Ｓ１７：Ｎｏ）、Ｓ１３に戻って、特定アプリケーション上での文字入力の検出を行う。
【００６７】
また、Ｓ１２において、実行されたアプリケーションが特定アプリケーションではなく通常のアプリケーションの場合は（Ｓ１２：Ｎｏ）、Ｓ１１以降が繰り返される。また、Ｓ１１において、構築部３１は、構築終了条件を満たす場合（Ｓ１１：Ｙｅｓ）、所有者用変換ＤＢ１４の構築処理を終了する。
【００６８】
［予測変換処理の流れ］
図１２は、予測変換処理の流れを示すフローチャートである。図１２に示すように、実行部２０がアプリケーションを実行すると（Ｓ１０１：Ｙｅｓ）、モード判別部２１は、当該アプリケーションのパッケージ名を取得する（Ｓ１０２）。
【００６９】
続いて、モード判別部２１は、取得したパッケージ名がアプリ一覧ＤＢ１１のリストに登録されているか否かを判定し（Ｓ１０３）、リストに登録されている場合（Ｓ１０３：Ｙｅｓ）、学習モードを選択し（Ｓ１０４）、リストに登録されていない場合（Ｓ１０３：Ｎｏ）、判別モードを選択する（Ｓ１０５）。
【００７０】
その後、学習モードが選択された状態で（Ｓ１０６：Ｙｅｓ）、学習モード実行部３０は、１文字の入力を受け付けると（Ｓ１０７）、その時の入力方法を取得して、入力方法学習ＤＢ１６を更新する（Ｓ１０８）。
【００７１】
そして、学習モード実行部３０は、所有者用予測変換ＤＢ１４を用いて予測変換を行って予測文字（入力候補）を表示する（Ｓ１０９）。続いて、変換学習部５０は、入力文字の候補が確定し、文字入力が確定すると（Ｓ１１０：Ｙｅｓ）、入力された文字を用いて所有者入力履歴ＤＢ１２を更新するとともに、所有者用予測変換ＤＢ１４を更新する（Ｓ１１１）。
【００７２】
その後、さらに次の文字入力が検出された場合（Ｓ１１２：Ｎｏ）、Ｓ１０７以降が繰り返される。一方、一定期間の経過または文字入力の終了操作などが検出されることにより、さらに次の文字入力が検出されない場合（Ｓ１１２：Ｙｅｓ）、処理が終了する。また、入力文字の候補が確定し、文字入力が未確定の場合（Ｓ１１０：Ｎｏ）、Ｓ１１１を実行することなく、Ｓ１１２が実行される。
【００７３】
また、学習モードではなく判別モードが選択された状態で（Ｓ１０６：Ｎｏ）、判別モード実行部４０は、１文字の入力を受け付けると（Ｓ１１３）、その時に入力された文字入力の特性を抽出する（Ｓ１１４）。続いて、判別モード実行部４０は、抽出した特性を入力方法学習ＤＢ１６に記憶される入力特性と比較し（Ｓ１１５）、類似するか否かを判定する（Ｓ１１６）。
【００７４】
そして、取得した特性と入力特性とが類似する場合（Ｓ１１６：Ｙｅｓ）、判別モード実行部４０は、Ｓ１０９と同様の処理を実行する。一方で、取得した特性と入力特性とが類似しない場合（Ｓ１１６：Ｎｏ）、判別モード実行部４０は、他者用予測変換ＤＢ１５を用いて予測変換を行って予測文字（入力候補）を表示する（Ｓ１１７）。
【００７５】
その後、さらに次の文字入力が検出された場合（Ｓ１１８：Ｎｏ）、Ｓ１１３以降が繰り返される。一方、一定期間の経過または文字入力の終了操作などが検出されることにより、さらに次の文字入力が検出されない場合（Ｓ１１２：Ｙｅｓ）、処理が終了する。なお、Ｓ１１７以降において、学習モードと同様、変換学習部５０は、入力文字の候補が確定し、文字入力が確定すると、入力された文字を用いて他者入力履歴ＤＢ１３を更新するとともに、他者用予測変換ＤＢ１５を更新することもできる。
【００７６】
ここで、ＳＮＳに対応するアプリケーションを実行したときに、アカウント等を用いて所有者が利用しているアプリケーションか否かを判定する具体例を説明する。図１３は、ＳＮＳアプリが使用されるときのモード判別処理の流れを示すフローチャートである。
【００７７】
図１３に示すように、モード判別部２１は、ＳＮＳアプリケーションによって提供されるＳＮＳへのログインを検出すると（Ｓ２０１：Ｙｅｓ）、初回ログインか否かを判定する（Ｓ２０２）。
【００７８】
そして、モード判別部２１は、初回ログインの場合（Ｓ２０２：Ｙｅｓ）、ＳＮＳのグインアカウントを取得し（Ｓ２０３）、アプリ一覧ＤＢ１１に追加する（Ｓ２０４）。例えば、モード判別部２１は、アプリ名やパッケージ名が登録されていない場合は、これらの情報を取得してあわせて登録する。
【００７９】
そして、Ｓ２０４が実行された後、または、初回ログインではない場合（Ｓ２０２：Ｎｏ）に、ＦＥＰなどの文字入力機能が開始されると（Ｓ２０５：Ｙｅｓ）、モード判別部２１は、パッケージ名を取得し（Ｓ２０６）、取得したパッケージ名がアプリ一覧ＤＢ１１のリストに登録されているか否かを判定する（Ｓ２０７）。
【００８０】
ここで、モード判別部２１は、リストに登録されている場合（Ｓ２０７：Ｙｅｓ）、さらにＳＮＳアカウント（ログインアカウント）を取得し（Ｓ２０８）、ＳＮＳアカウントがアプリ一覧ＤＢ１１に登録されるアカウント名と一致するか否かを判定する（Ｓ２０９）。
【００８１】
そして、モード判別部２１は、ＳＮＳアカウントがアプリ一覧ＤＢ１１に登録されるアカウント名と一致する場合（Ｓ２０９：Ｙｅｓ）、学習モードを選択し（Ｓ２１０）、一致しない場合（Ｓ２０９：Ｎｏ）、判別モードを選択する（Ｓ２１１）。なお、モード判別部２１は、取得したパッケージ名がアプリ一覧ＤＢ１１のリストに登録されていない場合（Ｓ２０７：Ｎｏ）、判別モードを選択する（Ｓ２１１）。
【００８２】
［効果］
上述したように、電子機器１０は、機器操作時の「所有者が入力する条件」に着目し、電話帳、ＳＭＳ（Short  Message  Service）、メール、ＳＮＳなど所有者が使用するアプリ（パーソナルアプリ）については、個人認証開始からログアウトまでの間、所有者の文字入力を行いながら、文字入力時に発生する個人の特徴を判断する情報の収集を行って学習するとともに、所有者に対する特定の予測変換を実行する。そして、電子機器１０は、不特定のユーザが利用する上記以外のアプリに対する文字入力の際には、ユーザ判別を実行して、予測変換辞書の切替えを行う。
【００８３】
例えば、個人の文字入力の特徴を意図的に学習しようとした場合、通常の利用状態とは異なる入力操作となってしまい、適切に特徴情報（入力特性）が得られないケースがある。しかし、実施例１にかかる電子機器１０は、文字入力操作時に裏で特徴情報の収集を行うので、適切な入力特性を収集できる。また、電子機器１０は、入力特性を自動収集するので、事前設定や事前学習等の学習の時間も削減できる。
【００８４】
また、電子機器１０は、機器内のＦＥＰにて、文字入力操作が行われているアプリが特定アプリ（パーソナルアプリ）かそれ以外のアプリであるかを判別し、学習モード、判別モードを切り替える。このように、電子機器１０は、ＦＥＰにてモード判別を行うことにより、文字入力操作者に意識させること無く裏で自動的にモード切り替えを実行できる。
【００８５】
このように、電子機器１０は、従来利用者毎に数十分程度かけていた事前学習やゲスト用アカウントなどを作成する際の事前設定を行うことなく、端末を普段通りに使っているだけで、利用者毎の最適な文字変換や予測変換候補の提示が実行できる。また、電子機器１０は、機器利用中に常時入力の特徴情報を収集することで、徐々に入力の癖が変わっていっても追従することができる。
【実施例２】
【００８６】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
【００８７】
［特定ユーザ］
上記実施例では、特定ユーザの一例として所有者を例にして説明したが、任意に設定変更することができる。
【００８８】
［他者の学習］
上記実施例では、電子機器１０が、学習モードの実行時に、所有者入力履歴ＤＢ１２を更新して所有者用予測変換ＤＢ１４を学習する例を説明したが、判別モードの実行時にも同様の処理を実行することもできる。例えば、電子機器１０は、同様の手法を用いて、他者入力履歴ＤＢ１３を更新して他者用予測変換ＤＢ１５を学習することもできる。
【００８９】
［システム］
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００９０】
各装置の分散・統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００９１】
また、電子機器１０は、プログラムを読み出して実行することで文字入力方法を実行する情報処理装置として動作する。つまり、電子機器１０は、実行部２０、モード判別部２１、学習モード実行部３０、判別モード実行部４０、変換学習部５０と同様の機能を実行するプログラムを実行する。この結果、電子機器１０は、実行部２０、モード判別部２１、学習モード実行部３０、判別モード実行部４０、変換学習部５０と同様の機能を実行するプロセスを実行することができる。なお、この他の実施例でいうプログラムは、電子機器１０によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【００９２】
１０  電子機器
１１  アプリ一覧ＤＢ
１２  所有者入力履歴ＤＢ
１３  他者入力履歴ＤＢ
１４  所有者用予測変換ＤＢ
１５  他者用予測変換ＤＢ
１６  入力方法学習ＤＢ
２０  実行部
２１  モード判別部
３０  学習モード実行部
３１  構築部
３２  受付部
３３  学習部
３４  第１予測部
４０  判別モード実行部
４１  受付部
４２  判定部
４３  第２予測部
４４  第３予測部
５０  変換学習部
【図１】
2018077593.tif 000003
【図２】
2018077593.tif 000004
【図３】
2018077593.tif 000005
【図４】
2018077593.tif 000006
【図５】
2018077593.tif 000007
【図６】
2018077593.tif 000008
【図７】
2018077593.tif 000009
【図８】
2018077593.tif 000010
【図９】
2018077593.tif 000011
【図１０】
2018077593.tif 000012
【図１１】
2018077593.tif 000013
【図１２】
2018077593.tif 000014
【図１３】
2018077593.tif 000015