【文献】
徳永 泰浩 他,チャット対話における発言間の継続関係と応答関係の同定,自然言語処理,日本,言語処理学会,2005年 1月10日,Vol.12,No.1,pp.79-105.
【文献】
吉川 克正 他,機械学習手法による結合推論を利用した時間的順序関係推定,第73回人工知能基本問題研究会資料,日本,社団法人人工知能学会,2009年 3月 6日,SIG-FPAI-A804-12,pp.61-67.
【文献】
宮部 泰成 他,文書横断文間関係の特定,言語処理学会第12回年次大会発表論文集,日本,言語処理学会,2006年 3月13日,pp.496-499.
【文献】
小西 卓哉 他,統計的言語特性を考慮した評判情報のトピックモデリング,第3回データ工学と情報マネジメントに関するフォーラム 論文集,日本,電子情報通信学会データ工学専門委員会,2011年 7月27日,Vol.DEIM2011,No.A8-2,pp.1-8.
(58)【調査した分野】(Int.Cl.,DB名)
時間情報及びユーザ情報が各々付与された複数の文書からなる文書群における全ての文書間の各々について、文書間の内容の関連性と、文書間の応答関係、及び文書間における何れか一方の文書が同一のユーザ情報が付与された文書のうちの先頭または最後の文書であるか否かを示す特徴を抽出する特徴抽出手段と、
前記文書群における全ての文書間の各々について、前記特徴抽出手段によって抽出された前記文書間に対する前記特徴と、前記特徴に基づいて文書間の関係を推定するための予め学習された推定モデルとに基づいて、前記文書間の関係を推定する関係推定手段と、
を含む文書間関係推定装置。
前記文書間の特徴は、前記文書間のうちの先の文書が後の文書の返信先であること、後の文書が先の文書のユーザに対して返信していること、前記文書のユーザ情報が同じであること、先の文書が同じユーザ情報が付与された文書のうちの最後の文書であること、及び先の文書が同じユーザ情報が付与された文書のうちの最初の文書であることの少なくとも一つを含む請求項1〜請求項3の何れか1項記載の文書間関係推定装置。
時間情報及びユーザ情報が各々付与された複数の学習用文書からなる学習用文書群における全ての学習用文書間の各々について、前記特徴を抽出する学習用特徴抽出手段と、
前記学習用文書群における全ての学習用文書間の各々について予め定められた文書間の関係と、前記学習用特徴抽出手段によって前記学習用文書群における全ての学習用文書間の各々について抽出された前記学習用文書間に対する前記特徴とに基づいて、前記推定モデルを学習する学習手段と、
を更に含む請求項1〜請求項4の何れか1項記載の文書間関係推定装置。
前記学習用文書群における各学習用文書について、前記学習用文書が他の学習用文書と関係がある場合、前記学習用文書と関係がある前記他の学習用文書が1つである制約を生成する学習用制約生成手段を更に含み、
前記学習手段は、前記学習用文書群における全ての学習用文書間の各々について予め定められた文書間の関係と、前記学習用特徴抽出手段によって前記学習用文書群における全ての学習用文書間の各々について抽出された前記学習用文書間に対する前記特徴と、前記学習用制約生成手段によって生成された各学習用文書に対する前記制約とに基づいて、前記推定モデルを学習する請求項5記載の文書間関係推定装置。
特徴抽出手段によって、時間情報及びユーザ情報が各々付与された複数の文書からなる文書群における全ての文書間の各々について、文書間の内容の関連性と、文書間の応答関係、及び文書間における何れか一方の文書が同一のユーザ情報が付与された文書のうちの先頭または最後の文書であるか否かを示す特徴を抽出し、
関係推定手段によって、前記文書群における全ての文書間の各々について、前記特徴抽出手段によって抽出された前記文書間に対する前記特徴と、前記特徴に基づいて文書間の関係を推定するための予め学習された推定モデルとに基づいて、前記文書間の関係を推定する
文書間関係推定方法。
【発明を実施するための形態】
【0014】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0015】
<システム構成>
図1に示すように、本発明の実施の形態に係る発言間関係推定装置100は、発言を示すテキストデータの集合が入力され、各発言間の関係を出力する。1つの発言は1つ以上の文からなるテキストデータである。この発言間関係推定装置100は、CPUと、RAMと、後述するモデル学習処理ルーチン及び発言間関係推定処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
図1に示すように、発言間関係推定装置100は、入力部10と、演算部20と、出力部30とを備えている。
【0016】
入力部10は、入力された発言の集合を受け付ける。本実施の形態の例では、発言の集合として、マイクロブログサービスの一つであるツイッター(R)の発言集合を用いる。ツイッター(R)では、ユーザが日々膨大な数の発言(ツイートと呼ばれる)を行っており、構造化が望まれるデータの一つである。ここでは、ツイートの集合をtogetter(R)(http://togetter.com/)と呼ばれるサービスから収集した。togetter (R)は、個人が自身のお気に入りのツイートを「まとめ」として登録することのできるサービスで、一定のトピックに関係するツイートが雑多に集められている。
【0017】
また、学習データとして入力された発言の集合と共に、入力部10は、入力された発言間の関係を受け付ける。入力される発言間の関係は、手動で付与されたものであり、使用する関係性は、例えば、「関係あり」である。
【0018】
また、使用する関係性として詳細なものを用いてもよく、例えば、「賛成」及び「反対」、並びに、「矛盾」、「類似」、「演繹」及び「帰納」である。賛成は同意を表し、反対は、同意していないことを表す。矛盾は、異なる内容を述べていることを表し、類似は、発言に同意をして、類似した内容を述べていることを表す。演繹は、発言の内容をもとにして、推論による内容を発言したり、新たな情報を加え議論の展開することを表し、帰納は、発言の内容をまとめた内容を発言していることを表す。
【0019】
本実施の形態の具体例として、togetter(R)における14のまとめページから、14のツイート集合を収集した。また、実験のため、これらの集合をそのまま用いるのではなく、まとめのトピックとは直接関係のないと思われるツイートは削除し、リプライ先が含められていないツイートがあった場合には、twitter(R)から改めて取得するという処理を行った。
図2は、あるツイート集合からの抜粋である。IDはツイートのID、ユーザ名はツイートをしたユーザの名前、返信先は、ツイッターによって付与される返信先情報であり、in_reply_toから取得できる。本文はツイートの発言そのものであり、リンク先IDは、in_reply_to からでは判定できないが、内容から確認できる、発言対象を表すIDである。賛否は、関係性のある発言との間の関係としての「賛成」「反対」のいずれかであり、関係は、関係性のある発言との間の関係としての「矛盾」「類似」「演繹」「帰納」のいずれかである。リンク先ID、賛否、関係は、学習データとして人手で付与した発言間の関係の一例である。
【0020】
また、入力部10は、上記の関係性がツイート間にあるかないか、あるとしたらどの関係かを推定するために入力された、発言の集合を受け付ける。
【0021】
演算部20は、発言集合データベース21、発言間関係データベース22、特徴量生成部25、モデル学習部26、モデル記憶部27、入力発言集合データベース28、特徴量生成部29、及び関係同定部31を備えている。なお、関係同定部31が、関係推定手段の一例である。
【0022】
発言集合データベース21は、入力部10により受け付けた学習データとしての発言の集合を記憶する。発言間関係データベース22は、入力部10により受け付けた学習データとしての発言間の関係を記憶する。
【0023】
特徴量生成部25は、形態素解析部251、固有表現抽出部252、発言間特徴生成部253、及び発言間制約生成部254を備え、発言集合データベース21に記憶されている発言の全ペアについてペア間の特徴を生成する。本実施の形態の例では、発言間の特徴は一階述語論理として表現される。特徴量は、述語として表される。
【0024】
形態素解析部251は、各発言に対して形態素解析を行う。形態素解析の手法は、従来既知の手法を用いればよく、入力を形態素に分割できるものであれば何でもよい。固有表現抽出部252は、各発言から固有表現を抽出する。固有表現抽出の手法は、従来既知の手法を用いればよく、入力について、固有表現を抽出できるものであれば何でも良い。本実施の形態の例では、どちらについてもCaboCha を用いている。
【0025】
発言間特徴生成部253は、ツイートの発言間(ツイートiとツイートj)の各々について、後述する「in_reply_to」、「reply」、「sameuser」、「latestutt」、及び「firstutt」を含む述語を、発言間の特徴(素性とも呼ぶ)として生成する。
【0026】
「in_reply_to」:ツイートjにリプライ先のツイートのID=iが指定されている場合、特徴として、述語in_reply_to(i、j)を生成する。たとえば、先の例における、ツイート2_userB_1 はin_reply_to にID 1_userA_1が指定されているため、述語in_reply_to(1(1_userA_1)、2 (2_userB_1))が特徴として生成される。
【0027】
「reply」:ツイートjが@...という形でツイートiのユーザー名に言及している場合、reply(i、j)を生成する。たとえば、ツイートj=44_userB_10の中で@で言及されているユーザのツイートのIDを用いて、述語reply(29(29_userX_17)、44(44_userB_10))、述語reply(33(33_ userX _19)、44(44_userB_10))といった特徴を生成する。
【0028】
「sameuser」:ツイートjとツイートiが同ユーザの場合、述語sameuser(i、j)を生成する。たとえば、2_userB_1と4_userB_2のように、同じユーザのツイート同士であれば、述語sameuser(2(2_userB_1)、4(4_userB_2))を生成する。
【0029】
「latestutt」:ツイートjとツイートiの間にツイートiと同じユーザのツイートがない場合、つまり、相手の一番最近のツイートに対してリンクがある場合、述語latestutt(i、j)を生成する。たとえば、ツイート2のユーザの発言が、ツイート3の時点で最も最近のそのユーザの発言である場合、述語latestuut(2(2_userB_1)、3(3_userC_1))を生成する。すなわち、会話中で誰かの発言に対して応答を行う場合、相手の新しい発言を無視して、以前の発言に対して応答することは少ないだろう、という状況を表す意図で、ツイートが発言された時点で、応答相手の最新の発言に対しての応答かどうかを表す述語を生成する。
【0030】
「firstutt」:ツイートjがリンクをもつツイートiが所定の区間内でそのユーザの最初の発言である場合、述語firstutt(i、j)を生成する。firstuttは、相手のユーザの最初のツイートとの組みであることを表す述語である。たとえば、ツイートiのIDが「i_ユーザ名_1」となっている場合、 述語firstutt(i、j)を生成する。質問や問題提起など、会話の発端となるようなツイートが広く様々なユーザから言及される場合がtogetter(R)上で多く見られるため、togetter(R)のまとめ上でそれぞれのユーザの初めての発言はより多くのユーザーから応答されやすいだろう、という意図でこの述語を生成する。なお、所定の区間内というのは、応答関係を判断するツイート集合内、例えば、togetter(R)のまとめ全体の範囲を表わす。
【0031】
なお、述語「in_reply_to」が、先の文書が後の文書の返信先であることを示す特徴の一例であり、述語「reply」が、後の文書が先の文書のユーザに対して返信していることを示す特徴の一例であり、述語「sameuser」が、文書のユーザ情報が同じであることを示す特徴の一例である。また、述語「latestutt」が、先の文書が同じユーザ情報が付与された文書のうちの最後の文書であることを示す特徴の一例であり、述語「firstutt」が、先の文書が同じユーザ情報が付与された文書のうちの最初の文書であることを示す特徴の一例である。
【0032】
また、発言間特徴生成部253は、従来法で素性として用いられた、発言ペアのどちらが長いか、発言ペアが連続する発言かどうか、発言間の投稿間隔、反意語となる単語対が発言間にあるか、発言ペアが同じURLを含むかどうか、発言ペアが同じ固有表現を含むか否か、発言ペアが括弧で囲まれた同じ表現を含むかどうか、発言ペアが異なる固有名詞を含むかどうか、発言間における単語ベクトルのコサイン類似度、発言間の名詞の包含度の各々を表わす述語を、発言間の特徴として、発言間の各々について生成する。
【0033】
固有表現は、人名、製品名、施設名、地名、時間表現、数値表現を扱っており、個々の固有表現ごとの素性ではなく、固有表現の種類毎に固有表現を含むかどうかを表わす述語を生成する。反意語に関する述語は、予め準備した反意語リストに従って、一方が、もう一方の反意語を含むかを表す述語を生成する。たとえば、好評に対して悪評と不評、重んじるに対して軽んじる、夏至に対して冬至、などが反意語のリストである。発言間の間隔については離散値の特徴であり、出現順の差が、5以下、10以下、15以下、20以下、30以下、40以下、50以下、それ以上であるかどうかを表わす述語を生成する。名詞の包含度はツイートi、j間の両方向に対して定義され、ツイートiのツイートjに対する包含度は、(共通する名詞の異なり数)/(ツイートiに出現した名詞の数)であり、発言間の間隔と同様に、離散値の特徴として述語を生成する。単語ベクトルのコサイン類似度は、それぞれのツイートについて単語unigram、単語bigramそれぞれのベクトルを作成し、そのベクトル間のコサイン類似度を計算し、発言間の間隔と同様に、離散値(例えば、0.1刻みの離散値)の特徴として述語を生成する。
【0034】
発言間制約生成部254は、発言間の制約を示す論理式を生成する。ツイッターでは、一つの発言が短く、複数の発言に一度に応答することは少ない。よって、発言が他の発言と関係がある場合、関係がある他の発言が1つである、という制約を表す論理式を、各発言について生成する。例えば、以下に示す論理式が生成される。
【0035】
for Id i
if tweet(i) : |Id k:has_aa_relation(k,i)|<=1;
上記のように制約の論理式が記述される。これで、has_aa_relation(k,i)を満たすk が最大一つとなる。
【0036】
また、発言間制約生成部254は、上記の制約に加え、基本的な制約として、推移律と呼ばれる、ツイートi とjにある関係R が成り立ち、ツイートjとkに同じくRが成り立つ場合、ツイートiとkにも同様の関係Rが成り立つという制約を生成する。たとえば、あるツイートに類似している2つのツイートj、k は類似しているという制約を生成する。
【0038】
aa_relation(i,j,"類似") & aa_relation(j,k,"類似") => aa_relation(i,k,"類似")
上記の論理式は、iとjが類似、jとkが類似ならばiとkも類似であることを表わす。
【0039】
上記の制約を表わす論理式があれば、他のツイート間の関係から別のツイート間の関係を推定することができる。
【0040】
また、推移律ではない制約として、以下に示すような論理式を生成してもよい。
【0041】
tweet(i)& !tweet(j) => !has_aa_relation(i,j)
上記の論理式は、ツイートとツイートでない定数の間には応答関係は存在しないことを表わす。
【0042】
上記の制約を表わす論理式があれば、現実的に意味をもたない状況を出力から除くことができる。
【0043】
モデル学習部26は、特徴量生成部25が出力した特徴(観測可能な述語の集合)及び発言間関係データベース22に記憶された発言間の関係(ラベル)を示す潜在述語の集合から、各述語及び潜在述語を用いて記述された各論理式の重みを学習する。学習にはMLNを用いる。MLNでは、ラベル間に対して予め記述した制約を表わす論理式、及び特徴量とラベルとの間に対して予め記述した制約を表わす論理式を満たしつつ、観測可能な述語について行われた推論結果が、正解データとして与えられた述語の集合に近づくように、各論理式の重みが決定される。ここで学習された論理式の重みの集合がモデルとなり、重みの集合を表わすモデルが、モデル記憶部27に記憶される。なお、ラベルは、発言間関係データベース22に記憶された発言間の関係である。
【0044】
MLNの学習について簡単に説明する。MLNは、述語の集合Xに対してある確率を与える。この確率を最大化する述語の集合(潜在述語を含む)が、MLNにおける推論結果となる。MLNは、実際には一階述語論理式の集合として表される。論理式には、違反を許容する重み付きの論理式と、違反を許容しない論理式を混在させることができ、制約を表わす論理式は、違反を許容しない論理式として記述される。
【0045】
述語の集合Xに対する確率は、述語を論理式中の変数に代入することで成立する(真となる)論理すべてについて重みの和をとり、exponentialを取り、正規化したものである。例えば、以下の(1)式で表される。
【0047】
ここで、Zは正規化のための定数であり、w
iがi番目の論理式に対応する重みである。n
iは、ある述語の集合X上で真をとる論理式、例えば、tweet(i) & tweet(j) & in_reply_to(i,j) のそれぞれについて、カウントが1増える。論理式の一部のみが真でもカウントはされない。この場合、論理式 tweet(i) & tweet(j) & in_reply_to(i,j) が真になる回数 n
iは、X中に、この論理式が真になる i と j の組が存在する数と同じとなる。
【0048】
なお、モデル学習部26は、素性として生成された観測可能な述語の集合、発言間関係データベース22に記憶された発言間の関係を表わす潜在述語(ラベル)を用いた論理式を、以下のように生成しておく。
【0049】
例えば、ツイートi、j、kがあるとき、以下のような述語が観測可能な述語として与えられる。
【0050】
tweet(i) (i はツイートである)
tweet(j) tweet(k) in_reply_to(i、j) (jがi に対してリプライしている)
in_reply_to(j、k) (kがjに対してリプライしている)
has_span(i、j、"1-5") (iとjの間隔が1~5の間)
【0051】
加えて、in_reply_to 属性が付いていて、has_aa_relation が成り立っているならば(真であれば)、tweet(i) & tweet(j) & in_reply_to(i,j) => has_aa_relation(i,j) という論理式を用意する。
【0052】
また、上記のような論理式は、以下に説明するように、述語に対する論理式のテンプレートに従って、重みと共に用意される。
【0053】
例えば、ツイートiとツイートjの間にin_reply_to属性がついていて、i、j間にhas_aa_relation が成り立っているならば(真であれば)、w_inreplyto という重みを得ることを示す以下のような記述が、人手によって与えられる。
【0054】
if tweet(i)&tweet(j)&in_reply_to(i、j) add[has_aa_relation(i、j)]*w_inreplyto
【0055】
これらは「tweet(i) & tweet(j) & in_reply_to(i,j)」ならば「has_aa_relation(i,j)」という意味の論理式がすべてのiとjにあてはまるツイートに対して用意される。また、それぞれの重みw_inreplytoがMLNに含まれる。
【0056】
また、MLNの学習では、has_aa_relation(i、j)、および、has_aa_relation(j、k)となったとすると、テンプレートで記述した論理式のうち、成立した論理式の重みをw_inreplyto*2 +w_hasspanのように計算し、確率を計算する。(w_inreplytoはi、jとj、kで二度真になっているため)このような、素性として与えられていない述語は潜在述語とよばれ、これが、いわゆる分類問題で言う出力するラベルにあたる。
【0057】
本実施の形態の例では、正例(正解データの潜在述語を含む述語集合)と負例(それ以外の述語集合)間のマージンを最大化する学習を行って、各述語に対する論理式の重みを求める。なお、尤度を最大化する学習を行ってもよい。
【0058】
入力発言集合データベース28は、入力部10により受け付けた推定対象データとしての発言の集合を記憶する。入力されたツイート集合、具体的には、ツイッターから取得できる情報である、ID、発言内容、in_reply_to属性、及びユーザ名からなるデータの集合が、入力発言集合データベース28に記憶される。
【0059】
特徴量生成部29は、上記の特徴量生成部25と同様に、形態素解析部251、固有表現抽出部252、発言間特徴生成部253、及び発言間制約生成部254を備え、入力発言集合データベース28に記憶されている発言の全ペアについてペア間の特徴を生成する。
【0060】
関係同定部31は、入力発言集合データベース28に記憶されている発言のペアの各々について、生成された特徴(観察可能な述語集合)に対して、モデル記憶部27に記憶されたモデルを用いて、尤もらしい関係性ラベル(潜在述語)の集合を得る。具体的には、上記(1)式中の尤度を最大化する述語集合を得る。これらが推定結果であり、同定された関係である。
【0061】
関係同定部31により推定された潜在述語が表わす発言の各ペアの関係性を、出力部30により出力する。
【0062】
<発言間関係推定装置の作用>
次に、本実施の形態に係る発言間関係推定装置100の作用について説明する。まず、発言の集合と、各発言間に対して手動で付与した発言間の関係を示すラベルの集合とが発言間関係推定装置100に入力されると、発言間関係推定装置100によって、入力された、発言の集合が、発言集合データベース21へ格納され、入力された、発言間の関係を示すラベルが、発言間関係データベース22に格納される。
【0063】
そして、発言間関係推定装置100によって、
図3に示すモデル学習処理ルーチンが実行される。
【0064】
まず、ステップS101において、発言集合データベース21に格納された各発言に対して、形態素解析処理を行う。次のステップS102では、発言集合データベース21に格納された各発言から、固有表現を抽出する。
【0065】
そして、ステップS103において、発言集合データベース21に格納された発言の全ペアの各々に対して、発言間の特徴である述語を生成する。次のステップS104では、予め定められた制約を表わす論理式を生成する。
【0066】
ステップS105において、発言間関係データベース22に格納された発言の各ペアの関係を示すラベルを用いて、潜在述語を生成し、発言集合データベース21に格納された発言の全ペアの各々に対して観察可能な述語の集合及び潜在述語からなる学習データを生成する。
【0067】
そして、ステップS106において、上記ステップS105で生成した学習データに基づいて、上記ステップS103で生成した制約を表わす論理式を満足し、かつ、上記(1)式で表される確率が最大となる、発言の各ペアの関係を示す潜在述語及び各述語を用いた各論理式の重みを学習する。次のステップS107では、上記ステップS106で学習された各論理式の重みを、モデル記憶部27に格納して、モデル学習処理ルーチンを終了する。
【0068】
そして、発言間の関係を推定する推定対象の発言集合が発言間関係推定装置100に入力されると、発言間関係推定装置100によって、入力された発言集合が、入力発言集合データベース28へ格納される。
【0069】
そして、発言間関係推定装置100によって、
図4に示す発言間関係推定処理ルーチンが実行される。
【0070】
ステップS111において、入力発言集合データベース28に格納された各発言に対して、形態素解析処理を行う。次のステップS112では、入力発言集合データベース28に格納された各発言から、固有表現を抽出する。
【0071】
そして、ステップS113において、入力発言集合データベース28に格納された発言の全ペアの各々に対して、発言間の特徴である述語を生成する。次のステップS114では、予め定められた制約を表わす論理式を生成する。
【0072】
ステップS115において、発言の全ペアの各々に対して、上記ステップS113で生成された発言間の特徴である述語の集合、上記ステップS114で生成された制約の論理式、及び学習されたモデル(各論理式の重み)に基づいて、当該ペアに対する潜在述語を推定することにより、当該ペアの関係を推定する。
【0073】
そして、ステップS116において、上記ステップS115で推定された各ペアの関係を出力部30により出力して、発言間関係推定処理ルーチンを終了する。
【0074】
<実施例>
学習データを元にMLNによってモデルを学習し、交差検定によって、上記の実施の形態で説明した手法の評価を行った。ここでは、三つの条件で比較した。3つの条件は、ツイッター向け素性有り&制約有り、ツイッター向け素性無し&制約あり、ツイッター向け素性無し&ツイッター向け制約無しである。ツイッター向け素性とは、上記で説明した「in_reply_to」、「reply」、「sameuser」、「latestutt」、及び「firstutt」を含む述語である。ツイッター向け制約とは、上記の実施の形態で説明した、発言は関係を持つ先が一つであるという制約である。なお、ここでは、発言間に関係があるかどうか(ツイート間について、has_aa_relationが真か)を推定することを行う。その他の潜在ラベルについても同様の推定は可能である。
【0075】
図5に実験結果を示す。ここで、Recallは再現率を表し、関係性があるツイートペアのうち、いくつを正しく関係があると判定できたかを表す。Precisionは適合率を表し、学習モデルに基づいて関係性があると推定したツイートペアのうち、いくつが実際に正しかったかを表す。F1はRecallとPrecisionの調和平均である。この値が高ければ、正確に漏れなく関係があることを推定できていると言える。F1値に着目すると、ツイッター向けの素性および制約を入れることで、性能が改善されていることが分かる。これにより、本実施の形態で提案する発言間の特徴の有効性が示された。
【0076】
以上説明したように、本実施の形態に係る発言間関係推定装置によれば、発言(ツイート)間の各々について、発言間の内容の関連性を示す述語と、発言間の応答関係を示す述語と、先の発言が同一のユーザ情報が付与された発言のうちの最初の発言であることを示す述語と、先の発言が同一のユーザ情報が付与された発言のうちの最新の発言であることを示す述語とを、発言間の特徴として抽出すると共に、発言と関係がある他の発言が1つである制約を示す論理式を生成し、抽出された発言間の特徴と、生成された制約の論理式と、予め学習されたモデルとに基づいて、マルコフ論理ネットワークにより、発言間の関係を示す潜在述語を推定することにより、発言間の関係を精度よく推定することができる。
【0077】
また、発言対象のユーザ名、発言者のユーザID、システムが付与する発言同士の応答関係を、発言間の関係性の同定に用いることで、関係性の同定精度を向上させる。発言間の関係性の同定精度が改善し、インターネット上の膨大な発言を高精度で構造化できるようになる。発言が高精度に構造化できれば、膨大な情報から効率的に内容を閲覧したり、情報を抽出したりすることが可能となる。
【0078】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0079】
例えば、発言以外の文書データ間の関係を推定することに、本発明を適用してもよい。
【0080】
また、潜在述語として、関係があることを示す潜在述語を用いて、発言間に関係があるか否かを推定する場合を例に説明したが、詳細な関係性を示す潜在述語を用いてもよい。この場合には、例えば、「賛成」及び「反対」、並びに、「矛盾」、「類似」、「演繹」及び「帰納」の各々を示す潜在述語を追加して、発言間の関係性を推定するようにしてもよい。
【0081】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。