(57)【特許請求の範囲】
【請求項１】
ユーザが入力した第１の単語を取得する取得部と、
前記取得部により前記第１の単語が取得されたとき、前記第１の単語を置き換えるための前記第１の単語を抽象化した第２の単語を提示し、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語を読み出し、前記ユーザに提示する提示部と
を備え、
前記データベースに前記第１の単語が登録されていない場合、前記第１の単語を検索対象とした検索を行い、検索結果として得られたページ内から、ランダムに単語を抽出し、抽出された単語が、前記第１の単語を包含する第３の単語、または第１の単語に包含される第４の単語に分類するための画面を前記データベースの管理者に提示し、前記管理者により前記第３の単語に分類された単語を、前記第１の単語を抽象化した単語として前記第１の単語と関連付けて前記データベースに登録し、前記第４の単語に分類された単語を、前記第４の単語を抽象化した単語が前記第１の単語であるとして、前記第１の単語と関連付けて前記データベースに登録する
情報処理装置。
【請求項２】
前記第１の単語を置き換えずに用いるときに操作される第１の項目と、前記第１の単語および前記第２の単語と異なる第５の単語を用いるときに操作される第２の項目との間に、前記第２の単語が表示され、前記ユーザに提示される
請求項１に記載の情報処理装置。
【請求項３】
前記第１の項目、前記第２の単語、および前記第２の項目は、吹き出し内に表示され、
前記吹き出しの吹き出し口は、前記第１の単語の近傍に位置する
請求項２に記載の情報処理装置。
【請求項４】
前記第１の単語に関する前記第２の単語の提示が、前記ユーザにより指示されたとき、前記第２の単語を提示する
請求項１に記載の情報処理装置。
【請求項５】
文字列が入力され、前記文字列が前記第１の単語に変換されたとき、前記第２の単語を提示する
請求項１に記載の情報処理装置。
【請求項６】
入力された文字から、入力される単語を予測して提示した単語群から、前記第１の単語が選択されたとき、前記第２の単語を提示する
請求項１に記載の情報処理装置。
【請求項７】
入力された文字から、入力される単語を予測し、予測した単語に前記第１の単語が含まれる場合、予測した単語群内の前記第１の単語に、前記第２の単語を関連付けた表示で前記第２の単語を提示する
請求項１に記載の情報処理装置。
【請求項８】
文字が入力され、前記文字から入力される単語を予測し、予測した単語群を提示し、提示された単語群から、前記第１の単語上にカーソルが位置したとき、前記第２の単語を提示する
請求項１に記載の情報処理装置。
【請求項９】
前記第２の単語が選択された場合、前記第２の単語の使用頻度を表す重みを更新し、
前記第５の単語が入力された場合、前記第２の単語として、前記第５の単語を前記データベースに追加する
請求項２に記載の情報処理装置。
【請求項１０】
所定の演算式により求められる値の降順または昇順に、前記第２の単語を並べた状態で、前記第１の単語に関連付け、前記データベースで管理する
請求項１に記載の情報処理装置。
【請求項１１】
前記値は、抽象的な単語である度合いを表す値である
請求項１０に記載の情報処理装置。
【請求項１２】
ユーザの入力を受け付ける入力部と、前記ユーザに情報を提示する提示部を備える情報処理装置の情報処理方法において、
前記入力部により入力された前記ユーザが入力した第１の単語を取得し、
前記第１の単語が取得されたとき、前記第１の単語を置き換えるための前記第１の単語を抽象化した第２の単語を提示し、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語を読み出し、前記ユーザに前記提示部で提示し、
前記データベースに前記第１の単語が登録されていない場合、前記第１の単語を検索対象とした検索を行い、検索結果として得られたページ内から、ランダムに単語を抽出し、抽出された単語が、前記第１の単語を包含する第３の単語、または第１の単語に包含される第４の単語に分類するための画面を前記データベースの管理者に提示し、前記管理者により前記第３の単語に分類された単語を、前記第１の単語を抽象化した単語として前記第１の単語と関連付けて前記データベースに登録し、前記第４の単語に分類された単語を、前記第４の単語を抽象化した単語が前記第１の単語であるとして、前記第１の単語と関連付けて前記データベースに登録する
ステップを含む情報処理方法。
【請求項１３】
ユーザの入力を受け付ける入力部と、前記ユーザに情報を提示する提示部を備える情報処理装置を制御するコンピュータに、
前記入力部により入力された前記ユーザが入力した第１の単語を取得し、
前記第１の単語が取得されたとき、前記第１の単語を置き換えるための前記第１の単語を抽象化した第２の単語を提示し、前記提示部は、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語を読み出し、前記ユーザに前記提示部で提示し、
前記データベースに前記第１の単語が登録されていない場合、前記第１の単語を検索対象とした検索を行い、検索結果として得られたページ内から、ランダムに単語を抽出し、抽出された単語が、前記第１の単語を包含する第３の単語、または第１の単語に包含される第４の単語に分類するための画面を前記データベースの管理者に提示し、前記管理者により前記第３の単語に分類された単語を、前記第１の単語を抽象化した単語として前記第１の単語と関連付けて前記データベースに登録し、前記第４の単語に分類された単語を、前記第４の単語を抽象化した単語が前記第１の単語であるとして、前記第１の単語と関連付けて前記データベースに登録する
ステップを含む処理を実行させるコンピュータ読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、情報処理装置、情報処理方法、並びにプログラムに関する。詳しくは、プライバシ情報を保護するために適切な抽象語を提示できる情報処理装置、情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、インターネット上でさまざまなサービスが提供され、ユーザは、気軽にそのようなサービスを利用するようになってきている。提供されているサービスとしては、ブログ（Blog）、ソーシャルネットワーキングサービス（SNS）、twitter（登録商標）といったサービスがあり、これらのマイクロブログを通じた非常に多くの情報の発信がユーザにより行われている。
【０００３】
その一方でユーザの公開するコンテンツからのユーザのプライバシ情報の漏洩が発生するケースがある。このようなユーザ、特に一個人毎の不用意な書き込みや文章の公開によるプライバシの漏洩を防ぐための技術が求められている。そのような要望に対し、ユーザのプライバシの漏洩を防ぐ技術が提案されている。
【０００４】
例えば、特許文献１では，ユーザが作成した文書のプライバシ情報を特定し、該当箇所をマスキング（該当箇所の削除もしくは記号への置き換え）を行うことが提案されている。その具体的な手順を簡便に記載する。まず、ユーザ側のクライアントからファイルサーバに公開文書が提供される。ファイルサーバは、２つの方法を用いて個人情報を検知、マスキングしてファイルデータベースに格納する。
【０００５】
この２つの個人情報検知方法のうちの第１の検知方法は、プライバシ情報を定義した個人情報辞書を用いて文書が検索され、該当単語が文書中に含まれないか否かの検索が行われる。第２の検知方法として、処理後の文書から、外部検索サーバへ文書から抽出された名詞が用いられて検索が行われ、その検索結果のヒット率がユーザの事前に決めた閾値以下であれば、個人情報として特定することで行われる。
【０００６】
特許文献２では、ユーザが作成した文書に対してプライバシ情報の示唆をし、ユーザに判断を委ね、該当箇所のマスキングではなく書き換えを促すことが提案されている。その具体的な手順を簡便に記載する。まず、ユーザ側のクライアントからファイルサーバへ公開文書が提供される。ファイルサーバは、２種類のユーザ辞書を参照して個人情報を推定し、ユーザに提示し可否を判断させる。そして、ユーザの判断に応じて、ユーザ辞書が更新される。
【０００７】
２種類のユーザ辞書としては、ホワイトリストとブラックリストが用意されている。ホワイトリストは、ファイルサーバの推定結果が、個人情報と判断されなかった場合に、その推定結果が記録されるリストとされている。ブラックリストは、ファイルサーバの推定結果が個人情報と判断された場合に、その判断結果が記録されるリストとされている。
【０００８】
特許文献３は、ユーザの文字入力の際に表示される予測文字列の中に、ユーザにとってのプライバシ情報が表示されることを防ぐことを目的とした技術が開示されている。特許文献３においては、ユーザの入力確定文字列のデータベースへの登録の可否を、プライバシ非保護モード、プライバシ保護モードを切り換えることによって、ユーザにとって都合の悪い文字列が、データベースに記録されることを防ぐことが提案されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−１９９３８５号公報
【特許文献２】特願２０１１−０１８００９号公報
【特許文献３】特開２００５−１９０３８９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記したように、プライバシに係わる記載を、マスキングやランダムな単語の置き換えによりプライバシの漏洩を防ぐようにした場合、文意が損なわれてしまう可能性があった。また、マスキングなどによると、そのマスキングされている部分は、プライバシの問題が存在する記載があることを明確に他のユーザに教えてしまうというリスクもある。
【００１１】
本技術は、このような状況に鑑みてなされたものであり、文意を損なうことなく、プライバシの漏洩を防ぐことができるようにするものである。
【課題を解決するための手段】
【００１２】
本技術の一側面の情報処理装置は、ユーザが入力した第１の単語を取得する取得部と、前記取得部により前記第１の単語が取得されたとき、前記第１の単語を置き換えるための前記第１の単語を抽象化した第２の単語を提示し、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語を読み出し、前記ユーザに提示する提示部とを備え、前記データベースに前記第１の単語が登録されていない場合、前記第１の単語を検索対象とした検索を行い、検索結果として得られたページ内から、ランダムに単語を抽出し、抽出された単語が、前記第１の単語を包含する第３の単語、または第１の単語に包含される第４の単語に分類するための画面を前記データベースの管理者に提示し、前記管理者により前記第３の単語に分類された単語を、前記第１の単語を抽象化した単語として前記第１の単語と関連付けて前記データベースに登録し、前記第４の単語に分類された単語を、前記第４の単語を抽象化した単語が前記第１の単語であるとして、前記第１の単語と関連付けて前記データベースに登録する。
【００１４】
前記第１の単語を置き換えずに用いるときに操作される第１の項目と、前記第１の単語および前記第２の単語と異なる第５の単語を用いるときに操作される第２の項目との間に、前記第２の単語が表示され、前記ユーザに提示されるようにすることができる。
【００１５】
前記第１の項目、前記第２の単語、および前記第２の項目は、吹き出し内に表示され、前記吹き出しの吹き出し口は、前記第１の単語の近傍に位置するようにすることができる。
【００１７】
前記第１の単語に関する前記第２の単語の提示が、前記ユーザにより指示されたとき、前記第２の単語を提示するようにすることができる。
【００１８】
文字列が入力され、前記文字列が前記第１の単語に変換されたとき、前記第２の単語を提示するようにすることができる。
【００１９】
入力された文字から、入力される単語を予測して提示した単語群から、前記第１の単語が選択されたとき、前記第２の単語を提示するようにすることができる。
【００２０】
入力された文字から、入力される単語を予測し、予測した単語に前記第１の単語が含まれる場合、予測した単語群内の前記第１の単語に、前記第２の単語を関連付けた表示で前記第２の単語を提示するようにすることができる。
【００２１】
文字が入力され、前記文字から入力される単語を予測し、予測した単語群を提示し、提示された単語群から、前記第１の単語上にカーソルが位置したとき、前記第２の単語を提示するようにすることができる。
【００２２】
前記第２の単語が選択された場合、前記第２の単語の使用頻度を表す重みを更新し、前記第５の単語が入力された場合、前記第２の単語として、前記第５の単語を追加するようにすることができる。
【００２３】
所定の演算式により求められる値の降順または昇順に、前記第２の単語を並べた状態で、前記第１の単語に関連付け、前記データベースで管理するようにすることができる。
【００２４】
前記値は、抽象的な単語である度合いを表す値であるようにすることができる。
【００２６】
本技術の一側面の情報処理方法は、ユーザの入力を受け付ける入力部と、前記ユーザに情報を提示する提示部を備える情報処理装置の情報処理方法において、前記入力部により入力された前記ユーザが入力した第１の単語を取得し、前記第１の単語が取得されたとき、前記第１の単語を置き換えるための前記第１の単語を抽象化した第２の単語を提示し、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語を読み出し、前記ユーザに前記提示部で提示し、前記データベースに前記第１の単語が登録されていない場合、前記第１の単語を検索対象とした検索を行い、検索結果として得られたページ内から、ランダムに単語を抽出し、抽出された単語が、前記第１の単語を包含する第３の単語、または第１の単語に包含される第４の単語に分類するための画面を前記データベースの管理者に提示し、前記管理者により前記第３の単語に分類された単語を、前記第１の単語を抽象化した単語として前記第１の単語と関連付けて前記データベースに登録し、前記第４の単語に分類された単語を、前記第４の単語を抽象化した単語が前記第１の単語であるとして、前記第１の単語と関連付けて前記データベースに登録する。
【００２７】
本技術の一側面のプログラムは、ユーザの入力を受け付ける入力部と、前記ユーザに情報を提示する提示部を備える情報処理装置を制御するコンピュータに、前記入力部により入力された前記ユーザが入力した第１の単語を取得し、前記第１の単語が取得されたとき、前記第１の単語を置き換えるための前記第１の単語を抽象化した第２の単語を提示し、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語を読み出し、前記ユーザに前記提示部で提示し、前記データベースに前記第１の単語が登録されていない場合、前記第１の単語を検索対象とした検索を行い、検索結果として得られたページ内から、ランダムに単語を抽出し、抽出された単語が、前記第１の単語を包含する第３の単語、または第１の単語に包含される第４の単語に分類するための画面を前記データベースの管理者に提示し、前記管理者により前記第３の単語に分類された単語を、前記第１の単語を抽象化した単語として前記第１の単語と関連付けて前記データベースに登録し、前記第４の単語に分類された単語を、前記第４の単語を抽象化した単語が前記第１の単語であるとして、前記第１の単語と関連付けて前記データベースに登録する処理を実行させる。
【００２８】
本技術の一側面の情報処理装置、情報処理方法、並びにプログラムにおいては、ユーザが入力した第１の単語が取得されたとき、第１の単語を置き換えるための第２の単語がユーザに提示され、置き換えが促される。
【発明の効果】
【００２９】
本技術の一側面によれば、文意を損なうことなく、プライバシの漏洩を防ぐことが可能となる。
【図面の簡単な説明】
【００３０】
【図１】本技術が適用される情報処理システムの一実施の形態の構成を示す図である。
【図２】入力支援サーバの構成例を示す図である。
【図３】クライアントの構成例を示す図である。
【図４】入力支援について説明するための図である。
【図５】入力支援のタイミングについて説明するための図である。
【図６】入力支援のタイミングについて説明するための図である。
【図７】入力支援のタイミングについて説明するための図である。
【図８】入力支援のタイミングについて説明するための図である。
【図９】入力支援のタイミングについて説明するための図である。
【図１０】クライアントの処理について説明するためのフローチャートである。
【図１１】入力支援サーバの処理について説明するためのフローチャートである。
【図１２】単語辞書データベースについて説明するための図である。
【図１３】単語辞書データベース検索処理１について説明するためのフローチャートである。
【図１４】単語辞書データベースについて説明するための図である。
【図１５】単語辞書データベースについて説明するための図である。
【図１６】単語辞書データベース検索処理２について説明するためのフローチャートである。
【図１７】単語辞書データベース検索処理３について説明するためのフローチャートである。
【図１８】単語辞書データベース検索処理４について説明するためのフローチャートである。
【図１９】更新処理について説明するためのフローチャートである。
【図２０】抽象度算出処理について説明するためのフローチャートである。
【図２１】単語辞書データベースについて説明するための図である。
【図２２】抽象度について説明するための図である。
【図２３】単語辞書データベースについて説明するための図である。
【図２４】単語辞書データベースについて説明するための図である。
【図２５】単語辞書データベースについて説明するための図である。
【図２６】単語辞書データベースについて説明するための図である。
【図２７】単語辞書データベースの作成時に提示される画面の一例である。
【図２８】単語辞書データベースの作成に係わる処理について説明するためのフローチャートである。
【図２９】パーソナルコンピュータの構成を示す図である。
【発明を実施するための形態】
【００３１】
以下に、本技術を実施するための形態（以下、実施の形態という）について説明する。なお、説明は、以下の順序で行う。
１．情報処理システムの構成について
２．情報処理システムを構成する各装置の構成について
３．入力支援に係わる処理について
４．入力支援に係わる処理を行う際に参照されるデータベースの更新について
５．データベースの作成について
【００３２】
［情報処理システムの構成について］
図１は、本技術が適用される情報処理システム１の一実施の形態としての構成例を示す図である。
【００３３】
図１の情報処理システム１は、入力支援サーバ１１、クライアント１２−１乃至１２−Ｎ（Ｎは自然数）、検索サーバ１３、およびインターネット１４を有している。
【００３４】
なお、クライアント１２−１乃至１２−Ｎを個々に区別する必要がない場合、以下単に、クライアント１２と記述する。他の構成要素についても同様とする。
【００３５】
入力支援サーバ１１、クライアント１２、および検索サーバ１３は、インターネット１４を介して接続される。インターネット１４は、種々の有線および／または無線のネットワークと併用または代用可能である。
【００３６】
なお、入力支援サーバ１１とクライアント１２との間の通信路は、SSL（Secure Socket Layer）などの既存の暗号技術を用いて保護されるのが好ましい。
【００３７】
［情報処理システムを構成する各装置の構成について］
図２は、情報処理装置である入力支援サーバ１１の構成例を示すブロック図である。入力支援サーバ１１は、CPU（Central Processing Unit）２１、単語辞書データベース２２、および送受信器２３を有している。
【００３８】
ＣＰＵ２１は、取得部４１、認証部４２、検索部４３、通信部４４、判断部４５、生成部４６、更新部４７、算出部４８、および作成部４９の機能ブロックを有している。なおＣＰＵ２１の各ブロックは、必要に応じて相互に信号、データを授受することが可能とされている。
【００３９】
取得部４１は、各種の情報を取得する。認証部４２は、クライアント１２を認証する。検索部４３は、各種の情報を検索する。通信部４４は、各種の情報を通信する。判断部４５は、各種の情報を判断する。生成部４６は、編集したコンテンツを生成する。更新部４７は、各種の情報を更新する。算出部４８は、抽象度を算出する。作成部４９は、単語辞書データベース２２を作成する。
【００４０】
単語辞書データベース２２は、後述するように、１つの単語に複数の単語が関連付けられたデータから構成されるデータベースである。送受信器２３は、インターネット１４を介して、クライアント１２および検索サーバ１３と各種の情報を送受信する。
【００４１】
［クライアント１２の構成］
図３は、情報処理装置であるクライアント１２の構成例を示すブロック図である。クライアント１２は、CPU（Central Processing Unit）６１、入力装置６２、出力装置６３、および送受信器６４を有している。
【００４２】
ＣＰＵ６１は、取得部８１、通信部８２、判断部８３、および出力部８４の機能ブロックを有している。なおＣＰＵ６１の各ブロックは、必要に応じて相互に信号、データを授受することが可能とされている。
【００４３】
取得部８１は、各種の情報を取得する。通信部８２は、各種の情報を通信する。判断部８３は、各種の情報を判断する。出力部８４は、各種の情報を出力する。
【００４４】
入力装置６２は、カメラ、キーボード、マウスなどのユーザインタフェースにより構成され、所定の情報を入力するときユーザにより操作される。出力装置６３は、例えば、画像や音楽を出力するディスプレイ、スピーカなどにより構成される。送受信器６４は、インターネット１４を介して、入力支援サーバ１１と各種の情報を送受信する。
【００４５】
［入力支援について］
次に、情報処理システム１において実行される入力支援に係わる処理について説明する。入力支援とは、クライアント１２側で入力されたテキストなどのコンテンツに、プライバシに係わるような情報が含まれていたような場合、入力支援サーバ１１により、プライバシに係わるような情報が含まれていることをユーザに知らせ、代替表現の単語などを提示することである。
【００４６】
以下の説明においては、テキストが入力され、そのテキスト（文章）内の単語が、プライバシに係わるような単語であった場合、抽象的な単語に置き換えられる場合を例にあげて説明する。しかしながら、本技術が、テキストのみに適用されるのではなく、他のコンテンツ、例えば、画像などに対しても、そのデータに適した処理を行うことで、適用することができる。
【００４７】
ここで、入力支援について、図４を参照して説明する。ユーザは、クライアント１２の入力装置６２を操作して、図４の文章Ａとして示した文章を入力しているとする。文章Ａは、出力装置６３としてのディスプレイに表示されている。
【００４８】
文章Ａは、“最近出たゲームを買おうと思って、昨日、ソニー”とまで入力された状態である。なお、ソニーは、登録商標であるが、このような単語を、抽象的な単語に置き換えるのが、本技術の１つのポイントとなるため、“ソニー”といった名称を使って説明を続ける。
【００４９】
このような文章Ａが入力されているとき、“ソニー”という単語が入力された時点で、図４に示したように、吹き出し１０１が表示される。吹き出し１０１内には、“プライバシ？”といった文言の下側に、“そのまま”、“メーカー”、“某メーカー”、“電器メーカー”、“会社”、“勤め先”、“勤務先”、“某企業”、“投資先”、“日本会社”、“新規入力”といった単語が表示されている。
【００５０】
また、図４Ａに示したように、吹き出し１０１の吹き出し口は、“ソニー”という処理対象とされている単語の上側に位置するように表示される。なお、吹き出し１０１の吹き出し口は、処理対象の単語の上側に限らず、下側などに表示され、吹き出し１０１自体が、単語の下側に表示されることもある。すなわち、吹き出し１０１の吹き出し口は、処理対象の単語の近傍に表示され、ユーザにその単語の吹き出しであることを容易に認識させることができる表示とされていればよい。
【００５１】
なお、図４を含め、以下の説明においては、吹き出し１０１が表示されるとして説明するが、吹き出しの形状以外の形状で表示されても良いし、吹き出しとしてではなく、プルダウンメニューのようなメニュー形式や、専用の領域が設けられ、その領域内に単語が表示されるなどのなど出も良い。
【００５２】
吹き出し１０１内に表示されている単語は、“ソニー”という単語を、他の単語に置き換えたときの候補となる単語である。また、吹き出し１０１内に表示される単語は、“ソニー”という会社名を特定できないような単語である。例えば、“メーカー”という単語から、一意に“ソニー”と導き出すのは困難である。このように、吹き出し１０１に表示される単語は、置き換え対象となっている単語を一意に特定できないような単語とされる。
【００５３】
このように、入力支援としては、入力された単語を他の抽象的な単語に置き換えるための支援を行う。
【００５４】
図４Ａに示したような吹き出し１０１が表示されたとき、ユーザが“そのまま”という単語を選択すると、図４Ｂに示す文章Ｂで、その時点までに入力されていた文章が確定される。すなわち、文章Ｂは、“ソニー”という単語を他の単語に置き換えることなく、“ソニー”という単語で確定された文章である。
【００５５】
図４Ａに示したような吹き出し１０１が表示されたとき、ユーザが“某メーカー”という単語を選択すると、図４Ｃに示す文章Ｃで、その時点までに入力されていた文章が確定される。すなわち、文章Ｃは、“ソニー”という単語を“某メーカー”という単語に置き換えた文章として確定された文章である。
【００５６】
図４Ａに示したような吹き出し１０１が表示されたとき、ユーザが“新規入力”という単語を選択すると、図４Ｄに示すように、新たな吹き出し１３１が表示される。“新規入力”は、ユーザにより他の単語が入力されるときに選択される項目である。よって、ユーザが他の単語を入力できるような吹き出し１３１が表示される。吹き出し１３１内には、他の単語を入力するための欄が表示され、その欄に、ユーザは、所望の単語を入力できるように構成されている。
【００５７】
図４Ｄに示した例では、吹き出し１３１内の欄にユーザが“某所”との単語を入力した。このような場合、文章Ｂは、“ソニー”という単語を“某所”という単語に置き換えた文章として確定された文章である。
【００５８】
このように、“ソニー”といった、一企業を特定する単語が、ユーザの意図により、“某メーカー”や“某所”といった単語に置き換えることができるような支援が、入力支援である。
【００５９】
なお、図４を参照して説明したように、吹き出し１０１内の“そのまま”という単語は、ユーザが入力した単語をそのまま用いる場合に選択される項目であり、“ソニー”という単語を“そのまま”という単語に置き換えるのではない。また同様に、吹き出し１０１内の“新規入力”という単語は、ユーザが入力した単語や、吹き出し１０１内に表示されている単語を用いるのではない場合に選択される項目であり、“ソニー”という単語を“新規入力”という単語に置き換えるのではない。
【００６０】
“そのまま”、“新規入力”という項目に対し、“メーカー”や“某メーカ−”といった単語は、その単語に置き換える候補として表示されているのであり、選択された場合、その選択された単語に、置き換え対象とされた単語が置き換えられる。
【００６１】
このように、吹き出し１０１には、入力した単語をそのまま用いるときに操作される項目と、その他の単語を入力するときに操作される項目との間に、置き換えの候補となる単語が表示される。また置き換えの候補となる単語は、抽象度が高いと判断された順に並べられている。抽象度については後述する。
【００６２】
また、図４に示した吹き出し１０１や吹き出し１３１の表示のタイミングは、一例であり、入力支援処理に係わる入力支援サーバ１１とクライアント１２の処理により、表示のタイミングは異なる。ここで、表示のタイミングについてさらに説明を加える。
【００６３】
［入力支援を行うタイミングについて］
次に、入力支援を行うタイミングについて説明する。入力支援を行うタイミングとは、図４を再度参照するに、吹き出し１０１を出すタイミングである。この吹き出し１０１を出すタイミングは、後述するクライアント１２の処理において、ステップＳ５乃至Ｓ８の処理が実行されるタイミングであり、入力支援サーバ１１において、ステップＳ３２，Ｓ３３の処理が実行されるタイミングである。特に、クライアント１２において、ステップＳ６において実行されるコンテンツを送信するという処理が、どのタイミングで行われるかについて、以下に説明を加える。
【００６４】
図５は、第１の表示のタイミングを説明するための図である。ユーザは、クライアント１２の入力装置６２を操作して、図５Ａに示した文章Ａとして示した文章を入力しているとする。文章Ａは、出力装置６３としてのディスプレイに表示されている。
【００６５】
図５Ａに示した文章Ａは、“最近出たゲームを買おうと思って、昨日、ソニー”とまで入力された状態である。このような文章Ａが入力され、“ソニー”との単語が、ユーザにより選択されたとき、その選択を受けて、“ソニー”との単語が、入力支援サーバ１１に送信される。このときの選択とは、ユーザが入力支援を受ける単語を直接選択したことを意味する。
【００６６】
このような送信が行われた結果、入力支援サーバ１１において、吹き出し１０１に表示させる単語が、単語辞書データベース２２内が参照されることで検索される。ここでは、単語辞書データベース２２から、“メーカー”、“某メーカー”、“電器メーカー”、“会社”、“勤め先”、“勤務先”、“某企業”、“投資先”、“日本の会社”といった単語列が読み出される。
【００６７】
詳細は後述するが、入力支援サーバ１１においては、読み出された単語列を含む提示情報が、生成される。すなわちこの場合、“そのまま”といった項目と、“新規入力”という項目が単語列に追加され、
“そのまま”、“メーカー”、“某メーカー”、“電器メーカー”、“会社”、“勤め先”、“勤務先”、“某企業”、“投資先”、“日本の会社”、“新規入力”
といった提示情報が生成される。
【００６８】
生成された提示情報は、入力支援サーバ１１からクライアント１２に対して送信される。その結果、クライアント１２においては、入力支援サーバ１１からの提示情報を取得し、ディスプレイなどの出力装置に提示情報が出力される。
【００６９】
図５Ｂは、出力された提示情報を示す。すなわち、図４Ａと同じく、吹き出し１０１が“ソニー”という単語から吹き出され、その吹き出し１０１内に、提示情報が表示されている。このように、ユーザによる直接選択をトリガーとして、置き換え対象の単語（コンテンツ）が送信され、その結果が、受信されることで、ユーザに置き換え対象となる単語が提示される。
【００７０】
次に、図６を参照し、第２の表示のタイミングについて説明する。なお、以下の説明において、図５を参照して説明した第１の表示のタイミングと重複する説明は適宜、簡略して説明する。
【００７１】
図６Ａに示した文章Ａは、“最近出たゲームを買おうと思って、昨日、そにー”とまで入力された状態であり、“そにー”との単語が“ソニー”との単語に変換される前の状態の文章である。通常、文章の入力においては、まず“そにー”と平仮名で入力された後、“ソニー”と変換される。文章Ａは、変換される前の状態である。
【００７２】
なお、必ずしも平仮名で入力されるとは限らないが、平仮名などの文字列が入力された後に、所望の単語に変換されるのが一般的である。換言すれば、文字入力においては、変換という処理が含まれることが多い。
【００７３】
このような変換が指示されると、文章Ａは、“最近出たゲームを買おうと思って、昨日、ソニー”との文章Ｂとされる。このとき、変換されたことをトリガーとし、変換された単語、すなわちこの場合、“ソニー”との単語が、クライアント１２から入力支援サーバ１１に対して送信される。
【００７４】
その結果、入力支援サーバ１１から、提示情報が送信され、クライアント１２で取得され、出力装置６３に出力されることで、ユーザに提示される。すなわち、図６Ｃに示したように、吹き出し１０１に提示情報が提示された状態で、ユーザに置き換え候補となる単語が提示される。この図６Ｃに示した文章Ｃの状態は、図５Ｂに示した文章Ｂの状態と同じである。このように、変換をトリガーとして、置き換え対象となる単語が入力支援サーバ１１側に送信されるようにしても良い。
【００７５】
次に、図７を参照し、第３の表示のタイミングについて説明する。図７Ａに示した文章Ａは、“最近出たゲームを買おうと思って、昨日、そ”とまで入力された状態であり、“そ”との単語に対して、吹き出し１３１が吹き出されている。予測入力、予測変換などと称される機能があり、ユーザが１文字入力すると、その文字が入力されたときに続く文字を予測し、単語を提示する機能がある。
【００７６】
図７Ａに示した例では、“そ”との入力文字に対し、“ソニー”、“そらまめ”、“相対性理論”といった単語が吹き出し１３１内に表示され、ユーザに提示されている。このような吹き出し１３１内に表示されている単語群から、ユーザは、入力しようとしていた単語を選択する。ここでは、“ソニー”との単語が選択されたとする。
【００７７】
このような選択が行われると、文章Ａは、“最近出たゲームを買おうと思って、昨日、ソニー”との文章Ｂとされる。このような予測機能を用い、例えば、吹き出し１３１の形状でユーザに単語群を提示することで、ユーザは、“そ”と入力しただけで、“ソニー”との単語を入力できる。
【００７８】
このような単語群からの選択が行われ、単語が確定されたことをトリガーとし、変換された単語、すなわちこの場合、“ソニー”との単語が、クライアント１２から入力支援サーバ１１に対して送信される。
【００７９】
その結果、入力支援サーバ１１から、提示情報が送信され、クライアント１２で取得され、出力装置６３に出力されることで、ユーザに提示される。すなわち、図７Ｃに示したように、吹き出し１０１に提示情報が提示された状態で、ユーザに置き換え候補となる単語が提示される。この図７Ｃに示した文章Ｃの状態は、図５Ｂに示した文章Ｂの状態と同じである。このように、予測機能により提示された単語群から、単語が選択されたことをトリガーとして、置き換え対象となる単語が入力支援サーバ１１側に送信されるようにしても良い。
【００８０】
ここで、図７Ａに示した吹き出し１３１内に表示される単語と、図７Ｃに示した吹き出し１０１内に表示される単語を比較する。吹き出し１３１内に表示される単語は、少なくとも先頭の文字は、ユーザにより入力された文字であり、その文字から始まる単語である。換言すれば、吹き出し１３１内に表示される単語は、先頭の文字は同一であるという共通点がある。しかしながら、吹き出し１３１内に表示される単語同士に意味的な関わりはないことが多い。
【００８１】
これに対して、吹き出し１０１内に表示される単語は、ユーザにより入力された文字が先頭に来ない単語も提示される。よって、吹き出し１０１内に表示される単語は、先頭の文字は同一であるという共通点はない。しかしながら、吹き出し１０１内に表示される単語同士には意味的な関わりがある。この意味的な関わりは、対象となっている単語を言い換えるのに適した単語であるため、対象となっている単語の意味と同一、類似する意味を有する関わりである。
【００８２】
また、吹き出し１３１で提示する単語と、吹き出し１０１で提示する単語では、提示する意味合いも異なる。吹き出し１３１で提示する単語は、ユーザが入力する文字数を少なくすることで、入力にかかる負担を軽減することを１つの目的としている。
【００８３】
これに対して、吹き出し１０１で提示する単語は、ユーザが入力した単語を、他の単語に置き換えた方が良いと判断される場合、例えばプライバシに係わるかもしれない単語であり、ブログなどで不特定多数に公開するには不適切であると判断され、他の単語に置き換えた方が良いと判断される場合に、ユーザに提示される。また提示される単語は、置き換えに適した単語であり、置き換えの単語を考えたり、入力したりする処理にかかるユーザの負担を軽減することを１つの目的としている。
【００８４】
このように、吹き出し１３１で提示される単語と、吹き出し１０１で提示される単語は、共に、ユーザの入力を支援するという点では同じであるが、その内容や、支援の仕方は異なる。このようなことは、以下の説明においても同様である。
【００８５】
次に、図８を参照し、第４の表示のタイミングについて説明する。図８に示した文章Ａは、“最近出たゲームを買おうと思って、昨日、そ”とまで入力された状態である。この状態は、図７Ａに示した状態と同じである。図７では、吹き出し１３１が表示された後、吹き出し１０１が表示されるとして説明したが、図８では、吹き出し１３１と吹き出し１０１が同時に表示される。
【００８６】
すなわち図８に示した文章Ａの状態は、“そ”との単語に対して、吹き出し１３１が吹き出され、その吹き出し１３１内に表示されている“ソニー”という単語に対して、吹き出し１０１が表示されている。このように、予測変換で提示される単語群に、置き換え対象となる単語が含まれていた場合、その置き換え対象となる単語に、さらに入力支援で提示される単語群が提示されるようにしても良い。また、このような提示が行われる場合、図８に示したように、吹き出しを２段で表示するようにすることができる。
【００８７】
図８に示したように、置き換え対象となる単語を提示する場合、文章Ａにおいて、“そ”との文字が入力され、その入力された“そ”に対して予測変換機能による予測変換が行われ、その予測変換の結果が提示されることをトリガーとして、“ソニー”との単語が、クライアント１２から入力支援サーバ１１に対して送信される。
【００８８】
その結果、入力支援サーバ１１から、提示情報が送信され、クライアント１２で取得され、出力装置６３に出力されることで、ユーザに提示される。すなわち、図８に示したように、吹き出し１３１内の“ソニー”との単語に対して、吹き出し１０１が表示され、その吹き出し１０１内に提示情報が提示された状態で、ユーザに置き換え候補となる単語が提示される。
【００８９】
このように、予測機能による単語群が提示されたことをトリガーとして、置き換え対象となる単語が入力支援サーバ１１側に送信されるようにしても良い。
【００９０】
入力支援サーバ１１に送信される単語であるが、予測機能により提示された単語群の上位に表示されている所定数の単語とされる。この場合、予測機能により単語群が提示されたときに、その単語群から、上位の、例えば３個の単語が選択され、入力支援サーバ１１に送信される。その結果、３個の単語に対して、入力支援サーバ１１により処理が施され、その３個の単語に対して、提示情報が生成され、クライアント１２に送信されてくる。
【００９１】
図８に示した例では、吹き出し１０１が１個表示されている例を示したが、３個の提示情報が取得された場合、それら３個の提示情報がユーザに提示されるため、３個の吹き出し１０１が表示される。３個の吹き出し１０１が表示されるとき、それぞれの吹き出し１０１が重ならないように、１度に表示されるようにしても良い。または、吹き出し１３１内で、カーソル（不図示）が位置している単語の吹き出し１０１が、他の吹き出し１０１よりも上に、他の吹き出し１０１に重畳された状態で表示されるようにしても良い。
【００９２】
このように、吹き出し１３１と吹き出し１０１が同時に表示されるようにした場合、ユーザは、１度の操作で、入力したかった単語を他の単語に置き換えることが可能となる。
【００９３】
次に、図９を参照し、第５の表示のタイミングについて説明する。図９に示した文章Ａは、“最近出たゲームを買おうと思って、昨日、そ”とまで入力された状態である。この状態は、図７Ａに示した状態と同じである。図７では、吹き出し１３１が表示された後、吹き出し１０１が表示されるとして説明したが、図９でも同じく、吹き出し１３１が表示された後、吹き出し１０１が表示されるが、そのタイミングが異なる。
【００９４】
図９Ａに示した例では、“そ”との入力文字に対し、“ソニー”、“そらまめ”、“相対性理論”といった予測による単語が吹き出し１３１内に表示され、ユーザに提示されている。このような吹き出し１３１内に表示されている単語群内の１つの単語上に、カーソル１５１が重ねられる。ここでは、“ソニー”との単語上に、カーソル１５１が重ねられたとする。
【００９５】
このようなカーソル１５１が重ねられたということをトリガーとし、そのカーソル１５１が重ねられている単語、この場合、“ソニー”との単語が、クライアント１２から入力支援サーバ１１に対して送信される。
【００９６】
その結果、入力支援サーバ１１から、提示情報が送信され、クライアント１２で取得され、出力装置６３に出力されることで、ユーザに提示される。この提示は、図９Ｂに示すように、図８と同じように、２段で吹き出しを表示することで行うことができる。このように、予測機能により提示された単語群の所定の単語上に、カーソルが重ねられたことをトリガーとして、置き換え対象となる単語が入力支援サーバ１１側に送信されるようにしても良い。
【００９７】
［入力支援に係わる処理について］
このような入力支援に係わる処理は、クライアント１２と入力支援サーバ１１とで行われる。まず、クライアント１２において行われる処理を、図１０のフローチャートを参照して説明し、入力支援サーバ１１において行われる処理を，図１１のフローチャートを参照して説明する。ここでは、クライアント１２の処理に対応して入力支援サーバ１１による処理が行われるため、図１０と図１１のフローチャートをそれぞれ参照しながら説明を続ける。
【００９８】
なお、ここでは、入力支援に係わる処理は、クライアント１２と入力支援サーバ１１とで行われるとして説明を続けるが、入力支援サーバ１１が行う処理をクライアント１２で行うことも可能であり、クライアント１２のみで、入力支援に係わる処理が行われるように構成することも可能である。
【００９９】
例えば、クライアント１２が、単語辞書データベース２２を有し、単語辞書データベース２２を参照して行う処理を実行できるように構成すれば、クライアント１２のみでも、以下に説明する入力支援に係わる処理を実行することはできる。
【０１００】
図１０のステップＳ１において、クライアント１２の取得部８１は、入力装置６２を介してユーザ情報を取得する。すなわち、認証に必要なＩＤ、パスワード等に代表される、ユーザにより入力された情報が取得される。ステップＳ２において、クライアント１２の通信部８２は、送受信器６４およびインターネット１４を介して、入力支援サーバ１１にユーザ情報を送信する。
【０１０１】
図１１のステップＳ３１において、入力支援サーバ１１は、クライアント認証処理を実行する。入力支援サーバ１１の取得部４１は、インターネット１４および送受信器２３を介して、ユーザ情報を取得する。すなわち図１０のステップＳ２の処理で送信されたユーザ情報が取得される。その取得された情報が用いられ、認証部４２においては、クライアント１２が認証される。
【０１０２】
そのユーザが入力支援サーバ１１に予め登録したユーザであって、入力支援サーバ１１が提供するプライバシ情報保護サービスを利用する権限を有していることが確認される。換言すれば、単語辞書データベース２２を利用する権限を有するユーザ（クライアント１２）であるか否かが確認される。
【０１０３】
入力支援サーバ１１の判断部４５は、認証に成功したかを判断し、認証に成功したと判断した場合、入力支援サーバ１１の通信部４４は、クライアント１２に認証成功を通知する。一方で、認証に成功しなかった、すなわち認証に失敗したと判断された場合、入力支援サーバ１１の通信部４４は、クライアント１２に認証失敗を通知する。
【０１０４】
このような認証処理には、クライアント１２に対応する単語辞書データベース２２が必要に応じ特定される処理が含まれる。“必要に応じ”とは、単語辞書データベース２２が、ユーザ毎に用意されているデータベースであるか否かに依存する。また認証処理自体も、自己のブログなどにアクセスする際などに行われ、そのアクセスの正当性を確認するために行われる場合もあるが、単語辞書データベース２２を特定するという観点での認証であれば、ユーザ毎に用意されているデータベースであるか否かに依存して、認証処理を省略することも可能である。
【０１０５】
このことについて、図１２を参照して説明する。まず、単語辞書データベース２２は、辞書作成者が作成する。この辞書作成者が単語辞書データベース２２を作成する際の処理、および単語辞書データベース２２自体のデータ構造については後述する。
【０１０６】
辞書作成者が作成した単語辞書データベース２２は、ユーザが利用する毎、または所定の間隔毎に更新され、より適切な単語をユーザに提示できるようなデータベースにされる。この更新処理についても、後述する。図１２Ａに示した状態は、単語辞書データベース２２が複数のユーザで共有される場合を示している。複数のユーザで単語辞書データベース２２が共有される場合、単語辞書データベース２２は、ユーザ１やユーザ２といった異なるユーザによる処理結果に依存して更新される。
【０１０７】
単語辞書データベース２２が複数のユーザで共有される場合、ユーザ（クライアント１２）を識別する必要がないため、単語辞書データベース２２を特定するために行う認証処理は必要なく、そのような認証処理を省略することは可能である。
【０１０８】
このような単語辞書データベース２２は、複数のユーザにより更新されることで、より一般的な辞書となる。単語辞書データベース２２の詳細は後述するが、ラベル単語と、そのラベル単語を抽象的な単語に置き換えたときに適する複数の単語が関連付けられたデータベースである。このような単語辞書データベース２２は、所定の単語に対して、一般的に抽象的であると判断される単語のデータベースとすることができる。
【０１０９】
一方、図１２Ｂに示した状態は、図１２Ａに示した状態と同じく、単語辞書データベース２２は辞書作成者により作成されるが、作成された単語辞書データベース２２は、コピーされ（複製が作られ）、単語辞書データベース２２−１と単語辞書データベース２２−２が生成される点が異なる。
【０１１０】
この単語辞書データベース２２−１は、ユーザ１用のデータベースとされ、単語辞書データベース２２−２は、ユーザ２用のデータベースとされる。単語辞書データベース２２−１は、ユーザ１の処理結果に依存して更新され、単語辞書データベース２２−２は、ユーザ２の処理結果に依存して更新される。
【０１１１】
このように、個々のユーザ用に単語辞書データベース２２を用意した場合、アクセスしてきたユーザ（クライアント１２）を識別する必要があるため、認証処理が行われる。
【０１１２】
このような単語辞書データベース２２は、個々のユーザにより更新されることで、個々のユーザに適した辞書となる。このような単語辞書データベース２２は、個々のユーザの嗜好や、置かれている状況などに応じた単語のデータベースとすることができる。
【０１１３】
このように、単語辞書データベース２２を共用するか否かにより、認証処理を行うか否かが設定されるようにしても良い。勿論、単語辞書データベース２２を利用する際には、単語辞書データベース２２が共用のものとされているか否かに係わらず、認証処理を行うという設定にしておくことも可能である。ここでは、認証処理が行われた場合を例にあげた説明をした。
【０１１４】
図１０、図１１に示したフローチャートの処理の説明に戻る。入力支援サーバ１１のクライアント認証処理が終了され、その結果が、クライアント１２側に送信されると、ステップＳ３（図１０）において、クライアント１２の取得部８１は、認証結果を取得する。
【０１１５】
ステップＳ４において、クライアント１２の判断部８３は、認証が成功したかを判断する。ステップＳ４において認証が成功しなかったと判断された場合、すなわち入力支援サーバ１１から認証失敗が通知された場合、処理はステップＳ１に戻り、それ以降の処理が繰り返される。
【０１１６】
ステップＳ４において認証が成功したと判断された場合、すなわち入力支援サーバ１１から認証成功が通知された場合、処理はステップＳ５に進む。ステップＳ５において、クライアント１２の取得部８１は、ユーザが入力したコンテンツを取得する。ステップＳ６において、クライアント１２の通信部８２は、送受信器６４およびインターネット１４を介して、入力支援サーバ１１にコンテンツを送信する。
【０１１７】
このコンテンツを取得し、送信するタイミングについては、図５乃至図９を参照して説明した通りであり、例えば、ユーザが文章を入力しているときであり、単語が入力されたときに、その単語（単語を構成する所定数の文字数）が取得され、送信される。ここでは、コンテンツが取得され、送信されるとして説明を続けるが、コンテンツは文章であり、その文章の途中（書きかけの状態のとき）の単語を構成する数個の文字が、取得され、送信されることを意味する。
【０１１８】
図１１のステップＳ３２において、入力支援サーバ１１の取得部４１は、インターネット１４および送受信器２３を介して、クライアント１２から送信されてきたコンテンツを取得する。すなわち、図１０のステップＳ６の処理により送信されたコンテンツが取得される。
【０１１９】
図１１のステップＳ３３において、入力支援サーバ１１は、単語辞書データベース検索処理を実行する。図１３を参照して、単語辞書データベース検索処理について説明する。
【０１２０】
［単語辞書データベース検索処理１について］
図１３は、単語辞書データベース検索処理１を説明するフローチャートである。単語辞書データベース検索処理は、取得された単語の数などにより異なる処理が行わる。ここでは、まず単語辞書データベース検索処理１について説明を加える。
【０１２１】
図１３の例では、コンテンツとして文章に含まれる単語と一致する単語を単語辞書データベース２２から検索する場合について説明する。
【０１２２】
ステップＳ５１において、検索部４３は、取得された単語をラベル単語に設定する。ステップＳ５２において、ラベル単語を含むデータが単語辞書データベース２２から読み出される。ここで、ラベル単語とデータについて説明するために、単語辞書データベース２２のデータ構造について説明する。
【０１２３】
単語辞書データベース２２は、複数のデータを有する。１つのデータをｄａｔａｉと記述する。ｄａｔａiは、ラベル単語と複数の単語が関連付けられたデータとされている。
ｄａｔａi＝（ラベル単語i，（単語１，単語２，・・・，単語ｍ）
【０１２４】
さらに、ラベル単語に関連付けられている複数の単語のそれぞれには、重みも関連付けられる。ここで、単語をｗ、重みをｒで表すと、ｄａｔａｉは、以下のように表される。また重みの初期値は１であるため、重みとして１を代入すると、以下のように表される。
ｄａｔａｉ＝（ｗｉ０，（ｗｉ１，ｒｉ１），（ｗｉ２，ｒｉ２），・・・，（ｗｉｍ，ｒｉｍ））
＝（ラベル単語ｉ，（単語１,１）,（単語２,１）,・・・, （単語ｍ,１））
【０１２５】
このようなｄａｔａｉが、複数、単語辞書データベース２２に記憶されている。例えば、図１４に示すようにデータが記憶されている。図１４に示した例では、ｎ個のｄａｔａ１乃至ｄａｔａｎが記憶されている。図１４において、例えば、ｄａｔａ１は以下のようなデータ構成とされている。
ｄａｔａ１＝（ｗ１０，（ｗ１１，ｒ１１），（ｗ１２，ｒ１２），・・・，（ｗ１ｍ，ｒ１ｍ））
【０１２６】
ｗ１０は、ｄａｔａ１のラベル単語である。添え字である“１０”のうち、前の“１”は、ｄａｔａ１のデータであることを示し、後ろの“０”は、ラベル単語であることを示す。
【０１２７】
ｗ１１，ｗ１２，・・・,ｗ１ｍは、それぞれｄａｔａ１のラベル単語ｗ１０に関連付けられた単語である。添え字のうち前の数値は、ｄａｔａ１のデータであることを示し、後ろの数値は、抽象度順に並べたときの順位を表す。
【０１２８】
抽象度とは、後述する演算により算出される値であり、ラベル単語を一意に特定できず、かつ意味合いがラベル単語とあまりずれることがなく、仮にラベル単語と置き換えたとしても、文意がおかしくならないような単語である度合いである。
【０１２９】
ｒ１１は、単語ｗ１１の重みであり、ｒ１２は、単語ｗ１２の重みであり、・・・、ｒ１ｍは、単語ｗ１ｍの重みである。添え字は、それぞれ関連付けられている単語と同一とされる。
【０１３０】
他のｄａｔａ２乃至ｄａｔａｎも、同様な構成とされている。図１５に、図１４に示した単語辞書データベース２２におけるデータ、ラベル単語、単語、重みを、それぞれ図示した。データは、ｄａｔａ１，ｄａｔａ２，・・・，ｄａｔａｉ，・・・，ｄａｔａｍである。
【０１３１】
ラベル単語は、ｗ１０，ｗ２０，・・・，ｗｉ０，・・・，ｗｎ０である。単語は、
ｗ１１，ｗ２１，・・・，ｗｉ１，・・・，ｗｎ１, 
ｗ１２，ｗ２２，・・・，ｗｉ２，・・・，ｗｎ２,
ｗ１ｍ１，ｗ２ｍ２，・・・，ｗｉｍｉ，・・・，ｗｎｍｎである。
【０１３２】
重みは、
ｒ１１，ｒ２１，・・・，ｒｉ１，・・・，ｒｎ１,
ｒ１２，ｒ２２，・・・，ｒｉ２，・・・，ｒｎ２,
ｒ１ｍ１，ｒ２ｍ２，・・・，ｒｉｍｉ，・・・，ｒｎｍｎである。
【０１３３】
単語辞書データベース２２は、このように、ラベル単語、単語、重みが関連付けられたデータが、複数記憶されているデータベースである。単語辞書データベース検索処理（図１３）は、このような単語辞書データベース２２内が検索されることで行われる。
【０１３４】
図１３のフローチャートの説明に戻る。ステップＳ５１において、取得された単語がラベル単語に設定され、ステップＳ５２において、設定されたラベル単語を含むデータが、単語辞書データベース２２内が検索されることで読み出される。
【０１３５】
取得された単語が単語Ａである場合、この単語Ａがラベル単語に設定される。この単語Ａをラベル単語としているデータが、単語辞書データベース２２から読み出される。仮に、ラベル単語ｗ１０が、単語Ａであり、図１４に示した単語辞書データベース２２が検索される場合、ｄａｔａ１が読み出される。
【０１３６】
ステップＳ５２において、ラベル単語を含むデータが、単語辞書データベース２２内に存在せず、データが読み出せないときもある。このようなときには、これ以降の処理は行われず、次に単語が取得されるまで待機状態とされる。
【０１３７】
単語辞書データベース２２のラベル単語は、プライバシに係わる単語としておく。ステップＳ５１における処理で取得され、ラベル単語に設定された単語が、プライバシに係わる単語であれば、その単語はラベル単語として、単語辞書データベース２２に存在する。よってこのような場合、ステップＳ５２において、単語辞書データベース２２からデータが読み出される。
【０１３８】
一方で、ステップＳ５１における処理で取得され、ラベル単語に設定された単語が、プライバシに係わる単語でなければ、その単語はラベル単語として、単語辞書データベース２２に存在しない。よってこのような場合、ステップＳ５２において、単語辞書データベース２２からデータは読み出されない。
【０１３９】
このように、単語辞書データベース２２に記憶するラベル単語をプライバシに係わる単語に限定することで、プライバシに係わる単語がラベル単語にされたときのみ、処理を行うことが可能となる。すなわち、単語辞書データベース２２に記憶するラベル単語により、フィルタの機能を実現することが可能となる。
【０１４０】
なお、図１３のフローチャートに処理としては入れていないが、ステップＳ５１とステップＳ５２の間に、“設定されたラベル単語は、単語辞書データベース２２に登録済みか”という判断を行うステップを入れても良い。また、このような判断を行うステップを設けた場合、“設定されたラベル単語は、単語辞書データベース２２に登録済みであると判断されたとき、ステップＳ５２に処理が進められ、設定されたラベル単語は、単語辞書データベース２２に登録済みではないと判断されたとき、その時点で処理が終了されるように構成することが可能である。
【０１４１】
ラベル単語が単語辞書データベース２２内に存在し、データが読み出されると、ステップＳ５３において、提示される情報が生成される。この提示される情報（以下、提示情報と記述する）は、例えば、図４を参照して説明した吹き出し１０１（図４Ａ）内に表示される情報である。図４Ａを参照して説明したように、“そのまま”という項目と、”新規入力“という項目の間に、置き換え単語の候補が表示される。この置き換え単語の候補は、データ内の単語である。
【０１４２】
すなわちこの例の場合、ｄａｔａ１というデータ内の単語である。ｄａｔａ１は、
ｄａｔａ１＝（ｗ１０，（ｗ１１，ｒ１１），（ｗ１２，ｒ１２），・・・，（ｗ１ｍ，ｒ１ｍ））
であるため、単語は、ｗ１１，ｗ１２，・・・，ｗ１ｍである。このｗ１１，ｗ１２，・・・，ｗ１ｍを単語列と表記する。この単語列を、“そのまま”という項目と、“新規入力”という項目で挟んだ並びとされた情報が、提示情報とされる。すなわちこのような場合、提示情報としては、
そのまま,ｗ１１，ｗ１２，・・・，ｗ１ｍ,新規入力
といった並びの情報となる。
【０１４３】
ステップＳ５４において、入力支援サーバ１１の通信部４４は、送受信器２３およびインターネット１４を介して、クライアント１２に提示情報を送信する。
【０１４４】
［単語辞書データベース検索処理２について］
図１３を参照して説明した単語辞書データベース検索処理１は、１つの単語が送信されてきたときに対応する処理として説明した。単語毎に送信が行われるのではなく、例えば、１文章が入力された時点で、形態素解析などがその文章に対して施され、名詞が抽出され、その名詞が送信されてくるようにしても良い。このような場合、複数の単語が送信されてくる可能性がある。
【０１４５】
また、図８を参照して説明したように、予測変換機能により複数の単語がユーザに提示され、その提示された複数の単語が、送信されてくる可能性もある。
【０１４６】
図１６に示したフローチャートに基づいて行われる単語辞書データベース検索処理２は、複数の単語が送信されてきたときの処理である。まず、ステップＳ７１において、複数の単語が取得され、その取得された複数の単語のうちの１つの単語が、ラベル単語に設定される。このラベル単語に対して、ステップＳ７２における処理が実行される。ステップＳ７２において、ラベル単語を含むデータが単語辞書データベース２２から読み出される。
【０１４７】
ステップＳ７３において、取得された全ての単語をラベル単語に設定したか否かが判断される。ステップＳ７３において、取得された全ての単語をラベル単語に設定していないと判断された場合、ステップＳ７１に処理が戻され、他の単語がラベル単語に設定され、その新たにラベル単語に設定されたラベル単語に対して、ステップＳ７２以降の処理が繰り返される。
【０１４８】
一方、ステップＳ７３において、取得された全ての単語をラベル単語に設定したと判断された場合、ステップＳ７４に処理が進められる。ステップＳ７４において、提示情報が生成される。この場合、複数の単語毎に、提示情報が生成される。そして、ステップＳ７５において、提示情報が、クライアント１２に送信される。
【０１４９】
［単語辞書データベース検索処理３について］
次に、図１７を参照し、単語辞書データベース検索処理３について説明する。単語辞書データベース検索処理３も単語辞書データベース検索処理２と同じく、複数の単語が取得されたときの処理である。図１７に示した単語辞書データベース検索処理３と、図１６に示した単語辞書データベース検索処理２は、ステップＳ９４における処理が追加された点が異なり、他の処理は同様である。
【０１５０】
すなわち、ステップＳ９１乃至Ｓ９２の処理は、ステップＳ７１乃至Ｓ７３の処理と同じく、取得された複数の単語毎に、その単語を含むデータが読み出される。ステップＳ９４において、抽出されたデータの単語列と、ユーザの入力単語と対応する単語列に対して、抽象度算出処理が行われる。この抽象度算出処理は、単語辞書データベース２２の更新の際などにも行われるため、更新の処理の説明のところで説明する。
【０１５１】
抽象度が算出されることで、対象とされた単語列の単語の中で、抽象度における順位が決定される。抽象度の高い順に並べ替えられることで、提示情報が生成される（ステップＳ９５）。そして、ステップＳ９６において、生成された提示情報は、クライアント１２に送信される。
【０１５２】
［単語辞書データベース検索処理４について］
次に、図１８を参照し、単語辞書データベース検索処理４について説明する。単語辞書データベース検索処理４も単語辞書データベース検索処理２や単語辞書データベース検索処理３と同じく、複数の単語が取得されたときの処理であるが、取得される単語が単語辞書データベース検索処理２や単語辞書データベース検索処理３とは異なる。
【０１５３】
単語辞書データベース検索処理４では、処理対象とされた単語と、その単語より前の時点で入力された単語が複数取得される。まずステップＳ１１１において、処理対象の単語よりも前に位置する複数の単語が取得される。取得される複数の単語の数は、いくつでも良い。また処理対象の単語よりも前に位置している単語が複数取得されるが、取得される複数の単語には、少なくとも、処理対象の単語の直前の単語が含まれるのが好ましい。
【０１５４】
ステップＳ１１２において、取得された複数の単語のうちの１つの単語が、ラベル単語に設定される。このラベル単語に対して、ステップＳ１１３における処理が実行される。ステップＳ１１３において、ラベル単語を含むデータが単語辞書データベース２２から読み出される。
【０１５５】
ステップＳ１１４において、取得された全ての単語をラベル単語に設定したか否かが判断される。ステップＳ１１４において、取得された全ての単語をラベル単語に設定していないと判断された場合、ステップＳ１１２に処理が戻され、他の単語がラベル単語に設定され、その新たにラベル単語に設定されたラベル単語に対して、ステップＳ１１３以降の処理が繰り返される。
【０１５６】
一方、ステップＳ１１４において、取得された全ての単語をラベル単語に設定したと判断された場合、ステップＳ１１５に処理が進められる。ステップＳ１１５において、抽出されたデータの単語列と、ユーザの入力単語と対応する単語列に対して、抽象度算出処理が行われる。この抽象度算出処理は、後述する。
【０１５７】
抽象度が算出されることで、対象とされた単語列の単語の中で、抽象度における順位が決定される。抽象度の高い順に並べ替えられることで、提示情報が生成される（ステップＳ１１６）。そして、ステップＳ１１７において、生成された提示情報は、クライアント１２に送信される。
【０１５８】
このように、単語辞書データベース２２内の検索に係わる処理は、取得される単語の数などに依存して、処理が異なるようにすることも可能である。これらの処理が、選択的に行われるようにしても良いし、いずれか１つの処理が常に実行されるようにしても良いし、組み合わされて実行されるようにしても良い。
【０１５９】
図１０のフローチャートの説明に戻る。図１０のステップＳ７において、クライアント１２の取得部８１は、入力支援サーバ１１から送信されてきた提示情報を取得する。すなわち図１３のステップＳ５４の処理により送信された提示情報が取得される。
【０１６０】
ステップＳ８において、クライアント１２の出力部８４は、出力装置６３に提示情報を出力する。すなわち、ユーザに対して提示情報が提示される。例えば、図５Ｂに示したように、提示情報は、吹き出し１０１内に表示されることで、ユーザに対して提示される。
【０１６１】
クライアント１２側で行われるステップＳ５乃至Ｓ８の処理と、入力支援サーバ１１側で行われるステップＳ３２、ステップＳ３２（図１３に示したフローチャートの処理）について、図５を再度参照して説明する。
【０１６２】
図５Ａに示した文章Ａは、クライアント１２側において、“最近出たゲームを買おうと思って、昨日、ソニー”とまで入力された状態である。このような文章Ａが入力され、“ソニー”との単語が、ユーザにより選択されたとき、その選択を受けて、“ソニー”との単語が、入力支援サーバ１１に送信される。すなわちこの場合、ステップＳ５（図１０）においては、“ソニー”との単語が選択されたことをトリガーとして、“ソニー”という単語がコンテンツとして取得され、ステップＳ６における処理で、入力支援サーバ１１に対して送信される。
【０１６３】
このような送信が行われた結果、ステップＳ３２において、“ソニー”との単語が入力支援サーバ１１で取得される。そして、この“ソニー”という単語がラベル単語に設定され（図１３のステップＳ５１の処理）、“ソニー”という単語をラベル単語として有するデータが、単語辞書データベース２２から読み出される（図１３のステップＳ５２の処理）。
【０１６４】
図５を参照して説明したような場合、単語辞書データベース２２から、
“メーカー”、“某メーカー”、“電器メーカー”、“会社”、“勤め先”、“勤務先”、“某企業”、“投資先”、“日本の会社”
といった単語列が読み出される。
【０１６５】
このような単語列が読み出されると、この単語列を含む提示情報が、図１３のステップＳ５３の処理で生成される。すなわちこの場合、
“そのまま”、“メーカー”、“某メーカー”、“電器メーカー”、“会社”、“勤め先”、“勤務先”、“某企業”、“投資先”、“日本の会社”、“新規入力”
といった提示情報が生成される。
【０１６６】
生成された提示情報は、図１３のステップＳ５４において、入力支援サーバ１１からクライアント１２に対して送信される。その結果、クライアント１２においては、図１０のステップＳ７の処理として、入力支援サーバ１１からの提示情報を取得し、ステップＳ８の処理として、ディスプレイなどの出力装置に提示情報が出力される。
【０１６７】
出力された提示情報は、図５Ｂに示したような画面でユーザに提示される。すなわち、吹き出し１０１が“ソニー”という単語から吹き出され、その吹き出し１０１内に、提示情報が表示されている。このように、ユーザによる直接選択をトリガーとして、置き換え対象の単語（コンテンツ）が送信され、その結果が、受信されることで、ユーザに置き換え対象となる単語が提示される。
【０１６８】
このような処理は、図６乃至図９を参照して説明した吹き出しの表示のタイミングに係わる処理で、同様に行われるため、ここではその詳細な説明は省略する。すなわち、図６乃至図９を参照した説明において、トリガーとされたときに、例えば、変換が行われたというようなトリガーが発生したときに、クライアント１２から入力支援サーバ１１に単語が送信され、その返答としての提示情報が、入力支援サーバ１１から来るという流れは同じである。
【０１６９】
図１０、図１１に示したフローチャートの説明に戻り、図１０のステップＳ８において、クライアント１２により、提示情報がユーザに提示される。例えば、図５Ｂに示したような吹き出し１０１が表示されることで、提示情報の提示が行われる。
【０１７０】
ユーザは、吹き出し１０１内に表示されている“そのまま”という項目、単語列内の１つの単語、または“新規入力”という項目のいずれか１つを選択する。ステップＳ９においては、このような選択結果を反映するための処理が実行される。
【０１７１】
すなわち、図４を参照して説明したように、“そのまま”という項目が選択された場合、図４Ｂに示したように、置き換え対象とされていた単語（図４の例では“ソニー”）は、そのまま残された文章とされる。なお仮に選択が行われなかった場合も、“そのまま”という項目が選択されたとして処理は進められる。
【０１７２】
また、単語列内の１つの単語が選択された場合、図４Ｃに示したように、置き換え対象とされていた単語が、選択された単語に置き換えられた文章に変更される。また、“新規入力”という項目が選択された場合、図４Ｄに示すように、ユーザが所望の単語を入力できる欄が設けられた吹き出し１３１が表示され、その欄に入力された単語に、置き換え対象とされていた単語が置き換えられた文章に変更される。
【０１７３】
このような処理が、ステップＳ９において行われると、その処理結果（選択結果）が、ステップＳ１０において、クライアント１２から入力支援サーバ１１に対して送信される。選択情報には、“そのまま”、“単語列内の単語”、“新規入力”のどれが選択されたかの情報が含まれる。また、“単語列内の単語”が選択されたときには、その選択された単語（単語を一意に識別できる識別子などでも良い）も含まれる。また、“新規入力”が選択されたときには、ユーザにより入力された単語も含まれる。
【０１７４】
このような処理がクライアント１２において、入力支援に関わる処理として実行される。
【０１７５】
一方で、入力支援サーバ１１においては、ステップＳ３４（図１１）において、クライアント１２側で、提示情報が提示された結果、どのような選択がなされたかの選択情報が取得される。選択情報が取得されると、更新部４７（図２）により更新処理が、ステップＳ３５において開始される。
【０１７６】
［更新処理について］
図１９を参照し、ステップＳ３５において実行される更新処理について説明する。更新処理は、単語辞書データベース２２内のデータを、選択情報を用いて更新する処理である。
【０１７７】
なおここでは、クライアント１２側からの選択情報が受信されたときに行われるとしたが、選択情報が受信される毎に更新処理が実行されるのではなく、所定の回数、選択情報が受信されたときに、それまでの選択情報をまとめて反映する更新処理が行われるようにしても良い。
【０１７８】
また、更新対象とされる単語辞書データベース２２は、単語辞書データベース２２が複数のユーザで共用されるデータベースとされていたときには、その単語辞書データベース２２とされる。単語辞書データベース２２が、ユーザ毎のデータベースとされていたときには、選択情報を送ってきたクライアント１２のユーザに割り当てられている単語辞書データベース２２が、更新対象とされる。
【０１７９】
ステップＳ１５１において、選択情報が示す選択内容は、“そのまま”という項目が選択されたことを示しているか否かが判断される。ステップＳ１５１において、選択内容は、“そのまま”という項目が選択されたことを示していると判断された場合、更新処理は終了される。
【０１８０】
一方、ステップＳ１５１において、選択内容は、“そのまま”という項目が選択されたことを示していないと判断された場合、ステップＳ１５２に処理が進められる。ステップＳ１５２において、選択内容は、“新規入力”という項目が選択されたことを示しているか否かが判断される。ステップＳ１５２において、選択内容は、“新規入力”という項目が選択されたことを示していると判断された場合、ステップＳ１５３に処理が進められる。
【０１８１】
ステップＳ１５３において、新規入力としてユーザにより入力された単語は、ユーザ側に提示情報として提供した単語列内に含まれていなかったか否かが判断される。例えば、吹き出し１０１（図４など）に表示されていた単語であったが、ユーザは見落としてしまい、“新規入力”という項目を選択し、単語を入力した場合が想定される。
【０１８２】
また、吹き出し１０１に表示しきれなかったために、ユーザに提示されなかった単語列の単語があり、結果としてユーザに提示されなかった単語がある可能性もある。その結果、ユーザは、“新規入力”という項目を選択し、単語を入力した場合が想定される。このような状況を考慮し、ステップＳ１５３において、新規入力としてユーザにより入力された単語は、ユーザ側に提示情報として提供した単語列内に含まれていなかったか否かが判断される。
【０１８３】
ステップＳ１５３において、新規入力としてユーザにより入力された単語は、ユーザ側に提示情報として提供した単語列内に含まれていなかったと判断された場合、ステップＳ１５４に処理が進められる。この場合、ユーザが入力した単語は、単語列としてユーザ側には提示されていなかった単語である。よって、単語列の１つとして、ユーザが入力した単語が、ステップＳ１５４において単語辞書データベース２２に追加登録される。
【０１８４】
提示情報を提示する元となったラベル単語に対応付けられ、ユーザにより新規に入力された単語が、単語列として登録される。データ（ｄａｔａ）は、図１５などを参照して説明したように、１つのラベル単語に複数の単語が関連付けられたデータとされている。そして、関連付けられている単語は、抽象度順に並べられて管理されている。
【０１８５】
新たに単語列に追加される単語の抽象度は、この時点ではまだ算出されていない状態なので、単語列内のどの位置に入れるべきか決定できない状態である。よってここでは、単語列のランダムな位置に、新たな単語が追加されるとして説明を続ける。ランダムな位置ではなく、中央、最後といった所定の位置に追加されるようにすることも可能である。
【０１８６】
また、新たな単語がどのような位置に追加されるとしても、後述するように、抽象度が再計算され、単語列の並びを更新する処理が行われるため、適切な並びに変更することが可能である。よって、ステップＳ１５４における追加位置は、どのような位置であっても良いため、ここではランダムな位置に追加されるとして説明を続ける。
【０１８７】
１つのラベル単語に関連付けられている単語列の単語のそれぞれには、重みが関連付けられている。新たに追加される単語の重みは、“１”として追加登録される。このように、ユーザにより新たに入力された単語は、単語列内の１つの単語として追加される。
【０１８８】
一方、ステップＳ１５３において、新規入力としてユーザにより入力された単語は、ユーザ側に提示情報として提供した単語列内に含まれていたと判断された場合、ステップＳ１５５に処理が進められる。この場合、上記したように、ユーザに提示はされたがユーザが見落として新規入力を行ったなどの状況が考えられる。
【０１８９】
このような場合には、ステップＳ１５５において、入力された単語に該当する単語列内の単語の重みを１だけ加算することで、単語辞書データベース２２の更新が行われる。
【０１９０】
一方、ステップＳ１５２において、選択内容は、“新規入力”という項目が選択されたことを示していないと判断された場合も、ステップＳ１５５に処理が進められる。この場合、選択内容は、“そのまま”ではなく、“新規入力”でもないため、提示情報に含まれていた単語列内の単語が選択されたことになる。
【０１９１】
このような場合、その選択された単語の重みが１だけ加算された値に更新されることで、単語辞書データベース２２の更新が行われる。
【０１９２】
ステップＳ１５４において、新たな単語が単語列に追加された場合、またはステップＳ１５５において、新たな単語が単語列に追加された場合、ステップＳ１５６に処理が進められる。ステップＳ１５６において、抽象度算出処理が実行される。
【０１９３】
すなわち、単語辞書データベース２２内のデータに変更があった場合、抽象度算出処理が実行される。このような単語辞書データベース２２の更新時に行われる抽象度算出処理を、適宜、更新時抽象度算出処理と記述する。
【０１９４】
更新時抽象度算出処理は、新たな単語が単語列に追加された場合や、新たな単語が単語列に追加された場合に、必ず行われる処理としても良いが、このような状況が、所定の回数発生した時点で行われるようにしても良い。例えば、“新規入力”が選択された回数が、予め設定されている閾値を超えた時点で行われるように構成することも可能である。
【０１９５】
抽象度算出処理は、更新時のみではなく、上記した単語辞書データベース検索処理３や単語辞書データベース検索処理４などにおいて、複数の単語列の単語を抽象度順に並べるときなどにも行われる。このような単語辞書データベース検索処理に行われる抽象度算出処理を、適宜、検索時抽象度算出処理と記述する。
【０１９６】
また、抽象度算出処理は、単語辞書データベース２２が作成された時点、換言すれば、上記したような入力支援に係わる処理が開始されるより前の時点でも行われる。このような，入力支援開始前に行われる抽象度算出処理を、適宜、事前抽象度算出処理と記述する。
【０１９７】
なお本実施の形態によれば、事前抽象度算出処理が行われていなくても、ユーザの入力支援を行う毎に、更新時抽象度算出処理が実行され、単語辞書データベース２２が更新されるため、時間経過とともに、単語辞書データベース２２を、適切なデータベースとすることが可能である。
【０１９８】
［抽象度算出処理について］
事前抽象度算出処理、更新時抽象度算出処理、および検索時抽象度算出処理は、処理対象とされるデータが異なる以外は同様に行われる。すなわち、事前抽象度算出処理は、単語辞書データベース２２内の全てのデータが対象とされるのに対し、更新時抽象度算出処理と検索時抽象度算出処理は、処理対象とされたデータのみが対象とされる。このように処理対象とされる範囲が異なるだけで、基本的な処理は同じであるため、事前抽象度算出処理、更新時抽象度算出処理、および検索時抽象度算出処理を、抽象度算出処理として、以下にまとめて説明を加える。
【０１９９】
図２０は、抽象度算出処理について説明するためのフローチャートである。抽象度は、入力支援サーバ１１の算出部４８により算出される。ステップＳ２０１において、処理対象とする単語が、単語列から抽出される。
【０２００】
ｄａｔａ１＝（ｗ１０，（ｗ１１，ｒ１１），（ｗ１２，ｒ１２），・・・，（ｗ１ｍ，ｒ１ｍ））
例えば、ｄａｔａ１は、このようなデータであるが、この中の単語列（ｗ１１，ｗ１２，・・・,ｗ１ｍ）から、処理対象とされる単語、例えば、単語ｗ１１が抽出される。
【０２０１】
ステップＳ２０２において、検索対対象とする単語列が設定される。例えば、上記したｄａｔａ１の単語列が、検索対象に設定される。ステップＳ２０３において、その検索対象として設定された単語列内に、処理対象とする単語が存在しているか否かが判断される。
【０２０２】
例えば、処理対象とされている単語が、単語ｗ１１であり、検索対象とされた単語列が、ｄａｔａ１の単語列（ｗ１１，ｗ１２，・・・,ｗ１ｍ）であった場合、ステップＳ２０３においては、検索対象として設定された単語列内に、処理対象とする単語が存在していると判断される。このように存在していると判断された場合、ステップＳ２０４に処理が進められ、総数が更新される。
【０２０３】
総数とは、単語辞書データベース２２に登録されている単語列内に、処理対象とされている単語が含まれる単語列は何個存在しているかを表す数値である。
【０２０４】
ステップＳ２０４において、総数が更新された場合、または、ステップＳ２０３において、設定した単語列に、処理対象とした単語は含まれていなかったと判断された場合、ステップＳ２０５に処理が進められる。ステップＳ２０５において、全ての単語列が検索対象とされたか否かが判断される。
【０２０５】
ステップＳ２０５において、全ての単語列を検索対象としていないと判断された場合、ステップＳ２０２に処理が戻され、それ以降の処理が繰り返される。例えば、ｄａｔａ２の単語列やｄａｔａ３の単語列などが順次、検索対象とされ、処理対象とされている単語が含まれているか否かが判断される。
【０２０６】
このような処理が繰り返されることで、上記したように、単語辞書データベース２２に登録されている単語列内の単語内に、処理対象とされている単語が含まれていた個数、すなわち総数が求められる。このような処理は、所定の単語を含むｄａｔａと含まないｄａｔａを分類する処理であり、ラベル単語に関する二値分類の処理とみなせる。
【０２０７】
このようにして、１つの処理対象とされた単語の総数が算出されると、ステップＳ２０５において、全ての単語列が検索対象とされたと判断され、処理は、ステップＳ２０６に進められる。ステップＳ２０６において、所定の演算式に求められた総数などが代入され、抽象度が算出される。
【０２０８】
例えば、次式（１）により抽象度が求められる。
【数１】
0005994366.tif 000002
【０２０９】
式（１）において、Ｉijは、抽象度を表す。図２１に示すように、式（１）におけるnは、全データ数を表す。ｎijは、単語列内に単語ｗijを含むデータ数であり、総数に該当する。rjjは、単語ｗijの重みである。
【０２１０】
このような式（１）により抽象度が算出される。単語列内の全ての単語に関して、このような処理が施されることで、単語列内の全ての単語の抽象度が算出される。その後、抽象度の降順に並べられ、その並びが、ｄａｔａ内の単語列の並びとされる。
【０２１１】
式（１）に基づき抽象度が算出される場合、算出された値が１に近いほど、抽象度が高いことを意味する。よって、１に近い単語ほど、並び順の上位になるように並び替えが行われる。重みは、ユーザの使用頻度を反映している。
【０２１２】
よって、重みの大きい単語ほど、ユーザに頻繁に使用されていることを表しており、そのようなユーザに頻繁に使用される単語ほど、式（１）において算出される抽象度の値は１に近づくように設定されている。
【０２１３】
なお、ここでは式（１）により抽象度が算出されるとして説明を続けるが、次式（２）を変数とし、図２２に示すような単調増加関数であれば、どのような関数でも良い。
【数２】
0005994366.tif 000003
【０２１４】
具体的な単語辞書データベース２２の一例を挙げ、抽象度算出処理について説明する。図２３は、具体的な単語辞書データベース２２の一例である。図２２に示した単語辞書データベース２２は、ｄａｔａ１、ｄａｔａ２、ｄａｔａ３の３個のデータを含む。よってこの場合、全データ数は、“３”となり、ｎ＝３となる。
【０２１５】
ｄａｔａ１のラベル単語ｗ１０は、“ソニー”である。ｄａｔａ１の単語列のうち、単語ｗ１１は、“総合電機メーカー”であり、この単語ｗ１１に関連付けられている重みｒ１１は、“２”である。同じく、ｄａｔａ１の単語列のうち、単語ｗ１２は“Ｓｏｎｙ”（登録商標）であり、この単語ｗ１２に関連付けられている重みｒ１２は、“１”である。同じく、ｄａｔａ１の単語列のうち、単語ｗ１３は、“メーカー”であり、この単語ｗ１３に関連付けられている重みｒ１３は、“１”である。
【０２１６】
同じくｄａｔａ２のラベル単語ｗ２０は、“アップル”（登録商標）である。ｄａｔａ２の単語列のうち、単語ｗ２１は、“りんご”であり、この単語ｗ２１に関連付けられている重みｒ２１は、“１”である。同じく、ｄａｔａ２の単語列のうち、単語ｗ２２は“会社”あり、この単語ｗ２２に関連付けられている重みｒ２２は、“１”である。同じく、ｄａｔａ２の単語列のうち、単語ｗ２３は、“メーカー”であり、この単語ｗ２３に関連付けられている重みｒ２３は、“１”である。
【０２１７】
同じくｄａｔａ３のラベル単語ｗ３０は、“パナソニック”（登録商標）である。ｄａｔａ３の単語列のうち、単語ｗ３１は、“総合電機メーカー”であり、この単語ｗ３１に関連付けられている重みｒ３１は、“１”である。同じく、ｄａｔａ３の単語列のうち、単語ｗ３２は“メーカー”であり、この単語ｗ３２に関連付けられている重みｒ３２は、“１”である。同じく、ｄａｔａ３の単語列のうち、単語ｗ３３は、“日本の会社”であり、この単語ｗ３３に関連付けられている重みｒ３３は、“１”である。
【０２１８】
このような単語辞書データベース２２に対して、抽象度算出処理が実行されるとする。ステップＳ２０１において、処理対象とする単語が、単語列から抽出される。この抽出される単語を、ここでは単語ｗ１１とする。単語ｗ１１は、“総合電機メーカー”である。
【０２１９】
図２４において、この抽出される単語ｗ１１をまるで囲み、単語ｗ１１に対応する“総合電機メーカー”をまるで囲んで図示した。ステップＳ２０２において、検索対象とする単語列が設定されるが、ここではまず、ｄａｔａ１の単語列が設定されるとする。ｄａｔａ１には、“総合電機メーカー”との単語ｗ１１が含まれるため、ステップＳ２０３においては、ＹＥＳと判断され、ステップＳ２０４において総数が更新される。この場合、総数は１となる。
【０２２０】
ステップＳ２０５において、まだｄａｔａ２とｄａｔａ３の単語列が、検索対象とされていないため、ＮＯと判断され、ステップＳ２０２に処理が戻される。ステップＳ２０２において、ｄａｔａ２の単語列が検索対象の単語列に設定される。ｄａｔａ２の単語列内には、“総合電機メーカー”との単語ｗ１１は含まれていないため、ステップＳ２０３においては、ＮＯと判断され、ステップＳ２０５に処理が進められる。この場合、総数は更新されないため、１のままである。
【０２２１】
ステップＳ２０５において、まだｄａｔａ３の単語列が、検索対象とされていないため、ＮＯと判断され、ステップＳ２０２に処理が戻される。ステップＳ２０２において、ｄａｔａ３の単語列が検索対象の単語列に設定される。
【０２２２】
ｄａｔａ３の単語列内には、“総合電機メーカー”との単語ｗ１１と同じ“総合電機メーカー”との単語が、単語ｗ３１として含まれているため、ステップＳ２０３においては、ＹＥＳと判断される。図２４において、単語ｗ３１と、この単語ｗ３１に対応する“総合電機メーカー”との単語を、共に四角で囲んだ。ステップＳ２０４において総数が更新される。この場合、総数は２に更新される。
【０２２３】
ステップＳ２０５において、全ての単語列が検索対象とされたと判断されるので、処理はステップＳ２０６に進められ、抽象度が、式（１）に基づいて算出される。この場合、式（１）における抽象度Ｉｉｊは、抽象度Ｉ１１である。ｎｉｊは、ｎ１１となり、総数が２なので、ｎ１１＝２となる。
【０２２４】
単語ｗ１１の重みｒ１１は、“２”であるため、式（１）におけるｒｉｊは、ｒ１１となり、ｒ１１＝２となる。式（１）におけるｎは、データ数であるが、図２４に示した例では、ｄａｔａ１乃至ｄａｔａ３の３個のデータが存在するため、ｎ＝３となる。これらの値を式（１）に代入すると、以下のようになる。
Ｉ１１＝（２＋２−１）／（３＋２―１）＝３／４
【０２２５】
単語ｗ１１の抽象度Ｉ１１は、３／４となる。
【０２２６】
他の例を図２５に示す。図２５に示した例では、単語ｗ１３の“メーカー”という単語が処理対象の単語とされている。この処理対象とされている単語ｗ１３と、この単語ｗ１３に対応する“メーカー”という単語をまるで囲んで図示してある。
【０２２７】
“メーカー”との単語は、ｄａｔａ２の単語ｗ２３と、ｄａｔａ３の単語ｗ３２にそれぞれ登録されている。よって、この場合、単語辞書データベース２２に“メーカー”との単語は３個登録されていることになるため、ｎ１３＝３となる。
【０２２８】
単語ｗ３２の抽象度Ｉ３２は、以下のような値が代入され、算出される。
Ｉ３２＝（３＋１−１）／（３＋１−１）＝１
【０２２９】
このようにして、単語辞書データベース２２内の全ての単語列内の単語毎に抽象度を算出した場合の算出結果を以下に列記する。
Ｉ１１＝３／４    Ｉ１２＝１／３    Ｉ１３＝１
Ｉ２３＝１／３    Ｉ２２＝１／３    Ｉ２３＝１
Ｉ３１＝２／３    Ｉ３２＝１        Ｉ３３＝１／３
【０２３０】
このような抽象度に基づき、各データ内の単語列内の単語の並び替えが実行される。まず、ｄａｔａ１の単語列内の単語ｗ１１，ｗ１２，ｗ１３について考える。単語ｗ１１の抽象度Ｉ１１は“３／４”、単語ｗ１２の抽象度Ｉ１１は“１／３”、単語ｗ１３の抽象度Ｉ１３は“１”である。抽象度を降順に並べると、１，３／４，１／３となる。この抽象度順に、単語を並べると、
単語ｗ１３、単語ｗ１１、単語ｗ１２
の順になる。これを単語そのものに置き換えると、
“メーカー”、“総合電機メーカー”、“Ｓｏｎｙ”
の順になる。
【０２３１】
このような並び替えをｄａｔａ２，ｄａｔａ３に対して行った例を、図２６に示す。ｄａｔａ１は、上記したように、抽象度に基づき並び替えが行われた結果、“メーカー”、“総合電機メーカー”、“Ｓｏｎｙ”の順に更新される。
【０２３２】
同様に、ｄａｔａ２は、“メーカー”、“りんご”、“会社“の順に更新され、ｄａｔａ３は、“メーカー”、“総合電機メーカー”、“日本の会社“の順に更新される。抽象度が同じ値の場合、どちらが上位にくるかは問題とならず、ランダムに並べて良い。このように、抽象度順に並び替えられることで、単語辞書データベース２２内のデータが更新される。
【０２３３】
なおここでは、式（１）に基づき抽象度が算出されるとしたため、抽象度が高いのは１に近い値を有する単語であるとし、降順に並べられるとして説明をした。しかしながら、他の式に基づき抽象度が算出されるような場合、この限りではない。
【０２３４】
例えば、抽象度の昇順に並べられることでより抽象度が高い単語が上位にくるような演算式が用いられた場合、抽象度の昇順に並べられることで、抽象度が高い単語順に並べられる。このような他の演算式を用いた場合であっても、本技術の適用範囲内である。
【０２３５】
［単語辞書データベース２２作成について］
このように単語辞書データベース２２は更新されるが、大本となる単語辞書データベース２２は、以下に説明するように作成することができる。
【０２３６】
単語辞書データベース２２は、辞書作成者が作成する。図２７は、辞書作成者が、単語辞書データベース２２を作成する際に提供される画面の一例である。図２７に示した画面３０１には、３つの領域が設けられている。画面３０１の上側部分に設けられた領域３３１は、“抽出単語を包含する”単語が位置する領域とされている。
【０２３７】
画面３０１の中央部分の領域３３２は、未分類の単語が位置する領域とされている。画面３０１の下側部分の領域３３３は、“抽出単語に包含される“単語が位置する領域とされている。辞書作成者は、領域３３２に位置している未分類の単語から、単語辞書データベース２２に追加する単語を選択する。例えば、“ソニー”という単語が選択されたとする。選択された単語は、他の単語と区別がつくような表示とされる。
【０２３８】
この場合、“ソニー”という単語は抽出単語となる。よって、この“ソニー”という単語を包含する単語が、領域３３１に移動され、“ソニー”という単語に包含される単語が、領域３３３に移動される。
【０２３９】
例えば、領域３３２の未分類領域に表示されている“総合電機メーカー”は、“ソニー”という単語を包含すると、辞書作成者が考えた場合、“総合電機メーカー”との単語を、領域３３２から領域３３１に移動する。図２７中、矢印は、移動を示す。
【０２４０】
領域３３１には、既に“会社”という単語も表示されている。すなわちこの場合、“ソニー”という単語は、“会社”という単語に包含されると考えられた結果、辞書作成者により領域３３１に移動された単語である。
【０２４１】
このように、“ソニー”という単語が抽出単語として処理されているとき、抽出単語を包含する単語が移動されてくる領域３３１に“総合電機メーカー”と“会社”という単語が位置していた場合、以下のようなデータが作成される。
ｄａｔａ＝（ソニー，（総合電機メーカー，１），（会社，１））
【０２４２】
すなわち、抽出単語とされた“ソニー”という単語をラベル単語とし、“総合電機メーカー”と“会社”という単語を単語列とするｄａｔａが作成される。
【０２４３】
また、例えば、領域３３２の未分類領域に表示されている“カメラ”は、“ソニー”という単語に包含されると、辞書作成者が考えた場合、“カメラ”との単語を、領域３３２から領域３３３に移動する。
【０２４４】
このように、“ソニー”という単語が抽出単語として処理されているとき、抽出単語に包含される単語が移動されてくる領域３３３に“カメラ”という単語が位置していた場合、以下のようなデータが作成される。
ｄａｔａ＝（カメラ，（ソニー，１））
【０２４５】
すなわち、“カメラ”という単語をラベル単語とし、抽出単語とされた“ソニー”という単語を単語列とするｄａｔａが作成される。
【０２４６】
このように、辞書作成者は、未分類の単語が表示される領域３３２内の単語を領域３３１や領域３３３に移動するだけで、新たなデータを作成し、単語辞書データベース２２に追加することができる。換言すれば、辞書作成者は、抽出単語を包含する単語はどれかという質問と、抽出単語に包含される単語はどれかという質問に答えるだけで、単語辞書データベース２２内のデータを作成することができる。
【０２４７】
このような作業が繰り返されることで、単語辞書データベース２２が作成される。
【０２４８】
このような単語辞書データベース２２に作成にかかる辞書作成者の手間を軽減させるために実行される、単語辞書データベース２２を作成する際の処理について、図２８のフローチャートを参照して説明する。
【０２４９】
辞書作成者は、ステップＳ３０１において、処理対象とする単語を入力する。辞書作成者により入力された単語は、作成部４９（図２）に供給される。作成部４９は、ステップＳ３２１において辞書作成者により入力された入力単語を取得し、ステップＳ３２２において、その入力単語をラベル単語に設定する。すなわち辞書作成者は、ラベル単語を入力し、作成部４９は、ラベル単語に関連する単語の検索を開始する。
【０２５０】
作成部４９は、ステップＳ３２３において、設定したラベル単語を単語辞書データベース２２に供給する。単語辞書データベース２２は、ステップＳ３４１において、ラベル単語を取得し、ステップＳ３４２において、そのラベル単語に対応する単語列があるか否かを検索する。なおここでは、単語辞書データベース２２が、入力単語の供給を受け、検索を行うというように記載するが、作成部４９が、単語辞書データベース２２内を検索するように構成することも可能である。
【０２５１】
ラベル単語に対応する単語列がある場合、換言すれば、既に単語辞書データベース２２内に、処理対象とされているラベル単語に関するデータが登録されていると判断された場合、そのデータ内から単語列が読み出される。読み出されるとき、全ての単語列が読み出されても良いが、所定数の単語が読み出されるようにしても良い。
【０２５２】
この読み出しはランダムに行われるとする。例えば、単語列の上位の所定数の単語を読み出したり、下位の所定数の単語を読み出したりすることも考えられるが、ここでは、ランダムに読み出しが行われるとして説明を続ける。ステップＳ３４２においては、ラベル単語に対応する単語列内から、所定数の単語がランダムに選択される。
【０２５３】
また、ステップＳ３４２においては、ラベル単語に対応する単語列がないと判断された場合に対する処理も行われる。すなわち、ラベル単語に対応する単語列がない場合には、そのラベル単語が選択される。
【０２５４】
ステップＳ３４２における処理で、選択された単語（以下、選択単語と記述する）が、ステップＳ３４３において、単語辞書データベース２２から作成部４９に供給される。作成部４９は、ステップＳ３２４において、選択単語を取得すると、ステップＳ３２５において、その取得した選択単語を、検索サーバ１３に対してインターネット１４を介して送信する。
【０２５５】
検索サーバ１３は、ステップＳ３６１において、選択単語を取得し、その選択単語を検索対象の単語とした検索を行う。その検索結果が、ステップＳ３６３において、検索サーバ１３から作成部４９に送信される。検索サーバ１３からの検索結果は、例えば、選択単語に関連するホームページの情報である。
【０２５６】
作成部４９は、ステップＳ３２７において、上位のページから単語をランダムに抽出する。検索サーバ１３からの検索結果は、選択単語を含むページ、選択単語の説明文があるページなど、選択単語に何らかの関連性があるページである。そのようなページ内から、ランダムに単語が抽出される。
【０２５７】
このことにより、選択単語に関連性がある単語が抽出される可能性が高い。また選択単語自体が、ラベル単語、またはラベル単語に関連付けられている単語であるため、ランダムに抽出された単語も、ラベル単語に関連がある可能性が高い単語となる。
【０２５８】
ステップＳ３２７において、作成部４９より、ランダムに抽出された単語は、ステップＳ３２８において、辞書作成者側に供給される。辞書作成者は、ステップＳ３０２において、ランダムに抽出された単語の供給を受ける。この供給は、例えば、図２７に示した画面３０１のような画面を提示することで行われる。
【０２５９】
例えば、画面３０１の領域３３２の中央部分に、辞書作成者が入力した単語、すなわちラベル単語が表示される。領域３３２内のラベル単語の周りに、ランダムに抽出された単語が表示される。図２７においては、ラベル単語が“ソニー”であり、ランダムに抽出された単語が、“総合電機メーカー”、“日立”（登録商標）、“魚”、“小田急”（登録商標）、“カメラ”である。
【０２６０】
このように、未分類の単語が表示される領域３３２に、所定のページからランダムに抽出された単語が表示される。領域３３２に表示される所定のページからランダムに抽出された単語は、上記したように、ラベル単語に関連性が高い単語である可能性が高い。そのような単語を辞書作成者に提供することで、辞書作成者自体が、ラベル単語に関連性が高い単語、換言すれば、領域３３２に表示させる単語を探し出すといった手間を省くことができる。
【０２６１】
辞書作成者は、図２７を参照して説明したように、領域３３２に表示されている単語を、“抽出単語を包含する”単語と、“抽出単語に包含される”単語とに分類する。その分類結果（判定結果）が、ステップＳ３０３において辞書作成者側から、作成部４９に対して供給される。作成部４９は、ステップＳ３３０において、単語辞書データベース２２内のデータの更新を行う。
【０２６２】
例えば、既に単語辞書データベース２２内に登録されているラベル単語が選択単語として処理された結果である場合、その登録されているラベル単語に新たな単語が追加されることで更新が行われる。また、例えば、入力単語が選択単語として処理された結果である場合、入力単語をラベル単語とした新たなデータが追加されることで更新が行われる。
【０２６３】
この更新のパターとしては、以下のパターンがある。
(ア)  包含されるとされた抽出単語をラベル単語とし、入力単語を単語列の要素として、更新を行う。
(イ)  包含されるとされた新追加単語をラベル単語とし、入力単語を単語列の要素として、更新を行う。
(ウ)  包含するとされた抽出単語を単語列の要素とし、入力単語をラベル単語として、更新を行う。
(エ)  包含するとされた新追加単語を単語列の要素とし、入力単語をラベル単語として、更新を行う。
【０２６４】
なお、領域３３２に表示されている単語のうち、分類されない抽出単語は、破棄される。また、分類されなかった抽出単語を、新たな入力単語として処理が開始されるようにしても良い。
【０２６５】
また、辞書作成者が、分類の結果、まだデータが足りないと感じたときには、例えば、作成部４９によるステップＳ３２７の処理が再度行われ、上位ページから単語がランダムに抽出され、辞書作成者側に新たな抽出単語が提供されるようにしても良い。このような処理が繰り返される事で、辞書作成者が満足するデータベースが構築される。
【０２６６】
図２８のフローチャートを参照して説明したような処理が行われることで、辞書作成者が、単語辞書データベース２２を作成する際の手間を軽減させることが可能となる。
【０２６７】
図２８を参照した説明においては、検索サーバ１３による検索が行われ、その検索結果が用いられる場合を例にあげて説明した。検索サーバ１３により検索ではなく、例えば、類義語辞書などのデータベースに対する検索により、検索結果が得られるようにしても良い。または、辞書作成者が、予めランダムに用意した単語群から、ランダムに抽出されるような処理とすることも可能である。
【０２６８】
また、検索サーバ１３による検索結果を用いる場合、以下のような処理とすることも可能である。入力単語をキーワードとして、検索サーバ１３によりインターネット１４を介した検索がかけられ、その結果得られた複数のページのうち、選択単語の使用頻度が最も高いページから、ランダムに単語が所定数だけ抽出される。この際、選択単語は抽出されないようにする。このように、選択単語の使用頻度が最も高いページから、ランダムに単語が所定数だけ抽出されるような処理にすることも可能である。
【０２６９】
なお、本実施の形態において、以下の単語は特殊単語として、次のような形式で反応して置き換えをユーザに促すようにしても良い。
メールアドレス：@domainを辞書に登録しておく。
郵便番号：3桁数字+ハイフン+4桁数字とする。
地名：地名辞書による。
URL：httpやwww，辞書に登録しておく。
電話番号：番号とハイフンの組み合わせ。桁数等は規格による。
名前：人名辞書による。
【０２７０】
これらの単語は、個人のプライバシに大きく係わる可能性が高いため、できるだけ取りこぼし無く、ユーザ側に、単語の置き換えを促すことができるようにすることが好ましい。よって、このような単語を特殊単語として、他の単語とは異なる扱いとすることで、取りこぼし無く、単語の置き換えをユーザに促すことが可能となる。
【０２７１】
［効果について］
本技術を適用することで、以下のような効果がある。まず、既存の多義語・類語辞書をプライバシ保護のための単語辞書データベース２２に代用できるようになる。入力単語に対して降順でより抽象化された単語を提示することができるようになる。事前に抽象度などを計算しておき、単語列内の単語の並びを適正化しておくことで、ユーザ入力から提示までの時間を短くすることが可能となる。
【０２７２】
既存にある入力支援系、例えば、予測機能による入力支援系と整合させることができるため、新たに全体を設計する必要がなく、導入にかかる時間、コスト、処理負担などを低減させることが可能である。
【０２７３】
ユーザの入力単語に対して動的に置き換え候補単語の候補が表示されることで、文章作成と同時並行でプライバシ保護の処理を行うことができる。置き換え候補単語の候補の表示を通して、ユーザにプライバシ問題を意識させることができる。
【０２７４】
またプライバシの問題がある場合、ユーザは候補を選択するだけで、抽象度の高い単語に置き換えを行うことができ、プライバシに係わる単語を、他の単語に置き換えることができ、プライバシの保護ができる。置き換え候補単語は、置き換え単語を含意するので作成中の文意を損なわない置き換えを行うことができる。
【０２７５】
ユーザの利用頻度が増すほど、単語辞書データベース２２の精度が向上する。単語辞書データベース２２内を個々のユーザ毎に設けることも可能であり、個々のユーザ毎に設けた場合、各ユーザの振る舞いに応じてカスタマイズされた単語辞書データベース２２をユーザに提供することが可能となる。その結果、よりユーザの文意に沿いやすい単語辞書データベース２２を提供することが可能になる。
【０２７６】
ユーザの使用による辞書の更新によって、単語辞書データベース２２の精度が向上する。この単語辞書データベース２２を、複数のユーザで共有して用いられるデータベースとすることができ、そのようにした場合、利用するユーザが増加すれば、それに比例して単語辞書データベース２２の精度がより向上する。
【０２７７】
辞書制作者は、単語辞書データベース２２の作成を支援する辞書作成支援系が作成した質問の単語をより分けるだけで単語辞書データベース２２を作成することができる。このことにより、単語辞書データベース２２の作成効率を上げることができる。
【０２７８】
インターネットから単語を抽出してくるので、単語辞書データベース２２の内容を拡充できる。また、インターネットとは独立した単語辞書データベース２２を作成することもできる。
【０２７９】
メールアドレスなど形式的に決定している項目に関して取りこぼしを防ぐことができる。
【０２８０】
なお、上述した実施の形態においては、プライバシに係わる単語が、抽象的な単語に置き換えられる例を挙げて説明した。プライバシに係わる単語は、主に名詞であることが多いため、上記した処理は、名詞に限定して行われるようにしても良い。
【０２８１】
例えば、図２７や図２８を参照して説明した単語辞書データベース２２の作成においては、名詞を対象とすることで、処理すべき単語の数を減らすことが可能となる。また、提示する際も、名詞に吹き出し１０１（図４など）を出すと限定することも可能であり、名詞が入力されたときをトリガーとして、入力支援処理が行われるように構成することも可能である。
【０２８２】
また、本実施の形態においては、ライバシに係わる単語を、抽象的な単語に置き換えといったように、意味的には関連性のある単語同士であっても、単語としては異なる単語である。このことを利用し、例えば、難解な言葉を平易な言葉に置き換えを促すような場合にも本実施の形態を適用できる。
【０２８３】
例えば、“掛止”といった単語が入力されたとき、“平易な言葉にしますか?”といったメッセージと共に、“掛けるのに必要な機能をもっている”といった言葉を提示するときにも、本実施の形態を適用することができる。さらに、この例のように、単語の置き換え候補として、単語を提示するのみでなく、文、記号、他言語での表現など、単語以外を提示する場合にも、本実施の形態を適用することができる。
【０２８４】
［パーソナルコンピュータの構成］
図２９は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータのハードウェアの構成例を示すブロック図である。パーソナルコンピュータにおいて、CPU１００１，ROM（Read Only Memory）１００２，RAM（Random Access Memory）１００３は、バス１００４により相互に接続されている。
【０２８５】
バス１００４には、さらに、入出力インタフェース１００５が接続されている。入出力インタフェース１００５には、入力部１００６、出力部１００７、記憶部１００８、通信部１００９、およびドライブ１０１０が接続されている。
【０２８６】
入力部１００６は、キーボード、マウス、マイクロフォンなどよりなる。出力部１００７は、ディスプレイ、スピーカなどよりなる。記憶部１００８は、ハードディスクや不揮発性のメモリなどよりなる。
【０２８７】
通信部１００９は、ネットワークインタフェースなどよりなる。ドライブ１０１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１０１１を駆動する。
【０２８８】
以上のように構成されるパーソナルコンピュータにおいては、CPU１００１が、例えば、記憶部１００８に記憶されているプログラムを、入出力インタフェース１００５及びバス１００４を介して、RAM１００３にロードして実行することにより、各種の処理が行われる。
【０２８９】
CPU１００１が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア１５３１に記録して提供される。
【０２９０】
なお、パッケージメディアとしては、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc-Read Only Memory），DVD（Digital Versatile Disc）等）、光磁気ディスク、もしくは半導体メモリなどが用いられる。
【０２９１】
また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０２９２】
パーソナルコンピュータにおいては、プログラムは、リムーバブルメディア１０１１をドライブ１０１０に装着することにより、入出力インタフェース１００５を介して、記憶部１００８にインストールすることができる。
【０２９３】
また、プログラムは、有線または無線の伝送媒体を介して、通信部１００９で受信し、記憶部１００８にインストールすることができる。その他、プログラムは、ROM１００２や記憶部１００８に、あらかじめインストールしておくことができる。
【０２９４】
なお、パーソナルコンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われる処理であっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【０２９５】
本明細書において、システムの用語は、複数の装置、手段などより構成される全体的な装置を意味するものとする。
【０２９６】
本技術の実施の形態は、上述した実施形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。また本技術の実施の形態は、一部の機能を他の装置が有していてもよい。
【０２９７】
なお、本技術は以下のような構成も取ることができる。
【０２９８】
（１）
ユーザが入力した第１の単語を取得する取得部と、
前記取得部により前記第１の単語が取得されたとき、前記第１の単語を置き換えるための第２の単語を提示する提示部と
を備える情報処理装置。
（２）
前記第２の単語は、前記第１の単語を抽象化した単語である
前記（１）に記載の情報処理装置。
（３）
前記第１の単語を置き換えずに用いるときに操作される第１の項目と、前記第１の単語および前記第２の単語と異なる第３の単語を用いるときに操作される第２の項目との間に、前記第２の単語が表示され、前記ユーザに提示される
前記（１）または前記（２）のいずれかに記載の情報処理装置。
（４）
前記第１の項目、前記第２の単語、および前記第２の項目は、吹き出し内に表示され、
前記吹き出しの吹き出し口は、前記第１の単語の近傍に位置する
前記（３）に記載の情報処理装置。
（５）
前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースに、前記第１の単語が登録されているとき、前記第２の単語が読み出され、前記ユーザに提示される
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（６）
前記第１の単語に関する前記第２の単語の提示が、前記ユーザにより指示されたとき、前記第２の単語を提示する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（７）
文字列が入力され、前記文字列が前記第１の単語に変換されたとき、前記第２の単語を提示する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（８）
入力された文字から、入力される単語を予測して提示した単語群から、前記第１の単語が選択されたとき、前記第２の単語を提示する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（９）
入力された文字から、入力される単語を予測し、予測した単語に前記第１の単語が含まれる場合、予測した単語群内の前記第１の単語に、前記第２の単語を関連付けた表示で前記第２の単語を提示する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（１０）
文字が入力され、前記文字から入力される単語を予測し、予測した単語群を提示し、提示された単語群から、前記第１の単語上にカーソルが位置したとき、前記第２の単語を提示する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（１１）
前記第２の単語が選択された場合、または前記第３の単語が入力された場合、前記第１の単語に、複数の前記第２の単語が関連付けられたデータベースを更新する更新部をさらに備え、
前記更新部は、
前記第２の単語が選択された場合、前記第２の単語の使用頻度を表す重みを更新し、
前記第３の単語が入力された場合、前記第２の単語として、前記第３の単語を追加する
前記（５）に記載の情報処理装置。
（１２）
所定の演算式により求められる値の降順または昇順に、前記第２の単語を並べた状態で、前記第１の単語に関連付け、前記データベースで管理する
前記（５）または前記（１１）のいずれかに記載の情報処理装置。
（１３）
前記値は、抽象的な単語である度合いを表す値である
前記（１２）に記載の情報処理装置。
（１４）
前記第１の単語となる第４の単語を検索対象とした検索を行い、
検索結果として得られたページ内から、ランダムに単語を抽出し、
抽出された単語が、前記第４の単語を包含するか否か、または第４の単語が包含されるか否かにより分類し、
分類の結果を前記データベースに追加することで、前記データベースを更新、作成する
前記（５）に記載の情報処理装置。
（１５）
ユーザの入力を受け付ける入力部と、前記ユーザに情報を提示する提示部を備える情報処理装置の情報処理方法において、
前記入力部により入力された前記ユーザが入力した第１の単語を取得し、
前記第１の単語が取得されたとき、前記第１の単語を置き換えるための第２の単語を前記提示部で提示する
ステップを含む情報処理方法。
（１６）
ユーザの入力を受け付ける入力部と、前記ユーザに情報を提示する提示部を備える情報処理装置を制御するコンピュータに、
前記入力部により入力された前記ユーザが入力した第１の単語を取得し、
前記第１の単語が取得されたとき、前記第１の単語を置き換えるための第２の単語を前記提示部で提示する
ステップを含む処理を実行させるコンピュータ読み取り可能なプログラム。
【符号の説明】
【０２９９】
１  情報処理システム，  １１  入力支援サーバ，  １２  クライアント，  １３  検索サーバ，  １４  インターネット，  ４１  取得部，  ４２  認証部，  ４３  検索部，  ４４  通信部，  ４５  判定部，  ４６  生成部，  ４７  更新部，  ４８  算出部，  ４９  作成部，  ８１  取得部，  ８２  通信部，  ８３  判定部，  ８４  出力部
【図１】
0005994366.tif 000004
【図２】
0005994366.tif 000005
【図３】
0005994366.tif 000006
【図４】
0005994366.tif 000007
【図５】
0005994366.tif 000008
【図６】
0005994366.tif 000009
【図７】
0005994366.tif 000010
【図８】
0005994366.tif 000011
【図９】
0005994366.tif 000012
【図１０】
0005994366.tif 000013
【図１１】
0005994366.tif 000014
【図１２】
0005994366.tif 000015
【図１３】
0005994366.tif 000016
【図１４】
0005994366.tif 000017
【図１５】
0005994366.tif 000018
【図１６】
0005994366.tif 000019
【図１７】
0005994366.tif 000020
【図１８】
0005994366.tif 000021
【図１９】
0005994366.tif 000022
【図２０】
0005994366.tif 000023
【図２１】
0005994366.tif 000024
【図２２】
0005994366.tif 000025
【図２３】
0005994366.tif 000026
【図２４】
0005994366.tif 000027
【図２５】
0005994366.tif 000028
【図２６】
0005994366.tif 000029
【図２７】
0005994366.tif 000030
【図２８】
0005994366.tif 000031
【図２９】
0005994366.tif 000032