JP6271914B2 - 情報処理装置及びその制御方法、コンピュータプログラム、記録媒体 - Google Patents
情報処理装置及びその制御方法、コンピュータプログラム、記録媒体 Download PDFInfo
- Publication number
- JP6271914B2 JP6271914B2 JP2013176289A JP2013176289A JP6271914B2 JP 6271914 B2 JP6271914 B2 JP 6271914B2 JP 2013176289 A JP2013176289 A JP 2013176289A JP 2013176289 A JP2013176289 A JP 2013176289A JP 6271914 B2 JP6271914 B2 JP 6271914B2
- Authority
- JP
- Japan
- Prior art keywords
- situation
- input
- sensor
- character string
- information
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/274—Converting codes to words; Guess-ahead of partial word inputs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Description
また、この例でいえば、GPSセンサの検知結果を用いるための入力が、「場所」、「現在地」などといった、センサの検知結果を利用するために入力すべき所定の単語を覚えておかなければならない、という課題が残る。
図1は、本実施形態に係る情報処理装置のハードウェア構成の一例(図1(a))と、情報処理装置の機能構成の一例(図1(b))を示す図である。
図1(a)に示す情報処理装置101は、センサ102、記憶装置103、入力部104、通信部105、表示部106、CPU(Central Processing Unit)107、プログラムメモリ108、メモリ109を含んで構成される。
記憶装置103には、文字の入力を受け付ける入力部104を介してユーザが入力したいくつかの文字に基づいて予測される文字列を、入力候補(あるいは変換候補とも呼ぶ)としてユーザに提示するための情報が辞書として記憶されている。なお、入力候補となる文字列は1単語の場合も、複数の単語から構成される場合もある。例えば、ユーザが「のり」と入力した場合に、これに対応する入力候補として「乗ります」を予測するための対応関係の情報、さらに各単語が使用された頻度を記憶する。本実施形態では、辞書に登録されている単語の中には、当該単語が使用される状況を表す状況情報が関連付けられているものが含まれる。本実施形態において、記憶装置103は情報処理装置101に内蔵されているものとするが、各種ネットワークによって接続された外部装置であっても構わない。
辞書に登録される状況情報は、入力候補となる単語に関連付けられたセンサ102の種別、当該センサ102のセンサ値を含んだ情報からなる。具体的には、例えば辞書に登録された単語が特定の建物を表す場合には、センサの種別としてGPSセンサが関連付けられる。また、センサ値として、当該建物が存在する位置を表す緯度と経度が記録される。このように、状況情報により単語が使用される状況を表すことができる。そのため、文字を入力している際のユーザの状況に適合した単語を入力候補としてユーザに提示することができる。
入力部104は、ユーザによる文字入力を受け付ける入力受付手段である。また、入力部104は、入力された文字列に対応する入力候補として予測された単語の中から、当該文字列に対応させる単語の指定するための入力を受け付ける。本実施形態では、入力部104として、ユーザによるタッチ入力を検知可能なタッチパネルを用いる。タッチパネルは表示部106の画面と重畳しており、ユーザが画面に表示された表示画像をタッチしたことに応じて、タッチされた位置を示す信号を出力し、情報処理装置101に通知する。ただし、入力部104はマウスやデジタイザなどのポインティングデバイスや、ハードウェアキーボードであっても本発明を適応可能である。
表示部106は、例えば液晶ディスプレイなどであり、各種情報を画面に表示する。また、表示部106によって画面に表示される画像は、ユーザが入力した文字列を表示する領域(後述する表示エリア501:図5)、入力候補を表示する領域(後述する表示エリア502:図5)を含んで成る。本実施形態では、ユーザは表示部106に表示されたソフトウエアキーボードに対するタッチ入力により文字入力を行う。従って、画面に表示される画像には、文字入力のための各種キーによって構成されるソフトウエアキーボードを表示する領域(後述するキーパッド504:図5)を含んで成る。
表示制御部110は、予測部114により予測された入力候補を表示部106の画面の表示するための表示画像を生成し、表示部106に出力することで、表示される内容の制御を行う。
登録部111は、ユーザが入力した文字列とセンサ102の検知結果に基づいて取得部115が取得する状況情報とを関連付けた新たな入力候補を記憶装置103に記憶された辞書に登録する。また、登録部111は、既に辞書に登録されている状況情報の内容を、センサ102の最新の検知結果に基づいて更新する。詳細は後述する。
判定部112は、辞書に登録された状況情報と、センサ102の検知結果に基づいて取得部115が取得する状況情報とを比較して類似度を取得し、2つの状況が類似するかを判定する。詳細は後述する。
受付部113は、入力部104から出力された信号が示す情報を受け付ける。本実施形態では特に、タッチパネルである入力部104から、ユーザがタッチした位置、あるいはタッチをやめた位置(リリース位置)を示す座標を取得し、当該タッチパネルに重畳する表示部106の画面に表示された画像内での位置として取得する。当該位置に、ユーザインタフェースを構成する部品が表示されている場合には、当該部品を指定する入力として受け付ける。例えば、ソフトウエアキーボードのキーが表示された位置におけるタッチ入力は、タッチされた位置に表示されたキーに対応する文字の文字入力として受け付けられる。
予測部114は、入力された文字と、辞書に登録された情報に基づいて、入力された文字によって構成される少なくとも1つの文字列を予測し、入力される文字列の候補とする。本実施形態では、受付部113が受け付けた入力情報と、過去に候補とされたときに入力文字列として採用された採用頻度、判定部112の判定結果とに基づき、状況に応じた候補を優先的に決定し、表示制御部11によって提示させる。例えばユーザの状況との類似度が高い入力候補から順番に画面に提示されるように制御する。詳細は後述する。
取得部115が、センサ102が検知した位置、加速度、方位、湿度、気圧などの情報を、情報処理装置101が存在する状況を表す状況情報として取得し、判定部112、登録部111に通知する。
CPU107の機能部としての予測部114は、受付部113が、ユーザがソフトウエアキーボードをタッチすることで行う文字入力の受け付けたのを契機に、記憶装置103に記憶された辞書の登録情報に基づき、入力された文字列に対応する単語を予測する。そして、予測された単語を入力候補として特定し保持する(S201)。
また、状況情報に示されたセンサを有する場合(S204:Yes)、CPU107の機能部である取得部115が状況情報として取得する。そして、CPU107の機能部である判定部112は、取得部115が取得した当該センサの検知結果に基づいて、現在の状況と入力候補に関連付けられた状況が類似するかを判定する(S206)。
なお、入力候補が複数の状況情報と関連付けられている場合には、それぞれの状況情報に基づいて繰り返し判定する。また、類似度の大きさの判定においては、入力候補に関連付けられている状況情報に示されたセンサ値と、センサ102の検知結果とが一致する場合に同じ状況であると判定するように構成することもできる。
以下、類似度に基づいて同じ状況である(状況が類似する)か否かを判定し、判定結果に応じて、入力された文字列に対応する一又は複数の単語を入力候補として画面に表示する場合を例に挙げて説明する。
その後、CPU107の機能部である受付部113は、ユーザによる次の文字入力を待ち(S210)、次の文字入力があった場合(S210:Yes)、ステップS201の処理へ戻る。また、例えば図示しないタイマにより所定の時間が経過してもユーザによる次の文字入力がなかった場合など、文字入力が終了したと判定された場合(S210:No)、一連の処理を終了する。
CPU107の機能部としての判定部112は、入力候補の状況情報に示されたセンサの検知結果を取得する(S301)。その後、センサに対応する閾値を取得する(S302)。閾値は、例えばGPSセンサにおいては測定誤差として許容される距離、温度センサにおいては測定誤差として許容される温度範囲などに基づくものである。また、ユーザに提示された入力候補の採用頻度に応じて許容される誤差量を学習させて、その学習結果を閾値とするように構成しても良い。なお、閾値は、判定部112が保持するようにしても良いし、記憶装置103に記憶されているように構成しても良い。
CPU107の機能部としての判定部112は、ステップS307の処理で保持した判定結果に基づいて、状況の類似度に基づいて2つの状況が類似するかを判定した結果を伝達する(S311)。このようにして、一連の処理が終了する。
前者の場合には、全てが閾値以内となるか否か、又は、一つでも閾値以内となるか否かなど予め定めた基準に基づいて同じ状況であるか否かを判定する。例えば、状況情報のセンサ種別として、GPSセンサと気圧センサが記録されているとする。この場合、GPSセンサの検知結果である位置情報と、気圧センサの検知結果である気圧情報のそれぞれが閾値以内であるか否かにより、同じ状況であるか否かを判定する。
これにより、例えば、位置情報が同じ状況であると判定された場合であっても、気圧の違いが高さの違いを示すことを利用して、ユーザが建物の1階にいるのか、又は、最上階にいるのかなどにより、ユーザの状況に適した入力候補を提示することが可能になる。
例えば、状況情報のセンサ種別が、GPSセンサ、加速度センサ、地磁気センサであり、それぞれのセンサ値を組み合わせて記録されているとする。なお、状況情報のセンサ値である加速度情報は、例えばユーザが電車で移動している状況における加速度の推移、徒歩で移動している状況における加速度の推移を表しているものとする。この場合には、センサ102である加速度センサにより検知された加速度の推移との類似度を用いて、ユーザの移動の状況(例えば、電車で移動、歩いて移動など)が類似するかを判定することができる。また、加速度センサと地磁気センサの検知結果を用いて、ユーザが移動している方向を表す方位を推定することができる。
この様な場合において、状況が類似するかを類似度に基づいて判定する場合は、例えば、初めに加速度の推移からユーザが電車で移動している状況か、あるいは、徒歩で移動している状況かを区別する。このようにして、判定対象とする単語を絞り込む。次に、電車で移動している状況であれば、センサ102であるGPSセンサの検知結果に基づいて移動中の電車の沿線を特定する。さらに、センサ102である加速度センサと地磁気センサそれぞれの検知結果から移動方向を推定する。このように類似度に基づく判定処理を制御することにより、ユーザの状況により適合した入力候補を提示することができる。
図4(a)に示す辞書テーブルには、モデル1及びモデル2において、入力文字数が1であれば「し」、入力文字数が2であれば「しも」、入力文字数が3であれば「しもま」という構成文字がそれぞれ対応する。ユーザから入力された文字列が「し」、「しも」、「しもま」などの構成文字に前方一致する場合には、それに対応する入力候補の単語(例えば、下丸子駅など)が提示される。図4(a)に示す入力候補は、「下丸子駅」、「下丸子図書館」という単語であり、それぞれが状況情報と関連付けられている。入力候補「下丸子駅」の状況情報は、センサ種別が「GPS(センサ)」であり、センサ値の緯度が「35.5713」、経度が「139.6856」である。また、入力候補「下丸子図書館」の状況情報は、センサ種別が「GPS(センサ)」であり、センサ値の緯度が「35.5669」、経度が「139.6819」である。
なお、状況情報に記録されたセンサ値(緯度と経度)は、測定誤差を踏まえて複数回測定した結果の平均値である。また、センサ値の平均値のみならず、センサ値の最小値及び最大値により表される範囲としても良い。
これに対して、情報処理装置101では、入力候補として提示した単語の採用頻度が低い場合、あるいは最近使用されていない場合であっても、例えばGPSセンサの検知結果に基づいて、ユーザの状況に適合した入力候補を優先表示することができる。つまり、例えば、ユーザの状況を表す現在位置が下丸子駅付近であれば、「しもま」の文字入力に対して入力候補「下丸子駅」が優先表示される。また、図書館付近であれば入力候補「下丸子図書館」が優先表示される。以下、このように処理するための処理手順について、図2及び図3に示すフローチャートを用いて詳細に説明する。
図2に示すステップS201の処理において、文字入力「し」に対応する入力候補が記憶装置103の辞書から取得される。文字入力「し」に対しては、例えば「します」、「して」、「時」、「時間」、「しまいました」など複数の入力候補が取得されたとする。例えば、表示部106のサイズによっては、表示できる入力候補の数が制限される場合がある。その場合には、例えば表示できる入力候補の数に応じて、採用頻度の高い上位候補のみを取得するように制御する。また、表示できる入力候補の数にかかわらず、できる限り多くの入力候補が取得されるように制御することもできる。
ステップS204の処理において、取得された入力候補の中に状況情報に関連付けられているものがあるか否かが判定される。図4(a)に示すように、入力候補「下丸子図書館」、「下丸子駅」は状況情報と関連付けられている。そのため、ステップS205の処理へ進む。ステップS205の処理において、情報処理装置101がGPSセンサを有していると判定される。その後、ステップS206の処理へ進み、状況の類似度が判定される。
ステップS302の処理において、GPSセンサに対応する閾値が取得される。ここでは、閾値は500[m]であるとする。
ステップS305の処理において、入力候補N=2番目の「下丸子図書館」のセンサ値である緯度(35.5669)及び経度(139.6819)と、GPSセンサの検知結果である緯度(35.5712)及び経度(139.6861)との差分が算出される。
ここでは、説明の便宜上、地球の円周上の2点間の距離として扱い、緯度及び経度それぞれにおける距離の差分を二乗和の平方根により算出する。まず、円弧の長さを求めるために、緯度差(「35.5712」と「35.5669」の差分)のラジアン(0.0000750492)と、経度差(「139.6861」と「139.6819」の差分)のラジアン(0.0000733038)を算出する。次に、求めた緯度差のラジアンと地球の半径距離とに基づいて、南北の距離(0.119129[km])と、緯度と求めた経度差のラジアンと地球の半径から東西の距離(0.3803158[km])を算出する。その後、二乗和の平方根を算出することにより2点間の距離0.611366[km]が得られる。よって、距離の差分は611[m]となる。
ステップS310の処理において、入力候補数NがN=1であることから、ステップS305の処理に戻り、次の入力候補における差分が算出される。
ステップS305の処理において、入力候補N=1番目の「下丸子駅」のセンサ値である緯度(35.5713)及び経度(139.6856)と、GPSセンサの現在の検知結果である緯度(35.5712)及び経度(139.6861)の差分が算出される。その結果、2点間の距離0.004662[km]となり、差分46[m]が得られる。
なお、単純に緯度と経度それぞれの差分に基づいて閾値以内であるか否かを判定しても良い。また、2点間の距離の算出方法として、地球の丸みを考慮した孤を求める計算式を用いたり、地球が球体でなく楕円体であることまでを考慮した距離の計算式を用いたりすることもできる。このように、2点間の距離を算出することができる様々な計算方法から任意に選択して利用することができる。計算処理に必要な各種情報は、例えばプログラムメモリ108に予め記憶しておいたり、判定部112で保持したりすることができる。さらに、計算処理をネットワーク上で行ったり、計算処理に必要な各種情報を更新したりすることができる。また、計算処理毎にセンサの検知結果が取得されるように制御したり、種別の異なるセンサに関する計算処理が同時に行われるように制御したりすることもできる。
また、入力候補の表示は、採用頻度に関わらず状況情報と関連付けられている入力候補のみを表示したり、採用頻度の高い入力候補は別画面に表示したり、それぞれに重みづけを付与してその総和に基づいて表示したりしても良い。
図4(b)に示す入力候補は、「暑い」、「暖かい」という単語であり、それぞれが状況情報と関連付けられている。入力候補「暑い」の状況情報は、センサ種別が「温度(センサ)」であり、センサ値が「30.00[度]」である。また、入力候補「暖かい」の状況情報は、センサ種別が「温度」であり、センサ値が「24.00[度]」である。入力候補「暑い」の採用頻度は「10」回であり、入力候補「暖かい」の採用頻度は「4」回である。
図2に示すステップS201の処理において、入力文字「あ」に対応する入力候補が記憶装置103の辞書から取得される。入力文字「あ」に対しては、例えば「あった」、「あした」、「ある」、「暑い」、「暖かい」などが上位候補として取得されたとする。
ステップS202の処理では、複数の入力候補を取得したと判定される。次に、ステップS204の処理において、取得された入力候補の中に状況情報に関連付けられているものがあるか否かが判定される。図4(b)に示すように、入力候補「暑い」、「暖かい」は状況情報と関連付けられている。そのため、ステップS205の処理へ進む。ステップS205の処理において、情報処理装置101が温度センサを有していると判定される。その後、ステップS206の処理へ進み、状況の類似度が判定される。
ステップS302の処理において、温度センサに対応する閾値が取得される。ここでは、閾値は3[度]であるとする。
ステップS305の処理において、入力候補N=2番目の「暖かい」のセンサ値である温度(24.00)と、ステップS301の処理で取得された温度センサの現在の検知結果である温度(32.00)との差分が算出される。その結果、差分9[度]が得られる。
ステップS310の処理において、入力候補数NがN=1であることから、ステップS305の処理に戻り、次の入力候補における差分が算出される。
ステップS305の処理において、入力候補N=1番目の「暑い」のセンサ値である温度(30.00)と、ステップS301の処理で取得された温度センサの現在の検知結果である温度(32.00)との差分が算出される。その結果、差分2[度]が得られる。
図4(c)に示す入力候補は、「乗りました」、「乗ります」という単語であり、それぞれが状況情報と関連付けられている。入力候補「乗りました」の状況情報は、センサ種別が「加速度」であり、センサ値が「移動」である。また、入力候補「乗ります」の状況情報は、センサ種別が「加速度」であり、センサ値が「停止」である。入力候補「乗りました」の採用頻度は「10」回であり、入力候補「乗ります」の採用頻度は「2」回である。
なお、検知結果が加速度である場合と同様に、検知結果が速度である場合、あるいは変位量である場合には、ユーザの状況を表すセンサ値として変換した後に状況情報に記録する。
図2に示すステップ201の処理において、文字入力「のり」に対応する入力候補が記憶装置103の辞書から取得される。文字入力「のり」に対しては、例えば「乗り換え」、「載り」、「海苔」、「乗り」、「乗ります」、「乗りました」などが上位候補として取得されたとする。
ステップ202の処理では、複数の入力候補を取得したと判定される。次に、ステップS204の処理において、取得された入力候補の中に状況情報に関連付けられているものがあるか否かが判定される。図4(c)に示すように、入力候補「乗りました」、「乗ります」は状況情報と関連付けられている。そのため、ステップS205の処理へ進む。ステップS205の処理において、情報処理装置101が加速度センサを有していると判定される。その後、ステップS206の処理へ進み、状況の類似度が判定される。
ステップS302の処理において、加速度センサに対応する閾値が取得される。ここでは、閾値が「0」であるとする。これは、加速度センサの検知結果に基づいてユーザの状況を推定し、推定された状況が同じ状況であるか否かを判定するためである。
ステップS306の処理において、入力候補N=2番目の「乗ります」のセンサ値である「停止」と、ステップS301の処理で取得された検知結果から推定された「移動」とが比較される。その結果、同じ状況ではないと判定される。その後、ステップS309の処理へ進み、入力候補数N=2がデクリメントされ、N=1となる。
ステップS310の処理において、入力候補数NがN=1であることから、ステップS305の処理に戻り、次の入力候補との比較が行われる。
図5に示す画面500は、ユーザが入力した文字が表示される表示エリア501、入力候補が表示される表示エリア502、入力装置の一例であるキーパッド504が表示されるエリアを含んで構成される。また、画面500には、ユーザが作成したメールの保存を指示する保存ボタン503a、作成したメールの送信を指示する送信ボタン503bが配置される。
表示エリア502では、ユーザが「のり」を文字入力したことを契機に、「乗り換え」、「載り」、「海苔」、「乗り」、「ノリ」、「糊」という入力候補とともに、「乗ります」という入力候補が優先して表示されている。なお、優先して表示するとは、例えば入力候補を選択するための選択カーソル(不図示)が初めに画面500に表示される位置に表示することなどである。具体的には、例えば表示エリア502において、図正面から見て左上位置に優先して表示する入力候補を表示することである。
なお、ユーザが既に電車に乗って移動している状況であれば、「移動」と推定されるため、入力候補「乗りました」が他の入力候補よりも優先して表示される。
具体的には、予めセンサ種別毎に対応付けされた単語を保持しておき、登録部111がこれらの単語とユーザから入力された文字列(単語)とを比較することにより、当該文字列が状況情報と関連付けて登録できるものであるか否かを判定する。以下、この点について詳細に説明する。
また、既に辞書に登録されていると判定した場合(S602:Yes)、受け付けた文字列に対応する入力候補の状況情報のセンサ値を、文字入力の受け付けた際のセンサ102の検知結果により更新する。さらに、状況情報の採用頻度の値を1だけインクリメントする(S604)。センサ値の更新は、検知結果を単に上書きすることでも良いし、既に登録されているセンサ値とは別に、今回の検知結果を新たなセンサ値として追加登録するようにしても良い。また、既に登録されているセンサ値も含めた平均値を算出し、算出結果を登録することもできる。あるいは、先述したように、最小値と最大値のみを更新していく方法であっても良い。なお、追加登録する場合においては、使用日時や登録順番に基づいて、順次古いものから破棄されるように制御することが望ましい。これにより、辞書が占める記憶装置103の記憶容量を低減化することができる。
なお、受け付けた文字列がセンサ種別毎に対応付けされた単語である場合には、既に辞書に登録済みであっても、当該文字列に対応する入力候補の採用頻度の値を1だけインクリメントする。これにより、ユーザによる入力頻度に応じて、上位候補が決定されるように制御することができる。また、状況情報のセンサ値を、常に文字入力された時点におけるセンサの検知結果で更新することに替えて、閾値を決定して、この閾値に基づいて更新するか否かが判定されるように制御することもできる。この他、入力候補に適したセンサ値を予めDBに格納しておき、必要に応じて取得することができるようにしても良い。なお、受け付けた文字列を入力候補として状況情報と関連付けて記憶装置103の辞書に登録する際に、閾値も登録することができるようにしても良い。
一方、過去の作成された文章を引用したり、あるいは編集途中であった文章の編集を再開したりする場合にも適用することができる。例えば、文章内の文字列に状況情報が関連付けられている場合には、これに対応するセンサ102の現時点の検知結果と、状況情報に記録されているセンサ値とから、文字列を変更する必要があるか否かを判定する。変更が必要であると判定された場合には、今の状況に適合した入力候補を優先して表示する。
本実施形態では、入力確定済みの文字列に後続する単語を予測し、入力候補として提示することができる情報処理装置について説明する。なお、第1実施形態で既に説明した部分と重複する部分は、同じ符号を付すとともに、その説明を省略する。
これらの手法を用いることにより、入力候補を提示する上で入力未確定の状態を必要とせず、直前に入力された入力確定済みの内容(単語)に基づいて、後続する単語を予測し、入力候補としてユーザに提示することが可能になる。
なお、本実施形態の情報処理装置においては、CPU107の制御に基づき辞書において、入力確定済みの単語から入力候補の予測が行われるものとする。また、登録部111において、単語の組み合わせと、これに関連付けられる状況情報のセンサ値などを登録するものとする。
図7(a)に示す辞書テーブルには、構成モデル1が「これから」、「下丸子」、「で」、「電車」という単語の組み合わせとして、構成モデル2が「これから」、「下丸子」、「で」、「会議」という単語の組み合わせとして登録されている。また、それぞれの構成モデルでは、状況情報である付加センサ情報、採用頻度も関連付けられて登録されている。
構成モデル1では、センサ種別が「GPS(センサ)」であり、センサ値の緯度が「35.5713」、経度が「139.6856」である。構成モデル2では、センサ種別が「GPS(センサ)」であり、センサ値の緯度が「35.5669」、経度が「139.6819」である。また、構成モデル1の採用頻度は「7」回、構成モデル2の採用頻度は「3」回である。
図2に示すステップS201の処理において、入力確定済みの文字列に後続する確率の高い単語が入力候補として記憶装置103の辞書から取得される。入力確定済みの文字列「これから下丸子で」に対しては、「電車」、「会議」という2つの入力候補が取得されたとする。
ステップS302の処理において、GPSセンサに対応する閾値が取得される。ここでは、閾値は500[m]であるとする。
ステップS305の処理において、入力候補N=2番目の「会議」のセンサ値である緯度(35.5669)及び経度(139.6819)と、GPSセンサの検知結果である緯度(35.5712)及び経度(139.6861)との差分が算出される。その結果、距離の差分として611[m]が得られる。
ステップS310の処理において、入力候補数NがN=1であることから、ステップS305の処理に戻り、次の入力候補における差分が算出される。
ステップS305の処理において、入力候補N=1番目の「電車」のセンサ値である緯度(35.5713)及び経度(139.6856)と、GPSセンサの現在の検知結果である緯度(35.5712)及び経度(139.6861)の差分が算出される。その結果、2点間の距離0.004662[km]となり、差分46[m]が得られる。
構成モデル1では、センサ種別が「温度(センサ)」であり、センサ値が「30.00[度]」である。構成モデル2では、センサ種別が「温度(センサ)」であり、センサ値が「24.00[度]」である。また、構成モデル1の採用頻度は「6」回、構成モデル2の採用頻度は「3」回である。
図2に示すステップS201の処理において、入力確定済みの文字列に後続する確率の高い単語が入力候補として記憶装置103の辞書から取得される。入力確定済みの文字列「今日は」に対しては、「暑い」、「暖かい」という2つの入力候補が取得されたとする。
ステップS302の処理において、温度センサに対応する閾値が取得される。ここでは、閾値は3[度]であるとする。
ステップS305の処理において、入力候補N=2番目の「暖かい」のセンサ値である温度(24.00)と、ステップS301の処理で取得された温度センサの現在の検知結果である温度(32.00)との差分が算出される。その結果、差分9[度]が得られる。
ステップS310の処理において、入力候補数NがN=1であることから、ステップS305の処理に戻り、次の入力候補における差分が算出される。
ステップS305の処理において、入力候補N=1番目の「暑い」のセンサ値である温度(30.00)と、ステップS301の処理で取得された温度センサの現在の検知結果である温度(32.00)との差分が算出される。その結果、差分2[度]が得られる。
構成モデル1では、センサ種別が「加速度(センサ)」であり、センサ値が「移動」である。構成モデル2では、センサ種別が「加速度(センサ)」であり、センサ値が「停止」である。また、構成モデル1の採用頻度は「6」回、構成モデル2の採用頻度は「2」回である。
図2に示すステップS201の処理において、入力確定済みの文字列に後続する確率の高い単語が入力候補として記憶装置103から取得される。入力確定済みの文字列「電車に」に対しては、「乗りました」、「乗ります」という2つの入力候補が取得されたとする。
ステップS302の処理において、加速度センサに対応する閾値が取得される。ここでは、閾値が「0」であるとする。
ステップS306の処理において、入力候補N=2番目の「乗ります」のセンサ値である「停止」と、ステップS301の処理で取得された検知結果から推定された「移動」とが比較される。その結果、同じ状況ではないと判定される。その後、ステップS309の処理へ進み、入力候補数N=2がデクリメントされ、N=1となる。
ステップS310の処理において、入力候補数NがN=1であることから、ステップS305の処理に戻り、次の入力候補との比較が行われる。
本実施形態では、入力候補を提示している間にユーザの状況が変化した場合に、既に提示している入力候補を変更するか否かを判定することができる情報処理装置について説明する。なお、第1実施形態及び第2実施形態で既に説明した部分と重複する部分は、同じ符号を付すとともに、その説明を省略する。
変化検知部801は、センサ102により検知される状況の変化を、ユーザの状況の変化として検知する。具体的には、入力候補が提示されている間にセンサ102が検知した検知結果(現在の検知結果)と、図2に示すステップS206の処理において取得されている検知結果(過去の検知結果)とを比較する。比較した結果、所定の値以上の差分が生じるような変化があった場合には、ユーザの状況が変化したものと判定する。ユーザの状況の変化とは、例えば入力を開始した時点では乗車待ちで停止している状況であったが、入力している最中に乗車して移動している状況になった場合などである。
CPU107の機能部である判定部112は、変化検知部801によりユーザの状況が変化したと検知されたことを契機に、センサ102の検知結果を取得し、取得した検知結果を現在の状況として保持する(S901)。なお、取得する検知結果は、ユーザの状況が変化したことが検知されたセンサの検知結果である。
CPU107の機能部である受付部113は、ユーザにより文字入力が行われている状況であるか否かを判定する(S902)。この判定は、ユーザの文字入力操作を検知することによる判定のほか、文字入力に要するアプリケーションソフトウエアが起動されているか、文字入力のためのキーパッドが起動されているかなどに基づき判定する。
なお、入力確定済の文字列を修正候補に変更するか否かは、ユーザが任意に指定することができるように制御される。
図10(a)に示す画面500には、図5で既に説明した画面の一例と同じ内容が表示されている。図10(a)では、メール作成しているユーザが「のり」を文字入力したことに対して、「乗ります」、「乗り換え」を含むいくつかの入力候補が表示されている様子を示している。なお、この場合の情報処理装置101が有するセンサ102は、加速度センサである。
また、図10(b)に示すように、文字列「乗ります」1001は、現在の状況により適した入力候補が存在する場合には、反転表示されるように制御する。これにより、ユーザは、追加表示された入力候補との対応関係の把握が容易になる。
図11(a)に示す画面500は、修正候補が表示される前の画面例である。図11(a)では、ユーザが入力した文字列「今、電車に乗ります」が入力確定していることを示している。
図11(b)は、修正候補を表示した際の画面500の一例である。図11(b)に示すように、入力確定済みの文字列の中には、変化検知部801により特定されたセンサの検知結果に対応した文字列「乗ります」1101が含まれている。そのため、記憶した検知結果に対応する入力候補、つまり、現在の状況により適する入力候補が辞書に登録されているか否か検索が行われる。図11(b)に示すように、検索の結果、特定された入力候補が修正候補「乗りました」1102として追加表示される。
また、図11(b)に示すように、文字列「乗ります」1101は、現在の状況により適した修正候補が存在する場合には、反転表示されるように制御する。これにより、ユーザは、追加表示された入力候補との対応関係の把握が容易になる。
これにより、ユーザの状況の変化をより適切に反映させた入力候補、修正候補の提示を行うことができる。
これにより、ユーザの状況に変化が生じた場合であっても、簡単に入力内容を変更したり、修正したりすることができる。そのため、ユーザの利便性が向上する。
Claims (13)
- 入力された文字に基づいて文字列の予測変換を行う情報処理装置であって、
少なくとも1つのセンサが検知する情報に基づいて、前記情報処理装置が存在する状況を示す状況情報を取得する取得手段と、
複数の文字列を、その文字列が使用される状況を表す状況情報と関連付けて記憶させる記憶手段であって、前記状況情報には該状況を示す情報を検知するセンサの種別を一部に含む記憶手段と、
ユーザにより入力された少なくとも1つの文字入力に基づいて予測変換を実行して少なくとも1つの文字列を変換候補として出力する出力手段と、
前記予測変換により出力された少なくとも1つの文字列を変換候補として表示させる表示手段と、
前記予測変換により変換候補として出力された前記少なくとも1つの文字列が前記記憶手段に記憶された文字列の少なくとも1つを含むか否かを判定する判定手段と、を備え、
前記表示手段は、前記変換候補として出力された前記少なくとも1つの文字列が前記記憶された文字列の少なくとも1つを含むと前記判定手段で判定された場合は、変換候補として出力された前記少なくとも1つの文字列のうち、前記取得手段で取得された状況情報に類似する状況情報に関連付けられた文字列を優先して表示し、当該文字列を表示した後に前記情報処理装置が存在する状況の変化を前記センサが検知した場合、変化後の状況に適した文字列が前記記憶手段に登録されていれば、変化後の状況に適した文字列を変換候補として表示することを特徴とする、
情報処理装置。 - 前記状況情報は登録され、前記状況情報には、前記ユーザにより前記少なくとも1つの文字が入力されたときの前記情報処理装置が存在する状況を示す情報を検知する少なくとも1つのセンサの種別、及び前記少なくとも1つのセンサにより検知された前記情報の所定の値が含まれていることを特徴とする、
請求項1に記載の情報処理装置。 - 前記動作には、
前記変換候補として表示された複数の文字列の中から、一の文字列の指定を受け付け、
前記指定の受け付けを契機に、当該指定された文字列に関連付けられた状況情報に対応するセンサによる検知結果に基づいて、記憶された情報の更新を行う、
請求項2に記載の情報処理装置。 - 前記更新では、前記入力された文字が前記センサの種別を表す情報と対応付けられた文字列であり、且つ、当該文字列が前記状況情報と関連付けられて登録されていない場合には、当該文字列に対応するセンサの種別と、前記センサ値として当該センサの検知結果を含んだ状況情報を生成し、生成した状況情報と当該文字列とを関連付けて登録することを特徴とする、
請求項3に記載の情報処理装置。 - 前記センサは、前記文字入力が受け付けられたときに前記情報処理装置が存在する状況を示す情報として前記情報処理装置に作用する加速度を検知するものであり、
前記文字列が使用される状況を表す状況情報として加速度の推移を表す情報が登録されており、
前記判定には、状況情報の加速度の推移により表される状況と、前記センサにより検知された加速度の推移により表される状況とが類似するかの判定が含まれることを特徴とする、
請求項2乃至4のいずれか一項に記載の情報処理装置。 - 前記センサは、前記文字入力が受け付けられたときに前記情報処理装置が存在する状況を示す情報として前記情報処理装置の位置を検知するものであり、
前記文字列が使用される状況を表す状況情報として位置を表す情報が登録されており、
前記判定には、前記状況情報に示された位置と、前記センサにより検知された位置との差分の大きさに基づいて、両者が類似するかの判定が含まれることを特徴とする、
請求項2乃至4のいずれか一項に記載の情報処理装置。 - 前記センサは、前記文字入力が受け付けられたときに前記情報処理装置が存在する状況を示す情報として前記情報処理装置の向きを表す方位、前記情報処理装置が存在する空間の温度、前記情報処理装置にかかる気圧の少なくとも一つを検知するものであり、
前記文字列が使用される状況を表す状況情報として、前記センサの種別と共に方位、温度、気圧の少なくとも一つの情報が登録されており、
前記判定には、前記状況情報に示された方位、温度、気圧の内の一つあるいは2つ以上の組み合わせと、これに対応するセンサによる検知結果との差分を算出し、算出結果に基づいて、前記文字入力を受け付けた際の状況と、前記予測変換によって変換候補として出力された文字列に関連付けられた状況とが類似するかの判定が含まれることを特徴とする、
請求項2乃至4のいずれか一項に記載の情報処理装置。 - 前記判定には、前記算出結果と、前記センサの種別毎に設定された閾値とを比較することにより類似度を判定することが含まれることを特徴とする、
請求項7に記載の情報処理装置。 - 前記少なくとも1つのセンサは、種別が異なる複数のセンサであり、
前記文字列が使用される状況を表す状況情報として前記センサの種別に応じたセンサ値が登録されており、
前記判定には、前記状況情報に示された種別の少なくとも1つのセンサを前記情報処理装置が有する場合には、当該状況情報に示されたセンサ値と、当該状況情報に示された種別のセンサの検知結果との差分をそれぞれ算出し、算出結果に基づいて、前記文字入力を受け付けた際の状況と、前記予測変換により変換候補として出力された文字列に関連付けられた状況とが類似するかの判定が含まれることを特徴とする、
請求項2に記載の情報処理装置。 - 前記表示には、
前記変換候補として出力された前記複数の文字列から少なくとも1つの文字列を選択し、所定の画面に前記選択された少なくとも1つの文字列を表示させることが含まれ、
前記所定の画面に表示された前記少なくとも1つの文字列は、類似度に応じて選択されることを特徴とする、
請求項8に記載の情報処理装置。 - 前記表示には、前記画面に表示できる文字列に制限がある場合には、当該制限を超えない範囲で前記類似度が高い順に変換候補として選択するように制御することが含まれることを特徴とする、
請求項10に記載の情報処理装置。 - 入力された文字に基づいて文字列の予測変換を行う情報処理装置が実行する方法であって、
少なくとも1つのセンサが検知する情報に基づいて、前記情報処理装置が存在する状況を示す状況情報を取得する取得工程と、
複数の文字列を、その文字列が使用される状況を表す状況情報と関連付けて記憶手段に記憶する工程であって、前記状況情報には該状況を示す情報を検知するセンサの種別を一部に含む記憶工程と、
ユーザにより入力された少なくとも1つの文字入力に基づいて予測変換を実行して少なくとも1つの文字列を変換候補として出力する出力工程と、
前記予測変換により出力された少なくとも1つの文字列を変換候補として表示する表示工程と、
前記予測変換により変換候補として出力された前記少なくとも1つの文字列が前記記憶手段に記憶された文字列の少なくとも1つを含むか否かを判定する判定工程と、を備え、
前記表示工程では、前記変換候補として出力された前記少なくとも1つの文字列が前記記憶された文字列の少なくとも1つを含むと前記判定工程で判定された場合は、変換候補として出力された前記少なくとも1つの文字列のうち、前記取得工程で取得された状況情報に類似する状況情報に関連付けられた文字列を優先して表示し、当該文字列を表示した後に前記情報処理装置が存在する状況の変化を前記センサが検知した場合、変化後の状況に適した文字列が前記記憶手段に登録されていれば、変化後の状況に適した文字列を変換候補として表示することを特徴とする、
方法。 - コンピュータを、
少なくとも1つのセンサが検知する情報に基づいて、前記情報処理装置が存在する状況を示す状況情報を取得する取得手段と、
複数の文字列を、その文字列が使用される状況を表す状況情報と関連付けて記憶手段に記憶させる手段であって、前記状況情報には該状況を示す情報を検知するセンサの種別を一部に含む記憶手段と、
ユーザにより入力された少なくとも1つの文字入力に基づいて予測変換を実行して少なくとも1つの文字列を変換候補として出力する出力手段と、
前記予測変換により出力された少なくとも1つの文字列を変換候補として表示手段に表示させる手段と、
前記予測変換により変換候補として出力された前記少なくとも1つの文字列が前記記憶手段に記憶された文字列の少なくとも1つを含むか否かを判定する判定手段と、として機能させるためのコンピュータプログラムであって、
前記表示手段は、前記変換候補として出力された前記少なくとも1つの文字列が前記記憶された文字列の少なくとも1つを含むと前記判定手段で判定された場合は、変換候補として出力された前記少なくとも1つの文字列のうち、前記取得手段で取得された状況情報に類似する状況情報に関連付けられた文字列を優先して表示し、当該文字列を表示した後に前記情報処理装置が存在する状況の変化を前記センサが検知した場合、変化後の状況に適した文字列が前記記憶手段に登録されていれば、変化後の状況に適した文字列を変換候補として表示することを特徴とする、
コンピュータプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013176289A JP6271914B2 (ja) | 2013-08-28 | 2013-08-28 | 情報処理装置及びその制御方法、コンピュータプログラム、記録媒体 |
US14/465,259 US20150067492A1 (en) | 2013-08-28 | 2014-08-21 | Information processing apparatus, information processing method, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013176289A JP6271914B2 (ja) | 2013-08-28 | 2013-08-28 | 情報処理装置及びその制御方法、コンピュータプログラム、記録媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015045973A JP2015045973A (ja) | 2015-03-12 |
JP2015045973A5 JP2015045973A5 (ja) | 2016-10-13 |
JP6271914B2 true JP6271914B2 (ja) | 2018-01-31 |
Family
ID=52585052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013176289A Active JP6271914B2 (ja) | 2013-08-28 | 2013-08-28 | 情報処理装置及びその制御方法、コンピュータプログラム、記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150067492A1 (ja) |
JP (1) | JP6271914B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR112017022688B1 (pt) * | 2015-04-20 | 2023-04-04 | Huawei Technologies Co., Ltd | Método e aparelho para exibir entrada de texto de um dispositivo terminal, dispositivo terminal e meio de gravação legível por computador |
JP6010683B1 (ja) * | 2015-06-02 | 2016-10-19 | フロンティアマーケット株式会社 | 情報処理装置 |
JP6786245B2 (ja) * | 2016-04-07 | 2020-11-18 | ソニーモバイルコミュニケーションズ株式会社 | 情報処理装置 |
US10680120B2 (en) | 2018-04-05 | 2020-06-09 | Vanguard International Semiconductor Corporation | Semiconductor device and method for manufacturing the same |
EP4224358A1 (en) * | 2022-02-08 | 2023-08-09 | Koa Health B.V. Sucursal en España | Method and system for a more accurate autocomplete mechanism |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003303186A (ja) * | 2002-04-09 | 2003-10-24 | Seiko Epson Corp | 文字入力支援システム、文字入力支援方法、端末装置、サーバおよび文字入力支援プログラム |
US7565157B1 (en) * | 2005-11-18 | 2009-07-21 | A9.Com, Inc. | System and method for providing search results based on location |
US20100131447A1 (en) * | 2008-11-26 | 2010-05-27 | Nokia Corporation | Method, Apparatus and Computer Program Product for Providing an Adaptive Word Completion Mechanism |
KR101597512B1 (ko) * | 2009-07-27 | 2016-02-26 | 삼성전자주식회사 | 휴대 단말기의 운용 방법 및 이를 기반으로 하는 휴대 단말기 |
JP2011076140A (ja) * | 2009-09-29 | 2011-04-14 | Sony Ericsson Mobilecommunications Japan Inc | コミュニケーション端末、コミュニケーション情報提供サーバ、コミュニケーションシステム、携帯電話端末、コミュニケーション情報生成方法、コミュニケーション情報生成プログラム、コミュニケーション補助方法、及び、コミュニケーション補助プログラム |
US9128921B2 (en) * | 2012-05-31 | 2015-09-08 | Blackberry Limited | Touchscreen keyboard with corrective word prediction |
-
2013
- 2013-08-28 JP JP2013176289A patent/JP6271914B2/ja active Active
-
2014
- 2014-08-21 US US14/465,259 patent/US20150067492A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2015045973A (ja) | 2015-03-12 |
US20150067492A1 (en) | 2015-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6271914B2 (ja) | 情報処理装置及びその制御方法、コンピュータプログラム、記録媒体 | |
CN108139861B (zh) | 基于操作历史来预测触摸对象的计算机可读介质、电子装置、系统和控制方法 | |
US10055390B2 (en) | Simulated hyperlinks on a mobile device based on user intent and a centered selection of text | |
JP5852930B2 (ja) | 入力文字推定装置およびプログラム | |
US20170268888A1 (en) | System and method for acquiring map portions based on expected signal strength of route segments | |
US9552080B2 (en) | Incremental feature-based gesture-keyboard decoding | |
US20120229376A1 (en) | Input device | |
JP6543365B2 (ja) | ユーザ入力スピードに基づく入力方法の誤り訂正方法及び装置 | |
CN107209577A (zh) | 用户状态自适应文本输入 | |
US20100106407A1 (en) | Navigation system | |
JP5146480B2 (ja) | 地図表示制御装置、地図表示制御方法およびプログラム | |
US20160047670A1 (en) | Method and apparatus for navigation | |
JP4524327B1 (ja) | 情報検索装置、及び情報検索プログラム | |
JP5013266B2 (ja) | 目的地入力装置及び目的地入力用プログラム | |
JP5240547B2 (ja) | 目的地入力装置及び目的地入力用プログラム | |
JP4785568B2 (ja) | 電子機器および操作ヘルプ提示方法 | |
JP2009140287A (ja) | 検索結果表示装置 | |
KR20130037484A (ko) | 터치스크린에서의 문자 입력 방법 및 터치스크린을 구비한 전자장치 | |
JP5378037B2 (ja) | ナビゲーション装置及びその目的地設定方法 | |
JP2010197348A (ja) | ナビゲーション装置 | |
JP2013036763A (ja) | 地点名称出力装置、ナビゲーション装置、地点名称出力方法、およびプログラム | |
JP2014085797A (ja) | 文字列入力装置 | |
KR101518385B1 (ko) | 멀티모달 검색방법, 멀티모달 검색 장치 및 기록매체 | |
JP6313615B2 (ja) | 行き先候補表示方法及び行き先候補表示装置 | |
JP5298520B2 (ja) | 文字入力支援装置、文書作成プログラム及び文字入力支援方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160826 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160826 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170705 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170711 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170911 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170926 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171124 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20171205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171228 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6271914 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |