(57)【特許請求の範囲】
【請求項１】
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段と、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段と、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段と、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段と、
を備え、
前記単語頻度計数手段は、
計数された前記単語頻度を記憶する第１記憶手段と、
前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新する第１更新手段と、
を有し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を記憶する第２記憶手段と、
初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する第２更新手段と、
を有する、キーワード抽出システム。
【請求項２】
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段と、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段と、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段と、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段と、
を備え、
前記単語頻度計数手段は、
計数された前記単語頻度を記憶する第１記憶手段と、
前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第１記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新する第１更新手段と、
を有し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を記憶する第２記憶手段と、
前記第１更新手段によって更新されることで前記単語頻度が所定の第１閾値を上回った場合、及び、該単語頻度が前記第１閾値を下回った場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する第２更新手段と、
を有する、キーワード抽出システム。
【請求項３】
複数の前記単語抽出手段と、複数の前記ラベル生成手段と、複数の前記単語頻度計数手段と、複数の前記コンテクスト頻度計数手段と、を備え、
複数の前記単語抽出手段は、並列計算により前記単語を抽出し、
複数の前記ラベル生成手段は、並列計算により前記コンテクストラベルを生成し、
複数の前記単語頻度計数手段は、並列計算により前記単語頻度を計数し、
複数の前記コンテクスト頻度計数手段は、並列計算により前記コンテクスト頻度を計数する、
請求項１又は２に記載のキーワード抽出システム。
【請求項４】
前記単語頻度計数手段は、
前記単語を含む前記テキストを投稿したユーザの数に基づいて、前記単語頻度を計数する、
請求項１乃至３のいずれか１項に記載のキーワード抽出システム。
【請求項５】
前記単語を含む前記テキストを投稿したユーザの多様度を表すユーザ多様度指数を算出するユーザ多様度算出手段、
を備え、
前記キーワード抽出手段は、
前記依存度の高い所定の個数の前記単語のうち、前記ユーザ多様度指数の最も高い前記単語を、キーワードとして抽出する、
請求項１乃至４のいずれか１項に記載のキーワード抽出システム。
【請求項６】
前記単語を含む前記テキストを投稿したユーザの多様度を表すユーザ多様度指数を算出するユーザ多様度算出手段、
を備え、
前記キーワード抽出手段は、
前記ユーザ多様度指数が所定の第２閾値以上となる前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出する、
請求項１乃至４のいずれか１項に記載のキーワード抽出システム。
【請求項７】
前記コンテクスト情報は、
前記テキストの投稿に供された端末の位置を示す位置情報、前記テキストが投稿された時間を示す情報、及び、前記テキストを投稿したユーザの属性を示す情報のうち少なくとも１つからなる、
請求項１乃至６のいずれか１項に記載のキーワード抽出システム。
【請求項８】
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出ステップと、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数ステップと、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出ステップと、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出ステップと、
を含み、
前記単語頻度計数ステップでは、
計数された前記単語頻度を第１記憶手段に記憶させて、前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出ステップにおいて抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数ステップでは、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する、キーワード抽出方法。
【請求項９】
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出ステップと、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数ステップと、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出ステップと、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出ステップと、
を含み、
前記単語頻度計数ステップでは、
計数された前記単語頻度を第１記憶手段に記憶させて、前記単語頻度が記憶された後に前記単語抽出ステップにおいて抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第１記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数ステップでは、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、前記単語頻度計数ステップにおいて更新された前記単語頻度が所定の閾値を上回った場合、及び、該単語頻度が前記閾値を下回った場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する、キーワード抽出方法。
【請求項１０】
コンピュータを、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段、
として機能させ、
前記単語頻度計数手段は、
計数された前記単語頻度を第１記憶手段に記憶させて、前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する、プログラム。
【請求項１１】
コンピュータを、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段、
として機能させ、
前記単語頻度計数手段は、
計数された前記単語頻度を第１記憶手段に記憶させて、前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第１記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、前記単語頻度計数手段によって更新されることで前記単語頻度が所定の閾値を上回った場合、及び、該単語頻度が前記閾値を下回った場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、キーワード抽出システム、キーワード抽出方法及びプログラムに関する。
【背景技術】
【０００２】
近年、マイクロブログやＳＮＳ（Social Networking Service）に代表されるサービスが、情報発信やコミュニケーションの手段として広く利用されている。ユーザは、携帯端末を利用すれば、時間や場所によらずに、これらのサービスにテキスト（メッセージ等）を投稿することができる。テキストが投稿されたときの時間や場所、その他の端末の状況は、コンテクストと呼ばれる。
【０００３】
コンテクストは、例えば、テキストに付随するコンテクスト情報によって示される。具体的には、テキストが投稿された時間を示す情報が、多くのサービスでテキストとともに記録されている。また、端末の位置を示す情報（以下、位置情報という）が、端末が有するＧＰＳ（Global Positioning System）機能によってテキストに付与される場合がある。
【０００４】
また、テキストは、コンテクストに依存するキーワードを含むことがある。キーワード及びこのキーワードが依存するコンテクストは、レコメンデーション等に有用な情報である。例えば、テキストに付与された位置情報と、このテキストに含まれるキーワードとを抽出すると、ユーザが特定の場所に依存して興味を持つ対象を把握することができる。
【０００５】
そこで、テキストからキーワードを抽出する技術が提案されている（例えば、非特許文献１を参照）。非特許文献１に記載の技術では、所定の単語を含む位置情報付きテキストが選択され、位置情報によって示される位置のばらつきが評価される。これにより、この位置が特定の場所に集中するような単語を、この場所に依存するキーワードとして見つけ出すことができる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】荒川豊ほか、“Ｔｗｉｔｔｅｒ分析に基づく位置依存文字列の抽出”、情報処理学会研究報告、ＭＢＬ、２０１０−ＭＢＬ−５５（１０）、ｐｐ．１−６、２０１０
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１に記載の技術では、複数のキーワードが同一の場所に依存する場合に、より強くこの場所に依存するキーワードを選定することが困難であった。
【０００８】
本発明は、上述の事情に鑑みてなされたもので、キーワードの候補が複数存在する場合に、より強くコンテクストに依存するキーワードを抽出することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の第１の観点に係るキーワード抽出システムは、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段と、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段と、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段と、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段と、
を備え、
前記単語頻度計数手段は、
計数された前記単語頻度を記憶する第１記憶手段と、
前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新する第１更新手段と、
を有し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を記憶する第２記憶手段と、
初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する第２更新手段と、
を有する。
上記目的を達成するために、本発明の第２の観点に係るキーワード抽出システムは、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段と、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段と、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段と、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段と、
を備え、
前記単語頻度計数手段は、
計数された前記単語頻度を記憶する第１記憶手段と、
前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第１記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新する第１更新手段と、
を有し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を記憶する第２記憶手段と、
前記第１更新手段によって更新されることで前記単語頻度が所定の第１閾値を上回った場合、及び、該単語頻度が前記第１閾値を下回った場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する第２更新手段と、
を有する。
【００１０】
上記目的を達成するために、本発明の第３の観点に係るキーワード抽出方法は、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出ステップと、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数ステップと、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出ステップと、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出ステップと、
を含み、
前記単語頻度計数ステップでは、
計数された前記単語頻度を第１記憶手段に記憶させて、前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出ステップにおいて抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数ステップでは、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する。
上記目的を達成するために、本発明の第４の観点に係るキーワード抽出方法は、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出ステップと、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数ステップと、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出ステップと、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出ステップと、
を含み、
前記単語頻度計数ステップでは、
計数された前記単語頻度を第１記憶手段に記憶させて、前記単語頻度が記憶された後に前記単語抽出ステップにおいて抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第１記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数ステップでは、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、前記単語頻度計数ステップにおいて更新された前記単語頻度が所定の閾値を上回った場合、及び、該単語頻度が前記閾値を下回った場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する。
【００１１】
上記目的を達成するために、本発明の第５の観点に係るプログラムは、
コンピュータを、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段、
として機能させ、
前記単語頻度計数手段は、
計数された前記単語頻度を第１記憶手段に記憶させて、前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する。
上記目的を達成するために、本発明の第６の観点に係るプログラムは、
コンピュータを、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段、
として機能させ、
前記単語頻度計数手段は、
計数された前記単語頻度を第１記憶手段に記憶させて、前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第１記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新し、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を第２記憶手段に記憶させて、前記単語頻度計数手段によって更新されることで前記単語頻度が所定の閾値を上回った場合、及び、該単語頻度が前記閾値を下回った場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する。
【発明の効果】
【００１２】
本発明によれば、コンテクストに単語が依存する度合いを表す依存度が算出され、この依存度が最も高い単語がキーワードとして抽出される。これにより、キーワードの候補が複数存在する場合に、より強くコンテクストに依存するキーワードを抽出することができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態１に係るキーワード抽出システムの機能の構成を示す概略図である。
【図２】テキスト記憶部に記憶されるデータを示す図である。
【図３】解析部から出力されるデータを示す図である。
【図４】単語頻度記憶部に記憶されるデータを示す図である。
【図５】単語頻度計数部からコンテクスト頻度計数部へ出力されるデータを示す図である。
【図６】コンテクスト頻度記憶部に記憶されるデータを示す図である。
【図７】依存度記憶部に記憶されるデータを示す図である。
【図８】キーワード抽出部によって抽出されたキーワードを示す図である。
【図９】キーワード抽出システムによって実行される処理を示すフロー図である。
【図１０】実施形態２に係るキーワード抽出システムの機能の構成を示す概略図である。
【図１１】解析部から出力されるデータを示す図である。
【図１２】第１ソート部によって生成されるデータを示す図である。
【図１３】第２ソート部によって生成されるデータを示す図である。
【図１４】実施形態３に係るキーワード抽出システムの機能の構成を示す概略図である。
【図１５】キーワード抽出システムによって実行される処理を示すフロー図である。
【図１６】単語頻度計数部によって実行される単語頻度の更新処理を示すフロー図である。
【図１７】コンテクスト頻度計数部によって実行されるコンテクスト頻度の更新処理を示すフロー図である。
【図１８】実施形態４に係るキーワード抽出システムの機能の構成を示す概略図である。
【図１９】単語頻度記憶部に記憶されるデータを示す図である。
【図２０】単語頻度計数部によって実行される単語頻度の更新処理を示すフロー図である。
【図２１】実施形態５に係るキーワード抽出システムの機能の構成を示す概略図である。
【図２２】キーワード抽出システムのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面を参照しながら詳細に説明する。
【００１５】
（実施形態１）
本実施形態に係るキーワード抽出システム１０は、コンテクスト情報として位置情報を付与された複数のテキストからキーワードを抽出する。位置情報は、例えば、緯度及び経度を示すデータである。キーワード抽出システム１０は、図１に示されるように、テキスト記憶部２０、解析部３０、単語頻度計数部４０、単語頻度記憶部５０、コンテクスト頻度計数部６０、コンテクスト頻度記憶部７０、依存度算出部８０、依存度記憶部９０、及びキーワード抽出部１００を有している。
【００１６】
テキスト記憶部２０は、図２に示されるように、ユーザによって投稿された複数のテキストと、複数のテキストそれぞれに付与された位置情報とを対応づけて記憶する。
【００１７】
解析部３０は、テキスト記憶部２０に記憶されたテキスト及び位置情報を解析する。解析部３０は、単語抽出部３１とコンテクストラベル生成部３２とを有している。
【００１８】
単語抽出部３１は、テキストから単語を抽出する。例えば、単語抽出部３１は、図２に示される「今から野球観戦＠後楽園」というテキストを形態素解析によって分割することにより、「今」、「野球」、「観戦」及び「後楽園」の４つの単語（名詞）を抽出する。
【００１９】
コンテクストラベル生成部３２は、位置情報に基づいてコンテクストラベルを生成する。コンテクストラベルは、類似している複数の位置情報をまとめるための識別子である。例えば、コンテクストラベル生成部３２は、図２に示される緯度「３５．７０５６」及び経度「１３９．７５１９」の小数点第３位以下を切り捨てて、０．０１度単位のコンテクストラベル「３５．７０：１３９．７５」を生成する。緯度及び経度の０．０１度は約１ｋｍに相当するため、このコンテクストラベルは、位置情報により示される位置が約１ｋｍ四方の所定の地域内にあることを示している。
【００２０】
解析部３０は、複数の位置情報付きテキストそれぞれについて、単語の抽出と、コンテクストラベルの生成とを実行する。また、解析部３０は、単語と、この単語を含む位置情報付きテキストに基づいて生成されたコンテクストラベルとを対応づける。例えば、解析部３０は、図３に示されるように、一のテキストから抽出された「今」、「野球」、「観戦」及び「後楽園」それぞれに、同一のコンテクストラベル「３５．７０：１３９．７５」を対応づける。そして、解析部３０は、単語及びコンテクストラベルが対応づけられたテーブルを、単語頻度計数部４０へ出力する。
【００２１】
単語頻度計数部４０は、解析部３０の出力に含まれる単語と、この単語に対応するコンテクストラベルとの同一の組合せが出現する回数を計数する。具体的には、単語頻度計数部４０は、単語及びこの単語に対応するコンテクストラベルとの組合せのうち、単語及びコンテクストラベルの双方が相互に等しい組合せの数を計数する。例えば、図３に示されるテーブルが解析部３０から出力された場合、単語頻度計数部４０は、単語「野球」とコンテクストラベル「３５．７０：１３９．７５」との組合せが出現する回数を２回と計数する。なお、図３に示されるテーブルにおいて単語「今」は２回出現するが、それぞれに対応するコンテクストラベルは異なっている。そのため、単語頻度計数部４０は、単語「今」とコンテクストラベルとの２通りの組合せそれぞれが出現する回数を、１回ずつと計数する。
【００２２】
単語頻度計数部４０は、図４に示されるように、単語とコンテクストラベルとの組合せ（以下、単に組合せという）とともに、計数の結果を単語頻度として単語頻度記憶部５０に記憶させる。単語頻度は、コンテクストラベルにより示されるコンテクストにおいて一の単語が言及された回数を表す指標である。例えば、特定の地域において一の単語が繰り返し言及されると、単語頻度は大きい値になる。
【００２３】
また、単語頻度計数部４０は、図５に示されるように、１回以上計数された組合せを示すテーブルを、コンテクスト頻度計数部６０へ出力する。
【００２４】
コンテクスト頻度計数部６０は、単語頻度計数部４０から出力されたテーブルにおいて、単語それぞれに対応する別個のコンテクストラベルが出現する回数を計数する。具体的には、コンテクスト頻度計数部６０は、このテーブルのうち、単語が相互に等しい組合せ群に含まれるコンテクストラベルの種類の数を計数する。例えば、コンテクスト頻度計数部６０は、図５に示されるテーブルにおいて、単語「今」に対応する別個のコンテクストラベルが生成された回数を２回と計数する。
【００２５】
そして、コンテクスト頻度計数部６０は、図６に示されるように、単語それぞれについての計数結果を、コンテクスト頻度としてコンテクスト頻度記憶部７０に記憶させる。コンテクスト頻度は、一の単語が何通りのコンテクストラベルと組みになって出現しているかを表す指標である。例えば、一の単語が数多くの地域で言及されると、この単語のコンテクスト頻度は大きい値になる。
【００２６】
依存度算出部８０は、単語頻度記憶部５０に記憶される単語頻度と、コンテクスト頻度記憶部７０に記憶されるコンテクスト頻度とに基づいて、依存度を算出する。依存度は、コンテクストラベルにより示されるコンテクストに単語が依存する度合いを表す指標である。この依存度は、例えば、少ない地域において単語が繰り返し言及されると大きい値となる。換言すると、依存度は、単語頻度が高くなると高くなり、かつ、コンテクスト頻度が高くなると低くなる。
【００２７】
依存度算出部８０は、例えば、情報検索の分野で用いられるＴＦＩＤＦ（term frequency - inverse document frequency）と同様の導出によって依存度を算出する。ＴＦＩＤＦは、複数の文書に含まれる単語の重み付け係数であって、より少ない文書において単語が繰り返し言及されると、値が大きくなる。このＴＦＩＤＦと同様に依存度が導出される場合、全コンテクストラベル数をＮとし、単語ＷとコンテクストラベルＣとの組合せの単語頻度をＦとし、単語Ｗのコンテクスト頻度をＧとすると、コンテクストラベルＣにより示されるコンテクストへの単語Ｗの依存度Ｉは、次式（１）で示される。
【００２８】
【数１】
0005757208.tif 000002
【００２９】
依存度算出部８０は、単語頻度記憶部５０に記憶されているすべての組合せについて、上記式（１）を用いて依存度を算出する。例えば、図７に示されるように、同一の地域で２回言及された単語「野球」の依存度は、比較的大きい値となる。また、異なる地域で１回ずつ言及された単語「今」の依存度は、いずれも比較的小さい値となっている。
【００３０】
そして、依存度算出部８０は、図７に示されるように、単語及びコンテクストラベルの組合せと、この組合せについて算出された依存度とを対応づけて依存度記憶部９０に記憶させる。
【００３１】
キーワード抽出部１００は、依存度記憶部９０に記憶されたデータに基づいて、コンテクストラベルごとに、依存度が最大の単語をキーワードとして抽出する。例えば、キーワード抽出部１００は、図７に示されるテーブルのうち、コンテクストラベル「３５．７０：１３９．７５」について依存度が最大の単語「野球」を抽出する。このようにして、キーワード抽出部１００は、図８に示されるように、コンテクストラベルそれぞれに対応するキーワードを抽出する。
【００３２】
続いて、以上の構成要素を有するキーワード抽出システム１０の動作について説明する。
【００３３】
まず、図９に示されるように、解析部３０は、テキスト記憶部２０から位置情報付きテキストを１つ取得する（ステップＳ１０）。
【００３４】
次に、単語抽出部３１は、取得されたテキストから単語を抽出する（ステップＳ１１）。また、コンテクストラベル生成部３２は、取得された位置情報に基づいてコンテクストラベルを生成する（ステップＳ１２）。
【００３５】
その後、解析部３０は、テキスト記憶部２０から位置情報付きテキストをすべて取得したか否かを判定する（ステップＳ１３）。
【００３６】
位置情報付きテキストをすべて取得していないと判定された場合（ステップＳ１３；Ｎｏ）、解析部３０は、ステップＳ１０へ戻って処理を繰り返す。
【００３７】
位置情報付きテキストをすべて取得したと判定された場合（ステップＳ１３；Ｙｅｓ）、単語頻度計数部４０は、解析部３０の出力に基づいて単語頻度を計数する（ステップＳ１４）。
【００３８】
コンテクスト頻度計数部６０は、単語頻度計数部４０の出力に基づいてコンテクスト頻度を計数する（ステップＳ１５）。
【００３９】
依存度算出部８０は、単語頻度記憶部５０及びコンテクスト頻度記憶部７０に記憶されたデータに基づいて、依存度を算出する（ステップＳ１６）。
【００４０】
キーワード抽出部１００は、依存度記憶部９０に記憶されたデータに基づいて、キーワードを抽出する（ステップＳ１７）。
【００４１】
以上説明したように、本実施形態に係るキーワード抽出システム１０は、単語頻度及びコンテクスト頻度に基づいて、コンテクストラベルにより示される地域への単語の依存度を算出する。そして、キーワード抽出システム１０は、この依存度に基づいて複数の単語からキーワードを抽出する。これにより、キーワードの候補となる複数の単語が存在する場合に、より強く特定の地域に依存する単語をキーワードとして抽出することができる。
【００４２】
また、キーワード抽出システム１０は、コンテクストラベルごとに上述の処理に従ってキーワードを抽出する。これにより、キーワード抽出システム１０は、テキストの投稿数の多少に関係なく、地域ごとにキーワードを抽出することができる。例えば、投稿数の多い都市と、投稿数の少ない郊外とのそれぞれの地域に依存するキーワードを抽出することができる。
【００４３】
（実施形態２）
続いて、実施形態２について、上述の実施形態１との相違点を中心に説明する。なお、実施形態１に係る構成要素と同一又は同等の構成には、実施形態１と同一の符号を付す。また、実施形態１と説明が重複する部分については、その説明を省略する。
【００４４】
本実施形態に係るキーワード抽出システム１０は、分散システムとして構成されている点で、実施形態１に係るものと異なる。キーワード抽出システム１０は、図１０に示されるように、解析部３０ａ〜３０ｃ、第１ソート部１１０、単語頻度計数部４０ａ〜４０ｃ、第２ソート部１２０、及びコンテクスト頻度計数部６０ａ〜６０ｃを有している。
【００４５】
解析部３０ａ〜３０ｃそれぞれは、テキスト記憶部２０に記憶された位置情報付きテキストを分担して、位置情報付きテキストを解析する。すなわち、解析部３０ａ〜３０ｃは、並列計算により単語を抽出し、コンテクストラベルを生成する。この際に、解析部３０ａ〜３０ｃそれぞれは、解析の負荷が均等になるように位置情報付きテキストを分担する。
【００４６】
解析部３０ａ〜３０ｃそれぞれは、単語及びコンテクストラベルの組合せと整数値１とのペアを、解析の結果として第１ソート部１１０へ出力する。以下では、このペアを＜組合せ、整数値１＞という記法に従って記す。また、この組合せを（単語、コンテクストラベル）という記法に従って記す。
【００４７】
例えば、解析部３０ａは、図２に示される「今、東京駅にいます。」というテキストと緯度「３５．６８１４」及び経度「１３９．７６６１」の位置情報とを解析して、＜（今、３５．６８：１３９．７６）、１＞と、＜（東京駅、３５．６８：１３９．７６）、１＞との２つのペアを出力する。
【００４８】
第１ソート部１１０は、解析部３０ａ〜３０ｃから解析結果をすべて取得すると、単語とコンテクストラベルとの組合せについて、すべてのペアをソートする。
【００４９】
また、第１ソート部１１０は、＜組合せ、整数値＞というペアを、＜組合せ、リスト＞というペアに変換する。リストは、リスト形式のデータである。例えば、要素として整数値１と整数値２とを有するリストは、［１、２］と記されることがあり、以下でもこの記法に従ってリストを記す。なお、リストの要素が複数である必要はない。
【００５０】
例えば、第１ソート部１１０は、図１１に示される＜（今、３５．７０：１３９．７５）、１＞というペアを、図１２に示される＜（今、３５．７０：１３９．７５）、［１］＞というペアに変換する。
【００５１】
また、第１ソート部１１０は、同一の組合せを有する複数のペアを、この組合せと、ペアの数だけ整数値１を有するリストとの１つのペアに変換する。例えば、第１ソート部１１０は、図１１に示される２つの＜（野球、３５．７０：１３９．７５）、１＞というペアを、図１２に示される１つの＜（野球、３５．７０：１３９．７５）、［１、１］＞というペアに変換する。
【００５２】
そして、第１ソート部１１０は、これらの変換の結果を分割して、単語頻度計数部４０ａ〜４０ｃそれぞれへ出力する。この際に、第１ソート部１１０は、単語頻度計数部４０ａ〜４０ｃそれぞれにかかる負荷が均等になるように、結果を分割する。例えば、第１ソート部１１０は、図１２に示される７つのペアを、３つのペア、２つのペア、及び２つのペアに分割して、３つの単語頻度計数部４０ａ〜４０ｃへ出力する。
【００５３】
単語頻度計数部４０ａ〜４０ｃは、第１ソート部１１０から出力されたペアに基づいて、並列計算により単語頻度を計数する。単語頻度計数部４０ａ〜４０ｃは、ペアそれぞれについて、リストの要素（整数値）の和を、組合せの単語頻度として算出する。
【００５４】
例えば、単語頻度計数部４０ａは、＜（野球、３５．７０：１３９．７５）、［１、１］＞というペアを取得すると、単語「野球」とコンテクストラベル「３５．７０：１３９．７５」との組合せの単語頻度を２回と計数する。
【００５５】
そして、単語頻度計数部４０ａ〜４０ｃは、計数の結果を単語頻度記憶部５０に記憶させる。また、単語頻度計数部４０ａ〜４０ｃは、単語頻度が１回以上となる組合せを、第２ソート部１２０へ出力する。
【００５６】
第２ソート部１２０は、単語頻度計数部４０ａ〜４０ｃから出力された組合せをすべて取得すると、単語についてすべての組合せをソートする。
【００５７】
また、第２ソート部１２０は、（単語、コンテクストラベル）という組合せを、（単語、リスト）という組合せに変換する。このリストの要素は、コンテクストラベルである。
【００５８】
例えば、第２ソート部１２０は、図５に示される（野球、３５．７０：１３９．７５）という組合せを、図１３に示される（野球、［３５．７０：１３９．７５］）という組合せに変換する。
【００５９】
また、第２ソート部１２０は、同一の単語を有する複数の組合せを、この単語とコンテクストラベルのリストとの組合せに変換する。例えば、第２ソート部１２０は、図５に示される（今、３５．７０：１３９．７５）、及び（今、３５．６８：１３９．７６）という２つの組合せを、図１３に示される（今、［３５．７０：１３９．７５、３５．６８：１３９．７６］）という組合せに変換する。
【００６０】
そして、第２ソート部１２０は、これらの変換の結果を分割して、コンテクスト頻度計数部６０ａ〜６０ｃそれぞれへ出力する。この際に、第２ソート部１２０は、コンテクスト頻度計数部６０ａ〜６０ｃそれぞれにかかる負荷が均等になるように、結果を分割する。
【００６１】
コンテクスト頻度計数部６０ａ〜６０ｃは、第２ソート部１２０から出力された組合せに基づいて、並列計算によりコンテクスト頻度を計数する。コンテクスト頻度計数部６０ａ〜６０ｃは、組合せそれぞれについて、リストに含まれる要素の数を、単語に対応するコンテクスト頻度として算出する。
【００６２】
例えば、コンテクスト頻度計数部６０ａ〜６０ｃは、図１３に示される（今、［３５．７０：１３９．７５、３５．６８：１３９．７６］）という組合せを取得すると、単語「今」のコンテクスト頻度を２回と計数する。
【００６３】
そして、コンテクスト頻度計数部６０ａ〜６０ｃは、計数の結果を、コンテクスト頻度記憶部７０に記憶させる。
【００６４】
以上説明したように、本実施形態に係るキーワード抽出システム１０は、分散システムとして構成され、分散処理を実行する。これにより、テキストの数が膨大になった場合であっても、解析部３０ａ〜３０ｃ、単語頻度計数部４０ａ〜４０ｃ、又はコンテクスト頻度計数部６０ａ〜６０ｃの数を増やすことにより、スケーラビリティを確保することができる。
【００６５】
（実施形態３）
続いて、実施形態３について、上述の実施形態２との相違点を中心に説明する。なお、実施形態２に係る構成要素と同一又は同等の構成には、実施形態２と同一の符号を付す。また、実施形態２と説明が重複する部分については、その説明を省略する。
【００６６】
本実施形態に係るキーワード抽出システム１０は、キーワードを抽出する処理（以下、キーワード抽出処理という）を繰り返し実行する。また、キーワード抽出システム１０は、前回のキーワード抽出処理以降に投稿された位置情報付きテキストに基づいて、単語頻度記憶部５０及びコンテクスト頻度記憶部７０のデータを繰り返し更新する。
【００６７】
キーワード抽出システム１０は、図１４に示されるように、単語頻度計数部４０ｄ〜４０ｆが単語頻度記憶部５０に記憶されるデータを読み込み、コンテクスト頻度計数部６０ｄ〜６０ｆがコンテクスト頻度記憶部７０に記憶されるデータを読み込む点で、実施形態２に係るものと異なっている。
【００６８】
解析部３０ｄ〜３０ｆは、テキスト記憶部２０に記憶された位置情報付きテキストのうち、前回のキーワード抽出処理以降に新しく記憶されたもののみを取得して解析する。
【００６９】
単語頻度計数部４０ｄ〜４０ｆは、組合せとリストとのペアを第１ソート部１１０から取得すると、この組合せの単語頻度を単語頻度記憶部５０から読み込む。読み込まれた単語頻度は、前回のキーワード抽出処理までに計数された単語頻度である。
【００７０】
なお、この組合せの単語頻度が単語頻度記憶部５０に記憶されていない場合に、単語頻度計数部４０ｄ〜４０ｆは、単語頻度記憶部５０から読み込んだ単語頻度をゼロとする。すなわち、単語頻度計数部４０ｄ〜４０ｆは、初めて単語頻度が計数される組合せを取得した場合に、単語頻度をゼロとする。
【００７１】
また、この場合には、単語頻度計数部４０ｄ〜４０ｆは、この組合せに含まれる単語と整数値１とのペアを第２ソート部１２０へ出力する。一方、この組合せの単語頻度が単語頻度記憶部５０に記憶されている場合には、単語頻度計数部４０ｄ〜４０ｆは、第２ソート部１２０へデータを出力しない。
【００７２】
単語頻度計数部４０ｄ〜４０ｆは、第１ソート部１１０から取得したリストに含まれる整数値すべてを、読み込まれた単語頻度に加算する。単語頻度計数部４０ｄ〜４０ｆは、この加算の結果を新しい単語頻度として、単語頻度記憶部５０のデータを更新する。
【００７３】
第２ソート部１２０は、単語頻度計数部４０ｄ〜４０ｆから単語と整数値１とのペアを取得すると、＜単語、１＞というペアを、＜単語、［１］＞というペアに変換する。つまり、第２ソート部１２０は、整数値を、整数値を要素に持つリスト形式のデータに変換する。また、第２ソート部１２０は、同一の単語を有する複数のペアを、この単語と、複数の整数値１を要素とするリストとのペアに変換する。
【００７４】
そして、第２ソート部１２０は、単語とリストとのペアを、コンテクスト頻度計数部６０ｄ〜６０ｆへ出力する。
【００７５】
コンテクスト頻度計数部６０ｄ〜６０ｆは、第２ソート部１２０から単語とリストとのペアを取得すると、この単語に対応するコンテクスト頻度をコンテクスト頻度記憶部７０から読み込む。読み込まれたコンテクスト頻度は、前回のキーワード抽出処理までに計数されたコンテクスト頻度である。
【００７６】
なお、この単語のコンテクスト頻度がコンテクスト頻度記憶部７０に記憶されていない場合に、コンテクスト頻度計数部６０ｄ〜６０ｆは、コンテクスト頻度記憶部７０から読み込んだコンテクスト頻度をゼロとする。
【００７７】
コンテクスト頻度計数部６０ｄ〜６０ｆは、第２ソート部１２０から取得したリストに含まれる整数値すべてを、読み込まれたコンテクスト頻度に加算する。コンテクスト頻度計数部６０ｄ〜６０ｆは、この加算の結果を新しいコンテクスト頻度として、コンテクスト頻度記憶部７０のデータを更新する。
【００７８】
続いて、以上の構成要素を有するキーワード抽出システム１０の動作について、図１５を用いて説明する。
【００７９】
まず、解析部３０ｄ〜３０ｆは、テキスト記憶部２０から位置情報付きテキストを取得して、解析する（ステップＳ３０１）。
【００８０】
第１ソート部１１０は、解析部３０ｄ〜３０ｆから出力された組合せと整数値とのペアに基づいて、ソート及び変換処理を実行する（ステップＳ３０２）。具体的には、第１ソート部１１０は、組合せについてペアをソートし、整数値をリスト形式のデータに変換する。
【００８１】
単語頻度計数部４０ｄ〜４０ｆは、単語頻度の更新処理を実行する（ステップＳ３０３）。この単語頻度の更新処理について、図１６を用いて説明する。
【００８２】
まず、単語頻度計数部４０ｄ〜４０ｆは、単語Ｗ及びコンテクストラベルＣの組合せとリストとのペアを、第１ソート部１１０から取得したか否かを判定する（ステップＳ３２１）。
【００８３】
ペアを取得したと判定された場合（ステップＳ３２１；Ｙｅｓ）、単語頻度計数部４０ｄ〜４０ｆは、（単語Ｗ、コンテクストラベルＣ）という組合せの単語頻度Ｆが単語頻度記憶部５０に記憶されているか否かを判定する（ステップＳ３２２）。
【００８４】
単語頻度Ｆが単語頻度記憶部５０に記憶されていると判定された場合（ステップＳ３２２；Ｙｅｓ）、単語頻度計数部４０ｄ〜４０ｆは、この単語頻度Ｆを読み込んで、変数Ｘに値を代入する（ステップＳ３２３）。その後、単語頻度計数部４０ｄ〜４０ｆは、ステップＳ３２６へ移行する。
【００８５】
単語頻度Ｆが単語頻度記憶部５０に記憶されていないと判定された場合（ステップＳ３２２；Ｎｏ）、単語頻度計数部４０ｄ〜４０ｆは、変数Ｘにゼロを代入する（ステップＳ３２４）。また、単語頻度計数部４０ｄ〜４０ｆは、単語Ｗと整数値１とのペアを第２ソート部１２０へ出力する（ステップＳ３２５）。その後、単語頻度計数部４０ｄ〜４０ｆは、ステップＳ３２６へ移行する。
【００８６】
ステップＳ３２６にて、単語頻度計数部４０ｄ〜４０ｆは、第１ソート部１１０から出力されたリストに含まれる要素（整数値）の和Ｓｗを算出する（ステップＳ３２６）。
【００８７】
単語頻度計数部４０ｄ〜４０ｆは、変数Ｘと和Ｓｗとを加算することにより、新しく単語頻度Ｆを算出する。そして、単語頻度計数部４０ｄ〜４０ｆは、単語頻度記憶部５０に記憶されている単語頻度Ｆを更新する（ステップＳ３２７）。
【００８８】
その後、単語頻度計数部４０ｄ〜４０ｆは、ステップＳ３２１へ戻り、処理を繰り返す。
【００８９】
また、ステップＳ３２１にてペアを取得していないと判定された場合（ステップＳ３２１；Ｎｏ）、単語頻度計数部４０ｄ〜４０ｆは、単語頻度の更新処理を終了する。
【００９０】
図１５に戻り、ステップＳ３０３に続いて、コンテクスト頻度計数部６０ｄ〜６０ｆは、コンテクスト頻度の更新処理を実行する（ステップＳ３０４）。このコンテクスト頻度の更新処理について、図１７を用いて説明する。
【００９１】
まず、コンテクスト頻度計数部６０ｄ〜６０ｆは、単語Ｗとリストとのペアを第２ソート部１２０から取得したか否かを判定する（ステップＳ３４１）。
【００９２】
ペアを取得したと判定された場合（ステップＳ３４１；Ｙｅｓ）、コンテクスト頻度計数部６０ｄ〜６０ｆは、単語Ｗのコンテクスト頻度Ｇがコンテクスト頻度記憶部７０に記憶されているか否かを判定する（ステップＳ３４２）。
【００９３】
コンテクスト頻度Ｇがコンテクスト頻度記憶部７０に記憶されていると判定された場合（ステップＳ３４２；Ｙｅｓ）、コンテクスト頻度計数部６０ｄ〜６０ｆは、コンテクスト頻度Ｇを読み込んで、変数Ｙに値を代入する（ステップＳ３４３）。その後、コンテクスト頻度計数部６０ｄ〜６０ｆは、ステップＳ３４５へ移行する。
【００９４】
コンテクスト頻度Ｇがコンテクスト頻度記憶部７０に記憶されていないと判定された場合（ステップＳ３４２；Ｎｏ）、コンテクスト頻度計数部６０ｄ〜６０ｆは、変数Ｙにゼロを代入する（ステップＳ３４４）。その後、コンテクスト頻度計数部６０ｄ〜６０ｆは、ステップＳ３４５へ移行する。
【００９５】
ステップＳ３４５にて、コンテクスト頻度計数部６０ｄ〜６０ｆは、第２ソート部１２０から出力されたリストに含まれる要素（整数値）の和Ｓｃを算出する（ステップＳ３４５）。
【００９６】
コンテクスト頻度計数部６０ｄ〜６０ｆは、変数Ｙと和Ｓｃとを加算することにより、新しくコンテクスト頻度Ｇを算出する。そして、コンテクスト頻度計数部６０ｄ〜６０ｆは、コンテクスト頻度記憶部７０に記憶されているコンテクスト頻度Ｇを更新する（ステップＳ３４６）。
【００９７】
その後、コンテクスト頻度計数部６０ｄ〜６０ｆは、ステップＳ３４１へ戻り、処理を繰り返す。
【００９８】
また、ステップＳ３４１にてペアを取得していないと判定された場合（ステップＳ３４１；Ｎｏ）、コンテクスト頻度計数部６０ｄ〜６０ｆは、コンテクスト頻度の更新処理を終了する。
【００９９】
図１５に戻り、ステップＳ３０４に続いて、依存度算出部８０は、依存度を算出して、依存度記憶部９０に記憶されている依存度を更新する（ステップＳ３０５）。
【０１００】
キーワード抽出部１００は、依存度記憶部９０に記憶された依存度に基づいて、キーワードを抽出する（ステップＳ３１５）。
【０１０１】
そして、キーワード抽出システム１０は、ステップＳ３０１に戻り、以上のキーワード抽出処理を繰り返す。
【０１０２】
以上説明したように、本実施形態に係るキーワード抽出システム１０は、ユーザにより投稿された位置情報付きテキストのうち、新しく投稿されたものに基づいて、単語頻度記憶部５０、コンテクスト頻度記憶部７０及び依存度記憶部９０に記憶されているデータを繰り返し更新する。これにより、キーワード抽出システム１０は、ユーザから投稿されたテキストに含まれるキーワードをリアルタイムに抽出することができる。
【０１０３】
また、キーワード抽出システム１０は、新しく投稿された位置情報付きテキストのみを対象としてキーワード抽出処理を実行する。これにより、キーワード抽出システム１０は、繰り返し実行されるキーワード抽出処理の計算負荷を軽減することができる。
【０１０４】
（実施形態４）
続いて、実施形態４について、上述の実施形態３との相違点を中心に説明する。なお、実施形態３に係る構成要素と同一又は同等の構成には、実施形態３と同一の符号を付す。また、実施形態３と説明が重複する部分については、その説明を省略する。
【０１０５】
本実施形態に係るキーワード抽出システム１０は、単語頻度に重み付けを行うことにより、比較的古いキーワードの影響を軽減するとともに、比較的新しいキーワードを優先的に抽出する。キーワード抽出システム１０の構成は、図１８に示されるように、単語頻度計数部４０ｇ〜４０ｉ及び単語頻度記憶部５４が実施形態３に係るものと異なっている。
【０１０６】
単語頻度計数部４０ｇ〜４０ｉは、ラウンド数Ｒを保持する。このラウンド数Ｒは、繰り返し実行されるキーワード抽出処理の現在の回数を表す。単語頻度計数部４０ｇ〜４０ｉは、キーワード抽出処理が実行されるたびに、このラウンド数Ｒに１を加算する。また、単語頻度計数部４０ｇ〜４０ｉは、このラウンド数Ｒに基づいて単語頻度に重み付けを行う。
【０１０７】
単語頻度記憶部５４は、図１９に示されるように、単語、コンテクストラベル、単語頻度、及び更新ラウンド数を対応づけて記憶する。この更新ラウンド数は、単語頻度が更新された時のラウンド数を表している。
【０１０８】
続いて、以上の構成要素を有するキーワード抽出システム１０の動作のうち、単語頻度計数部４０ｇ〜４０ｉにより実行される単語頻度の更新処理について、図２０を用いて説明する。
【０１０９】
まず、単語頻度計数部４０ｇ〜４０ｉは、単語Ｗ及びコンテクストラベルＣの組合せとリストとのペアを、第１ソート部１１０から取得したか否かを判定する（ステップＳ４１）。
【０１１０】
ペアを取得したと判定された場合（ステップＳ４１；Ｙｅｓ）、単語頻度計数部４０ｇ〜４０ｉは、（単語Ｗ、コンテクストラベルＣ）という組合せの単語頻度Ｆが単語頻度記憶部５４に記憶されているか否かを判定する（ステップＳ４２）。
【０１１１】
単語頻度Ｆが単語頻度記憶部５４に記憶されていると判定された場合（ステップＳ４２；Ｙｅｓ）、単語頻度計数部４０ｇ〜４０ｉは、この単語頻度Ｆを読み込んで、変数Ｘに代入する。また、単語頻度計数部４０ｇ〜４０ｉは、この単語頻度Ｆの更新ラウンド数Ｐを読み込んで、変数Ｑに代入する（ステップＳ４３）。その後、単語頻度計数部４０ｇ〜４０ｉは、ステップＳ４５へ処理を移行する。
【０１１２】
単語頻度Ｆが単語頻度記憶部５４に記憶されていないと判定された場合（ステップＳ４２；Ｎｏ）、単語頻度計数部４０ｇ〜４０ｉは、変数Ｘにゼロを代入し、変数Ｑに現在のラウンド数Ｒを代入する（ステップＳ４４）。その後、単語頻度計数部４０ｇ〜４０ｉは、ステップＳ４５へ処理を移行する。
【０１１３】
ステップＳ４５にて、単語頻度計数部４０ｇ〜４０ｉは、第１ソート部１１０から出力されたリストに含まれる要素（整数値）の和Ｓｗを算出する（ステップＳ４５）。
【０１１４】
単語頻度計数部４０ｇ〜４０ｉは、変数Ｘ、Ｑ、及び和Ｓｗに基づいて、新しく単語頻度Ｆを算出する。αをあらかじめ設定された正の値とし、βをあらかじめ設定されたゼロ以上かつ１未満の値とすると、この単語頻度Ｆは、次の式（２）で示される。
【０１１５】
【数２】
0005757208.tif 000003
【０１１６】
そして、単語頻度計数部４０ｇ〜４０ｉは、単語頻度記憶部５４に記憶されている単語頻度Ｆを更新する（ステップＳ４６）。
【０１１７】
また、単語頻度計数部４０ｇ〜４０ｉは、この単語頻度Ｆの更新ラウンド数Ｐを現在のラウンド数Ｒに更新する（ステップＳ４７）。
【０１１８】
次に、単語頻度計数部４０ｇ〜４０ｉは、単語頻度Ｆがあらかじめ設定された閾値Ｔ以上であり、かつ閾値Ｔが変数Ｘよりも大きいか否かを判定する（ステップＳ４８）。すなわち、単語頻度計数部４０ｇ〜４０ｉは、更新によって単語頻度Ｆが閾値Ｔを上回ったか否かを判定する。
【０１１９】
ステップＳ４８の判定が肯定された場合（ステップＳ４８；Ｙｅｓ）、単語頻度計数部４０ｇ〜４０ｉは、＜単語Ｗ、整数値１＞というペアを第２ソート部１２０へ出力する（ステップＳ４９）。その後、単語頻度計数部４０ｇ〜４０ｉは、ステップＳ４１へ戻り、処理を繰り返す。
【０１２０】
ステップＳ４８の判定が否定された場合（ステップＳ４８；Ｎｏ）、単語頻度計数部４０ｇ〜４０ｉは、単語頻度Ｆがあらかじめ設定された閾値Ｔよりも小さく、かつ閾値Ｔが変数Ｘ以下であるか否かを判定する（ステップＳ５０）。すなわち、単語頻度計数部４０ｇ〜４０ｉは、更新によって単語頻度Ｆが閾値Ｔを下回ったか否かを判定する。
【０１２１】
ステップＳ５０の判定が否定された場合（ステップＳ５０；Ｎｏ）、単語頻度計数部４０ｇ〜４０ｉは、ステップＳ４１へ戻り、処理を繰り返す。
【０１２２】
ステップＳ５０の判定が肯定された場合（ステップＳ５０；Ｙｅｓ）、単語頻度計数部４０ｇ〜４０ｉは、＜単語Ｗ、整数値−１＞というペアを第２ソート部１２０へ出力する（ステップＳ５１）。その後、単語頻度計数部４０ｇ〜４０ｉは、ステップＳ４１へ戻り、処理を繰り返す。
【０１２３】
また、ステップＳ４１にて、ペアを取得していないと判定された場合（ステップＳ４１；Ｎｏ）、単語頻度計数部４０ｇ〜４０ｉは処理を終了する。
【０１２４】
以上説明したように、単語頻度計数部４０ｇ〜４０ｉは、単語頻度を更新する際に、単語頻度記憶部５４に記憶されている単語頻度に重み係数を乗算する。この重み係数は、ゼロ以上１未満の値βのべき乗であり、その指数は現在のラウンド数Ｒと単語頻度の更新ラウンド数との差である。このため、単語頻度記憶部５４に記憶されている単語頻度が比較的古く更新されたものであれば、重み係数は小さい値となる。一方、この単語頻度が比較的新しく更新されたものであれば、重み係数は１未満の大きい値となる。したがって、単語頻度計数部４０ｇ〜４０ｉは、単語頻度を更新する際に、古いデータの影響を軽減し、主として新しいデータに基づく単語頻度を算出することができる。
【０１２５】
また、単語頻度記憶部５４に記憶される単語頻度が比較的新しいデータに基づいて更新されるため、依存度算出部８０によって算出される依存度も、主として新しいデータに基づく依存度となる。これにより、キーワード抽出システム１０は、新しく投稿された位置情報付きテキストに主として含まれるキーワードを抽出することができる。
【０１２６】
また、単語頻度計数部４０ｇ〜４０ｉは、単語頻度が閾値Ｔを上回った場合に、第２ソート部１２０を介してコンテクスト頻度計数部６０ｄ〜６０ｆへデータを出力する。すなわち、単語頻度が閾値Ｔを上回った場合に、コンテクスト頻度が計数される。これにより、単語とコンテクストラベルとの組合せが出現する回数がごくわずかである場合にはコンテクスト頻度を計数せずに、ある程度の回数だけ単語と組み合わさって出現したコンテクストラベルの数をコンテクスト頻度として計数することができる。つまり、ノイズを除去して信頼性の高いコンテクスト頻度を得ることができる。
【０１２７】
また、単語頻度が閾値Ｔを上回った場合、及び下回った場合に、コンテクスト頻度計数部６０ｄ〜６０ｆは、コンテクスト頻度を計数する。これにより、コンテクスト頻度計数部６０ｄ〜６０ｆは、単語頻度の推移をリアルタイムに反映したコンテクスト頻度を算出して、コンテクスト頻度記憶部７０のデータを更新することができる。
【０１２８】
（実施形態５）
続いて、実施形態５について、上述の実施形態１との相違点を中心に説明する。なお、実施形態１に係る構成要素と同一又は同等の構成には、実施形態１と同一の符号を付す。また、実施形態１と説明が重複する部分については、その説明を省略する。
【０１２９】
本実施形態に係るキーワード抽出システム１０は、図２１に示されるように、テキスト記憶部２５、解析部３５、単語頻度計数部４５、キーワード抽出部１０５、及びユーザ多様度算出部１３０を有している。
【０１３０】
テキスト記憶部２５は、ユーザにより投稿されたテキスト、このテキストに付与された位置情報、及びこのテキストを投稿したユーザのＩＤを対応づけて記憶する。
【０１３１】
解析部３５は、テキスト記憶部２５に記憶されている位置情報付きテキストに基づいて、単語を抽出し、コンテクストラベルを生成する。また、解析部３５は、これらの単語及びコンテクストラベルと、この単語が含まれる位置情報付きテキストを投稿したユーザのＩＤとを対応づけて、単語頻度計数部４５及びユーザ多様度算出部１３０へ出力する。
【０１３２】
単語頻度計数部４５は、ユーザ１人により投稿された位置情報付きテキストに基づいて出現した組合せを、１回だけ計数する。つまり、単語頻度計数部４５は、解析部３５から出力されたデータにおいて、単語とコンテクストラベルとの同一の組合せに対応して出現するユーザの数を、単語頻度として計数する。
【０１３３】
ユーザ多様度算出部１３０は、ユーザ多様度指数（Ｓｉｍｐｓｏｎの多様度指数）を算出する。ユーザ多様度指数は、一のコンテクストラベルによって示されるコンテクストにおいて一の単語を投稿したユーザの多様性を表す指数である。例えば、特定の地域において特定の単語を含むテキストを投稿したユーザの数が多い場合に、ユーザ多様度指数は大きくなる。
【０１３４】
単語Ｗ及びコンテクストラベルＣの組合せが出現した回数をＥとし、この組合せとｉ番目のユーザＩＤとが対応して出現した回数をＦｉとすると、この組合せに対応するユーザ多様度指数Ｄは、次の式（３）で示される。
【０１３５】
【数３】
0005757208.tif 000004
【０１３６】
ユーザ多様度算出部１３０は、単語とコンテクストラベルとの組合せそれぞれについて、上記式（３）を用いて算出しユーザ多様度指数を算出し、キーワード抽出部１０５へ出力する。
【０１３７】
続いて、キーワード抽出部１０５により実行される処理を説明する。
【０１３８】
まず、キーワード抽出部１０５は、単語及びコンテクストラベルと、この単語の依存度と、この単語に対応するユーザ多様度指数を取得する。次に、キーワード抽出部１０５は、依存度について単語をソートする。その後、キーワード抽出部１０５は、ソートされた単語のうち、依存度の高い上位１０個の単語を、ユーザ多様度指数について再度ソートする。そして、キーワード抽出部１０５は、ユーザ多様度指数の最も高い単語を、キーワードとして抽出する。キーワード抽出部１０５は、コンテクストラベルごとに以上の処理を実行することにより、コンテクストラベルそれぞれに対応するキーワードを抽出する。
【０１３９】
以上説明したように、本実施形態に係る単語頻度計数部４５は、１人のユーザにより投稿された位置情報付きテキストに基づいて出現した組合せを、１回まで計数する。これにより、同一の地域において少数のユーザにより繰り返し投稿された単語がキーワードとして抽出されることを防ぐことができる。
【０１４０】
以上、実施形態について説明したが、本発明は上述の実施形態に限定されるものではない。
【０１４１】
例えば、上記実施形態に係るキーワード抽出システム１０は、ユーザにより投稿されたテキストからキーワードを抽出したが、これには限られない。例えば、位置情報と説明文とが付与された画像ファイルが投稿される場合がある。この場合に、キーワード抽出システムは、位置情報をコンテクスト情報とするとともに、説明文からキーワードを抽出してもよい。
【０１４２】
また、上記実施形態に係るキーワード抽出システム１０は、位置情報をコンテクスト情報としたが、時間（投稿時間やデジタル写真の撮影時間）、ユーザの属性（年齢、性別、又は職業）、或いは端末の温度センサや加速度センサによる観測値等をコンテクスト情報として利用してもよい。また、このようにテキストに付随するコンテクスト情報のうち２つ以上の組合せをコンテクスト情報として利用することも可能である。
【０１４３】
また、上記実施形態に係る単語抽出部３１は、形態素解析を用いて単語を抽出したが、あらかじめ設定された単語群に含まれる単語をテキストから抽出してもよい。
【０１４４】
また、上記実施形態に係るコンテクストラベル生成部３２は、０．０１度単位の緯度及び経度をコンテクストラベルとしたが、住所やランドマークをコンテクストラベルとしてもよい。
【０１４５】
また、コンテクストラベル生成部３２は、緯度及び経度を０．０１度単位で等分割することによりコンテクストラベルを生成した。すなわち、コンテクストラベル生成部３２は、コンテクスト情報を等分割した。これには限られず、事前にコンテクスト情報の分布を分析し、各コンテクストラベルに対応するテキストの数が等しくなるように、コンテクストラベルを生成してもよい。
【０１４６】
また、ＬＳＨ（Locality Sensitive Hashing）に基づくハッシュ値をコンテクストラベルとしてもよい。この場合、コンテクスト情報の類似関係を確率的に評価することができる。
【０１４７】
また、テキストに付随するコンテクスト情報の種類がある程度限られている場合は、コンテクストラベル生成部は、コンテクスト情報をそのままコンテクストラベルとしてもよい。例えば、テキストに付与される位置情報が０．０１度単位の緯度及び経度である場合には、この位置情報をそのままコンテクストラベルとしてもよい。
【０１４８】
また、上記の実施形態２〜４に係る分散処理において、ＭａｐＲｅｄｕｃｅ等のフレームワークを使用してもよい。この場合、２段のＭａｐＲｅｄｕｃｅ処理を実行することになる。１段目のＭａｐＲｅｄｕｃｅ処理においては、解析部３０がＭａｐフェーズを実行し、第１ソート部１１０がＳｈｕｆｆｌｅフェーズを実行し、単語頻度計数部４０がＲｅｄｕｃｅフェーズを実行する。２段目のＭａｐＲｅｄｕｃｅ処理においては、単語頻度計数部４０から第２ソート部１２０へデータを入力する処理がＭａｐフェーズに対応し、第２ソート部１２０がＳｈｕｆｆｌｅフェーズを実行し、コンテクスト頻度計数部６０がＲｅｄｕｃｅフェーズを実行する。
【０１４９】
また、上記実施形態４に係る依存度算出部８０は、式（１）を用いて依存度を算出した。しかしながら、単語を含むテキストが投稿されない期間が長くなった場合には、単語頻度記憶部５０に記憶される単語頻度が更新されないため、依存度が相対的に高い値になることがある。そこで、依存度算出部８０は、式（１）に代えて、次の式（４）を用いて依存度Ｉを算出してもよい。この場合、長期間に渡って抽出されない単語の依存度が相対的に高くなることを防ぐことができる。
【０１５０】
【数４】
0005757208.tif 000005
【０１５１】
また、上記実施形態５に係るユーザ多様度算出部１３０は、Ｓｉｍｐｓｏｎの多様度指数を算出したが、これに限られず、Ｓｈａｎｎｏｎ指数等の多様度指数を算出してもよい。
【０１５２】
また、上記実施形態５に係るキーワード抽出部１０５は、ユーザ多様度指数の最も高い単語をキーワードとして抽出したが、これには限られない。例えば、キーワード抽出部１０５は、ユーザ多様度指数をフィルタリングに利用してもよい。この場合、キーワード抽出部１０５は、まず、ユーザ多様度指数が所定の閾値以上となる単語を選択する。次に、キーワード抽出部１０５は、選択された単語のうち、依存度の最も高い単語をキーワードとして抽出する。
【０１５３】
図２２は、上記実施形態に係るキーワード抽出システム１０をコンピュータに実装する場合のハードウェア構成例を示すブロック図である。キーワード抽出システム１０は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができる。キーワード抽出システム１０は、プロセッサＨ１、主記憶部Ｈ２、補助記憶部Ｈ３、出力部Ｈ４、入力部Ｈ５及び送受信部Ｈ６を備える。主記憶部Ｈ２、補助記憶部Ｈ３、出力部Ｈ４、入力部Ｈ５及び送受信部Ｈ６はいずれも内部バスＨ７を介してプロセッサＨ１に接続されている。
【０１５４】
プロセッサＨ１は、ＣＰＵ（Central Processing Unit）等から構成され、補助記憶部Ｈ３に記憶されるプログラムＨ８に従って、上記実施形態に係る解析部３０、単語頻度計数部４０、コンテクスト頻度計数部６０、依存度算出部８０、キーワード抽出部１００、第１ソート部１１０、第２ソート部１２０、ユーザ多様度算出部１３０の処理を実行する。
【０１５５】
主記憶部Ｈ２は、ＲＡＭ（Random-Access Memory）等から構成され、補助記憶部Ｈ３に記憶されるプログラムＨ８をロードし、プロセッサＨ１の作業領域として用いられる。
【０１５６】
補助記憶部Ｈ３は、フラッシュメモリ、ハードディスク、ＤＶＤ−ＲＡＭ（Digital Versatile Disc Random-Access Memory）、ＤＶＤ−ＲＷ（Digital Versatile Disc ReWritable）等の不揮発性メモリから構成され、上述の処理をプロセッサＨ１に実行させるためのプログラムＨ８やパラメータ等をあらかじめ記憶する。また、補助記憶部Ｈ３は、プロセッサＨ１の指示に従って、プログラムＨ８が記憶するデータをプロセッサＨ１に供給し、プロセッサＨ１から供給されたデータを記憶する。
【０１５７】
出力部Ｈ４は、ＬＣＤ（Liquid Crystal Display）等から構成される表示装置、スピーカ等から構成される音響装置又は印刷装置等を有し、種々の情報をユーザに提供する。例えば、出力部Ｈ４は、抽出されたキーワードをキーワード抽出システム１０の管理者に表示する。
【０１５８】
入力部Ｈ５は、キーボード及びマウス等のポインティングデバイス等と、キーボード及びポインティングデバイス等を内部バスＨ７に接続するインタフェース装置等から構成される。例えば、キーワード抽出システムの管理者は、入力部Ｈ５を介して、閾値やパラメータ等を設定する。
【０１５９】
送受信部Ｈ６は、モデム又は網終端装置、及びそれらと接続するシリアルインタフェース又はＬＡＮインタフェース等から構成される。キーワード抽出システム１０は、送受信部Ｈ６を介して、外部から投稿される位置情報付きテキストを取得する。
【０１６０】
図１に示されるキーワード抽出システム１０の解析部３０、単語頻度計数部４０、コンテクスト頻度計数部６０、依存度算出部８０、キーワード抽出部１００、第１ソート部１１０、第２ソート部１２０、及びユーザ多様度算出部１３０が実行する処理は、プログラムＨ８が、プロセッサＨ１、主記憶部Ｈ２、補助記憶部Ｈ３、出力部Ｈ４、入力部Ｈ５、送受信部Ｈ６等を資源として用いて処理することによって実行される。
【０１６１】
上述の実施形態に係るキーワード抽出システム１０の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
【０１６２】
例えば、補助記憶部Ｈ３に記憶されているプログラムＨ８を、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto-Optical disk）等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムＨ８をコンピュータにインストールすることにより、上述の処理を実行する装置を構成することができる。
【０１６３】
また、プログラムＨ８をインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するようにしても良い。
【０１６４】
また、通信ネットワークを介してプログラムＨ８を転送しながら起動実行することによっても、上述の処理を達成することができる。
【０１６５】
更に、プログラムＨ８の全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムＨ８を実行することによっても、上述の処理を達成することができる。
【０１６６】
なお、上述の機能を、ＯＳ（Operating System）が分担して実現する場合又はＯＳとアプリケーションとの協働により実現する場合等には、ＯＳ以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロード等しても良い。
【０１６７】
上述の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１６８】
（付記１）
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段と、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段と、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段と、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段と、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段と、
を備えるキーワード抽出システム。
【０１６９】
（付記２）
複数の前記単語抽出手段と、複数の前記ラベル生成手段と、複数の前記単語頻度計数手段と、複数の前記コンテクスト頻度計数手段と、を備え、
複数の前記単語抽出手段は、並列計算により前記単語を抽出し、
複数の前記ラベル生成手段は、並列計算により前記コンテクストラベルを生成し、
複数の前記単語頻度計数手段は、並列計算により前記単語頻度を計数し、
複数の前記コンテクスト頻度計数手段は、並列計算により前記コンテクスト頻度を計数する、
付記１に記載のキーワード抽出システム。
【０１７０】
（付記３）
前記単語頻度計数手段は、
計数された前記単語頻度を記憶する第１記憶手段と、
前記第１記憶手段によって前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数に基づいて、前記第１記憶手段によって記憶された前記単語頻度を更新する第１更新手段と、
を備え、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を記憶する第２記憶手段と、
初めて前記単語頻度を計数される組合せの前記コンテクストラベルが生成された場合に、前記第２記憶手段によって記憶された前記コンテクスト頻度を更新する第２更新手段と、
を備える、
付記１又は２に記載のキーワード抽出システム。
【０１７１】
（付記４）
前記単語頻度計数手段は、
計数された前記単語頻度を記憶する第３記憶手段と、
前記単語頻度が記憶された後に前記単語抽出手段によって抽出された前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数、及び前記第３記憶手段によって記憶された前記単語頻度に重み付けを行い、重み付けされた組合せの数及び前記単語頻度に基づいて、前記第３記憶手段によって記憶された前記単語頻度を更新する第３更新手段と、
を備え、
前記コンテクスト頻度計数手段は、
計数された前記コンテクスト頻度を記憶する第４記憶手段と、
前記第３更新手段によって前記単語頻度が所定の第１閾値を上回った場合、及び、前記単語頻度が前記第１閾値を下回った場合に、前記第４記憶手段によって記憶された前記コンテクスト頻度を更新する第４更新手段と、
を備える、
付記１又は２に記載のキーワード抽出システム。
【０１７２】
（付記５）
前記単語頻度計数手段は、
前記単語を含む前記テキストを投稿したユーザの数に基づいて、前記単語頻度を計数する、
付記１乃至４のいずれか１つに記載のキーワード抽出システム。
【０１７３】
（付記６）
前記単語を含む前記テキストを投稿したユーザの多様度を表すユーザ多様度指数を算出するユーザ多様度算出手段、
を備え、
前記キーワード抽出手段は、
前記依存度の高い所定の個数の前記単語のうち、前記ユーザ多様度指数の最も高い前記単語を、キーワードとして抽出する、
付記１乃至５のいずれか１つに記載のキーワード抽出システム。
【０１７４】
（付記７）
前記単語を含む前記テキストを投稿したユーザの多様度を表すユーザ多様度指数を算出するユーザ多様度算出手段、
を備え、
前記キーワード抽出手段は、
前記ユーザ多様度指数が所定の第２閾値以上となる前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出する、
付記１乃至５のいずれか１つに記載のキーワード抽出システム。
【０１７５】
（付記８）
前記コンテクスト情報は、
前記テキストの投稿に供された端末の位置を示す位置情報、前記テキストが投稿された時間を示す情報、及び、前記テキストを投稿したユーザの属性を示す情報のうち少なくとも１つからなる、
付記１乃至７のいずれか１つに記載のキーワード抽出システム。
【０１７６】
（付記９）
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出ステップと、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数ステップと、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数ステップと、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出ステップと、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出ステップと、
を含むキーワード抽出方法。
【０１７７】
（付記１０）
コンピュータを、
ユーザによって投稿された複数のテキストそれぞれに含まれる単語を抽出する単語抽出手段、
前記テキストに付随するコンテクスト情報に基づいて、前記単語に対応するコンテクストラベルを生成するラベル生成手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語及び前記コンテクストラベルの双方が相互に等しい組合せの数を、単語頻度として計数する単語頻度計数手段、
前記単語と、該単語に対応する前記コンテクストラベルとの組合せのうち、前記単語が相互に等しい組合せ群に含まれる前記コンテクストラベルの種類の数を、コンテクスト頻度として計数するコンテクスト頻度計数手段、
前記コンテクストラベルにより示されるコンテクストに前記単語が依存する度合いを表す依存度を、前記単語頻度と前記コンテクスト頻度とに基づいて算出する依存度算出手段、
前記コンテクストラベルに対応する前記単語のうち、前記依存度の最も高い前記単語を、キーワードとして抽出するキーワード抽出手段、
として機能させるプログラム。
【符号の説明】
【０１７８】
１０    キーワード抽出システム
２０、２５  テキスト記憶部
３０、３０ａ、３０ｂ、３０ｃ、３０ｄ、３０ｅ、３０ｆ、３５  解析部
３１    単語抽出部
３２    コンテクストラベル生成部
４０、４０ａ、４０ｂ、４０ｃ、４０ｄ、４０ｅ、４０ｆ、４０ｇ、４０ｈ、４０ｉ、４５  単語頻度計数部
５０、５４  単語頻度記憶部
６０、６０ａ、６０ｂ、６０ｃ、６０ｄ、６０ｅ、６０ｆ  コンテクスト頻度計数部
７０    コンテクスト頻度記憶部
８０    依存度算出部
９０    依存度記憶部
１００、１０５  キーワード抽出部
１１０  第１ソート部
１２０  第２ソート部
１３０  ユーザ多様度算出部
Ｃ      コンテクストラベル
Ｄ      ユーザ多様度指数
Ｆ      単語頻度
Ｇ      コンテクスト頻度
Ｈ１    プロセッサ
Ｈ２    主記憶部
Ｈ３    補助記憶部
Ｈ４    出力部
Ｈ５    入力部
Ｈ６    送受信部
Ｈ７    内部バス
Ｈ８    プログラム
Ｉ      依存度
Ｐ      更新ラウンド数
Ｑ、Ｘ、Ｙ  変数
Ｒ      ラウンド数
Ｓｃ、Ｓｗ  和
Ｗ      単語
【図１】
0005757208.tif 000006
【図２】
0005757208.tif 000007
【図３】
0005757208.tif 000008
【図４】
0005757208.tif 000009
【図５】
0005757208.tif 000010
【図６】
0005757208.tif 000011
【図７】
0005757208.tif 000012
【図８】
0005757208.tif 000013
【図９】
0005757208.tif 000014
【図１０】
0005757208.tif 000015
【図１１】
0005757208.tif 000016
【図１２】
0005757208.tif 000017
【図１３】
0005757208.tif 000018
【図１４】
0005757208.tif 000019
【図１５】
0005757208.tif 000020
【図１６】
0005757208.tif 000021
【図１７】
0005757208.tif 000022
【図１８】
0005757208.tif 000023
【図１９】
0005757208.tif 000024
【図２０】
0005757208.tif 000025
【図２１】
0005757208.tif 000026
【図２２】
0005757208.tif 000027