(57)【要約】  検索条件を指定して行われるデータの収集に際し、ユーザが目的としている情報を容易かつ精度よく収集する。検索条件を満たす情報をデータ群から収集するデータ収集装置１０が、複数の検索条件の夫々を用いてデータ群を検索し、複数の検索条件の夫々のヒット件数に応じて複数の検索条件を複数のクラスタに分類した結果に基づき検索に用いる検索条件の候補を特定する。データ収集装置１０は、クラスタの夫々について、夫々に属する検索条件の夫々のヒット件数の平均値を求め、平均値に基づき検索条件の候補を特定し、例えば、平均値が予め設定された範囲に含まれないクラスタに属している検索条件を候補の対象から除外する。
2016088212.tif 000002
【特許請求の範囲】
【請求項１】
検索条件を満たす情報をデータ群から収集する情報処理装置であり、
複数の検索条件の夫々を用いて前記データ群を検索し、
前記複数の検索条件の夫々のヒット件数に応じて前記複数の検索条件を複数のクラスタに分類した結果に基づき、前記検索に用いる前記検索条件の候補を特定する
データ収集装置。
【請求項２】
請求項１に記載のデータ収集装置であって、
前記クラスタの夫々について、夫々に属する前記検索条件の夫々の前記ヒット件数の平均値を求め、前記平均値に基づき前記検索条件の候補を特定する
データ収集装置。
【請求項３】
請求項２に記載のデータ収集装置であって、
前記平均値が予め設定された範囲に含まれない前記クラスタに属している前記検索条件を前記候補の対象から除外する
データ収集装置。
【請求項４】
請求項１乃至３のいずれか一項に記載のデータ収集装置であって、
前記検索条件に含まれるワードの関連語を関連語辞書から検索して置換することにより、前記検索条件とは異なる検索条件を自動生成する
データ収集装置。
【請求項５】
請求項４に記載のデータ収集装置であって、
前記関連語辞書は、同義語辞書、対義語辞書、及び具体化辞書のうちの少なくともいずれかである
データ収集装置。
【請求項６】
請求項１に記載のデータ収集装置であって、
前記複数の検索条件のクラスタへの分類をｋ−ｍｅａｎｓ法により行う
データ収集装置。
【請求項７】
請求項１に記載のデータ収集装置であって、
前記検索に用いる前記検索条件の候補として特定した検索条件を提示して選択させるユーザインタフェースを備える
データ収集装置。
【請求項８】
請求項１に記載のデータ収集装置であって、
前記データ群のデータの取得元別に前記ヒット件数を集計し、
前記取得元毎に前記ヒット件数を重み付けした上で前記取得元毎の前記ヒット件数の合計値を求め、
前記複数の検索条件の夫々の前記合計値に応じて前記複数の検索条件を複数のクラスタに分類した結果に基づき、前記検索に用いる前記検索条件の候補を特定する
データ収集装置。
【請求項９】
請求項１に記載のデータ収集装置であって、
前記複数の検索条件の夫々のヒット数の時系列変化の類似度に応じて、前記複数の検索条件のクラスタへの分類を行う
データ収集装置。
【請求項１０】
請求項１に記載のデータ収集装置であって、
インターネットと通信可能に接続し、前記データ群にインターネットを介してアクセスする
データ収集装置。
【請求項１１】
検索条件を満たす情報をデータ群から収集する情報収集方法であって、
情報処理装置が、
複数の検索条件の夫々を用いて前記データ群を検索する第１ステップ、
前記複数の検索条件の夫々のヒット件数に応じて前記複数の検索条件を複数のクラスタに分類した結果に基づき前記検索に用いる前記検索条件の候補を特定する第２ステップ
を含む、データ収集方法。
【請求項１２】
請求項１１に記載のデータ収集方法であって、
前記情報処理装置が、前記第２ステップにおいて、前記クラスタの夫々について、夫々に属する前記検索条件の夫々の前記ヒット件数の平均値を求め、前記平均値に基づき前記検索条件の候補を特定する
データ収集方法。
【請求項１３】
請求項１２に記載のデータ収集方法であって、
前記情報処理装置が、前記第２ステップにおいて、前記平均値が予め設定された範囲に含まれない前記クラスタに属している前記検索条件を前記候補の対象から除外する
データ収集方法。
【請求項１４】
請求項１１に記載のデータ収集方法であって、
前記情報処理装置が、
前記データ群のデータの取得元別に前記ヒット件数を集計するステップ、及び、
前記取得元毎に前記ヒット件数を重み付けした上で前記取得元毎の前記ヒット件数の合計値を求めるステップ、
を更に含み、
前記第２ステップにおいて、前記複数の検索条件の夫々の前記合計値に応じて前記複数の検索条件を複数のクラスタに分類した結果に基づき、前記検索に用いる前記検索条件の候補を特定する
データ収集方法。
【請求項１５】
請求項１１に記載のデータ収集方法であって、
前記情報処理装置が、前記第２ステップにおいて、前記複数の検索条件の夫々のヒット数の時系列変化の類似度に応じて、前記複数の検索条件のクラスタへの分類を行う
データ収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ収集装置、及びデータ収集方法に関する。
【背景技術】
【０００２】
特許文献１には、「利用者が関連記事を検索したい記事を選択すると、基準検索件数に最も近いヒット件数となるような検索式を動的に変化させながら自動的に生成し、関連記事を表示する」と記載されている。【０００３】
特許文献２には、「ユーザのキーワード入力を受け付けるキーワード入力受付手段と、受け付けられたユーザ入力のキーワードで定まる検索式が対象の文書内で成立する件数を求めて該検索式と求めた件数とをユーザに提示する検索結果提示手段と、検索結果提示手段が提示した検索式の関連語を生成する関連語生成手段と、提示されたキーワードと生成された関連語とを含む検索式が対象の文書内で成立する件数を求めて該件数と生成された関連語とをユーザに提示する検索結果予想提示手段とを有する」と記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１００１３６号公報
【特許文献２】特開平５−３１４１８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、基準検索件数に最も近いヒット件数となるような検索式を動的に変化させるため、検索結果にユーザが想定していた情報とは異なる情報が含まれてしまう場合や検索結果にユーザが想定していた情報が含まれない場合が生じうる。また特許文献２では、提示された情報に基づきユーザが関連語を選択して新たなキーワードを指示するので、特許文献１と同様の問題が生じうる。【０００６】
本発明は、検索条件を指定して行われるデータの収集に際し、ユーザが目的としている情報を精度よく収集することが可能な、データ収集装置、及びデータ収集方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を達成するための本発明の一つは、検索条件を満たす情報をデータ群から収集する情報収集装置であって、複数の検索条件の夫々を用いて前記データ群を検索し、前記複数の検索条件の夫々のヒット件数に応じて前記複数の検索条件を複数のクラスタに分類した結果に基づき、前記検索に用いる前記検索条件の候補を特定する。【０００８】
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄、及び図面により明らかにされる。
【発明の効果】
【０００９】
本発明によれば、検索条件を指定して行われるデータの収集に際し、ユーザが目的としている情報を精度よく収集することができる。
【図面の簡単な説明】
【００１０】
【図１】データ収集システム１の概略的な構成を示す図である。
【図２】データ収集装置１０の処理の概念を説明する図である。
【図３】データ収集装置１０及びサーバ装置２０の実現に用いられる情報処理装置１００のハードウェアの一例である。
【図４】データ収集装置１０が備える機能及びデータ収集装置１０が管理するデータを説明するデータフロー図である。
【図５】収集データ４０２の一例である。
【図６】設定検索ワード４０３の一例である。
【図７】同義語辞書４０５の一例である。
【図８】対義語辞書４０６の一例である。
【図９】ヒット件数データ４０８の一例である。
【図１０】検索条件データ４１１の一例である。
【図１１】検索条件生成処理Ｓ１１００を説明するフローチャートである。
【図１２】収集データ取得処理Ｓ１２００を説明するフローチャートである。
【図１３】検索処理Ｓ１３００を説明するフローチャートである。
【図１４】クラスタ生成処理Ｓ１４００を説明するフローチャートである。
【図１５】除外条件判定処理Ｓ１５００を説明するフローチャートである。
【図１６】除外条件設定画面１６００の一例である。
【図１７】第２実施例におけるヒット件数データ４０８Ａの一例である。
【図１８】第３実施例のクラスタ生成部４０９が行う類似度の判定例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の一実施形態について図面とともに説明する。尚、以下の説明において、同一の機能及び構成を有する構成要素について同一の符号を付して重複した説明を省略することがある。
【００１２】
＝第１実施例＝
図１は一実施形態として説明するデータ収集システム１の概略的な構成を示す図である。同図に示すように、データ収集システム１は、データ収集装置１０とサーバ装置２０を含む。データ収集装置１０とサーバ装置２０とは、通信ネットワーク５を介して通信可能に接続されている。通信ネットワーク５は、例えば、インターネットや専用回線等である。
【００１３】
サーバ装置２０は、通信ネットワーク５を介してアクセスしてくる他の装置に対して情報（データ）を提供する装置（例えば、Ｗｅｂサーバ、ＳＮＳサーバ（SNS:Social Network Service）、オープンデータサーバ等）として機能する。
【００１４】
データ収集装置１０は、通信ネットワーク５を介してサーバ装置２０にアクセスし、サーバ装置２０からデータを取得する。データ収集装置１０によって取得されるデータは、例えば、特定の話題に関する傾向分析や因果関係分析等に役立てられる。
【００１５】
データ収集装置１０は、検索条件（検索式）を満たす情報（ヒットする情報）を、サーバ装置２０から取得されるデータ群から収集する。上記収集に際し、データ収集装置１０は、複数の検索条件を用いてデータ群を検索し、複数の検索条件の夫々のヒット件数に応じて複数の検索条件を複数のクラスタに分類した結果に基づき、上記データ群の検索に用いる検索条件の候補を特定する。
【００１６】
図２に示すように、データ収集装置１０は、上記特定に際し、平均値が予め設定された範囲に含まれないクラスタに属している検索条件を検索条件の候補から除外する。例えば、データ収集装置１０は、平均値が予め設定された範囲を超えるクラスタ（同図におけるクラスタＣ）に属する検索条件（ｈ，ｉ，ｊ）を上記候補の対象から除外する。
【００１７】
このようにデータ収集装置１０は、検索条件を複数のクラスタに分類し、クラスタを単位として検索条件の候補を特定するので、ヒット件数が非常に大きなクラスタに属する検索条件を有効に除外することができ、ユーザが目的としない情報（以下、ノイズ（noise）とも称する。）を含まない検索結果を取得可能な検索条件を特定することができる。尚、ヒット件数が非常に大きなクラスタに属する検索条件には、例えば多義性を持ったキーワードが検索条件に含まれており、ユーザが目的としない情報が多く含まれることとなるので、候補から除外する。
【００１８】
尚、図２に示しているように、データ収集装置１０は、上記複数の検索条件を、例えば、ある検索条件に含まれるワードの関連語を関連語辞書（同義語辞書、対義語辞書、具体化辞書等）から検索して置換することにより生成する。そのため、ユーザに負担を強いることなく、検索に用いる検索条件の候補の選択対象となる検索条件を効率よく生成することができる。
【００１９】
データ収集装置１０は、検索条件の上記複数のクラスタの分類を、例えば、ｋ−ｍｅａｎｓ法により行う。またデータ収集装置１０は、検索に用いる検索条件の候補として特定した検索条件を提示して指定させるユーザインタフェースを備えており、ユーザから検索に用いる検索条件の指定を受け付ける。そのため、ユーザは目的とする情報を効率よく取得するのに適した検索条件を自ら最終的に決定することができる。
【００２０】
図３はデータ収集装置１０やサーバ装置２０の実現に用いられる、情報処理装置１００のハードウェアの一例である。同図に示すように、情報処理装置１００は、プロセッサ１０１、記憶装置１０２、入力装置１０４、出力装置１０５、及び通信装置１０６を備える。これらはバス等の通信手段を介して通信可能に接続されている。
【００２１】
プロセッサ１０１は、例えば、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）を用いて構成されている。記憶装置１０２は、プログラムやデータを記憶する装置であり、例えば、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ＮＶＲＡＭ（Non Volatile RAM）、ハードディスクドライブ、ＳＳＤ（Solid State Drive）、光学式記憶装置等である。入力装置１０４は、ユーザから情報や指示の入力を受け付けるユーザインタフェースであり、例えば、キーボード、マウス、タッチパネル等である。出力装置１０５は、ユーザに情報を提供するユーザインタフェースであり、例えば、グラフィックカード、液晶モニタ等である。通信装置１０６は、通信ネットワーク５を介して他の装置と通信する通信インタフェースであり、例えば、ＮＩＣ（Network Interface Card）や無線ＬＡＮインタフェースである。
【００２２】
図４はデータ収集装置１０が備える機能及びデータ収集装置１０が管理するデータを説明するデータフロー図である。
【００２３】
同図に示すように、データ収集装置１０は、データ取得部４０１、検索条件生成部４０４、データ検索部４０７、クラスタ生成部４０９、除外条件判定部４１０、及び除外条件選択部４１２の各機能を備える。これらの機能は、プロセッサ１０１が、主記憶装置１０２に格納されているプログラムを読み出して実行することにより実現される。尚、これらの機能はハードウェア（ＡＳＩＣ（Application Specific Integrated Circuit）等）によって実現されるものであってもよい。またこれらの機能の複数が一つのハードウェアによって実現される構成としてもよいし、これらの機能が複数のハードウェアによって分散もしくは強調して実現される構成としてもよい。また同図に示す各機能は、データ収集装置１０の機能の理解を容易にするために便宜的に設定したものに過ぎず、各機能の分類の仕方や名称はここに示した態様に限定されない。
【００２４】
同図に示すように、データ収集装置１０は、収集データ４０２、設定検索ワード４０３、同義語辞書４０５、対義語辞書４０６、ヒット件数データ４０８、及び検索条件データ４１１等を管理する。データ収集装置１０は、これらのデータを、例えば、ＤＢＭＳ（DataBase Management System）が提供するデータベースのテーブルとして管理する。尚、以下では、複数の検索条件の生成に用いる関連語辞書として、同義語辞書４０５並びに対義語辞書４０６を例示するが、関連語辞書として他の種類の辞書（例えば、あるワードの下位概念となるワードを記載した具体化辞書等）を用いてもよい。
【００２５】
同図に示す機能のうち、データ取得部４０１は、通信ネットワーク５を介してサーバ装置２０からデータ（ＳＮＳの投稿データ、ニュース記事等の記事データ、オープンデータ等）を取得する。具体的には、データ取得部４０１は、ＡＰＩ（Application Programming Interface）やクローリング（Crawling）等の手法により、サーバ装置２０から定期的に（例えば１週間に１度）データを取得する。データ取得部４０１は、取得したデータ群を、収集データ４０２として管理する。
【００２６】
図５に収集データ４０２の一例を示す。同図に示す一行分（１レコード分）のデータが一つの収集データ４０２に相当する。同図に示すように、収集データ４０２は、提供日時４０２１、ソース４０２２、提供者ＩＤ４０２３、及び本文４０２４の各項目を含む。このうち提供日時４０２１には、当該収集データ４０２が提供された日時（例えば、収集データ４０２がＳＮＳに投稿された日時等）が格納される。ソース４０２２には、当該収集データ４０２の取得元の種類を示す情報が格納される。例えば、取得元がＳＮＳサーバであれば「ＳＮＳ」が、取得元がニュース記事を提供するＷｅｂサーバであれば「ニュース」が格納される。提供者ＩＤ４０２３には、当該収集データ４０２の提供者（投稿者、寄稿者等）を示す情報（ユーザ名、アカウント名等）が格納される。本文４０２４には、当該収集データ４０２の本文に相当する情報が格納される。
【００２７】
図４に戻り、検索条件生成部４０４は、例えば、ユーザが事前に登録した検索条件のワード群を設定検索ワード４０３から取得し、同義語辞書４０５からは検索条件の各ワードに関する同義語を、対義語辞書４０６からは検索条件の各ワードに関する対義語を、夫々取得し、ユーザが設定した検索条件のワードと、取得した同義語及び対義語とを組み合わせて複数の検索条件を生成する。
【００２８】
図６に設定検索ワード４０３の一例を示す。同図に示す一行分（１レコード分）のデータが一つの設定検索ワード４０３に相当する。設定検索ワード４０３には、ユーザが事前に設定した、検索条件として用いるワードが格納される。同図に示すように、設定検索ワード４０３は、検索条件ＩＤ４０３１、及び検索条件（検索ワード１（４０３２），検索ワード２（４０３３），検索ワード３（４０３４），・・・）の各項目を含む。このうち検索条件ＩＤ４０３１には、検索条件を特定する識別情報が格納される。検索条件（検索ワード１（４０３２），検索ワード２（４０３３），検索ワード３（４０３４），・・・）には、ユーザが事前に設定した、検索条件として用いるワードが格納される。
【００２９】
図７に同義語辞書４０５（類義語辞書）の一例を示す。同図に示す一行分（１レコード分）のデータが一つの同義語辞書４０５に相当する。同義語辞書４０５は、一つのワード（対象語４０５１）とそのワードについての一つ以上の同義語（同義語４０５２，４０５３，４０５４，・・・）とを含む。例えば、同図における１行目のレコードの同義語辞書４０５は、対象語４０５１「将来」と、同義語４０５２「今後」及び同義語４０５３「未来」とを含む。
【００３０】
図８に対義語辞書４０６（反対語辞書）の一例を示す。同図に示す一行分（１レコード分）のデータが一つの対義語辞書４０６に相当する。対義語辞書４０６は、一つのワード（対象語４０６１）とそのワードについての一つ以上の対義語（対義語４０６２，４０６３，４０６４，・・・）とを含む。例えば、同図における２行目のレコードの対義語辞書４０６は、対象語４０６１「安心」と、対義語４０６２「不安」及び対義語４０６３「心配」とを含む。
【００３１】
図４に戻り、データ検索部４０７は、検索条件生成部４０４が生成した複数の検索条件を用いて収集データ４０２を検索し、複数の検索条件の夫々のヒット件数をヒット件数データ４０８として管理する。
【００３２】
図９にヒット件数データ４０８の一例を示す。同図に示す一行分（１レコード分）のデータが一つのヒット件数データ４０８に相当する。ヒット件数データ４０８は、データ検索部４０７によって集計された検索条件（検索ワード候補１（４０８１），検索ワード候補２（４０８２），検索ワード候補３（４０８３），・・・）と、当該検索条件によるヒット件数４０８４とを含む。このうち検索条件（検索ワード候補１（４０８１），検索ワード候補２（４０８２），検索ワード候補３（４０８３），・・・）には、設定検索ワード４０３における検索条件のワード群と、設定検索ワード４０３に格納された検索条件のワード群の各ワードの同義語や対義語との組合せが格納される。例えば、同図では、設定検索ワード４０３に含まれる検索条件のワード群である（電話，休止）と、「休止」を同義語に置き換えた（電話，中止）、（電話，停止）、（電話，ポーズ）と、「電話」を同義語に置き換えた（テレホン，休止）が格納されている。
【００３３】
図４に戻り、クラスタ生成部４０９は、検索条件生成部４０４によって生成された複数の検索条件を夫々のヒット件数データ４０８のヒット件数４０８４に応じてクラスタに分類する。
【００３４】
除外条件判定部４１０は、検索条件をクラスタに分類した結果に基づき検索条件の候補を特定（候補から除外する検索条件を特定）する。
【００３５】
除外条件選択部４１２は、検索条件データ４１１の内容（候補とする検索条件、候補から除外する検索条件）をユーザに提示するとともに、ユーザから検索に用いる検索条件の指定を受け付ける。
【００３６】
図１０に検索条件データ４１１の一例を示している。同図に示す一行分（１レコード分）のデータが一つの検索条件データ４１１に相当する。同図に示すように、検索条件データ４１１は、検索条件ＩＤ４１１１、検索条件（検索ワード候補１（４１１２），検索ワード候補２（４１１３），検索ワード候補３（４１１４），・・・）、除外対象判定結果４１１５、及び除外選択結果４１１６を含む。このうち検索条件ＩＤ４１１１には、検索条件を特定する識別情報が格納される。検索条件（検索ワード候補１（４１１２），検索ワード候補２（４１１３），検索ワード候補３（４１１４），・・・）には、ヒット件数データ４０８における検索条件（検索ワード候補１（４０８１），検索ワード候補２（４０８２），検索ワード候補３（４０８３），・・・）が格納される。除外対象判定結果４１１５には、除外条件判定部４１０が除外対象であるかを判定した結果が格納される。例えば、当該検索条件が除外対象と判定された場合、除外対象判定結果４１１５には「１」が、それ以外の場合に「０」が格納される。除外選択結果４１１６には、除外条件選択部４１２のユーザインタフェースを通じて、除外対象と判定された検索条件を除外するかをユーザが選択した結果が格納される。例えば、当該検索条件が除外対象とされていない場合は「−」が格納される。また当該検索条件が除外対象とされており、かつ、ユーザが除外を選択した場合は「１」が格納される。また当該検索条件が除外対象とされており、かつ、ユーザが除外を選択していない場合は「０」が格納される。
【００３７】
続いて、データ収集装置１０が行う処理について説明する。
【００３８】
＜検索条件生成処理＞
図１１は、データ収集装置１０の検索条件生成部４０４が、設定検索ワード４０３、同義語辞書４０５、及び対義語辞書４０６に基づき、収集データ４０２の検索条件を生成する処理（以下、検索条件生成処理Ｓ１１００と称する。）を説明するフローチャートである。データ収集装置１０は、例えば、入力装置１４に対して当該処理の開始操作が行われたことを契機として検索条件生成処理Ｓ１１００を開始する。以下、同図とともに検索条件生成処理Ｓ１１００について説明する。尚、以下では、検索ワード５０１が２つである場合（図６において、検索ワード４０３２及び検索ワード４０３３が設定されている場合）を例として説明する。
【００３９】
同図に示すように、検索条件生成部４０４は、まず１つ目の検索ワード１（４０３２）を設定検索ワード４０３から取得する（Ｓ１１０１）。以下、１つ目の検索ワード１（４０３２）の関連語のリストを関連語リストＷ１、関連語リストＷ１に含まれるｎ番目の関連語をＷ１［ｎ］と表記する。
【００４０】
続いて、検索条件生成部４０４は、同義語辞書４０５から１つ目の検索ワード１（４０３２）の同義語を取得し（以下、取得した同義語の総数をＷ１ＳＮと表記する。）、取得した同義語を、検索ワード１関連語リストＷ１［１］〜Ｗ１［Ｗ１ＳＮ］に登録する（Ｓ１１０２）。尚、Ｗ１［０］には１つ目の検索ワード１（４０３２）が登録されるものとする。
【００４１】
続いて、検索条件生成部４０４は、対義語辞書４０６から１つ目の検索ワード１（４０３２）の対義語を取得し（以下、取得した対義語の総数をＷ１ＡＮと表記する。）、取得した対義語を、検索ワード１関連語リストＷ１［Ｗ１ＳＮ＋１］〜Ｗ１［Ｗ１ＳＮ＋Ｗ１ＡＮ］に登録する（Ｓ１１０３）。
【００４２】
次に、検索条件生成部４０４は、２つ目の検索ワード２（４０３３）を、設定検索ワード４０３から取得する（Ｓ１１０４）。以下、２つ目の検索ワード２（４０３３）の関連語のリストを関連語リストＷ２、関連語リストＷ２に含まれるｎ番目の関連語をＷ２［ｎ］と表記する。
【００４３】
続いて、検索条件生成部４０４は、同義語辞書４０５から２つ目の検索ワード２（４０３３）の同義語を取得し（以下、取得した同義語の総数をＷ２ＳＮと表記する。）、取得した同義語を、検索ワード１関連語リストＷ２［１］〜Ｗ２［Ｗ２ＳＮ］に登録する（Ｓ１１０５）。尚、Ｗ２［０］には２つ目の検索ワード２（４０３３）が登録されるものとする。
【００４４】
続いて、検索条件生成部４０４は、対義語辞書４０６から２つ目の検索ワード２（４０３３）の対義語を取得し（以下、取得した対義語の総数をＷ２ＡＮと表記する。）、取得した対義語を、検索ワード２関連語リストＷ２［Ｗ２ＳＮ＋１］〜Ｗ２［Ｗ２ＳＮ＋Ｗ２ＡＮ］に登録する（Ｓ１１０６）。
【００４５】
Ｓ１１０７では、検索条件生成部４０４は、関連語リストにおける関連語を指定するインデックスとして用いる変数Ｉ１に０を代入する。
【００４６】
Ｓ１１０８では、検索条件生成部４０４は、関連語リストにおける関連語を指定するインデックスとして用いる変数Ｉ２に０を代入する。
【００４７】
続いて、検索条件生成部４０４は、関連語の組（Ｗ１［Ｉ１］，Ｗ２［Ｉ２］）をヒット件数データ４０８の検索条件（検索ワード候補１（４０８１）、検索ワード候補２（４０８２）、検索ワード候補３（４０８３），・・・）として、もしくは検索条件データ４１１として登録する（Ｓ１１０９）。
【００４８】
続いて、検索条件生成部４０４は、Ｉ２がＷ２ＳＮ＋Ｗ２ＡＮとなるまで（Ｓ１１１０の条件が成立（Ｓ１１１０：ＹＥＳ）するまで）、Ｉ２を繰り返しインクリメントしつつ（Ｓ１１１１）、Ｓ１１０９の処理を繰り返す。
【００４９】
またＳ１１１０の条件が成立すると（Ｓ１１１０：ＹＥＳ）、検索条件生成部４０４は、Ｉ１がＷ１ＳＮ＋Ｗ１ＡＮとなるまで（Ｓ１１１２の条件が成立（Ｓ１１１２：ＹＥＳ）するまで）、Ｉ１を繰り返しインクリメントしつつ（Ｓ１１１３）、Ｓ１１０８〜Ｓ１１１１の処理を繰り返す。
【００５０】
ここでＳ１１０７〜Ｓ１１１３の処理は、各検索ワード（検索ワード１，検索ワード２）の関連語リストから１つずつ関連語を選択し、これらの関連語の組を検索条件データ４１１として登録する処理を、全ての関連語の組み合わせについて実施していることに相当する。従って、例えば、１つ目の検索ワード１（４０３２）の関連語リストが（安心，安堵）であり、２つ目の検索ワード２（４０３３）の関連語リストが（将来，今後）である場合、（安心，将来）、（安堵，将来）、（安心，今後）、（安堵，今後）の４つが検索条件として登録される。
【００５１】
ところで、以上では、検索ワード５０１が２つである場合を例として説明したが、検索ワード５０１の数はいくつであってもよい。尚、検索ワード５０１の数がｎである場合、例えば、各検索ワードについて関連語リストＷ１〜Ｗｎを作成し、関連語の組（Ｗ１［Ｉ１］，Ｗ２［Ｉ２］，…，Ｗｎ［Ｉｎ］）を検索条件に登録することになる。
【００５２】
＜収集データ取得処理＞
図１２は、データ収集装置１０のデータ取得部４０１が、通信ネットワーク５を介してサーバ装置２０からデータ（収集データ４０２）を取得する処理（以下、収集データ取得処理Ｓ１２００と称する。）を説明するフローチャートである。データ収集装置１０は、例えば、検索条件生成処理Ｓ１１００の終了後に収集データ取得処理Ｓ１２００を実行する。以下、同図とともに収集データ取得処理Ｓ１２００について説明する。
【００５３】
同図に示すように、データ取得部４０１は、通信ネットワーク５を通じてサーバ装置２０からデータを取得し、収集データ４０２として記憶する（Ｓ１１０１）。例えば、データ取得部４０１は、予めユーザが指定したサーバ装置２０が提供するデータを取得する。また例えば、データ取得部４０１は、サーバ装置２０に含まれるデータのうち、ユーザが指定した期間におけるデータを取得する。
【００５４】
＜検索処理＞
図１３は、データ収集装置１０のデータ検索部４０７が収集データ４０２を検索する処理（以下、検索処理Ｓ１３００と称する。）を説明するフローチャートである。データ収集装置１０は、例えば、収集データ取得処理Ｓ１２００の終了後に検索処理Ｓ１３００を実行する。以下、同図とともに検索処理Ｓ１３００について説明する。
【００５５】
同図に示すように、まずデータ検索部４０７は、検索条件生成部４０４により生成された検索条件データ４１１から検索条件のリスト及び当該リストに含まれている検索条件の総数を取得する（Ｓ１３０１）。以降では、検索条件のリストをＳ，検索条件のリストにおけるI番目の検索条件をＳ［Ｉ］、上記総数をＳＣＮと表記する。
【００５６】
続いて、データ検索部４０７は、変数Ｉに０を代入する（Ｓ１３０２）。尚、変数Ｉは、検索条件を指定するためのインデックスである。
【００５７】
続いて、データ検索部４０７は、収集データ４０２から検索条件Ｓ［Ｉ］にヒットするものを取得する（Ｓ１３０３）。
【００５８】
続いて、データ検索部４０７は、Ｓ１３０３にて取得した収集データ４０２の数（ヒット件数）を求め、求めた値をヒット件数４０８４に設定して現在選択中の検索条件Ｓ［Ｉ］のヒット件数データ４０８を生成する（Ｓ１３０５）。
【００５９】
データ検索部４０７は、Ｉをインクリメントしつつ（Ｓ１３０６）、Ｓ１３０３〜Ｓ１３０４の処理を、Ｉ＝ＳＣＮとなるまで、即ち検索条件のリスト（Ｓ）の全ての検索条件を対象として（Ｓ１３０５：ＹＥＳ）繰り返し実行する。
【００６０】
以上の検索処理Ｓ１３００が実行されることにより、検索条件生成部４０４によって生成された複数の検索条件の夫々について、検索条件にヒットする収集データ４０２の件数（ヒット件数）を取得することができる。
【００６１】
＜クラスタ生成処理＞
図１４は、データ収集装置１０のクラスタ生成部４０９が、ヒット件数データ４０８に登録されている検索条件（検索ワード候補１（４０８１），検索ワード候補２（４０８２），検索ワード候補３（４０８３），・・・）をクラスタに分類する処理（以下、クラスタ生成処理Ｓ１４００と称する。）を説明するフローチャートである。データ収集装置１０は、例えば、検索処理Ｓ１３００の終了後にクラスタ生成処理Ｓ１４００を実行する。以下、クラスタリング手法として「ｋ−ｍｅａｎｓ法」を用いた場合を例として説明する。
【００６２】
同図に示すように、まずクラスタ生成部４０９は、ヒット件数データ４０８の各ヒット件数４０８４（ヒット件数データ４０８の各レコード）をＫ個のクラスタのいずれかに（ランダムに）割り当てる（Ｓ１４０１）。クラスタの数Ｋは、例えば、ユーザが予め設定することができる。尚、ユーザはクラスタの数Ｋを調節することで、目的とする情報を精度よく取得するのにより適した検索条件を探ることができる。以下、ヒット件数データ４０８のヒット件数４０８４のリストに含まれるI番目のヒット件数をｖ［Ｉ］、ヒット件数４０８４のリストに含まれるヒット件数（レコード）の総数をＮと表記する。
【００６３】
続いて、クラスタ生成部４０９は、クラスタを特定するインデックスである変数ｋに０を代入する（Ｓ１４０２）。
【００６４】
続いて、クラスタ生成部４０９は、インデックスｋで特定されるクラスタに属する件数ｖ［ｎ］の平均値を求め、これをインデックスｋで特定されるクラスタの中心値Ｃ［ｋ］とする（Ｓ１４０３）。
【００６５】
続いて、クラスタ生成部４０９は、変数ｋをインクリメントしつつ（Ｓ１４０５）、変数ｋがＫとなるまでＳ１４０３の処理を繰り返し実行し、各クラスタの中心値Ｃ［ｋ］（ｋ＝０〜Ｋ）を算出する。
【００６６】
続いて、クラスタ生成部４０９は、ヒット件数４０８４のリストの一つを特定するインデックスである変数ｎに０を代入する（Ｓ１４０６）。
【００６７】
続いて、クラスタ生成部４０９は、クラスタの中心値Ｃ［ｋ］とｖ［ｎ］との距離が最短となるクラスタｋにヒット件数ｖ［ｎ］を割り当てる（Ｓ１４０７）。尚、クラスタの中心値Ｃ［ｋ］とヒット件数ｖ［ｎ］との距離は、例えば、Ｃ［ｋ］―ｖ［ｎ］の絶対値として求められる。
【００６８】
続いて、クラスタ生成部４０９は、変数ｎをインクリメントしつつ（Ｓ１４０９）、変数ｎがＮとなるまでＳ１４０７の処理を繰り返し実行し（Ｓ１４０８）、全てのヒット件数ｖ［ｎ］（即ち検索条件（検索ワード候補１（４０８１），検索ワード候補２（４０８２），検索ワード候補３（４０８３），・・・））をクラスタの中心値Ｃ［ｋ］との距離が最短となるクラスタに割り当て直す。
【００６９】
次に、クラスタ生成部４０９は、上記Ｓ１４０７の処理の繰り返しの実行中にクラスタの割り当てに変更が生じたか否かを判定する（Ｓ１４１０）。クラスタの割り当てに変更が生じた場合（Ｓ１４１０：Ｙｅｓ）、クラスタ生成部４０９は、Ｓ１４０２〜Ｓ１４１０の処理を再度実行する。一方、上記Ｓ１４０７の処理の繰り返しの実行中に検索条件のクラスタの割り当てに変更が生じていない場合（Ｓ１４１０：Ｎｏ）、クラスタ生成処理Ｓ１４００は終了する。
【００７０】
以上の仕組みによれば、ヒット件数データ４０８に登録されているヒット件数（即ち検索条件（検索ワード候補１（４０８１），検索ワード候補２（４０８２），検索ワード候補３（４０８３），・・・））を、件数の近い検索条件で構成される複数のクラスタに分類することができる。尚、以上では「ｋ−ｍｅａｎｓ法」を用いたが、他のクラスタリング手法を用いてもよい。
【００７１】
＜除外条件判定処理＞
図１５は、データ収集装置１０の除外条件判定部４１０が、所属する検索件数が多いクラスタに属する検索条件を除外することを目的として行う処理（以下、除外条件判定処理Ｓ１５００と称する。）を説明するフローチャートである。データ収集装置１０は、例えば、クラスタ生成処理Ｓ１４００の終了後に除外条件判定処理Ｓ１５００を実行する。以下、同図とともに除外条件判定処理Ｓ１５００について説明する。
【００７２】
同図に示すように、まず除外条件判定部４１０は、クラスタを特定するインデックスである変数ｋに０を代入する（Ｓ１５０１）。
【００７３】
次に、除外条件判定部４１０は、クラスタの中心値Ｃ［ｋ］が変数ｐより大きいか否かを判定する（Ｓ１５０２）。ここで変数ｐは、検索条件を除外するか否かを判定する閾値である。例えば、変数ｐは、全クラスタの中心値Ｃ［ｋ］の平均値をＣｍ、分散Ｃｖ、ユーザがあらかじめ定めたパラメータをαとして次式から求められる。
2016088212.tif 000003
尚、クラスタの内容をユーザが確認してユーザが変数ｐを指定する構成としてもよい。ユーザは変数ｐを調節することで、目的とする情報を取得するのにより適した検索条件を抽出することができる。
【００７４】
クラスタの中心値Ｃ［ｋ］が変数ｐより大きい場合（Ｓ１５０２：Ｙｅｓ）、除外条件判定部４１０は、クラスタｋに含まれる件数ｖ［ｎ］に対応する検索条件を除外対象と判定し、判定結果を検索条件データ４１１の除外対象判定結果４１１５として設定する（Ｓ１５０３）。除外条件判定部４１０は、ｋをインクリメントしつつ（Ｓ１５０５）、Ｓ１５０２〜Ｓ１５０３の処理をｋ＝Ｋとなるまで繰り返し実行する（Ｓ１５０４）。
【００７５】
以上の除外条件判定処理Ｓ１５００により、検索件数が多いクラスタに属する検索条件を除外対象として特定することができる。例えば、ヒット件数データ４０８が図９の内容である場合、（電話，ポーズ）、（テレホン，休止）等の検索条件が除外対象となる。尚、この例では「ポーズ」というワードが多義性を有しており、検索結果に本来収集したい話題とは異なるデータ（ノイズ）が多く含まれているため除外対象とされている。このように除外条件判定処理Ｓ１５００を行うことで、検索結果にユーザが目的としないデータ（ノイズ）が多く含まれてしまうような検索条件を効率よく除外することができる。
【００７６】
図１６は、除外条件選択部４１２が、ユーザに最終的に除外する検索条件を決定させる際に表示装置２０５に表示する画面（以下、除外条件設定画面１６００と称する。）の一例である。同図に示すように、除外条件設定画面１６００は、検索条件の表示欄１６０１、検索条件の除外指定欄１６０２、及び除外実行指示ボタン１６０３を有する。検索条件の表示欄１６０１には、除外条件判定部４１０によって除外対象と判定された検索条件のワード群が表示される。検索条件の除外指定欄１６０２には、ユーザが検索条件表示部１６０１に表示された検索条件を除外するか否かを指定する欄（例えば、チェックボックス）が表示される。除外実行指示ボタン１６０３は、ユーザがデータ収集装置１０に対して検索条件の除外指定欄１６０２にて除外指定した検索条件を除外するための処理の実行を指示するためのユーザインタフェースである。除外条件設定画面１６００を介して行われた除外指定の内容は、図１０の検索条件データ４１１の除外選択結果４１１６に反映される。
【００７７】
ユーザは除外条件設定画面１６００を介して除外条件判定部４１０によって除外判定された検索条件（逆に言えばデータ収集装置１０が提示する検索条件の候補）を容易に確認することができる。またユーザは除外条件設定画面１６００を介して除外する検索条件を自ら決定することができる。
【００７８】
以上に説明したように、本実施形態のデータ収集装置１０は、検索条件を複数のクラスタに分類し、クラスタを単位として検索条件の候補を特定するので、ヒット件数が非常に大きなクラスタに属する検索条件を除外することができ、ユーザが目的としない情報（ノイズ）を含まない検索結果を得ることが可能な検索条件の候補を特定することができる。
【００７９】
＝第２実施例＝
第２実施例は、基本的な構成は第１実施例と同様であるが、検索件数の集計に際し、データの取得元に応じて検索件数に重み付けを行っている。以下、第１実施例と構成が相違する部分を中心として説明する。
【００８０】
図１７は、第２実施例におけるヒット件数データ４０８（以下、ヒット件数データ４０８Ａと称する。）の一例である。同図に示すように、第２実施例におけるヒット件数データ４０８Ａは、前述した検索条件（検索ワード候補１（４０８１）、検索ワード候補２（４０８２）、検索ワード候補３（４０８３），・・・）に加えて、取得元別検索件数１（１７０１），取得元別検索件数２（１７０２），・・・、及び検索スコア１７０３の各項目を有する。
【００８１】
このうち取得元別検索件数１（１７０１），取得元別検索件数２（１７０２），・・・は、収集データ４０２において、検索条件（検索ワード候補１（４０８１）、検索ワード候補２（４０８２）、検索ワード候補３（４０８３），・・・）を含む収集データ４０２の件数を、収集データ４０２の取得元毎に集計したものである。例えば、同図における取得元別検索件数１（１７０１）は、ＳＮＳサーバから取得した収集データ４０２のうち、検索ワード候補１（４０８１）及び検索ワード候補２（４０８２）を含むデータの件数であり、取得元別検索件数２（１７０２）は、ニュース記事を提供するＷｅｂサーバから取得した収集データ４０２のうち、検索ワード候補１（４０８１）及び検索ワード候補２（４０８２）を含むデータの件数である。検索スコア１７０３は、取得元別検索件数１（１７０１），取得元別検索件数２（１７０２），・・・の夫々を、取得元に応じて夫々に重み付けをして加算した値である。
【００８２】
クラスタ生成部４０９は、検索スコア１７０３をヒット件数としてクラスタ生成処理Ｓ１４００を行い、検索条件をクラスタに分類する。このように、収集データ４０２の取得元に応じて重みを設定して各検索条件のヒット件数を調整し、その上で検索条件をクラスタに分類することで、取得元の性質等を考慮しつつ、検索条件の候補を得ることができる。例えば、収集データ４０２の取得元が提供する情報の信頼性（信憑性）が高い程、取得元に高い重みを設定することで、信頼性（信憑性）の高い情報を収集するといったことが可能になる。
【００８３】
＝第３実施例＝
第３実施例では、複数の検索条件に対して、定められた時間範囲毎に検索条件にヒットする収集データ４０２の件数を集計し、これらの件数の推移の類似度を算出し、求めた類似度に基づき検索条件を複数のクラスタに分類する。
【００８４】
第３実施例において、データ検索部４０７は、ヒット件数データ４０８に格納されている検索条件（検索ワード候補１（４０８１）、検索ワード候補２（４０８２）、検索ワード候補３（４０８３），・・・）を読み込み、各検索条件に対し、定められた時間範囲毎に検索条件にヒットする収集データ４０２の件数を集計する。例えば、定められた時間範囲を年単位とした場合、指定された検索条件に対して、２０１１年に投稿された収集データ４０２のうち検索条件にヒットする収集データ４０２の件数、２０１２年に投稿された収集データ４０２のうち検索条件にヒットする収集データ４０２の件数、というように、各年度において検索条件にヒットする収集データ４０２の件数を夫々集計する。第３実施例におけるヒット件数データ４０８には、定められた時間範囲毎に検索条件にヒットする収集データ４０２の件数が格納される。
【００８５】
第３実施例のクラスタ生成部４０９は、２つの検索条件について、夫々にヒットする収集データ４０２の件数の推移の類似度を測定する。例えば、クラスタ生成部４０９は、検索条件ａと検索条件ｂの夫々にヒットする収集データ４０２の件数の推移の類似度を次式から求める。
2016088212.tif 000004
上式において、ａ（ｔ）は、時間範囲ｔにおいて検索条件ａに合致する収集データ４０２の件数であり、ｂ（ｔ）は時間範囲ｔにおいて検索条件ｂに合致する収集データ４０２の件数であり、ｋは時間ずれに対応するパラメータである。ｋは、例えば、ユーザが予め指定してもよいし、ヒット件数データ４０８から推定してもよい。
【００８６】
図１８に第３実施例のクラスタ生成部４０９が行う類似度の判定例を示す。同図において、符号１８０１で示す枠内は、類似度が大きい検索条件の組の例であり、符号１８０２で示す枠内は、類似度が小さい検索条件の組の例である。符号１８０１で示す枠内の検索条件の組では、商品Ａという商品名に、「東京」、「大阪」という異なる地名を加えた検索条件間の類似度が大きいことを示している。一方、符号１８０２で示す枠内の検索条件の組では、商品Ｂという商品名に、「東京」、「大阪」という異なる地名を加えた検索条件間の類似度が小さいことを示している。
【００８７】
この例の場合、例えば、類似度が予め定められた閾値を超えている検索条件の組については同じクラスタに所属させ、類似度が上記閾値未満の検索条件の組については異なるクラスタに所属させるようにする。このように、検索条件の類似度に応じて検索条件をクラスタに分類することで、各検索条件のヒット件数の時間変化の類似性を考慮しつつ検索条件をクラスタに分類することができ、ヒット件数の時間変化の類似性を考慮した上で検索条件を決定することができる。尚、ヒット件数の時間変化の類似性を判定することについて他の効果として、例えば、検索条件ごとのヒット件数の推移の類似度に基づき、特定の話題について情報の伝播が発生しているか否かを判定することができる。
【００８８】
ところで、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００８９】
上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサが夫々の機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ等の記録装置や、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【００９０】
制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００９１】
１  データ収集システム、５  通信ネットワーク、１０  データ収集装置、２０  サーバ装置、１００  情報処理装置、４０１  データ取得部、４０２  収集データ、４０３  設定検索ワード、４０４  検索条件生成部、４０５  同義語辞書、４０６  対義語辞書
４０７  データ検索部、４０８  ヒット件数データ、４０９  クラスタ生成部、４１０  除外条件判定部、４１１  検索条件データ、４１２  除外条件選択部、Ｓ１１００  検索条件生成処理、Ｓ１２００  収集データ取得処理、Ｓ１３００  検索処理、Ｓ１４００  クラスタ生成処理、Ｓ１５００  除外条件判定処理、Ｓ１６００  除外条件設定画面
【図１】
2016088212.tif 000005
【図２】
2016088212.tif 000006
【図３】
2016088212.tif 000007
【図４】
2016088212.tif 000008
【図５】
2016088212.tif 000009
【図６】
2016088212.tif 000010
【図７】
2016088212.tif 000011
【図８】
2016088212.tif 000012
【図９】
2016088212.tif 000013
【図１０】
2016088212.tif 000014
【図１１】
2016088212.tif 000015
【図１２】
2016088212.tif 000016
【図１３】
2016088212.tif 000017
【図１４】
2016088212.tif 000018
【図１５】
2016088212.tif 000019
【図１６】
2016088212.tif 000020
【図１７】
2016088212.tif 000021
【図１８】
2016088212.tif 000022
【国際調査報告】
2016088212.tif 000023
2016088212.tif 000024
2016088212.tif 000025
2016088212.tif 000026