(57)【特許請求の範囲】
【請求項１】
マイクロブログの入力テキストを、利用者が与える任意の指定文字列に関連するか否かを分類する、マイクロブログテキスト分類装置であって、
前記指定文字列が含まれる指定テキストを記憶する指定テキスト記憶手段と、
前記指定テキストを除く比較テキストを記憶する比較テキスト記憶手段と、
連結されたテキストを格納する連結テキスト記憶手段と、
前記入力テキストに、前記指定文字列が含まれるか否かを判定するテキスト解析手段と、
前記指定テキスト記憶手段に格納されているテキスト集合を連結した指定連結テキストと、該指定連結テキストと前記入力テキストを連結したテキストと、前記比較テキスト記憶手段に格納されているテキスト集合を連結した比較連結テキストと、該比較連結テキストと該入力テキストを連結したテキストを前記連結テキスト記憶手段に出力するテキスト連結手段と、
前記連結テキスト記憶手段に格納されている連結したテキストをそれぞれデータ圧縮し、圧縮後のデータサイズを求めるテキスト圧縮手段と、
前記データ圧縮手段で求められた前記圧縮後のデータサイズを基に、前記入力テキストの、指定文字列への関連スコアを求めるスコア出力手段と、
前記スコア出力手段の関連スコアに基づいて、前記入力テキストを前記指定文字列に関連するか否かを分類するテキスト分類手段と、
を有することを特徴とするマイクロブログテキスト分類装置。
【請求項２】
前記スコア出力手段は、
データ圧縮後のデータサイズの差分と、短いテキストのスコアが小さくなり過ぎないようにするためのスムージングパラメータを用いて前記関連スコアを求める手段を含む
請求項1記載のマイクロブログテキスト分類装置。
【請求項３】
マイクロブログの入力テキストを、利用者が与える任意の指定文字列に関連するか否かを分類する、マイクロブログテキスト分類方法であって、
前記指定文字列が含まれる指定テキストを記憶する指定テキスト記憶手段と、
前記指定テキストを除く比較テキストを記憶する比較テキスト記憶手段と、
連結されたテキストを格納する連結テキスト記憶手段と、を有する装置において、
テキスト解析手段が、前記入力テキストに、前記指定文字列が含まれるか否かを判定するテキスト解析ステップと、
テキスト連結手段が、前記指定テキスト記憶手段に格納されているテキスト集合を連結した指定連結テキストと、該指定連結テキストと前記入力テキストを連結したテキストと、前記比較テキスト記憶手段に格納されているテキスト集合を連結した比較連結テキストと、該比較連結テキストと該入力テキストを連結したテキストを前記連結テキスト記憶手段に出力するテキスト連結ステップと、
テキスト圧縮手段が、前記連結テキスト記憶手段に格納されている連結したテキストをそれぞれデータ圧縮し、圧縮後のデータサイズを求めるテキスト圧縮ステップと、
スコア出力手段が、前記データ圧縮ステップで求められた前記圧縮後のデータサイズを基に、前記入力テキストの、前記指定文字列への関連スコアを求めるスコア出力手段と、
テキスト分類手段が、前記スコア出力手段の関連スコアに基づいて、前記入力テキストを指定文字列に関連するか否かを分類するテキスト分類ステップと、
を行うことを特徴とするマイクロブログテキスト分類方法。
【請求項４】
前記スコア出力ステップにおいて、
データ圧縮後のデータサイズの差分と、短いテキストのスコアが小さくなり過ぎないようにするためのスムージングパラメータを用いて前記関連スコアを求める
請求項３記載のマイクロブログテキスト分類方法。
【請求項５】
請求項１または２記載のマイクロブログテキスト分類装置を構成する各手段としてコンピュータを機能させるためのマイクロブログテキスト分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロブログテキスト分類装置及び方法及びプログラムに係り、特に、利用者が与える任意の指定文字列に関連するか否かを、データ圧縮の特性を利用して分類するためのマイクロブログテキスト分類装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
近年ではマイクロブログ（ミニブログとも呼ばれる）という、主に利用者自身の現在の状況や雑感などを短いテキストで記すウェブサイトが普及している。マイクロブログは、更新が容易で、リアルタイム性に優れているため、インターネット上での第一次情報源としての役割を担い得る、重要なメディアである。
【０００３】
大勢のユーザによって大量に投稿されるマイクロブログのテキスト集合から、ユーザが望む情報に関連したテキストのみを抽出することは大きな技術課題である。従来技術として、指定した文字列（キーワード）が含まれるテキストを抽出するキーワード検索が利用可能である。例えば、「口蹄疫」という家畜の感染病に関する情報を調べたい際は、キーワード検索で「口蹄疫」を入力すれば、「口蹄疫」という文字列が含まれるテキストを抽出することができる。しかし、キーワード検索では、ユーザが望む情報に関連したテキストでも、指定した文字列が含まれていないテキストを抽出することはできず、マイクロブログという短いテキストを扱うメディアでは、網羅性の高い検索を行うことができない。
【０００４】
次に、指定したタグが含まれるテキストを抽出するタグ検索が利用可能である。利用者がタグと呼ばれる短い文字列を付与してテキストを投稿することで、同じ話題に関するテキストを（他者のテキストも含めて）グループ化し、検索・閲覧に役立てている。例えば、口蹄疫に関するタグの一例として「#kouteieki」があり、このタグを用いると、
・「昨日の参議院農林水産委員会の動画を書き起こしました。→ http://sample.url/blGD2H #kouteieki」
・「県知事が記者会見。種牛殺処分へ。 #kouteiki」
という、「口蹄疫」が含まれていないテキストも抽出することができる。しかし、全ての利用者がタグを使用しているわけではないため、タグ検索の網羅性も十分ではない。
【０００５】
ここで、指定した文字列（タグを含む任意の文字列）が含まれるテキスト集合を基に、入力されたテキストが指定した文字列に関連するかどうかを分類することで、検索の網羅性を高めることが可能である。
【０００６】
通常のブログのテキスト分類（例えば、特許文献１、非特許文献１参照）では、テキストを形態素解析によって素性（形態素）に分割した後に各素性と分類対象の関連性を、テキスト分類アルゴリズムによって学習する（例えば、非特許文献２参照）。しかし、マイクロブログでは他メディアに比べて、くだけた日本語表現が多く、辞書に登録されていない新奇語も日々出現するため、形態素解析の精度が低く、結果として分類精度も低くなってしまう。さらに、形態素解析を用いる場合は、日本語以外の言語で記述されたテキストの分類精度が大きく落ちる。また、連続するn文字を素性とするn-gram（通常、nには1〜3程度が選ばれる）では、くだけた表現にも新奇語にも対応し易いが、形態素解析を用いて得た素性より精度が低くなることが知られている。
【０００７】
また、マイクロブログは非常にリアルタイム性が高いため、ユーザは現在に関連するテキストを投稿する傾向が強い。このため、同じタグが含まれるテキストでも、テキストの内容は時間と共に大きく変化していく。例えば、「記者会見」という文字列は、ある時刻においては「#kouteieki（口蹄疫）」タグに強く関連するが、その1時間前には「#kouteieki」が含まれるテキスト集合に全く登場していない文字列であり、他の異なるタグに強く関連する文字列であった。テキスト分類器は、このような変化に対して素早く適応しなければならない。さらに、マイクロブログでは短時間の間に、非常に多くのテキストが投稿されるため、分類や学習処理が高速に行える手法でなければならない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−３１０６２６号公報
【非特許文献】
【０００９】
【非特許文献１】T. Ohkura, Y. Kiyota, and H. Nakagawa. Browsing system for weblog articles based on automated folksonomy. In Proc. WWW 2006 Workshop on Weblogging Ecosystem: Aggregation, Analysis, and Dynamics, 2006.
【非特許文献２】M. Dredze, K. Crammer, F. Pereira. "Confidence-Weighted Linear Classification", Proceedings of the 25th international conference on Machine learning, Pages: 264-271, 2008.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記のように、現在はマイクロブログという、短く、くだけた文体で、高いリアルタイム性を持ったテキストが投稿されるメディアに対して、利用者が望む情報に関連するテキストのみを、高速に、高い精度を実現して分類できる技術は存在しない。
【００１１】
本発明は、上記従来技術の問題点に鑑みて、形態素解析やn-gram分割の必要が無く、どんな言語で記述されたテキストに対しても、指定テキスト集合の傾向変化に高速に適応しながら、高い分離精度を実現するマイクロブログテキスト分類装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記の課題を解決するために、本発明（請求項１）は、マイクロブログの入力テキストを、利用者が与える任意の指定文字列に関連するか否かを分類する、マイクロブログテキスト分類装置であって、
前記指定文字列が含まれる指定テキストを記憶する指定テキスト記憶手段と、
前記指定テキストを除く比較テキストを記憶する比較テキスト記憶手段と、
連結されたテキストを格納する連結テキスト記憶手段と、
前記入力テキストに、前記指定文字列が含まれるか否かを判定するテキスト解析手段と、
前記指定テキスト記憶手段に格納されているテキスト集合を連結した指定連結テキストと、該指定連結テキストと前記入力テキストを連結したテキストと、前記比較テキスト記憶手段に格納されているテキスト集合を連結した比較連結テキストと、該比較連結テキストと該入力テキストを連結したテキストを前記連結テキスト記憶手段に出力するテキスト連結手段と、
前記連結テキスト記憶手段に格納されている連結したテキストをそれぞれデータ圧縮し、圧縮後のデータサイズを求めるテキスト圧縮手段と、
前記データ圧縮手段で求められた前記圧縮後のデータサイズを基に、前記入力テキストの、指定文字列への関連スコアを求めるスコア出力手段と、
前記スコア出力手段の関連スコアに基づいて、前記入力テキストを前記指定文字列に関連するか否かを分類するテキスト分類手段と、を有する。
【００１３】
また、本発明（請求項２）は、前記スコア出力手段に、
データ圧縮後のデータサイズの差分と、短いテキストのスコアが小さくなり過ぎないようにするためのスムージングパラメータを用いて前記関連スコアを求める手段を含む。
【００１４】
また、本発明（請求項３）は、マイクロブログの入力テキストを、利用者が与える任意の指定文字列に関連するか否かを分類する、マイクロブログテキスト分類方法であって、
前記指定文字列が含まれる指定テキストを記憶する指定テキスト記憶手段と、
前記指定テキストを除く比較テキストを記憶する比較テキスト記憶手段と、
連結されたテキストを格納する連結テキスト記憶手段と、を有する装置において、
テキスト解析手段が、前記入力テキストに、前記指定文字列が含まれるか否かを判定するテキスト解析ステップと、
テキスト連結手段が、前記指定テキスト記憶手段に格納されているテキスト集合を連結した指定連結テキストと、該指定連結テキストと前記入力テキストを連結したテキストと、前記比較テキスト記憶手段に格納されているテキスト集合を連結した比較連結テキストと、該比較連結テキストと該入力テキストを連結したテキストを前記連結テキスト記憶手段に出力するテキスト連結ステップと、
テキスト圧縮手段が、前記連結テキスト記憶手段に格納されている連結したテキストをそれぞれデータ圧縮し、圧縮後のデータサイズを求めるテキスト圧縮ステップと、
スコア出力手段が、前記データ圧縮ステップで求められた前記圧縮後のデータサイズを基に、前記入力テキストの、前記指定文字列への関連スコアを求めるスコア出力手段と、
テキスト分類手段が、前記スコア出力手段の関連スコアに基づいて、前記入力テキストを指定文字列に関連するか否かを分類するテキスト分類ステップと、を行う。
【００１５】
また、本発明（請求項４）は、前記スコア出力ステップにおいて、
データ圧縮後のデータサイズの差分と、短いテキストのスコアが小さくなり過ぎないようにするためのスムージングパラメータを用いて前記関連スコアを求める。
【００１６】
また、本発明（請求項５）は、請求項１または２記載のマイクロブログテキスト分類装置を構成する各手段としてコンピュータを機能させるためのマイクロブログテキスト分類プログラムである。
【発明の効果】
【００１７】
上記のように構成された請求項１記載のマイクロブログテキスト分類装置によれば、入力テキストが、利用者が指定した文字列が含まれる指定テキストの集合と、指定テキストを除く比較テキストの集合の、どちらと強い関連を示すかについて、データ圧縮を利用して分類するので、形態素解析やn-gram分割の必要が無く、どんな言語で記述されたテキストに対しても、指定テキスト集合の傾向変化に高速に適応しながら、高い分離精度を実現するテキスト分類が実現できる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施の形態におけるマイクロブログテキスト分類装置の構成図である。
【図２】本発明の一実施の形態におけるマイクロブログテキスト分類装置の動作のフローチャートである。
【図３】本発明の一実施の形態におけるデータ構造とスコア出力例である。
【図４】本発明の一実施の形態におけるマイクロブログテキスト分類の例である。
【発明を実施するための形態】
【００１９】
以下、図面と共に本発明の実施の形態を説明する。
【００２０】
図１は、本発明の一実施の形態におけるマイクロブログテキスト分類装置の構成を示す。
【００２１】
同図に示すマイクロブログテキスト分類装置は、テキスト解析部１０とテキスト連結部２０とテキスト圧縮部３０とスコア出力部４０とテキスト分類部５０指定テキスト記憶部６０と比較テキスト記憶部７０と連結テキスト記憶部８０から構成され、マイクロブログのテキストと利用者が指定する文字列を入力として受け取り、入力テキストが指定文字列に関連するか否かを分類する。上記の構成のうち、指定テキスト記憶部６０、比較テキスト記憶部７０、連結テキスト記憶部８０は、ハードディスクやメモリ等の記憶媒体である。
【００２２】
指定テキスト記憶部６０には、指定文字列を含む入力テキストが格納される。
【００２３】
比較テキスト記憶部７０には、指定文字列を含まない入力テキストが格納される。
【００２４】
連結テキスト記憶部８０は、テキスト連結部２０により連結されたテキストが格納される。
【００２５】
図２は、本発明の一実施の形態におけるマイクロブログテキスト分類装置の動作フローチャートである。
【００２６】
ステップ１）テキスト解析部１０は、入力テキスト（マイクロブログテキスト）に、利用者が指定する指定文字列が含まれるか否かを判定する。ここで、指定文字列とは、タグ（#から始まる文字列）、ユーザ名
【００２７】
【数１】
0005389764.tif 000002
タグやユーザ名を除く任意のキーワードなど、如何なる文字列でも良い。
【００２８】
入力テキストに指定文字列が含まれない場合はステップ２に進む。入力テキストに指定文字列が含まれる場合はステップ８に進む。
【００２９】
ステップ２）テキスト連結部２０は、指定テキスト記憶部６０が格納するテキスト集合を連結し、指定連結テキストAを出力する。このとき、テキストは時間順に（古い物ほどテキストの前方にくるように）連結する。
【００３０】
ステップ３）テキスト連結部２０は、比較テキスト記憶部７０が格納するテキスト集合を連結し、比較連結テキストBを出力する。このとき、テキストは時間順に（古い物ほどテキストの前方にくるように）連結する。
【００３１】
ステップ４）テキスト連結部２０は、指定連結テキストAの後に入力テキストを連結したテキストAxと、比較連結テキストBの後に入力テキストxを連結したテキストBxを連結テキスト記憶部８０に出力する。
【００３２】
ステップ５）テキスト圧縮部３０は、連結テキスト記憶部80から読み出したテキストA、B、Ax、Bxをそれぞれ圧縮して、各テキストの圧縮後サイズZ(A)、Z(B)、Z(Ax)、Z(Bx)を求める。ここで、テキスト圧縮部３０は、文献１（Peter Deutsch, "RFC 1951 DEFLATE Compressed Data Format Specification version 1.3", Network Working Group, Request for Comments: 1951, May 1996.）で示されるdeflateなどの公知アルゴリズムのうち、いかなる物を使用しても良い。
【００３３】
ステップ６）スコア出力部４０は、テキスト圧縮部３０の出力結果Z(A)、Z(B)、Z(Ax)、Z(Bx)を用いて、以下の式により入力テキストxの関連スコアS(x)を算出する。
【００３４】
【数２】
0005389764.tif 000003
ここで、γはスムージングパラメータで、短い入力テキストのスコアが小さくなりすぎることと、ゼロ除算を防ぐ目的で用いられる（γ＝5などを用いる）。なお、入力テキストxに指定文字列が含まれている場合は、S(x)=0とする。
【００３５】
図３に、マイクロブログテキスト分類装置のデータ構造と、スコア出力例を示す。指定連結テキストAと入力テキストxの間で一致する文字列が多く含まれ、指定連結テキストAを事前情報として用いると入力テキストxを圧縮しやすくなる場合、Z(Ax)−Z(A)の値はゼロに近づく。一方、比較連結テキストBと入力テキストxの間に関連が無い場合、入力テキストxは圧縮されにくいため、Z(Bx)−Z(B)の値がZ(Ax)−Z(A)に比べて大きくなる。データ圧縮による分類は、文献２（Dario Benedetto, Emanuele Caglioti, and Vittorio Loreto, "Language Trees and Zipping", Physical Review Letters, 88:4, 2002）などにより公知であるが、本発明は、圧縮後サイズの差分の比率とスムージングパラメータの適用により、マイクロブログの短いテキストを、利用者が指定する指定文字列に関連するか否かを分類することを可能とする。
【００３６】
ここで、データ圧縮では、形態素解析などを行う必要は無く、いかなる言語で記述されたテキストも精度を落とすことなく扱える。また、非常にシンプルな分類手法であり、従来のテキスト分類器に比べ高速な分類が可能となる。さらに、テキストは時間順に連結されるため、多くのユーザが一斉に同内容のテキストを投稿したような場合はテキストが圧縮されやすくなり、高い分類精度を実現しやすい。
【００３７】
ステップ７）テキスト解析部１０は、ステップ１において入力テキストに指定文字列が含まれる場合は、入力テキストを指定テキスト記憶部６０に格納する。テキスト解析部１０は、入力テキストに指定文字列が含まれない場合は、入力テキストを比較テキスト記憶部７０に格納する。
【００３８】
なお、比較テキスト記憶部７０に格納する対象のテキストは、指定文字列が含まれるテキストを除く全てのテキストとする。また、指定文字列でタグが指定された場合は、全てのタグが含まれるテキストから前記指定タグを含むテキストを除いたテキストとしてもよい。さらに、指定文字列でユーザ名が指定された場合は、全てのユーザ名が含まれるテキストから前記ユーザ名を含むテキストを除いたテキストとしても良い。
【００３９】
また、指定テキスト記憶部６０と比較テキスト記憶部７０に格納するテキストの量については、計算量の減少と、ごく最近の傾向を強く反映させるために、最新のN個のテキストや、過去T時間以内のテキスト、最新のMサイズ分のテキストに限定させても良い。
【００４０】
本発明の学習処理は、本ステップに関する処理のみであり、非常に高速な学習が実現できる。
【００４１】
ステップ８）テキスト分類部５０は、スコア出力部４０の出力結果に基づき、スコアS(x)が閾値θよりも小さい場合に、入力テキストxが指定文字列に関連していると分類する。
【００４２】
閾値θの値を小さく設定すると、高い精度で分類が可能になり、閾値θの値を大きく設定すると、高い網羅率を実現する分類が可能になる。θの値には1.0 などを利用する。
【００４３】
図４に、θ＝1.0とした場合のマイクロブログのテキスト分類結果の例を示す。口蹄疫に関連するテキストのみが抽出できていることがわかる。
【００４４】
上記のように、指定の文字列を含むサンプルテキストがあり、サンプルテキストを圧縮したサイズをＡ、サンプルテキストと入力テキストを連結させて圧縮したサイズをＡｘとしたとき、テキストｘが指定文字列との関係が深いのであれば、効率よく圧縮されAとAxの差（関連度合い）は小さくなる。この数値が小さいほど関連度が深いことになる。従って、マイクロブログのような短いテキストｘであっても、指定文字列に関連するかを容易に判定することが可能となる。
【００４５】
また、本発明は、図１に示す構成要素の動作をプログラムとして構築し、マイクロブログテキスト分類装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００４６】
また、構築されたプログラムをハードディスクやフレキシブルディスク、ＣＤ−ＲＯＭ等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。
【産業上の利用可能性】
【００４７】
本発明は、マイクロブログテキストを、利用者が指定する文字列に関連するか否かを分類可能な手法であり、情報検索の支援に利用可能である。
【符号の説明】
【００４８】
１０  テキスト解析部
２０  テキスト連結部
３０  テキスト圧縮部
４０  スコア出力部
５０  テキスト分類部
６０  指定テキスト記憶部
７０  比較テキスト記憶部
８０  連結テキスト記憶部
【図１】
0005389764.tif 000004
【図２】
0005389764.tif 000005
【図３】
0005389764.tif 000006
【図４】
0005389764.tif 000007