(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0022】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、本発明は下記の実施形態及び図面によって限定されるものではない。本発明の要旨を変更しない範囲で下記の実施形態及び図面に変更を加えることができるのはもちろんである。また、図中同一または相当部分には同一符号を付す。
【0023】
(1)第1実施形態
(1−1)情報提供システムの構成
図1は、本発明の第1実施形態に係る情報提供システム1の構成を示す図である。情報提供システム1は、情報提供サーバ10、端末装置100−1、100−2、100−3(以下、端末装置100−1、100−2、100−3をまとめて適宜「端末装置100」と称する。)、無線基地局200−1、200−2(以下、無線基地局200−1、200−2をまとめて適宜「無線基地局200」と称する。)、通信ネットワーク250、イベント通知サーバ300、投稿サーバ400を備える。情報提供サーバ10は、情報提供装置に対応する。
【0024】
端末装置100−1乃至100−3は、いわゆるスマートフォン等の携帯電話機、通信機能を有するパーソナルコンピュータ等である。通信ネットワーク250は、例えばインターネットである。情報提供サーバ10は、通信ネットワーク250及び無線基地局200を介して、端末装置100との間で通信を行うことができる。また、情報提供サーバ10は、通信ネットワーク250を介して、イベント通知サーバ300及び投稿サーバ400との間で通信を行うことができる。また、端末装置100は、無線基地局200及び通信ネットワーク250を介して、投稿サーバ400との間で通信を行うことができる。
【0025】
情報提供システム1において、端末装置100は、当該端末装置100のユーザによる操作によって生成される情報である投稿情報を投稿サーバ400へ送信する。投稿サーバ400は、端末装置100からの投稿情報を受信、記憶する。また、投稿サーバ400は、端末装置100からのアクセスに応じて、記憶している投稿情報を端末装置100へ送信する。
【0026】
イベント通知サーバ300は、イベントとしての地震等の災害発生時に当該災害の発生を示す情報(イベント発生情報)を情報提供サーバ10へ送信する。この際、イベント通知サーバ300は、送信先を情報提供サーバ10に指定して送信するユニキャスト通信を行ってもよく、複数の装置に対して同時に送信するマルチキャスト通信を行ってもよい。
【0027】
情報提供サーバ10は、イベント通知サーバ300からの災害発生を示すイベント発生情報を受信すると、端末装置100−1乃至100−3から投稿サーバ400へ送信され、投稿サーバ400に記憶される投稿情報から、その災害に関連する投稿情報を抽出し、端末装置100−1乃至100−3へ送信する。
【0028】
(1−2)情報提供サーバの構成
図2は、第1実施形態における情報提供サーバ10の構成を示す図である。情報提供サーバ10は、制御部20、記憶部40、通信部60及び操作部70を備える。制御部20は、例えばCPU(Central Processing Unit)により構成される。制御部20は、記憶部40に記憶されたプログラムを読み出して実行し、記憶部40に記憶された各種データを処理することなどにより、情報提供サーバ10の全体を制御する。
【0029】
記憶部40は、例えばRAM(Random Access Memory)である。記憶部40は、情報提供サーバ10の動作に必要なプログラムや各種データを記憶する。記憶部40には、イベント情報データベース(DB)42、クローラ情報DB44、抽出結果DB46、主関連キーワードDB48、副関連キーワードDB50、NGキーワードDB52及び候補関連キーワードDB54が構成される。主関連キーワードDB48及び副関連キーワードDB50は、第1の記憶手段に対応し、NGキーワードDB54は、第2の記憶手段に対応する。
【0030】
通信部60は、例えばLAN(Local Area Network)カードである。通信部60は、端末装置100、イベント通知サーバ300及び投稿サーバ400との間の通信を制御する。通信部60と、端末装置100、イベント通知サーバ300及び投稿サーバ400との間の通信には、TCP/IP(Transmission Control Protocol/Internet Protocol)によるパケット通信等が採用される。また、通信部60と、端末装置100、イベント通知サーバ300及び投稿サーバ400との間の通信には、必要に応じてSSL(Secure Socket Layer)等の安全な通信路が用いられる。操作部70は、例えばキーボードであり、作業者の操作に応じた操作信号を制御部20へ出力する。
【0031】
制御部20は、イベント登録部22、クローラ情報登録部24、副関連キーワード生成部26、投稿情報抽出部28、抽出制限制御部29、投稿情報提供部30及びキーワード編集部34の機能を実現する。副関連キーワード生成部26及び投稿情報抽出部28は、抽出手段に対応し、抽出制限制御部29は、抽出制限制御手段に対応する。
【0032】
通信部60は、イベント通知サーバ300からのイベント発生情報を受信し、制御部20へ出力する。イベント発生情報は、例えば、イベントである災害の発生日時を示すイベント日時、災害の発生領域の外縁の経度及び緯度の集合、災害の発生領域の識別情報(例えばJISコード)等であるであるイベント位置情報、「地震」、「津波」、「震度」等の災害の種類や災害の発生地域の名称等の災害の内容を示す文字列であるイベント情報文字列を含む。なお、イベント位置情報は、災害が発生した領域のみの情報ではなく、災害が発生した領域の周辺の領域や災害が発生した領域に関連する領域の情報を含んでいてもよい。
【0033】
制御部20内のイベント登録部22は、イベント発生情報が入力されると、イベントの識別情報であるクローラIDを設定する。例えば、イベント登録部22は、情報提供サーバ10が内蔵する時計(図示せず)から現在の日時を取得し、その取得した日時を含んだクローラIDを生成する。次に、イベント登録部22は、入力されたイベント発生情報に、設定したクローラIDを付加してイベント情報を生成する。イベント登録部22は、生成したイベント情報を記憶部40内のイベント情報DB42に登録する。
図3は、イベント情報の一例を示す図である。
図3に示すイベント情報は、クローラIDとイベント発生情報内のイベント日時、イベント位置情報及びイベント情報文字列とを対応付けて構成される。
【0034】
制御部20内のクローラ情報登録部24は、イベント情報を用いて、イベントである災害と1対1に対応する、換言すれば、イベント情報と1対1に対応する情報であるクローラ情報を生成する。クローラ情報登録部24は、生成したクローラ情報を記憶部40内のクローラ情報DB44に登録する。
【0035】
図4は、クローラ情報の一例を示す図である。
図4に示すクローラ情報は、クローラID、生成日時、イベントタイプ、イベント位置情報、イベント情報文字列、実行フラグ、実行フラグ更新日時、終了フラグ、終了フラグ更新日時、不一致フラグ及び不一致フラグ更新日時を含んで構成される。
【0036】
クローラIDは、イベント情報内のクローラIDが設定される。生成日時は、クローラ情報が生成された日時である。例えば、クローラ情報登録部24は、情報提供サーバ10に内蔵された時計から現在の日時を取得し、生成日時に設定する。イベントタイプは、イベントである災害の種別を示す情報であり、地震、津波、台風等の災害の種別毎に異なる情報である。例えば、クローラ情報登録部24は、イベント情報内のイベント情報文字列等に基づいて、災害の種別を判別し、その種別に対応する情報をイベントタイプとして設定する。イベント位置情報及びイベント情報文字列は、イベント情報内のイベント位置情報及びイベント情報文字列である。
【0037】
実行フラグは、後述する投稿情報抽出部28による投稿情報の抽出の際にクローラ情報が用いられたか否かを示す情報であり、初期状態では用いられていないことを示す「0」、用いられた後は「1」となる。実行フラグ更新日時は、実行フラグが更新された時の日時である。終了フラグは、投稿情報抽出部28によるクローラ情報を用いた投稿情報の抽出が終了したか否かを示す情報であり、初期状態では、終了していないことを示す「0」、終了した後は「1」となる。終了フラグ更新日時は、終了フラグが更新された時の日時である。不一致フラグは、投稿情報抽出部28によるクローラ情報を用いた投稿情報の抽出の際に抽出件数が0件か否か、あるいは、最新に抽出された投稿情報が過去の所定期間以前に発生したか否かを示す情報であり、抽出件数が0件、あるいは、最新に抽出された投稿情報が過去の所定期間以前に発生した場合には「1」、それ以外の場合には「0」となる。不一致フラグ更新日時は、不一致フラグが更新された時の日時である。
【0038】
記憶部40内の主関連キーワードDB48には、予め主関連キーワード情報が登録されている。
図5は、主関連キーワード情報の一例を示す図である。
図5に示す主関連キーワード情報は、イベントタイプ、位置情報及び主関連キーワードを含んで構成される。イベントタイプは、投稿情報の抽出の際に主関連キーワードを用いるべきイベントである災害の種別を示す情報である。位置情報は、投稿情報の抽出の際に主関連キーワードを用いるべきイベントである災害の発生領域を示す情報であり、災害の発生領域の外縁の経度及び緯度の集合、災害の発生領域の識別情報(例えばJISコード)等である。主関連キーワードはイベントタイプに対応するイベントとの関連が高いと見なされる文字列であり、第1の関連キーワードに対応する。投稿情報の抽出においては、主関連キーワードを含む投稿情報が抽出される。
【0039】
制御部20内の副関連キーワード生成部26は、投稿情報の抽出に先立って、イベント情報に基づいて副関連キーワード情報を生成し、記憶部40内の副関連キーワードDB50に登録する。
【0040】
図6は、副関連キーワード情報の一例を示す図である。
図6に示す副関連キーワード情報は、クローラID及び副関連キーワードを含んで構成される。クローラIDは、イベント情報内のクローラIDが設定される。副関連キーワードはクローラIDに対応するイベントとの関連が高いと見なされる文字列であり、第1の関連キーワードに対応する。投稿情報の抽出においては、副関連キーワードを含む投稿情報が抽出される。初期状態では、抽出件数は0である。
【0041】
記憶部40内のNGキーワードDB52には、予めNGキーワード情報が登録されている。
図7は、NGキーワード情報の一例を示す図である。
図7に示すNGキーワード情報は、イベントタイプ及びNGキーワードを含んで構成される。イベントタイプは、投稿情報の抽出の際にNGキーワードを用いるべきイベントである災害の種別を示す情報である。NGキーワードはイベントタイプに対応するイベントとの関連が低いと見なされる文字列であり、非関連キーワードに対応する。投稿情報の抽出においては、NGキーワードを含む投稿情報は、主関連キーワードや副関連キーワードが含まれていても抽出の対象外となる。
【0042】
制御部20内の投稿情報抽出部28は、上述したイベント情報、クローラ情報及び副関連キーワード情報が生成、登録された後、クローラ情報毎に投稿情報の抽出を行う。具体的には、投稿情報抽出部28は、端末装置100によって送信され、投稿サーバ400に記憶された投稿情報のうち、主関連キーワード及び副関連キーワードの少なくとも何れかを含み、且つ、NGキーワードを含まない投稿情報を抽出する。
【0043】
図8は、投稿情報の一例を示す図である。
図8に示す投稿情報は、投稿情報ID、投稿日時、投稿位置情報、投稿情報文字列及び関連付け投稿情報IDを含んで構成される。投稿情報IDは、対応する投稿情報の識別情報である。投稿日時は、端末装置100が投稿情報を送信した日時あるいは投稿サーバ400が投稿情報を受信した日時等である。投稿位置情報は、投稿情報を送信した端末装置100の位置を示す情報であり、経度及び緯度からなる。投稿情報文字列は、端末装置100のユーザの操作によって端末装置100に入力された文字列である。
【0044】
関連付け投稿情報IDは、対応する投稿情報が関連付けた他の投稿情報の投稿情報IDである。ここで、対応する投稿情報が関連付けた他の投稿情報とは、端末装置100が、投稿情報を生成して投稿サーバ400へ送信する際に、端末装置100がユーザ(投稿者)の操作指示に応じて、投稿情報が参照したり、引用するように設定した他の投稿情報等を意味する。投稿サーバ400は、投稿者の操作指示に応じた投稿情報間の参照、引用の関係を認識しており、投稿情報に関連付け投稿情報IDを設定することができる。なお、投稿情報には、投稿者のアカウント名、投稿された画像のデータ等の投稿情報文字列以外のコンテンツデータが含まれる場合もある。
【0045】
また、制御部20内の副関連キーワード生成部26は、抽出された投稿情報の解析(例えば形態素解析)を行い、所定数以上の投稿情報に含まれる語を、新たな副関連キーワードとして特定する。更に、副関連キーワード生成部26は、特定した新たな副関連キーワードと、対応するクローラ情報内のクローラIDとを含んだ新たな副関連キーワード情報を生成し、記憶部40内の副関連キーワードDB60に登録する。
【0046】
その後は、上述した投稿情報抽出部28による投稿情報の抽出、投稿情報提供部30による投稿情報の送信、副関連キーワード生成部26による新たな副関連キーワード情報の生成及び登録(以下、適宜「投稿情報抽出・キーワード記憶処理」と称する。)が繰り返される。
【0047】
制御部20内の抽出制限制御部29は、投稿情報抽出・キーワード記憶処理が繰り返される毎に、投稿情報抽出部28による投稿情報の抽出件数が第1の所定数を超える場合、投稿情報の抽出件数を制限するために抽出条件を設定する。
【0048】
投稿情報抽出部28は、抽出制限制御部29により抽出条件が設定された場合、主関連キーワード及び副関連キーワードの少なくとも何れかを含み、且つ、NGキーワードを含まない投稿情報のうち、抽出条件に合致する投稿情報を更に抽出する。更に、投稿情報抽出部28は、イベント情報と、当該イベント情報内のクローラIDを含むクローラ情報に対応して抽出した投稿情報とを含む抽出結果情報を生成し、記憶部40内の抽出結果DB46に登録する。
【0049】
図9は、抽出結果情報の一例を示す図である。制御部20内の投稿情報提供部30は、抽出結果DB46内の抽出結果情報を、通信部60、通信ネットワーク250及び無線基地局200を介して端末装置100へ送信する。投稿情報抽出・キーワード記憶処理と投稿情報制限の制御の詳細とについては後述する。
【0050】
制御部20内のキーワード編集部34は、抽出された投稿情報の解析(例えば形態素解析)を行い、所定数以上の投稿情報に含まれる語を、候補関連キーワードとして特定する。更に、キーワード編集部34は、特定した候補関連キーワードを含む候補関連キーワード情報を生成し、記憶部40内の候補関連キーワードDB54に登録する。
【0051】
図10は、候補関連キーワード情報の一例を示す図である。
図10に示す候補関連キーワード情報は、イベントタイプ、位置情報及び候補関連キーワードを含んで構成される。イベントタイプ及び位置情報は、クローラ情報内のイベントタイプ及びイベント位置情報が設定される。候補関連キーワードは文字列である。
【0052】
作業者は、候補関連キーワードDB54に登録された候補関連キーワード情報内の候補関連キーワードを選択して新たな主関連キーワードに格上げすべく、操作部70を操作することができる。この場合、キーワード編集部34は、作業者による操作部70の操作に応じて、候補関連キーワードDB54に登録された候補関連キーワード情報のうち、選択された候補関連キーワードを含む候補関連キーワード情報を主関連キーワード情報として、主関連キーワードDB48に登録する。
【0053】
また、キーワード編集部34は、作業者による操作部70の操作に応じて、NGキーワードDB52に登録されたNGキーワードへの新たなNGキーワードの追加、NGキーワードDB52に登録されたNGキーワードの削除、NGキーワードDB52に登録されたNGキーワードの修正等、NGキーワードの編集を行う。
【0054】
(1−3)情報提供サーバの動作
次に、フローチャートを参照しつつ、第1実施形態における情報提供サーバ10の動作を説明する。
図11乃至
図13は、第1実施形態における情報提供サーバ10による投稿情報抽出・キーワード記憶処理時の動作を示すフローチャートである。
図11乃至
図13に示す動作は、例えば10分周期等の所定の間隔で繰り返して実行される。
【0055】
図11に示すように、制御部20内の投稿情報抽出部28は、処理の開始日時(現在の日時)を取得する(ステップS201)。例えば、投稿情報抽出部28は、情報提供サーバ10に内蔵された時計から開始日時を取得することができる。
【0056】
次に、投稿情報抽出部28は、クローラ情報DB44に登録されているクローラ情報のうち、実行フラグが「0」又は終了フラグが「0」のクローラ情報、換言すれば、そのクローラ情報を用いた投稿情報の抽出が開始されていないクローラ情報、又は、そのクローラ情報を用いた投稿情報の抽出が終了していないクローラ情報を取得する。更に、投稿情報抽出部28は、取得したクローラ情報からなるリストを生成する(ステップS202)。リストには、例えば、取得されたクローラ情報のクローラIDが含まれる。リストは記憶部40に記憶される。
【0057】
次に、投稿情報抽出部28は、ステップS202におけるクローラ情報の取得件数が0であるか否かを判定する(ステップS203)。クローラ情報の取得件数が0である場合(ステップS203:YES)には、一連の動作が終了する。一方、クローラ情報の取得件数が0でない場合(ステップS203:NO)、投稿情報抽出部28は、リストから未選択の1件のクローラ情報を選択する(ステップS204)。
【0058】
次に、投稿情報抽出部28は、ステップS204において選択したクローラ情報内の不一致フラグが「1」であり、且つ、不一致フラグ更新日時が所定時間以上前(例えば、6時間以上前)であるか否かを判定する(ステップS205)。クローラ情報内の不一致フラグが「1」であり、且つ、不一致フラグ更新日時が所定時間以上前である場合(ステップS205:YES)、投稿情報抽出部28は、ステップS204において選択したクローラ情報内の終了フラグを「1」に設定し、終了フラグ更新日時を現在の日時に設定する(ステップS206)。次に、投稿情報抽出部28は、ステップS204において選択したクローラ情報をリストから削除する(ステップS207)。
【0059】
ステップS207におけるクローラ情報の削除後、又は、ステップS205において、クローラ情報内の不一致フラグが「1」でない、及び、不一致フラグ更新日時が所定時間以上前でないことの何れかであると判定された場合(ステップS205:NO)、投稿情報抽出部28は、リストに未選択のクローラ情報があるか否かを判定する(ステップS208)。リストに未選択のクローラ情報がある場合(ステップS208:YES)には、ステップS204における未選択の1件のクローラ情報の選択以降の動作が繰り返される。
【0060】
一方、リストにステップS204において未選択のクローラ情報がない場合(ステップS208:NO)、
図12の動作が行われる。投稿情報抽出部28は、リストから所定の優先度でクローラ情報を選択する(ステップS251)。例えば、投稿情報抽出部28は、リストに含まれる各クローラ情報内の生成日時を比較し、生成日時が新しい順に1件ずつクローラ情報を選択する。また、投稿情報抽出部28は、リストに含まれる各クローラ情報内の実行フラグ更新日時を比較し、その実行フラグ更新日時の新しい順に1件ずつクローラ情報を選択してもよい。また、投稿情報抽出部28は、リストに含まれる各クローラ情報のうち、イベントタイプが所定の種別、例えば「津波」、「避難勧告」であるものを優先して選択するようにしてもよい。
【0061】
以下、ステップS252乃至
図13のステップS307の動作は、ステップS251において選択されたクローラ情報毎に行われる。投稿情報抽出部28は、ステップS251で選択したクローラ情報内の実行フラグを「1」に設定し、実行フラグ更新日時を現在の日時に設定する(ステップS252)。
【0062】
次に、投稿情報抽出部28は、主関連キーワードDB48に登録された主関連キーワード情報のうち、ステップS251で選択したクローラ情報内のイベントタイプを含み、位置情報が示す領域がステップS251で選択したクローラ情報内のイベント位置情報が示す領域に含まれる主関連キーワード情報を特定する。例えば、主関連キーワード情報内の位置情報及びクローラ情報内のイベント位置情報が災害の発生領域の外縁の経度及び緯度の集合である場合、投稿情報抽出部28は、主関連キーワードDB48に登録された主関連キーワード情報のうち、ステップS251で選択したクローラ情報内のイベントタイプを含み、位置情報である外縁の経度及び緯度の集合からなる領域がクローラ情報内のイベント位置情報である外縁の経度及び緯度の集合からなる領域に含まれる、あるいは、一致する主関連キーワード情報を特定する。また、主関連キーワード情報内の位置情報及びクローラ情報内のイベント位置情報が災害の発生領域の識別情報(JISコード等)である場合、投稿情報抽出部28は、主関連キーワードDB48に登録された主関連キーワード情報のうち、ステップS251で選択したクローラ情報内のイベントタイプを含み、位置情報である識別情報がクローラ情報内のイベント位置情報である識別情報と一致する主関連キーワード情報を特定する。更に、投稿情報抽出部28は、その特定した主関連キーワード情報内の主関連キーワードを取得する(ステップS253)。取得される主関連キーワードは1つであっても複数であってもよい。
【0063】
次に、投稿情報抽出部28は、副関連キーワードDB50に登録された副関連キーワード情報のうち、ステップS251で選択したクローラ情報内のクローラIDを含む副関連キーワード情報を特定し、その特定した副関連キーワード情報内の副関連キーワードを取得する(ステップS254)。取得される副関連キーワードは1つであっても複数であってもよい。
【0064】
次に、投稿情報抽出部28は、NGキーワードDB52に登録されたNGキーワード情報のうち、ステップS251で選択したクローラ情報内のイベントタイプを含むNGキーワード情報を特定し、その特定したNGキーワード情報内のNGキーワードを取得する(ステップS255)。取得されるNGキーワードは1つであっても複数であってもよい。
【0065】
次に、投稿情報抽出部28は、通信部60及び通信ネットワーク250を介して、投稿サーバ400にアクセスする。投稿情報抽出部28は、投稿サーバ400に記憶されている投稿情報のうち、過去の第1の所定期間内(例えば、現在の日時から24時間以内)に発生し、投稿位置情報が示す位置がステップS251で選択したクローラ情報内のイベント位置情報が示す領域に含まれ、ステップS253において取得した主関連キーワード及びステップS254において取得した副関連キーワードの少なくとも何れかを含み、且つ、ステップS255において取得したNGキーワードを含まない投稿情報を抽出する(ステップS256)。
【0066】
上述した投稿情報の抽出において、例えば、クローラ情報内のイベント位置情報が災害の発生領域の外縁の経度及び緯度の集合である場合、投稿情報抽出部28は、投稿位置情報が示す位置がクローラ情報内のイベント位置情報である外縁の経度及び緯度の集合からなる領域に含まれる投稿情報を抽出対象とする。また、クローラ情報内のイベント位置情報が災害の発生領域の識別情報(JISコード等)である場合、投稿情報抽出部28は、識別情報と当該識別情報に対応する領域の外縁の経度及び緯度の集合とを対応付けたテーブル(図示せず)等を参照し、投稿位置情報が示す位置が識別情報に対応付けられた外縁の経度及び緯度の集合からなる領域に含まれる投稿情報を抽出対象とする。ここで、投稿情報抽出部28は、投稿サーバ400に記憶されている全ての投稿情報を取得し、取得した投稿情報の中から、上述した抽出条件に合致する投稿情報を抽出してもよい。あるいは、投稿情報抽出部28が、抽出条件の情報として、過去の第1の所定期間の情報、イベント位置情報が示す領域の情報、主関連キーワード、副関連キーワード及びNGキーワードを投稿サーバ400へ送信してもよい。この場合には、投稿サーバ400は、記憶している投稿情報の中から、抽出条件に合致する投稿情報を抽出して情報提供サーバ10へ送信し、投稿情報抽出部28は、送信された投稿情報を受信する。
【0067】
次に、投稿情報抽出部28は、ステップS256における投稿情報の抽出件数をカウントし、ステップS251で選択したクローラ情報内のクローラIDと対応づけて記憶部40に記憶させる(ステップS257)。
【0068】
次に、投稿情報抽出部28は、ステップS256における投稿情報の抽出件数が0、又は、ステップS256において抽出した投稿情報ののうち、最新の投稿情報が過去の第2の所定期間以前(例えば、6時間以前)に発生したものであるか否かを判定する(ステップS258)。
【0069】
ステップS256における投稿情報の抽出件数が0、又は、ステップS256において抽出した投稿情報ののうち、最新の投稿情報が過去の第2の所定期間以前に発生したものであることの少なくとも何れかを満たす場合(ステップS258:YES)、投稿情報抽出部28は、ステップS251で選択したクローラ情報内の不一致フラグを「1」に設定し、不一致フラグ更新日時を現在の日時に設定する(ステップS259)。その後、一連の動作が終了する。
【0070】
一方、ステップS256における投稿情報の抽出件数が0ではなく、且つ、ステップS256において抽出した投稿情報ののうち、最新の投稿情報が過去の第2の所定期間以前に発生したものでない場合(ステップS258:NO)、
図13の動作が行われる。
【0071】
制御部20内の抽出制限制御部29は、
図12のステップS257において得られた投稿情報の抽出件数が第1の所定数を超えているか否かを判定する(ステップS301)。
【0072】
ステップS257において得られた投稿情報の抽出件数が第1の所定数を超えている場合(ステップS301:YES)、抽出制限制御部29は、
図12のステップS256において抽出された投稿情報のうち、他の投稿情報に関連付けられた回数の多い第1の所定数の投稿情報を抽出するとの抽出条件を設定する(ステップS302)。例えば、第1の所定数の情報等を含んだ抽出条件の情報が記憶部40に記憶される。
【0073】
次に、制御部20内の投稿情報抽出部28は、
図12のステップS256において抽出した投稿情報のうち、未選択の1件の投稿情報を選択する(ステップS303)。
【0074】
次に、投稿情報抽出部28は、ステップS303において選択した投稿情報について、他の投稿情報に関連付けられた回数をカウントし、そのカウント値を記憶部40に記憶させる(ステップS304)。具体的には、投稿情報抽出部28は、ステップS303において選択した投稿情報内の投稿情報IDを抽出する。次に、投稿情報抽出部28は、
図12のステップS256において抽出された投稿情報であって、ステップS303において選択した投稿情報以外の投稿情報(他の投稿情報)のうち、関連付けIDがステップS303において選択した投稿情報内の投稿情報IDと一致する他の投稿情報の件数をカウントする。カウント値は、他の投稿情報に関連付けられた回数となる。更に、投稿情報抽出部28は、カウント値をステップS303において選択した投稿情報内の投稿情報IDに対応付けて記憶部40に記憶させる。
【0075】
次に、投稿情報抽出部28は、
図12のステップS256において抽出した投稿情報のうち、ステップS303において未選択の投稿情報があるか否かを判定する(ステップS305)。ステップS303において未選択の投稿情報がある場合(ステップS305:YES)、ステップS303における未選択の1件の投稿情報の選択以降の動作が繰り返される。
【0076】
一方、ステップS303において未選択の投稿情報がない場合(ステップS305:NO)、投稿情報抽出部28は、
図12のステップS256において抽出された投稿情報のうち、他の投稿情報に対応付けられた回数の多い順に第1の所定数の投稿情報を抽出する(ステップS306)。具体的には、投稿情報抽出部28は、記憶部40に記憶されたカウント値のうち、値の大きい順に第1の所定数の個数だけ選択し、選択したカウント値に対応付けられている投稿情報IDを特定する。次に、投稿情報抽出部28は、
図12のステップS256において抽出された投稿情報のうち、特定した投稿情報IDを含む投稿情報を抽出する。
【0077】
次に、投稿情報抽出部28は、イベント情報DB42に登録されたイベント情報のうち、
図12のステップS251において選択したクローラ情報内のクローラIDを含むイベント情報を抽出する。更に、投稿情報抽出部28は、抽出したイベント情報に、ステップS306において抽出した投稿情報を対応付けて抽出結果情報を生成し、記憶部40内の抽出結果DB46に登録する(ステップS307)。
【0078】
一方、ステップS257において得られた投稿情報の抽出件数が第1の所定数以下である場合(ステップS301:NO)、投稿情報抽出部28は、イベント情報DB42に登録されたイベント情報のうち、
図12のステップS251において選択したクローラ情報内のクローラIDを含むイベント情報を抽出する。更に、投稿情報抽出部28は、抽出したイベント情報に、
図12のステップS256において抽出した投稿情報を対応付けて抽出結果情報を生成し、記憶部40内の抽出結果DB46に登録する(ステップS308)。
【0079】
ステップS307又はステップS308における抽出結果情報の生成、登録後、投稿情報提供部30は、抽出結果情報を、通信部60、通信ネットワーク250及び無線基地局200を介して、端末装置100へ送信する(ステップS309)。その後、一連の動作が終了する。例えば、端末装置100のユーザは、取得したい投稿情報を地域の観点から限定することが可能である。この場合、記憶部40には、ユーザ情報として、ユーザID等とともに、端末装置100のユーザが希望する地域の情報が含まれる。投稿情報提供部30は、この地域の情報に基づいて、抽出結果情報を送信する際に、当該抽出結果情報に含まれるイベント位置情報や投稿位置情報が示す領域が端末装置100のユーザが希望する地域であるか否かを判定する。更に、投稿情報提供部30は、抽出結果情報に含まれるイベント位置情報や投稿位置情報が示す領域が端末装置100のユーザが希望する地域である場合に、当該端末装置100に向けて抽出結果情報を送信する。
【0080】
端末装置100内の制御部(図示せず)は、抽出結果情報を受信すると、当該抽出結果情報に基づいて、抽出結果画面を生成し、ディスプレイ(図示せず)に表示する。
図14は、抽出結果画面の一例を示す図である。
図14は、抽出結果情報に含まれる3件の投稿情報に対応する画像500、510及び520が含まれる。例えば、1件の投稿情報に対応する画像500は、投稿情報に基づいて形成されるアカウント名の画像501、投稿情報文字列の画像502、投稿位置情報の画像503、コンテンツデータに対応する画像504、投稿日時の画像505が含まれる。
【0081】
(1−4)作用・効果
上述したように、第1実施形態において、情報提供システム1内の情報提供サーバ10は、クローラ情報毎に、イベントとの関連性が高いと見なされる主関連キーワード及び副関連キーワードの少なくとも何れかを含み、イベントとの関連性が低いと見なされるNGキーワードを含まない投稿情報を抽出し、更にその抽出した投稿情報に含まれる新たな副関連キーワードを抽出するという処理を繰り返す。
【0082】
このように、副関連キーワードは随時追加されるため、主関連キーワード及び副関連キーワードの少なくとも何れかを含み、NGキーワードを含まない投稿情報は、徐々に増加することが想定される。このため、情報提供サーバ10は、主関連キーワード及び副関連キーワードの少なくとも何れかを含み、NGキーワードを含まない投稿情報の抽出件数が第1の所定数を超える場合には、その抽出した投稿情報から、他の投稿情報に関連付けられる回数の多い第1の所定数の投稿情報を更に抽出する。このため、投稿情報の抽出数が膨大になることが防止され、投稿情報の利用者が有用な投稿情報を認識しやすくなる。特に、他の投稿情報に関連付けられる回数の多い投稿情報は、多くの者に注目されている情報であり、投稿情報の利用者にとって有用性は高いと考えられる。このため、他の情報に関連付けられる回数の多い投稿情報ほど優先して抽出されることで、投稿情報の利用者が有用な投稿情報を認識しやすくなる。また、副関連キーワードは随時追加されて投稿情報の抽出に用いられるため、例えば、地震がきっかけとなって発生した電車の遅延情報、ゲリラ豪雨がきっかけとなって発生した川の氾濫等の二次災害に関する投稿情報の取得が可能となる。
【0083】
(2)第2実施形態
第1実施形態では、制御部20内の抽出制限制御部29は、他の投稿情報に関連付けられた回数の多い第1の所定数の投稿情報を抽出するとの抽出条件を設定し、投稿情報抽出部28は、その抽出条件に合致する投稿情報を抽出した。これに対して、第2実施形態では、抽出制限制御部29は、内容が類似すると見なされる複数の投稿情報間で、他の投稿情報に関連付けられた回数の多い投稿情報を抽出し、第1の所定数に制限するとの抽出条件を設定し、投稿情報抽出部28は、その抽出条件に合致する投稿情報を抽出する。
【0084】
フローチャートを参照しつつ、第2実施形態における情報提供サーバ10の動作を説明する。第2実施形態では、第1実施形態と同様、
図11及び
図12に示す動作が行われ、その後、
図15に示す動作が行われる。
【0085】
制御部20内の抽出制限制御部29は、
図12のステップS257において得られた投稿情報の抽出件数が第1の所定数を超えているか否かを判定する(ステップS351)。
【0086】
ステップS257において得られた投稿情報の抽出件数が第1の所定数を超えている場合(ステップS351:YES)、抽出制限制御部29は、
図12のステップS256において抽出された投稿情報のうち、内容が類似すると見なされる複数の投稿情報間で、関連付けられた他の投稿情報の件数の多い順に投稿情報を抽出し、第1の所定数に制限するとの抽出条件を設定する(ステップS352)。例えば、第1の所定数の情報等を含んだ抽出条件の情報が記憶部40に記憶される。
【0087】
次に、制御部20内の投稿情報抽出部28は、
図12のステップS256において抽出した投稿情報の内容を分析する(ステップS353)。具体的には、本実施形態では、投稿情報抽出部28は、投稿情報内の投稿情報文字列に含まれる主関連キーワード及び副関連キーワードを特定する。
【0088】
次に、投稿情報抽出部28は、ステップS353における分析結果に基づいて、
図12のステップS256において抽出した投稿情報について、内容が類似すると見なされる投稿情報同士のグループ化を行う(ステップS354)。具体的には、本実施形態では、投稿情報抽出部28は、
図12のステップS256において投稿情報の抽出に用いた主関連キーワード及び副関連キーワード毎のグループを形成し、グループの識別情報であるグループIDを設定する。次に、投稿情報抽出部28は、主関連キーワード又は副関連キーワードを投稿情報文字列に含む投稿情報内の投稿情報IDを、その主関連キーワード又は副関連キーワードに対応するグループのグループIDに対応付けてグループ化情報を生成する。なお、投稿情報に主関連キーワード及び副関連キーワードが複数含まれる場合には、投稿情報抽出部28は、複数の主関連キーワード及び副関連キーワードの何れかに対応するグループのグループIDに、投稿情報内の投稿情報IDを対応付ける。グループ化情報は、記憶部40に記憶される。
図16は、グループ化情報の一例を示す図である。
【0089】
次に、投稿情報抽出部28は、ステップS354で形成したグループのうち、未選択の1つのグループを選択する(ステップS355)。
【0090】
次に、投稿情報抽出部28は、ステップS355において選択したグループに属する投稿情報毎に、他の投稿情報に関連付けられた回数をカウントし、そのカウント値を記憶部40に記憶させる(ステップS356)。具体的には、投稿情報抽出部28は、グループ化情報から、ステップS355において選択したグループのグループIDに対応付けられている投稿情報IDを抽出する。次に、投稿情報抽出部28は、抽出した投稿情報ID毎に以下の処理を行う。すなわち、投稿情報抽出部28は、
図12のステップS256において抽出された投稿情報であって、抽出した投稿情報IDに対応する投稿情報以外の投稿情報(他の投稿情報)のうち、関連付けIDが抽出した投稿情報IDと一致する他の投稿情報の件数をカウントする。カウント値は、他の投稿情報に関連付けられた回数となる。更に、投稿情報抽出部28は、カウント値を抽出した投稿情報IDに対応付けて記憶部40に記憶させる。
【0091】
次に、投稿情報抽出部28は、ステップS354において選択したグループに属する投稿情報のうち、他の投稿情報に対応付けられた回数の多い順に第2の所定数の投稿情報を抽出する(ステップS357)。具体的には、投稿情報抽出部28は、グループ化情報から、ステップS355において選択したグループのグループIDに対応付けられている投稿情報IDを抽出する。次に、投稿情報抽出部28は、抽出した投稿情報ID毎に、記憶部40に記憶されたカウント値のうち、抽出した投稿情報IDに対応付けられたカウント値を特定する。更に、投稿情報抽出部28は、特定したカウント値を、その値の大きい順に第2の所定数の個数だけ選択する。更に、投稿情報抽出部28は、選択したカウント値に対応付けられている投稿情報IDを含む投稿情報を抽出する。ここで第2の所定数は、例えば、第1の所定数をステップS354で形成されたグループの数で除した値の小数点以下を切り捨てた値である。
【0092】
次に、投稿情報抽出部28は、ステップS354で形成したグループのうち、ステップS355において未選択のグループがあるか否かを判定する(ステップS358)。ステップS355において未選択のグループがある場合(ステップS358:YES)、ステップS355における未選択の1つのグループの選択以降の動作が繰り返される。
【0093】
一方、ステップS355において未選択のグループがない場合(ステップS358:NO)、投稿情報抽出部28は、イベント情報DB42に登録されたイベント情報のうち、
図12のステップS251において選択したクローラ情報内のクローラIDを含むイベント情報を抽出する。更に、投稿情報抽出部28は、抽出したイベント情報に、ステップS357においてグループ毎に抽出した第2の所定数の投稿情報のそれぞれを対応付けて抽出結果情報を生成し、記憶部40内の抽出結果DB46に登録する(ステップS359)。
【0094】
一方、ステップS257において得られた投稿情報の抽出件数が第1の所定数以下である場合(ステップS351:NO)、投稿情報抽出部28は、イベント情報DB42に登録されたイベント情報のうち、
図12のステップS251において選択したクローラ情報内のクローラIDを含むイベント情報を抽出する。更に、投稿情報抽出部28は、抽出したイベント情報に、
図12のステップS256において抽出した投稿情報を対応付けて抽出結果情報を生成し、記憶部40内の抽出結果DB46に登録する(ステップS360)。
【0095】
ステップS359又はステップS360における抽出結果情報の生成、登録後、投稿情報提供部30は、抽出結果情報を、通信部60、通信ネットワーク250及び無線基地局200を介して、端末装置100へ送信する(ステップS361)。その後、一連の動作が終了する。
【0096】
このように、情報提供サーバ10は、主関連キーワード及び副関連キーワードの少なくとも何れかを含み、NGキーワードを含まない投稿情報の抽出件数が第1の所定数を超える場合には、内容が関連すると見なされる投稿情報をグループ化し、グループ毎に、他の投稿情報に関連付けられる回数の多い第2の所定数の投稿情報を更に抽出する。このため、投稿情報の抽出数が膨大になることが防止され、投稿情報の利用者が有用な投稿情報を認識しやすくなる。また、内容が類似すると見なされる複数の投稿情報については、少なくとも何れかが抽出されるため、利用者が見落とすことは防止され、更には、利用者は、他の投稿情報も認識しやすくなる。
【0097】
(3)第3実施形態
第1実施形態では、制御部20内の抽出制限制御部29は、他の投稿情報に関連付けられた回数の多い第1の所定数の投稿情報を抽出するとの抽出条件を設定し、投稿情報抽出部28は、その抽出条件に合致する投稿情報を抽出した。これに対して、第3実施形態では、抽出制限制御部29は、内容が類似すると見なされる複数の投稿情報間で代表する投稿情報を抽出し、第1の所定数に制限するとの抽出条件を設定し、投稿情報抽出部28は、その抽出条件に合致する投稿情報を抽出する。
【0098】
フローチャートを参照しつつ、第3実施形態における情報提供サーバ10の動作を説明する。第3実施形態では、第1実施形態及び第2実施形態と同様、
図11及び
図12に示す動作が行われ、その後、
図17に示す動作が行われる。
【0099】
制御部20内の抽出制限制御部29は、
図12のステップS257において得られた投稿情報の抽出件数が第1の所定数を超えているか否かを判定する(ステップS401)。
【0100】
ステップS257において得られた投稿情報の抽出件数が第1の所定数を超えている場合(ステップS401:YES)、抽出制限制御部29は、
図12のステップS256において抽出された投稿情報のうち、内容が類似すると見なされる複数の投稿情報間で代表する投稿情報を抽出し、第1の所定数に制限するとの抽出条件を設定する(ステップS402)。例えば、第1の所定数の情報等を含んだ抽出条件の情報が記憶部40に記憶される。
【0101】
次に、制御部20内の投稿情報抽出部28は、
図12のステップS256において抽出した投稿情報の内容を分析する(ステップS403)。具体的な分析の手法は、
図15のステップS353と同様である。
【0102】
次に、投稿情報抽出部28は、ステップS353における分析結果に基づいて、
図12のステップS256において抽出した投稿情報について、内容が類似すると見なされる投稿情報同士のグループ化を行う(ステップS404)。具体的なグループ化の手法は、
図15のステップS354と同様である。なお、グループ数は、第1の所定数以下である。
【0103】
次に、投稿情報抽出部28は、ステップS404で形成したグループのうち、未選択の1つのグループを選択する(ステップS405)。次に、投稿情報抽出部28は、ステップS405において選択したグループに属する投稿情報から、代表する投稿情報を抽出する(ステップS406)。具体的には、投稿情報抽出部28は、グループ化情報から、ステップS405において選択したグループのグループIDに対応付けられている投稿情報IDを抽出する。次に、投稿情報抽出部28は、抽出した投稿情報IDに対応する投稿情報を特定する。更に、投稿情報抽出部28は、特定した投稿情報のうち、1件の投稿情報を抽出する。例えば、投稿情報抽出部28は、特定した各投稿情報内の投稿日時情報を比較し、最新の日時を示す投稿情報日時情報を含む投稿情報を抽出する。
【0104】
次に、投稿情報抽出部28は、ステップS404で形成したグループのうち、ステップS405において未選択のグループがあるか否かを判定する(ステップS407)。ステップS405において未選択のグループがある場合(ステップS407:YES)、ステップS405における未選択の1つのグループの選択以降の動作が繰り返される。
【0105】
一方、ステップS3405において未選択のグループがない場合(ステップS407:NO)、投稿情報抽出部28は、イベント情報DB42に登録されたイベント情報のうち、
図12のステップS251において選択したクローラ情報内のクローラIDを含むイベント情報を抽出する。更に、投稿情報抽出部28は、抽出したイベント情報に、ステップS406においてグループ毎に抽出した投稿情報のそれぞれを対応付けて抽出結果情報を生成し、記憶部40内の抽出結果DB46に登録する(ステップS408)。
【0106】
一方、ステップS257において得られた投稿情報の抽出件数が第1の所定数以下である場合(ステップS401:NO)、投稿情報抽出部28は、イベント情報DB42に登録されたイベント情報のうち、
図12のステップS251において選択したクローラ情報内のクローラIDを含むイベント情報を抽出する。更に、投稿情報抽出部28は、抽出したイベント情報に、
図12のステップS256において抽出した投稿情報を対応付けて抽出結果情報を生成し、記憶部40内に抽出結果DB46に登録する(ステップS409)。
【0107】
ステップS408又はステップS409における抽出結果情報の生成、登録後、投稿情報提供部30は、抽出結果情報を、通信部60、通信ネットワーク250及び無線基地局200を介して、端末装置100へ送信する(ステップS410)。その後、一連の動作が終了する。
【0108】
このように、情報提供サーバ10は、主関連キーワード及び副関連キーワードの少なくとも何れかを含み、NGキーワードを含まない投稿情報の抽出件数が第1の所定数を超える場合には、内容が類似すると見なされる投稿情報をグループ化し、グループ毎に、代表する投稿情報を更に抽出する。このため、投稿情報の抽出数が膨大になることが防止され、投稿情報の利用者が有用な投稿情報を認識しやすくなる。また、内容が類似すると見なされる複数の投稿情報については、少なくとも何れかが抽出されるため、利用者が見落とすことは防止され、更には、利用者は、他の投稿情報も認識しやすくなる。
【0109】
(4)その他の実施形態
以上、本発明の実施形態について説明したが、本発明は実施形態によって限定されるものではない。本発明は、実施形態及び以下の変形例を適宜組み合わせたものも含み、また、それらと均等なものも含む。
【0110】
例えば、上述した実施形態では、投稿情報に、当該投稿情報を送信した端末装置100の位置を示す投稿位置情報が含まれるものとして説明したが、投稿位置情報が含まれていない場合には、
図12のステップS256において、投稿情報抽出部28は、投稿サーバ400に記憶されている投稿情報内の投稿情報文字列について形態素解析等の解析を行って地域名等を特定し、その地域名等に対応する領域の識別情報(JISコード等)を投稿位置情報として投稿情報に設定するようにしてもよい。
【0111】
また、例えば、上述した実施形態では、予め副関連キーワードが用意されており、1回目の投稿情報の抽出から副関連キーワードを用いたが、初期状態では、副関連キーワードがなく、1回目では副関連キーワードを用いない投稿情報の抽出が行われるようにしてもよい。更には、副関連キーワード生成部26が、その1回目の投稿情報の抽出で得られた投稿情報から副関連キーワードを生成して、2回目以降の投稿情報の抽出に用いられるようにしてもよい。
【0112】
例えば、上述した実施形態では、他の投稿情報に関連付けられる回数の多い投稿情報が優先的に抽出されるようにした。しかし、他の投稿情報に関連付けられること以外にも、関連度が高い他の投稿情報が多い投稿情報、例えば、内容が類似すると見なされる他の投稿情報が多い投稿情報ほど、優先的に抽出されるようにしてもよい。また、例えば、抽出制限制御部29が、投稿が集中する時間帯の投稿情報を優先的に抽出するとの抽出条件を設定する。更に、投稿情報抽出部28が、抽出した投稿情報内の投稿日時情報に基づいて投稿が集中する時間帯を特定し、投稿日時情報が示す日時が、その特定した時間帯に含まれる投稿情報を優先的に抽出するようにしてもよい。
【0113】
また、例えば、上述した実施形態では、所定のイベントが災害である場合について説明したが、災害以外のイベントに関する投稿情報を提供する場合にも、同様に本発明を適用することができる。
【0114】
また、情報提供システム1の構成は、
図1に示すものに限定されない。例えば、情報提供サーバ10と投稿サーバ400とが1つのサーバによって構成されていてもよい。また、例えば、情報提供サーバ10の機能を実現するためのプログラムは、CD−ROM等の記憶媒体に記憶されてもよいし、通信ネットワーク250を介してダウンロードされてもよい。