(57)【要約】【課題】オフラインにおいて、少ない処理量でテキストからトピックワードを抽出する。【解決手段】トピックワード抽出装置は、集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出する汎用度算出手段と、入力テキストが入力されると、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手段により算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出するトピック重要度算出手段と、前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する抽出手段と、を有する。【選択図】図１
2011070291.tif 000002
【特許請求の範囲】
【請求項１】
集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出する汎用度算出手段と、
入力テキストが入力されると、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手段により算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出するトピック重要度算出手段と、
前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する抽出手段と、
を有するトピックワード抽出装置。
【請求項２】
前記トピック重要度算出手段は、前記出現頻度を前記汎用度で除算した値を前記トピック重要度とする、請求項１に記載のトピックワード抽出装置。
【請求項３】
前記抽出手段は、同じ入力テキストから抽出された２つの単語のうち、一方の単語が他方の単語を含み、該一方の単語のトピック重要度が、該他方の単語のトピック重要度より高ければ、該他方の単語をトピックワードとして抽出しない、請求項１又は２に記載のトピックワード抽出装置。
【請求項４】
前記抽出手段は、複数の単語について、前記トピック重要度算出手段により同一の値のトピック重要度が算出された場合、文字数の多い単語を優先してトピックワードとして抽出する、請求項１乃至３のいずれか１項に記載のトピックワード抽出装置。
【請求項５】
前記汎用度算出手段は、前記単語について、前記集計期間内における該単語の出現頻度が高いほど汎用度が大きく、該集計期間内において該単語が出現する事象の平均情報量が高いほど汎用度が大きくなるような演算を用いることにより、汎用度を算出する、請求項１乃至４のいずれか１項に記載のトピックワード抽出装置。
【請求項６】
前記汎用度算出手段は、前記集計期間内の単位期間ごとに、前記単語の出現数を計数し、該単位期間内において該単語が出現する事象の情報量をＨｔ、該単位期間内における該単語の出現数をＦｔ、前記集計期間内における該単語の出現数をＦ、汎用度をＳ、実数の係数をα、該単語が出現した単位期間の数をＴとして、
Ｈｔ＝−Ｆｔ／Ｆ×log(Ｆｔ／Ｆ)
Ｓ＝α×Ｆ×（１＋logＴ）×ΣＨｔ
の式から、前記単語の汎用度を算出する、請求項５に記載のトピックワード抽出装置。
【請求項７】
前記汎用度算出手段は、前記集計期間内の単位期間ごとに、前記単語の出現確率を算出し、該単位期間内において該単語が出現する事象の情報量をＨｔ、該単位期間内における該単語の出現確率をＰｔ、前記集計期間内における該単語の出現確率をＰ、汎用度をＳ、実数の係数をα、該単語が出現した単位期間の数をＴとして、
Ｈｔ＝−Ｐｔ／Ｐ×log(Ｐｔ／Ｐ)
Ｓ＝α×Ｐ×（１＋logＴ）×ΣＨｔ
の式から、前記単語の汎用度を算出する、請求項５に記載のトピックワード抽出装置。
【請求項８】
前記汎用度算出手段は、前記集計期間内の単位期間ごとに、前記単語の他の単語に対する相対的な出現頻度の指標値を決定し、該単位期間内において該単語が出現する事象の情報量をＨｔ、該単位期間内における該単語の他の単語に対する相対的な出現頻度の指標値をＯｔ、前記集計期間内における該単語の他の単語に対する相対的な出現頻度の指標値をＯ、汎用度をＳ、実数の係数をα、該単語が出現した単位期間の数をＴとして、
Ｈｔ＝−Ｏｔ／Ｏ×log(Ｏｔ／Ｏ)
Ｓ＝α×Ｐ×（１＋logＴ）×ΣＨｔ
の式から、前記単語の汎用度を算出する、請求項５に記載のトピックワード抽出装置。
【請求項９】
前記汎用度算出手段は、前記入力テキストにおいて連続する複数の単語が使用されているとき、それぞれの該単語を連結した単語である連続単語についても汎用度を算出する、請求項１乃至８のいずれか１項に記載のトピックワード抽出装置。
【請求項１０】
前記トピック重要度算出手段は、抽出した前記単語が前記汎用度算出手段により前記汎用度が算出された単語でない場合、又は下限値未満の汎用度が算出された単語である場合、該単語の汎用度を該下限値としてトピック重要度を算出する、請求項１乃至９のいずれか１項に記載のトピックワード抽出装置。
【請求項１１】
前記トピック重要度算出手段は、前記単語の出現頻度の計算に、前記単語が、前記入力テキストの中でタイトルの部分に出現している場合に該単語の出現頻度の値が大きくなるような演算を用いる、請求項１乃至１０のいずれか１項に記載のトピックワード抽出装置。
【請求項１２】
前記汎用度算出手段により算出された前記汎用度を記憶する汎用度記憶手段と、
前記入力テキストが入力されるたびに、又は所定の更新期間ごとに、前記入力テキスト中で前記単語が出現した出現頻度に基づいて前記汎用度記憶手段に記憶された前記汎用度を更新する更新手段と、
を更に有し、
前記トピック重要度算出手段は、前記汎用度記憶手段から読み出した前記汎用度に基づいて前記トピック重要度を算出する、請求項１乃至１１のいずれか１項に記載のトピックワード抽出装置。
【請求項１３】
前記抽出手段により前記トピックワードが抽出された前記入力テキストを複数記憶するテキスト記憶手段と、
検索語を入力する検索語入力手段と、
前記テキスト記憶手段に記憶された前記複数の入力テキストの中から、前記検索語入力手段により入力された前記検索語と完全一致又は部分一致するトピックワードを含む入力テキストを検索し、出力する出力手段と、
を更に有する請求項１乃至１２のいずれか１項に記載のトピックワード抽出装置。
【請求項１４】
集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出し、該単語に該汎用度を対応付けて第１の記憶装置に格納しておき、入力テキストが入力されると、該入力テキストから単語を抽出し、該第１の記憶装置から該単語に対応する前記汎用度を読み出し、該入力テキスト中で該単語が出現した出現頻度と該汎用度とに基づき、該出現頻度が高いほど高く、該汎用度が低いほど高い値となるトピック重要度を算出するトピックワード抽出装置と、
前記単語に、前記トピックワード抽出装置により算出された前記汎用度を対応付けて記憶する第１の記憶装置と、
を有するトピックワード抽出システム。
【請求項１５】
請求項１４に記載のトピックワード抽出システムと、
前記トピックワード抽出装置によりトピックワードが抽出された前記入力テキストを該トピックワードとともに複数記憶する第２の記憶装置と、
検索語が入力されると、前記第２のデータベースに記憶された前記複数の入力テキストの中から、入力された前記検索語と完全一致又は部分一致するトピックワードを含む入力テキストを検索し、出力する検索サーバと、
を有するテキスト検索システムであって、
前記トピックワード抽出装置が、前記トピックワードを抽出した前記入力テキストを前記第２の記憶装置に格納する、テキスト検索システム。
【請求項１６】
汎用度算出手段が、集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出し、
入力テキストが入力されると、トピック重要度算出手段が、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手段により算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出し、
抽出手段が、前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する、トピックワード抽出方法。
【請求項１７】
コンピュータに、
集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出する汎用度算出手順、
入力テキストが入力されると、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手順で算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出するトピック重要度算出手順、及び
前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する抽出手順、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストデータからトピックワードを抽出する技術に関する。
【背景技術】
【０００２】
Ｗｅｂを通じてリリースされるニュース記事やブログなど、頒布や公開を目的として生成されるテキストデータの量は近年において増加傾向にある。これらの大量のテキストデータから所望のデータを検索するには、各テキストデータから、文章の主題（トピック）としてふさわしいキーワードを抽出し、そのキーワードを含むデータを検索する方法が有効である。
【０００３】
特許文献１に記載されたトピック抽出装置は、テキストを言語解析して名詞を抽出し、その名詞を検索語としてウェブ検索を行い、検索結果に基づいて、そのテキストにおけるトピックを抽出している。
【０００４】
特許文献２に記載されたトピック抽出装置は、電子化されたニュース記事から抽出した単語の所定期間内の出現頻度に基づいて、その単語の重要度を求める。トピック抽出装置は、重要度を求めた単語の類似性に基づいて記事群をクラスタリングし、似た項目を持つクラスタ内における単語の出現頻度と、その単語の重要度との積を算出する。そして、トピック抽出装置は、算出した値の高い単語をトピックとして抽出している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１５７９６号公報
【特許文献２】特開２０００−２５９６６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１に記載されたトピック抽出装置では、トピックの抽出にウェブ検索を要するので、オフラインではトピックを抽出できないという問題があった。
【０００７】
また、特許文献２に記載されたトピック抽出装置では、記事をクラスタリングしなければならないため、トピックの抽出のための処理量が多くなり、時間がかかりすぎるという問題があった。
【０００８】
本発明は、オフラインにおいて、少ない処理量でテキストからトピックを抽出する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明のトピックワード抽出装置は、集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出する汎用度算出手段と、入力テキストが入力されると、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手段により算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出するトピック重要度算出手段と、前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する抽出手段と、を有する。
【００１０】
本発明のトピックワード抽出システムは、集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出し、該単語に該汎用度を対応付けて第１の記憶装置に格納しておき、入力テキストが入力されると、該入力テキストから単語を抽出し、抽出した該単語が前記第１の記憶装置に格納された単語であれば、該第１の記憶装置から該単語に対応する前記汎用度を読み出し、該入力テキスト中で該単語が出現した出現した出現頻度と該汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高くなる値であるトピック重要度を算出し、該入力テキストから、算出した該トピック重要度が高い単語を優先してトピックワードとして抽出するトピックワード抽出装置と、前記単語に、前記トピックワード抽出装置により算出された前記汎用度を対応付けて記憶する第１の記憶装置と、を有する。
【００１１】
本発明のトピック抽出方法は、汎用度算出手段が、集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出し、入力テキストが入力されると、トピック重要度算出手段が、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手段により算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出し、抽出手段が、前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する、トピックワード抽出方法である。
【００１２】
本発明のプログラムは、コンピュータに、集計期間内に予め収集された複数のテキストで使用されている単語について、該集計期間内で該単語が汎用的に使用された頻度を示す汎用度を単語ごとに算出する汎用度算出手順、入力テキストが入力されると、該入力テキストから単語を抽出し、該入力テキスト中で該単語が出現した出現頻度と、前記汎用度算出手順で算出された該単語の汎用度とに基づき、該出現頻度が高いほど高く、前記汎用度が低いほど高い値となるトピック重要度を算出するトピック重要度算出手順、及び前記入力テキストから、前記トピック重要度算出手段により算出された前記トピック重要度が高い単語を優先してトピックワードとして抽出する抽出手順、を実行させるためのプログラムである。
【発明の効果】
【００１３】
本発明によれば、トピックワード抽出装置は、出現頻度と汎用度とからトピック重要度を算出し、トピック重要度が高い単語を優先して抽出するので、ウェブ検索を行う必要がない結果、オフラインであってもトピックワードを抽出できる。また、トピックワード抽出装置は、クラスタリングを行う必要がないので、処理量は少ない。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態のトピック抽出システムの一構成例を示す全体図である。
【図２】本発明の第１の実施形態の汎用語スコア取得部の一構成例を示すブロック図である。
【図３】本発明の第１の実施形態における記事の一例である。
【図４】（ａ）本発明の第１の実施形態における記事の解析結果の一例である。（ｂ）本発明における第１の実施形態の記事の解析結果の一例である。
【図５】本発明の第１の実施形態における日次集計の結果の一例である。
【図６】本発明の第１の実施形態における集計結果を示すグラフである。
【図７】本発明の第１の実施形態における総集計の結果の一例である。
【図８】本発明の第１の実施形態の汎用語リストの一例である。
【図９】本発明の第１の実施形態のトピック付き記事データの示す内容の一例である。
【図１０】本発明の第１の実施形態のトピック抽出処理を示すフローチャートである。
【図１１】本発明の第１の実施形態の汎用語リスト作成処理を示すフローチャートである。
【図１２】本発明の第１の実施形態の汎用語スコア取得処理を示すフローチャートである。
【図１３】本発明の第１の実施形態のトピック重要度算出処理を示すフローチャートである。
【図１４】本発明の第１の実施形態のトピック抽出システムの動作の一例を示すフローチャートである。
【図１５】本発明の第２の実施形態の記事検索システムの一構成例を示す全体図である。
【図１６】本発明の第３の実施形態における日次集計の結果の一例である。
【図１７】本発明の第３の実施形態における総集計の結果の一例である。
【図１８】本発明の第４の実施形態における日次集計の結果の一例である。
【図１９】本発明の第４の実施形態における総集計の結果の一例である。
【発明を実施するための形態】
【００１５】
（第１の実施形態）
本発明を実施するための第１の実施形態について図面を参照して説明する。図１は、本実施形態のトピック抽出システム１の一構成例を示す全体図である。トピック抽出システム１は、記事やブログなどのテキストから、その記事やブログの主題としてふさわしい単語（以下、「トピックワード」という）を抽出するシステムである。
【００１６】
図１を参照すると、トピック抽出システム１は、ニュース配信サーバ１０、トピック抽出サーバ２０、汎用語ＤＢ（Database）３０、およびトピック付きニュース記事ＤＢ４０を有する。
【００１７】
ニュース配信サーバ１０は、トピック抽出サーバ２０へ、Ｗｅｂニュース記事を記載した記事データを定期的に、またはユーザの要求に応じて配信する。この記事データにはテキストデータが含まれている。
【００１８】
トピック付き記事ＤＢ４０には、集計期間内に予め収集された複数の記事データからなる記事データ群が格納されている。
【００１９】
トピック抽出サーバ２０は、トピック付き記事ＤＢ４０に予め格納されている過去の記事データ群から、それらの記事データ群で汎用的に使用されている単語（以下、「汎用語」という）を抽出しておく。トピック抽出サーバ２０は、抽出した汎用語のリストを汎用語ＤＢ３０に格納する。
【００２０】
ニュース配信サーバ１０から記事データが配信されると、トピック抽出サーバ２０は、作成済みの汎用語のリストを利用して、その記事データからトピックワードを抽出する。そして、抽出したトピックワードと、記事データとを紐付けてトピック付きニュース記事ＤＢ４０に格納する。
【００２１】
トピック抽出サーバ２０の構成について具体的に説明する。図１に示すように、トピック抽出サーバ２０は、汎用語スコア取得部２０１、トピック重要度算出部２０２、およびトピックワード抽出部２０３を有する。
【００２２】
汎用語スコア取得部２０１について説明する。図２は、汎用語スコア取得部２０１の一構成例を示すブロック図である。同図を参照すると、汎用語スコア取得部２０１は、言語解析部２０１１、集計部２０１２、汎用語スコア算出部２０１３、および汎用語検索部２０１４を有する。
【００２３】
言語解析部２０１１には、テキストから単語を抽出するためのアプリケーションソフトウェアである言語解析エンジンが予め実装されている。言語解析部２０１１は、記事データ群に含まれる各記事データのテキストについて、言語解析エンジンを使用して言語解析する。
【００２４】
言語解析において、言語解析部２０１１は、まず、記事データ内のテキストを単語単位で分解し、各単語が属する品詞を判定する。品詞の判定において、分析対象の単語が言語解析エンジンに登録されていない単語であれば、言語解析部２０１１は、その単語の品詞を未定義語とする。
【００２５】
次に、言語解析部２０１１は、テキストから、名詞および未定義語を抽出する。動詞、形容詞、助詞、句読点が出現するまで連続している名詞および未定義語については、言語解析部２０１１は、連続して抽出しうる全パターンの単語を連続単語として抽出する。
【００２６】
集計部２０１２は、抽出された単語（名詞、未定義語、および連続単語）の、それぞれのテキスト内での出現数をカウントする。そして、集計部２０１２は、単位期間ごとに、各単語の出現数を集計する。本実施形態では単位期間を１日とする。
【００２７】
また、集計部２０１２は、各単位期間における出現数を合計し、集計期間内における各単語の出現数を求める。集計部２０１２は、集計期間内における各単語の出現数と、各単位期間内における各単語の出現数とを示す集計データを出力する。
【００２８】
汎用語スコア算出部２０１３は、集計データから、各単語の汎用語スコアを算出する。汎用語スコアは、集計期間内で単語が汎用的に使用された頻度を示す値である。汎用語スコアは、集計期間内における単語の出現頻度と、集計期間内において単語が出現する事象の平均情報量とを乗算することにより算出される。
【００２９】
具体的には、単語wの汎用語スコア計算式は、
Score(w) = αF(w)×(1+log T(w))×ΣHt(w)・・・（式１）
と表される。
【００３０】
αはスコア調整定数であり、実システムに合わせて適切な値に設定される。F(w)は集計期間での単語wの出現総件数を示す。T(w)は、複数の単位期間からなる集計期間における単語wが利用された単位期間の数、すなわち、出現数が所定値以上カウントされた単位期間の数を示す。所定値は例えば１である。ΣHt(ｗ)は各単位期間において単語が出現する事象の情報量（ばらつき具合）の総和、すなわち集計期間における平均情報量である。tは、指定された集計期間内の日付、すなわち指定された単位期間である。
【００３１】
（式１）のHt(w)は、単語ｗが、その日付（単位期間）において出現する事象の情報量、すなわちエントロピーである。Ht(w)は以下の式で算出する。
【００３２】
Ht(w)＝−Ft(w)/F(w)×log(Ft(w)/F(w))・・・（式２）
（式２）のFt(w)は、日付t（単位期間）における単語wの出現件数である。
【００３３】
定常的に使用されるのでなく、一定期間のみ集中的に出現数が急増するような単語は、各単位期間におけるエントロピーの偏りが大きくなり、その単語が出現する事象の平均情報量（集計期間におけるエントロピー）は少なくなる。「一定期間のみに急増するような単語」とは、例えば、ワールドカップサッカーおよびオリンピックなどのスポーツイベントの名称、公開中の映画または視聴率の高いドラマに出演したタレントの名前がある。
【００３４】
このため、上記（式１）のように、この平均情報量を出現総件数に乗算することで、定常的によく使用される単語ほど、汎用語スコアが高くなる。そして、その結果として、トピック抽出サーバ２０は、汎用語スコアに基づいて、汎用語を精度よく抽出できる。
【００３５】
汎用語スコア算出部２０１３は、汎用語スコアが閾値より大きい単語を汎用語とし、汎用語のリストを作成する。閾値は、例えば１とする。汎用語スコア算出部２０１３は、汎用語のリストと、各汎用語の汎用語スコアとを示す汎用語リストデータを汎用語ＤＢ３０に格納する。
【００３６】
過去の記事データから生成された汎用語リストデータが格納された状態で、ニュース配信サーバ１０から新たな記事データが配信されると、言語解析部２０１１は、その記事データを言語解析し、名詞、未定義語、および連続単語を抽出し、解析結果データを汎用語検索部２０１４へ出力する。
【００３７】
汎用語検索部２０１４は、抽出された単語を検索語として、検索語と一致する汎用語について、汎用語リストの検索を要求する汎用語検索要求データを汎用語ＤＢ３０へ送信する。
【００３８】
汎用語ＤＢ３０は、汎用語リストを検索し、検索語に一致する汎用語と、その汎用語スコアとを示す検索結果データをトピック抽出サーバ２０へ送信する。ここで、汎用語ＤＢ３０は、検索で一致する汎用語が見つからなかった単語については、その単語の汎用語スコアを１として、検索結果データを送信する。
【００３９】
汎用語検索部２０１４は、検索結果データから、抽出した各単語の汎用語スコアを取得する。
【００４０】
図１に戻り、トピック重要度算出部２０２、トピックワード抽出部２０３について説明する。
【００４１】
トピック重要度算出部２０２は、抽出した単語のそれぞれについて、記事データにおけるトピックとしての重要性を示すトピック重要度を算出する。トピック重要度を算出するための式は、
Point(w)＝Freq(w)/Score(w)・・・（式３）
である。上記（式３）のPoint(w)は、単語wのトピック重要度を示す。Freq(w)は、単語wの記事データ内の出現頻度である。Score(w)は、上記（式１）で算出された、単語wの汎用語スコアである。
【００４２】
ここで、単語wがタイトルに含まれる場合、その単語wのトピックとしての重要度が高いものとし、トピック重要度算出部２０２は、Freq(w)に、１より大きい所定の係数を乗算する。この係数は、例えば３に設定する。
【００４３】
そして、トピック重要度算出部２０２は、記事データ内における各単語の出現数に基づいて、それらの単語の汎用語スコアを再計算し、汎用語ＤＢ３０内の汎用語リストを更新する。
【００４４】
トピックワード抽出部２０３は、記事データから抽出された単語の中で、トピック重要度が最も高いものから所定個の単語を、その記事データのトピックワードとして選択する。トピックワード抽出部２０３は、例えば、上位５個をトピックワードとする。
【００４５】
ここで、トピック重要度が同じである単語が複数ある場合、トピックワード抽出部２０３は、その中から、文字列が長い単語を優先して選択する。
【００４６】
また、２つの単語のうち、一方の単語が他方の単語を含み、一方の単語のトピック重要度が、他方の単語のトピック重要度より高い場合、トピックワード抽出部２０３その他方の単語を、トピックワードとしない。
【００４７】
例えば、「ゴールド免許」、「免許」の２つの単語が言語解析により抽出され、「ゴールド免許」のトピック重要度が、「免許」のトピック重要度より高い場合、トピックワード抽出部２０３は、「免許」の単語をトピックワードとしない。
【００４８】
トピックワード抽出部２０３は、記事データと、その記事データで抽出されたトピックワードとを示すトピック付き記事データを、トピック付きニュース記事ＤＢ４０に格納する。
【００４９】
トピック抽出システム１で送受信されるデータの内容について図面を参照して説明する。図３は、記事データの一例を示す図である。同図を参照すると、記事データは、記事のタイトルと、記事の本文とを含むテキストデータである。同図における「＜自動車保険＞保険料値上げ・・・」の部分がタイトルであり、「○○保険などの一部の・・・」の部分が本文である。
【００５０】
図４（ａ）は、記事データを言語解析した結果の一例を示す図である。同図（ａ）において、「／」は、単語と単語との間の区切りであり、かっこ内の名称は、直前の単語が属する品詞名である。例えば、「ゴールド免許の・・・」という文章を言語解析した場合、文章は、「ゴールド」、「免許」、「の」などに分解される。言語解析エンジンは、「免許」を名詞、「の」を助詞に分類する。しかし、「ゴールド」は、言語解析エンジンに登録されていないので、「未定義語」に分類される。言語解析部２０１１は、「ゴールド」、「免許」などの名詞、未定義語のみを抽出する。
【００５１】
図４（ｂ）は、言語解析において、図４（ａ）の後に連続単語が更に抽出された結果の一例を示す図である。同図（ｂ）において、下線が引かれた単語は、抽出された連続単語である。例えば、「ゴールド」、「免許」は助詞「の」が出現するまで連続しているので、言語解析部２０１１は、「ゴールド」、「免許」のほか、「ゴールド免許」を抽出する。
【００５２】
図５は日次集計の一例を示す表である。同図には、集計結果のうち、２００８年１月１日と、同年１月２日の結果が示されている。同図において、他の日付の集計は省略されている。
【００５３】
同図を参照すると、日次集計において、「日次」、「順位」、「単語」、および「件数」が記録される。「日次」は、集計が行われた日（集計日）であり、「順位」は、集計日における出現件数の順位である。「単語」は、集計日に出現した単語であり、「件数」は、集計日における単語の出現数である。
【００５４】
例えば、２００８年１月１日に発行された各社の記事データにおいて、保険料という単語が合計で５００回出現した場合、「２００８／１／１」の「保険料」の件数は「５００」と記録される。
【００５５】
図６は、図５等の集計結果の一部をプロットした折れ線グラフである。同図の縦軸が、日付ごとの単語の出現件数であり、横軸が日付である。「アニメ」，「減少」，「自動車」，「損保」の総件数が他の単語の総件数より多く２０００件以上であったので、これらについてプロットされている。これらの４つの単語以外の単語の集計結果は省略されている。同図における実線が「保険料」、点線が「値上げ」、一点鎖線が「アニメ」、に点鎖線が「損保」の集計数である。
【００５６】
図７は、集計期間における総集計の結果を示す。集計期間は、例えば、２００８年１月１日から２００Ｘ年Ｘ月Ｘ日までの期間である。
【００５７】
図６、図７を用いて、汎用語スコアの算出方法の使用例について説明する。
【００５８】
上記（式１）より、総件数が上位で、かつ日次集計の件数の変動が少ない単語ほど、汎用語スコアが高くなる。
【００５９】
例えば、総件数が２０００件以上の単語は、図７から、単語「アニメ」，「減少」，「自動車」，「損保」である。
【００６０】
その中で、図６に示すように、単語「アニメ」,「自動車」の日次ごとの件数の変動は相対的に少なく、±50件以内で推移している。一方、「減少」や「損保」の日次ごとの件数の変動は、±50件を超えている。
【００６１】
以上より、総件数、平均情報量がともに大きいので、「保険料」、「値上げ」の汎用語スコアは他の単語より大きくなる。「減少」や「損保」の総件数は大きいが、変動が大きいので、平均情報量が小さくなり、これらの汎用語スコアは、「保険料」や「値上げ」ほど大きくならない。
【００６２】
図８は、汎用語リストデータの内容を示す図である。同図を参照すると、汎用語リストデータは、複数の「汎用語」と、それぞれの汎用語の「汎用語スコア」とを示す情報を含む。
【００６３】
図９は、トピック付き記事データの内容を示す図である。同図を参照すると、トピック付き記事データは、「記事内容」、「作成日時」、「トピックワード」、および「トピック重要度」を示す情報を含む。記事内容は、配信された記事データの示すタイトルおよび本文であり、「作成日時」は記事データの作成日時である。「トピックワード」は、トピックワード抽出部２０３により抽出されたトピックワードであり、「トピック重要度」は、トピック重要度算出部２０２により算出された、トピックワードのトピック重要度である。
【００６４】
続いて、トピック抽出サーバ２０の動作について説明する。図１０は、トピック抽出サーバ２０が実行するトピック抽出処理を示すフローチャートである。このトピック抽出処理は、トピック付きニュース記事ＤＢ４０から、予め収集された記事データ群が読み出されたときに開始する。
【００６５】
汎用語スコア取得部２０１は、汎用語スコアを算出し、汎用語リストを作成するための汎用語リスト作成処理を実行する（ステップＳ１）。
【００６６】
汎用語スコア取得部２０１は、ニュース配信サーバ１０から記事データを受信したか否かを判断する（ステップＳ２）。記事データを受信していなければ（ステップＳ２：ＮＯ）、汎用語スコア取得部２０１はステップＳ２に戻る。
【００６７】
記事データを受信したのであれば（ステップＳ２：ＹＥＳ）、汎用語スコア取得部２０１は、受信した記事データから名詞等の単語を抽出し、それらの単語について汎用語スコアを取得するための汎用語スコア取得処理を実行する（ステップＳ３）。
【００６８】
トピック重要度算出部２０２は、記事データから抽出された単語について、トピック重要度を算出するためのトピック重要度算出処理を実行する（ステップＳ４）。
【００６９】
トピックワード抽出部２０３は、記事データ内の単語のうち、トピック重要度が高い単語を優先して所定個の単語をトピックワードとして選択する。トピックワード抽出部２０３は、そのトピックワードと記事データとを対応づけてトピック付きニュース記事ＤＢ４０に格納する（ステップＳ５）。ステップＳ５の後、トピック抽出サーバ２０は、ステップＳ２に戻る。
【００７０】
図１１は、汎用語リスト作成処理を示すフローチャートである。同図を参照すると、汎用語スコア取得部２０１は、記事データ内のテキストを言語解析して単語単位で分解し、名詞および未定義語を抽出する（ステップＳ１１）。そして、汎用語スコア取得部２０１は、連続して抽出できる全パターンの単語を連続単語として抽出する（ステップＳ１２）。
【００７１】
汎用語スコア取得部２０１は、集計期間における各単語の出現数と、各単位期間における各単語の出現数とを集計する（ステップＳ１３）。
【００７２】
汎用語スコア取得部２０１は、集計データから、各単語の汎用語スコアを算出する（ステップＳ１４）。汎用語スコア取得部２０１は、汎用語スコアが１より大きい単語を汎用語として、汎用語のリストを作成する。汎用語スコア取得部２０１は、作成したリストを汎用語スコアとともに、汎用語ＤＢ３０に格納する（ステップＳ１５）。ステップＳ１５の後、汎用語スコア取得部２０１は、汎用語リスト作成処理を終了する。
【００７３】
図１２は、汎用語スコア取得処理を示すフローチャートである。同図を参照すると、汎用語スコア取得部２０１は、配信された記事データを言語解析し、名詞、未定義語、および連続単語を抽出する（ステップＳ３１）。汎用語スコア取得部２０１は、抽出した単語を検索語として、汎用語リストの検索を汎用語ＤＢ３０に要求し、汎用語ＤＢ３０から、各単語の汎用語スコアを取得する（ステップＳ３２）。ステップＳ３２の後、汎用語スコア取得部２０１は、汎用語スコア取得処理を終了する。
【００７４】
図１３は、トピック重要度算出処理を示すフローチャートである。同図を参照すると、トピック重要度算出部２０２は、抽出した単語ごとに、記事データにおける出現頻度を求める（ステップＳ４１）。トピック重要度算出部２０２は、出現頻度を汎用語スコアで除算することにより、単語ごとにトピック重要度を算出する（ステップＳ４２）。
【００７５】
そして、トピック重要度算出部２０２は、記事データ内で出現した各単語の出現数に基づいて、それらの単語の汎用語スコアを再計算し、汎用語ＤＢ３０内の汎用語リストを更新する（ステップＳ４３）。ステップＳ４３の後、トピック重要度算出部２０２は、トピック重要度算出処理を終了する。
【００７６】
図１４は、トピック抽出システム１全体の動作の一例を示すシーケンス図である。同図を参照すると、トピック抽出サーバ２０は、トピック付きニュース記事ＤＢ４０から、集計期間内に作成された記事データ群を読み出し、それらのデータから名詞等の単語を抽出する。そして、トピック抽出サーバ２０は、各単語の汎用語スコアを算出する（ステップＳ１）。
【００７７】
ニュース配信サーバ１０から記事データが配信されると、トピック抽出サーバ２０は、その記事データから名詞等の単語を抽出し、それらの単語の汎用語スコアを汎用語ＤＢ３０から取得する（ステップＳ３）。
【００７８】
トピック抽出サーバ２０は、記事データ内の単語の出現頻度を汎用語スコアで除算することにより、トピック重要度を算出する（ステップＳ４）。
【００７９】
トピック抽出サーバ２０は、記事データから、トピック重要度が高い単語を優先して所定個の単語をトピックワードとして選択し、トピック付きニュース記事ＤＢ４０に格納する（ステップＳ５）。
【００８０】
なお、本実施形態では、汎用語ＤＢ３０、およびトピック付きニュース記事ＤＢ４０をトピック抽出サーバ２０と別に設ける構成としているが、これらのデータベースの機能をトピック抽出サーバ２０が有する構成としてもよい。また、トピック抽出サーバ２０の各機能は、複数の装置に分散することもできる。
【００８１】
本実施形態では、上記（式１）および（式２）を使用して汎用語スコアを算出しているが、集計期間内での単語の出現頻度が高いほど汎用語スコアが大きくなり、集計期間内で単語が出現する事象の平均情報量が高いほど汎用語スコアが大きくなる数式であれば、別の数式を使用して汎用語スコアを算出することもできる。
【００８２】
本実施形態では上記（式３）を使用してトピック重要度を算出しているが、出現頻度が高いほどトピック重要度が大きくなり、汎用語スコアが小さいほどトピック重要度が大きくなるような数式であれば、（式３）以外の数式を使用してトピック重要度を算出する構成としてもよい。
【００８３】
本実施形態では、トピック抽出サーバ２０は、抽出した単語がタイトルに含まれる単語であれば、出現頻度に所定の係数を乗算しているが、タイトルに含まれる単語のトピック重要度が高くなる演算であれば、係数の乗算に限らない。例えば、出現頻度に所定値を足し、トピック重要度を算出する構成としてもよい。
【００８４】
本実施形態では、トピック抽出サーバ２０が記事データからトピックを抽出する構成としているが、ブログやホームページのデータなど、記事以外の種類のテキストデータからトピックワードを抽出する構成とすることもできる。
【００８５】
本実施形態では、トピック抽出サーバ２０は、記事データが配信されるたびに汎用語リストを更新しているが、所定の更新期間ごとに、更新を行う構成としてもよい。
【００８６】
本実施形態では、トピック抽出サーバ２０が、トピック付きニュース記事ＤＢから、記事データ群を読み出す構成としている。しかし、トピック抽出サーバ２０が、ニュース配信サーバ１０から一定量の記事データを受信したり、ウェブ検索を行ったりして、記事データを収集し、汎用語を抽出する構成としてもよい。
【００８７】
以上説明したように本実施形態によれば、トピック抽出サーバ（トピックワード抽出装置）は、出現頻度と汎用度とからトピック重要度を算出し、トピック重要度が高い単語を優先して抽出するので、ウェブ検索を行う必要がない結果、オフラインであってもトピックワードを抽出できる。また、トピックワード抽出装置は、クラスタリングを行う必要がないので、処理量は少ない。
【００８８】
あるテキストデータ内で出現頻度が高い単語は、一般に、そのテキストデータにおけるトピックとしての重要度が高い。一方、テキスト内での出現頻度が高くとも、その単語が汎用的によく使用される単語であれば、トピックとしての重要度は低い。このため、テキスト内での出現頻度を汎用度で除算した値の高い単語を優先して抽出することにより、トピックワード抽出装置は、出現した単語のトピックとしての重要性を適切に判定できる。
【００８９】
あるテキスト内で出現した２つの単語のうち、一方の単語が他方の単語を含み、その一方の単語のトピック重要度が他方より高い場合、他方の単語は一方の単語に含まれているので、抽出する必要性は低い。このため、他方の単語を抽出しないことにより、トピックワード抽出装置は、トピックワードの抽出において、無駄を省くことができる。
【００９０】
一般的に文字数の大きい単語の方が、汎用的に用いられることが少なく、トピックワードとなる可能性は高い。このため、複数の単語について、同一の値のトピック重要度が算出された場合、トピック抽出装置は、文字数の大きい単語を優先してトピックワードとして抽出することで、トピックワード抽出装置は、適切にトピックワードを抽出できる。
【００９１】
一般語や地名など、定常的によく用いられる単語は、集計期間内における出現頻度が高くなり、汎用語としてふさわしい。しかし、スポーツイベントやメディアで一時的に取り上げられた人名など、一時的に盛り上がったことによっても、集計期間内の出現頻度が高くなることがあるが、その単語が定常的には利用されないのであれば、汎用語としてふさわしくない。このため、集計期間内の出現頻度と、集計期間内における平均情報量とを乗算した値に基づいて汎用語を抽出することにより、トピックワード抽出装置は、汎用語を精度よく抽出できる。
【００９２】
複数の単語が連続している場合、それらが連結された状態で異なる意味を生じ、別の単語として扱った方がよい場合がある。トピック抽出装置は、抽出しうる全パターンの連続単語を抽出することで、連続単語についてもトピックとして適切に抽出できる。
【００９３】
一般に、タイトルには、トピックとなる単語が含まれている場合が多い。このため、タイトルに含まれる単語に重みづけをすることで、トピック抽出装置は、トピックワードをより的確に抽出できる。
【００９４】
通常、単語の使用頻度は、時間の経過に伴い変動するので、定期的に汎用語リストを更新するために、利用者が汎用語ＤＢ３０をメンテナンスする方が望ましいように思われる。しかし、本実施形態のトピック抽出装置は、記事データが入力されるたびに、汎用語スコアを再計算し、汎用語リストを自動的に更新するので、汎用語ＤＢ３０を定期的にメンテナンスする必要はない。
【００９５】
（第２の実施形態）
本発明の第２の実施形態について図１５、１６を参照して詳細に説明する。図１５は、本実施形態の記事検索システム２の一構成例を示す全体図である。記事検索システム２は、利用者が検索式を入力することにより、所望の記事を検索するためのシステムである。同図を参照すると、記事検索システム２は、第１の実施形態のトピック抽出システム１に、利用者ＰＣ５０、および検索サーバ６０を更に追加したシステムである。
【００９６】
利用者ＰＣ５０は、利用者の操作に応じて記事を検索するための画面を表示し、検索語、若しくは、検索語と論理演算子（ＡＮＤ、ＯＲ、ＮＯＴなど）とを含む検索式の入力を受け付ける。
【００９７】
検索語が入力された場合、検索サーバ６０は、トピック付きニュース記事ＤＢ４０に格納された記事データの中から、その検索語と完全一致または部分一致するトピックワードを含む記事データを検索する。検索式が入力された場合、検索サーバ６０は、その検索式の検索語と完全一致又は部分一致するトピックワードを含み、且つ検索式を満たす記事データを検索する。
【００９８】
検索サーバ６０は、検索した記事データを利用者ＰＣ５０へ送信し、利用者ＰＣ１０は、その記事データを表示する。
【００９９】
なお、本実施形態では、利用者ＰＣ５０、および検索サーバ６０をトピック抽出サーバ２０と別に設ける構成としているが、これらを、トピック抽出サーバ２０と一体とする構成としてもよいのは勿論である。
【０１００】
以上説明したように、本実施形態によれば、記事検索システム２は、トピックワードを利用して、利用者が所望する記事を適切に検索し、出力できる。
【０１０１】
（第３の実施形態）
本発明の第３の実施形態について図１６、図１７を参照して詳細に説明する。本実施形態のトピック抽出システムは、汎用語スコアの算出方法が異なる点以外は、第１の実施形態のトピック抽出システムと同様の構成である。
【０１０２】
本実施形態の集計部２０１２は、単位期間における各単語の出現確率と、集計期間における各単語の出現確率とを更に算出する。
【０１０３】
本実施形態の汎用語スコア算出部２０１３は、上記（式１）の代わりに、下記の式を使用して、汎用語スコアを算出する。
【０１０４】
Score(w) = αP(w)×(1+log T(w))×ΣHt(w)・・・（式４）
P(w)は単語wの出現確率の全期間での総和(=ΣFt(w)/Ft、t=min,min+1,…)である。Ft(w)、T(w)、およびαは第１の実施形態と同様の値である。
【０１０５】
式３のHt(w)には、単位期間における情報量、すなわちエントロピーである。但し、Ht(w)は、上記（式２）の代わりに、下記の式から算出される。
【０１０６】
Ht(w)＝−Pt(w)/P(w)×log(Pt(w)/P(w))・・・（式５）
上記（式４）のPt(w)は日付tでの単語wの出現確率(=Ft(w)/Ft)である。
【０１０７】
図１６は、本実施形態の日次集計の一例を示す表である。図１７は、集計期間における、本実施形態の総集計の結果を示す表である。図１６に示すように、各単位期間における各単語の出現確率が更に算出され、図１７に示すように、集計期間における各単語の出現確率が更に集計される。
【０１０８】
以上説明したように、本実施形態によれば、第１の実施形態と比較して計算量が増加するものの、日々の記事データの総数の変動に影響されることなく、汎用語スコアを高い精度で算出できる。
【０１０９】
（第４の実施形態）
本発明の第４の実施形態について図１８、図１９を参照して詳細に説明する。本実施形態のトピック抽出システムは、汎用語スコアの算出方法が異なる点以外は、第１の実施形態のトピック抽出システムと同様の構成である。
【０１１０】
本実施形態の集計部２０１２は、単位期間、集計期間における、各単語の順位ポイントを決定する。順位ポイントとは、ある単語の、他の単語に対する相対的な出現頻度の高さの指標となる値である。集計部２０１２は、出現数が高い単語ほど高い値となるように、順位ポイントを決定する。例えば、集計部２０１２は、出現の順位が１位の単語の順位ポイントを5000点とし、２位の単語の順位ポイントを4999点とする。
【０１１１】
本実施形態の汎用語スコア算出部２０１３は、上記（式１）の代わりに、下記の式を使用して、汎用語スコアを算出する。
【０１１２】
Score(w) = αO(w)×(1+log T(w))×ΣHt(w)・・・（式６）
上記（式６）のO(w)は、集計期間における単語wの順位ポイントの総数である。T(w)およびαは第１の実施形態と同様である。
【０１１３】
Ht(w)には、単位期間における情報量、すなわちエントロピーである。但し、Ht(w)は、上記（式２）の代わりに、下記の式から算出される。
【０１１４】
Ht(w)＝−Ｏt(w)/０(w)×log(０t(w)/０(w))・・・（式７）
（式６）のOt(w)は、単語wの単位期間における順位ポイントである。
【０１１５】
図１８は、本実施形態の日次集計の一例を示す表である。図１９は、集計期間における、本実施形態の総集計の結果を示す表である。図１８に示すように、各単位期間において各単語の順位ポイントが更に決定され、図１９に示すように、集計期間において順位ポイントが更に集計される。
【０１１６】
以上説明したように、本実施形態によれば、第１の実施形態と比較して計算量が増加するものの、日々の記事データの総数の変動に影響されることなく、汎用語スコアを高い精度で算出できる。
【符号の説明】
【０１１７】
１    トピック抽出システム
２    記事検索システム
１０    ニュース配信サーバ
２０    トピック抽出サーバ
３０    汎用語ＤＢ
４０    トピック付きニュース記事ＤＢ
５０    利用者ＰＣ
６０    検索サーバ
２０１    汎用語スコア取得部
２０２    トピック重要度算出部
２０３    トピックワード抽出部
２０１１    言語解析部
２０１２    集計部
２０１３    汎用語スコア算出部
２０１４    汎用語検索部
【図１】
2011070291.tif 000003
【図２】
2011070291.tif 000004
【図３】
2011070291.tif 000005
【図４】
2011070291.tif 000006
【図５】
2011070291.tif 000007
【図６】
2011070291.tif 000008
【図７】
2011070291.tif 000009
【図８】
2011070291.tif 000010
【図９】
2011070291.tif 000011
【図１０】
2011070291.tif 000012
【図１１】
2011070291.tif 000013
【図１２】
2011070291.tif 000014
【図１３】
2011070291.tif 000015
【図１４】
2011070291.tif 000016
【図１５】
2011070291.tif 000017
【図１６】
2011070291.tif 000018
【図１７】
2011070291.tif 000019
【図１８】
2011070291.tif 000020
【図１９】
2011070291.tif 000021