JP6173958B2 - 複数のハッシュテーブルを用いて検索するプログラム、装置及び方法 - Google Patents

複数のハッシュテーブルを用いて検索するプログラム、装置及び方法 Download PDF

Info

Publication number
JP6173958B2
JP6173958B2 JP2014065222A JP2014065222A JP6173958B2 JP 6173958 B2 JP6173958 B2 JP 6173958B2 JP 2014065222 A JP2014065222 A JP 2014065222A JP 2014065222 A JP2014065222 A JP 2014065222A JP 6173958 B2 JP6173958 B2 JP 6173958B2
Authority
JP
Japan
Prior art keywords
sentence
predicate term
term structure
question
answer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014065222A
Other languages
English (en)
Other versions
JP2015187814A (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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2014065222A priority Critical patent/JP6173958B2/ja
Publication of JP2015187814A publication Critical patent/JP2015187814A/ja
Application granted granted Critical
Publication of JP6173958B2 publication Critical patent/JP6173958B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ハッシュテーブルを用いて検索する技術に関する。この技術は、質問文の入力に対して最適な回答文を出力する質問回答プログラムに適用することができる。
近年、FAQ(Frequently Asked Questions)に基づく質問回答システムが構築されている。「FAQ」とは、多数の人が共通して頻繁に尋ねる質問に対する回答をまとめた問答集をいう。質問回答システムは、特定種類の情報に関する質問文をユーザから自然言語で入力し、その回答文を出力するソフトウェアをいう。一般に、質問回答システムは、仮想質問文とそれに紐づけられた回答候補文とを予めデータベースに記憶する。その上で、質問回答システムは、以下のようなステップで処理を実行する。
(1)ユーザから入力された質問文から、特徴的な単語をクエリとして抽出する。
(2)検索エンジンを用いて、複数のクエリの出現頻度が高い仮想質問文を選択する。
(3)選択された仮想選択文に対する回答文を選択する。
(4)選択された回答文をユーザに提示する。
このような質問回答システムは、ユーザに対して単体装置として存在するものもあれば、インターネット上に質問回答サーバとして接続されたものものある。この質問回答サーバは、ユーザ操作の端末からネットワークを介して質問文を受信し、回答文をその端末へ送信する。
また、インターネット上に、ブログ(Web log)サーバやミニブログ(mini Web log)(例えばtwitter(登録商標))サーバが接続されている。このようなブログサーバは、不特定多数の第三者からのコメント文章を受信し、他の第三者へ公開する。このようなコメント文章は、様々な話題について公開されており、勿論、前述した質問回答システムに入出力される質問文及び回答文に関連するコメント文章も多く議論されている。
更に、他の技術として、ハッシュテーブル(hash table)を用いて検索する技術もある。ハッシュテーブルとは、キーと値の組(エントリ)を複数個格納し、キーに対応するハッシュ値をハッシュ関数によって算出する。膨大なエントリを高速に検索するべく、例えば質問回答システムにも適用することができる。
特開2011−81626号公報 特開2005−141428号公報 特開2005−284209号公報
坪坂正志、「Latent Dirichlet Allocation入門」、[online]、[平成26年3月2日検索]、インターネット<URL:http://www.slideshare.net/tsubosaka/tokyotextmining> 榊博史、松本一則、黒岩眞吾、橋本和夫、「再起演算を用いた自然言語変換方式」、電子情報通信学会論文誌(D-II), Vol.J72-D-II, No.12, pp.2080-2093, Dec. 1989
従来の質問回答システムによれば、同じ質問文であっても、そのユーザの質問の意図が複数あり得る場合がある。このような場合、ユーザに対して、適切な回答文が返答されない場合が多い。
ユーザの質問文の例
Q「携帯電話機の紛失」
この質問文に対して、質問回答システムは、以下の2つキーワードを抽出する。
「携帯電話機」「紛失」
これらキーワードをクエリとして回答文を検索すると、複数の回答の選択肢がある。
A「携帯探せて安心サービスの申込方法」に関する回答文
A「携帯探せて安心サービスの利用方法」に関する回答文
この場合、ユーザとしては、紛失した携帯電話機を遠隔からロックする「利用方法」を問い合わせたつもりであるにも拘わらず、質問回答システムは、「申込方法」について回答してしまう場合もある。
また、他の検索技術として例示したハッシュテーブルによれば、エントリの数が配列のサイズに近づくほど衝突の確率が高くなり、性能が悪化する。そのために、ハッシュテーブルのエントリ数と配列のサイズの比が一定を超えた場合に、より大きいサイズのハッシュテーブルを用いて格納し直す操作が必要となる(例えばリハッシュ(rehash))。特に問題となるのは、格納する可能性があるエントリを全て確保しておく必要があるにも拘わらず、現実的にそのエントリの多くに、値が格納されていない場合である。この場合、ハッシュテーブルに必要以上に大きいメモリサイズを確保する必要があるにも拘わらず、現実的に何ら利用されていないこととなる。
そこで、本発明は、複数のハッシュテーブルを用いて、できる限り小さいメモリサイズで検索するプログラム、装置及び方法を提供することを目的とする。特に、ユーザの質問文に対して複数の回答文の候補が存在する場合、ユーザの意図を反映した回答文を明示する(に絞り込む)ことができる質問回答システムに適用することができる。
本発明によれば、複数のハッシュテーブルを用いて検索するようにコンピュータを機能させるプログラムであって、
登録機能として、
学習用の要素ビット列の集合に対して、要素ビット列毎に、情報量規準値を算出する情報量規準値算出手段と、
情報量規準値が所定閾値以上となる要素ビット列毎に、ハッシュテーブルを生成すると共に、情報量規準値が所定閾値よりも小さい要素ビット列全てに対して、1つのハッシュテーブルを生成するハッシュテーブル生成手段と
を有し、
検索機能として、
キーの要素ビット列に対して、当該キーの要素ビット列に対応するハッシュテーブルを用いて検索するハッシュ検索手段と
してコンピュータを機能させることを特徴とする。
本発明のプログラムにおける他の実施形態によれば、
情報量規準値算出手段は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、情報量規準値Uは、以下のように算出される
n11=要素ビット列
n12=要素ビットの0ビット部分の値を問わない場合の数
n21=要素ビットの1ビット部分の値を問わない場合の数
n22=n11、n12、n13以外の数
MLL_IM=(n11+n12) log(n11+n12)+(n11+n21) log(n11+n21)
+(n21+n22) log(n21+n22)+(n12+n22) log(n12+n22)−2 N log N
MLL_DM=n11 log n11+n12 log n12+n21 log n21+n22 log n22−N log N
AIC_IM=-2 × MLL_IM + 2×2
AIC_DM=-2 × MLL_DM + 2×3
U=AIC_IM − AIC_DM
ようにコンピュータを機能させることも好ましい。
本発明によれば、前述のプログラムを用いて、「述語」「格」及び「目的語」とからなる「述語項構造」に基づいて、多数の文章をトピック毎に分類するようにコンピュータを機能させるプログラムにおいて、
文章毎に、述語項構造(述語、格、目的語)を抽出する述語項構造抽出手段と、
述語項構造毎に、1つ以上の「格」の存在の有無を表す要素ビット列を抽出する要素ビット列抽出手段と
を有し、
登録機能として、学習文章の集合に対して、述語項構造抽出手段及び要素ビット列抽出手段を実行した後、情報量規準値算出手段及びハッシュテーブル生成手段を実行し、
検索機能として、対象文章の集合に対して、述語項構造抽出手段及び要素ビット列抽出手段を実行した後、要素ビット列に対応するハッシュテーブルを選択し、そのハッシュテーブルに対して述語項構造をキーとして検索し、検索された要素に、出現頻度として1増分し、文章毎における各述語項構造の出現頻度を計数する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
章を、分類された各トピックグループに属する確からしさ(トピック比率)を算出するLDA(Latent Dirichlet Allocation)アルゴリズムを用いて、いずれか1つのトピックグループに分類するために、文章毎の述語項構造計数するべく、請求項3記載のプログラムを用いて、トピックを分類するトピック分類手段として
コンピュータを機能させることも好ましい。
本発明によれば、多数のコメント文章を蓄積したコメント文章蓄積部と、多数の回答文を蓄積した回答文蓄積部とを有し、ユーザからの質問文に対する回答文を抽出するようにコンピュータを機能させるプログラムであって、
質問文を入力する質問文入力手段と、
質問文に含まれる複数の質問キーワードを抽出する質問キーワード抽出手段と、
コメント文章蓄積部を用いて、質問キーワードを含むコメント文章を検索するコメント文章検索手段と、
検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する、前述したトピック分類手段と、
各トピックグループに含まれるコメント文章群と、各回答文に含まれる文章との間の類似度を算出し、各トピックグループに類似度が所定閾値以上となる回答文を対応付ける回答文検出手段と、
各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する代表述語項構造抽出手段と、
各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する差分述語項構造抽出手段と、
回答文検出手段によって検出された回答文を、対応する1つ以上の差分述語項構造に基づく文章と共に明示する回答文出力手段と
してコンピュータを機能させることを特徴とする。
本発明のプログラムにおける他の実施形態によれば、
複数の差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示すると共に、ユーザ操作に応じていずれか1つの差分述語項構造を選択させる差分述語項構造選択手段を更に有し、
回答文出力手段は、選択された文章の差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
回答文検出手段は、
各トピックグループに含まれるコメント文章群から、述語項構造解析によって述語項構造を抽出すると共に、トピックグループにおける第1の特徴ベクトルを算出し、
回答文蓄積部に蓄積された各回答文から、述語項構造解析によって述語項構造を抽出すると共に当該回答文における第2の特徴ベクトルとを算出し、
トピックグループの第1のベクトルと、回答文の第2のベクトルとの間のコサイン距離に基づいて類似度を算出する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
代表述語項構造抽出手段は、各トピックグループの代表述語項構造を、赤池情報量基準に応じて優先順に並べるようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
コメント文章は、不特定多数の第三者によって投稿されたものであって、
コメント文章蓄積部は、ミニブログ(mini Web log)サーバに投稿されたコメント文章を収集し蓄積したものであるようにコンピュータを機能させることも好ましい。
本発明によれば、多数のコメント文章を蓄積したコメント文章蓄積部と、多数の回答文を蓄積した回答文蓄積部とを有し、ユーザからの質問文に対する回答文を抽出する質問回答サーバであって、
端末から、質問文を入力する質問文入力手段と、
質問文に含まれる複数の質問キーワードを抽出する質問キーワード抽出手段と、
コメント文章蓄積部を用いて、質問キーワードを含むコメント文章を検索するコメント文章検索手段と、
検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する、請求項4に記載のトピック分類手段と、
各トピックグループに含まれるコメント文章群と、各回答文との間の類似度を算出し、各トピックグループに類似度が所定閾値以上となる回答文を対応付ける回答文検出手段と、
各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する代表述語項構造抽出手段と、
各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する差分述語項構造抽出手段と、
回答文検出手段によって検出された回答文を、対応する1つ以上の差分述語項構造に基づく文章と共に明示する回答文出力手段と
を有することを特徴とする。
本発明の質問回答サーバにおける他の実施形態によれば、
複数の差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示すると共に、ユーザ操作に応じていずれか1つの差分述語項構造を選択させる差分述語項構造選択手段を更に有し、
回答文出力手段は、選択された文章の差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示する
ことも好ましい。
本発明によれば、多数のコメント文章を蓄積したコメント文章蓄積部と、多数の回答文を蓄積した回答文蓄積部とを有し、ユーザからの質問文に対する回答文を抽出する装置における質問回答方法であって、
質問文を入力する第1のステップと、
質問文に含まれる複数の質問キーワードを抽出する第2のステップと、
コメント文章蓄積部を用いて、質問キーワードを含むコメント文章を検索する第3のステップと、
検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する、前述したトピック分類の処理を実行する第4のステップと、
各トピックグループに含まれるコメント文章群と、各回答文との間の類似度を算出し、各トピックグループに類似度が所定閾値以上となる回答文を対応付ける第5のステップと、
各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する第6のステップと、
各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する第7のステップと、
第5のステップによって検出された回答文を、対応する1つ以上の差分述語項構造に基づく文章と共に明示する第8のステップと
を有することを特徴とする。
本発明の質問回答方法における他の実施形態によれば、
第8のステップについて、
複数の差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示すると共に、ユーザ操作に応じていずれか1つの差分述語項構造を選択させ、
選択された文章の差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示することも好ましい。
本発明のプログラム、装置及び方法によれば、複数のハッシュテーブルを用いて、できる限り小さいメモリサイズで検索することができる。特に、ユーザの質問文に対して複数の回答文の候補が存在する場合、ユーザの意図を反映した回答文を明示する(に絞り込む)ことができる質問回答システムに適用することができる。
本発明における複数のハッシュテーブルを用いた登録機能及び検索機能の構成図である。 図1のハッシュテーブルを「述語項構造」の検索に適用した機能構成図である。 本発明における複数のハッシュテーブルを用いた登録及び検索を表す説明図である。 本発明におけるシステム構成図である。 本発明における質問回答サーバの機能構成図である。 質問キーワード抽出部及びコメント文章検索部の処理を表す説明図である。 トピック分類部の処理を表す説明図である。 回答文検出部の処理を表す説明図である。 代表述語項構造抽出部、差分述語項構造抽出部、差分述語項構造選択部及び回答文出力部の処理を表す説明図である。 本発明におけるシーケンス図である。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
図1は、本発明における複数のハッシュテーブルを用いた登録機能及び検索機能の構成図である。
<ハッシュテーブル登録機能>
図1によれば、登録機能として、情報量規準算出部11と、ハッシュテーブル生成部12としてコンピュータを機能させるプログラムが実行されている。ここでは、大量の学習用の要素ビット列が入力される。
[情報量規準算出部11]
情報量規準算出部11は、学習用の要素ビット列の集合に対して、要素ビット列毎に、情報量規準値を算出する。情報量規準値Uは、例えば赤池情報量規準(AIC:Akaike's Information Criterion)であって、以下のように算出される。
n11=要素ビット列
n12=要素ビットの0ビット部分の値を問わない場合の数
n21=要素ビットの1ビット部分の値を問わない場合の数
n22=n11、n12、n13以外の数
MLL_IM=(n11+n12) log(n11+n12)+(n11+n21) log(n11+n21)
+(n21+n22) log(n21+n22)+(n12+n22) log(n12+n22)−2 N log N
MLL_DM=n11 log n11+n12 log n12+n21 log n21+n22 log n22−N log N
AIC_IM=-2 × MLL_IM + 2×2
AIC_DM=-2 × MLL_DM + 2×3
U=AIC_IM − AIC_DM
情報量規準算出部11は、要素ビット列と共に情報量規準値を、ハッシュテーブル生成部12へ出力する。
[ハッシュテーブル生成部12]
ハッシュテーブル生成部12は、以下のようにハッシュテーブルを作成する。
・情報量規準値が所定閾値以上となる場合->
要素ビット列毎に、ハッシュテーブルを生成する
・情報量規準値が所定閾値よりも小さい場合->
それら要素ビット列全てに対して、1つのハッシュテーブルを生成する
これによって、複数のハッシュテーブルが作成される。また、情報量規準値が小さくなるようなハッシュテーブルをまとめることによって、無駄なメモリ空間のハッシュテーブルを生成しないようにすることができる。
<ハッシュテーブル検索機能>
図1によれば、検索機能として、ハッシュ検索部13としてコンピュータを機能させるプログラムが実行されている。ここでは、検索キーとなる要素ビット列が入力される。
[ハッシュ検索部13]
ハッシュ検索部13は、キーの要素ビット列に対して、当該キーの要素ビット列に対応するハッシュテーブルを用いて、当該ハッシュ値に対応する要素を検索する。
図2は、図1のハッシュテーブルを「述語項構造」の検索に適用した機能構成図である。
図2によれば、前述した情報量規準値算出部11と、ハッシュテーブル生成部12と、ハッシュ検索部13と共に、述語項構造抽出部14と、要素ビット列抽出部15としてコンピュータを機能させるプログラムが実行されている。この機能構成によって、「述語」「格」及び「目的語」とからなる「述語項構造」に基づいて、多数の文章をトピック毎に分類することができる。
最初に、「述語項構造」とは、文章中の述語に対して「項」となる名詞句等を当てたものである。述語項構造を用いることによって、文章の意味の骨格を把握することができる。述語項構造解析として、例えばフリーソフトであるSyncha等の述語項構造解析器を用いることができる。
述語項構造は、「述語」に対する「目的語」とその格とから構成される。例えば「携帯を探す」の述語項構造は、述語「探す」に対して目的語「携帯」及び格「ヲ」からなる。また、例えば「サービスに申し込む」の述語項構造は、述語「申し込む」に対して目的語「サービス」及び格「ニ」からなる。
[述語項構造抽出部14]
述語項構造抽出部14には予め、学習用文章の集合が入力される。そして、述語項構造抽出部14は、文章毎に、述語項構造(述語、格、目的語)を抽出する。例えば、以下のような述語項構造が抽出される。
述語項構造=述語「探す」、目的語「携帯」ヲ格
述語項構造=述語「申し込む」、目的語「サービス」ニ格
述語項構造=述語「探す」、目的語「携帯」ヲ格、目的語「サービス」デ格
述語項構造=述語「利用する」、目的語「サービス」ヲ格
これら学習用の述語項構造は、要素ビット列抽出部15へ出力される。
同様に、述語項構造抽出部14には、対象用文章も入力され、述語項構造(述語、格、目的語)を抽出する。対象用文章の述語項構造も、要素ビット列抽出部15へ出力される。
[要素ビット列抽出部15]
要素ビット列抽出部15は、述語項構造毎に、1つ以上の「格」の存在の有無を表す要素ビット列を抽出する。
学習用の要素ビット列は、情報量規準算出部11へ出力する。これによって、登録機能としては、学習文章の集合に対して、述語項構造抽出部14及び要素ビット列抽出部15を実行した後、情報量規準値算出部11及びハッシュテーブル生成部12が実行される。
対象文章の要素ビット列は、ハッシュ検索部13へ出力する。これによって、検索機能として、対象文章の集合に対して、述語項構造抽出部14及び要素ビット列抽出部5を実行した後、ハッシュ検索部13が実行される。
図3は、本発明のハッシュ検索部13の動作を表す説明図である。
図3によれば、ハッシュ検索部13は、入力した対象文章の要素ビット列に対応するハッシュテーブルを選択する。そして、そのハッシュテーブルを用いて、「述語項構造」をキーとして検索する。検索された要素に、出現頻度として1増分し、文章毎における各述語項構造の出現頻度を計数する。
前述した図2及び図3のようなプログラムの機能構成は、文章群をトピックグループへ分類する際に用いることができる。具体的には、当該コメント文章を、分類された各トピックグループに属する確からしさ(トピック比率)を算出するLDA(Latent Dirichlet Allocation)アルゴリズムを用いることできる。LDAによれば、文章毎に、いずれか1つのトピックグループに分類するものであって、述語項構造の出現頻度が必要となる。そのために、図3のように要素毎にカウントすることが必要となる。
図4は、本発明におけるシステム構成図である。
図4によれば、インターネット上に、本発明における質問回答サーバ1が接続されている。質問回答サーバ1は、回答文を予め蓄積しているものであってもよいし、他の回答文蓄積サーバ2から回答文を受信するものであってもよい。尚、本発明によれば、FAQのような質問文候補と回答文候補とを予め紐付けて記憶しておく必要はない。あくまで、回答文候補のみを予め蓄積している。
質問者が操作する端末4は、アクセスネットワーク及びインターネットを介して、質問回答サーバ1へアクセスする。そして、端末4は、質問文を質問回答サーバ1へ送信し、これに対し、質問回答サーバ1から回答文を受信する。以下の実施形態の中では、質問者が自然言語のテキストで端末4へ入力することを想定しているが、質問者が音声で入力しテキストに変換されたものであってもよい。
また、図4によれば、不特定多数の第三者から投稿されたコメント文章を公開するブログサーバ3が、インターネットに更に接続されている。ブログサーバ3は、例えばtwitter(登録商標)サーバのようなミニブログサーバである。不特定多数の第三者は、自ら所持する端末4を用いて、ミニブログサーバ3へコメント文章を自由に投稿することができる。
本発明における質問回答サーバ1は、ミニブログサーバ3から大量のコメント文章を収集する。そして、質問回答サーバ1は、ユーザの質問文に対して複数の回答文の候補が存在する場合、収集したコメント文章を用いて、ユーザの意図を反映した回答文を明示する(に絞り込む)。
図5は、本発明における質問回答サーバの機能構成図である。
図5によれば、質問回答サーバ1は、通信インタフェース部10と、回答文蓄積部101と、回答文取得部111と、コメント文章蓄積部102と、コメント文章収集部112とを有する。
回答文蓄積部101は、多数の回答文を蓄積する。回答文取得部111が、これら回答文を、ネットワークを介して回答文蓄積サーバ2から受信し、回答文蓄積部101へ蓄積するものであってもよい。
コメント文章蓄積部102は、不特定多数の第三者によって投稿された多数のコメント文章を蓄積する。コメント文章収集部112が、これらコメント文章を、ネットワークを介してブログサーバ3から受信し、コメント文章蓄積部102へ蓄積するものであってもよい。
「コメント文章」とは、例えばtwitter(登録商標)で発信された、日本語の「つぶやき」(最大文字数:140文字)のようなものである。コメント文章は、例えば、ユーザid(from_user_id)、つぶやきID(id_str)、発信時間(created_at)、つぶやき(texts)を含む。ここで、コメント文章収集部112は、予め指定した複数のキーワードを含むコメント文章のみを収集することもできる。
また、図5によれば、質問回答サーバ1は、質問文入力部121と、質問キーワード抽出部122と、コメント文章検索部123と、トピック分類部124と、回答文検出部125と、代表述語項構造抽出部126と、差分述語項構造抽出部127と、差分述語項構造選択部128と、回答文出力部129とを有する。これら機能構成部は、サーバに搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
[質問文入力部121]
質問文入力部121は、質問者の端末4から、ネットワークを介して質問文を受信する。例えばユーザの質問文は、以下のようなものである。
Q「携帯電話機の紛失」
その質問文は、質問キーワード抽出部122へ出力される。
図6は、質問キーワード抽出部及びコメント文章検索部の処理を表す説明図である。
[質問キーワード抽出部122]
質問キーワード抽出部122は、質問文に含まれる複数の質問キーワードを抽出する。ここで、質問キーワード抽出部122は、質問文から形態素解析によってキーワードを抽出すると共に、TF−IDF(Term Frequency - Inverse Document Frequency:単語の出現頻度−逆出現頻度)によって特徴的な単語を、質問キーワードとして抽出する。
質問キーワード抽出部122は、最初に、質問文から形態素解析によって単語を抽出する。「形態素解析」とは、文章を、意味のある単語に区切り、辞書を利用して品詞や内容を判別する技術をいう。「形態素」とは、文章の要素のうち、意味を持つ最小の単位を意味する。形態素解析のように単語単位で検索することなく、文字単位で分解し、後続の N-1文字を含めた状態で出現頻度を求める「N-gram」によって解析するものであってもよい。
次に、TF−IDFによって特徴的なキーワードを、質問キーワードとして抽出する。TF−IDFとは、各単語に重みを付けて、クエリから文章をベクトル空間で表し、文章とクエリの類似度でランク付けをする技術である。ランク付けられた値が高いほど、重要キーワードと認識される。
図6の例によれば、以下のように抽出される。
質問文 「携帯電話機の紛失」
質問キーワード「携帯電話機」「紛失」
[コメント文章検索部123]
コメント文章検索部123は、コメント文章蓄積部102を用いて、質問キーワードを含むコメント文章を検索する。具体的には、質問キーワードをクエリとして、各コメント文章からTF(Term Frequency)値やDF(Document Frequency)値を抽出し、これら値が所定閾値以上となる複数のコメント文章を検索する。TF値は、文章における検索語の出現頻度をいい、DF値は、索引語が現れる相対文章頻度をいう。コメント文章検索部123は、ソーシャルメディア検索機能であって、投稿された大量のつぶやきの中から、質問キーワードに関するつぶやきのみを検索するようなものである。
図6によれば、例えば4つのコメント文章が検索されている。これらコメント文章には、少なくとも「携帯電話機」又は「紛失」が含まれている。
図7は、トピック分類部の処理を表す説明図である。
[トピック分類部124]
トピック分類部124は、検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する。トピック分類部124は、前述した図2及び図3のように、予め複数のハッシュテーブルを備えており、それらハッシュテーブルを用いて、文章毎の述語項構造の出現頻度を計数する。トピック分類部124のLDAは、キーワードによる分類でなく、述語項構造による分類であることに特徴がある。
LDAは、単語文書行列を次元圧縮する技術(LSI(latent Semantic Indexin))に対して、単語の特徴ベクトルに揺らぎに基づく確率的な枠組みを導入したものである(例えば非特許文献1参照)。その圧縮した次元の集合をトピックという。
トピック分類部124は、以下のステップで処理を実行する。
(S41)質問キーワードに関する多数のコメント文章から、述語項構造毎の出現頻度(出現回数)をLDA処理へ入力する。そして、コメント文章毎に、各述語項構造の出現頻度を計数する。
(S42)次に、本件でのLDA処理では、トピック毎の述語項構造分布や、コメント文章(ネット側意見)毎のトピック比率を取得する。このトピック比率によって、コメント文章が属するトピックグループに分類する。そして、トピックグループ毎に、全てのコメント文章に含まれる各述語項構造の出現頻度を計数する。
(S43)次に、コメント文章毎に、各トピックグループに属する述語項構造を計数する。そして、コメント文章を計数値の高いトピックグループに分類する。
図8は、回答文検出部の処理を表す説明図である。
[回答文検出部125]
回答文検出部125は、各トピックグループに含まれるコメント文章群と、各回答文に含まれる文章との間の類似度を算出し、各トピックグループに類似度が所定閾値以上となる回答文を対応付ける。
類似度の算出方法は、例えば以下のようにする。
(S51)回答文検出部125は、各トピックグループに含まれるコメント文章群から述語項構造解析によって述語項構造を抽出すると共に、トピックグループにおける第1の特徴ベクトルを算出する。
各トピックグループ:Ci(i=1,2,・・・)
トピックグループiに含まれるコメント文章:Tij(j=1,2,・・・)
(S52)回答文蓄積部101に蓄積された各回答文から述語項構造解析によって述語項構造を抽出すると共に、当該回答文における第2の特徴ベクトルとを算出する。
回答文:Ak(k=1,2,・・・)
(S53)トピックグループの第1のベクトルと、回答文の第2のベクトルとの間のコサイン距離に基づいて類似度を算出する。具体的には、各コメント文章Ti1, Ti2,・・・を含むトピックグループCiと、回答文Ajとの類似度Dist(Ci,Aj)を算出する。
Dist(Ci,Aj)=cosin距離D(Ti1,Aj),D(Ti2, Aj),・・・の平均値
=argi max(Dist(Ci,Aj))
図8によれば、回答文蓄積部101には、多数の回答文が蓄積されている。
回答文1「・・・」
回答文2「携帯探せて安心サービスの申込方法」
述語項構造=述語「探す」、目的語「携帯」、ヲ格
述語項構造=述語「申し込む」、目的語「サービス」、ニ格
回答文3「・・・」
回答文4「・・・」
回答文5「携帯探せて安心サービスの利用方法」
述語項構造=述語「探す」、目的語「携帯」、ヲ格
述語項構造=述語「利用する」、目的語「サービス」、ヲ格
回答文6「・・・」
図8によれば、トピックグループ1と回答文2との類似度が、所定閾値δよりも高い場合、両者は類似していると判定されている。また、トピックグループ2と回答文5との類似度が、所定閾値δよりも高い場合、両者は類似していると判定されている。これによって、トピックグループC1,C2,・・・毎に、0個以上の回答文が割り当てられる。
図9は、代表述語項構造抽出部、差分述語項構造抽出部、差分述語項構造選択部及び回答文出力部の処理を表す説明図である。
[代表述語項構造抽出部126]
代表述語項構造抽出部126は、各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する。
図9によれば、トピックグループ1に対応する回答文2からは、以下の表のような述語項構造が抽出される。
回答文2「携帯探せて安心サービスの申し込み方法は以下のようになります・・・」
述語項構造=述語「探す」、目的語「携帯」、ヲ格
述語項構造=述語「申し込む」、目的語「サービス」、ニ格
回答文5「携帯探せて安心サービスの利用方法は以下のようになります・・・」
述語項構造=述語「探す」、目的語「携帯」、ヲ格
述語項構造=述語「利用する」、目的語「サービス」、ヲ格
ここで、述語項構造抽出部126は、各トピックグループの代表述語項構造を、赤池情報量基準に応じて優先順に並べることも好ましい。トピックグループC1,C2,・・・に割り当てられた回答文のいずれかに出現する述語項構造を、s1,s2,・・・とする。ここでは、述語項構造E(i)が、トピックグループCjの判別に役立つかどうかの指標を与える。
以下では、述語項構造sが、トピックグループCの判別に役立つかどうかの指標E(s,C)の算出方法を表す。
(S1)トピックグループ含まれるコメント文章(つぶやき)の集合Uから、以下の4種類の頻度を得る。
n11=トピックグループCに類似し、述語項構造sが出現するコメント文章の数
n12=トピックグループC以外に類似し、述語項構造sが出現するコメント文章の数
n21=トピックグループCに類似し、述語項構造sが出現しないコメント文章の数
n22=トピックグループC以外に類似し、述語項構造sが出現しないコメント文章の数
(S2)次に、n11,n12,n21,n22に対して、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、独立モデルに対する値MLL_IM(s,C)及び従属モデルに対する値MLL_DM(s,C)を算出する。これは、述語項構造とトピックグループとの組毎の不当割合を算出する。
MLL_IM(s,C)=(n11+n12) log(n11+n12)
+(n11+n21) log(n11+n21)
+(n21+n22) log(n21+n22)
+(n12+n22) log(n12+n22)−2N log N
MLL_DM(s,C)=n11 log n11+n12 log n12+n21 log n21+n22 log n22−N log N
但し、N=n11+n12+n21+n22
(S3)前述のMLL_IM(s,C)及びMLL_DM(s,C)から、以下のE(s,C)を算出する。
AIC_IM(s,C)=-2 × MLL_IM(s,C) + 2×2
AIC_DM(s,C)=-2 × MLL_DM(s,C) + 2×3
E(s,C)=AIC_IM(s, C) − AIC_DM(s,C)
前述で算出されたE(s,C)は、述語項構造sがトピックグループCに偏って出現する不当割合を表す。E(s,C)は、赤池情報量基準に従って、トピックグループCの判別に役立つ述語項構造ほど、E(s,C)の値が高くなる。本発明によれば、各トピックグループCiに対し、E(s,C)の値が大きい順に、m個の述語項構造 Ci,1、Ci,2、Ci,3、・・・Ci,m を抽出し、トピックグループCiの代表述語項構造とする。
[差分述語項構造抽出部127]
差分述語項構造抽出部127は、各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する。回答文2及び5について、[述語項構造=述語「探す」、目的語「携帯」、ヲ格]は共通する。そこで、図9によれば、以下の差分述語項構造が抽出される。
回答文2「携帯探せて安心サービスの申し込み方法は以下のようになります・・・」
述語項構造=述語「申し込む」、目的語「サービス」、ニ格
回答文5「携帯探せて安心サービスの利用方法は以下のようになります・・・」
述語項構造=述語「利用する」、目的語「サービス」、ヲ格
[差分述語項構造選択部128]
差分述語項構造選択部128は、複数の差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示する。
差分述語項構造からの日本語文章を生成するために、例えば以下のようなルールが設定される。
(ルール1)ヲ格のみからなる述語項構造Sの場合
->W(S,ヲ格)+「を」+W(S,述語)
(ルール2)ヲ格とデ格からなる述語項構造Sの場合
->W(S,デ格)+「で」+W(S,ヲ格)+「を」+S(述語)
(ルール3)差分述語項構造S1のヲ格と、共通述語項構造Bのデ格とが一致する場合、
->Aから生成した日本語のヲ格の前方修飾語として、Bの日本語を埋め込む
W(S,ヲ格)は、述語項構造Sのヲ格の単語を表す。
W(S,デ格)は、述語項構造Sのデ格の単語を表す。
尚、このようなルール基づく日本語の生成については、機械翻訳システムの技術が適用できる(例えば非特許文献2参照)。
例えば、ルール1〜3を用いて、図9によれば、トピックグループ毎に、以下の2つの日本語文章が生成される。
「携帯を探すサービスを申し込む」
「携帯を探すサービスを利用する」
これに対し、端末4は、ユーザ操作に応じていずれか1つの差分述語項構造の文章を選択させる。ユーザから見ると、例えば、質問文をキーボードで入力した後、トピックグループ毎の差分述語項構造に基づいた自然な日本語文章がディスプレイに表示される。そして、ユーザは、いずれかの文章を選択することができる。ここで、図9によれば、ユーザは、「携帯を探すサービスを利用する」を選択している。ユーザに選択された文章の差分述語項構造は、回答文出力部129へ出力される。
[回答文出力部129]
回答文出力部129は、回答文検出部125によって検出された回答文を、対応する1つ以上の差分述語項構造の文章と共に明示する。本発明によれば、ユーザの質問に曖昧性があり、コメント文章群が複数のトピックグループに分類され、各トピックグループに対応付けられた回答文を得ることができる。ここで、この得られた回答文の数が少ない場合、差分述語項構造に基づく文章は、提示される回答文の傾向をユーザが認識するために有益な情報となる。
また、回答文の数が多い場合、ユーザとインタラクション(やりとり)をすることによって、回答文を絞り込むことが好ましい。そこで、回答文出力部129は、選択された差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示する。例えば、その回答文を、ユーザが視認するディスプレイに表示する。図9によれば、「携帯探せて安心サービスの利用方法」の回答文が、ユーザへ表示される。これによって、ユーザは、質問文に対する回答文を認識することができる。
図10は、本発明におけるシーケンス図である。
(S71)質問者が操作する端末4から、質問回答サーバ1へ、ユーザの質問文が送信される(図5の質問文入力部121参照)。
(S72)質問回答サーバ1は、質問文に含まれる複数の質問キーワードを抽出する(図5の質問キーワード抽出部122参照)。
(S73)質問回答サーバ1は、コメント文章蓄積部102を用いて、質問キーワードを含むコメント文章を検索する(図5のコメント文章検索部123参照)。
(S74)質問回答サーバ1は、検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する(図5のトピック分類部124参照)。
(S75)質問回答サーバ1は、各トピックグループに含まれるコメント文章群と、各回答文との間の類似度を算出し、各トピックグループに類似度が所定閾値以上となる回答文を対応付ける(図5の回答文検出部125参照)。
(S76)質問回答サーバ1は、各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する(図5の代表述語項構造抽出部126参照)。
(S77)質問回答サーバ1は、各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する(図5の差分述語項構造抽出部127参照)。
(S78)質問回答サーバ1は、複数の差分述語項構造に基づく文章を、ユーザ操作の端末4へ送信する(図5の差分述語項構造選択部128参照)。そして、端末4では、ユーザ操作に応じていずれか1つの文章が選択させる。選択された文章の差分述語項構造は、端末4から質問回答サーバ1へ送信される。
(S79)質問回答サーバ1は、選択された差分述語項構造に対応する回答文を、ユーザの端末4へ送信する(図5の回答文出力部129参照)。
前述したように本発明の質問回答サーバによれば、例えばtwitterのような大量のコメント文章から、質問文の意図を表す代表的な述語項構造を抽出し、質問文を補完することによって、回答文を高精度に検索することができる。具体的には、最初に、質問文に含まれるキーワードを抽出してソーシャルメディアを検索し、大量の検索結果を複数のトピックグループ(トピック毎に1つの検索意図に対応)に高速に分類し、各トピックに類似する回答文を回答文蓄積部から検索する。次に、各トピックグループに特有の単語(差分述語項構造)を自動的に抽出してユーザに提示し、ユーザの選択結果に従った回答文に絞り込んで、ユーザとの対話形式を繰り返し実行することができる。
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、複数のハッシュテーブルを用いて、できる限り小さいメモリサイズで検索することができる。特に、ユーザの質問文に対して複数の回答文の候補が存在する場合、ユーザの意図を反映した回答文を明示する(に絞り込む)ことができる質問回答システムに適用することができる。
また、ユーザの質問文に対して複数の回答文の候補が存在する場合、ユーザの意図を反映した回答文を明示する(に絞り込む)ことができる。
最後に、本発明が、キーワード検索ではなく、述語項構造検索を用いた効果について詳述する。
一般に、例えば、「携帯電話が紛失したらどうしよう」というユーザからの短い質問の場合、「携帯電話紛失に備えたサービス申し込みの要望」なのか、又は、「端末の紛失への対応法に関する問い合わせ」なのかといった曖昧性が存在する。これに対し、コンテキストに依存した曖昧性を検出し、対話形式で回答候補を絞り込みながらTIPS等を返答する技術が提案されている(本願と同一出願人及び同一発明者によって出願された平成24年1月12日付け特許出願、以下「先の出願に係る発明」と称す)。この技術によれば、コンテキストの曖昧性を高速かつ適切に検出し、「安心、申し込み」や「端末、発見」といったキーワードを対話の選択肢として提示することができる。
しかしながら、先の出願に係る発明によれば、第1の課題として、コンテキストを絞り込む際に「携帯紛失、サービス、申し込み」又は「携帯紛失、サービス、利用」といったキーワードが提示されるだけであってユーザにとっては、コンテキストの差異を理解しづらい。
また、第2の課題として、コンテキストの絞り込みが終了しても、非特許文献2に記載された技術のようなキーワードによる検索によれば、検索条件としての情報が不足することがある。例えば、「携帯+発見」といったキーワードで検索する場合、宝探しゲームのように携帯電話機で何かを発見するサービスや、携帯電話を発見するサービスを発見するサービスの情報の両方がキーワード検索結果に現れる。このため、回答精度を現状以上に向上させることが難しい。
第1の課題に対して、本発明によれば、差分キーワードの単純な提示ではなく、動詞を中心に主語や目的語等の関係をリンクで表す「述語項構造」と呼ばれるデータから自然な応対の文章を生成し、それを利用者に提示する手法を用いることで理解度が深まることが期待できる。例えば、「携帯+紛失」のユーザクエリに対して従来システムが「安心+申し込み」もしくは、「発見」といったキーワードを提示していたのに対し、「端末を紛失した際に安心できる申し込みに関する情報」もしくは「携帯電話を紛失した際に端末を発見すること」といった自然な文章をユーザに提示することでユーザの利便性を向上させる手段を提供する。
第2の課題に対して、本発明によれば、述語項構造を検索パラメータとして知識源のテキストを検索することにより、コンテキスト絞り込み後の検索精度を大きく向上させる。例えば、「端末を発見する」と「端末で発見する」の意味を区別できる述語項構造を用いるので、従来型のキーワード検索で行われていた過剰検出が減る。
また、述語項構造を使用して文書の類似性を判定する場合、抽出した述語項構造の一致度合いを判定する必要があり、従来のキーワードを利用した場合より多くの計算時間が必要となることも問題となる。この問題に対しては、述語項構造の中で格と呼ばれるデータスロットに注目し、使用頻度が高いスロットの組み合わせを事例から事前に学習しておき、使用頻度の高い組み合わせに対してはハッシュ関数を使って高速に検索できるようにする。
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
1 質問回答サーバ
11 情報量規準値算出部
12 ハッシュテーブル生成部
13 ハッシュ検索部
14 述語項構造抽出部
15 要素ビット列抽出部
10 通信インタフェース部
101 回答文蓄積部
102 コメント文章蓄積部
111 回答文取得部
112 コメント文章収集部
121 質問文入力部
122 質問キーワード抽出部
123 コメント文章検索部
124 トピック分類部
125 回答文検出部
126 代表述語項構造抽出部
127 差分述語項構造抽出部
128 差分述語項構造選択部
129 回答文出力部
2 回答文蓄積サーバ
3 ブログサーバ
4 端末
5 コメント投稿者用の汎用端末

Claims (13)

  1. 複数のハッシュテーブルを用いて検索するようにコンピュータを機能させるプログラムであって、
    登録機能として、
    学習用の要素ビット列の集合に対して、要素ビット列毎に、情報量規準値を算出する情報量規準値算出手段と、
    前記情報量規準値が所定閾値以上となる要素ビット列毎に、ハッシュテーブルを生成すると共に、前記情報量規準値が所定閾値よりも小さい要素ビット列全てに対して、1つのハッシュテーブルを生成するハッシュテーブル生成手段と
    を有し、
    検索機能として、
    キーの要素ビット列に対して、当該キーの要素ビット列に対応するハッシュテーブルを用いて検索するハッシュ検索手段と
    してコンピュータを機能させることを特徴とするプログラム。
  2. 前記情報量規準値算出手段は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、前記情報量規準値Uは、以下のように算出される
    n11=要素ビット列
    n12=要素ビットの0ビット部分の値を問わない場合の数
    n21=要素ビットの1ビット部分の値を問わない場合の数
    n22=n11、n12、n13以外の数
    MLL_IM=(n11+n12) log(n11+n12)+(n11+n21) log(n11+n21)
    +(n21+n22) log(n21+n22)+(n12+n22) log(n12+n22)−2 N log N
    MLL_DM=n11 log n11+n12 log n12+n21 log n21+n22 log n22−N log N
    AIC_IM=-2 × MLL_IM + 2×2
    AIC_DM=-2 × MLL_DM + 2×3
    U=AIC_IM − AIC_DM
    ようにコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
  3. 請求項1又は2に記載のプログラムを用いて、「述語」「格」及び「目的語」とからなる「述語項構造」に基づいて、多数の文章をトピック毎に分類するようにコンピュータを機能させるプログラムにおいて、
    文章毎に、述語項構造(述語、格、目的語)を抽出する述語項構造抽出手段と、
    述語項構造毎に、1つ以上の「格」の存在の有無を表す要素ビット列を抽出する要素ビット列抽出手段と
    を有し、
    登録機能として、学習文章の集合に対して、前記述語項構造抽出手段及び前記要素ビット列抽出手段を実行した後、前記情報量規準値算出手段及び前記ハッシュテーブル生成手段を実行し、
    検索機能として、対象文章の集合に対して、前記述語項構造抽出手段及び前記要素ビット列抽出手段を実行した後、要素ビット列に対応するハッシュテーブルを選択し、そのハッシュテーブルに対して述語項構造をキーとして検索し、検索された要素に、出現頻度として1増分し、文章毎における各述語項構造の出現頻度を計数する
    ようにコンピュータを機能させることを特徴とするプログラム。
  4. 章を、分類された各トピックグループに属する確からしさ(トピック比率)を算出するLDA(Latent Dirichlet Allocation)アルゴリズムを用いて、いずれか1つのトピックグループに分類するために、文章毎の述語項構造計数するべく、請求項3記載のプログラムを用いて、トピックを分類するトピック分類手段として
    コンピュータを機能させることを特徴とする請求項3に記載のプログラム。
  5. 多数のコメント文章を蓄積したコメント文章蓄積部と、多数の回答文を蓄積した回答文蓄積部とを有し、ユーザからの質問文に対する回答文を抽出するようにコンピュータを機能させるプログラムであって、
    質問文を入力する質問文入力手段と、
    前記質問文に含まれる複数の質問キーワードを抽出する質問キーワード抽出手段と、
    前記コメント文章蓄積部を用いて、前記質問キーワードを含むコメント文章を検索するコメント文章検索手段と、
    検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する、請求項4に記載の前記トピック分類手段と、
    各トピックグループに含まれるコメント文章群と、各回答文に含まれる文章との間の類似度を算出し、各トピックグループに前記類似度が所定閾値以上となる回答文を対応付ける回答文検出手段と、
    各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する代表述語項構造抽出手段と、
    各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する差分述語項構造抽出手段と、
    前記回答文検出手段によって検出された前記回答文を、対応する1つ以上の前記差分述語項構造に基づく文章と共に明示する回答文出力手段と
    してコンピュータを機能させることを特徴とするプログラム。
  6. 複数の前記差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示すると共に、ユーザ操作に応じていずれか1つの差分述語項構造を選択させる差分述語項構造選択手段を更に有し、
    前記回答文出力手段は、選択された文章の差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示する
    ようにコンピュータを機能させることを特徴とする請求項5に記載のプログラム。
  7. 前記回答文検出手段は、
    各トピックグループに含まれるコメント文章群から、述語項構造解析によって述語項構造を抽出すると共に、前記トピックグループにおける第1の特徴ベクトルを算出し、
    前記回答文蓄積部に蓄積された各回答文から、述語項構造解析によって述語項構造を抽出すると共に当該回答文における第2の特徴ベクトルとを算出し、
    前記トピックグループの第1のベクトルと、前記回答文の第2のベクトルとの間のコサイン距離に基づいて類似度を算出する
    ようにコンピュータを機能させることを特徴とする請求項5又は6に記載のプログラム。
  8. 前記代表述語項構造抽出手段は、各トピックグループの代表述語項構造を、赤池情報量基準に応じて優先順に並べるようにコンピュータを機能させることを特徴とする請求項5から7のいずれか1項に記載のプログラム。
  9. 前記コメント文章は、不特定多数の第三者によって投稿されたものであって、
    前記コメント文章蓄積部は、ミニブログ(mini Web log)サーバに投稿されたコメント文章を収集し蓄積したものであるようにコンピュータを機能させることを特徴とする請求項5から8のいずれか1項に記載のプログラム。
  10. 多数のコメント文章を蓄積したコメント文章蓄積部と、多数の回答文を蓄積した回答文蓄積部とを有し、ユーザからの質問文に対する回答文を抽出する質問回答サーバであって、
    端末から、質問文を入力する質問文入力手段と、
    前記質問文に含まれる複数の質問キーワードを抽出する質問キーワード抽出手段と、
    前記コメント文章蓄積部を用いて、前記質問キーワードを含むコメント文章を検索するコメント文章検索手段と、
    検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する、請求項4に記載の前記トピック分類手段と、
    各トピックグループに含まれるコメント文章群と、各回答文との間の類似度を算出し、各トピックグループに前記類似度が所定閾値以上となる回答文を対応付ける回答文検出手段と、
    各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する代表述語項構造抽出手段と、
    各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する差分述語項構造抽出手段と、
    前記回答文検出手段によって検出された前記回答文を、対応する1つ以上の前記差分述語項構造に基づく文章と共に明示する回答文出力手段と
    を有することを特徴とする質問回答サーバ。
  11. 複数の前記差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示すると共に、ユーザ操作に応じていずれか1つの差分述語項構造を選択させる差分述語項構造選択手段を更に有し、
    前記回答文出力手段は、選択された文章の差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示する
    ことを特徴とする請求項10に記載の質問回答サーバ。
  12. 多数のコメント文章を蓄積したコメント文章蓄積部と、多数の回答文を蓄積した回答文蓄積部とを有し、ユーザからの質問文に対する回答文を抽出する装置における質問回答方法であって、
    質問文を入力する第1のステップと、
    前記質問文に含まれる複数の質問キーワードを抽出する第2のステップと、
    前記コメント文章蓄積部を用いて、前記質問キーワードを含むコメント文章を検索する第3のステップと、
    検索された複数のコメント文章を、述語項構造解析によって、述語項構造の分布から複数個のトピックグループに分類する、請求項4に記載の処理を実行する第4のステップと、
    各トピックグループに含まれるコメント文章群と、各回答文との間の類似度を算出し、各トピックグループに前記類似度が所定閾値以上となる回答文を対応付ける第5のステップと、
    各トピックグループについて、対応付けられた回答文に含まれる述語項構造の中で、当該トピックグループを特徴付ける代表述語項構造を抽出する第6のステップと、
    各トピックグループについて、当該トピックグループのみに出現する代表述語項構造を、差分述語項構造として抽出する第7のステップと、
    第5のステップによって検出された前記回答文を、対応する1つ以上の前記差分述語項構造に基づく文章と共に明示する第8のステップと
    を有することを特徴とする質問回答方法。
  13. 第8のステップについて、
    複数の前記差分述語項構造に基づく文章を、ユーザインタフェースを介してユーザに明示すると共に、ユーザ操作に応じていずれか1つの差分述語項構造を選択させ、
    選択された文章の差分述語項構造に対応する回答文を、ユーザインタフェースを介して明示することを特徴とする請求項12に記載の質問回答方法。
JP2014065222A 2014-03-27 2014-03-27 複数のハッシュテーブルを用いて検索するプログラム、装置及び方法 Active JP6173958B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014065222A JP6173958B2 (ja) 2014-03-27 2014-03-27 複数のハッシュテーブルを用いて検索するプログラム、装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014065222A JP6173958B2 (ja) 2014-03-27 2014-03-27 複数のハッシュテーブルを用いて検索するプログラム、装置及び方法

Publications (2)

Publication Number Publication Date
JP2015187814A JP2015187814A (ja) 2015-10-29
JP6173958B2 true JP6173958B2 (ja) 2017-08-02

Family

ID=54430023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014065222A Active JP6173958B2 (ja) 2014-03-27 2014-03-27 複数のハッシュテーブルを用いて検索するプログラム、装置及び方法

Country Status (1)

Country Link
JP (1) JP6173958B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220064859A (ko) 2020-11-12 2022-05-19 숭실대학교산학협력단 이기종 분산 기계학습 플랫폼 환경을 위한 로드 밸런싱 방법, 이를 수행하기 위한 기록 매체 및 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6343081B1 (ja) * 2017-09-29 2018-06-13 義尚 神山 符号符号分類検索ソフトウェアを記録した記録媒体

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0512337A (ja) * 1991-07-02 1993-01-22 Oki Electric Ind Co Ltd ハツシユ法を用いたデータ検索方式
JPH08278894A (ja) * 1995-04-06 1996-10-22 Hitachi Ltd ハッシュ法による情報処理方法および情報処理装置
JP5711674B2 (ja) * 2012-01-12 2015-05-07 Kddi株式会社 大量のコメント文章を用いた質問回答プログラム、サーバ及び方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220064859A (ko) 2020-11-12 2022-05-19 숭실대학교산학협력단 이기종 분산 기계학습 플랫폼 환경을 위한 로드 밸런싱 방법, 이를 수행하기 위한 기록 매체 및 장치

Also Published As

Publication number Publication date
JP2015187814A (ja) 2015-10-29

Similar Documents

Publication Publication Date Title
JP6007088B2 (ja) 大量のコメント文章を用いた質問回答プログラム、サーバ及び方法
JP5711674B2 (ja) 大量のコメント文章を用いた質問回答プログラム、サーバ及び方法
CN109101479B (zh) 一种用于中文语句的聚类方法及装置
Sharifani et al. Operating machine learning across natural language processing techniques for improvement of fabricated news model
US11544459B2 (en) Method and apparatus for determining feature words and server
CN110704743B (zh) 一种基于知识图谱的语义搜索方法及装置
Shen et al. Linden: linking named entities with knowledge base via semantic knowledge
US9727637B2 (en) Retrieving text from a corpus of documents in an information handling system
US8073877B2 (en) Scalable semi-structured named entity detection
US9164980B2 (en) Name identification rule generating apparatus and name identification rule generating method
JP5710581B2 (ja) 質問応答装置、方法、及びプログラム
KR20100067175A (ko) 토픽맵 기반 색인 장치, 토픽맵 기반 검색 장치, 토픽맵 기반 검색 시스템 및 그 방법
TWI656450B (zh) 從中文語料庫提取知識的方法和系統
Van de Camp et al. The socialist network
CN103313248A (zh) 一种识别垃圾信息的方法和装置
US20220114340A1 (en) System and method for an automatic search and comparison tool
JP5718405B2 (ja) 発話選択装置、方法、及びプログラム、対話装置及び方法
US20220365956A1 (en) Method and apparatus for generating patent summary information, and electronic device and medium
Singh et al. Analytics of similar-sounding names from the web with phonetic based clustering
CN111274366A (zh) 搜索推荐方法及装置、设备、存储介质
Wei et al. Online education recommendation model based on user behavior data analysis
Chen et al. Research on clustering analysis of Internet public opinion
JP6173958B2 (ja) 複数のハッシュテーブルを用いて検索するプログラム、装置及び方法
JP2012141681A (ja) クエリセグメント位置決定装置
TWI534640B (zh) Chinese network information monitoring and analysis system and its method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170522

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170607

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170705

R150 Certificate of patent or registration of utility model

Ref document number: 6173958

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150