IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社NTTドコモの特許一覧

<>
  • 特許-解析装置 図1
  • 特許-解析装置 図2
  • 特許-解析装置 図3
  • 特許-解析装置 図4
  • 特許-解析装置 図5
  • 特許-解析装置 図6
  • 特許-解析装置 図7
  • 特許-解析装置 図8
  • 特許-解析装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-11
(45)【発行日】2025-03-19
(54)【発明の名称】解析装置
(51)【国際特許分類】
   G06F 16/906 20190101AFI20250312BHJP
【FI】
G06F16/906
【請求項の数】 5
(21)【出願番号】P 2021575661
(86)(22)【出願日】2020-12-25
(86)【国際出願番号】 JP2020048860
(87)【国際公開番号】W WO2021157254
(87)【国際公開日】2021-08-12
【審査請求日】2023-10-30
(31)【優先権主張番号】P 2020018069
(32)【優先日】2020-02-05
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】392026693
【氏名又は名称】株式会社NTTドコモ
(74)【代理人】
【識別番号】100088155
【弁理士】
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100113435
【弁理士】
【氏名又は名称】黒木 義樹
(74)【代理人】
【識別番号】100121980
【弁理士】
【氏名又は名称】沖山 隆
(74)【代理人】
【識別番号】100128107
【弁理士】
【氏名又は名称】深石 賢治
(72)【発明者】
【氏名】浅井 洋樹
(72)【発明者】
【氏名】倉沢 央
(72)【発明者】
【氏名】礒田 佳徳
【審査官】吉田 誠
(56)【参考文献】
【文献】特開2014-134675(JP,A)
【文献】戸田 隆道,チャットボット運用における対話クラスタリング,第87回 言語・音声理解と対話処理研究会資料 (SIG-SLUD-B902),日本,一般社団法人人工知能学会,2019年11月20日,91-92ページ
【文献】福永 隼也,対話における話題の抽出を目的とした発話クラスタリング,言語処理学会第23回年次大会 発表論文集 [online],日本,言語処理学会,2017年03月06日,1022-1025ページ
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 - 16/958
(57)【特許請求の範囲】
【請求項1】
ユーザの入力文に対応した機能を実行可能な端末装置に入力された前記入力文を解析する解析装置であって、
前記入力文とユーザを区別する情報とを紐付けて記憶する記憶部と、
前記記憶部に記憶された前記入力文を対応する前記機能ごとに前記ユーザ単位で抽出する抽出部と、
前記抽出部により抽出された前記入力文が互いに類似する前記入力文によって構成されるユーザ内類似グループを形成するように、前記ユーザ単位で前記入力文を前記機能ごとに前記ユーザ内類似グループに分類する分類部と、
前記ユーザ内類似グループが互いに類似する前記ユーザ内類似グループによって構成されるユーザ間類似グループを形成するように、ユーザ間において互いに類似する前記ユーザ内類似グループを前記機能単位で集約する集約部と、
前記集約部による集約結果を出力する出力部と、を備える、解析装置。
【請求項2】
前記集約部は、前記ユーザ間類似グループを構成する前記ユーザ内類似グループの数を含む情報を前記集約結果として算出する、請求項1に記載の解析装置。
【請求項3】
前記抽出部は、設定された期間において設定された基準よりも多く実行された機能に対応する入力文を抽出する、請求項1又は請求項2に記載の解析装置。
【請求項4】
前記基準は、それぞれの前記機能が実行された日数である、請求項3に記載の解析装置。
【請求項5】
前記記憶部は、ユーザの属性情報を前記入力文と紐付けて記憶しており、
前記集約部は、属性情報の少なくとも一部が一致するユーザ同士の間において互いに類似する前記ユーザ内類似グループを前記機能単位で集約する、請求項1から請求項4のいずれか一項に記載の解析装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の一側面は、解析装置に関する。
【背景技術】
【0002】
従来、ユーザにより入力された自然文による入力文を取得し、入力文に応じた機能を実行する対話システムが知られている。また、このような対話システムにおいて、ユーザによる操作を支援するために、入力文の例をユーザに提示する仕組みが知られている。例えば、特許文献1は、音声による機能実行の利用履歴に基づいて機能を選定する。特許文献1は、選定された機能に紐付けられた入力文の例をユーザに提示する。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2014-134675号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ユーザによって入力される自然文に基づいて機能を実行する対話システムでは、同じ機能を実行するために様々な自然文が用いられ得る。そのため、ユーザに対して入力文の例を提示する場合には、ユーザが利用したいと考える入力文が提示されることが望ましい。しかしながら、上記の対話システムでは、予め機能に紐付けられた入力文が提示されるため、提示される入力文が多くのユーザにとって利用したいと思える例とはなっていない可能性がある。
【0005】
本開示の一側面は、多くのユーザに利用されている入力文を取得できる解析装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一側面に係る解析装置は、ユーザの入力文に対応した機能を実行可能な端末装置に入力された入力文を解析する装置であって、入力文とユーザを区別する情報とを紐付けて記憶する記憶部と、記憶部に記憶された入力文を対応する機能ごとにユーザ単位で抽出する抽出部と、抽出部により抽出された入力文が互いに類似する入力文によって構成されるユーザ内類似グループを形成するように、ユーザ単位で入力文を機能ごとにユーザ内類似グループに分類する分類部と、ユーザ内類似グループが互いに類似するユーザ内類似グループによって構成されるユーザ間類似グループを形成するように、ユーザ間においてユーザ内類似グループを機能単位で集約する集約部と、集約部による集約結果を出力する出力部と、を備える。
【0007】
上記解析装置では、入力文が集約されることによって、互いに類似するユーザ内類似グループによって構成されるユーザ間類似グループが機能ごとに形成される。ユーザ内類似グループはユーザ単位で分類された入力文に基づいて形成されている。すなわち、一のユーザ内類似グループを構成する入力文は、一のユーザによって入力されている。そのため、ユーザ間類似グループを構成するユーザ内類似グループの数は、当該ユーザ間類似グループを構成する入力文を利用するユーザ数である。多くのユーザ内類似グループによって構成されるユーザ間類似グループは、多くのユーザによって利用されている入力文を含むといえる。したがって、集約部による集約結果を用いることで、多くのユーザに利用されている入力文を取得できる。
【発明の効果】
【0008】
本発明の一側面によれば、多くのユーザに利用されている入力文を取得できる解析装置を提供することができる。
【図面の簡単な説明】
【0009】
図1】一例の解析装置を含む解析システムの機能構成を示す図である。
図2】ユーザ端末上でユーザに提示される受付画面の一例を示す図である。
図3】利用履歴の一例を示す図である。
図4】抽出部による抽出結果を模式的に示す図である。
図5】分類部による分類結果を模式的に示す図である。
図6】集約部によるユーザ内類似グループの集約結果を模式的に示す図である。
図7】出力部によって出力される集約結果の一例を示す図である。
図8】解析装置の動作の一例を示すフローチャートである。
図9】解析装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して、本開示の例示的な実施形態について詳細に説明する。なお、図面の説明において同一又は相当要素には同一符号を付し、重複する説明を省略する。
【0011】
図1は、一例に係る解析装置10を含む解析システム1の機能構成を示す図である。解析システム1は、解析装置10と、複数のユーザ端末(端末装置)20と、を備えている。解析装置10は、例えば、ユーザ端末20と通信可能に構成されたサーバ装置である。解析装置10は、1台の装置によって構成されてもよいし、複数台の装置によって構成されてもよい。ユーザ端末20は、例えば、ユーザにより操作されるコンピュータである。一例として、ユーザとユーザ端末20とは一対一で対応している。ユーザ端末20はユーザに所有されるスマートフォンである。ただし、ユーザ端末20の形態は特定の形態に限定されない。ユーザ端末20の他の例としては、タブレット端末、ウェアラブル端末、パーソナルコンピュータ、スマートスピーカ、スマートテレビ、スマート家電等が挙げられる。また、一のユーザ端末20は、複数のユーザによって共有されてもよい。
【0012】
ユーザ端末20は、ユーザに対話システム(バーチャルアシスタント、人工知能アシスタント、デジタルアシスタント、パーソナルアシスタント)を提供する機能を有している。対話システムは、ユーザにより入力された入力文を受け付け、当該入力文から推定されるユーザの意図に応じた機能の実行結果をユーザに提示するシステムである。
【0013】
例えば、「東京駅までの行き方を教えて」という入力文がユーザによって入力された場合、対話システムは、当該入力文の解析結果に基づいて経路検索アプリケーションを起動し、東京駅までの経路をユーザに提示する。ユーザ端末20は、このような対話システムを実行するための公知の機能を有している。例えば、ユーザ端末20は、入力文を受け付ける機能と、入力文を形態素解析等により解析する機能と、入力文の解析結果に応じて当該入力文の内容に対応する機能(例えば、ユーザ端末20にインストールされたアプリケーションの機能)を起動する機能と、当該機能の実行結果をユーザに提示する機能と、を有している。
【0014】
なお、ユーザ端末20は、上述した全ての機能を備えていなくてもよい。例えば、一部の機能(例えば、入力文を解析する機能)は、ユーザ端末20と通信可能に構成された、ユーザ端末20とは異なる第1装置によって実行されてもよい。この場合、例えば、ユーザ端末20は、入力文を第1装置に送信し、第1装置により解析された結果を第1装置から受信すればよい。また、解析結果に応じて特定される機能(入力文に対応する機能)は、必ずしもユーザ端末20上で実行されなくてもよい。解析結果に応じて特定される機能は、ユーザ端末20と通信可能に構成された、ユーザ端末20とは異なる第2装置上で実行されてもよい。この場合、例えば、ユーザ端末20は、第2装置から入力文に対応する機能の実行結果を取得し、当該実行結果をユーザに提示すればよい。なお、第1装置と第2装置とは、同一の装置であってもよいし、互いに異なる装置であってもよい。また、解析装置10が、上述した第1装置及び/又は第2装置の一部又は全部として機能してもよい。
【0015】
図2は、上述した対話システムにおいて、ユーザ端末20を介してユーザに提示される受付画面の一例を示す図である。例えば、ユーザ端末20のディスプレイには、メニュー画面上の複数のアイコンが表示される。受付画面Pは、対話システムに対応するアイコンがユーザのタッチ操作等によって選択されることにより、起動する。図2に示されるように、受付画面Pには、「何かご用ですか?」というシステムメッセージMと共に、入力文の例である例文Eが表示される。図2の例では、「おすすめの情報を教えて」、「メンバーを探したい」、「本を読んで」、及び「電車遅れてる?」の4つの例文Eがユーザに対して提示されている。
【0016】
対話システムが起動している状態で、ユーザは入力文を入力することができる。例えば、ユーザは、受付画面Pの下部に配置されたテキスト入力ウィンドウTにテキストを入力することにより、テキスト形式の入力文を入力してもよい。また、ユーザは、音声受付機能を用いて音声入力を行うことにより、音声データの形式の入力文を入力してもよい。音声受付機能は、テキスト入力ウィンドウTの右側に配置された音声入力アイコンVを選択することにより起動される。この場合、入力文は、音声認識技術によってテキスト形式に変換される。また、ユーザは、受付画面Pに提示された例文Eの中から所望の例文をタッチ操作等により選択することで入力文を入力してもよい。このように、ユーザ端末20における入力文の入力方法は限定されない。
【0017】
図2の受付画面Pは、上記の一連の処理により、「電車遅れてる?」という入力文Sがユーザによってユーザ端末20に入力された状態を示している。すなわち、受付画面Pに提示された例文Eの一つである「電車遅れてる?」がユーザによって利用(採用)された場合を示している。この後、入力文Sが解析され、入力文Sに応じた機能がユーザに提供される。このように、適切な例文Eをユーザに対して提示することにより、対話システムの利用をユーザに促すことができる。
【0018】
対話システムにおいては、ユーザの多くが利用したいと考える例文が提示されることによって、当該対話システムの利用がユーザに効果的に促され得る。そこで、一例の解析システム1は、多くのユーザが利用している例文を抽出する機能を備えている。多くのユーザによって実際に利用されている例文が参照されることによって、対話システムでは、ユーザに利用されやすい例文の提示がなされ得る。以下、このような解析システム1についてさらに説明する。
【0019】
ユーザ端末20は、送信部21と、例文表示部22と、を含んでいる。送信部21は、ユーザによる対話システムの利用履歴を解析装置10に送信する。利用履歴は、入力文に応じた機能を示す情報と、当該機能が実行された時点を示す情報とを含むユーザ毎の履歴情報である。なお、対話システムの利用に際し、ユーザは、自分の生年月日、性別等の属性情報を対話システムに登録してもよい。
【0020】
図3は、解析装置10によって受信された複数のユーザ端末20の利用履歴の一例を示す表である。図3の例では、ユーザIDがそれぞれU1,U2,U3,U4である4人のユーザが所有する各ユーザ端末20における利用履歴が示されている。図3に示される表の1レコード(1行)は、1つの利用履歴に対応している。利用履歴は、1回の対話システムの利用に対応する履歴であってよい。利用履歴は、例えば「ユーザID」、「日時」、「入力文」、「機能」、及び「機能ID」を含んでいる。「ユーザID」は、対話システムを利用したユーザを互いに区別するための情報である。「ユーザID」は、例えばユーザを一意に特定するための識別情報である。「ユーザID」は、例えば、ユーザ端末20に格納されたユーザのアカウント情報等に基づいて特定され得る。「日時」は、入力文に応じた機能が実行された時点を示す情報である。なお、入力文に応じた機能が実行された時点は、特に時間的な厳密性を要求されるものではない。例えば、入力文に応じた機能が実行された時点は、入力文が入力された時点(当該入力文に応じた機能を実行するための処理の開始時点)であってもよいし、当該入力文に応じた機能の実行結果がユーザに提示された時点(上記処理の終了時点)であってもよい。「入力文」は、ユーザにより入力された入力文の内容を示す情報である。一例として、入力文はテキストデータによって構成されている。「機能」は、ユーザにより入力された入力文に対応した機能の名称(例えば、予め登録されたアプリケーション名等)を示す情報である。すなわち、「機能」は、ユーザが入力文を入力した際に対話システムによって実行された機能の名称である。「機能ID」は、この「機能」を一意に特定するための識別情報である。なお、対話システムの利用に際し、ユーザの属性情報が登録されている場合には、利用履歴にユーザの属性情報が含まれてもよい。
【0021】
例文表示部22は、例文をユーザに提示する機能部である。図2に示すように、一例の例文表示部22は、対話システムの起動直後の受付画面P(ユーザからの入力を待ち受ける状態の画面)において、例文Eを表示する。一例では、例文Eは、解析装置10からユーザ端末20へと送信されてもよい。その場合、例文表示部22は、解析装置10から受信した例文Eを表示する。また、例文Eは、解析装置10とは別に設けられた、対話システムを管理する装置からユーザ端末20へと送信されてもよい。また、ユーザの属性情報に対応して、複数種類の例文が用意されていてもよい。例えば、年齢、性別等に応じて異なる例文が用意されている場合、例文表示部22は、ユーザの属性情報を参照して、当該属性情報に合致する例文をユーザに提示してもよい。
【0022】
解析装置10は、受信部11と、利用履歴データベース(利用履歴DB)12と、抽出部13と、分類部15と、集約部16と、出力部17と、を備えている。一例の解析装置10では、同一のユーザによって入力された入力文同士が互いに類似する類似グループを形成するとともに、異なるユーザ間において互いに類似する類似グループ同士が集約される。これにより、異なるユーザによって入力された互いに類似する入力文の集合と、当該集合を構成する類似グループの数(すなわちユーザ数)とが取得され得る。以下、解析装置10について詳細に説明する。
【0023】
受信部11は、各ユーザ端末20から利用履歴(図3参照)を受信する。例えば、受信部11は、各ユーザ端末20から定期的に利用履歴を受信することにより、各ユーザ端末20に蓄積された利用履歴を定期的に収集する。受信部11により受信された利用履歴は、利用履歴DB(記憶部)12に記憶される。利用履歴DB12は、利用履歴を蓄積するデータベースである。受信部11から利用履歴DB12に格納される利用履歴は、ユーザを区別する情報に紐付けられた入力文のデータと、当該入力文に対応する機能とを含む。一例では、各ユーザ端末20から受信された利用履歴がそのままの形式で利用履歴DBに蓄積される。
【0024】
抽出部13は、利用履歴DB12に記憶された入力文をユーザ単位で対応する機能ごとに抽出する。図4は、抽出部による利用履歴の抽出結果を模式的に示している。図4の例では、説明の簡単のために第1のユーザの利用履歴と第2のユーザの利用履歴の抽出結果が示されている。第1のユーザ(ユーザIDはU1)は、対話システムを利用して天気に関連する機能を起動させるために、「今日の天気」、「今日の天気は」、「今日の天気を教えて」、「傘は必要」及び「傘はいりますか」との入力文をユーザ端末に入力し、アラームに関連する機能を起動させるために、「アラーム」及び「アラームをセットして」との入力文をユーザ端末に入力している。第2のユーザ(ユーザIDはU2)は、天気に関連する機能を起動させるために「今日のお天気」及び「今日のお天気を教えてよ」との入力文をユーザ端末に入力し、アラームに関連する機能を起動させるために、「8時に起こして」及び「目覚まし時計」との入力文をユーザ端末20に入力している。図4に示すように、抽出部13は、ユーザ単位で抽出された入力文を機能ごとに纏めている。なお、以下の説明では、ユーザIDがU1であるユーザをユーザU1とし、ユーザIDがU2であるユーザをユーザU2とする場合がある。
【0025】
なお、抽出部13は、利用頻度の高い入力文の例を抽出するために、設定された期間において設定された基準よりも多く実行された機能に対応する入力文のみを抽出してもよい。この場合、抽出の基準は、それぞれの機能が実行された日数であってもよい。例えば、抽出部13は、所定期間(例えば一ヶ月)の間にユーザが所定の日数(例えば5日)以上実行した機能に対応する入力文のみを抽出してもよい。また、抽出の基準は、それぞれの機能が実行された回数であってもよい。例えば、抽出部13は、所定期間(例えば一ヶ月)の間にユーザが所定の回数(例えば10回)以上実行した機能に対応する入力文のみを抽出してもよい。
【0026】
また、抽出部13は、ユーザの属性情報に基づいて、特定の条件を満たすユーザごとに利用履歴を抽出してもよい。例えば、抽出部13は、年齢、性別等を条件としてユーザを複数のカテゴリに分割し、分割されたカテゴリごとに該当するユーザの利用履歴を抽出してもよい。一例では、抽出部13は、20歳台の男性、20歳台の女性、30歳台の男性、30歳台の女性、・・・のように、ユーザを属性によって分割し、分割された属性ごとに利用履歴を抽出し得る。
【0027】
分類部15は、抽出部13により抽出された入力文が互いに類似する入力文によって構成されるグループ(ユーザ内類似グループ)を形成するように、ユーザ単位で入力文を機能ごとにグループに分類する。例えば、分類部15は、それぞれのユーザIDについて機能ごとに入力文を取得する。次に、分類部15は、取得された入力文同士の互いの文字列の類似度を導出する。例えば、分類部15は、それぞれの入力文の特徴量を導出し、導出された特徴量同士の類似度を算出してもよい。一例として、分類部15は、入力文を形態素解析することにより語に分割し、語の集合(Bag of Words)を特徴量(ベクトル)として、当該特徴量同士の類似度を計算する。類似度は、例えばコサイン類似度であってよい。そして、分類部15は、互いの類似度が所定の閾値以上となるグループを形成するように、入力文同士をグループ化する。
【0028】
図5は、分類部によるユーザ内類似グループの分類結果を模式的に示している。図5では、図4の抽出結果がユーザ内類似グループに分類されている。図5に示す例では、ユーザU1に紐付けられて天気に対応する入力文として抽出された「今日の天気」、「今日の天気は」、「今日の天気を教えて」、「傘は必要」及び「傘はいりますか」が、「今日の天気」、「今日の天気は」及び「今日の天気を教えて」からなるユーザ内類似グループU1001Aと、「傘は必要」及び「傘はいりますか」からなるユーザ内類似グループU1001Bとにグループ化されている。同様に、ユーザU1に紐付けられてアラームに対応する入力文として抽出された「アラーム」及び「アラームをセット」がユーザ内類似グループU1015Aとしてグループ化され、ユーザU2に紐付けられて天気に対応する入力文として抽出された「今日のお天気」及び「今日のお天気を教えて」がユーザ内類似グループU2001Aとしてグループ化されている。それぞれのユーザ内類似グループには、対応するユーザID及び機能IDが紐付けられていてよい。
【0029】
なお、抽出部13が、ユーザの属性情報に基づいて、特定の条件を満たすユーザごとに利用履歴を抽出している場合、分類部15は、特定の条件ごとに抽出された利用履歴に基づいて入力文を分類してもよい。すなわち、分類部15では、特定の条件ごとに分類結果が取得されてもよい。
【0030】
集約部16は、分類部15によってユーザ単位で分類されたユーザ内類似グループが互いに類似するユーザ内類似グループによって構成されるユーザ間類似グループを形成するように、ユーザ間においてユーザ内類似グループを機能単位で集約する。例えば、集約部16は、それぞれの機能についてユーザIDごとにグループ化されたユーザ内類似グループを取得する。次に、集約部16は、それぞれのユーザ内類似グループにおいて属する全ての入力文を結合し、ユーザ内類似グループごとに一つの文(結合文)を生成する。そして、集約部16は、ユーザ内類似グループごとに形成された結合文同士の類似度に基づいて、ユーザ間類似グループを形成する。同じユーザ間類似グループに属するユーザ内類似グループ同士では、互いの結合文同士の類似度が所定の閾値以上となっている。すなわち、集約部16は、属する結合文同士の類似度が所定の閾値以上となるように、ユーザ内類似グループ同士をユーザ間類似グループにグループ化する。なお、類似度の導出手法、グループ化の基準等は、分類部における類似度の導出手法等と同様であってもよいし、異なっていてもよい。
【0031】
図6は、集約部16によるユーザ内類似グループの集約結果を模式的に示している。図6では、図5の分類結果がユーザ間類似グループとして集約されている。図6に示す例では、ユーザU1に紐付けられて分類されたユーザ内類似グループU1001Aと、ユーザU2に紐付けられて分類されたユーザ内類似グループU2001Aとが互いに類似するユーザ間類似グループG001Aを構成している。また、ユーザU1に紐付けられて分類されたユーザ内類似グループU1001Bは、類似するユーザ内類似グループが存在しないので、単独でユーザ間類似グループを構成している。同様に、ユーザ内類似グループU1015A、ユーザ内類似グループU2015A及びユーザ内類似グループU2015Bも、ユーザ間類似グループG015A、ユーザ間類似グループG015B及びユーザ間類似グループG015Cをそれぞれ構成している。
【0032】
また、集約部16は、集約されたユーザ間類似グループを構成するユーザ内類似グループの数をユーザ数として算出する。例えば、図6の例では、ユーザ間類似グループG001Aがユーザ内類似グループU1001A,U2001Aによって構成されているので、ユーザ間類似グループG001Aに対応する入力文を利用しているユーザ数が「2」として算出される。ユーザ間類似グループG001B,G015A,G015B,G015Cは、いずれも一つのユーザ内類似グループによって構成されているので、それぞれユーザ数が「1」として算出される。
【0033】
なお、分類部15が、特定の条件ごとに抽出された利用履歴に基づいて入力文を分類している場合、すなわち、特定の条件ごとに分類結果が取得されている場合、集約部16は、特定の条件ごとに取得された分類結果に基づいてユーザ内類似グループを集約してもよい。
【0034】
出力部17は、集約部16による集約結果を出力する。図7は、集約結果の一例を示す図である。図7に示すように、集約結果は、機能と、当該機能に対応するユーザ間類似グループを構成する入力文と、当該入力文を利用するユーザ数とを含む。集約結果においては、互いに対応する機能、入力文及びユーザ数が互いに紐付いている。なお、集約結果には、機能ごとのユーザ数の総数が含まれてもよい。例えば、集約部16は、同じ機能IDに紐付けられたレコードを抽出し、抽出されたレコードに含まれるユーザIDを重複除去してカウントすることによって、各機能に対応する入力文を入力したユーザ数の総数を導出してもよい。
【0035】
一例において、出力部17は、多くのユーザに利用されている入力文を例文としてユーザ端末20に出力してもよい。例えば、出力部17は、ユーザ数が上位の順に、ユーザ間類似グループを構成する入力文の中から例文を選択し、選択された例文をユーザ端末20に出力する。例文は、ユーザ間類似グループを構成する入力文の中から、例えばランダムに選択されてもよい。集約部16が、特定の条件ごとに取得された分類結果に基づいてユーザ内類似グループを集約した場合、出力部17は、特定の条件ごとに複数の種類の例文を出力してもよい。
【0036】
また、他の例においては、出力部17によって出力される出力結果に基づいて、解析装置10の管理者等によって、入力文の中から例文が選択されてもよい。例えば、管理者等は、算出されたユーザ数を参考にしながら、所望の機能に対応するユーザ間類似グループを構成する入力文の中から例文に相応しい入力文を選択することができる。選択された入力文は、例文Eとして対話システムに登録され得る。なお、管理者等は、出力結果を参考にして新たに例文を作成してもよい。例えば、管理者等は、「8時に起こして」という入力文を参考にして「○時に起こして」という例文を作成し得る。
【0037】
次に、図8に示されるフローチャートを参照して、解析装置10の抽出部13、分類部15及び集約部16の動作の一例について説明する。すなわち、図8のフローチャートは、ユーザ端末20の送信部21から解析装置10の受信部11に送信された利用履歴が利用履歴DB12に蓄積されていることを前提とする。
【0038】
まず、抽出部13が、入力文を利用履歴DB12から抽出する(ステップS1)。ステップS1において、入力文はユーザ単位で機能ごとに抽出される。すなわち、抽出された入力文は、少なくともユーザID及び機能と紐付いている。続いて、分類部15が入力文を分類する(ステップS2)。ステップS2において、入力文はユーザ単位で機能ごとにユーザ内類似グループに分類される。例えば、分類された入力文は、ユーザ内類似グループを識別する識別情報と紐付いていてもよい。続いて、集約部16がユーザ内類似グループをユーザ間類似グループに集約する(ステップS3)。例えば、ユーザ内類似グループはユーザ間類似グループを識別する識別情報と紐付いていてもよい。続いて、集約部16がユーザ間類似グループを構成するユーザ内類似グループの数をユーザ数として算出する(ステップS4)。例えば、集約部16は、ユーザ間類似グループに紐付いているユーザ内類似グループの数をユーザ数として算出し得る。
【0039】
以上説明したように、解析装置10では、複数のユーザによって入力された入力文が集約されて、機能ごとにユーザ間類似グループが形成される。このユーザ間類似グループは、1又は複数のユーザ内類似グループによって構成されている。一つのユーザ内類似グループは、一人のユーザが機能に対応して入力した入力文のうちの互いに類似する入力文の集合である。すなわち、一つのユーザ内類似グループは、一人のユーザに対応している。そのため、多くのユーザ内類似グループによって構成されるユーザ間類似グループは、多くのユーザによって利用されている互いに類似する入力文を含む。したがって、集約部による集約結果を用いることで、多くのユーザに利用されている入力文を取得できる。多くのユーザに実際に利用されている入力文は、他のユーザが利用したいと考える入力文である蓋然性が高い。そのため、取得された入力文に基づくことにより、ユーザに利用されやすい例文を表示することができる。
【0040】
そこで、解析システム1では、集約部16によって、ユーザ間類似グループを構成するユーザ内類似グループの数を含む情報が集約結果として算出される。ユーザ間類似グループを構成するユーザ内類似グループの数は、当該ユーザ間類似グループを構成する入力文を利用するユーザ数に相当する。集約部16によってユーザ数が導出されることで、多くのユーザによって実際に利用されている入力文を容易に取得できる。
【0041】
一例においては、抽出部13は、設定された期間において設定された基準よりも多く実行された機能に対応する入力文を抽出する。例えば、抽出部13によって抽出される基準は、それぞれの機能が実行された日数である。このように、所定期間内にユーザによって実行された日数を閾値にすることで、ユーザが日常的に利用している機能に対応した入力文を効率的に抽出できる。また、所定期間内におけるユーザによる実行回数を閾値にした場合には、ユーザの間で突発的に流行した入力文などを効率的に抽出できる。また、抽出部13によって抽出される入力文の数が制限されることによって、解析装置10における演算の負荷を低減できる。
【0042】
一例において、利用履歴DB12は、ユーザの属性情報を入力文と紐付けて記憶しており、集約部16は、属性情報の少なくとも一部が一致するユーザ同士の間においてユーザ内類似グループを機能単位で集約する。この構成では、ユーザの属性ごとに利用ユーザ数の多い入力文を取得できる。例えば、年齢が30歳台であり、且つ性別が男性であるとの属性を有するユーザ同士の間においてユーザ内類似グループを機能単位で集約した場合、30歳台の男性の間で多く利用されている入力文を取得することができる。これにより、ユーザの属性に合わせて適した例文を生成することができる。
【0043】
なお、ユーザの属性情報が生年月日、性別等である例について説明したが、属性情報は、例えば、位置情報、趣味・嗜好、健康状態等のユーザに関連付けられる他の情報であってもよい。例えば属性情報に位置情報を含む場合、観光地などの所定の範囲において入力された入力文が抽出部によって抽出されてもよい。この場合、所定の範囲を訪れたユーザ(ユーザ端末)に対して、当該所定の範囲で多く入力されている入力文を提示できる。
【0044】
なお、上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
【0045】
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知(broadcasting)、通知(notifying)、通信(communicating)、転送(forwarding)、構成(configuring)、再構成(reconfiguring)、割り当て(allocating、mapping)、割り振り(assigning)などがあるが、これらに限られない。
【0046】
例えば、本開示の一実施の形態における解析装置10は、本開示の通信制御方法を行うコンピュータとして機能してもよい。図9は、本開示の一実施の形態に係る解析装置10のハードウェア構成の一例を示す図である。上述の解析装置10は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
【0047】
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。解析装置10のハードウェア構成は、図1に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
【0048】
解析装置10における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信を制御したり、メモリ1002及びストレージ1003におけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
【0049】
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。
【0050】
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ1003及び通信装置1004の少なくとも一方からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、集約部16は、メモリ1002に格納され、プロセッサ1001において動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001によって実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
【0051】
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つによって構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本開示の一実施の形態に係る通信制御方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
【0052】
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つによって構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及びストレージ1003の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。
【0053】
通信装置1004は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。
【0054】
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
【0055】
また、プロセッサ1001、メモリ1002などの各装置は、情報を通信するためのバス1007によって接続される。バス1007は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
【0056】
また、解析装置10は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つを用いて実装されてもよい。
【0057】
以上、本実施形態について詳細に説明したが、当業者にとっては、本実施形態が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本実施形態は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本実施形態に対して何ら制限的な意味を有するものではない。
【0058】
本開示において説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【0059】
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【0060】
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
【0061】
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
【0062】
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【0063】
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
【0064】
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0065】
また、本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
【0066】
上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。様々な情報要素は、あらゆる好適な名称によって識別できるので、これらの様々な情報要素に割り当てている様々な名称は、いかなる点においても限定的な名称ではない。
【0067】
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0068】
本開示において使用する「第1の」、「第2の」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定しない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本開示において使用され得る。したがって、第1及び第2の要素への参照は、2つの要素のみが採用され得ること、又は何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
【0069】
本開示において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
【0070】
本開示において、例えば、英語でのa, an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
【0071】
本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。
【符号の説明】
【0072】
10…解析装置、11…受信部、12…利用履歴データベース(記憶部)、13…抽出部、15…分類部、16…集約部、17…出力部、20…ユーザ端末(端末装置)。
図1
図2
図3
図4
図5
図6
図7
図8
図9