(57)【要約】【課題】単語集合の中から重要単語を判別する際に、記憶容量の増大を抑制するとともに、パケットの到着に応じてＴＦＩＤＦを更新する技術を提供する。【解決手段】ＨＴＴＰデータ組立部２２は、パケット受信部２１が端末１０から受信したパケットに格納されているＨＴＴＰの断片化したデータを連結して元のＨＴＴＰデータに戻す。キーワード抽出部２３は、元のＨＴＴＰデータに形態素解析等を適用し、単語を抽出する。演算部２４は、受信した単語ごとに、キーワードパラメータＤＢ２５から演算処理に必要なパラメータを取得して単語の重要度を算出する。単語の重要度は、１つ前の過去の値を用いて演算できる漸化式の形式で表現されるので、記憶容量の増大を抑制し、リアルタイムで演算可能である。重要単語転送部２６は、算出した単語の重要度または単語の重要度の値の大きい重要単語をパケット化して、サービス機器４０へ送信する。【選択図】図２
2011238081.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが使用する端末とＷｅｂサーバとの間で送受信されるパケットを捕捉し、前記パケットに格納されているデータに含まれる重要単語を抽出する逐次型重要単語抽出装置であって、
過去になるに従って減衰する重みを示す減衰重み係数と、初期値としてゼロに設定されている第１の変数、第２の変数、第３の変数、および第４の変数と、を記憶している記憶手段と、
前記パケットに格納されているＨＴＴＰ（Hyper Text Transfer Protocol）データに含まれる単語を形態素解析を用いて抽出する抽出手段と、
最新の所定期間に捕捉したパケットから、前記抽出手段によって取得した前記単語ごとに、前記単語の出現度数および前記単語を含むＨＴＴＰデータ数をカウントするカウント手段と、
前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を前記記憶手段から取得する取得手段と、
前記第１の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語の出現度数を加算した第５の値を、前記第２の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記単語の出現度数の合計を加算した第６の値で除算して第７の値を算出し、前記第３の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記ＨＴＴＰデータ数の合計を加算した第８の値を、前記第４の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語を含む前記ＨＴＴＰデータ数を加算した第９の値で除算して第１０の値を算出し、前記第７の値と前記第１０の値とを乗算して重要度を算出する重要度算出手段と、
前記記憶手段に記憶している前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を、それぞれ、前記第５の値、前記第６の値、前記第８の値、および前記第９の値に更新する更新手段と、
前記抽出手段、前記カウント手段、前記取得手段、前記重要度算出手段、および前記更新手段を所定期間ごとに繰り返す繰返し手段と、
前記重要度に基づいて重要単語を抽出する重要単語抽出手段と
を備えることを特徴とする逐次型重要単語抽出装置。
【請求項２】
前記重要単語抽出手段は、
前記重要度の値が、所定の閾値以上となる単語を、重要単語として抽出する
ことを特徴とする請求項１に記載の逐次型重要単語抽出装置。
【請求項３】
前記重要度算出手段は、
前記第５の値および前記第９の値の演算を、前記単語ごとに、並列プロセッサのスレッドに割り当てて並列処理を実行する
ことを特徴とする請求項１に記載の逐次型重要単語抽出装置。
【請求項４】
前記カウント手段は、
前記単語の出現度数および前記単語を含むＨＴＴＰデータ数を、ＨＴＴＰメソッドの種類およびＨＴＴＰパケットの種類のいずれかまたは双方によって区別してカウントする
ことを特徴とする請求項１に記載の逐次型重要単語抽出装置。
【請求項５】
前記重要度算出手段は、
前記第５の値および前記第９の値の演算を、前記ＨＴＴＰメソッドの種類および前記ＨＴＴＰパケットの種類のいずれかまたは双方ごとに、並列プロセッサのスレッドに割り当てて並列処理を実行する
ことを特徴とする請求項４に記載の逐次型重要単語抽出装置。
【請求項６】
ユーザが使用する端末とＷｅｂサーバとの間で送受信されるパケットを捕捉し、前記パケットに格納されているデータに含まれる重要単語を抽出する逐次型重要単語抽出装置において用いられる逐次型重要単語抽出方法であって、
前記逐次型重要単語抽出装置は、
過去になるに従って減衰する重みを示す減衰重み係数と、初期値としてゼロに設定されている第１の変数、第２の変数、第３の変数、および第４の変数と、を記憶している記憶手段と、
前記パケットに格納されているＨＴＴＰ（Hyper Text Transfer Protocol）データに含まれる単語を形態素解析を用いて抽出する抽出手段と、
最新の所定期間に捕捉したパケットから、前記抽出手段によって取得した前記単語ごとに、前記単語の出現度数および前記単語を含むＨＴＴＰデータ数をカウントするカウント手段と、
前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を前記記憶手段から取得する取得手段と、
前記第１の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語の出現度数を加算した第５の値を、前記第２の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記単語の出現度数の合計を加算した第６の値で除算して第７の値を算出し、前記第３の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記ＨＴＴＰデータ数の合計を加算した第８の値を、前記第４の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語を含む前記ＨＴＴＰデータ数を加算した第９の値で除算して第１０の値を算出し、前記第７の値と前記第１０の値とを乗算して重要度を算出する重要度算出手段と、
前記記憶手段に記憶している前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を、それぞれ、前記第５の値、前記第６の値、前記第８の値、および前記第９の値に更新する更新手段と、
を備え、
前記抽出手段、前記カウント手段、前記取得手段、前記重要度算出手段、および前記更新手段を所定期間ごとに繰り返すステップ、
前記重要度算出手段によって算出された前記重要度の値が、所定の閾値以上となる単語を、重要単語として抽出するステップ、
を実行することを特徴とする逐次型重要単語抽出方法。
【請求項７】
前記重要度算出手段は、
前記第５の値および前記第９の値の演算を、前記単語ごとに、並列プロセッサのスレッドに割り当てて並列処理を実行する
ことを特徴とする請求項６に記載の逐次型重要単語抽出方法。
【請求項８】
前記カウント手段は、
前記単語の出現度数および前記単語を含むＨＴＴＰデータ数を、ＨＴＴＰメソッドの種類およびＨＴＴＰパケットの種類のいずれかまたは双方によって区別してカウントする
ことを特徴とする請求項６に記載の逐次型重要単語抽出方法。
【請求項９】
請求項６ないし請求項８のいずれか一項に記載の逐次型重要単語抽出方法を、コンピュータとしての逐次型重要単語抽出装置に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単語集合の中から重要単語を判別する技術に関する。
【背景技術】
【０００２】
Ｗｅｂページで使用されているＨＴＭＬ（Hyper Text Markup Language）等で書かれたテキストに記載されている単語集合の中から、重要な単語（以降、重要単語と称す。）を判別する技術として、ＴＦＩＤＦが知られている。ＴＦＩＤＦは、テキストに含まれる単語集合や検索語から重要なものだけを選択して、その選択結果に基づいて特定の処理を進めるケースに利用されている。例えば、特許文献１では、Ｗｅｂ上のテキストと単語の関連度を算出するために、ＴＦＩＤＦを適用する技術が開示されている。
【０００３】
ここで、ＴＦＩＤＦの定義について説明する。ＴＦＩＤＦは、式（Ａ）に示すように、ＴＦ（Term Frequency；単語の出現頻度）とＩＤＦ（Inverse Document Frequency；逆出現頻度）との積によって表される。なお、式（Ａ）中のｉは単語の種類を表している。また、ＴＦは、式（Ｂ）のｔｆｉで表すように、単語ｉの出現度数ｎｉを、単語の合計出現度数Σｋｎｋで除算して求められる。また、ＩＤＦは、式（Ｃ）のｉｄｆｉで表すように、総ドキュメント数｜Ｄ｜を、単語ｉを含むドキュメント数｜ｄ：ｄэkeywordｉ｜で除算して求められる。
【０００４】
【数１】
2011238081.tif 000003
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−３０１４３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＴＦＩＤＦは、ＴＦおよびＩＤＦの計算において、過去に扱ったすべての単語集合を保存しておき、それらをすべて用いて演算処理を行っている。そのため、膨大な記憶容量が必要になり、ルータのようなストレージ領域が少ないネットワーク装置では、ＴＦＩＤＦの演算処理を行うことが困難であるという問題があった。
また、過去の膨大なデータを対象として演算処理を行っていたので、自ずとバッチ処理で対応せざるを得なかった。そのため、パケットの到着に対応して、直ちにＴＦＩＤＦを演算して更新することが困難であるという問題があった。
そこで、本発明は、記憶容量の増大を抑制するとともに、パケットの到着に応じてＴＦＩＤＦを更新する技術を提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明は、ユーザが使用する端末とＷｅｂサーバとの間で送受信されるパケットを捕捉し、前記パケットに格納されているデータに含まれる重要単語を抽出する逐次型重要単語抽出装置であって、過去になるに従って減衰する重みを示す減衰重み係数と、初期値としてゼロに設定されている第１の変数、第２の変数、第３の変数、および第４の変数と、を記憶している記憶手段と、前記パケットに格納されているＨＴＴＰ（Hyper Text Transfer Protocol）データに含まれる単語を形態素解析を用いて抽出する抽出手段と、最新の所定期間に捕捉したパケットから、前記抽出手段によって取得した前記単語ごとに、前記単語の出現度数および前記単語を含むＨＴＴＰデータ数をカウントするカウント手段と、前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を前記記憶手段から取得する取得手段と、前記第１の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語の出現度数を加算した第５の値を、前記第２の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記単語の出現度数の合計を加算した第６の値で除算して第７の値を算出し、前記第３の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記ＨＴＴＰデータ数の合計を加算した第８の値を、前記第４の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語を含む前記ＨＴＴＰデータ数を加算した第９の値で除算して第１０の値を算出し、前記第７の値と前記第１０の値とを乗算して重要度を算出する重要度算出手段と、前記記憶手段に記憶している前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を、それぞれ、前記第５の値、前記第６の値、前記第８の値、および前記第９の値に更新する更新手段と、前記抽出手段、前記カウント手段、前記取得手段、前記重要度算出手段、および前記更新手段を所定期間ごとに繰り返す繰返し手段と、前記重要度に基づいて重要単語を抽出する重要単語抽出手段とを備えることを特徴とする。また、前記重要単語抽出手段が、前記重要度の値が、所定の閾値以上となる単語を、重要単語として抽出することを特徴とする。
【０００８】
また、本発明は、ユーザが使用する端末とＷｅｂサーバとの間で送受信されるパケットを捕捉し、前記パケットに格納されているデータに含まれる重要単語を抽出する逐次型重要単語抽出装置において用いられる逐次型重要単語抽出方法であって、前記逐次型重要単語抽出装置が、過去になるに従って減衰する重みを示す減衰重み係数と、初期値としてゼロに設定されている第１の変数、第２の変数、第３の変数、および第４の変数と、を記憶している記憶手段と、前記パケットに格納されているＨＴＴＰ（Hyper Text Transfer Protocol）データに含まれる単語を形態素解析を用いて抽出する抽出手段と、最新の所定期間に捕捉したパケットから、前記抽出手段によって取得した前記単語ごとに、前記単語の出現度数および前記単語を含むＨＴＴＰデータ数をカウントするカウント手段と、前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を前記記憶手段から取得する取得手段と、前記第１の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語の出現度数を加算した第５の値を、前記第２の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記単語の出現度数の合計を加算した第６の値で除算して第７の値を算出し、前記第３の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされたすべての前記ＨＴＴＰデータ数の合計を加算した第８の値を、前記第４の変数の値に前記減衰重み係数を乗算して前記最新の所定期間にカウントされた前記単語を含む前記ＨＴＴＰデータ数を加算した第９の値で除算して第１０の値を算出し、前記第７の値と前記第１０の値とを乗算して重要度を算出する重要度算出手段と、前記記憶手段に記憶している前記第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値を、それぞれ、前記第５の値、前記第６の値、前記第８の値、および前記第９の値に更新する更新手段と、を備え、前記抽出手段、前記カウント手段、前記取得手段、前記重要度算出手段、および前記更新手段を所定期間ごとに繰り返すステップ、前記重要度算出手段によって算出された前記重要度の値が、所定の閾値以上となる単語を、重要単語として抽出するステップ、を実行することを特徴とする。
【０００９】
このような構成によれば、記憶手段には、最新の所定期間の１つ前の変数の値（具体的には、第１の変数の値、前記第２の変数の値、前記第３の変数の値、および前記第４の変数の値）を記憶しておけばよいので、従来技術のように、過去に扱ったすべての単語集合を保存しておく必要がなくなる。したがって、記憶容量の増大を抑制することができる。また、重要度算出手段において、漸化式を用いて演算処理を実行するので、演算量が従来技術に比べて格段に減少している。したがって、パケットの到着に応じて直ちに重要度を算出することができる。
【００１０】
本発明は、前記重要度算出手段が、前記第５の値および前記第９の値の演算を、前記単語ごとに、並列プロセッサのスレッドに割り当てて並列処理を実行することを特徴とする。また、前記カウント手段が、前記単語の出現度数および前記単語を含むＨＴＴＰデータ数を、ＨＴＴＰメソッドの種類およびＨＴＴＰパケットの種類のいずれかまたは双方によって区別してカウントすることを特徴とする。また、前記重要度算出手段が、前記第５の値および前記第９の値の演算を、前記ＨＴＴＰメソッドの種類および前記ＨＴＴＰパケットの種類のいずれかまたは双方ごとに、並列プロセッサのスレッドに割り当てて並列処理を実行することを特徴とする。
【００１１】
このような構成によれば、重要度の演算処理を並列処理で実行できるので、パケットの到着に応じて直ちに重要度を算出することができる。
【００１２】
本発明は、逐次型重要単語抽出方法を、コンピュータとしての逐次型重要単語抽出装置に実行させるためのプログラムとした。
このようなプログラムをインストールされたコンピュータは、このプログラムに基づいた機能を実現することができる。
【発明の効果】
【００１３】
本発明によれば、単語集合の中から重要単語を判別する際に、記憶容量の増大を抑制するとともに、パケットの到着に応じてＴＦＩＤＦを更新する技術を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】逐次型重要単語抽出装置を備えるネットワークシステムを示す図である。
【図２】逐次型重要単語抽出装置の機能を示す図である。
【図３】逐次型重要単語抽出装置の処理フローを示す図である。
【図４】逐次型重要単語抽出装置におけるキーワードパラメータＤＢの一例を示す図である。
【図５】逐次型重要単語抽出装置における並列処理の一例を示す図である。
【図６】逐次型重要単語抽出装置を用いた実現例１を示す図である。
【図７】逐次型重要単語抽出装置を用いた実現例２を示す図である。
【発明を実施するための形態】
【００１５】
本発明を実施するための形態（以降「本実施形態」と称す。）について、適宜図面を参照しながら詳細に説明する。
【００１６】
（概要）
逐次型重要単語抽出装置を備えるネットワークシステムの概要について、図１を用いて説明する。
ユーザが使用する端末１０（１０ａ，１０ｂ）が、ネットワーク５０を経由して、例えば、Ｗｅｂサーバ３０にリクエストパケットまたはレスポンスパケットを送信することでアクセスする。その際、ネットワーク５０に設置されている逐次型重要単語抽出装置２０が、端末１０とＷｅｂサーバ３０との間で送受信されるパケットを捕捉する。逐次型重要単語抽出装置２０は、捕捉したパケットの情報に対して、形態素解析等を行って、単語を取得し、後記する逐次型重要単語抽出処理に基づいて、重要単語を抽出する。そして、逐次型重要単語抽出装置２０は、抽出した重要単語をサービス機器４０に送信する。サービス機器４０は、受信した重要単語に関連する広告情報を端末１０に送信したり、重要単語を含むパケットを遮断したりする制御をサービスとして提供する。
【００１７】
（逐次型重要単語抽出装置）
次に、逐次型重要単語抽出装置２０の機能について、図２を用いて説明する。
逐次型重要単語抽出装置２０は、パケット受信部２１、ＨＴＴＰデータ組立部２２、キーワード抽出部２３、演算部２４、キーワードパラメータＤＢ２５、重要単語転送部２６、およびパケット転送部２７を備える。逐次型重要単語抽出装置２０は、図示しないＣＰＵ（Central Processing Unit）およびメインメモリによって構成される処理部とアプリケーションプログラム等を記憶する記憶部とで構成される。処理部は、記憶部に記憶されているアプリケーションプログラムをメインメモリに展開して、パケット受信部２１、ＨＴＴＰデータ組立部２２、キーワード抽出部２３、演算部２４、重要単語転送部２６、およびパケット転送部２７、を具現化する。また、キーワードパラメータＤＢ２５は、前記した記憶部に記憶される。なお、端末１０、Ｗｅｂサーバ３０、およびサービス機器４０は、それぞれ、図１に示したものと同様である。
【００１８】
パケット受信部２１は、端末１０からのパケットを受信する。
ＨＴＴＰデータ組立部２２は、パケット受信部２１が受信したパケットに格納されているＨＴＴＰの断片化したデータを取得し、その断片化したデータを連結して元のＨＴＴＰデータに戻し、キーワード抽出部２３へ送信する。
キーワード抽出部２３は、受信した元のＨＴＴＰデータに形態素解析等を適用し、単語を抽出し、演算部２４へ送信する。
演算部２４は、受信した単語ごとに、キーワードパラメータＤＢ２５から演算処理に必要なパラメータを取得して、その単語の重要度を算出し、重要単語転送部２６へ送信する。なお、演算部２４における逐次型重要単語抽出処理の詳細は後記する。
重要単語転送部２６は、受信した単語の重要度または単語の重要度の値の大きい（重要と判定された）重要単語をパケット化して、サービス機器４０へ送信する。
パケット転送部２７は、パケット受信部２１によって受信したパケットを、Ｗｅｂサーバ３０へ転送する。ただし、パケット転送部２７は、逐次型重要単語抽出装置２０がルータまたはプロキシ装置内に実装されている場合には、ルータまたはプロキシ装置の機能によって実現される。また、パケット転送部２７は、逐次型重要単語抽出装置２０がルータまたはプロキシ装置とは独立してネットワーク５０に接続されている場合には、必要ではない。
キーワードパラメータＤＢ２５は、演算部２４が重要度を算出する際に必要なパラメータを記憶している。なお、詳細は後記する。
【００１９】
（処理フロー）
逐次型重要単語抽出装置２０における処理フローについて、図３を用いて説明する（適宜、図２参照）。
ステップＳ３０１では、パケット受信部２１は、端末１０からパケットを受信する。
ステップＳ３０２では、ＨＴＴＰデータ組立部２２は、パケット化によって断片化したデータを連結して、元のＨＴＴＰデータに戻す。
ステップＳ３０３では、キーワード抽出部２３は、ＨＴＴＰデータに形態素解析等を適用し、単語を抽出する。
ステップＳ３０４では、演算部２４は、キーワードパラメータＤＢ２５から演算処理に必要なパラメータを取得して単語の重要度を算出する。なお、演算部２４における逐次型重要単語抽出処理の詳細は後記する。
ステップＳ３０５では、重要単語転送部２６は、単語重要度の値の大きい（重要と見なされる）重要単語をパケット化して送信する。なお、重要度の値も送信しても構わない。
【００２０】
（単語の重要度の算出）
本実施形態において、逐次的にＴＦＩＤＦを算出する逐次型重要単語抽出処理について、以下に説明する。
逐次的にＴＦＩＤＦを算出するために、過去に取得したＨＴＴＰデータに含まれていた単語の重要度（重み）を下げる。そのため、現在から過去に戻った時間Δｔを変数とし、時間Δｔが大きくなるに従って、減衰する重み関数Ｗ（Δｔ）を用いる。ＴＦは、式（１）のように表される。
【００２１】
【数２】
2011238081.tif 000004
【００２２】
なお、式（１）中のｎi,sは、時刻ｓと１つ前の時刻（ｓ−１）との間（所定期間）に取得された単語ｉの出現度数を表している。また、単語ｉは、Ｍｅｔａタグ検出や、書き込み判定において記述内容に対し形態素解析を適用した際に観測されるものである。式（１）中のｔ0は、例えば、キーワード抽出部２３の動作を開始した時刻である。そして、時刻は、離散化されているものとする。また、重み関数Ｗ（・）は、減衰重みを表す減衰重み関数であり、ｔ−ｓが大きくなる（古くなる）に従って、Ｗ（・）が０に近づいていくものが好適である。これは、一般的に、現在に近い事柄ほど重要性が高いという性質を考慮したものである。
【００２３】
また、ＩＤＦは、式（２）のように表される。
【００２４】
【数３】
2011238081.tif 000005
【００２５】
なお、式（２）中のＷ（・）は、式（１）と同じ関数である。また、｜ds:dsэkeywordi｜は、時刻ｓと１つ前の時刻（ｓ−１）との間（所定期間）に取得された単語ｉを含むＷｅｂページ数（ＨＴＴＰデータ数）を表す。｜Ｄs｜は、時刻ｓと１つ前の時刻（ｓ−１）との間（所定期間）に取得された総Ｗｅｂページ数（ＨＴＴＰデータ数の合計）を表す。
【００２６】
式（１）および式（２）を用いて、単語の重要度は、式（３）のように算出される。そして、単語の重要度が、予め設定された閾値以上の場合、重要単語であるとみなす。
【００２７】
【数４】
2011238081.tif 000006
【００２８】
ここで、重み関数Ｗ（・）を、式（４）のように、時間ｕ（所定期間）に関する指数型の関数として定義する。
【００２９】
【数５】
2011238081.tif 000007
【００３０】
ただし、ａは、定数であり、コンフィグファイル等で予め設定される値である。ａの値が小さければ、過去の単語が重要度に及ぼす寄与率が小さくなる。
【００３１】
次に、式（１）の分子および分母を漸化式で表す。現時刻をｔj+1、１つ前の時刻をｔjとしたとき、式（１）の右辺の分子αi,tおよび分母βtは、それぞれ、式（５）、式（６）のように表される。
【００３２】
【数６】
2011238081.tif 000008
【００３３】
次に、式（２）の分子および分母を漸化式で表す。現時刻をｔj+1、１つ前の時刻をｔjとしたとき、式（２）の右辺の分子γtおよび分母θi,tは、それぞれ、式（７）、式（８）のように表される。
【００３４】
【数７】
2011238081.tif 000009
【００３５】
式（５）〜（８）に示す漸化式から分かるように、キーワードパラメータＤＢ２５は、α（第１の変数）およびθ（第４の変数）を単語ｉごとに記憶しており、β（第２の変数）およびγ（第３の変数）を全体としてそれぞれ１つ記憶していれば良い。ただし、α、β、γ、およびθの初期値は、ゼロであるものとし、初期値の状態では不定であるため、ＴＦＩＤＦの値は計算しないものとする。また、キーワードパラメータＤＢ２５に記憶されているα、β、γ、およびθは、式（５）〜（８）の演算が実行された後、次の時刻ｔj+2における演算に備えて、更新される。図４は、現時刻がｔj+1のときに、キーワードパラメータＤＢ２５に記憶している情報を表している。また、図４に示す重み関数は、例えば、過去になるに従って減衰する重みを表す減衰重み係数をテーブルとして置き換えたものであっても構わない。
【００３６】
（並列処理）
演算部２４（図２参照）において、ＴＦＩＤＦの演算を高速に行うために、単語ごとの演算（α，θ）を、並列プロセッサによって実行する処理について、図５を用いて説明する（適宜、図２参照）。
図５に示す並列プロセッサは、デバイス上に配列領域を備え、各単語の記憶場所に、式（５）を演算するためのαの値、式（８）を演算するためのθの値、および最後に更新された時刻ｔjをそれぞれ格納する。
そして、演算部２４は、時刻ｔj+1において、キーワード抽出部２３によって抽出された単語ごとに、その単語の出現度数ｎをカウントし、入力ベクトルを生成する。次に、演算部２４は、単語ごとに、その単語に該当する記憶場所からαの値およびθの値を読み出し、演算済みのβの値およびγの値を読み出して別々のスレッドに割り当て、並列プロセッサの別々のコアに担当させるようにして、並列にＴＦＩＤＦを演算する。そして、ＴＦＩＤＦの演算結果を出力ベクトルとして出力する。
【００３７】
なお、出力ベクトルを生成する際、出力ベクトルの要素は、予め設定しておいた閾値以上のもののみとしても良い。このことにより、サービス機器４０へ送信する情報量を低減することができる。
また、単語と、並列プロセッサ内の記憶場所との対応関係は、ハッシュテーブル等を用いて設定される。
また、前記説明では、単一の単語列を入力ベクトルとしていたが、複数列の場合（例えば、ＨＴＴＰパケットの種類を表す、リクエストパケットやレスポンスパケット、またＨＴＴＰメソッドの種類である、ＧＥＴメソッド、およびＰＯＳＴメソッドを区別する場合）であっても構わない。この複数列の場合には、列ごとにα、θを分けて計算しておき、列ごとにＴＦＩＤＦの演算を実行すれば良い。そして、複数列のα、θ、ｔのセットは、デバイス上の記憶場所が隣接して配置されると好適である。
【００３８】
（実現例１）
図６は、逐次型重要単語抽出装置２０を用いて、トラフィック（パケット）に含まれる文字列を解析し、重要単語に基づいて広告情報の提供を行う実現例を表している。キーワード抽出対象のデータとして、ＨＴＴＰトラフィックのＧＥＴメソッドに含まれる検索語、ＨＴＭＬに含まれるＭｅｔａタグ内のキーワード、ＰＯＳＴ内のテキスト、を扱う。ユーザは端末１０を介して、Ｗｅｂサーバ３０にアクセスする。逐次型重要単語抽出装置２０はネットワーク５０中の図示しないルータまたはプロキシ装置内に実装され、転送されるパケットを捕捉し、重要単語を抽出する。抽出された重要単語は、予め様々な広告情報を蓄積している広告サーバ４０ａ（４０）に送信される。そして、広告サーバ４０ａは、受信した重要単語中から一致度の高い広告情報を選択する。選択された広告情報は、ルータやプロキシ装置内に実装されるＤＰＩ(Deep Packet Inspection)装置６０に通知され、該当するパケットのＨＴＴＰボディを書き換えて広告情報を埋め込むことで、広告サービスを実現する。なお、該当するパケットは、宛先や送信元のＩＰアドレスやポート番号により判別する。
【００３９】
（実現例２）
図７は、逐次型重要単語抽出装置２０を用いて、トラフィック監視を行う実現例を表している。逐次型重要単語抽出装置２０は、図６の場合と同様にネットワーク５０中の図示しないルータやプロキシ内に実装され、転送されるトラフィック内に含まれる単語から重要単語を抽出する。抽出した重要単語をネットワーク５０に設置されているファイアウォール装置４０ｂ（４０）に通知し、特定の単語を含んでいたら遮断するようにする。これにより、画一的に、ある単語を含んでいるトラフィックをすべて遮断するのではなく、その特定の単語が重要と判定された場合にのみ遮断可能となる。
【００４０】
以上、本実施形態で説明した逐次型重要単語抽出装置２０は、端末１０から受信したパケットに格納されているＨＴＴＰの断片化したデータを連結して元のＨＴＴＰデータに戻す。そして、元のＨＴＴＰデータに形態素解析等を適用し、単語を抽出する。演算部２４は、受信した単語ごとに、キーワードパラメータＤＢ２５から演算処理に必要なパラメータを取得して単語の重要度を算出する。なお、単語の重要度は、１つ前の過去の値を用いて演算できる漸化式の形式で表現されるので、記憶容量の増大を抑制し、パケットの到着に応じて直ちに演算可能になる。すなわち、記憶容量の増大を抑制するとともに、パケットの到着に応じてＴＦＩＤＦを更新する技術を提供することができる。
なお、本実施形態で説明した逐次型重要単語抽出装置２０における処理を、ソフトウェアによって実現しても構わない。
【符号の説明】
【００４１】
２０    逐次型重要単語抽出装置
２１    パケット受信部
２２    ＨＴＴＰデータ組立部
２３    キーワード抽出部
２４    演算部
２５    キーワードパラメータＤＢ（記憶手段）
２６    重要単語転送部
３０    Ｗｅｂサーバ
４０    サービス機器
５０    ネットワーク
【図１】
2011238081.tif 000010
【図２】
2011238081.tif 000011
【図３】
2011238081.tif 000012
【図４】
2011238081.tif 000013
【図５】
2011238081.tif 000014
【図６】
2011238081.tif 000015
【図７】
2011238081.tif 000016