(57)【要約】【課題】テキスト中に連続して出現する複数の単語の中から、複合語として適切な語句の区切りを精度良く検出する。【解決手段】複数のテキストから、複合語を抽出するシステムであって、複数のテキストを解析して複合語の候補を取得する取得部と、複数のテキストのそれぞれから複合語の候補に含まれる各単語を検索することにより、各テキストにおける各単語の出現頻度を算出する算出部と、各単語の出現頻度をテキストが発行された順に並べた時系列データにおいて、出現頻度の変化が同期しているか否かに基づいて、複合語の候補を複合語として抽出するか否かを選択する選択部とを備えるシステムを提供する。【選択図】図１
2007257390.tif 000002
【特許請求の範囲】
【請求項１】
複数のテキストから、複合語を抽出するシステムであって、
複数の第一テキストを解析して複合語の候補を取得する取得部と、
複数の第二テキストのそれぞれから前記複合語の候補に含まれる各単語を検索することにより、各第二テキストにおける各単語の出現頻度を算出する算出部と、
各単語の出現頻度を第二テキストが発行された順に並べた時系列データにおいて、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する選択部と
を備えるシステム。
【請求項２】
前記選択部は、
複数の前記複合語の候補のそれぞれについて、当該複合語の候補に含まれる複数の単語の出現頻度を示す時系列データにおいて、それぞれの単語の出現頻度の変化が同期しているか否かに基づいて、当該複合語の候補を前記複合語として抽出すべき度合いを示すスコアを算出し、
それぞれの前記複合語の候補の前記スコアに基づいて、前記複合語として抽出する前記複合語の候補を選択する
請求項１に記載のシステム。
【請求項３】
前記選択部は、予め指定された単語が前記複合語の候補に含まれる場合において、前記予め指定された単語と当該複合語の候補に含まれる他の単語との出現頻度の変化が同期していることを条件に、前記複合語の候補を前記複合語として選択する
請求項１に記載のシステム。
【請求項４】
前記選択部は、出現頻度が予め定められた上限以下かつ予め定められた下限以上で推移する中頻度単語が前記複合語の候補に含まれる場合において、前記中頻度単語と前記複合語の候補に含まれる他の単語との出現頻度の変化が同期していることを条件に、前記複合語の候補を前記複合語として選択する
請求項１に記載のシステム。
【請求項５】
前記選択部は、前記複合語の候補に含まれる他の語句により前記中頻度単語が修飾される関係にある場合において、前記中頻度単語と前記複合語の候補に含まれる他の単語との出現頻度の変化が同期していることを条件に、前記複合語の候補を前記複合語として選択する
請求項４に記載のシステム。
【請求項６】
前記複合語の候補に含まれる複数の単語の何れもが、予め指定されておらず、かつ、出現頻度が予め定められた上限以下かつ予め定められた下限以上で推移する中頻度単語でないことを条件に、
前記算出部は、前記複数の第二テキストのそれぞれから、前記複合語の候補を検索することにより、各第二テキストにおける前記複合語の候補の出現頻度を更に算出し、
前記選択部は、前記複合語の候補の出現頻度を第二テキストが発行された順に並べた時系列データと、各単語の出現頻度を第二テキストが発行された順に並べた時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する
請求項１に記載のシステム。
【請求項７】
前記選択部は、各単語について、前記時系列データを予め定められた期間毎に分割し、分割された複数の時系列データに基づいて前記予め定められた期間内の出現頻度の変化を求め、各単語についての前記予め定められた期間内の出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する
請求項１に記載のシステム。
【請求項８】
予め設定された複数の見出し語のそれぞれに対応付けて、検索対象となる複数の第三テキストから当該見出し語を含む第三テキストを予め検索して記憶している記憶部と、
第三テキストを検索するためのキーワードの入力を受け付ける入力部と、
入力された当該キーワードが前記見出し語であることを条件に、当該キーワードを含む第三テキストを前記検索対象となる複数の第三テキストから検索する処理に代えて、当該見出し語に対応する第三テキストを前記記憶部から読み出して出力する検索部と
を有するテキスト検索装置を更に備え、
前記選択部は、選択した前記複合語を前記見出し語として設定することにより、当該複合語を含む第三テキストを前記テキスト検索装置に予め検索させて前記記憶部に記憶させる
請求項１に記載のシステム。
【請求項９】
予め設定された複数の見出し語のそれぞれに対応付けて、検索対象となる複数の第三テキストから当該見出し語を含む第三テキストを予め検索して記憶している記憶部と、
第三テキストを検索するためのキーワードの入力を受け付ける入力部と、
入力された当該キーワードが前記見出し語であることを条件に、当該キーワードを含む第三テキストを前記検索対象となる複数の第三テキストから検索する処理に代えて、当該見出し語に対応する第三テキストを前記記憶部から読み出して出力する検索部と
を有するテキスト検索装置に対して前記選択部によって選択された複合語を前記見出し語として出力する出力部を更に備える請求項１に記載のシステム。
【請求項１０】
第三テキストを検索するためのキーワードの入力を受け付ける入力部と、
複数のキーワードが入力され、かつ、入力された前記複数の第三キーワードを含む複合語が前記選択部によって選択されていることを条件に、入力された前記複数の第三キーワードのそれぞれを含むテキストに加えて、当該複合語を含む第三テキストを、検索対象となる複数の第三テキストから検索して出力する検索部と
を有するテキスト検索装置を更に備える請求項１に記載のシステム。
【請求項１１】
前記検索部は、当該複合語を含む第三テキストを、入力された前記複数のキーワードのそれぞれを含む第三テキストよりも優先して出力する
請求項１０に記載のシステム。
【請求項１２】
第三テキストを検索するためのキーワードの入力を受け付ける入力部と、
複数のキーワードが入力され、かつ、入力された前記複数のキーワードを含む複合語が前記選択部によって選択されていることを条件に、入力された前記複数のキーワードのそれぞれを含む第三テキストに加えて、当該複合語を含む第三テキストを、検索対象となる複数の第三テキストから検索して出力する検索部と
を有するテキスト検索装置に対して前記選択部によって選択された複合語を出力する出力部を更に備える請求項１に記載のシステム。
【請求項１３】
前記取得部は、各第一テキストを構文解析することにより単語の品詞を判断し、連続して出現する複数の名詞を複合語の候補として取得する
請求項１に記載のシステム。
【請求項１４】
複数のテキストから、複合語を抽出するシステムであって、
複数の第一テキストを解析して複合語の候補を取得する取得部と、
複数の第二テキストのそれぞれから、前記複合語の候補と前記複合語の候補に含まれる各単語とを検索することにより、各第二テキストにおける前記複合語の候補および各単語の出現頻度を算出する算出部と、
前記複合語の候補の出現頻度を第二テキストが発行された順に並べた時系列データと、各単語の出現頻度を第二テキストが発行された順に並べた時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する選択部と
を備えるシステム。
【請求項１５】
前記選択部は、
複数の前記複合語の候補のそれぞれについて、当該複合語の候補の出現頻度の時系列データと、当該複合語に含まれる各単語の出現頻度の時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、当該複合語の候補を前記複合語として抽出すべき度合を示すスコアを算出し、
それぞれの前記複合語の候補の前記スコアに基づいて、前記複合語として抽出する前記複合語の候補を選択する
請求項１４に記載のシステム。
【請求項１６】
前記複合語の候補に含まれる複数の単語の何れもが、予め指定されていないことを条件に、
前記算出部は、前記複数の第二テキストのそれぞれから、前記複合語の候補と前記複合語の候補に含まれる各単語とを検索することにより、各第二テキストにおける前記複合語の候補および各単語の出現頻度を算出し、
前記選択部は、前記複合語の候補の出現頻度を第二テキストが発行された順に並べた時系列データと、各単語の出現頻度を第二テキストが発行された順に並べた時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する
請求項１４に記載のシステム。
【請求項１７】
前記複合語の候補に含まれる複数の単語の何れもが、出現頻度が予め定められた上限以下かつ予め定められた下限以上で推移する中頻度単語でないことを条件に、
前記算出部は、前記複数の第二テキストのそれぞれから、前記複合語の候補と前記複合語の候補に含まれる各単語とを検索することにより、各第二テキストにおける前記複合語の候補および各単語の出現頻度を算出する算出部と、
前記選択部は、前記複合語の候補の出現頻度を第二テキストが発行された順に並べた時系列データと、各単語の出現頻度を第二テキストが発行された順に並べた時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する
請求項１４に記載のシステム。
【請求項１８】
複数のテキストから、複合語を抽出する方法であって、
複数の第一テキストを解析して複合語の候補を取得するステップと、
複数の第二テキストのそれぞれから前記複合語の候補に含まれる各単語を検索することにより、各第二テキストにおける各単語の出現頻度を算出するステップと、
各単語の出現頻度を第二テキストが発行された順に並べた時系列データにおいて、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択するステップと
を備える方法。
【請求項１９】
複数のテキストから、複合語を抽出するシステムとして、情報処理装置を機能させるプログラムであって、
前記情報処理装置を、
複数の第一テキストを解析して複合語の候補を取得する取得部と、
複数の第二テキストのそれぞれから前記複合語の候補に含まれる各単語を検索することにより、各第二テキストにおける各単語の出現頻度を算出する算出部と、
各単語の出現頻度を第二テキストが発行された順に並べた時系列データにおいて、出現頻度の変化が同期しているか否かに基づいて、前記複合語の候補を前記複合語として抽出するか否かを選択する選択部と
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のテキストから語句を抽出するシステムに関する。特に、本発明は、語句をその出現頻度に基づいて抽出するシステムに関する。
【背景技術】
【０００２】
インターネットの掲示板やウェブログには、企業や商品などに対する消費者の感想や苦情などの情報が書き込まれる場合がある。このような情報は、これまでコールセンターやアンケートなどで収集していた情報と比べ量が多く、かつ、収集が容易である。更に、掲示板やウェブログには、消費者の率直な感想が書込まれ易い。したがって、このような情報を有効活用できれば、企業活動の戦略立案などを一層促進できると考えられる。
【０００３】
掲示板やウェブログなどには、消費者が自由な文体でテキストを投稿することができる。このような不定型のテキストから有用な情報を抽出する技術は、テキストマイニングなどと呼ばれて研究がすすめられている（非特許文献４から６および特許文献２から５を参照。）。テキストマイニングにおいては、注目すべきキーワードがテキストに出現する頻度や、その頻度の時間の進行に伴う変化が分析の対象となる場合が多い。ここでいうキーワードとは、１単語のみならず複数の単語が組み合わされた複合語であってもよい。しかしながら、注目すべきキーワードを適切に決定するのは容易ではなく、その決定によってはテキストマイニングの結果が大きく異なる場合もある。
【０００４】
【特許文献１】特開２００２−２４５０６２号公報
【特許文献２】特開２００１−３２５２７２号公報
【特許文献３】特開２００４−２０６３９１号公報
【特許文献４】特開２００２−２５１４０２号公報
【特許文献５】特開２００５−１６５７４８号公報
【非特許文献１】S. Ananiadou 1994. A Methodology For Automatic Term Recognition.  COLING 1994: 1034-1038
【非特許文献２】Nakagawa H. and Mori T. 2003 Automatic Term Recognition based on Statistics of Compound Nouns and their Components. Terminology, Vol.9 No.2, pp. 201-219
【非特許文献３】中川裕志、森辰則、湯本紘彰. 2003 出現頻度と連接頻度に基づく専門用語抽出. 自然言語処理、Vol.10 No.1, pp. 27 - 45
【非特許文献４】J. Kleinberg 2002 Bursty and Hierarchical Structure in Streams. KDD 2002, pp.91-101
【非特許文献５】佐藤吉秀,川島晴美,佐々木勉,奥雅博.  2005 時系列ニュースにおける最新話題語抽出方法.  情報処理学会自然言語処理研究会 NL168, pp1-12
【非特許文献６】関口裕一郎,佐藤吉秀,川島晴美,奥田英範,奥雅博.  2005 blogページ集合に対する話題語句抽出手法.  情報処理学会自然言語処理研究会 NL170,pp27-32
【非特許文献７】Nasukawa T. and Nagano, T. 2001 Text analysis and knowledge mining system. IBM Systems Journal, Vol. 40, No. 4, pp. 967--984.
【非特許文献８】Nagano T., Takeda K. and Nasukawa T. 2001 Knowledge Discovery using Robust Natural Language Processing. In Proc. of PACLING 2001
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来、テキスト中に連続して出現する複数の単語の中から、複合語として適切な語句の区切りを検出する技術が研究されている（非特許文献１から３および特許文献１を参照。）。これらの技術では、それぞれの語句がテキストに出現する頻度に基づいて複合語を抽出している。例えば、ある複合語の候補に隣接する語句にばらつきがある場合には、それらの隣接する語句まで含めて複合語とするのは適切でなく、その複合語の候補のみを複合語として判断している。しかしながら、これらの技術では、コーパス全体での出現頻度は低いものの、ある時期のみに流行的に使われたような複合語は、複合語として適切に判断できない場合があった。
【０００６】
また、複合語を記録した辞書を利用者により予め構築する方法や、文法解析の結果として得られた名詞句を複合語とする方法も考えられている。しかしながら、辞書の構築には手間がかかり、また、複合語は自然発生的に作られる場合もあるので全ての複合語を辞書に登録することは現実的でない。また、文法解析の結果として得られた名詞句は、コーパス中の出現頻度が極めて小さい場合もあり、テキストマイニングのキーワードとして不適切な場合がある。
【０００７】
そこで本発明は、上記の課題を解決することのできるシステム、方法およびプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の１つの形態においては、複数のテキストから、複合語を抽出するシステムであって、複数の第一テキストを解析して複合語の候補を取得する取得部と、複数の第二テキストのそれぞれから複合語の候補に含まれる各単語を検索することにより、各第二テキストにおける各単語の出現頻度を算出する算出部と、各単語の出現頻度を第二テキストが発行された順に並べた時系列データにおいて、出現頻度の変化が同期しているか否かに基づいて、複合語の候補を複合語として抽出するか否かを選択する選択部とを備えるシステムを提供する。また、当該システムとして情報処理装置を機能させるプログラム、および、当該システムによって複合語を抽出する方法を提供する。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【０００９】
本発明によれば、テキスト中に連続して出現する複数の単語の中から、複合語として適切な語句の区切りを精度良く検出することができる。
【発明を実施するための最良の形態】
【００１０】
以下、発明を実施するための最良の形態（以下、実施の形態と称す）を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１１】
図１は、本発明の実施形態に係る情報処理システム１０の全体構成を示す。情報処理システム１０は、複合語抽出装置２０と、テキスト検索装置３０とを有する。複合語抽出装置２０は、コーパスＤＢ２５に記録された複数のテキストから複合語を抽出する装置である。コーパスＤＢ２５には、コーパスと呼ばれる複数のテキストが記録されている。コーパスは、複合語の候補を取得するために用いる複数の第一テキストと、複合語の候補の出現頻度を算出するために用いる第二テキストとを含む。コーパスは、例えば、インターネットなどの電子掲示板またはウェブログなどからテキストを収集することにより構築されてもよい。テキスト検索装置３０は、利用者から入力された検索キーワードによって通信ネットワーク３５中の第三テキストを検索し、その検索結果を出力する。また、テキスト検索装置３０は、利用者から入力された複数の検索キーワードが、組み合わせることにより複合語を構成する場合には、その複合語によって更に第三テキストを検索してもよい。
このように、本実施形態に係る情報処理システム１０は、コーパス中に出現するテキストに基づき、複合語として適切な単語の区切りを精度良く検出することを目的とする。また、検出された複合語を用いて、テキスト検索の有効性を高めることを目的とする。以下、具体的に述べる。
【００１２】
複合語抽出装置２０は、取得部２００と、算出部２１０と、選択部２２０と、出力部２３０とを有する。取得部２００は、複数の第一テキストを解析して複数の複合語の候補を取得する。複合語の候補としての条件は、第一テキスト中で記載が連続することである。例えば、第一テキスト中に「鳥インフルエンザ問題」という語句が出現した場合には、「鳥インフルエンザ」、「鳥インフルエンザ問題」および「インフルエンザ問題」のそれぞれが複合語の候補である。即ち例えば、取得部２００は、それぞれの第一テキストを構文解析することにより単語の品詞を判断したうえで、連続して出現する複数の名詞を複合語の候補と判断してもよい。これに加えて、取得部２００は、ある語句がコーパスＤＢ２５中に出現する頻度が所定以上であることを更に条件として、その語句を複合語と判断してもよい。
【００１３】
算出部２１０は、複数の複合語の候補のそれぞれについて、複数の第二テキストのそれぞれから当該複合語の候補に含まれる各単語を検索することにより、各第二テキストにおける各単語の出現頻度を算出する。例えば、複合語の候補の１つが「鳥インフルエンザ問題」であれば、それに含まれる単語「鳥」、単語「インフルエンザ」および単語「問題」のそれぞれについて出現頻度が算出される。また、算出部２１０は、複数の複合語の候補のそれぞれについて、当該複合語の候補を当該複数の第二テキストのそれぞれから検索することにより、各第二テキストにおける各複合語の候補の出現頻度を算出する。例えば複合語の候補の１つが「列車爆発事故」であれば、「列車」や「事故」単体ではなく、「列車爆発事故」として連続して表記される頻度が算出される。ここで、取得部２００が複合語の候補を取得する対象となる第一テキストと、算出部２１０が出現頻度を算出する対象となる第二テキストとは、同一であってもよいし、異なっていてもよいし、一部が重複してもよい。
【００１４】
選択部２２０は、複合語の候補のそれぞれについて以下の処理を行う。まず、ある複合語の候補に、予め定められた重要語が含まれる場合について説明する。選択部２２０は、当該重要語と当該複合語の候補に含まれる他の単語との出現頻度の変化が同期しているか否かに基づいて、当該複合語の候補を複合語として抽出するか否かを選択する。具体的には、選択部２２０は、当該重要語と他の単語との出現頻度の変化が同期していれば、当該複合語の候補を複合語として選択し、同期していなければ当該複合語の候補を複合語として選択しない。
【００１５】
ここで、重要語は、例えば、コーパスの内容が属する分野において重要であるとして利用者により予め指定された単語である。このような重要語は、言語学上、言語的単位のもつ分野固有の概念への関連性の強さを有する語であることが望ましい。なお、重要語の決め方には多様な方法が考えられる。例えば、重要語とは、時系列データにおいて出現頻度が予め定められた上限以下かつ予め定められた下限以上で推移する中頻度単語であってもよい。更に、中頻度単語が重要語であるためには、複合語の候補に含まれる他の単語によってその中頻度単語が修飾される関係にあることが望ましい。その他、重要語は、話題の中心となっている語句を定める既存技術によって検出されてもよい。このような技術の詳細については、非特許文献８を参照されたい。更に他の例として、選択部２２０は、TFIDF（term frequency and inversed document frequency）などの技術を用いてある分野に特有な単語を検出し、その単語を重要語と判断してもよい。
【００１６】
一方で、ある複合語の候補について、当該複合語の候補に含まれる複数の単語の何れもが、コーパスが属する分野において重要であるとして予め指定されておらず、かつ、中頻度単語でないことを条件に、選択部２２０は以下の処理を行う。選択部２２０は、この複合語の候補の出現頻度を第二テキストが発行された順に並べた時系列データと、各単語の出現頻度を第二テキストが発行された順に並べた時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、この複合語の候補を複合語として抽出するか否かを選択する。具体的には、選択部２２０は、この複合語の候補の時系列データと、各単語の時系列データとが同期していないことを条件に、この複合語の候補を複合語として抽出する。出力部２３０は、このようにして選択部２２０により選択された複合語をテキスト検索装置３０に対し出力する。
【００１７】
テキスト検索装置３０は、記憶部３００と、入力部３１０と、検索部３２０とを有する。記憶部３００は、予め設定された複数の見出し語のそれぞれに対応付けて、検索対象となる複数の第三テキストから当該見出し語を含む第三テキストを予め検索して記憶している。ここで、検索対象となる複数の第三テキストとは、例えば、通信ネットワーク３５において検索時点で公開されているウェブページや電子掲示板、ウェブログなどである。入力部３１０は、第三テキストを検索するための検索キーワードの入力を受け付ける。検索部３２０は、入力された当該検索キーワードによって、通信ネットワーク３５中の第三テキストを検索する。また、検索部３２０は、入力された当該検索キーワードが見出し語であることを条件に、当該検索キーワードを含む第三テキストを通信ネットワーク３５から検索する処理に代えて、当該見出し語に対応する第三テキストを記憶部３００から読み出して、検出結果として出力する。
【００１８】
このように、テキスト検索装置３０は、見出し語に対応するテキストを予め検索することで、利用者による入力を受けてから検索結果を出力するまでの所要時間を短縮している。したがって、見出し語は検索キーワードとして入力されることが想定されるものであることが望ましい。このため、選択部２２０は、選択した複合語をテキスト検索装置３０における見出し語として設定することにより、当該複合語を含むテキストをテキスト検索装置３０に予め検索させて記憶部３００に記憶させてもよい。これにより、例えば新たに用いられるようになってきた流行語などを見出し語として登録することができ、検索処理の所要時間を短縮することができる。
【００１９】
図２は、本発明の実施形態に係る複合語抽出装置２０によって複合語が抽出される処理のフローチャートである。取得部２００は、複数の複合語の候補を取得する（Ｓ２００）。そして複合語抽出装置２０は、それぞれの複合語の候補について以下の処理を行う。まず、複合語抽出装置２０は、当該複合語の候補が重要語を含むか否かを判断する（Ｓ２１０）。例えば、「インフルエンザ」という単語は所定の分野で重要であるとして予め指定されているものとする。
【００２０】
重要語を含むことを条件に（Ｓ２１０：ＹＥＳ）、算出部２１０は、当該複合語の候補について、複数の第二テキストのそれぞれから当該複合語の候補に含まれる各単語を検索することにより、各第二テキストにおける各単語の出現頻度の時間推移を算出する（Ｓ２２０）。例えば、複合語の候補の１つが「鳥インフルエンザ問題」であれば、それに含まれる単語「鳥」、単語「インフルエンザ」および単語「問題」のそれぞれについて出現頻度の時間推移が算出される。図３から図５に、あるコーパスにおいて実際に得られた出現頻度を例示する。
【００２１】
図３は、語句「鳥インフルエンザ問題」に含まれる単語「鳥」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「鳥」が出現する頻度をその出現時期毎に算出した結果、図３に示す時系列データを得る。この時系列データにおいて、単語「鳥」の出現頻度は、１月から２月にかけて増加し始め、３月から４月を過ぎたあたりで減少している。
【００２２】
図４は、語句「鳥インフルエンザ問題」に含まれる単語「インフルエンザ」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「インフルエンザ」が出現する頻度をその出現時期毎に算出した結果、図４に示す時系列データを得る。この時系列データにおいて、単語「インフルエンザ」の出現頻度は、１月から２月にかけて増加し始め、３月から４月を過ぎたあたりで減少している。
【００２３】
図５は、語句「鳥インフルエンザ問題」に含まれる単語「問題」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「問題」が出現する頻度をその出現時期毎に算出した結果、図５に示す時系列データを得る。この時系列データにおいて、単語「問題」の出現頻度は、２月あたりでピークを迎えるものの、年間を通して高い水準を維持している。
【００２４】
図２に戻る。次に選択部２２０は、当該複合語の候補に含まれる複数の単語の出現頻度を示す時系列データにおいて、それぞれの単語の出現頻度の変化が同期しているか否かに基づいて、当該複合語の候補を複合語として抽出すべき度合いを示すスコアを算出する（Ｓ２３０）。スコアの算出方法については例えば次の通りである。複合語の候補をｗａｌｌとし、ｍ個の単語から構成されているものとする。それぞれの単語をｗ１からｗｍとすると。ｗａｌｌ＝ｗ１ｗ２…ｗｍとなる。
【００２５】
まず、２つの単語の出現頻度の時間推移の差を定義する。時刻ｔから微小時間ΔＴが経過するまでの間に出現した単語ｗの出現頻度をｆ（ｗ，ｔ）とする。また、時刻ｔｋと時刻ｔｋ＋１における単語ｗｉの出現頻度の差分をΔｆ（ｗｉ，ｔｋ）とすると、以下の式（１）が成り立つ。
【数１】
2007257390.tif 000003
【００２６】
このとき、時刻ｔｋにおける単語ｗｉと単語ｗｊの頻度の差分の差Ｄｔ（ｗｉ，ｗｊ，ｔｋ）を以下の式（２）ように定義する。
【数２】
2007257390.tif 000004
【００２７】
これを、スコア算出の対象となる全期間（ｔ０からｔｎ−１まで）について足し合わせることで、単語ｗｉと単語ｗｊの頻度の時間推移の相違度ＤＴ（ｗｉ，ｗｊ）が以下の式（３）のように定義される。
【数３】
2007257390.tif 000005
【００２８】
そして、２つの単語の出現頻度の相違度ＤＴ（ｗｉ，ｗｊ）を用いて、複合語の候補ｗａｌｌに対し重要語と他の単語との相違度を表すＤａｌｌを求める。このとき、単語数ｍ−１（重要語は除外する）で正規化を行う。Ｄａｌｌの算出式は以下の式（４）の通りである。
【数４】
2007257390.tif 000006
選択部２２０は、上記の式（４）によって、当該複合語の候補を複合語として抽出すべき度合いを示すスコアを算出する。この例ではスコアが小さいほど、重要語と他の単語の頻度の推移が同期していることとなる。
【００２９】
そして、選択部２２０は、当該複合語の候補のスコアに基づいて、重要語と他の単語の頻度の推移が同期しているかを判断する（Ｓ２４０）。この判断には他の複合語の候補を用いてもよい。例えば、選択部２２０は、それぞれの複合語の候補のスコアを求めた上で、最もスコアの低いものから順に所定の個数の複合語の候補を選択し、選択されたそれらの複合語の候補については重要語と他の単語の推移が同期していると判断してもよい。重要語と他の単語の頻度の変化が同期していることを条件に（Ｓ２４０：ＹＥＳ）、選択部２２０は、当該複合語の候補を複合語として選択する（Ｓ２５０）。例えば図３から図５に示す例によると、単語「鳥」の出現頻度の変化は重要語である「インフルエンザ」の出現頻度の変化と同期しているのに対し、単語「問題」の出現頻度の変化は「インフルエンザ」の出現頻度の変化に同期しているとはいえない。このため、「鳥インフルエンザ問題」ではなく、「鳥インフルエンザ」が複合語として選択される。
【００３０】
以上の処理に代えて、選択部２２０は、各単語の出現頻度が季節毎にどのように変化するか、または、時間帯毎にどのように変化するかに基づいて時系列データを生成し、各単語の出現頻度が同期するか否かを判断してもよい。即ち例えば、選択部２２０は、各単語について、取得された時系列データを予め定められた期間（例えば、１年、１ヶ月または１日など）毎に分割し、分割された複数の時系列データに基づいて予め定められた期間内の出現頻度の変化を求める。そして、選択部２２０は、各単語についての予め定められた期間内の出現頻度の変化が同期しているか否かに基づいて、複合語の候補を複合語として抽出するか否かを選択する。これにより、ある季節やある時間帯において特に用いられ易い複合語などを精度良く抽出することができる。
【００３１】
一方で、当該複合語の候補が重要語を含まないことを条件に（Ｓ２１０：ＮＯ）、算出部２１０は、当該複合語の候補と当該複合語の候補に含まれる各単語とをコーパスから検索することにより、各第二テキストにおける当該複合語の候補および各単語の出現頻度の時間推移を算出する（Ｓ２６０）。例えば、複合語の候補の１つが「列車爆発事故」であれば、それ自体である「列車爆発事故」、それに含まれる単語「列車」、単語「爆発」および単語「事故」のそれぞれについて出現頻度の時間推移が算出される。図６から図８に、あるコーパスにおいて実際に得られた出現頻度を例示する。
【００３２】
図６は、語句「列車爆発事故」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「列車爆発事故」が出現する頻度をその出現時期毎に算出した結果、図６に示す時系列データを得る。この時系列データにおいて、単語「列車爆発事故」の出現頻度は、４月から５月にかけて急激に増加し、その他の時期では略ゼロである。
【００３３】
図７は、語句「列車爆発事故」に含まれる単語「列車」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「列車」が出現する頻度をその出現時期毎に算出した結果、図７に示す時系列データを得る。この時系列データにおいて、単語「列車」の出現頻度は、４月から５月にかけて急激に増加するものの、３月や１０月のある時期にも増加している。また、その他の時期においても安定的に推移している。
【００３４】
図８は、語句「列車爆発事故」に含まれる単語「爆発」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「爆発」が出現する頻度をその出現時期毎に算出した結果、図８に示す時系列データを得る。この時系列データにおいて、単語「爆発」の出現頻度は、１月や１１月に高くなっている。また、その他の時期においても比較的高い頻度で出現している。
【００３５】
図９は、語句「列車爆発事故」に含まれる単語「事故」の出現頻度を示す時系列データである。算出部２１０は、コーパスＤＢ２５のコーパスの中から、単語「事故」が出現する頻度をその出現時期毎に算出した結果、図９に示す時系列データを得る。この時系列データにおいて、単語「事故」の出現頻度は、３月に急激に増加するものの、１月、７月および１１月のある時期にも増加している。また、その他の時期においても比較的多く用いられている。
【００３６】
図２に戻る。次に、選択部２２０は、当該複合語の候補の出現頻度の時系列データと、当該複合語の候補に含まれる各単語の出現頻度の時系列データとの間で、出現頻度の変化が同期しているか否かに基づいて、当該複合語の候補を複合語として抽出すべき度合いを示すスコアを算出する（Ｓ２７０）。スコアの算出方法にはＳ２３０で説明した方法を応用できる。例えば、選択部２２０は、式（４）を用い、重要語と他の単語との間の同期性を示すスコアを算出する処理に代えて、複合語の候補とそれを構成する単語との間の同期性を示すスコアを算出してもよい。
【００３７】
そして、選択部２２０は、当該複合語の候補のスコアに基づいて、複合語の候補とそれを構成する単語との間で出現頻度の変化が同期しているかを判断する（Ｓ２８０）。同期していないことを条件に（Ｓ２８０：ＮＯ）、選択部２２０は、当該複合語の候補を複合語として選択する（Ｓ２９０）。図７から図９に示した例によれば、複合語の候補「列車爆発事故」は、単語「列車」、単語「爆発」および単語「事故」の何れと比較しても出現頻度の推移が同期していない。このため、複合語の候補「列車爆発事故」は複合語として抽出されることとなる。出力部２３０は、このように選択された複合語をテキスト検索装置３０に対し出力する。
【００３８】
図１０は、本発明の実施形態に係るテキスト検索装置３０によって第三テキストが検索される処理のフローチャートである。予め指定された語句の他、複合語抽出装置２０から通知された複合語は、テキスト検索装置３０において見出し語として設定される。まず、検索部３２０は、それぞれの見出し語について、当該見出し語を含む第三テキストを通信ネットワーク３５から検索して記憶部３００に記憶させる（Ｓ３００）。次に、入力部３１０は、利用者から検索キーワードの入力を受けたか判断する（Ｓ３１０）。
【００３９】
検索キーワードが入力されると（Ｓ３１０：ＹＥＳ）、検索部３２０は、検索キーワードは見出し語であるかを判断する（Ｓ３２０）。検索キーワードが見出し語でなければ（Ｓ３２０：ＮＯ）、検索部３２０は、その検索キーワードを含む第三テキストを通信ネットワーク３５から検索して出力する（Ｓ３４０）。検索キーワードが見出し語であれば（Ｓ３２０：ＹＥＳ）、検索部３２０は、その検索キーワードに対応付けて記憶部３００に記憶された第三テキストを記憶部３００から読み出して出力する（Ｓ３３０）。
【００４０】
入力部３１０は、複数の検索キーワードの入力を受け付けてもよい。複数の検索キーワードが入力されると、検索部３２０は、利用者の設定に応じ、例えばそれらの何れもを含む第三テキストを通信ネットワーク３５から検索する。この処理に加えて、検索部３２０は、以下の処理を行ってもよい。検索部３２０は、入力された複数のキーワードを含む複合語が選択部２２０によって選択されているか否かを判断する（Ｓ３５０）。即ち、キーワード「鳥」とキーワード「インフルエンザ」が入力されていれば、これらを組み合わせれば複合語「鳥インフルエンザ」となりこの条件を満たす。
【００４１】
入力された複数のキーワードを含む複合語が選択部２２０によって選択されていることを条件に（Ｓ３５０：ＹＥＳ）、検索部３２０は、これらのキーワードのそれぞれを含む第三テキストに加えて、当該複合語を含む第三テキストを通信ネットワーク３５中から検索する（Ｓ３６０）。そして、検索部３２０は、検索結果を例えば画面に表示するなどにより出力する（Ｓ３７０）。
【００４２】
図１１は、本発明の実施形態に係る検索部３２０によって出力される検索結果の表示例を示す。この表示例において、画面上方には検索キーワードの入力欄が表示される。入力欄には単語「鳥」と単語「インフルエンザ」が表示されている。検索部３２０は、検索キーワードの入力に応じ、それぞれの検索キーワードを含む第三テキストを検索すると共に、それらを組み合わせることによって形成される複合語を含む第三テキストを検索する。
【００４３】
検索結果は画面上に表示される。図１１の例では具体的には、複合語「鳥インフルエンザ」を含むウェブページのＵＲＬが表示される。また、単語「鳥」および単語「インフルエンザ」の双方を含むウェブページのＵＲＬが表示される。図１１の例のように、検索部３２０は、複合語を含むテキストを、複合語は含まないものの検索キーワードは含むテキストよりも優先して（例えば上側の出力欄に）表示してもよい。この結果、単にそれぞれの単語を含むテキストよりも、それら双方の単語との関連性がより高いテキストを優先して表示することができ、利用者の利便性を高めることができる。
【００４４】
図１２は、複合語抽出装置２０またはテキスト検索装置３０として機能する情報処理装置５００のハードウェア構成の一例を示す。情報処理装置５００は、ホストコントローラ１０８２により相互に接続されるＣＰＵ１０００、ＲＡＭ１０２０、及びグラフィックコントローラ１０７５を有するＣＰＵ周辺部と、入出力コントローラ１０８４によりホストコントローラ１０８２に接続される通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を有する入出力部と、入出力コントローラ１０８４に接続されるＢＩＯＳ１０１０、フレキシブルディスクドライブ１０５０、及び入出力チップ１０７０を有するレガシー入出力部とを備える。
【００４５】
ホストコントローラ１０８２は、ＲＡＭ１０２０と、高い転送レートでＲＡＭ１０２０をアクセスするＣＰＵ１０００及びグラフィックコントローラ１０７５とを接続する。ＣＰＵ１０００は、ＢＩＯＳ１０１０及びＲＡＭ１０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ１０７５は、ＣＰＵ１０００等がＲＡＭ１０２０内に設けたフレームバッファ上に生成する画像データを取得し、表示装置１０８０上に表示させる。これに代えて、グラフィックコントローラ１０７５は、ＣＰＵ１０００等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【００４６】
入出力コントローラ１０８４は、ホストコントローラ１０８２と、比較的高速な入出力装置である通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を接続する。通信インターフェイス１０３０は、ネットワークを介して外部の装置と通信する。ハードディスクドライブ１０４０は、情報処理装置５００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ１０６０は、ＣＤ−ＲＯＭ１０９５からプログラム又はデータを読み取り、ＲＡＭ１０２０又はハードディスクドライブ１０４０に提供する。
【００４７】
また、入出力コントローラ１０８４には、ＢＩＯＳ１０１０と、フレキシブルディスクドライブ１０５０や入出力チップ１０７０等の比較的低速な入出力装置とが接続される。ＢＩＯＳ１０１０は、情報処理装置５００の起動時にＣＰＵ１０００が実行するブートプログラムや、情報処理装置５００のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ１０５０は、フレキシブルディスク１０９０からプログラム又はデータを読み取り、入出力チップ１０７０を介してＲＡＭ１０２０またはハードディスクドライブ１０４０に提供する。入出力チップ１０７０は、フレキシブルディスク１０９０や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
【００４８】
情報処理装置５００に提供されるプログラムは、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ１０７０及び/又は入出力コントローラ１０８４を介して、記録媒体から読み出され情報処理装置５００にインストールされて実行される。プログラムが情報処理装置５００等に働きかけて行わせる動作は、図１から図１１において説明した複合語抽出装置２０またはテキスト検索装置３０における動作と同一であるから、説明を省略する。なお、情報処理装置５００をテキスト検索装置３０として機能させるプログラムは、例えば検索エンジンと呼ばれる検索用ソフトウェアである。一方で、情報処理装置５００を複合語抽出装置２０として機能させるプログラムは、そのような検索用ソフトウェアに対して追加機能を付加するためのアド・オンプログラムである。このような場合には、同一の情報処理装置５００を、テキスト検索装置３０および複合語抽出装置２０のそれぞれとして機能させることとなる。このような形態も本発明の特許請求の範囲に含まれることが明らかである。
【００４９】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５の他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを情報処理装置５００に提供してもよい。
【００５０】
以上、本実施形態に係る複合語抽出装置２０によれば、単語の出現頻度ではなくその時間経過に応じた変化に基づいて複合語を抽出することで、複合語を抽出する精度を高めることができる。複合語の抽出には、コーパス中の各テキストの作成日時が必要となるが、近年発達してきたインターネット上の掲示板などではこのような情報が容易に収集でき、既存技術との親和性も高い。また、本実施形態に係るテキスト検索装置３０によれば、精度良く検出された複合語をテキスト検索のキーワードとして利用することで、テキスト検索の処理を効率化し、また、テキスト検索の精度を高めることができる。
【００５１】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【００５２】
【図１】図１は、本発明の実施形態に係る情報処理システム１０の全体構成を示す。
【図２】図２は、本発明の実施形態に係る複合語抽出装置２０によって複合語が抽出される処理のフローチャートである。
【図３】図３は、語句「鳥インフルエンザ問題」に含まれる単語「鳥」の出現頻度を示す時系列データである。
【図４】図４は、語句「鳥インフルエンザ問題」に含まれる単語「インフルエンザ」の出現頻度を示す時系列データである。
【図５】図５は、語句「鳥インフルエンザ問題」に含まれる単語「問題」の出現頻度を示す時系列データである。
【図６】図６は、語句「列車爆発事故」の出現頻度を示す時系列データである。
【図７】図７は、語句「列車爆発事故」に含まれる単語「列車」の出現頻度を示す時系列データである。
【図８】図８は、語句「列車爆発事故」に含まれる単語「爆発」の出現頻度を示す時系列データである。
【図９】図９は、語句「列車爆発事故」に含まれる単語「事故」の出現頻度を示す時系列データである。
【図１０】図１０は、本発明の実施形態に係るテキスト検索装置３０によってテキストが検索される処理のフローチャートである。
【図１１】図１１は、本発明の実施形態に係る検索部３２０によって出力される検索結果の表示例を示す。
【図１２】図１２は、複合語抽出装置２０またはテキスト検索装置３０として機能する情報処理装置５００のハードウェア構成の一例を示す。
【符号の説明】
【００５３】
１０  情報処理システム
２０  複合語抽出装置
２５  コーパスＤＢ
３０  テキスト検索装置
３５  通信ネットワーク
２００  取得部
２１０  算出部
２２０  選択部
２３０  出力部
３００  記憶部
３１０  入力部
３２０  検索部
５００  情報処理装置
【図１】
2007257390.tif 000007
【図２】
2007257390.tif 000008
【図３】
2007257390.tif 000009
【図４】
2007257390.tif 000010
【図５】
2007257390.tif 000011
【図６】
2007257390.tif 000012
【図７】
2007257390.tif 000013
【図８】
2007257390.tif 000014
【図９】
2007257390.tif 000015
【図１０】
2007257390.tif 000016
【図１１】
2007257390.tif 000017
【図１２】
2007257390.tif 000018