JP6381775B2 - 情報処理システム及び情報処理方法 - Google Patents

情報処理システム及び情報処理方法 Download PDF

Info

Publication number
JP6381775B2
JP6381775B2 JP2017501757A JP2017501757A JP6381775B2 JP 6381775 B2 JP6381775 B2 JP 6381775B2 JP 2017501757 A JP2017501757 A JP 2017501757A JP 2017501757 A JP2017501757 A JP 2017501757A JP 6381775 B2 JP6381775 B2 JP 6381775B2
Authority
JP
Japan
Prior art keywords
evaluation
expression
data
evaluation expression
information processing
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.)
Expired - Fee Related
Application number
JP2017501757A
Other languages
English (en)
Other versions
JPWO2016135905A1 (ja
Inventor
利昇 三好
利昇 三好
潔人 伊藤
潔人 伊藤
石井 智之
智之 石井
峰雄 千田
峰雄 千田
嘉治 永島
嘉治 永島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2016135905A1 publication Critical patent/JPWO2016135905A1/ja
Application granted granted Critical
Publication of JP6381775B2 publication Critical patent/JP6381775B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation

Description

本発明は、ユーザに情報を提示する技術に関する。
ユーザが求める情報を提示する方法として、ユーザに単語又はフレーズ等のキーワードの入力を求め、そのキーワードに関連の深いドキュメント、Webページ、文章の一部、写真、音声、又は製品情報などを提示する情報検索方法は、大量の文書又は画像等のメディア情報の中から、ユーザが求める情報を抽出するために広く用いられている。また、ユーザが入力したキーワードだけでなく、その同義語及びそれと関連の深い語を含む情報も検索対象とする類似検索及び連想検索などの技術がある。
また、ユーザの行動履歴(製品の購買履歴や、映画等の視聴履歴等)に基づいて、その行動履歴と類似した行動をとっている他のユーザの履歴をもとに、ユーザが求める情報を推定し、提示する方法は、リコメンド技術として広く用いられており、特に、協調フィルタリングなどの手法が用いられている。
"A survey of collaborative filtering techniques", Advances in Artificial Intelligence Volume 2009, January 2009, Article No. 4
ユーザが求める情報を提示する方法として、ユーザが過去に行った参照又は検索等の履歴情報に基づいて、ユーザが所望する情報(製品等)を推定し、提示するリコメンド技術があるが、これを実現するためには予めユーザの履歴情報を取得しておく必要がある。そのため、履歴情報が少ない場合及び取得できない場合には、適用できない。また、履歴情報を保存しておく必要があるため、個人情報保護の観点から、これらの手法を適用できないケースがある。
上記の課題を解決するために、本発明の一態様は、複数の対象の各々と複数の評価表現とを対応付ける評価データ、及び、前記評価表現間の関係を示す評価表現関係データを格納する記憶部と、複数の文書データから前記複数の対象の各々に対応する前記評価表現を抽出して前記評価データを生成する評価表現抽出部と、前記複数の文書データから前記評価表現間の関係を推定して前記評価表現関係データを生成する評価表現関係データ生成部と、前記評価データ及び前記評価表現関係データに基づいて質問を生成して出力する質問生成部と、前記質問に対する回答が入力されると、前記回答に基づいて前記評価データに含まれる前記対象の情報を出力するマッチング部と、を有することを特徴とする。
本発明の一態様によれば、ユーザの履歴情報が少ない場合又は取得できない場合にも、ユーザが所望する情報を検索し、提示することができる。上記以外の課題、構成及び効果は、以下の実施形態の説明によって明らかにされる。
本実施例の情報提示システムの一例を示す機能ブロック図である。 本実施例の情報提示システムを構成する計算機の一例を示すブロック図である。 本実施例のデータ収集部が実行する処理の一例を示すフローチャートである。 本実施例の評価表現抽出部が実行する処理の一例を示すフローチャートである。 本実施例のデータ収集部が収集したデータの一例の説明図である。 本実施例の個別評価DBに含まれるデータの一例の説明図である。 本実施例の表現マップ生成部が実行する処理の一例を示すフローチャートである。 本実施例の表現マップ生成部が収集した評価表現の一例の説明図である。 本実施例の質問応答システムが実行する処理の一例を示すフローチャートである。 本実施例の質問応答生成部が生成する質問用の評価表現候補リストの一例の説明図である。 本実施例の質問応答生成部が生成する、各評価表現に対して各対象の評価が当てはまるかどうかを示す情報の一例の説明図である。
情報提示システムの実施例について、図表を参照しながら説明する。本実施例の情報提示システムは、ユーザとの質問応答に基づいて、ユーザが求める情報を絞り込み、提示するシステムである。検索対象の情報は、文書、画像、音声、又はその他のデータなどである。
図2は、本実施例の情報提示システムを構成する計算機の一例を示すブロック図である。
本実施例の情報提示システムを構成する計算機201は、入力装置202、表示装置203、通信装置204、演算装置(CPU)205、及び外部記憶装置206を備える。
入力装置202は、コマンド等を入力するためのキーボード及びマウス等である。入力装置202は、演算装置(CPU)205で実行されるプログラムの制御、その他、接続機器の制御のために実行されるコマンド等を入力するための装置である。
表示装置203は、処理内容を適宜表示するディスプレイ等の装置である。
通信装置204は、PC又はサーバ等の外部機器からのデータのやりとりを行うために用いられる。詳細には、通信装置204は、外部機器からのユーザによる実行コマンドの取得、及び、画像又はテキストなどの情報の外部機器からの取得等の目的に用いられる。また、通信装置204は、計算機201での処理内容を外部機器に送信する等の目的にも用いられる。
演算装置(CPU)205は、ユーザとの質問応答などの処理を実行する演算装置である。
外部記憶装置206は、HDD又はメモリ等の外部記憶装置である。外部記憶装置207には、質問応答に必要なデータ及び検索対象となるデータなどが記憶されている。また、外部記憶装置206は、演算装置(CPU)205によって実行される処理の途中で生成されるデータ等を一時的に記憶しておくためにも用いられる。
計算機201は、入力装置202、表示装置203及び通信装置204を備えなくてもよい。入力装置202が無い場合には、通信装置204を用いて外部機器からコマンド等が入力される。表示装置203が無い場合には、処理結果は通信装置204を用いて外部機器に送信される。
処理を実行するモジュールの出力と入力は、外部記憶装置206を介して行ってもよい。すなわち、処理部1(図示省略)が処理結果を処理部2(図示省略)に出力し、処理部2がその処理結果を入力として受け取る場合、実際には、処理部1が処理結果を外部記憶装置206に出力し記憶しておき、処理部2は、外部記憶装置206に記憶されている処理部1の出力結果を入力として取得してもよい。
次に、本実施例における情報提示システムによって実施される処理の説明に移る。
図1は、本実施例の情報提示システムの一例を示す機能ブロック図である。
本実施例の情報提示システムは、質問用知識データベース生成装置101、データベース107、質問応答システム112及びデータベース116を有する。質問用知識データベース生成装置101は、データ収集部102、評価表現抽出部103及び表現マップ生成部104を含む。データベース107は、収集データベース(DB)108、個別評価データベース(DB)109、評価表現マップ110及びドメイン知識データベース(DB)111を含む。質問応答システム112は、質問応答生成部113、ユーザ回答取得部115及びマッチング部114を含む。データベース116は、データベース107と同様の個別評価DB109、評価表現マップ110及びドメイン知識DB111を含む。
図1の情報提示システムは、一つ以上の計算機201によって実現される。例えば、質問用知識データベース生成装置101及びデータベース107が一つの計算機201によって実現され、それとネットワークを介して接続された別の計算機によって質問応答システム112及びデータベース116が実現されてもよい。その場合、データ収集部102、評価表現抽出部103、表現マップ生成部104、質問応答生成部113、ユーザ回答取得部115及びマッチング部114は、それぞれの計算機201の外部記憶装置206に格納されたプログラムを演算装置205が実行することによって実現され、データベース107及び116はそれぞれの計算機201の外部記憶装置206に格納される。
あるいは、図1の情報提示システムが一つ以上の計算機201によって実現されてもよい。その場合、質問用知識データベース生成装置101及び質問応答システム112の各部は一つの計算機201の外部記憶装置206に格納されたプログラムを演算装置205が実行することによって実現される。また、この場合、質問応答システム112がデータベース107を参照することによって、データベース116を省略することができる。
あるいは、データベース107が質問用知識データベース生成装置101及び質問応答システム112とは別の計算機201の外部記憶装置206に格納され、質問用知識データベース生成装置101及び質問応答システム112がネットワークを介してデータベース107の作成及び参照を行ってもよい。
本実施例の情報提示システムの構成は、上記の例に限られない。すなわち、本実施例の情報提示システムの任意の部分が、ネットワークに接続された計算機201によって実現されてもよいし、一つの計算機201を論理的に分割することによって生成された仮想計算機によって実現されてもよい。
次に、質問用知識データベース生成装置101及びデータベース107について説明する。ドメイン知識DB111は、予め作成しておくデータベースであり、テーマ(話題)となる対象に関する情報を含む。
ドメイン知識DB111について説明する。ここでは、旅行をテーマとした場合の例を説明する。ドメイン知識DB111は、例えば、旅行に関係する概念のオントロジーに関する情報を含んでいても良い。このような情報として、例えば、is−a関係、part−of関係、instance−of関係などに関する情報がある。例えば、ホテルが宿泊施設であるということは、「ホテルis−a宿泊施設」、温泉がホテルの設備の一部であることは、「温泉part−ofホテル」、ホテルAがホテル概念の具体的なインスタンスであることは、「ホテルAinstance−ofホテル」などとあらわされる。これによって、概念間の関係と、各々の概念がもつ設備、概念の具体的なインスタンスなどに関する情報を整理しておく。オントロジーの形式以外の情報の整理の仕方を用いても良い。テーマに関する事前知識が予め人手または計算機による処理を用いてドメイン知識DB111として整備される。また、ドメイン知識DB111は、データ収集部102がテーマに関連するドキュメントを抽出、分類するための規則に関するデータなどを含んでいても良い。
データ収集部102は、処理の対象となる文書データ(例えばWebサイト、アンケート、又はその他の任意の種類のドキュメント類)を収集する。例えば、お勧めの旅行先を提示する場合には、データ収集部102は、ホテル、観光施設、交通機関等の商業施設、公共施設のホームページ、口コミ、地域情報、及びブログ等を収集する。顧客のアンケート情報等がある場合には、データ収集部102はそれらの情報も収集する。また、製品を提示する場合には、データ収集部102は製品に関連するサイトやドキュメント等を収集する。収集した情報は種別ごとに分類され、収集DB108に保存される。
データ収集部102の処理例について説明する。ここでは、旅行をテーマとして、ユーザに旅行先を提示することを想定し、Web上からデータを収集する場合について説明する。
図3は、本実施例のデータ収集部102が実行する処理の一例を示すフローチャートである。
データ収集ステップ301において、データ収集部102は、例えば通信装置204に接続されたネットワークを介してWebをクローリングするなどして、情報を収集する。このとき、旅行の場合には、宿泊施設、レジャー施設、お土産物屋、レストラン、温泉等の商業施設、公民館、交通機関等の公共施設、および、それらに関して記載されている口コミサイト、ブログ、情報サイト、などが対象となる。図3では省略されているが、ドメイン知識DB111を使用してもよい。例えば、収集対象となるページが持つ特徴をドメイン知識DB111に予め保持しておき、それに基づいて、データ収集部102がページを収集する。ドメイン知識DB111には、例えば、旅行に関連するキーワードを多く含むサイト、商業施設であることを示す営業時間や料金などの情報があるサイト、などの特徴が保持されることが考えられる。
タグ付けステップ302において、データ収集部102は、それらのサイトに種別を示すタグを付加しておく。例えば、ホテル、温泉、デパートなど、施設の種別を示すタグ、所在地を示すタグ、口コミ、ブログ、オーナーサイト、など情報源の区別を示すタグなどが考えられる。タグ付けの規則についても、ドメイン知識DB111に保持しておく。このようにタグを付けておくことで、例えば、オーナーページよりも口コミ情報のほうが、より客観的な評価情報を得られるなど、ページの信頼性、客観性などを判定することができる。ページの信頼性などを数値化して、属性として保存しておいてもよい。
データ収集部102は、Webだけでなく、組織内のドキュメントなどからもデータを収集し、タグ付けしてもよい。データ収集部102が収集し、タグ付けしたデータは、収集DB108に保存される。
次に、評価表現抽出部103の説明に移る。評価表現抽出部103は、収集したデータから、「ホテルAの温泉は景色がよくリラックスできる」などの評価表現を抽出し、その表現が評価の対象とするものと、その対象に対する評価表現、および、可能な場合には、評価者の属性を推定する。
なお、上記のような収集DB108の生成方法は一例であり、上記以外の方法で生成された収集DB108を用いても、後述する本実施例の処理を実行することができる。
図4は、本実施例の評価表現抽出部103が実行する処理の一例を示すフローチャートである。
図4を用いて、適宜、旅行がテーマの場合の例を挙げながら、評価表現抽出部103の処理を説明する。なお、ドメイン知識DB111は、必要に応じて参照されるが、図4では省略した。
レイアウト解析ステップ401において、評価表現抽出部103は、収集DB108に保存されているページ(ドキュメント)のレイアウトを解析する。また、ページのそれぞれの部分の意味を解析する。この解析の例を、図5を参照して説明する。
図5は、本実施例のデータ収集部102が収集したデータの一例の説明図である。
例を挙げて説明する。図5に示すページ501は、ホテルの口コミサイトなどのページの例である。ページ501の上部の部分502にはホテル名が含まれ、その下の部分503には口コミ全体の評価点数又はホテルに関する説明文などが含まれる。その下の部分504には、当該ホテルの個々の利用者によって書き込まれた当該ホテルの評価(いわゆる口コミ)が表示される。口コミごとに部分503に示すような評価点数が示されている場合もある。また、ページ501の右又は下に広告又は関連施設の情報が表示されるなど、様々なレイアウトがある。
レイアウト解析ステップ401において、評価表現抽出部103は、ページ501のレイアウトを解析し、各部の意味(部分502がタイトル、部分504が口コミ、部分503が説明文及び評価点数、など)を推定する。レイアウトを推定するための規則及びキーワードなどは予めドメイン知識DB111に保持されており、それを評価表現抽出部103が参照する。例えば、部分502がタイトルであることは、ページの上部にあること、フォントが大きいことから判断できる。また、このタイトルがホテル名であることは、「ホテルA」のようにホテルという単語が含まれていなくとも、ページの本文にホテルに関連する概念を表すキーワードがよく現れることなどから、判断することができる。これらの概念は、ドメイン知識DB111に保持されている。
また、部分503のような評価点数及び部分504のような評価文章が複数出現することから、このページが口コミサイトであることを推定できる。Webページの場合には、構造化されているため、HTMLタグ等を用いることで、レイアウト構造を抽出することができる。一般のドキュメントの場合には、文書処理に用いられるレイアウト解析技術をレイアウト解析ステップ401に援用してもよい。
評価文章抽出ステップ402において、評価表現抽出部103は、レイアウト解析の結果、評価文章が記述されている部分を抽出する。上述の口コミサイトの例では、部分503または504に評価文章が記述されている。評価文章とは、「XXはきれいだ」などのように何らかのものを評価する表現が含まれている文章である。ただし、評価の対象(この例では「XX」の部分)が明示されていない場合もある。評価は、形容詞で表現される場合が多いため、例えば、評価表現として用いられる形容詞のリストをドメイン知識DB111に予め保持しておき、その形容詞のいずれかを含む文章を抽出することによって評価表現を抽出することができる。また、形容詞で表現できない評価表現(「温泉ではとてもリラックスできた」など)があるため、構文解析結果に基づく評価表現の特徴(規則)を定めておいてもよい。あるいは極性解析技術を用いてもよい。
評価表現抽出ステップ403において、評価表現抽出部103は、評価文章抽出ステップ402で抽出した文章の中から、評価表現を抽出する。例えば、「ホテルCは食事がおいしくて、ベッドも広いので、リラックスできます。露天風呂もあって、おすすめです。」という文章の例では、「おいしく」「広い」「リラックスできる」「おすすめ」が評価表現となる。
評価対象特定ステップ404において、評価表現抽出部103は、評価表現抽出ステップ403で抽出した評価表現の評価対象を抽出する。上記の例のように、「ホテルCは食事がおいしくて」などの場合には、係り受け解析等によって、「ホテルCの食事」が「おいしい」、と評価していることが分かる。ただし、上記の評価文章抽出ステップ402で説明した例のように、対象が文章中に明示されていない場合(たとえば、「ホテルCは」が無い場合など)がある。このような場合には、評価表現抽出部103は、周辺情報から、評価対象を推定する。例えば、口コミサイトの場合には、タイトルなどに評価対象となる施設名や製品名などが記載されている場合があるため、タイトルなどから評価対象を推定する。
評価者属性推定ステップ405において、評価表現抽出部103は、文章中から評価者の属性を推定する。評価者の属性は、例えば、旅行の場合には、家族で行っている、車を使っている、など、文章中から読み取れる、評価者の周辺状況(評価の前提)などである。また、その対象に対する評価者の専門度などの属性もある。例えば、デジタルカメラなどの製品の評価などの場合には、写真に詳しい人とそうでない人の評価は、各々視点が異なる。そのため、写真に詳しい人の評価は、写真に詳しくなく(あまりこだわりがなく)安くて手軽に撮れるカメラを探している人にはあまり参考にならないことも想定される。
このように、書いた人の専門性、こだわりの強さによって、評価者をグループ化しておくと、ユーザの好みを推定する際に有用である。専門度は、例えば、専門性の高いキーワードが文章に表れる、表現に具体性が高いなどの特徴を分析し、判定することができる。ただし、評価者属性推定ステップ405は、省略してもよい。特に、評価者の推定が難しいドキュメントに対しては、省略してもよい。
個別評価DB109には、ホテルA、ホテルBなどの個別の対象と、それに対する評価表現とが整理されて格納される。また、評価者属性も推定された場合にはデータベースとして整理される。
図6は、本実施例の個別評価DB109に含まれるデータの一例の説明図である。
なお、抽出された評価表現がゆれを含む場合には、そのようなゆれを補正し、正規化した評価表現を個別評価DB109に保存してもよい。例えば、「おいしい」「美味しい」「美味だ」などは「おいしい」という評価表現にまとめて個別評価DB109に記録しておいてもよい。
図6のデータ601には、個別の対象のID601Aと、その対象種別601B、および、名称601C等の、個別の対象に関する情報が含まれる。図示は省略されているが、他にも、Webページのアドレス、最寄り駅等、取得できた情報をデータ601に含めて個別評価DB109に格納しておくことができる。
図6のデータ602には、対象ID602Aによって識別される個々の対象に対する評価表現602Bが含まれる。同じ対象ID及び同じ評価表現が複数回現れてもよい。評価者タイプが推定できた場合には、その評価者タイプのID602Cをデータ602に含めて個別評価DB109に格納しておくことができる。上記の通り、評価者タイプが推定されなかった場合は評価者タイプID602Cが省略されてもよい。また、一人の評価者について複数のタイプが推定された場合、又は、タイプの異なる複数の評価者によって同一対象に同一の評価表現が与えられた場合には、当該対象及び評価表現に対する評価者タイプID602Cとして複数の値が含まれてもよい。
なお、図3のステップ302で収集したドキュメントの種別を示すタグが付された場合には、データ602は、各評価表現が抽出されたドキュメントの種別を示すタグをさらに含んでもよい。一つの評価表現が複数の種別のドキュメント(例えばオーナーサイトのページ及びユーザのブログのページ等)から抽出された場合、その評価表現には複数の種別を示すタグが対応付けられる。
図6のデータ603には、個々の対象ID603Aに対して、それに付随している対象のID603Bが含まれる。図6の例では、対象ID「0012327」で識別されるホテルA及び対象ID「0823181」で識別されるレストランBは、いずれもデータ601に含まれる対象であるが、レストランBがホテルAに付随する施設であるため、対象ID「0012327」に対応する付随対象ID603Bとして「0823181」が保持される。付随する対象を持たない対象に対応する付随対象ID603Bは空となり、一つの対象に複数の対象が付随する場合には付随対象ID603Bとして複数の対象のIDが保持される。
図6のデータ604には、評価者タイプID604Aとその評価者タイプがもつ属性604Bが含まれる。評価者タイプは複数回現れても良い。また、この例の専門性のように、属性には数値で表されるものも含まれる。
このようにして、個別の対象に対する評価、情報、評価者のタイプ等がデータベース上に保存される。
次に、表現マップ生成部104について説明する。表現マップ生成部104は、対象種別ごとに使われている評価表現間の関係を解析する。評価表現は、対象ごとに使われる表現及びその意味が異なる場合がある。例えば、ラーメンに対する「あっさり」という評価表現は、ホテルなどの施設に対してはあまり使われない。また、人に対する「あっさり」しているという評価とは意味が異なる。そのため、対象種別ごとに、どのような評価表現が使われるか、どのように使われるか、を解析しておく必要がある。この例では、評価表現間の類似関係、包含関係、トレードオフ関係、などの関係を解析する。
図7は、本実施例の表現マップ生成部104が実行する処理の一例を示すフローチャートである。
表現間関係推定ステップ701において、表現マップ生成部104は、対象種別ごとにその評価に用いられる評価表現を収集し、表現間の類似関係、包含関係、トレードオフ関係、などの関係を解析する。
表現間関係推定ステップ701の処理の例について説明する。表現マップ生成部104は、まず、対象種別ごとに、各対象の評価表現を収集する。
図8は、本実施例の表現マップ生成部104が収集した評価表現の一例の説明図である。
図8の評価表現801は、対象種別「ホテル」に対して、対象ごとの評価表現をまとめたものである。各行に、名称801Aを有するひとつの対象に対する一つ以上の評価表現801Bが列挙されている。
表現マップ生成部104は、まず、評価表現間の近さを定量化する。ここでは、その方法の例を説明する。ある2つの評価表現E1及びE2があるとする。このとき、表現マップ生成部104は、E1とE2の距離D(E1,E2)を計算する。以下の説明では、集合Sの要素の数を#|S|と表す。評価表現E1が現れる対象の集合をO(E1)、評価表現E2が現れる対象の集合をO(E2)としたとき、評価表現E1と評価表現E2が同時に現れる(共起する)頻度が大きいほうが、評価表現E1とE2が近いと考えられる。例えば、表現マップ生成部104は、同一の対象(例えばホテルA)の評価表現801Bに評価表現E1及びE2がいずれも含まれる場合に共起する、一方のみが含まれる場合に共起しないと判定し、対象種別「ホテル」に該当する全ての対象について同様に評価表現E1及びE2が共起するか否かを判定して、それらの判定の結果から共起の頻度を計算する。評価表現間の距離は、例えば、式(1)によって定義できる。
D(E1,E2)=Log〔(2×#|O(E1)∪O(E2)|)/(#|O(E1)∩O(E2)|+#|O(E1)∪O(E2)|)〕 ・・・(1)
D(E1,E2)は、評価表現E1またはE2の少なくとも一方が現れる対象において、必ずE1とE2の両方が現れる(すなわち共起する)場合、0となり、全く共起しない場合には、Log2となる。さらに、評価表現Eが対象Kの評価表現として現れる回数をF(K,E)とする。このとき、E1とE2が現れる回数F(K,E1),F(K,E2)が近いほうが、E1とE2が近いと推定できるため、距離D(E1,E2)の計算の別の例として、式(2)を使用してもよい。
D(E1,E2)=Σ〔(|F(K,E1)−F(K,E2)|)/(|F(K,E1)+F(K,E2)|)〕・・・(2)
ここで和(Σ)は、いま考えている対象種別の対象K全体に対して計算される。ここで、式(3)が成立する場合には、そのKに対する項は0とする。
|F(K,E1)+F(K,E2)|=0 ・・・(3)
上記2つの例を挙げたが、これら2つの基準を組み合わせても良い。このように、評価表現E1とE2の共起頻度、E1とE2の出現回数の近さ、などを基準として、これらの関数として、評価表現間の距離を定量化することができる。
次に、包含関係を定量化する例を示す。例えば、「駅から近い」と「駅から3分」という2つの表現に対して、後者はより具体的であり、前者はより抽象的となっている。また、駅から3分が駅から近いと解釈できるなら、前者の表現は後者の表現を包含していると考えられる。表現マップ生成部104は、このような、表現間の包含関係を推定する。評価表現E2が評価表現E1に包含される程度は、対象Kの評価表現801Bにおいて、評価表現E2が現れるならば評価表現E1が現れる場合が多い(言い換えると、評価表現E1及びE2が共起する頻度が所定の条件を満たす場合において、評価表現E1及びE2が共起しない対象については、E1のみが現れる頻度が、E2のみが現れる頻度より高い)ときに、評価表現E2は評価表現E1に包含される割合が大きいと推定できる。そこで、表現マップ生成部104は、評価表現E(例えばE1及びE2のそれぞれ)に対して、式(4)が計算される。
F(E)=ΣF(K,E) ・・・(4)
ここで、Σは考えている対象種別の対象K全体に対して計算される。さらに、表現マップ生成部104は、式(5)によってP(K,E)を計算する。
P(K,E)=F(K,E)/F(E) ・・・(5)
このP(K,E)は、Kを変数と考えたとき、評価表現Eの確率分布とみることができる。そこで、表現マップ生成部104は、例えば、式(6)によってP(K,E1)、P(K,E2)の負のカルバック・ライブラー情報量I(E1,E2)を計算することによって、評価表現E2が評価表現E1に包含される程度を定量化することができる。これは、E2が現れるときに、E1もまた高確率で表れる場合に、大きな値となる。
I(E1,E2)=−KL(E2||E1)=−Σp(K,E2)Log〔p(K,E2)/p(K,E1)〕 ・・・(6)
なお、表現マップ生成部104は、類義語辞書及び包含関係を示す辞書を用いて評価表現間の類似関係及び包含関係を推定してもよい。
次に、表現マップ生成部104は、評価表現間のトレードオフの関係を定量化する。例えば、「高級感がある」と「安い」などはトレードオフの関係になりやすい。このような関係は、対義語辞書を用いる、評価表現から、「高級感があるが、安い」などのように、対立関係を表す言語表現から取得することができる。また、トレードオフの関係となっている評価表現は共起しにくい場合もあり、式(7)によって上記で定義したD(E1,E2)の逆数T(E1,E2)を計算してもよい。
T(E1,E2)=1/D(E1,E2) ・・・(7)
以上のように、表現マップ生成部104は、評価表現同士の類似関係、包含関係、及びトレードオフ関係を解析しておく。解析結果は、評価表現マップ110に保存される。具体的には、表現間の類似度D(E1,E2)、包含度I(E1,E2)、及びトレードオフ度T(E1,E2)などの情報が評価表現マップ110に保存される。上記のように、トレードオフ関係を示す情報として対義語などの情報が保存されてもよい。
対象種別間類似推定ステップ702において、表現マップ生成部104は、類似した対象種別間で評価表現間の関係解析結果を共有する。表現間関係推定ステップ701の処理は、対象種別ごとに行われる。しかし、近い対象種別、例えば、「ホテル」と「宿」では、類似しているため、それぞれに関する評価表現間の関係解析結果を互いに流用できると期待できる。
ここで、2つの対象種別O1、O2の間の類似度S(O1,O2)を計算する方法の例を説明する。O1の全対象に対して、評価表現Eの出現回数をF(O1,E)とする。このとき、表現マップ生成部104は、式(8)によってP(O1,E)を計算する。
P(O1,E)=F(O1,E)/ΣF(O1,E) ・・・(8)
ここで、和(Σ)は全ての評価表現Eについて計算される。このとき、P(O1,E)は、Eを確率変数としたときに、確率分布とみなすことができる。ここで、表現マップ生成部104は、確率分布P(O1,E)とP(O2,E)の距離L(O1,O2)を計算する。距離には、カルバック・ライブラー距離などを用いることが出来る。評価表現Eの出現頻度が似ている対象種別は類似していると考えられるため、類似度S(O1,O2)は、例えば、式(9)のように定義される。
S(O1,O2)=1/(L(O1,O2)+1) ・・・(9)
このように、対象種別O1,O2の間で評価表現の使われ方や、使用頻度が似ているかどうかに基づいて、類似度を測ることができる。
表現マップ生成部104は、このように計測した対象種別間類似度を用いて、評価表現間の類似度(または距離)、包含関係、トレードオフ関係を再定義することができる。例えば、対象種別O1における評価表現E1と評価表現E2の距離D(O1;E1,E2)が表現間関係推定ステップ701の方法で定義されているとする。このとき、対象種別O1における評価表現間の距離は、例えば、式(10)のように再定義できる。
D’(O1;E1,E2)=ΣS(O1,O)D(O;E1,E2) ・・・(10)
ここで和(Σ)は、全ての対象種別Oについて計算される。これは、対象種別間の類似度Sを重みとして、他の対象種別の評価表現間の距離を共有している。なお、上記の例では全ての対象種別Oについて和を計算したが、予め定めた対象種別、あるいは、類似度が一定以上の対象種別に関してのみ、和を計算してもよい。同様の処理を包含関係、トレードオフ関係に適用してもよい。また、対象種別ごとの評価表現が十分に得られる場合には、表現マップ生成部104は対象種別間類似推定ステップ702を行わなくてもよいが、ある対象種別について、評価文章が少なく、十分に得られない場合には、この処理をすることによって、評価表現間の関係を共有できる。
上記の例では、2つの評価表現間の関係を解析したが、評価表現をベクトルとして表現し、ベクトル空間上の点として評価表現を表しておくと便利である。そのため、類似度が高い表現同士がベクトル空間上に配置されるように、評価表現をベクトルに変換すればよい。このような方法の例として、Force−Directed Algorithmなどの方法を用いることが出来る。この方法では、すべての要素間に一定の斥力を定義し、要素間の類似度に基づいて、要素間に働く引力を定義し、その引力と斥力に基づく系全体のエネルギーが小さくなるように、逐次的に要素の配置を修正し、配置が収束したところで、その要素の位置を定める。これによって、類似度が高い要素間はベクトル空間上の近くに配置されるようになる。表現マップ生成部104は、上記のように評価表現をベクトルに変換し、得られたベクトル空間及びベクトル値も類似度マップとして評価表現マップ110に保存しておく。同様にして、包含関係、トレードオフ関係についてもベクトル空間を定めることができる。
次に、図1の質問応答システム112について説明する。質問応答システム112は、ユーザへの質問及びそれに対するユーザの応答に基づいてユーザの嗜好を聞きだし、ユーザの嗜好に近い対象をマッチングによって絞り込み、ユーザに提示する。質問応答システム112は、質問用知識データベース生成装置101が生成した個別評価DB109及び評価表現マップ110を用いる。
質問応答生成部113は、評価表現を用いて質問を生成し、ユーザからの回答を得るプロセスを繰り返すことによって、ユーザの嗜好を推定する。
図9は、本実施例の質問応答システム112が実行する処理の一例を示すフローチャートである。
ステップ901から904までが質問応答生成部113の処理、ステップ905がユーザ回答取得部115の処理、ステップ906〜909がマッチング部114の処理である。
まず、質問用評価表現候補生成ステップ901において、質問応答生成部113は、対象種別ごとに、質問用の評価表現候補リストを生成する。
図10Aは、本実施例の質問応答生成部113が生成する質問用の評価表現候補リストの一例の説明図である。
図10Aに示す評価表現候補リスト1001は、対象ごとに評価表現の出現回数をまとめたものである。図10Aの例では、評価表現の下の括弧内の数字がその評価表現の出現回数を示す。ここでは、質問応答生成部113は、評価表現として出現頻度の少ない表現を取り除き、出現頻度が一定以上の値となる評価表現のリストを作成する。さらに、質問応答生成部113は、施設及び設備の有無に関する評価(例えば、「露天風呂がある」「レストランがある」など)も、評価表現候補リスト1001に付け加える。これらの情報は、例えば、収集DB108に保存されているホテル等の対象のオーナーページから取得できる。
以降の処理において、質問応答生成部113は、例えば、評価表現に基づいて「ホテルは駅に近いところが良いですか?」などの質問を生成する。ユーザ回答取得部115は、ユーザからの自然言語文での回答を受け付け、または、回答を選択肢(例えば、「近いところが良い」「できれば」「あまり気にしない」「できれば遠い方が良い」「遠い方が良い」など)として提示して、それに対するユーザの選択を回答として受け付け、受け付けた回答に基づいてマッチング部14がユーザの嗜好に合った対象を絞り込む。
効率的質問順算出ステップ902において、質問応答生成部113は、効率的な質問の順序を提示する。処理の例について説明する。まず、質問応答生成部113は、評価表現候補リスト1001の各対象に対する評価表現のうち、対象に対して高い確度で当てはまると推定される表現を残し、それ以外を除外する。確度の高さは、例えば、該当する評価表現の出現頻度の高さ、及び、その評価表現に対立する(すなわちトレードオフ関係の度合いが大きい)評価表現の出現頻度の少なさ、などに基づいて計算できる。
例えば、質問応答生成部113は、ある評価表現とそれに対立する評価表現の共起頻度が高いほど、その評価表現の確度が低いと判定してもよい。また、施設及び設備の有無などは、オーナーページなどから取得できるため、確度が高いと考えられる。このように、質問応答生成部113は、各評価表現に、それぞれが抽出されたドキュメントの種類(例えばそれがオーナーページであるのか個人のブログであるのか等)に応じて予め定められた確度(又は確度の重み)を与えてもよい。そこで、質問応答生成部113は、各評価表現に対して、各対象の評価が当てはまるかどうか、を示す情報を作成する。
確度の低い評価表現に基づく質問を出力し、それに対するユーザの回答を得ても、ユーザに適した対象を絞り込めないことが考えられる。上記のように確度の高い評価表現に基づく質問のみを出力することによって、効率的に対象を絞り込むことができる。
図10Bは、本実施例の質問応答生成部113が生成する、各評価表現に対して各対象の評価が当てはまるかどうかを示す情報の一例の説明図である。
図10Bの例では、各評価表現に対して各対象の評価が当てはまる場合に「○」記号を記載している。各評価表現に対して各対象の評価が当てはまるかどうかを示す表1002は、例えば、ホテルAが「駅から近い」ことの確度が高いと判定されたことを示す。また、表1002は、ホテルAに関して、「リラックスできる」という評価の確度が低い、または無かったことを示す。
効率的質問順算出ステップ902において、質問応答生成部113は、ユーザに質問を繰り返し、ユーザの回答と合致する候補の個数を予め定めた閾値以下に絞る際に、効率的であると推定される質問順を算出する。例えば、質問応答生成部113は、効率的な質問順を算出するために、上記のような評価表現に基づく質問に対する回答が「Yes」と「No」のみであると仮定した場合に、どちらの回答が得られたとしても、多くの候補が除外できる質問が優先的に出力されるように質問順を生成する。
例えば、「ホテルは駅から近いほうがよいですか?」という質問に対して、「Yes」と答えるとホテルAが候補として残り、「No」と答えるとホテルBが候補として残る場合を想定する。この質問に対して、例えば、「Yes」と答えた場合に除外される候補の数と、「No」と答えた場合に除外される候補の数を合計したものが多いほうが、候補を絞るために効率的であると考えられる。このため、質問応答生成部113は、より効率的と考えられる質問が早く出力されるように質問に順位付けをして、予め定めておいた個数の上位の質問の基となる評価表現を算出しておく。この順位付けに用いた値(ここでは候補数の合計)をスコアとする。
具体的には、質問応答生成部113は、各評価表現に基づく質問への回答に対応しない(すなわちその回答によって除外される)対象の数を推定し、推定した対象の数に基づいて(例えばその数が所定の条件を満たす評価表現に基づく質問が早く出力されるように)スコアを算出する。例えば、質問応答生成部113は、全ての対象の数、評価表現「駅から近い」に対応する対象の数、及び、その評価表現とトレードオフの関係にある評価表現(例えば「駅から遠い」)に対応する対象の数、の関係に基づいて、スコアを計算してもよい。
例えば、全対象数に対して、評価表現「駅から近い」及び「駅から遠い」のいずれにも対応しない対象の数の割合が大きいことは、「ホテルは駅から近いほうがよいですか?」という質問に対する回答が「Yes」又は「No」のいずれであっても候補から除外できない対象の割合が大きいことを示している。また、例えば評価表現「駅から近い」に対応する対象の数と、「駅から遠い」に対応する対象の数と、の一方が極端に小さい場合には、回答が「Yes」又は「No」の一方であった場合に候補から除外できる対象がほとんどなく、もう一方であった場合には候補として残る対象がほとんどないことになる。
ユーザに提示する対象の候補を絞り込む効率を考慮すると、ユーザに受け入れられそうにない対象を早期に候補から除外することが望ましいが、その一方で、ユーザに受け入れられる可能性がある対象が早期に候補から除外されることは望ましくないと考えられるため、まだ多数の候補が残っている段階で上記のような評価表現に基づく質問をすることは望ましくない。このため、質問応答生成部113は、例えば、その評価表現とそれに対立する表現のいずれにも対応しない対象の割合が所定の値より大きい評価表現に基づく質問、及び、一方の回答に該当する対象の数が所定の値より小さい評価表現に基づく質問より、それらに該当しない質問が早く出力されるように、それぞれの評価表現のスコアを算出してもよい。これによって、効率的に対象を絞り込むことができる。
質問順補正ルール算出ステップ903において、質問応答生成部113は、絞り込みの効率性だけでなく、対話の自然さを考慮した質問順を生成する。会話では、最初から具体的なことを聞くよりも、最初は広い(例えば抽象的な、又は漠然とした)表現で質問し、その後、少しずつ具体的なことを聞く方が自然である。また、会話の途中でユーザの気が変わる、又はユーザが回答を間違える、という場合がある。さらに、ユーザのニーズは、例えば、「安いホテル」を求めることと、「部屋が広いホテル」を求めることなど、トレードオフ関係にある両立しにくいことを求める場合があるため、どこかを妥協する、などの調整が必要となる。
そこで、質問順補正ルール算出ステップ903において、質問応答生成部113は、評価表現間の類似関係、包含関係、トレードオフ関係に基づいて、効率的質問順算出ステップ902で得られた質問の優先順を補正する。このとき、質問応答生成部113は評価表現マップ110を用いる。
以下で、処理の例を挙げて説明する。質問応答生成部113は、評価表現を要素とするベクトルを考え、これまでのユーザの回答結果をベクトルで表現する。回答結果ベクトルをv=(v1、…、vn)とする(nは評価表現の個数)。例えば、v1は、評価表現「駅から近い」に対応する回答結果を表す。最初は全ての要素は0とする。質問応答生成部113は、このベクトルを対象種別ごとに作成する。例えば、「ホテルは駅から近いほうがよいですか?」という質問に対し、「絶対に近いほうがいい」「できれば」「こだわらない」「遠くてもいい」「遠い方がいい」の5つの回答を準備したとすると、ユーザの回答に応じて、各回答に対応して、それぞれ、v1=1.0、v1=0.5、v1=0.0、v1=−0.5、v1=−1.0などと設定する。以下の説明において、2つの評価表現が近いとは、評価表現同士の類似度が予め定めた閾値以上であることを示し、評価表現E1が評価表現E2に包含されるとは、その包含度が予め定めた閾値以上であることを示すものとする。
質問応答生成部113は、このようなベクトルを保持し、効率的質問順算出ステップ902で得られた評価表現E1及びE2について、E2の順位がE1の順位より下位で、E2がE1を包含し、かつ、E2がまだ質問に用いられていない場合には、E2のスコアをその包含度に応じて増加させる。これによって、まだ質問されていない抽象度の高い質問は上位に配置される傾向となる。その結果、上記の例では、評価表現E2に基づく質問が、評価表現E1に基づく質問より早く出力されやすくなる。
さらに、これまでの質問に対して得られた回答に適合しない対象が除外されていった結果、ユーザに提示する対象の候補数が少なくなっている場合には、質問応答生成部113は、既に行った質問と類似した評価表現を用いた質問をしてもよい。これは、ユーザの気が変わることも想定して、これまでと似た質問をするなどとする。そのために、効率的質問順算出ステップ902に挙がっていない評価表現であっても、一定の規則で(例えばランダムに)、過去の質問に現れた評価表現と類似の評価表現の質問順を繰り上げる(例えばその時点の最上位とする)。
質問選定ステップ904において、質問応答生成部113は、質問順補正ルール算出ステップ903が終了した時点で最上位にある評価表現を用いた質問を行う。例えば、ホテルという対象に対する「駅から近い」という評価表現が最上位の評価表現として選択されている場合には、質問応答生成部113は、「ホテルは駅から近いほうが良いですか?」などの質問を出力する。
なお、これまでの例では、対象種別はホテルの例を挙げながら、固定して説明してきたが、質問応答生成部113は、質問用評価表現候補生成ステップ901、効率的質問順算出ステップ902及び質問順補正ルール算出ステップ903の処理を、複数の対象種別に対して並行して行い、質問選定ステップ904では、これらのうちから、一定の規則で対象種別を選んで、質問を生成してもよい。
ユーザ回答取得ステップ905において、ユーザ回答取得部115は、ユーザから回答を取得する。ユーザ回答取得部115は、自然言語で記述された回答を取得してもよいし、複数のデフォルト回答を準備しておき、それらからのユーザの選択を回答として取得してもよい。自然言語で取得する場合には、ユーザ回答取得部115は、ユーザの表現に基づいて、回答に対する肯定度、否定度(例えば上記の例におけるv1=1.0〜−1.0のような値)を計算し、数値化してベクトルの要素として保存する。
嗜好分布算出ステップ906において、マッチング部114は、回答結果を数値化するなどして表現する。例えば、上記で説明した回答結果ベクトルなどで表現してもよい。
マッチングステップ907において、マッチング部114は、ユーザの回答結果に合致する候補を選定する。ユーザの回答結果との合致度の計算例について述べる。例えば、マッチング部114は、回答結果ベクトルと同様にして、各要素が各評価表現に対応するベクトルによって各対象を表現し、その評価表現がある場合には1、そうでない場合には0とする。例えば、ホテルAのベクトルをw=(w1、…、wn)としたとき、最初の要素w1が「駅から近い」に対応する評価表現である場合には、ホテルAに対応する評価表現として「駅から近い」があればw1=1となり、なければ(又はそれとトレードオフの関係にある「駅から遠い」のような評価表現があれば)w1=0となる。
例えば、図10Bに示した各対象に対応する各評価項目の確度が、各対象に対応する評価表現のベクトルの要素となってもよい。図10Bの例では、ホテルAの評価表現のベクトルの要素のうち、評価表現「駅から近い」に対応する要素の値は「1」、評価表現「リラックスできる」に対応する要素の値は「0」である。
そして、マッチング部114は、この各対象に対応する評価表現から生成されたベクトルと回答結果ベクトルとの類似度を計算し、類似度が一定以上の対象をユーザの回答結果と合致する、と判定する。ベクトル同士の類似度の計算には、様々な方法があり、例えば、コサイン類似度などを用いることができる。このようにして、対象種別ごとに、上記のようにしてユーザの回答結果と合致する対象を選定できる。
しかし、このとき、マッチング部114は、異なる対象種別で、両立する候補に絞る必要がある。例えば、旅行プランを提示することを考えた場合、「ホテル」と「観光地(場所)」の2つの対象種別があったとき、ユーザの回答結果と合致するホテルAの立地と、ユーザの回答結果と合致する観光地の場所は、同じか近い必要がある。そこで、マッチング部114は、対象種別ごとに候補として選んだ中から、両立する候補の組み合わせをプランとして作成し、それを候補として算出する。
なお、このとき、回答結果ベクトルの値には、ユーザから回答が得られた評価表現に対応する要素にのみ値が与えられているが、回答を得ていない評価表現に対応する要素に関しても、類似した評価表現について値がある場合には、その類似度に応じて、両者が回答を共有してもよい。例えば、ある評価表現Eに類似した評価表現E’の要素値がv、それらの類似度がsのとき(sは0から1の間となるように正規化されているものとする)、評価表現Eの要素値をv*sと定めてもよい。
また、図6に示すように、個別評価DB109に各評価表現を使用した評価者の属性を示す情報が含まれる場合には、マッチング部114がその属性を考慮して、ユーザの回答に合致する対象を選定してもよい。具体的には、例えば、回答しているユーザに適合する評価者の属性が判明している場合、マッチング部114は、その属性の評価者が使用した評価表現の出現頻度の重みがより重くなるように、各評価表現の出現頻度に重み付けを行い、その重み付けされた評価表現の出現頻度に基づいて、各対象に対応する評価表現のベクトルを生成し、それと回答結果ベクトルとの類似度を計算してもよい。ユーザに適合する評価者の属性は、ユーザ自身が指定してもよいし(例えば専門性が高い人の評価を重視したい、又は家族で旅行した人の評価を重視したい、など)、ユーザが入力した回答に基づいて質問応答システム112が推定してもよい。これによって、よりユーザに適合する対象を提示することができる。
また、個別評価DB109に、各評価表現が抽出されたドキュメントの種別を示す情報が含まれる場合には、マッチング部114は、その種別について、上記の評価者の属性に関する処理と同様の処理を行うことができる。
質問終了判定ステップ908において、マッチング部114は、質問を終了するかどうかを判定する。終了しない場合には効率的質問順算出ステップ902に進み、再度質問を生成する。終了する場合には、情報提示ステップ909に進む。例えば、マッチング部114は、ユーザの回答結果と一定の基準で合致する対象の候補が存在するか否かを判定し、所定の数以下の場合に、質問を終了する、と判定してもよい。
情報提示ステップ909において、マッチング部114は、表示装置203を介して、ユーザの回答に合致する対象の候補を提示する。マッチング部114は、複数の候補を提示してもよいし、もっとも合致度が高いものを提示してもよい。また、対象種別ごとに提示してもよいし、例えば、ホテルAとレストランAなど、対象種別の組み合わせ(プラン)を提示してもよい。
なお、例えば、旅行の場合には、予め、ホテル、交通機関、及びレストランなどがセットとなった旅行プラン又はツアーなどが提供されている場合がある。このとき、ユーザの回答結果から、ユーザの嗜好に合ったプラン又はツアーを提示したい場合がある。このときには、質問応答システム112は、ツアー又はプランなどに、予め評価タグをつけておき、その評価タグとユーザ回答結果との類似度を測ることによって、類似度の高いプラン又はツアーを提示してもよい。
また、質問応答システム112は、ユーザの行動履歴などを利用できる場合には、行動履歴から各評価表現に対する評価を推定し、ユーザ回答結果ベクトルと同様にして行動履歴ベクトルを生成し、両方のベクトルとの類似度を考慮した上で、提示する情報を定めても良い。
上記のような質問を出力し、それに対する応答を取得することによってユーザの嗜好を聞きだすことで、行動履歴が無い場合又は少ない場合にも、ユーザの嗜好にあった情報を提示できる。また、評価表現に基づいて、ユーザの嗜好を推定するため、例えば、Wifiの設備の有無及び露天風呂の有無など、明確に属性が決まるようなものではなく、曖昧なニーズ、キーワードによる検索が難しい対象でも、ユーザに合った情報を適切に提示することができる。さらに、本実施例では、対象種別ごとに評価表現を分析するため、対象種別ごとに異なる評価表現に基づいて、適切に情報を提示できる。また、類似した対象種別間で評価表現の分析結果を共有するため、データが少ない対象種別についても、評価表現間の関係を把握できる。
上記の実施例では、検索の対象の例として、旅行に利用されるホテル、レストラン等の施設を示したが、それ以外の対象、例えば、書籍、映画、任意の種類の小売商品、任意の種類の施設、不動産等の検索にも本発明を適用することができる。
なお、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
また、図面には、実施例を説明するために必要と考えられる制御線及び情報線を示しており、必ずしも、本発明が適用された実際の製品に含まれる全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。

Claims (14)

  1. 複数の対象の各々と複数の評価表現とを対応付ける評価データ、及び、前記評価表現間の関係を示す評価表現関係データを格納する記憶部と、
    複数の文書データから前記複数の対象の各々に対応する前記評価表現を抽出して前記評価データを生成する評価表現抽出部と、
    前記複数の文書データから前記評価表現間の関係を推定して前記評価表現関係データを生成する評価表現関係データ生成部と、
    前記評価データ及び前記評価表現関係データに基づいて質問を生成して出力する質問生成部と、
    前記質問に対する回答が入力されると、前記回答に基づいて前記評価データに含まれる前記対象の情報を出力するマッチング部と、を有することを特徴とする情報処理システム。
  2. 請求項1に記載の情報処理システムであって、
    前記質問生成部は、
    前記複数の評価表現に基づいて複数の質問を生成し、
    記各評価表現に基づく質問に対する回答に対応しない前記対象の数を、前記評価データに基づいて推定し、前記推定した対象の数に基づいて前記複数の質問の出力順序を算出することを特徴とする情報処理システム。
  3. 請求項2に記載の情報処理システムであって、
    前記評価表現関係データは、評価表現間のトレードオフ関係を示す情報を含み、
    前記質問生成部は、前記各評価表現の出現頻度、及び、前記各評価表現とトレードオフ関係にある評価表現の共起頻度に基づいて、前記各評価表現が前記各対象に当てはまる確度を推定し、前記確度が高いと推定される複数の前記評価表現に基づいて前記複数の質問を生成することを特徴とする情報処理システム。
  4. 請求項2に記載の情報処理システムであって、
    前記記憶部は、前記各評価表現が抽出された文書データの種類を特定する情報を格納し、
    前記質問生成部は、特定された前記文書データの種類に基づいて前記各評価表現が前記各対象に当てはまる確度を推定し、前記確度が高いと推定される複数の前記評価表現に基づいて前記複数の質問を生成することを特徴とする情報処理システム。
  5. 請求項2に記載の情報処理システムであって、
    前記評価表現関係データは、評価表現間の包含関係を示す情報を含み、
    前記質問生成部は、前記複数の評価表現のうち第1評価表現が第2評価表現を包含する場合、前記第1評価表現に基づく質問を、前記第2評価表現に基づく質問より早く出力するように、前記出力順序を変更することを特徴とする情報処理システム。
  6. 請求項2に記載の情報処理システムであって、
    前記マッチング部は、出力された一つ以上の前記質問に対する一つ以上の回答と、前記各対象に対応する評価表現との類似度を算出し、前記類似度が所定の条件を満たす前記対象の情報を出力することを特徴とする情報処理システム。
  7. 請求項6に記載の情報処理システムであって、
    前記評価データは、前記各評価表現を使用した評価者の属性を示す情報を含み、
    前記マッチング部は、前記各対象に対応する前記各評価表現の出現頻度に、前記各評価表現を使用した評価者の属性による重み付けをし、前記重み付けされた出現頻度に基づいて、出力された一つ以上の前記質問に対する一つ以上の回答と、前記各対象に対応する評価表現との類似度を算出することを特徴とする情報処理システム。
  8. 請求項6に記載の情報処理システムであって、
    前記評価表現関係データは、評価表現間の類似関係を示す情報を含み、
    前記質問生成部は、前記類似度が所定の条件を満たす前記対象の数が所定の条件を満たす場合、既に出力した質問の基となった評価表現に類似する評価表現に基づく質問を早く出力するように前記出力順序を変更することを特徴とする情報処理システム。
  9. 請求項1に記載の情報処理システムであって、
    前記評価表現抽出部は、
    レイアウト解析によって各文書データのうち前記対象が記述された部分及び前記評価表現が記述された部分を特定し、
    前記評価表現が記述された部分から、品詞又は予め定められた規則に基づいて一つ以上の前記評価表現を抽出し、
    前記対象が記述された部分から、前記抽出された評価表現に対応する前記対象を抽出し、
    前記各文書データに含まれる文言に基づいて、前記各評価表現を使用した評価者の属性を推定し、
    前記抽出した評価表現、前記抽出した対象及び前記推定した属性を含む前記評価データを前記記憶部に格納することを特徴とする情報処理システム。
  10. 請求項1に記載の情報処理システムであって、
    前記評価表現関係データ生成部は、前記複数の文書データから、前記対象の種類ごとに、前記評価表現間の関係を推定して前記評価表現関係データを生成することを特徴とする情報処理システム。
  11. 請求項10に記載の情報処理システムであって、
    前記評価表現関係データ生成部は、
    二つの前記評価表現の共起頻度に基づいて前記二つの評価表現の類似関係を推定し、
    二つの前記評価表現の共起頻度が所定の条件を満たす場合において、前記二つの評価表現が共起しないときの前記各評価表現の出現頻度の偏りに基づいて前記二つの評価表現の包含関係を推定することを特徴とする情報処理システム。
  12. 請求項11に記載の情報処理システムであって、
    前記評価表現関係データ生成部は、前記対象の種類間の類似関係を推定し、
    互いに類似すると推定された複数の種類の前記対象に対応する複数の前記評価表現に基づいて前記評価表現関係データを生成することを特徴とする情報処理システム。
  13. 請求項1に記載の情報処理システムであって、
    前記記憶部には、収集されるべき前記文書データの特徴を示す情報及び前記文書データの種類を判別する規則を含む知識データがさらに格納され、
    前記知識データに基づいて、ネットワークを介して前記複数の文書データを収集し、収集した前記複数の文書データの各々を前記文書データの種類を示す情報と対応付けて前記記憶部に格納するデータ収集部をさらに有することを特徴とする情報処理システム。
  14. 演算部と、前記演算部に接続される記憶部と、を有する計算機システムによる情報処理方法であって、
    前記記憶部には、複数の対象の各々と複数の評価表現とを対応付ける評価データ、及び、前記評価表現間の関係を示す評価表現関係データが格納され、
    前記情報処理方法は、
    前記演算部が複数の文書データから前記複数の対象の各々に対応する前記評価表現を抽出して前記評価データを生成する手順と、
    前記演算部が前記複数の文書データから前記評価表現間の関係を推定して前記評価表現関係データを生成する手順と、
    前記演算部が前記評価データ及び前記評価表現関係データに基づいて質問を生成して出力する手順と、
    前記質問に対する回答が入力されると、前記演算部が前記回答に基づいて前記評価データに含まれる前記対象の情報を出力する手順と、を含むことを特徴とする情報処理方法。
JP2017501757A 2015-02-25 2015-02-25 情報処理システム及び情報処理方法 Expired - Fee Related JP6381775B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/055481 WO2016135905A1 (ja) 2015-02-25 2015-02-25 情報処理システム及び情報処理方法

Publications (2)

Publication Number Publication Date
JPWO2016135905A1 JPWO2016135905A1 (ja) 2017-06-22
JP6381775B2 true JP6381775B2 (ja) 2018-08-29

Family

ID=56788610

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017501757A Expired - Fee Related JP6381775B2 (ja) 2015-02-25 2015-02-25 情報処理システム及び情報処理方法

Country Status (3)

Country Link
US (1) US10671619B2 (ja)
JP (1) JP6381775B2 (ja)
WO (1) WO2016135905A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102535044B1 (ko) * 2015-12-08 2023-05-23 삼성전자주식회사 단말장치, 서버 및 이벤트 제안방법
JP6250121B1 (ja) * 2016-09-16 2017-12-20 ヤフー株式会社 地図検索装置、地図検索方法、および地図検索プログラム
CN108109616A (zh) 2016-11-25 2018-06-01 松下知识产权经营株式会社 信息处理方法、信息处理装置以及程序
JP6952259B2 (ja) * 2016-12-06 2021-10-20 パナソニックIpマネジメント株式会社 情報処理方法、情報処理装置、及び、プログラム
CN108153800B (zh) * 2016-12-06 2023-05-23 松下知识产权经营株式会社 信息处理方法、信息处理装置以及记录介质
JP6897235B2 (ja) * 2017-03-31 2021-06-30 富士通株式会社 検索処理方法、検索処理プログラム、および検索処理装置
CN108052577B (zh) * 2017-12-08 2022-06-14 北京百度网讯科技有限公司 一种通用文本内容挖掘方法、装置、服务器及存储介质
US11238508B2 (en) * 2018-08-22 2022-02-01 Ebay Inc. Conversational assistant using extracted guidance knowledge
JP7200683B2 (ja) * 2019-01-11 2023-01-10 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
US11526674B2 (en) * 2019-03-01 2022-12-13 Rakuten Group, Inc. Sentence extraction system, sentence extraction method, and information storage medium
US11036941B2 (en) * 2019-03-25 2021-06-15 International Business Machines Corporation Generating a plurality of document plans to generate questions from source text
CN110517096A (zh) * 2019-08-30 2019-11-29 百度在线网络技术(北京)有限公司 内容植入方法、装置、电子设备及存储介质
JP7434125B2 (ja) * 2020-09-16 2024-02-20 株式会社東芝 文書検索装置、文書検索方法、及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8494978B2 (en) * 2007-11-02 2013-07-23 Ebay Inc. Inferring user preferences from an internet based social interactive construct
JP5759335B2 (ja) * 2011-10-20 2015-08-05 日本電信電話株式会社 質問項目推薦装置、質問項目推薦方法及び質問項目推薦プログラム
WO2013080406A1 (ja) * 2011-11-28 2013-06-06 Necソフト株式会社 対話システム、冗長メッセージ排除方法および冗長メッセージ排除プログラム
JP5885689B2 (ja) 2012-03-06 2016-03-15 株式会社オウケイウェイヴ Q&aシステム
JP5922048B2 (ja) * 2013-02-21 2016-05-24 株式会社トヨタマップマスター 表示順設定装置及びその方法、並びに表示順を設定するためのコンピュータプログラム及びコンピュータプログラムを記録した記録媒体
US9978362B2 (en) * 2014-09-02 2018-05-22 Microsoft Technology Licensing, Llc Facet recommendations from sentiment-bearing content

Also Published As

Publication number Publication date
JPWO2016135905A1 (ja) 2017-06-22
WO2016135905A1 (ja) 2016-09-01
US20180039633A1 (en) 2018-02-08
US10671619B2 (en) 2020-06-02

Similar Documents

Publication Publication Date Title
JP6381775B2 (ja) 情報処理システム及び情報処理方法
US9836511B2 (en) Computer-generated sentiment-based knowledge base
KR102075833B1 (ko) 미술 작품 추천 큐레이션 방법 및 시스템
US10956948B2 (en) System and method for hotel discovery and generating generalized reviews
US11023503B2 (en) Suggesting text in an electronic document
JP6767342B2 (ja) 検索装置、検索方法および検索プログラム
KR100954842B1 (ko) 카테고리 태그 정보를 이용한 웹 페이지 분류 방법, 그 시스템 및 이를 기록한 기록매체
JP4613346B2 (ja) キーワード抽出方法、キーワード抽出プログラムおよびキーワード抽出装置、並びにメタデータ作成方法、メタデータ作成プログラムおよびメタデータ作成装置
JP6928044B2 (ja) 提供装置、提供方法及び提供プログラム
JP6932162B2 (ja) 地域に基づくアイテム推薦端末装置及びアイテム推薦情報提供方法。
KR101826594B1 (ko) 지식 구조 기반의 전자책 추천 방법 및 시스템
KR101178208B1 (ko) 키워드 추출 장치 및 방법
JP5368900B2 (ja) 情報提示装置、情報提示方法およびプログラム
Balaji et al. Finding related research papers using semantic and co-citation proximity analysis
JP5741242B2 (ja) プロファイル更新装置およびその制御方法、ならびに、プロファイル更新用プログラム
JP7160971B2 (ja) コンテンツ制御装置
Lerttripinyo et al. Accommodation recommendation system from user reviews based on feature-based weighted non-negative matrix factorization method
JP7037778B2 (ja) 検索装置および方法
WO2021095728A1 (ja) コンテンツ制御装置、コンテンツ制御システム、コンテンツ制御方法、及びコンテンツ制御プログラム
JP7008102B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP6945680B1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Pokhrel et al. Web Data Scraping Technology using TF-IDF to Enhance the Big Data Quality on Sentiment Analysis
JP7034015B2 (ja) 選択装置、学習装置、抽出装置、選択方法、学習方法、抽出方法、選択プログラム、学習プログラム、および抽出プログラム
JP6403850B1 (ja) 情報処理装置、情報処理方法及びプログラム
Puri et al. Opinion Mining from Social Travel Networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180711

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: 20180724

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180731

R150 Certificate of patent or registration of utility model

Ref document number: 6381775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees