(57)【要約】【課題】インターネット上に投稿等されたテキストには、投稿者が自ら作成していない引用箇所が多数含まれることがあり、このためにテキストを分析するための計算量が増加し、テキストの正確な分析の妨げとなることがあった。【解決手段】複数のテキストの中から他のテキストを引用した引用部分を検出する検出部と、複数のテキスト中の引用部分を削除または予め定められた文字列に置換して複数の変換済テキストを生成する変換部と、複数の変換済テキストをテキストマイニングするテキストマイニング部とを備える情報処理装置を提供する。【選択図】図１
2014146257.tif 000002
【特許請求の範囲】
【請求項１】
複数のテキストの中から他のテキストを引用した引用部分を検出する検出部と、
前記複数のテキスト中の引用部分を削除または予め定められた文字列に置換して複数の変換済テキストを生成する変換部と、
前記複数の変換済テキストをテキストマイニングするテキストマイニング部と、
を備える情報処理装置。
【請求項２】
前記検出部は、一のテキストに含まれる文字列が、一のテキストに含まれる参照先情報により指定される参照先をアクセスして得られる情報の中に含まれる場合に、当該文字列を前記参照先からの引用部分であると判断する照合部を有する
請求項１に記載の情報処理装置。
【請求項３】
前記検出部は、前記複数のテキストに含まれる参照先情報により指定される参照先を辿り、異なる２以上の参照先情報から同一の情報に辿りつくことを検出する参照先検出部を有し、
前記変換部は、前記参照先検出部の検出結果に応じて当該２以上の参照先情報を同一の文字列に置換する参照先変換部を有する
請求項２に記載の情報処理装置。
【請求項４】
前記参照先検出部は、参照先情報により指定される参照先をアクセスして他の参照先にリダイレクトする旨のリダイレクト情報が得られたことに応じて、リダイレクト先をさらに辿る
請求項３に記載の情報処理装置。
【請求項５】
前記参照先変換部は、参照先情報により指定される参照先をアクセスして得られた情報に正規の参照先を示す参照先情報が含まれている場合に、参照先情報を正規の参照先情報に置換する
請求項３または４に記載の情報処理装置。
【請求項６】
前記検出部は、前記複数のテキスト中に同一の文字列を検出したことに応じて、当該文字列を引用部分と判断する判断部を有する
請求項２から５のいずれか一項に記載の情報処理装置。
【請求項７】
前記判断部は、前記複数のテキスト中から検出した同一の文字列が予め定められた基準文字数以上の長さであることを条件として、当該文字列を引用部分と判断する
請求項６に記載の情報処理装置。
【請求項８】
前記判断部は、前記複数のテキスト中に同一の文字列を予め定められた基準個数以上検出したことを条件として、当該文字列を引用部分と判断する
請求項６または７に記載の情報処理装置。
【請求項９】
前記変換部は、前記複数のテキスト中から検出した同一の文字列が、前記複数のテキストの一のテキストの全体と一致しないことを条件として、前記一のテキスト中の引用部分を削除または予め定められた文字列に置換する
請求項６から８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記照合部は、検出済みの２以上の引用部分が共通部分を含んでいる場合に、同一の情報からの引用部分であると判断する
請求項６から９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記変換部は、前記複数のテキスト中における同一の引用部分を、当該引用部分を識別する識別情報に置換する
請求項１から１０のいずれか一項に記載の情報処理装置。
【請求項１２】
前記テキストマイニング部は、前記複数の変換済テキスト中における互いに引用内容が異なる引用部分のそれぞれの出現回数を測定する
請求項１１に記載の情報処理装置。
【請求項１３】
前記テキストマイニング部は、互いに引用内容が異なる引用部分同士の類似度を算出し、類似度に基づいて引用部分をグループ化する
請求項１から１２のいずれか一項に記載の情報処理装置。
【請求項１４】
前記テキストマイニング部は、互いに引用内容が異なる引用部分に対応付けられた参照先の情報同士の類似度を算出し、類似度に基づいて引用部分をグループ化する
請求項２から５のいずれか一項に記載の情報処理装置。
【請求項１５】
前記テキストマイニング部は、互いに引用内容が異なる２以上の引用部分に対応付けられた参照先の情報同士の中に、同一の参照先を指定する参照先情報が含まれている場合に、当該２以上の引用部分をグループ化する
請求項２から５のいずれか一項に記載の情報処理装置。
【請求項１６】
複数のテキストの中から他のテキストを引用した引用部分を検出する検出段階と、
前記複数のテキスト中の引用部分を削除または予め定められた文字列に置換して複数の変換済テキストを生成する変換段階と、
前記複数の変換済テキストをテキストマイニングするテキストマイニング段階と、
を備える情報処理方法。
【請求項１７】
コンピュータを、
複数のテキストの中から他のテキストを引用した引用部分を検出する検出部と、
前記複数のテキスト中の引用部分を削除または予め定められた文字列に置換して複数の変換済テキストを生成する変換部と、
前記複数の変換済テキストをテキストマイニングするテキストマイニング部と、
して機能させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び、情報処理プログラムに関する。
【背景技術】
【０００２】
ユーザにより作成された多数のテキストを分析することが知られている（例えば、特許文献１）。
［特許文献１］  特開２０１１−３１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、例えば、インターネット上に投稿等されたテキストには、投稿者が自ら作成していない引用箇所が多数含まれることがある。このような場合、テキストを分析するための計算量が増加し、又、その様な引用箇所が多数存在すると引用内容が支配的な情報となり、テキストの正確な分析の妨げとなることがあった。
【課題を解決するための手段】
【０００４】
本発明の第１の態様においては、複数のテキストの中から他のテキストを引用した引用部分を検出する検出部と、複数のテキスト中の引用部分を削除または予め定められた文字列に置換して複数の変換済テキストを生成する変換部と、複数の変換済テキストをテキストマイニングするテキストマイニング部とを備える情報処理装置、当該情報処理装置に実行される方法、及び、コンピュータを当該情報処理装置として機能させるプログラムを提供する。
【０００５】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００６】
【図１】本実施形態の情報処理装置１０の構成を示す。
【図２】本実施形態の情報処理装置１０の処理フローを示す。
【図３】Ｓ１００において情報処理装置１０が取得する複数のテキストを例示する。
【図４】Ｓ１０２において参照先検出部１２２が生成する参照テーブルを例示する。
【図５】Ｓ１０４において判断部１２４が実行するＮグラム索引を例示する。
【図６】Ｓ１０４において判断部１２４が実行するＮグラム索引を例示する。
【図７】Ｓ１０４において判断部１２４が生成する引用文字列テーブルを例示する。
【図８】Ｓ１０８及びＳ１１０において照合部１２６が生成する照合テーブルを例示する。
【図９】Ｓ１１２において変換部１４０が生成する複数の変換済テキストを例示する。
【図１０】コンピュータ１９００のハードウェア構成の一例を示す。
【発明を実施するための形態】
【０００７】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００８】
図１は、本実施形態の情報処理装置１０の構成を示す。情報処理装置１０は、サーバ２０及びサーバ３０から複数のテキストを取得し、複数のテキストから引用部分を検出し、当該引用部分を予め定められた文字列に変換する。情報処理装置１０は、通信部１１０、検出部１２０、記憶部１３０、変換部１４０、及び、テキストマイニング部１５０を備える。
【０００９】
通信部１１０は、インターネット等のネットワークに接続し、ネットワークを介して外部の機器と通信する。例えば、通信部１１０は、サーバ２０及びサーバ３０等の外部の機器から複数のテキストを取得する。通信部１１０は、取得した複数のテキストを検出部１２０及び変換部１４０に供給する。
【００１０】
検出部１２０は、複数のテキストの中から、他のテキストを引用した引用部分を検出する。検出部１２０は、参照先検出部１２２、判断部１２４、及び照合部１２６を有する。
【００１１】
参照先検出部１２２は、複数のテキストに含まれる引用部分として参照先情報を検出する。そして、参照先検出部１２２は、検出した異なる２以上の参照先情報から同一の情報に辿りつくか否かを検出する。参照先検出部１２２は、参照先情報としてファイルの場所を示す情報を検出してよく、例えば、Uniform Resource Locator（ＵＲＬ）を検出してよい。また例えば、参照先検出部１２２は、正規のＵＲＬと正規のＵＲＬをリダイレクト技術により短縮表示した短縮ＵＲＬとから、同一のウェブサイト等の情報に辿りつくことを検出してよい。
【００１２】
参照先検出部１２２は、同一のウェブサイト等の情報に辿りつく２以上の参照先情報のうち、リダイレクト先となる最終的な参照先情報と、最終的な参照先情報の直接的／間接的なリダイレクト元となる１又は複数の参照先情報からなる他の参照先情報とを対応付けた参照テーブルを作成する。参照先検出部１２２は、作成した参照テーブルを記憶部１３０に格納する。
【００１３】
判断部１２４は、複数のテキスト中に共通して含まれる同一の文字列を検出したことに応じて、当該文字列を引用部分と判断する。判断部１２４は、検出した同一の文字列が「所定の文字数以上の長さであること」等の予め定められた条件を満たすことを条件として、当該文字列を引用部分と判断してよい。判断部１２４は、複数のテキストから引用部分として検出した文字列から構成される引用文字列テーブルを生成し、当該引用文字列テーブルを記憶部１３０に格納する。
【００１４】
照合部１２６は、記憶部１３０から引用部分として参照先情報を含む参照テーブル、及び、引用部分として文字列を含む引用文字列テーブルを読み出して、これらのテーブルから引用部分ごとに異なる識別情報を付与した照合テーブルを作成する。
【００１５】
また、照合部１２６は、引用文字列テーブルに含まれる検出済みの２以上の文字列が共通部分を含んでいる場合に、同一の情報からの引用部分であると判断してよい。この場合、照合部１２６は、照合テーブルにおいて当該共通部分を含む２以上の文字列に同一の識別情報を付与してよい。
【００１６】
また、照合部１２６は、一のテキストに含まれる引用部分である文字列が、一のテキストに含まれる参照先情報により指定される参照先をアクセスして得られる情報の中に含まれるか否か判断する。照合部１２６は、含まれる場合には、当該文字列を参照先からの引用部分であると判断して、照合テーブル中の当該文字列及び参照先情報のレコードを同一の引用部分として統合する。照合部１２６は、照合テーブルを記憶部１３０に格納する。
【００１７】
記憶部１３０は、参照先検出部１２２から受け取った参照テーブル及び判断部１２４から受け取った引用文字列テーブルを記憶し、これらのテーブルを照合部１２６に供給する。また、記憶部１３０は、照合部１２６から受け取った照合テーブルを記憶し、照合テーブルを変換部１４０に供給する。記憶部１３０は、情報処理装置１０の主記憶装置、補助記憶装置、又は、情報処理装置１０の外部に設けられた記憶装置であってもよい。
【００１８】
変換部１４０は、複数のテキスト中の引用部分を予め定められた文字列に置換して、複数の変換済テキストを生成する。例えば、変換部１４０は、複数のテキスト中における参照先情報及び／又は同一の文字列を同一の引用部分として、当該引用部分を識別する識別情報に置換する。変換部１４０は、参照先変換部１４２及び文字列変換部１４４を有する。
【００１９】
参照先変換部１４２は、参照先検出部１２２の検出結果に応じて当該２以上の参照先情報を同一の文字列に置換する。例えば、参照先変換部１４２は、テキスト中の参照先情報を、照合テーブル中の当該最終的な参照先情報又は「NEWS_TITLE1」等の識別情報に置換する。
【００２０】
文字列変換部１４４は、複数のテキスト中の同一の文字列を識別情報に置換する。例えば、文字列変換部１４４は、照合テーブル中の文字列と同一の文字列がテキストに含まれる場合、テキストに含まれる同一の文字列を、照合テーブルの当該文字列に対応する「NEWS_TITLE1」等の識別情報に置換する。
【００２１】
変換部１４０は、参照先変換部１４２及び／又は文字列変換部１４４において、複数のテキストの引用部分を識別情報に置換する代わりに、引用部分を削除してもよい。変換部１４０は、参照先変換部１４２及び／又は文字列変換部１４４が変換した変換済テキストをテキストマイニング部１５０に供給する。
【００２２】
テキストマイニング部１５０は、変換部１４０から複数の変換済テキストを受け取り、当該複数の変換済テキストをテキストマイニングする。例えば、テキストマイニング部１５０は、複数の変換済テキスト中における互いに引用内容が異なる引用部分のそれぞれの出現回数を測定する。
【００２３】
このように、本実施形態の情報処理装置１０は、複数のテキスト中に出現する同一の文字列及び参照先情報から検出される同一の引用部分を識別情報に対応付け、複数のテキスト中の引用部分を識別情報に置換すること等により、複数のテキストから引用部分を取り除く。これにより、情報処理装置１０は、複数のテキストのうち引用でないオリジナルの部分のみをテキストマイニングすることができる。さらに情報処理装置１０は、識別情報を分析することにより複数のテキストの引用部分の数の分布など引用の傾向等を分析することができる。
【００２４】
図２に、本実施形態の情報処理装置１０の処理フローを示す。本実施形態において、情報処理装置１０は、Ｓ１００からＳ１１４までの処理を実行する。
【００２５】
まず、Ｓ１００において、通信部１１０がサーバ２０等の外部の機器と通信して複数のテキストを取得する。例えば、通信部１１０は、インターネット等のネットワークを介して、サーバ２０等に格納されるブログ及びソーシャルネットワークサービス等の投稿サイト、及び／又は、ウェブニュース及びメールニュース等のニュースサイトにアクセスして、これらのウェブサイト上で公開されたテキストを取得する。通信部１１０は、取得した複数のテキストを検出部１２０及び変換部１４０に供給する。
【００２６】
次に、Ｓ１０２において、参照先検出部１２２は、複数のテキストに含まれる参照先情報を検出し、異なる２以上の参照先情報から同一の情報に辿りつくことを検出する。具体的には、まず参照先検出部１２２は、複数のテキストからＵＲＬ等の参照先情報を検出する。
【００２７】
参照先検出部１２２は、通信部１１０を介して、検出した参照先情報により指定されるウェブページ等の参照先にアクセスし、参照先のＨＴＴＰヘッダに含まれるＬｏｃａｔｉｏｎ値を検出することにより、他の参照先にリダイレクトする旨のリダイレクト情報を検出する。参照先検出部１２２は、当該リダイレクト情報が得られたことに応じて、リダイレクト先のＵＲＬに対して呼び出しを実行し、リダイレクト先を辿る。
【００２８】
参照先検出部１２２は、参照先情報の参照先にリダイレクト情報が検出されない場合は当該参照先情報を最終的な参照先情報とする。また、参照先検出部１２２は、参照先情報により指定される参照先をアクセスして得られた情報に正規の参照先を示す参照先情報が含まれている場合に、当該正規の参照先を示す参照先情報を最終的な参照先情報としてよい。
【００２９】
一例として、参照先検出部１２２は、参照先のウェブページの＜Ｍｅｔａ＞要素に「canonical href」又は「og:url」等のタグで示されるＵＲＬが含まれている場合には、当該ＵＲＬを正規の参照先を示す参照先情報としてよい。
【００３０】
参照先検出部１２２は、同一のウェブサイト等の情報に辿りつく２以上の参照先情報のうち、最後のリダイレクト先となる最終的な参照先情報と、最終的な参照先情報の直接的／間接的なリダイレクト元となる１又は複数の参照先情報からなる他の参照先情報とを対応付けた参照テーブルを作成する。参照先検出部１２２は、作成した参照テーブルを記憶部１３０に格納する。
【００３１】
次に、Ｓ１０４において、判断部１２４は、複数のテキスト中に同一の文字列を検出する。例えば、判断部１２４は、複数のテキストに対してＮグラム索引を生成し、複数のテキストに共通して含まれる同一の文字列を引用部分として検出する。判断部１２４が、Ｎグラム索引を生成する具体的方法等については後述する。
【００３２】
判断部１２４は、複数のテキスト中から検出した同一の文字列が予め定められた基準文字数以上の長さであることを条件として、当該文字列を引用部分と判断してよい。一例として、判断部１２４は、２０文字以上の長さの文字列のみを引用部分と判断してよい。
【００３３】
これにより、判断部１２４は、単語の単位で文字列を引用として検出しないので、単に同一の単語及び慣用句等を用いた複数のテキストを引用関係にあると誤認することを防ぐ。また、これにより、判断部１２４は、引用の程度が低い文字列の処理を回避して情報処理装置１０の処理リソースを節約することができる。
【００３４】
次に、Ｓ１０６において、判断部１２４は、検出した同一の文字列が予め定められた条件を満たすことを条件として、当該文字列を引用部分と判断する。例えば、判断部１２４は、複数のテキスト中に同一の文字列を予め定められた基準個数（例えば、１０個）以上検出したことを条件として、当該文字列を引用部分と判断してよい。
【００３５】
これにより、判断部１２４は、例えば、引用回数の少ない重要性の低い文字列を引用部分から除外することができ、情報処理装置１０の変換部１４０による処理負荷を低減することができる。判断部１２４は、引用部分と判断した文字列から構成される引用文字列テーブルを生成し、当該引用文字列テーブルを記憶部１３０に格納する。
【００３６】
次に、Ｓ１０８において、照合部１２６は、記憶部１３０から引用部分として参照先情報を含む参照テーブル、及び、引用部分として文字列を含む引用文字列テーブルを読み出して、これらのテーブルから引用部分ごとに異なる識別情報を付与した照合テーブルを作成する。例えば、照合部１２６は、引用文字列テーブル中の文字列及び参照テーブル中の参照先情報のそれぞれに対して「NEWS_TITLE1」及び「NEWS_TITLE2」等の異なる識別情報を付与した照合テーブルを作成する。
【００３７】
また、照合部１２６は、照合テーブル中の複数の文字列が共通部分を含むか照合する。共通部分を含む場合、照合部１２６は、共通部分を含む文字列が同一の情報からの引用部分であると判断して、照合テーブルにおいてこれらの文字列に同一の識別情報を付与する。
【００３８】
一例として、照合部１２６は、共通部分「IBMはPureSystemsを新時代のIT製品として発表」を含む、照合テーブル中の文字列「IBMはPureSystemsを新時代のIT製品として発表した。」と文字列「日本IBMはPureSystemsを新時代のIT製品として発表」とに対して同一の識別情報を付与してよい。
【００３９】
次に、Ｓ１１０において、照合部１２６は、通信部１１０を介して、照合テーブル中の最終的な参照先情報の参照先にアクセスして、参照先に照合テーブル中の文字列のいずれかが含まれるかを照会する。例えば、照合部１２６は、照合テーブル中の文字列が、参照先のテキストの少なくとも一部と一致する場合、当該文字列を参照先からの引用部分であると判断する。
【００４０】
照合部１２６は、文字列が引用部分であると判断した場合、照合テーブル中の当該文字列及び参照先情報のレコードを同一の引用部分として統合することにより、当該文字列及び参照先情報に同一の識別情報を付与する。照合部１２６は、照合テーブルを記憶部１３０に格納する。
【００４１】
次に、Ｓ１１２において、変換部１４０が複数のテキスト中の引用部分を識別情報等に置換して変換済テキストを生成する。具体的には、参照先変換部１４２は、記憶部１３０から照合テーブルを読み出し、テキスト中の参照先情報が照合テーブルの最終的な参照先情報又は他の参照先情報に一致する場合、当該テキスト中の参照先情報を、照合テーブル中の当該最終的な参照先情報に置換するか、又は、参照先情報に対応する「NEWS_TITLE1」等の識別情報に置換する。
【００４２】
また、参照先変換部１４２は、複数のテキスト中の参照先情報が照合テーブルの他の参照先情報に含まれる場合、複数のテキストに含まれる他の参照先情報を当該他の参照先情報に対応する正規の参照先情報に置換してよい。
【００４３】
文字列変換部１４４は、複数のテキスト中の同一の文字列を識別情報に置換する。例えば、文字列変換部１４４は、照合テーブル中の文字列と同一の文字列がテキストに含まれる場合、テキストに含まれる同一の文字列を、照合テーブルの当該文字列に対応する「NEWS_TITLE1」等の識別情報に置換する。
【００４４】
文字列変換部１４４は、照合テーブルに含まれる文字列が、複数のテキストの一のテキスト全体と一致するか否か判断し、一致しないことを条件として、当該一のテキスト中の引用部分を削除または予め定められた文字列に置換してよい。文字列変換部１４４は、照合テーブルに含まれる文字列が、複数のテキストの一のテキスト全体と一致する場合は、当該テキストを置換等しなくてよい。これにより、文字列変換部１４４は、例えば、他のユーザの投稿全体をそのまま再投稿するツイッター（登録商標）のリツイート等のテキストを、引用部分と区別して扱うことができる。
【００４５】
また、文字列変換部１４４は、複数のテキストに含まれる文字列のうち重要性の低いものを削除又は別の文字列に置換してもよい。例えば、文字列変換部１４４は、正規表現を利用して、宛先を示す文字列（例えば、@とユーザ名を連結した「@Hogehoge」）を検出し、当該文字列を宛先があったことを示す識別情報（例えば、「To_User」）に変換してよい。また、例えば、文字列変換部１４４は、正規表現を利用してテキストの話題を示す文字列（例えば、#と話題を連結した「#IBM_News」等のタグ）を検出し、当該文字列を削除してよい。
【００４６】
なお、変換部１４０は、通信部１１０から受け取った複数のテキストを、最初に参照先変換部１４２において変換し、次に当該複数の変換済テキストを文字列変換部１４４で変換してよい。これに代えて、変換部１４０は、複数のテキストを文字列変換部１４４で変換し、次に参照先変換部１４２で変換してよい。
【００４７】
変換部１４０は、参照先変換部１４２及び文字列変換部１４４のいずれかでのみ複数のテキストの引用部分を変換してもよい。また、変換部１４０は、参照先変換部１４２及び／又は文字列変換部１４４において、複数のテキストの引用部分を識別情報に置換する代わりに削除してもよい。
【００４８】
また、変換部１４０は、参照先変換部１４２及び文字列変換部１４４が複数のテキストの引用部分を識別情報に変換した結果、１つの変換済テキストに同一の識別情報が重複して存在することになる場合、いずれか一方の識別情報を削除してよい。変換部１４０は、参照先変換部１４２及び／又は文字列変換部１４４が変換した変換済テキストをテキストマイニング部１５０に供給する。
【００４９】
次に、Ｓ１１４において、テキストマイニング部１５０は、変換部１４０から複数の変換済テキストを受け取り、当該複数の変換済テキストをテキストマイニングすることにより、複数のテキストの内容を分析する。例えば、テキストマイニング部１５０は、ＩＢＭ  Ｃｏｎｔｅｘｔ  Ａｎａｌｙｔｉｃｓ（ＩＣＡ）、Ｔｅｘｔ  Ｎｅｔｗｏｒｋ  Ａｎａｌｙｓｉｓ（ＴＥＮＡ）、又はＩＢＭ  ＳＰＳＳ  Ｔｅｘｔ  Ａｎａｌｙｔｉｃｓ等の分析ツールにより、テキストマイニングを実行してよい。
【００５０】
例えば、テキストマイニング部１５０は、複数のテキストに含まれる夫々の識別情報の数をカウントすることにより、複数の変換済テキスト中における互いに引用内容が異なる引用部分のそれぞれの出現回数を測定する。
【００５１】
また、例えば、テキストマイニング部１５０は、互いに引用内容が異なる引用部分同士の類似度を算出し、類似度に基づいて引用部分をグループ化することにより、複数の変換済テキストをグループ化してもよい。具体的には、テキストマイニング部１５０は、記憶部１３０から照合テーブルを読み出し、照合テーブルに含まれる文字列の類似度を、文字列に含まれる単語の意味空間上の距離等に基づいて算出する。
【００５２】
次に、テキストマイニング部１５０は、類似度が予め定められた値以下の文字列をグループ化し、一のグループに含まれる文字列を含む複数の変換済テキストを同一のグループにグループ化する。これにより、テキストマイニング部１５０は、引用元が異なるが話題が類似する複数のテキストをまとめて分析することができる。
【００５３】
また、テキストマイニング部１５０は、互いに引用内容が異なる２以上の引用部分に対応付けられた参照先の情報同士の中に、同一の参照先を指定する参照先情報が含まれている場合に、当該２以上の引用部分をグループ化してよい。具体的には、テキストマイニング部１５０は、照合テーブルにおいて複数の異なる文字列に対して同一の参照先情報が対応付けられていた場合、これらの異なる文字列を同一のグループとなるにグループ化する。これにより、テキストマイニング部１５０は、具体的な引用部分が異なっていても、内容が類似する可能性が高い引用元が共通する複数のテキストをまとめて分析することができる。
【００５４】
また、テキストマイニング部１５０は、互いに引用内容が異なる引用部分に対応付けられた参照先の情報同士の類似度を算出し、類似度に基づいて引用部分をグループ化してもよい。具体的には、テキストマイニング部１５０は、通信部１１０を介して、照合テーブルの含まれる複数の参照先情報の参照先にアクセスし、複数の参照先のウェブページ等に含まれるテキスト同士の類似度を、テキストに含まれる単語の意味空間上の距離等に基づいて算出する。
【００５５】
次に、テキストマイニング部１５０は、類似度が予め定められた値以下のテキストを含む複数の参照先情報を同一のグループにグループ化する。これにより、テキストマイニング部１５０は、内容が類似するウェブサイトを引用する複数のテキストをまとめて分析することができる。
【００５６】
テキストマイニング部１５０は、複数のテキストのそれぞれの発信者の影響力の分析、引用部分に対する評価の分析（例えば、賛成又は反対等の感情の分析）、及び／又は、話題となっているトピックの分析（例えば、注目されている単語、ニュース又は人物等の分析）を実行する。
【００５７】
このように、本実施形態の情報処理装置１０は、複数のテキストの引用部分を識別情報等に変換又は削除して変換済テキストを生成し、当該変換済テキストをテキストマイニングする。これにより、本実施形態の情報処理装置１０は、複数のテキストをテキストマイニングする際に、引用部分に対して計算能力を消費することを防ぐことができる。また、情報処理装置１０は、テキストマイニングの結果から引用部分の影響を排除することができる。
【００５８】
なお、図２で説明した本実施形態の処理フローにおいて、文字列変換部１４４は、複数のテキスト中における重要性の低い文字列の置換等を、Ｓ１１２で実行する代わりにＳ１００の後に実行してもよい。この場合、文字列変換部１４４は、置換後の複数のテキストを検出部１２０に供給する。これにより、検出部１２０は、宛先等が微妙に異なる引用部分を同一の引用部分として検出することができるので、引用部分の検出の精度を向上させることができる。
【００５９】
図３は、本実施形態の処理フローのＳ１００において情報処理装置１０が取得する複数のテキストを例示する。本実施形態では、図３に示すように、ニュースウェブサイト「ＩＴ  Ｎｅｗｓ（ＵＲＬ：http://www. XXXXXXitnews.co.jp/news1111」において、「日本IBMはPureSystemsを新時代のIT製品として発表した。同社代表取締役によると…（後略）…」という記事が公開され、当該記事の内容を引用する複数のテキスト１〜５が投稿される場合を想定する。
【００６０】
図示するように、複数のテキスト１〜５は、記事の内容を引用した引用部分「日本IBMはPureSystemsを新時代のIT製品として発表した。」を含むが、当該部分は投稿されるテキストにおいてオリジナルな部分ではないので、分析対象としての価値が低い。例えば、テキストマイニング部１５０が、図３に示す複数のテキストをテキストマイニングすると、IBM、PureSystems、IT及び発表等の単語を頻出文字として集計してしまう。
【００６１】
また、テキスト１〜５は、記事のＵＲＬ及び記事のＵＲＬの短縮ＵＲＬ（http://XXX.XX/123XYZ及びhttp://YYY.YY/ 987AB）を含むが、これらのＵＲＬも投稿されたテキストにおいて本質的にオリジナルな部分ではないので、分析対象としての価値が低い。
【００６２】
図４は、Ｓ１０２において参照先検出部１２２が生成する参照テーブルを例示する。図４に示すように、参照先検出部１２２は、正規の参照先を示す「最終的な参照先情報（例えば、http://www.XXXXXXitnews.co.jp/news1111）」と「他の参照先情報（例えば、最終的な参照先情報の短縮アドレスであるhttp://XXX.XX /123XYZ及びhttp://YYY.YY/987AB）」とを対応付けた参照テーブルを生成する。参照先検出部１２２は、さらに参照先情報のそれぞれに、複数のテキストにおける参照先情報の出現位置を対応付けてもよい。
【００６３】
図５及び図６は、Ｓ１０４において判断部１２４が複数のテキスト１〜５に対して実行するＮグラム索引を例示する。図５は、判断部１２４がテキスト１のＮグラム索引を生成した例を示す。
【００６４】
例えば、図５の表の２行目に示すように、判断部１２４は、テキスト１「日本IBMはPureSystemsを新時代のIT製品として発表した。：これどんなシステム？」の「１文字目の１グラム索引」としてテキスト１の１文字目からの１文字「日」の索引を生成する。また、判断部１２４は、当該「日」の前後の１文字を検出する。「日」は１文字目であるので、判断部１２４は「日」の前の文字を検出しない。判断部１２４は「日」の後の文字として「本」を検出する。
【００６５】
また、表の３行目に示すように、判断部１２４は、テキスト１の「２文字目の１グラム索引」として「本」の索引を生成し、「前の文字」及び「後の文字」として「日」及び「Ｉ」を検出する。同様に、判断部１２４は、テキスト１の「２文字目の４グラム索引」として「本IBM」の索引を生成し、「前の文字」及び「後の文字」として「日」及び「は」を検出する。
【００６６】
このように、判断部１２４は、文字数ｎのテキスト１において、１≦ｉ≦ｎ−１を満たす全ての自然数ｉに対して、１文字目〜ｎ−ｉ＋１文字目までのｉグラムの索引を生成する。判断部１２４は、同様にテキスト２〜５のＮグラム索引を生成する。
【００６７】
判断部１２４は、文字数ｎのテキストに対してｎグラムの索引を生成しなくてよい。これにより、判断部１２４は、例えば、他のユーザの投稿の全体をそのまま再投稿するリツイート等のテキストを、引用部分として検出することがない。この場合、Ｓ１１２の処理において、文字列変換部１４４は、複数のテキストの一のテキスト全体と一致するか判断しなくてよい。
【００６８】
また、判断部１２４は、テキストの索引として既にサンプリングされた文字列と同一の文字列を、当該テキストの別の索引としてサンプリングしなくてよい。これにより、判断部１２４は、同一の文字列について重複して索引を生成することを回避するので、情報処理装置１０の処理リソースを節約できる。
【００６９】
図６は、判断部１２４が複数のテキスト１〜５のＮグラム索引を生成した例を示す。図６の上表は、判断部１２４がテキスト１〜５に対して生成したＮグラム索引のうち、テキスト１の２文字目、テキスト２の１２文字目、テキスト４の２文字目、及び、テキスト５の１５文字目の４グラム索引として生成した文字列「本IBM」の索引部分を示す。すなわち、判断部１２４は、Ｎグラム索引により、テキスト１、２、４及び５に共通して含まれる同一の文字列「本IBM」を検出する。
【００７０】
図６の下表は、判断部１２４がテキスト１〜５に対して生成したＮグラム索引のうち、テキスト１の１文字目、テキスト２の１１文字目、テキスト４の１文字目、及び、テキスト５の１４文字目の３４グラム索引として生成した文字列「日本IBMはPureSystemsを新時代のIT製品として発表した。」の索引部分を示す。すなわち、判断部１２４は、Ｎグラム索引により、テキスト１、２、４及び５に共通して含まれる同一の文字列「日本IBMはPureSystemsを新時代のIT製品として発表した。」を検出する。
【００７１】
判断部１２４は、複数のテキスト１〜５に対してＮグラム索引を生成した後で、Ｎグラム索引に含まれる文字列のうち、文字列の前後の文字が複数のテキストにわたって共通していない文字列を、引用部分として検出する。
【００７２】
例えば、上表において、複数のテキストに共通する文字列「本IBM」の前後の文字は「日」及び「は」でテキスト１、２、４及び５のいずれにおいても共通している。一方で、下表において、複数のテキストに共通する文字列「日本IBMはPureSystemsを新時代のIT製品として発表した。」の前後の文字は、テキスト１、２、４及び５のいずれにおいても共通していない。この場合、判断部１２４は、文字列「本IBM」を引用部分として検出せず、文字列「日本IBMはPureSystemsを新時代のIT製品として発表した。」を引用部分として検出する。
【００７３】
これにより、判断部１２４は、複数のテキストが共通して含む同一の文字列のうち最長の文字列を引用部分として検出し、最長の文字列より短い文字列を引用部分として検出しない。従って、判断部１２４は、最長の文字列と実質的に同じ文字列の処理を省略して情報処理装置１０の処理リソースを節約することができる。このように、判断部１２４は、複数のテキストから引用部分である文字列を検出し、検出した文字列から構成される引用文字列テーブルを生成する。
【００７４】
図７は、Ｓ１０４において判断部１２４が生成する引用文字列テーブルを例示する。図示するように、例えば、判断部１２４は、引用部分として文字列１「日本IBMはPureSystemsを新時代のIT製品として発表した。」、文字列２「日本IBMはPureSystemsを新時代のIT製品として発表」、文字列３「PureSystemsを新時代のIT製品として発表した。」、文字列４「［日光ニュース］A社が新型スマートフォンを発表。」、文字列５「新社長就任のお知らせ」、及び、文字列６「娘が全国大会で優勝しました！」を含む引用文字列テーブルを生成する。ここで、文字列１は、文字列２及び文字列３を包含するが、判断部１２４はこれらを別の引用部分として区別して検出している。
【００７５】
図８は、Ｓ１０８及びＳ１１０において照合部１２６が生成する照合テーブルを例示する。照合部１２６は、Ｓ１０８において、共通部分を含む文字列１、文字列２、及び文字列３に係る引用部分を同一の情報からの引用であると判断して、引用文字列テーブルに同一の識別情報「NEWS_TITLE1」を付与した照合テーブルを生成する。
【００７６】
また、照合部１２６は、Ｓ１１０において、最終的な参照先情報「http://www. XXXXXXitnews.co.jp/news1111」の参照先に文字列１〜３が含まれることに応じて、照合テーブルにおいて文字列１〜３と、最終的な参照先情報及び最終的な参照先情報に対応する他の参照先情報とを対応付ける。このように、照合部１２６は、識別情報、引用部分、最終的な参照先情報、及び、他の参照先情報を対応付けた照合テーブルを生成する。
【００７７】
図９は、Ｓ１１２において変換部１４０が生成する複数の変換済テキストを例示する。図示されるように、文字列変換部１４４は、複数のテキスト１〜５の文字列「日本IBMはPureSystemsを新時代のIT製品として発表した。」を識別情報「NEWS_TITLE1」に変換し、参照先変換部１４２は参照先情報を識別情報「NEWS_TITLE1」に置換する。
【００７８】
ここで、テキスト２、４及び５は、文字列「日本IBMはPureSystemsを新時代のIT製品として発表した。」と参照先情報の両方を有するので、変換部１４０は、当該文字列及び参照先情報のうち一方を置換せずに削除する。また、文字列変換部１４４は、宛先を示す「@Hogehoge」を「To_User」に置換し、タグ「#IBM_News」を削除する。
【００７９】
テキストマイニング部１５０は、図９に示す変換済テキストをテキストマイニングすることで、例えば「NEWS_TITLE1」が特定のグループのテキスト内で、特定の期間に、何回出現したかを集計することができる。これにより、本実施形態の情報処理装置１０は、引用の内容ごとに引用の頻度等を分析することができる。
【００８０】
図１０は、情報処理装置１０として機能するコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部を備える。
【００８１】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００８２】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、有線又は無線によりネットワークを介して他の装置と通信する。また、通信インターフェイスは、通信部１１０における通信を行うハードウェアとして機能する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００８３】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続するとともに、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００８４】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００８５】
コンピュータ１９００にインストールされ、コンピュータ１９００を情報処理装置１０として機能させるプログラムは、通信モジュールと、検出モジュールと、参照先検出モジュールと、判断モジュールと、照合モジュールと、変換モジュールと、参照先変換モジュールと、文字列変換モジュールと、テキストマイニングモジュールとを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、通信部１１０と、検出部１２０と、参照先検出部１２２と、判断部１２４と、照合部１２６と、変換部１４０と、参照先変換部１４２と、文字列変換部１４４と、テキストマイニング部１５０としてそれぞれ機能させてよい。
【００８６】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である通信部１１０と、検出部１２０と、参照先検出部１２２と、判断部１２４と、照合部１２６と、変換部１４０と、参照先変換部１４２と、文字列変換部１４４と、テキストマイニング部１５０として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ１９００の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の情報処理装置１０が構築される。
【００８７】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００８８】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０及び外部記憶装置等をメモリ、記憶部、または記憶装置等と総称し、記憶部１３０として機能させる。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【００８９】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすか否かを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００９０】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００９１】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５の他に、ＤＶＤ又はＣＤ等の光学記録媒体、ＭＯ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ１９００に提供してもよい。
【００９２】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００９３】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００９４】
１０  情報処理装置、２０  サーバ、３０  サーバ、１１０  通信部、１２０  検出部、１２２  参照先検出部、１２４  判断部、１２６  照合部、１３０  記憶部、１４０  変換部、１４２  参照先変換部、１４４  文字列変換部、１５０  テキストマイニング部、１９００  コンピュータ、２０００  ＣＰＵ、２０１０  ＲＯＭ、２０２０  ＲＡＭ、２０３０  通信インターフェイス、２０４０  ハードディスクドライブ、２０５０  フレキシブルディスク・ドライブ、２０６０  ＣＤ−ＲＯＭドライブ、２０７０  入出力チップ、２０７５  グラフィック・コントローラ、２０８０  表示装置、２０８２  ホスト・コントローラ、２０８４  入出力コントローラ、２０９０  フレキシブルディスク、２０９５  ＣＤ−ＲＯＭ
【図１】
2014146257.tif 000003
【図２】
2014146257.tif 000004
【図３】
2014146257.tif 000005
【図４】
2014146257.tif 000006
【図５】
2014146257.tif 000007
【図６】
2014146257.tif 000008
【図７】
2014146257.tif 000009
【図８】
2014146257.tif 000010
【図９】
2014146257.tif 000011
【図１０】
2014146257.tif 000012