添付図面を参照しながら本発明の実施形態を説明する。可能な場合には、同一の部分には同一の符号を付して、重複する説明を省略する。
図1は、本実施形態の対話システム100の機能を示すブロック図である。この対話システム100は、ユーザにより入力された文章に対して対話応答するシステムである。本実施形態における対話システム100は、FAQシステムとして機能し、ユーザにより入力された文章に基づいて、対話処理(検索結果の提示およびそれに対する指示)をしながらユーザが希望する質問文およびその回答を提示する。
図1に示されるとおり、対話システム100は、文章取得部101、キー取得部102、候補取得部103、拡張部104、絞込部105、ドメイン取得部106、質問文DB107、キーDB108、関係性DB109、検索部110、提示部111、更新部112および履歴DB113を含んで構成されている。なお、各DBは、対話システム100が有してもよいし、DBサーバなど別のサーバが保持してもよい。
文章取得部101は、ユーザ端末からネットワークを介して送信された文章を取得する部分である。ユーザ端末においては、ユーザがキーボードなどを操作することにより文章を入力する。本実施形態では、文章取得部101は、文章として、テキスト情報を取得する。なお、対話システム100にキーボード等を備え、ユーザが直接文章を入力することとしてもよい。
キー取得部102は、取得された入力文章を形態素解析など所定の自然言語処理を行うことにより、単語単位に文章を分割し、分割された一または複数の単語から、キーDB108に登録されているキーと一致するキーを、一または複数の取得キーとして取得する部分である。キーDB108には、あらかじめ質問文を形態素解析などをして得られた検索キーが記述されている。
候補取得部103は、入力された文章から取得キーとして扱われなかった特徴的な単語をキー候補ワードとして取得する。すなわち、候補取得部103は、キー取得部102により形態素解析して得られた一または複数の単語のうち、キーDB108に登録されていないキーをキー候補ワードとして取得する。
拡張部104は、キー候補ワードに基づいて、複数の拡張候補を取得する部分である。例えば、拡張部104は、キー候補ワードのゆらぎ、同義語、類義語などに基づいて、複数の拡張候補を取得する。拡張部104は、予め単語ごとのゆらぎ、同義語、類義語を記憶しており、これを利用して複数の拡張候補を取得することができる。
絞込部105は、複数の拡張候補から、一の拡張キーを決定する。本実施形態では、絞込部105は、質問文DB107、キーDB108、関係性DB109および履歴DB113の少なくとも一つを参照して、複数の拡張候補から、入力文章の目的に則した拡張キーを決定する。複数の拡張候補から一の拡張キーに絞り込む詳細処理については、後述する。
ドメイン取得部106は、キーDB108を参照して、取得キーのドメインを取得し、取得したドメインに対応する他のキー(取得キー以外)を取得する部分である。キーDB108には、キーごとにドメインが、あらかじめ定義づけられている。
検索部110は、取得キーと、拡張キーとに基づいて、質問文DB107を参照して、質問文および必要に応じてその回答を検索する。
提示部111は、検索した質問文および必要に応じてその回答をユーザに提示して、その可否を受け付ける部分である。提示部111は、ユーザ端末に対してその質問文等を送信することにより、ユーザに提示する。提示部111は、質問文等を表示することでユーザに提示してもよい。
更新部112は、提示部111が受け付けた質問文に対するユーザの可否に基づいて、キー候補ワードと拡張候補との関係性を、関係性DB109に登録または更新する部分である。すなわち、更新部112は、入力文章に含まれるキー候補ワードから、拡張候補の一つ(拡張キー)に入れ替わって検索されたことを、キー候補ワードと拡張候補との入れ替わり回数を計数し、その入れ替わり回数を関係性DB109に登録または更新する。
質問文DB107は、質問文、検索キー、質問文に対する回答を対応付けて記憶するデータベースである。図2(a)は、その具体例を示す図である。この図においては、複数の検索キーが、質問文に対応付けられている。検索部110は、先に取得した、取得キーおよび拡張キーと、それぞれ一致する検索キーに対応する質問文を検索する。なお、質問文DB107は、さらに質問文に対するドメイン(カテゴリ)を対応付けてもよい(図2(b)参照)し、また質問文に対応付けられている回答にドメインを対応付けてもよい。質問文DB107に記憶されている検索キーは、事前に質問文を形態素解析することにより得られた単語である。
キーDB108は、キー(単語)とドメインとを対応付けて記憶するデータベースである。図2(c)は、その具体例を示す図である。本実施形態においては、ドメインとはカテゴリを意味するが、その他の意味を含んでもよい。このキーDB108は、キーとドメインとの関連を示している。一のキーに複数のドメインが紐付いていてもよい。キーDB108に記憶されているキーは、質問文DB107に記憶されている検索キーと同様に、事前に質問文を形態素解析して得られた単語である。
関係性DB109は、過去検索における、取得キー、キー候補ワード、および拡張キーのそれぞれの関係性を対応付けて記憶するデータベースである。ユーザによる検索ログにしたがって、取得キー、キー候補ワード、および拡張キーを対応付けて記憶する。なお、取得キーは必ずしも必須ではない。
図2(d)および図2(e)は、関係性DB109の具体例を示す図である。図に示されるように、キー候補ワードと、拡張候補(すなわち拡張キー)と、取得キーから質問文に到達に至ったその入れ替わり回数とを対応付けて記憶している。これは、入れ替わりが多いほど、その拡張候補が重要であることを示す。
履歴DB113は、ユーザから入力された入力文章、取得キー、キー候補ワード、拡張候補、到達した質問文を対応付けた履歴情報を記憶する部分である(図2(f)参照)。この履歴DB113は、後述する取得キーと拡張候補との同時出現数を集計するために用いられるため、少なくとも取得キーと、拡張候補との対応付けを記憶していればよい。
つぎに、このように構成された対話システム100における処理を模式的に説明する。図3は、具体的な入力文章を用いて、拡張候補の取得処理を模式的に示した図である。
文章取得部101は、入力文章「メールが送れない」を取得する。そして、キー取得部102は、形態素解析を行うことにより、取得キー「メール」を取得する。一方、候補取得部103は、入力文章から取得キーを除いたキー候補ワード「送れない」を取得する。
拡張部104は、「送れない」に基づいて、そのゆらぎ、同義語、類義語などである「遅れない」「送信不可」「配達不可」を、拡張候補として、取得する。絞込部105は、これら3つの拡張候補から、入力文章の目的に則した拡張キーを決定する。
ところで、図3において、「遅れない」が拡張候補として提示されている。「遅れない」は、日本語では“okurenai”と発音され、「送れない」(日本語では“okurenai”と発音)の同音異義語である。本実施形態においては、このような同音異義語の拡張候補が提示される場合がある。以降の例示においても同様である。
図4は、質問文の提示処理を模式的に示した図である。検索部110は、質問文DB107を参照して、取得キーおよび必要に応じて拡張キーに基づいて、質問文1~3を検索する。提示部111は、検索した質問文1~3(必要に応じてその回答)をユーザに提示する。提示部111は、質問文1~3の全てをユーザに提示してもよいし、そのうちの一つの質問文を提示してもよい。また、ユーザに対して、提示した質問の妥当性を問うてもよい。
図4では、質問文1は、取得キー「メール」に基づいて検索され、質問文2は、取得キー「メール」および拡張キー「送信不可」に基づいて検索され、質問文3は、取得キー「メール」および拡張キー「遅れない」(日本語では“okurenai”と発音される)に基づいて検索されることを示す。なお、拡張キーによって検索された質問文については、その提示の優先度を下げることが考えられる。例えば、表示順位を下にするなどである。
また、拡張候補が複数取得された場合には、拡張キーによる質問文を、他の拡張候補による質問文より上位にするなど、その優先度を提示の優先度を変えてもよい。例えば、図4においては、質問文1は、拡張キーを用いた検索ではないため、最上位に表示されている。質問文2は、拡張キーに基づいた検索であることから、その下に表示されている。質問文3は、拡張キーとはならなかった拡張候補の一つを用いた検索であることから、最下位に表示される。なお、表示順については、これに限らずサービス状況に合わせて設定されるのがよい。
つぎに、複数の拡張候補から拡張キーを決定する処理について詳細に説明する。図5は、質問文の候補に含まれるキーを用いたキー候補決定処理を示す図である。
図5(a)において、入力文章、取得キー、キー候補ワード、および拡張候補については、図3における説明と同じである。図5(b)においては、絞込部105は、入力文章「メールが送れない」に対して、質問文候補「メールが送信不可」「メールのエラー」「メールが動作不良」を取得する。この取得処理は、各質問文候補における検索キー(図2(a)参照)と、取得キーとの一致に基づいて行われる。なお、公知技術の文書分類器により、入力文章の文書ベクトルに基づいて、質問文候補が取得されてもよい。
そして、絞込部105は、取得された質問文候補に対して形態素解析を行い、質問文候補に含まれるキーを、一または複数の関連キーとして取得する。そして、絞込部105は、関連キーと一致する拡張候補を拡張キーとする。
図5においては、絞込部105は、拡張候補「送信不可」が、関連キー「送信不可」と一致するため、拡張候補「送信不可」を拡張キーとして決定する。
つぎに、拡張候補から拡張キーを決定する他の処理について説明する。図6は、取得キーのドメインに基づいた処理を示した図である。図6(a)において、入力文章、取得キー、キー候補ワード、および拡張候補については、図3における説明と同じである。
図6(b)において、絞込部105は、取得キーまたは質問文に対応するドメインを、キーDB108を参照して、取得する。図6においては、絞込部105は、キーDB108を参照して(図2(c)参照)、取得キー「メール」のドメイン「メール関連」を取得する。そして、絞込部105は、さらに、キーDB108を参照して、ドメイン「メール関連」に対応する他のキーを取得する。図6(b)では、絞込部105は、関連キー「送信不可」を取得する。なお、図6(b)においては、一つの取得キーのドメインに基づいた処理を示すが、これに限るものではない。複数の取得キーがあった場合には、それぞれの取得キーのドメインから最も数が多いドメインを入力文章に対するドメインとしてもよい。図5のように絞込部105は、質問文候補を取得し、その質問文候補のドメインを、質問文DB107(図2(b)参照))を参照することにより取得してもよい。
絞込部105は、関連キー「送信不可」と、拡張候補「送信不可」とが一致するため、この拡張候補「送信不可」を拡張キーとして決定する。
取得キーが複数あった場合のドメインの決定処理は、キーDB108における取得キーの一致数に基づいて、最も多くの取得キーに関連付けられているドメインを決定してもよい。また、取得キー自体に優先度を設定しておき、その優先度に従って、ドメインを決定してもよい。
つぎに、拡張候補から拡張キーを決定する別の処理について説明する。図7は、複数の拡張候補のそれぞれを追加して検索した検索結果に基づいた処理を示した図である。図7(a)の入力文章、取得キー、キー候補ワード、および拡張候補については、図3における説明と同じである。
検索部110は、取得キーと、各拡張候補とに基づいて検索処理を行う。図7(b)において、検索部110は、取得キー「メール」と拡張候補「遅れない」(日本語では“okurenai”と発音)とを用いた検索処理、取得キー「メール」と拡張候補「送信不可」とを用いた検索処理、および取得キー「メール」と拡張候補「配達不可」とを用いた検索処理のそれぞれを行う。そして、検索部110は、それぞれの検索を行った結果として、残り質問文数を取得する。残り質問文数は、検索によって得られた質問文候補の件数を示す。
図7(b)においては、残り質問文数として、取得キー「メール」と拡張候補「遅れない(日本語では“okurenai”と発音)」とに基づいた件数として0件、取得キー「メール」と拡張候補「送信不可」とに基づいた件数として5件、および取得キー「メール」と拡張候補「配達不可」とに基づいた件数として1件が取得される。
絞込部105は、この残り質問文数の数が一番多い拡張候補「送信不可」を拡張キーとして決定する。
なお、絞込部105は、残り質問文数に代えて、所定の方法で算出した各拡張候補のスコアに基づいて、拡張候補から拡張キーを決定してもよい。所定の方法としては、文書分類器によるスコアなどがある。例えば、絞込部105は、拡張候補ごとに、1位のスコアを算出する。図7(b)においては、拡張候補「送信不可」に対して、残り質問文数5件が紐付けられている。この5件の質問文候補のそれぞれに対して分類器によるスコアがそれぞれ算出される。
分類器は、拡張候補ごとに、当該拡張候補のそれぞれと入力文章とを用いて検索した各質問文候補と、各拡張候補を入替えながら入力文章と組合せた各対象文字列のそれぞれ、との類似度をスコアとして算出する。すなわち、スコアは、各質問文候補と、入力文章および各拡張候補との類似度に基づいて算出される。そして、各入力文章との間で最も類似度が高い質問文候補のスコアを、1位のスコアとする。絞込部105は、その1位のスコアに基づいて、複数の拡張候補から拡張キーを決定する。
例えば、分類器は、入力文章「メールが送れない」と拡張候補「送信不可」とを用いて検索部110により検索された各質問文候補と、入力文章「メールが送れない」および拡張候補「送信不可」からなる対象文字列と、の類似度をスコアとして算出し、そのうち最も高い類似度を1位のスコアとする。そして、この算出処理を、拡張候補ごとにいくつかおこない、それぞれ算出されたスコアのうち1位のスコアに基づいて、拡張候補から拡張キーが決定される。
図7(b)においては、算出されたスコアの最も高いスコア(1位のスコア)が、拡張候補「送信不可」に対する1位のスコアとなる。それぞれ拡張候補ごとに行うことにより、拡張候補ごとの1位のスコアが算出される。図7においては、拡張候補「遅れない(日本語では“okurenai”と発音)」に対しては、1位のスコアは算出不能となっているが、拡張候補「送信不可」に対しては、1位のスコア0.89、拡張候補「配達不可」に対しては、1位のスコア0.34が算出される。よって、1位のスコア0.89の拡張候補「送信不可」を拡張キーとする。このように、質問文候補リストのランキングを元に拡張候補から拡張キーを決定することができる。
つぎに、拡張候補から拡張キーを決定するさらに別の処理について説明する。図8は、取得キー、キー候補ワード、および拡張候補の、過去の履歴における関係性に基づいた処理を示す図である。入力文章、取得キー、キー候補ワード、および拡張候補については、図3における説明と同じである。
図8においては、過去の履歴における関係性として、以下の4つを例示している。
・取得キーと拡張候補との同時出現件数(関係性1)
・全体における拡張候補(拡張キー)の入れ替わり件数(関係性2)
・取得キーごとに区分したときの拡張候補の入れ替わり件数(関係性3)
・上記関係性1~関係性3を総合的に算出した関連度
関係性1で示される、取得キーと拡張候補(拡張キー)との同時出現件数とは、例えば、履歴DB113における検索履歴において、取得キー「メール」、拡張候補(拡張キー)「遅れない」(日本語では“okurenai”と発音)が同時に出現した件数を示す。図8においては、その件数は1である。履歴DBには、全ユーザの検索履歴として、入力文章、取得キー、キー候補ワード、拡張候補(拡張キー)が記述されており、絞込部105は、履歴DB113を参照して、過去に取得キーと拡張候補(拡張キー)とが同時に出現した件数を取得する。
また、関係性2で示される、拡張候補(拡張キー)の入れ替わり件数とは、キー候補ワードが、文章入力時と質問文到達時(最終的にユーザが質問文として取得したとき)とにおいて、入れ替わった件数を示す。例えば、文章入力時で得たキー候補ワード「送れない」は、拡張候補「送信不可」に入れ替わることで、質問文が取得される場合がある。このように、最終的な質問文に到達した際に、キー候補ワードが、拡張候補(拡張キー)に入れ替わって質問文が得られた頻度を、入れ替わり件数とする。
また、関係性3は、関係性2に、取得キーを考慮したものである。
また、関連度は、関係性1~関係性3の各数値を所定の計算式に従って算出した数値である。例えば、関係性1~関係性3に示される各拡張候補(拡張キー)の数値の合算値を、全体の総計値で除算することにより得られる。関連度の算出方法は、これに限らず種々の方法が考えられる。
入れ替わりのカウント条件としては、対象のキーが1対1の関係となっていることである。すなわち、取得キーと、拡張候補(拡張キー)とが1体1に対応付いていることが必要である。なお、さらに、取得キーとの関係性(係り受け、文章構造等)が同一であることとしてもよい。
更新部112は、入れ替わり条件を満たした場合に、関係性DB109のキー同士の入れ替わり回数を更新する。図3(d)を例にとると、関係性DB109において、キー候補ワード「送れない」と拡張候補「送信不可」とが対応付けられている。更新部112は、その入れ替わり回数を1つ増加させる。また、更新部112は、取得キーを考慮する場合には、取得キー「メール」に対応したキー候補ワード、拡張候補(拡張キー)の入れ替わり回数を1つ増加させてもよい(関係性3)。
なお、上述関係性DB109は、キー単独ではなく、ドメイン単位で集計した情報を記述してもよい。例えば、関係性DB109に、ドメイン欄を設け、ドメイン「メール関連」の範囲において、入れ替わり回数を集計してもよい。
また、関係性1~関係性3について、一のユーザ単位、ユーザの属性単位(年齢、性別など)、全体などで区別して、集計してもよい。
絞込部105は、拡張候補ごとの関係性1~関係性3、および関連度に基づいて、複数の拡張候補から拡張キーを決定する。関係性1~3のうち予め定めた関係性の件数が最も大きい拡張候補を拡張キーとしてもよいし、関連度のみに基づいて拡張キーを決定してもよい。
また、関係性として、上記に代えて、取得キーと各拡張候補とのワード間の距離、キー候補ワードと各拡張候補とのワード間の距離としてもよい。絞込部105は、この距離に基づいて拡張キーを決定してもよい。
つぎに、本実施形態の対話システム100の動作について説明する。図9は、対話システム100の処理を示すフローチャートである。
文章取得部101は、ユーザ操作により入力された入力文章を取得する(S101)。キー取得部102は、入力文章から取得キーを取得する(S102)。候補取得部103は、キー候補ワードを取得する(S103)。拡張部104は、キー候補ワードの拡張候補を取得する(S104)。
絞込部105は、拡張候補から、入力文章の目的に則した一のキーを拡張キーとして決定する(S105)。検索部110は、取得キーおよび拡張キーを用いて質問文の検索を行う(S106)。提示部111は、ユーザに対して検索した質問文(および必要に応じてその回答)を提示する(S107)。なお、必要に応じて、対話システム100は、ユーザに対して検索した質問文の妥当性を問い、ユーザによりその質問文が妥当である旨の指示を受け付けた場合には、その質問文とその回答とを提示する。
更新部112は、質問文およびその回答の検索が終了すると(S108)、関係性DB109の更新を行う(S109)。
つぎに、本実施形態の対話システム100の作用効果について説明する。この対話システム100は、ユーザからの入力文章に基づいて応答内容である質問文候補および必要に応じてその回答を提示するシステムである。文章取得部101は、ユーザ端末から入力文章を取得する。キー取得部102は、入力文章から取得キーを取得する。候補取得部103は、入力文章から、取得キー以外の文字列であるキー候補ワードを取得する。
拡張部104は、キー候補ワードに関連する複数の拡張候補、例えばゆらぎ、同義語、類似語などを取得する。絞込部105は、複数の拡張候補から、入力文章の目的に則した拡張キーを決定する。取得キーおよび拡張キーに基づいて応答内容の検索が行われる。
この構成により、システムがもつ全てのキーワードに拡張することによる目的に合致しない応答内容(質問文等)に導くといった課題を解決することができる。したがって、無駄な対話を繰り返すことを防止し、対話システムの処理負荷を軽減することができる。ユーザ端末が対話システム100とネットワークを介して対話する場合には、そのネットワークのトラフィックを軽減することもできる。
この対話システム100は、検索キーおよび応答内容(質問文およびその回答)を記憶する応答内容記憶部である質問文DB107と、取得キーおよび拡張キーを使って、質問文DB107から応答内容(質問文および回答)を取得する検索部110と、をさらに備える。
この構成により、入力文章から得た取得キーおよび拡張キーを用いた検索を可能にする。
この対話システム100において、絞込部105は、質問文DB107を参照して、複数の拡張候補のうち、質問文(または必要に応じてその回答)に含まれる関連キーに基づいて、複数の拡張候補から、拡張キーを決定する。
この構成により、入力文章の目的に応じた適切な拡張キーを追加することができる。すなわち、応答内容である質問文に含まれているキーは、その入力文章の目的に密接に関連すると考えられる。よって、適切なキーワードの拡張を可能にする。
この対話システム100は、テキスト単語であるキーワードと、ドメインとを記憶するドメイン記憶部であるキーDB108と、キーDB108を参照して、取得キーに基づいてドメインを取得するとともに、当該ドメインに、取得キーとは別に対応付けられているキーワードを、関連キーとして取得するドメイン取得部106と、を備える。絞込部105は、関連キーに基づいて、複数の拡張候補から拡張キーを決定する。
この構成により、単語のカテゴリなどを示すドメインに基づいた拡張キーを決定することができる。したがって、入力文章のドメイン(カテゴリ)に対応した拡張キーを決定することになり、それを用いた検索を可能にする。
この対話システム100において、検索部110により、複数の拡張候補のそれぞれを入替えながら、取得キーとともに検索が行われる。そして、絞込部105は、その検索により得た応答内容に基づいた検索結果数を取得し、その検索結果数に基づいて拡張候補から拡張キーを決定する。
この構成により、検索結果数に基づいた拡張キーを決定することができる。例えば、検索結果数が多い拡張候補は、その入力目的に則したキーワードであると考えられる。
この対話システム100において、絞込部105は、各拡張候補を入れ替えながら当該拡張候補のそれぞれと入力文章とを用いて検索した質問文候補と、各拡張候補を入替えながら入力文章と組合せた各対象文字列のそれぞれとの類似度に基づいて、複数の拡張候補から拡張キーを決定する。
この構成により、いわゆる文書分類器によるスコアに従った拡張キーを決定することができ、入力文章の目的に則した拡張キーを決定することができる。
この対話システム100は、過去に入力された入力文章に基づいて取得された、取得キーと拡張候補とを含む履歴情報を記憶する履歴記憶部としての履歴DB113をさらに備える。絞込部105は、取得キーと、複数の拡張候補それぞれとの履歴情報における同時出現件数に基づいて、複数の拡張候補から拡張キーを決定する。
この構成により、過去の履歴情報の取得キーと拡張候補とに基づいて拡張キーを決定することができる。過去の履歴において、同時に取得キーと、拡張候補とが同時に検索に用いられる(すなわち同時出現数)ことは、相互に関連しているものと考えることができ、検索目的に適した適切な拡張キーであると考えられる。
この対話システム100は、キー候補ワードから拡張候補に入れ替わって、入力文章から質問文に到達した場合に生成される、当該キー候補ワードと拡張候補との関係性を示す関係性情報を記憶する関係性記憶部としての関係性DB109をさらに備える。そして、絞込部105は、関係性情報に基づいて、複数の拡張候補から拡張キーを決定する。
この関係性は、キー候補ワードから拡張候補を経て拡張キーとなったキーワードに基づいて質問文に到達したということは、その関係性は密接であると考えられる。このような関係性を有するキー候補ワードと拡張候補(拡張キー)との検索頻度を集計することで、その密接度合いを計ることができる。したがって、この関係性に基づいて拡張キーを決定することは、入力文章の目的に則した拡張キーとなり、その目的に則した検索を可能にする。
対話システム100において、関係性DB109は、関係性を示す情報として、さらに取得キーを対応付けて記憶する。そして、絞込部105は、取得キーに対応付けられている関係性情報に基づいて、複数の拡張候補から拡張キーを決定する。
この構成により、取得キーとの関係性をみることで、より適切な拡張キーを決定できる。
対話システム100は、複数の応答内容を提示する提示部111をさらに備える。提示部111は、拡張キーを使って得られた質問文については、その提示順位を、他の応答内容より下げる制御を行う。
拡張キーによる検索結果は、推定したものとなることから、その提示順位を下げることが、望ましいと考えられる。
上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知(broadcasting)、通知(notifying)、通信(communicating)、転送(forwarding)、構成(configuring)、再構成(reconfiguring)、割り当て(allocating、mapping)、割り振り(assigning)などがあるが、これらに限られない。たとえば、送信を機能させる機能ブロック(構成部)は、送信部(transmitting unit)や送信機(transmitter)と呼称される。いずれも、上述したとおり、実現方法は特に限定されない。
例えば、本開示の一実施の形態における対話システム100などは、本開示の対話方法の処理を行うコンピュータとして機能してもよい。図10は、本開示の一実施の形態に係る対話システム100のハードウェア構成の一例を示す図である。上述の対話システム100は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。対話システム100のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
対話システム100における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信を制御したり、メモリ1002及びストレージ1003におけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。例えば、上述のキー取得部102,候補取得部103、拡張部104、絞込部105、ドメイン取得部106、検索部110などは、プロセッサ1001によって実現されてもよい。
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ1003及び通信装置1004の少なくとも一方からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、対話システム100のキー取得部102,候補取得部103、拡張部104、絞込部105、ドメイン取得部106、検索部110は、メモリ1002に格納され、プロセッサ1001において動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001によって実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つによって構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本開示の一実施の形態に係る対話方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つによって構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及びストレージ1003の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。
通信装置1004は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。通信装置1004は、例えば周波数分割複信(FDD:Frequency Division Duplex)及び時分割複信(TDD:Time Division Duplex)の少なくとも一方を実現するために、高周波スイッチ、デュプレクサ、フィルタ、周波数シンセサイザなどを含んで構成されてもよい。例えば、上述の文章取得部101,提示部111などは、通信装置1004によって実現されてもよい。文章取得部101,提示部111は、物理的に、または論理的に分離された実装がなされてもよいし、一つのデバイスとして実装がなされてもよい。
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
また、プロセッサ1001、メモリ1002などの各装置は、情報を通信するためのバス1007によって接続される。バス1007は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
また、対話システム100は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つを用いて実装されてもよい。
本開示において説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
なお、本開示において説明した用語及び本開示の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。例えば、チャネル及びシンボルの少なくとも一方は信号(シグナリング)であってもよい。また、信号はメッセージであってもよい。また、コンポーネントキャリア(CC:Component Carrier)は、キャリア周波数、セル、周波数キャリアなどと呼ばれてもよい。
本開示において使用する「システム」及び「ネットワーク」という用語は、互換的に使用される。
本開示においては、「移動局(MS:Mobile Station)」、「ユーザ端末(user terminal)」、「ユーザ装置(UE:User Equipment)」、「端末」などの用語は、互換的に使用され得る。
移動局は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、又はいくつかの他の適切な用語で呼ばれる場合もある。
本開示で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assuming)」、「期待する(expecting)」、「みなす(considering)」などで読み替えられてもよい。
「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は「アクセス」で読み替えられてもよい。本開示で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどを用いて、互いに「接続」又は「結合」されると考えることができる。
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
上記の各装置の構成における「手段」を、「部」、「回路」、「デバイス」等に置き換えてもよい。
本開示において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
本開示において、例えば、英語でのa, an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。