説明

感情極性推定装置、感情極性推定方法及び感情極性推定処理プログラム

【課題】テキスト全体または1文に書かれている言語表現の感情極性の自動推定を高精度に行う。
【解決手段】推定すべき性質を示す述語間の関係を記述した論理式を感情極性の推定に用いる論理式として保存し、上記論理式により構築されるマルコフ論理ネットワークにより、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、上記マルコフ論理ネットワークについて、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習処理モジュールにより学習し、得られた上記感情極性推定用論理式の重みデータを保存し、保存されたテキストデータについて、保存された感情極性推定用論理式の重みデータを用いて、1文感情極性とテキスト全体の感情極性を同時に推定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、単語などの言語表現の感情極性を自動推定する感情極性推定装置、感情極性推定方法及び感情極性推定処理プログラムに関する。
【背景技術】
【0002】
近年、文書データにおける感情(意見や態度を含む)の判別は、様々な応用において重要になってきている。例えば、インターネット上の電子掲示板に書き込まれたある製品に関する消費者の意見が特定・判別できると、その製品に関する広範囲なサーベイが可能になる。また、すべての回答に人間を通すことなくアンケートの概要を把握することも可能になる。また、ブログなどの流行により個人の意見を容易に発信できるようになり、これらから有用な情報を抽出する技術の必要性が増している。特に、テキストからその書き手の抱いている感情の極性( 例えば、ポジティブ“快”、もしくはネガティブ“不快”)を推定することは、商品についての意見分析や市場調査などにおいて有効であると考えられ、評判抽出や感情推定の研究が広く行われている。そのような自動特定・判別を実現するための重要なソースとして、各単語の感情極性( ポジティブ“望ましい”、もしくはネガティブ“望ましくない”) を挙げることができる。最も単純には、ある文書においてポジティブな単語が多く出現している場合、素の文書全体もポジティブであると推測ができる。
【0003】
従来、単語などの言語表現の感情極性を自動抽出する手法として、感情極性の系列ラベルをスピン系モデルを用いた語彙ネットワークにて表現する手法(例えば、特許文献1参照)や1文とテキスト全体の感情極性を同時に推定する方法(例えば、非特許文献1参照)が提案されている。
【0004】
上記非特許文献1で提案されている手法では、文の感情極性が他の文の極性だけでなく、テキストの極性にも依存しているという事実に基づき、1文とテキスト全体の感情極性を同時に推定することで性能の向上を図っている。実際には系列ラベリングとして扱い、素性の構築においては隣接する文の極性とテキスト全体の極性を考慮している。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−338301号公報
【非特許文献】
【0006】
【非特許文献1】McDonald, R., Hannan, K., Neylon, T., Wells, M. and Reynar, J.: Structured Models for Fine-to-coarse Sentiment Analysis, Proceedings of the 45th Annual Meeting of the Association of Computational Linguistics, pp. 432{439 (2007).
【非特許文献2】山本和英,齋藤真実: 用例利用型による文間接続関係の同定,自然言語処理,Vol. 15, No. 3,pp. 21-51 (2008)
【非特許文献3】高村大也,乾 孝司,奥村 学: スピンモデルによる単語の感情極性抽出,情報処理学会論文誌,Vol. 47, No. 2, pp. 627-637 (2006)
【発明の概要】
【発明が解決しようとする課題】
【0007】
テキストの感情極性推定では、テキスト全体、または文や文中の句、語に対してそれらが肯定的な表現か否定的な表現かを推定する。
【0008】
従来、提案されている多くの感情極性推定手法では、例えば文や句などといった特定の単位での極性を対象としている。
【0009】
上記特許文献1で提案されている感情極性の系列ラベルをスピン系モデルを用いた語彙ネットワークにて表現する手法では、1文とテキスト全体の同時推定は行っていない。
【0010】
ところで、例えば、全体として肯定的な意見を述べているテキストでは肯定的な意見を述べている文が比較的多く出現すると考えられる。また、文の極性に関しても、隣接している2文の接続関係が逆接であれば、それらの極性は一致しないというような関係が存在すると考えられる。しかし、これらの関係は多くの場合において成立するが、必ずしも成り立つとは限らない。
【0011】
また、非特許文献1で提案されている手法では、1文とテキスト全体の感情極性を同時に推定するようにしているが、テキストの構造を明示的な形で利用していない。
【0012】
そこで、本発明の目的は、上述の如き従来の実情に鑑み、テキスト全体または1文に書かれている言語表現の感情極性(表現が与える印象のことであり、例えば、快・不快の感情など)の自動推定を高精度に行うことができる感情極性推定装置、感情極性推定方法及び感情極性推定処理プログラムを提供することにある。
【0013】
本発明の更に他の目的、本発明によって得られる具体的な利点は、以下に説明される実施の形態の説明から一層明らかにされる。
【課題を解決するための手段】
【0014】
本発明では、テキスト全体または1文に書かれている快・不快の感情(感情極性)を求めるに当たり、1文とテキスト全体の感情極性を同時に推定する時、マルコフ論理ネットワークを用いて、テキスト構造と各極性間の関係を明示的に考慮する。
【0015】
すなわち、本発明は、感情極性推定装置であって、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを保存する論理式データ保存手段と、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを保存する学習コーパスデータ保存手段と、上記学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習する学習処理モジュールと、上記学習処理モジュールによる学習処理によって得られた上記感情極性推定用論理式の重みデータを保存する重みデータ保存手段と、感情極性を推定するテキストデータを保存するテキストデータ保存手段と、上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理モジュールによる学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定する感情極性推定処理を行う推定処理モジュールとを備えることを特徴とする。
【0016】
本発明に係る感情極性推定装置において、上記論理式データ保存手段には、感情極性推定用の論理式データとして、テキストの極性に関する論理式(local formula)及び文の極性に関する論理式(local formula)と、文脈による文の極性の制約と文の極性とテキストの極性との関係を記述した論理式(global formula)を示す論理式データを保存する。
【0017】
また、本発明は、感情極性推定方法であって、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを論理式データ保存手段に保存し、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを学習コーパスデータ保存手段に保存し、上記学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、学習処理モジュールにより、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習し、上記学習処理モジュールによる学習処理によって得られた上記感情極性推定用論理式の重みデータを重みデータ保存手段に保存し、感情極性を推定するテキストデータをテキストデータ保存手段に保存し、上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定することを特徴とする。
【0018】
さらに、本発明は、感情極性を推定するテキストデータを保存するテキストデータ保存手段に保存されたテキストデータについて感情極性を推定する感情極性推定装置に備えられるコンピュータにより実行される感情極性推定処理プログラムであって、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを保存する論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを保存する学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習する学習処理モジュールと、上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理モジュールによる学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定する感情極性推定処理を行う推定処理モジュールとして、上記コンピュータを機能させることを特徴とする。
【発明の効果】
【0019】
本発明では、テキストの構造を考慮し、文とテキストの極性間の関係を制約として明示的にモデルに組み入れ、この関係が成立するようにそれぞれの極性を推定することで、テキストの感情極性推定処理の性能の向上させることができる。
【図面の簡単な説明】
【0020】
【図1】本発明を適用した感情極性推定装置の構成を示すブロック図である。
【図2】上記感情極性推定装置の機能構成を示すブロック図である。
【図3】上記感情極性推定装置において学習処理モジュールにより実行される感情極性推定用論理式の重みを学習する学習処理の手順を示すフローチャートである。
【図4】上記感情極性推定装置に備えられた推定処理モジュールの機能を示すブロック図である。
【図5】上記感情極性推定装置において推定処理モジュールにより実行されるテキストデータの感情極性推定処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0021】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。なお、本発明は以下の例に限定されるものではなく、本発明の要旨を逸脱しない範囲で、任意に変更可能であることは言うまでもない。
【0022】
本発明は、例えば図1に示すような構成の感情極性推定装置100に適用される。
【0023】
この感情極性推定装置100は、バス10を介して接続された中央制御部20、記憶部30、入力インターフェース部40、出力インターフェース部50、通信インターフェース部60などからなる。
【0024】
中央制御部20は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23などからなる。
【0025】
記憶部30は、ハードディスクやその他の不揮発性メモリからなる記憶装置であって、この感情極性推定装置100により実行される感情極性推定処理プログラムPPG 、感情極性の推定に用いる論理式を示す論理式データDLF、上記論理式による感情極性の推定に用いる重み係数を示す重みデータDW、上記論理式による感情極性の推定に用いる重み係数を学習により求めるための学習コーパスデータDCP、感情極性を推定するテキストデータDTXなどを記憶している。
【0026】
入力インターフェース部40は、キーボード、マウス、マイクロフォンなど入力装置からなる。
【0027】
出力インターフェース部50は、ディスプレイ装置、プリンタ装置スピーカなどの出力装置からなる。
【0028】
通信インターフェース部60は、この感情極性推定装置100が例えばインターネットなどのネットワークを介して外部と通信するためのモデムなどからなる。
【0029】
上記記憶部30には、上記入力インターフェース部40や通信インターフェース部60を介して、この感情極性推定装置100により上記感情極性推定処理プログラムPPGを実行するのに必要な上記論理式データDLF、上記学習コーパスデータDCP、上記テキストデータDTXなどが蓄えられる。
【0030】
この感情極性推定装置100において、上記記憶部30は、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データDLFを保存する論理式データ保存手段として機能する。
【0031】
また、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータDCPを保存する学習コーパスデータ保存手段として機能する。
【0032】
また、上記記憶部30は、上記学習処理モジュール20Aによる学習処理によって得られた上記感情極性推定用論理式の重みデータDWを保存する重みデータ保存手段として機能する。
【0033】
さらに、上記記憶部30は、感情極性を推定するテキストデータDTXを保存するテキストデータ保存手段として機能する。
【0034】
そして、この感情極性推定装置100の記憶部30に記憶されている感情極性推定処理プログラムPPGは、上記記憶部30に記憶されている論理式データDLFにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、上記記憶部30に記憶されている学習コーパスデータDCPを用いて、上記マルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習する学習処理モジュール20Aと、上記記憶部30に記憶されているテキストデータについて、上記学習処理モジュール20Aによる学習処理により上記記憶部30に保存された感情極性推定用論理式の重みデータDWを用いて、上記記憶部30に記憶されている論理式データDLFにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定する感情極性推定処理を行う推定処理モジュール20Bとして、上記感情極性推定装置100に備えられる中央制御部20のCPU21を機能させる。
【0035】
すなわち、この感情極性推定装置100は、その機能構成を図2に示すように、中央制御部20のCPU21が感情極性推定用論理式の重みDWを学習する学習処理を実行する学習処理モジュール20Aと、上記学習処理により得られた重みデータDWを用いて感情極性推定用論理式にしたがって、テキストデータDTXについて感情極性推定処理を実行する推定処理モジュール20Bとして機能する。すなわち、上記中央制御部20のCPU21は、ROM22に記憶されているブートプログラムに従って起動され、上記記憶部30に記憶されている感情極性推定処理プログラムPPGに従って、学習処理モジュール20Aにより、学習コーパスデータDCPを用いて感情極性推定用の論理式データDLFにて示される感情極性推定用論理式の重みを学習する学習処理を実行し、推定処理モジュール20Bにより、上記学習処理により得られた重みデータDWを用いて、感情極性推定用の論理式データDLFにて示される感情極性推定用論理式にしたがって、テキストデータについて感情極性推定処理を実行する。
【0036】
この感情極性推定装置100では、文とテキストの極性間の関係を制約として明示的にモデルに組み入れ、この関係が成立するようにそれぞれの極性を推定することで、性能の向上を図っている。
【0037】
すなわち、例えば、全体として肯定的な意見を述べているテキストでは肯定的な意見を述べている文が比較的多く出現すると考えられ、また、文の極性に関しても、隣接している2文の接続関係が逆接であれば、それらの極性は一致しないというような関係が存在すると考えられるが、これらの関係は多くの場合において成立するが、必ずしも成り立つとは限らないので、この感情極性推定装置100では、マルコフ論理ネットワーク(MLN:Markov Logic Network)を用いて、1文とテキスト全体の感情極性を同時に推定する。
【0038】
ここで、マルコフ論理ネットワークとは、一階述語論理とマルコフネットワーク(Markov Network)を組み合わせたものである。一階述語論理はドメインの知識を論理式という形で明示的に考慮することができるが、規則として与えられている論理式が偽となるような述語を1つでも含んでいる可能世界は充足不能と見なされるため、絶対に成立することが保証されている規則しか扱えないという問題がある。ここで可能世界とは定数のみを項とする述語(ground atom) の集合である。
【0039】
これに対して、マルコフ論理ネットワークでは、述語論理の各論理式に重みを割り当てることで、確率的に可能世界のもっともらしさを表すことができ、論理式の違反を許容することが可能となる。通常の一階述語論理はこの重みが無限大になったものと捉えることができる。従って、マルコフ論理ネットワークでは、違反を許容する論理式と、違反を許さない論理式を同時に扱うことも可能である。
【0040】
マルコフ論理ネットワーク(MLN:Markov Logic Network)は、一階述語論理の論理式Fとそれに対応する実数値の重みwとの組の集合として定義される。可能世界xの確率分布は次の(1)式で与えられる。
【0041】
【数1】

【0042】
ここで、n(x)はxにおいて真となる論理式Fのground formulaの数、Zは正規化項である。ground formulaとは、論理式F中の変数に定数を代入して得られる論理式のことである。この枠組みの利点は複数の関係推定問題を同時に扱えることだけでなく、推定すべき関係間の制約も扱えることである。
【0043】
この感情極性推定装置100では、マルコフ論理ネットワークの実装の一つであるMarkov thebeast(http://code.google.com/p/thebeast/)での呼称に倣い、データから得られる性質を示す述語をobserved predicate、推定すべき性質を示す述語をhidden predicate と呼ぶ。observed predicateは、一般的な機械学習手法における素性に対応する。また、同様にhidden predicate はラベルに対応する。また、observed predicateとhidden predicateとの関係を記述した論理式をlocal formulaと呼び、hidden predicate 間の関係を記述した論理式をglobal formulaと呼ぶ。
【0044】
この感情極性推定装置100では、入力としてテキストが与えられるとそのテキスト中の各文についての極性とテキストの極性を推定する。ここで、推定する極性は、文、または文章が肯定的な意見を述べている(“P”)、否定的な意見を述べている(“N”)、または、そのどちらでもない(“C”)の3種類である。
【0045】
この感情極性推定装置100において、使用する各述語(observed predicate,hidden predicate)を表1、表2に示す。
【0046】
【表1】

【0047】
【表2】

【0048】
例えば、word(s,l,w)は、文sの位置lに語wが存在することを示し、spol(s,p)は文sの極性がpであることを示す。文末表現は文の最後の節の自立語より後の表層である。例えば、“ACアダプタは白にして欲しい。”という文では“て欲しい”が文末表現に当たる。文の接続詞の種類は「逆接」や「累加」といった前後の意味関係に基づいた接続詞の分類である。ここでは、非特許文献2に挙げられている7種類の接続関係、すなわち、「累加」、「加反」、「因果」、「並列」、「転換」、「例示」、「その他」を利用した。
【0049】
次に、この感情極性推定装置100において、使用した論理式について述べる。
【0050】
先ず、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)について説明する。
【0051】
各論理式中のsやlは変数を表し、ダブルクォーテーションで囲まれたものは定数を表し、変数の位置にあるアンダースコアは任意の値であることを表す。また、変数の前の“+”はその変数を実際の定数で置き換えたものに展開することを示す。
【0052】
例えば、spol(s,+p)という述語を含む論理式は,実際にはspol(s,“P”),spol(s,“C”),spol(s,“N”)のそれぞれに置き換えられた論理式である。ここでは、簡略化のため、数式で用いられる関係(“<”など)については,一般的な記法で記述している。
【0053】
基本的に、テキストの極性に関する論理式(local formula)は文の極性に関するものと同様のものを利用しているため、ここでは、文の極性に関する論理式(local formula)とテキストの極性にしか用いていない論理式(local formula)について述べる。
【0054】
文中の語と文の極性の関係は、次の(2)式にて示す。
【0055】
【数2】

【0056】
この(2)式は、Bag-of-Words(BOW)素性とみなすことができる。
【0057】
また、極性を持つ語と文の極性の関係は、次の(3)式にて示す。
【0058】
【数3】

【0059】
この(3)式は、文中に極性を持つ語が存在していた場合、その極性が文の極性になるということを示す。
【0060】
否定による極性の変更は、次の(4)式にて示す。
【0061】
【数4】

【0062】
この(4)式は、否定表現を含む文の極性についての記述である。極性を持つ語の近くに否定語が出現しているならば、文の極性はその語の極性とは異なると考えられる。
【0063】
極性を持つ語とその他の語との共起は、次の(5)式にて示す。
【0064】
【数5】

【0065】
この(5)式は、極性を持つ語とその周囲の語の共起についての記述である。
【0066】
語の共起は、次の(6)式にて示す。
【0067】
【数6】

【0068】
この(6)式は、文中に存在する語の共起と文の極性の関係を示す。ここでの共起に関しても上記と同様に近接している語の共起のみを考慮する。
【0069】
文末表現は、次の(7)式にて示す。
【0070】
【数7】

【0071】
この(7)式は、文末表現と文の極性の関係を示す。
【0072】
隣接する文の特徴とテキストの極性の関係は、次の(8)式、(9)式にて示す。
【0073】
【数8】

【0074】
【数9】

【0075】
テキストの極性の決定には文内の情報だけではなく、文間の関係を考慮する必要がある。上記(8)式、(9)式は、隣接している2文における文末表現の遷移や各文中に含まれる極性を持つ語とテキストの極性の関係を示す。
【0076】
次に、推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)について説明する。
【0077】
global formulには文脈による文の極性の制約と文の極性とテキストの極性との関係を記述する。
【0078】
接続関係による文の極性間の関係は、次の(10)式、(11)式にて示す。
【0079】
【数10】

【0080】
【数11】

【0081】
隣接する文の接続関係によって、前文の極性と後文の極性の関係が異なると考えられる。例えば、逆接の関係にあれば後文の極性は前文の極性とは異なるであろうし、また、同じ話題が連続するような場合では前文の極性と後文の極性は同じになりやすい。上記(10)式、(11)式は、接続関係による文の極性の関係を示す。
【0082】
これら以外の次の(12)式にて示す接続関係と極性間の関係に関しては、データから学習する。
【0083】
【数12】

【0084】
最後の文の極性とテキストの極性の関係は、次の(13)式、(14)式にて示す。
【0085】
【数13】

【0086】
【数14】

【0087】
テキストの最後では著者の意見がまとめられていることが多く、従って最後の文の極性がそのテキスト全体の極性として捉えられると考えられる。上記(13)式、(14)式は、その関係を示している。極性が“どちらでもない”と判定されるものに関しては特に考慮しない。
【0088】
テキストの極性と文の極性の関係は、次の(15)式、(16)式にて示す。
【0089】
【数15】

【0090】
【数16】

【0091】
テキスト全体が肯定的な意見を述べているのならば、そのテキスト中には否定的な意見が出現することは少ないと考えられる。また、その逆も同様であると考えられる。
【0092】
この感情極性推定装置100では、感情極性推定用の論理式データDLFとして、テキストの極性に関する論理式(local formula)及び文の極性に関する論理式(local formula)と、文脈による文の極性の制約と文の極性とテキストの極性との関係を記述した論理式(global formula)が上記記憶部30に記憶されている。
【0093】
そして、この感情極性推定装置100において、学習処理モジュール20Aは、図3のフローチャートに示す手順に従って、感情極性推定用論理式の重みを学習する学習処理を実行する。
【0094】
すなわち、学習処理モジュール20Aは、上記記憶部30に学習コーパスデータDCPとして記憶されている感情極性推定用論理式の重みを学習するデータと正解を学習コーパスから受け取るとともに(ステップS1)、上記記憶部30に感情極性推定用の論理式データDLFとして記憶されているテキストの極性に関する論理式(local formula)及び文の極性に関する論理式(local formula)と、文脈による文の極性の制約と文の極性とテキストの極性との関係を記述した論理式(global formula)に基づいて、マルコフ論理ネットワーク(MLN:Markov Logic Network)を構築し(ステップS2)、構築したマルコフ論理ネットワークを用いて、現在の重みを使ってデータからラベルすなわち文又はテキストの感情極性を推定し(ステップS3)、推定したラベルが正解と異なるか否かを判定する(ステップS4)。
【0095】
上記学習処理モジュール20Aは、このステップS4における判定結果が「YES」、すなわち、推定したラベルが正解と異なる場合には、データにしたがって重みを更新して(ステップS5)、更新した重みを新たな重みデータとして上記記憶部30に保存し(ステップS6)、上記ステップS2に戻って、上記記憶部30に保存した新たな重みデータを用いマルコフ論理ネットワーク(MLN:Markov Logic Network)を再構築するとともに、上記学習コーパスに学習すべきデータが残っているか否かを判定し(ステップS7)、このステップS7における判定結果が「YES」、すなわち、上記学習コーパスに学習すべきデータが残っている場合には、上記ステップS3に戻って、上記ステップS2において再構築したマルコフ論理ネットワークを用いて使ってデータからラベルを推定し、上記ステップS4において、推定したラベルが正解と異なるか否かを判定する処理を繰り返し行う。
【0096】
そして、上記学習処理モジュール20Aは、上記ステップS7における判定結果が「NO」、すなわち、上記学習コーパスに学習すべきデータがなくなるまで、上記ステップS2〜ステップS7の処理を繰り返し行い、上記ステップS4における判定結果が「NO」、すなわち、上記学習コーパスから受け取ったデータから上記マルコフ論理ネットワークを用いて推定したラベルが正解と一致する重みデータDWを感情極性推定用論理式の重みとして上記記憶部30に保存して学習処理を終了する。
【0097】
また、この感情極性推定装置100において、推定処理モジュール20Bは、図4に示すように、上記学習処理モジュール20Aによる学習処理により得られた重みデータDWと、上記記憶部30に感情極性推定用の論理式データDLFとして記憶されているテキストの極性に関する論理式(local formula)及び文の極性に関する論理式(local formula)と、文脈による文の極性の制約と文の極性とテキストの極性との関係を記述した論理式(global formula)に基づいて、構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)を用いて、テキストデータDTXについてラベルの推定処理を行うことにより、文の極性とテキストの極性を同時に推定した結果を出力する。
【0098】
上記推定処理モジュール20Bにより実行されるテキストデータの感情極性推定処理の詳細を図5のフローチャートに示す。
【0099】
図5のフローチャートにおいて、iは繰り返しカウンタを示し、y,y’は推定されたラベル集合を示している。上記推定処理モジュール20Bによる感情極性推定処理では、先ず、i=0,y’=0、すなわち、繰り返しカウンタの値iとラベル集合の値y’を初期化し(ステップS11)、繰り返しカウンタの値iをインクリメントして(ステップS12)、上記学習処理モジュール20Aによる学習処理により得られた重みデータDWと、上記記憶部30に感情極性推定用の論理式データDLFとして記憶されているテキストの極性に関するlocal formul及びと文の極性に関する論理式(local formula)と、文脈による文の極性の制約と文の極性とテキストの極性との関係を記述した論理式(global formula)に基づいて、構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)を用いて、ラベル集合yを次に示す(17)式により推定する(ステップS13)。
【0100】
【数17】

【0101】
ここで、Gは、論理式の基礎化に使われる代入の集合であって、論理式中のどの変数にどの定数を代入するかという割り当ての集合を示している。ここで、論理式の基礎化とは、論理式中の全ての変数に定数を代入することである。solve(G,x)は、与えられたマルコフ論理ネットワーク(MLN:Markov Logic Network)を用いて集合Gと入力データxからのラベルの推定を、与えられた制約条件を満たすように、目的関数を最大化させる解を探すILP(整数線形計画法)によって行う。ここでは、目的関数は、次に示す(18)式であり、制約条件はマルコフ論理ネットワーク(MLN:Markov Logic Network)中の論理式から作られる。
【0102】
【数18】

【0103】
s(y,x)は(18)式で与えられるデータとラベルから得られるスコアである。ここでのwやfは与えられているマルコフ論理ネットワーク(MLN:Markov Logic Network)から得る。
【0104】
次に、上記推定処理モジュール20Bは、
s(y,x)>s(y’,x)
すなわち、(17)式で与えられるデータとラベルから得られるスコアs(y,x)が、先に求めたスコアs(y’,x)よりも大きいか否かを判定する(ステップS14)。
【0105】
そして、上記推定処理モジュール20Bは、上記ステップS14における判定結果が「YES」、すなわち、求めたスコアs(y,x)が先に求めたスコアs(y’,x)よりも大きい場合には、y’=yとして(ステップS15)、G=Gi−1の更新処理を行い(ステップS16)、また、上記ステップS14における判定結果が「NO」、すなわち、求めたスコアs(y,x)が先に求めたスコアs(y’,x)よりも大きくない場合には、そのまま上記ステップS16に移ってG=Gi−1の更新処理を行う。
【0106】
次に、上記推定処理モジュール20Bは、G=Gi−1又は繰り返しの終了であるか否かを判定し(ステップS17)、その判定結果が「NO」、すなわち、終了でない場合には、上記ステップS12に戻って繰り返しカウンタの値iをインクリメントし、上記ステップS17における判定結果が「YES」、すなわち、終了になるまで、上記ステップS12〜ステップS17の処理を繰り返し行い、全てのデータ(x)についてラベルの推定を行い、推定したラベルを出力する(ステップS18)。
【0107】
なお、この感情極性推定装置100において、実際のマルコフ論理ネットワーク(MLN:Markov Logic Network)の学習処理、ラベルの推定処理には、マルコフ論理ネットワークの実装の一つであるMarkov thebeast(http://code.google.com/p/thebeast/)というツールを使用した。
【0108】
このような構成の感情極性推定装置100における感情極性推定モデルの有効性を検証するため、Amazon.co.jp(http://www.amazon.co.jp)の掃除機とMP3プレイヤーのカテゴリに属する製品に関するレビューのデータ用いて、次のような評価実験を行った。
【0109】
この評価実験において、データにはレビュー中の各文について、評価者が肯定的,或いは否定的な意見を述べていると思われる箇所にその極性がアノテーションされている。アノテーションは各レビューに対して1人の作業者が行っている。このデータは文やテキストに対してのアノテーションは行われていないため、文については文中の最後の位置にあるアノテーションの極性を文の極性として扱っている。テキストについては,評価者によってレビューに対して付与されている星の数による評価値を利用し、星1,2を否定的な意見を述べている、星4,5を肯定的な意見を述べている、星3をどちらでもないとした。実験に使用したデータに含まれるテキストの極性の割合を表3に示す。
【0110】
【表3】

【0111】
文の極性の識別モデルとテキストの極性の識別モデルとし、one-versus-the-rest分類器による3種類の極性のいずれかを推定する3値分類のモデルと、最初に極性の有無の判定を行い、極性ありと判定された事例に対して、肯定的か否定的かを推定する段階的なモデルの2種類で実験を行った。また、感情極性推定装置100における感情極性推定モデルでは、大域的な制約の効果を見るため、局所的な制約のみによるモデルについての評価も行った。
【0112】
observed predicateに用いる語の極性に関しては、非特許文献3の単語感情極性対応表(http://www.lr.pi.titech.ac.jp/~takamura/pndic ja.html)を利用した。この対応表には各単語に対して極性の強さを示す値が付けられており、本実験ではこの値が0.7以上の単語を“P”、−0.7以下を“N”として扱った。単語の極性に関しては“C”(どちらでもない)は考慮していない。否定表現については助動詞“ない”のみを考慮した。単語の極性の決定に使用した閾値と語の共起に関する論理式(local formula)中のnの値は実験で開発データセットを用いて同様の実験を行い、もっとも精度の高かった数値を使用した。マルコフ論理ネットワークの実装にはMarkov thebeast(http://code.google.com/p/thebeast/)を、ベースラインにはSVMlight(http://www.cs.cornell.edu/people/tj/svm_light/)を利用した。実験は各データに対して10分割交差検定を行い、精度で評価した結果を表4に示す。
【0113】
【表4】

【0114】
“BL(multi)”は3値分類によるベースライン,“BL(cascade)”は2段階の推定によるベースライン、“Joint”は感情極性推定装置100における感情極性推定モデル、“Joint(local)”は、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)のみを用いたモデルを表す。斜体はベースラインを下回ったものを表す。
【0115】
ベースラインに比べて、上記感情極性推定装置100における感情極性推定モデルの方が良い結果を得ることができた。また、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)のみを用いたモデルは、掃除機では文の極性の精度では2段階モデルでのベースラインを下回っているものの、テキストの極性ではそれを上回っている。また、推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を用いたモデルの方は両方の製品において良い結果を得ることができており、文の極性とテキスト間の極性には関係があり、その関係を考慮することが性能の向上に繋がることを示している。
【0116】
上述の如く、マルコフ論理ネットワーク(MLN:Markov Logic Network)ではラベル間の関係を記述でき、更に、その関係が満たされないことを許容できるため、“必ず満たさなければいけない”関係だけでなく、“満たした方が好ましい”関係を扱うことができ、これにより接続関係による文の極性間の関係や文とテキストの極性の傾向などをモデルに組み込むことができ、マルコフ論理ネットワーク(MLN:Markov Logic Network)による文とテキストの感情極性の同時推定を行うようにした上記感情極性推定装置100では、テキストの構造を考慮し、文とテキストの極性間の関係を制約として明示的にモデルに組み入れ、この関係が成立するようにそれぞれの極性を推定することで、感情極性推定処理の性能の向上を図ることができる。
【0117】
上記感情極性推定装置100のように、データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを論理式データ保存手段に保存し、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを学習コーパスデータ保存手段に保存し、上記学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習し、上記学習処理モジュールによる学習処理によって得られた上記感情極性推定用論理式の重みデータを重みデータ保存手段に保存し、感情極性を推定するテキストデータをテキストデータ保存手段に保存し、上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定することによって、感情極性推定処理の性能の向上を図ることができる。
【符号の説明】
【0118】
10 バス、
20 中央制御部、
20A 学習処理モジュール、
20B 推定処理モジュール、
21 CPU、
22 ROM、
23 RAM
30 記憶部、
40 入力インターフェース部、
50 出力インターフェース部、
60 通信インターフェース部、
100 感情極性推定装置

【特許請求の範囲】
【請求項1】
データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを保存する論理式データ保存手段と、
上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを保存する学習コーパスデータ保存手段と、
上記学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習する学習処理モジュールと、
上記学習処理モジュールによる学習処理によって得られた上記感情極性推定用論理式の重みデータを保存する重みデータ保存手段と、
感情極性を推定するテキストデータを保存するテキストデータ保存手段と、
上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理モジュールによる学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定する感情極性推定処理を行う推定処理モジュールと
を備えることを特徴とする感情極性推定装置。
【請求項2】
上記論理式データ保存手段には、感情極性推定用の論理式データとして、テキストの極性に関する論理式(local formula)及び文の極性に関する論理式(local formula)と、文脈による文の極性の制約と文の極性とテキストの極性との関係を記述した論理式(global formula)を示す論理式データを保存することを特徴とする請求項1記載の感情極性推定装置。
【請求項3】
データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを論理式データ保存手段に保存し、
上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを学習コーパスデータ保存手段に保存し、
上記学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、学習処理モジュールにより、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習し、
上記学習処理モジュールによる学習処理によって得られた上記感情極性推定用論理式の重みデータを重みデータ保存手段に保存し、
感情極性を推定するテキストデータをテキストデータ保存手段に保存し、
上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理モジュールによる学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定する
ことを特徴とする感情極性推定方法。
【請求項4】
感情極性を推定するテキストデータを保存するテキストデータ保存手段に保存されたテキストデータについて感情極性を推定する感情極性推定装置に備えられるコンピュータにより実行される感情極性推定処理プログラムであって、
データから得られる性質を示す述語(observed predicate)と推定すべき性質を示す述語(hidden predicate)の関係を記述した論理式(local formula)と、上記推定すべき性質を示す述語(hidden predicate) 間の関係を記述した論理式(global formula)を感情極性の推定に用いる論理式として示す論理式データを保存する論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習するための学習コーパスデータを保存する学習コーパスデータ保存手段に保存された学習コーパスデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)について、1文感情極性とテキスト全体の感情極性を同時に推定するための感情極性推定用論理式の重みを学習する学習処理モジュールと、
上記テキストデータ保存手段に保存されたテキストデータについて、上記学習処理モジュールによる学習処理により上記重みデータ保存手段に保存された感情極性推定用論理式の重みデータを用いて、上記論理式データ保存手段に保存されている論理式データにより示される論理式を用いて構築されるマルコフ論理ネットワーク(MLN:Markov Logic Network)により、1文感情極性とテキスト全体の感情極性を同時に推定する感情極性推定処理を行う推定処理モジュールとして、
上記コンピュータを機能させることを特徴とする感情極性推定処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate