(57)【特許請求の範囲】
【請求項１】
抽出部が、公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出し、
設定部が、前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定し、
第一形成部が、新たな公開情報について、前記重複キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成し、
特定部が、前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定し、
第二形成部が、特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する、
処理をコンピュータを用いて実行することを特徴とする群形成方法。
【請求項２】
前記設定部は、
前記重複キーワードの出現傾向に基づいて前記ルールを決定する
ことを特徴とする請求項１記載の群形成方法。
【請求項３】
前記設定部は、
前記重複キーワード毎に、各属性の出現傾向を表すポアソン分布を求め、該ポアソン分布から他の属性と比べて特徴的な出現傾向を示す属性に対して、該特徴的な出現傾向を示す出現頻度の下限値を前記ルールとする
ことを特徴とする請求項２記載の群形成方法。
【請求項４】
公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出する抽出部と、
前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定する設定部と、
新たな公開情報について、前記重複キーワードに含まれる各キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成する第一形成部と、
前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定する特定部と、
特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する第二形成部と、
を有する特徴とする群形成装置。
【請求項５】
公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出し、
前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定設定し、
新たな公開情報について、前記重複キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成し、
前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定し、
特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する、
処理をコンピュータに実行させることを特徴とする群形成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、群形成方法、群形成装置、及び群形成プログラムに関する。
【背景技術】
【０００２】
近年、学生、主婦、有職者等の様々な層の多くのユーザが、日常生活で感じたこと、ものごとに対する考え方、情報交換等でＷｅｂ（World Wide Web）を利用している。Ｗｅｂを利用するユーザ数の多さから、商品開発のためにＷｅｂを用いて市場の動向等を調査する場合がある。
【０００３】
ウェブページのテキスト文書等からユーザの書いた評判情報を抽出して分析する技術、ＳＮＳサイトサーバから得られる投稿者間の交流関係を用いて、できる限り正確なプロフィール情報を推定する技術等が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２１９８８０号公報
【特許文献２】特開２０１３−１９６０７０号公報
【特許文献３】特開２００９−１１６４６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
Ｗｅｂのユーザが自発的に意見等を公開する例として、ブログ（Blog：Web log）がある。Ｗｅｂ上のブログの内容が商品開発等の調査に利用される場合がある。商品開発の調査では、予め定めた属性毎に適切な人数をサンプリングして母集団を作成し、この母集団に属するユーザのブログを解析することで、ユーザの生活者としての実態を把握する。
【０００６】
ユーザは、学生から有職者に変化して行くように、時間の経過によって母集団におけるユーザの属性が変化する。また、ユーザがブログの更新を停止、又は、ブログを中止することもある。
【０００７】
一方、市場における商品の動向を調査する場合、属性の割合を一定に保たなければ過去の調査結果との比較を精度良く行えない。従って、上述したような変化に対応するため、母集団における属性の割合を一定に保つためには、属性が変化したユーザを母集団から除き、同じ属性の新たなユーザを母集団に補充することになる。
【０００８】
しかしながら、上述した調査時にユーザの抽出を効果的に行う従来技術では、時間経過におけるユーザの属性変化に応じて、母集団における属性割合を一定に保つことは困難である。
【０００９】
したがって、１つの側面では、本発明は、調査対象の母集団における属性比率を考慮した集団形成を行うことを目的とする。
【課題を解決するための手段】
【００１０】
一態様によれば、抽出部が、公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出し、設定部が、前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定し、第一形成部が、新たな公開情報について、前記重複キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成し、特定部が、前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定し、第二形成部が、特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する、処理をコンピュータを用いて実行することを特徴とする群形成方法が提供される。
【００１１】
また、上記課題を解決するための手段として、上記方法を行う装置、コンピュータに上記処理を実行させるためのプログラム、及び、そのプログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【００１２】
調査対象の母集団における属性比率を考慮した集団形成を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】本実施例に係るシステム構成例を示す図である。
【図２】データ収集装置のハードウェア構成を示す図である。
【図３】参照分布の例を示す図である。
【図４】調査結果の一例を示す図である。
【図５】調査結果の他の例を示す図である。
【図６】データ収集装置の機能構成例を示す図である。
【図７】事前準備されるＤＢ及びテーブルのデータ例を示す図（その１）である。
【図８】事前準備されるＤＢ及びテーブルのデータ例を示す図（その２）である。
【図９】事前準備されるＤＢ及びテーブルのデータ例を示す図（その３）である。
【図１０】事前準備されるＤＢ及びテーブルのデータ例を示す図（その４）である。
【図１１】母集団からランダムに選択したユーザ集合のデータ例を示す図である。
【図１２】検索キーワードリストのデータ構成例を示す図である。
【図１３】属性値対キーワードテーブルのデータ構成例を示す図である。
【図１４】新規ユーザ候補集合のデータ構成例を示す図である。
【図１５】ユーザ毎キーワードテーブルのデータ構成例を示す図である。
【図１６】ユーザ毎推定属性値テーブルのデータ構成例を示す図である。
【図１７】新規ユーザリストのデータ例を示す図である。
【図１８】新規ユーザ補充処理を説明するためのフローチャート図（その１）である。
【図１９】新規ユーザ補充処理を説明するためのフローチャート図（その２）である。
【図２０】新規ユーザ補充処理を説明するためのフローチャート図（その３）である。
【図２１】新規ユーザ補充処理を説明するためのフローチャート図（その４）である。
【図２２】ランダムユーザ集合の非調整属性スコア分布例を示す図である。
【図２３】母集団と不足の職業属性値の非調整属性スコア分布例を示す図である。
【図２４】ルール獲得処理例を説明するための図である。
【図２５】属性値対キーワードテーブルの他のデータ構成例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１５】
図１は、本実施例に係るシステム構成例を示す図である。図１において、システム１０００は、データ収集装置１００と、１以上のブログサーバ３と、ブロガー端末９とを有する。
【００１６】
データ収集装置１００は、ネットワークを介して１以上のブログサーバ３に接続し、ブログ３ａを検索して収集する。データ収集装置１００は、ブログ３ａの収集において信頼性の高いデータ集合を提供する。
【００１７】
データ収集装置１００によって提供されるデータ集合は、例えば、市場におけるユーザの商品に対する嗜好等の商品開発に参考となる情報を抽出することを目的とした集合体である。
【００１８】
各ブログサーバ３は、ブログ用の種々の管理機能を有し、ブロガー（ユーザ）にブログ用の記憶領域を提供するサーバである。
【００１９】
ブロガー端末９は、ブロガーによって利用される端末であり、ブログサーバ３のサービスを利用してブログ３ａを作成、更新、削除等を行う。
【００２０】
図２は、データ収集装置のハードウェア構成を示す図である。図２において、データ収集装置１００は、コンピュータによって制御される端末であって、ＣＰＵ（Central Processing Unit）１１と、主記憶装置１２と、補助記憶装置１３と、入力装置１４と、表示装置１５と、通信Ｉ／Ｆ（インターフェース）１７と、ドライブ装置１８とを有し、バスＢに接続される。
【００２１】
ＣＰＵ１１は、主記憶装置１２に格納されたプログラムに従ってデータ収集装置１００を制御する。主記憶装置１２には、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を記憶又は一時保存する。
【００２２】
補助記憶装置１３には、ＨＤＤ（Hard Disk Drive）等が用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置１３に格納されているプログラムの一部が主記憶装置１２にロードされ、ＣＰＵ１１に実行されることによって、各種処理が実現される。記憶部１３０は、主記憶装置１２及び／又は補助記憶装置１３を有する。
【００２３】
入力装置１４は、マウス、キーボード等を有し、ユーザがデータ収集装置１００による処理に必要な各種情報を入力するために用いられる。表示装置１５は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。通信Ｉ／Ｆ１７は、有線又は無線などのネットワークを通じて通信を行う。通信Ｉ／Ｆ１７による通信は無線又は有線に限定されるものではない。 
データ収集装置１００によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体１９によってデータ収集装置１００に提供される。
【００２４】
ドライブ装置１８は、ドライブ装置１８にセットされた記憶媒体１９（例えば、ＣＤ−ＲＯＭ等）とデータ収集装置１００とのインターフェースを行う。
【００２５】
また、記憶媒体１９に、後述される本実施の形態に係る種々の処理を実現するプログラムを格納し、この記憶媒体１９に格納されたプログラムは、ドライブ装置１８を介してデータ収集装置１００にインストールされる。インストールされたプログラムは、データ収集装置１００により実行可能となる。
【００２６】
尚、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００２７】
市場調査等にブログを利用するために、まず、ユーザをサンプリングした母集団を適切に作成する。即ち、母集団におけるユーザの属性の割合が、国内の人口分布等のデータで示される属性の割合と同様になるように、母集団を作成する。例えば、性別と職業とを属性とする人口分布を参照し、各属性における割合が同じになるようなサンプル数を決定する。以下、母集団の作成時に参照されるサンプル数の分布を「参照分布」と言う。
【００２８】
図３は、参照分布の例を示す図である。図３において、参照分布１は、性別と職業とを属性としたマトリクスでサンプル数を示したテーブルである。性別の属性値は、「男性」又は「女性」である。職業の属性値は、「中高生」、「大学生」、「有職者」、「主婦」、「シニア」、「その他」等である。例えば、参照分布１では、男女の比率、職業の比率等が略一致するように設定されている。この参照分布１に基づいて、母集団が作成される。
【００２９】
本実施例では、参照分布１に基づいて、同様の属性の割合で母集団を作成し、時間経過に伴い母集団から除外されるユーザが出現した場合、そのユーザと同じ属性値を持つ可能性の高いユーザを見つけて、母集団を補充する。
【００３０】
中高生だったユーザが大学生になる等により、ユーザの属性が変化する。また、ブログ更新を停止するユーザも存在する。ユーザの属性は、ユーザの投稿したブログ記事に対してモデルを適用することで推定できる。このようなモデルは、文書分類技術の応用で作成可能である。
【００３１】
モデルは、ブログ記事中に書かれた語句とその頻度とに基づいて、ユーザを分類するものである。このモデルを用いることで、「部活」という語句が書かれていれば中高生である確率を上昇させる。この手法では、各ユーザについて複数のブログ記事を収集する必要がある。
【００３２】
また、生活者の実態を継続的に観察するためにユーザの入れ替わりで、全く別の傾向がでるようになってしまうと生活者の実態が急に変わったように誤検知してしまう。生活者の実態を精度良く調査するには、補充するユーザは、母集団から除いたユーザと同じような傾向を持った投稿をするユーザであることが望ましい。
【００３３】
ユーザを選択する方法としてランダムサンプリングがある。ランダムサンプリングの一例として、以下の手順で行うことが考えられる。
１．サンプリング変更前における、各属性値のユーザ集合における語句の出現頻度分布Ｐallを求める。
２．ランダムに選択した新たなユーザについて、投稿を収集する。
３．ユーザの語句の出現分布Ｐuと、推定属性値とを求める。
４．ＰallとＰuの類似度が閾値以上、且つ、推定属性値が不足セルに一致していれば、そのユーザを新規ユーザとして採用する。
５．上記２．から４．を繰り返し、不足ユーザ数分だけ新規ユーザの採用が済めば終了する。
【００３４】
この例では、ランダムに選択したユーザが採用される確率が低く、収集回数が多くなるために、収集回数制限によって十分なユーザ数を獲得できない可能性がある。このようにランダムサンプリングでは補充したい属性値（例えば、中高生）のユーザだけを収集できず、非効率である。
【００３５】
本実施例に係るデータ収集装置１００では、収集対象のユーザをランダムに選択するのではなく、補充したいユーザに特徴的なキーワードを含むブログ記事を一度以上投稿したユーザのみを補充の対象とする。
【００３６】
キーワードをランダムに設定した場合、特定の話題のブログ記事ばかりを投稿しているようなユーザが収集されてしまい、結果として生活者の実態を反映するような母集団にならなくなってしまう。
【００３７】
そのため、本実施例では、収集対象ユーザの投稿内容の傾向が時間経過により偏る「バイアス」を回避するようにキーワードを設定する。キーワードは、以下の（１）及び（２）を満たすように設定する。
（１）ユーザ毎に前述した参照分布１の属性を推定する推定モデルにおいて、獲得したい属性値（例えば、中高生）に分類しやすい重要語句を上位から順にキーワードとして追加していく。
【００３８】
上記（１）により、ユーザの推定結果が獲得したい属性値に一致する可能性が高まり、収集回数を抑えられる。
（２）投稿内容傾向のバイアスを、サンプリング数を調整しない属性、即ち、参照分布１で示した性別、職業等以外の属性（以下、「非調整属性」と言う。）の分布により定義し、サンプリング見直し前後でその差が小さくなるようにキーワードを設定する。
【００３９】
調整属性は、性別、職業等の調査対象となる属性であり、非調整属性は調査対象としない属性である。非調整属性としては、例えば、趣味属性等がある。趣味属性は、グルメ、映画等５０以上存在する。その属性値が他のデモグラフィックな属性に比べて多く、数の調整が困難である。
【００４０】
生活者の実態を抽出するシステムにおいては趣味属性が有用であるが、対象のシステムでは、他の属性を用いて同様の解決を図ることも可能である。他の属性の例として、防災関連の調査を行う場合に、東京都、大阪府等の居住地を属性としても良い。
【００４１】
経験的に、趣味属性に注目することで投稿内容傾向が類似したユーザを抽出できることが予備実験により明らかになっている。趣味属性をキーワードとして用いることで、ブログサーバ３から調整属性を有する新たなユーザを検索できると考えられる。本実施例では、非調整属性の例として、趣味属性を用いて説明する。
【００４２】
趣味属性の中には、複数の調整属性のユーザに重複して存在する場合がある。複数の調整属性に対応付けられる趣味属性をキーワードとして用いた場合には、ユーザを補充したい調整属性に対して、精度良く新たなユーザを検索できない可能性がある。以下、趣味属性をキーワードと言い、複数の調整属性に対応付けられる趣味属性を重複キーワードと言う場合がある。
【００４３】
発明者等は、このような重複キーワードに関して、２つの調整属性との間においてその出現傾向の差異について調査を行った。発明者等は、各調整属性におけるユーザ毎に、発明者等が経験的に知り得た重複キーワードが出現するブログ記事の総数をカウントし、ブログ記事数毎にユーザ数の分布を調査した。以下に、２つの重複キーワードで行った調査結果を図４及び図５で示す。図４及び図５での説明では、２つの重複キーワードを夫々「ＸＸＸ」及び「ＹＹＹ」として表す。
【００４４】
図４は、調査結果の一例を示す図である。図４に示す調査結果１ａは、調整属性の「女子中高生」と「主婦」とに共通する重複キーワード「ＸＸＸ」に関して出現傾向を調査した結果を示している。
【００４５】
調査結果１ａでは、ブログ記事数毎に、各調整属性のユーザ数と、比率とを示している。重複キーワード「ＸＸＸ」が１つのブログ記事に出現した、「女子中高生」の数は「１９２０」であり、「主婦」の数は「１６８５」であることを示している。従って、ブログ記事数「１」の場合、「女子中高生」の比率は、「０．５３３」（＝１９２０÷（１９２０＋１６８５））である。ブログ記事数「１」では、「女子中高生」と「主婦」とで略同数を示す。
【００４６】
しかしながら、ブログ記事数「６」以上では、「女子中高生」の比率は、凡そ「０．８」である。従って、同一ユーザのブログ記事において、重複キーワード「ＸＸＸ」が出現するブログ記事数が「６」以上存在する場合、そのユーザは「女子中高生」であると判断できる。
【００４７】
特に、ブログ記事数「６」から「１２」の「女子中高生」の比率は、一様に「０．８」を超えており、この範囲において、「女子中高生」のユーザを精度良く特定可能と判断できる。
【００４８】
図５は、調査結果の他の例を示す図である。図５に示す調査結果１ｂは、調整属性の「男性・既婚・シニア」と「女性・既婚・シニア」とに共通する重複キーワード「ＹＹＹ」に関して出現傾向を調査した結果を示している。
【００４９】
調査結果１ｂでは、ブログ記事数毎に、各調整属性のユーザ数と、比率とを示している。重複キーワード「ＹＹＹ」が１つのブログ記事に出現した、「男性・既婚・シニア」の数は「３３９６」であり、「女性・既婚・シニア」の数は「２３３１」であることを示している。従って、ブログ記事数「１」の場合、「男性・既婚・シニア」の比率は、「０．５９３」（＝３３９６÷（３３９６＋２３３１））である。ブログ記事数「１」では、「男性・既婚・シニア」と「女性・既婚・シニア」とで略同数を示す。
【００５０】
しかしながら、ブログ記事数「１１」以上では、「男性・既婚・シニア」の比率は凡そ「０．８」以上を示し、更に、ブログ記事数「１７」以上では、その比率は「１．０」である。従って、同一ユーザのブログ記事において、重複キーワード「ＹＹＹ」が出現するブログ記事数が「１１」以上に出現する場合には、そのユーザは「男性・既婚・シニア」であると判断できる。
【００５１】
発明者等は、２以上の異なる調整属性のユーザのブログ３ａについて、重複キーワードついて調査を行い、重複キーワードの出現傾向は、調整属性毎に異なることを見出した。本実施例において、調整属性毎のユーザのブログ３ａの収集に際し、重複キーワードの使用を可能にしたデータ収集装置１００を提供する。
【００５２】
図６は、データ収集装置の機能構成例を示す図である。図６中、実線は入力を示し、破線は出力を示す。以下の図においても同様である。
【００５３】
図６において、データ収集装置１００は、主に、キーワード特定部４０Ａと、新規ユーザ補充部４０Ｂとを有する。キーワード特定部４０Ａと、新規ユーザ補充部４０Ｂとは、データ収集装置１００にインストールされたプログラムが、データ収集装置１００のＣＰＵ１１に実行させる処理により実現される。キーワード特定部４０Ａと、新規ユーザ補充部４０Ｂとは一つのデータ収集装置１００に実装されてもよいし、新規ユーザ補充部４０Ｂは、別のコンピュータ装置に実装されてもよい。
【００５４】
記憶部１３０の事前準備領域３０には、母集団３１、ブログＤＢ３２、スコアテーブル３３、職業推定モデル３４、キーワード対ユーザテーブル３５、属性判定済み記事ＤＢ３６等が記憶されている。更に、記憶部１３０は、第１ランダムユーザ集合５１、第２ランダムユーザ集合５２、許容誤差閾値５３、検索キーワードリスト５４、属性値対キーワードテーブル５４−２、新規ユーザ候補リスト５５、ユーザ毎キーワードテーブル５６、ユーザ毎推定属性値テーブル５７、新規ユーザリスト５８等を記憶する。
【００５５】
キーワード特定部４０Ａは、補充するユーザの調整属性を精度良く検索するキーワードを特定する処理部であり、基本データ収集部４１と、ユーザ集合作成部４２と、スコア分布閾値計算部４３と、キーワードリスト作成部４４と、頻度閾値計算部４４−２とを有する。
【００５６】
基本データ収集部４１は、参照分布１に基づいて、属性の割合に応じて、ブログサーバ３からユーザを検索して母集団３１を作成する。また、基本データ収集部４１は、母集団３１に含まれる各ユーザのブログ３ａをブログサーバ３から取得して、ブログＤＢ３２に格納する。
【００５７】
ユーザ集合作成部４２は、基本データ収集部４１によって取得した母集団３１からランダムに２つのユーザ集合を作成する。各々のユーザ集合に含まれるユーザを識別するユーザＩＤが、第１ランダムユーザ集合５１又は第２ランダムユーザ集合５２のいずれかに記録される。
【００５８】
スコア分布閾値計算部４３は、ユーザ集合作成部４２が作成した２つのユーザ集合に対して、趣味属性毎にスコア分布を計算し、２つのスコア分布の比較によって許容誤差閾値５３を求める。スコア分布を計算する際には、スコアテーブル３３が参照される。
【００５９】
キーワードリスト作成部４４は、各属性に属する確からしさを高める１以上のキーワードを設定して、趣味属性値のスコア分布が許容誤差閾値５３以内となるキーワードのリストを作成する。
【００６０】
ある属性に属する確からしさとは、例えば、「中高生らしさ」等を意味する。キーワードを複数にすることによって、ある属性に属する確からしさを高めることができる。ある属性に属する確からしさは、職業推定モデル３４を参照して判断する。趣味属性のスコア分布の計算では、キーワード対ユーザテーブル３５が参照される。以下、ある属性に属する確からしさを、単に、「属性らしさ」という。
【００６１】
キーワードリスト作成部４４によって、ブログ３ａのブログ記事内容を検索するためのキーワードを示す検索キーワードリスト５４が作成される。検索キーワードリスト５４では、属性値毎に複数のキーワードが夫々の属性らしさを示すスコアと共に示されている。
【００６２】
頻度閾値計算部４４−２は、検索キーワードリスト５４を参照して、属性値毎に各キーワードがブログ記事内で記述される頻度を求め、複数の属性値に重複するキーワード（重複キーワード）を用いた際の有効性を判定する。
【００６３】
属性値毎に、キーワードと、ブログ記事内に記述される頻度とを示した属性値対キーワードテーブル５４−２が作成される。頻度閾値計算部４４−２による有効性の判定結果に基づいて、属性値対キーワードテーブル５４−２では、重複キーワードに対しては、該当する複数の属性値のうち１の属性値のみに頻度が示される。有効性が判定されなかった１以上の他の属性値に対しては、頻度は設定されない。即ち、これら他の属性値のユーザを補充する場合には、頻度が未設定のキーワードは使用しないことを示す。
【００６４】
新規ユーザ補充部４０Ｂは、キーワード特定部４０Ａによって特定されたキーワードを用いて、新規にユーザを補充する処理部であり、収集部４５と、属性推定部４６と、サンプリング部４７とを有する。
【００６５】
収集部４５は、属性値対キーワードテーブル５４−２のルールに従って、不足したユーザと同様の属性を有するユーザによるブログ３ａのブログ記事をブログサーバ３から検索して、ブログ３ａを収集する。収集部４５は、収集したブログ３ａのユーザを新規ユーザ候補とし、そのユーザＩＤを示す新規ユーザ候補集合５５を記憶部１３０に格納する。
【００６６】
また、収集部４５は、新規ユーザ候補毎に属性値対キーワードテーブル５４−２のキーワードが出現したブログ記事数をカウントする。新規ユーザ候補毎に検索に使用したキーワードの出現回数を記録したユーザ毎キーワードテーブル５６が記憶部１３０に格納される。
【００６７】
属性推定部４６は、収集したブログ３ａのブログ記事に職業推定モデル３４を適用して各ユーザの職業を推定する。ユーザ毎に、推定した属性値を対応付けたユーザ毎推定属性値テーブル５７が記憶部１３０に格納される。
【００６８】
収集部４５が補充のためにブログ記事を収集する際には、検索キーワードリスト５４の属性らしさを示すスコアの高い順にブログ３ａを収集することが望ましい。その一方で、高いスコアであっても、キーワードが複数の属性値に属する場合には、目的のユーザのブログ３ａを精度良く収集できない可能性がある。
【００６９】
一例として、キーワード「授業」は、中学生、大学生等に対してその属性らしさを表現するのに重要な語句である。調整属性が「中高生」である場合に、キーワード「授業」を用いてブログ３ａを収集すると、大学生等のブログ３ａがノイズとして混入すると考えられる。
【００７０】
調整属性以外の属性のブログ３ａが多く収集されると、補充したい調整属性のユーザ数を得られない場合がある。この場合には、収集を多く試行することになり、非効率な収集が行われる。収集が非効率に行われた場合には、ブログ３ａのブログ記事に対する収集回数制限によって、結果、十分なユーザ数を獲得できない場合がある。
【００７１】
また、補充するユーザ数に達するまで、属性らしさのスコアの高い順にキーワードを替えながら収集を行うが、スコアが低くなれば、属性らしさを表現するのに適切でないキーワードとなる可能性があり、結果、非効率な収集が行われてしまう。
【００７２】
上述した非効率な収集を考慮して、複数の属性に属するキーワードの使用を抑止することが簡潔な方法であるが、属性らしさを表す重要な語句の数が削減されてしまうといった不都合さがある。
【００７３】
本実施例では、頻度閾値計算部４４−２により、ユーザを補充する目的において、キーワードの有効性を判定する。調整属性において、他の属性と重複するキーワードであっても、頻度閾値を条件とすることで使用可能とし、それにより効率的に精度良く調整属性のユーザ数を得られるようにする。
【００７４】
次に、記憶部１３０に格納されるテーブル等について説明する。図７から図１０は、事前準備されるＤＢ及びテーブルのデータ例を示す図である。図７において、母集団３１に含まれるユーザに関するデータ構成例を示す。
【００７５】
母集団３１は、ユーザＩＤ毎に職業を対応付けたテーブルである。ユーザＩＤは、母集団３１内でユーザを一意に特定するための識別子であり、後述されるＤＢ及びテーブルにおいても同様である。職業は、ブログ３ａのブログ記事から推定したユーザの職業である。職業の属性値として、図３の参照分布１の職業の属性値が用いられる。
【００７６】
ブログＤＢ３２は、ユーザＩＤ毎にブログ３ａのブログ記事（記事データ）を対応付けたテーブルである。ブログ記事には、ブログサーバ３から取得したブログ３ａのページを記憶する、或いは、ブログ３ａを記憶した領域へのアドレスを示す。
【００７７】
ブログＤＢ３２で管理されるブログ記事は、ブログ３ａのページ単位であることが望ましい。ユーザによっては、複数のブログを運営している場合がある。その場合は、ブログ３ａ毎に、抽出したページが記憶される。
【００７８】
スコアテーブル３３は、ユーザＩＤ毎に趣味スコアを対応付けたテーブルである。趣味属性値は、「グルメ」、「映画」、・・・「野球」等であり、ユーザＩＤ毎に各趣味属性値に対して趣味スコアが示されている。趣味スコアは、１に近づくほど興味があることを示し、０に近づくほど興味がないことを示す。
【００７９】
例えば、ユーザＩＤ「00003」のユーザは、「映画」の趣味スコア「１．０」から「映画」に興味を持っていることが明らかであり、ユーザＩＤ「00002」のユーザは、「グルメ」の趣味スコア「０．０」から「グルメ」に全く興味がないことが分かる。
【００８０】
図８は、職業推定モデルのデータ構成例を示す図である。図８において、職業推定モデル３４は、キーワード毎に職業スコアを対応付けたテーブルである。職業属性値は、参照分布１の属性値に相当し、「中高生」、・・・「その他」であり、キーワード毎に各職業属性値に対して職業スコアが示されている。職業スコアは、１に近づくほど職業属性値の可能性が高いことを示し、０に近づくほど職業値と相関がない、−１に近付くほど職業値の可能性が低く他の職業値である可能性が高いことを示す。
【００８１】
例えば、キーワード「部活」がブログ記事に出現する場合は、その職業スコアから、ブログ３ａの作成者（ブロガー）であるユーザが中高生である可能性を「０．５」ポイント、その他の職業である可能性を「０．０１」ポイント上昇させることを示している。
【００８２】
図９は、キーワード対ユーザテーブルのデータ構成例を示す図である。図９において、キーワード対ユーザテーブル３５は、キーワード毎に、ユーザＩＤのリストを対応付けたテーブルである。キーワードの項目には、検索時に用いた複数のキーワードが一覧されている。各キーワードに対応付けて、そのキーワードが出現したブログ３ａのユーザのＩＤが示されている。例えば、キーワード「部活」の場合、ユーザＩＤ「00002」、「00383」等が対応付けられる。
【００８３】
図１０は、属性判定済み記事ＤＢのデータ構成例を示す図である。図１０において、属性判定済み記事ＤＢ３６は、属性が既に判定されているユーザ毎のブログ記事を管理するデータベースである。ユーザＩＤ毎に、職業、ブログ記事が対応付けられている。属性判定済み記事ＤＢ３６は、母集団３１とブログＤＢ３２の夫々にユーザＩＤで関連付けされ、母集団３１とブログＤＢ３２から得られるデータを用いて予め作成される。
【００８４】
従って、図７のデータ例より、ユーザＩＤ「00001」に対して、母集団３２から得られる職業「中高生」、ブログＤＢ３２から得られるブログ記事「ブログaa1_page1、ブログaa1_page2、・・・、ブログaa2_page1、・・・」が対応付けられる。
【００８５】
ユーザＩＤ「00002」に対して、母集団３２から得られる職業「有職者」、ブログＤＢ３２から得られるブログ記事「ブログbb1_page1、ブログbb1_page2、・・・」が対応付けられる。また、ユーザＩＤ「00003」に対して、母集団３１から得られる職業「中高生」、ブログＤＢ３２から得られるブログ記事「ブログcc1_page1、ブログcc1_page2、・・・」が対応付けられる。
【００８６】
図１１は、母集団からランダムに選択したユーザ集合のデータ例を示す図である。図１１において、ユーザ集合作成部４２によって作成された第１ランダムユーザ集合５１及び第２ランダムユーザ集合５２には、夫々、母集団３１からランダムに選択したユーザＩＤが記録されている。
【００８７】
第１ランダムユーザ集合５１及び第２ランダムユーザ集合５２と、ユーザ毎の非調整属性のスコアテーブル３３とは、ユーザＩＤで関連付けが可能である。ユーザＩＤに対応する各趣味属性値の趣味スコア（スコア分布）は、スコアテーブル３３から取得できる。
【００８８】
第１ランダムユーザ集合５１及び第２ランダムユーザ集合５２は、許容誤差閾値５３を算出するために、スコア分布閾値計算部４３によって使用される。
【００８９】
図１２は、検索キーワードリストのデータ構成例を示す図である。図１２において、検索キーワードリスト５４は、属性値毎に、１以上のキーワードを対応付けたリストである。
【００９０】
図１２の例では、属性値「中高生」に対して、中高生に特徴的なキーワードとして、「部活」、「授業」、「学校」、及び「バイト」が一覧されている。また、属性値「大学生」に対して、大学生に特徴的なキーワードとして、「大学」、「サークル」、「授業」、及び「弁当」が一覧されている。更に、属性値「有職者」に対して、有職者に特徴的なキーワードとして、「職場」、「弁当」、「通勤」、及び「出張」が一覧されている。そして、属性値「主婦」に対して、主婦に特徴的なキーワードとして、「旦那」、「幼稚園」、「弁当」、及び「夕飯」が一覧されている。
【００９１】
また、キーワード「授業」は、属性値「中高生」と「大学生」とで重複している。また、キーワード「弁当」は、属性値「大学生」、「有職者」、及び「主婦」とで重複している。
【００９２】
図１３は、属性値対キーワードテーブルのデータ構成例を示す図である。図１３において、属性値対キーワードテーブル５４−２は、検索キーワードリスト５４に対して、ルールの項目が加えられたテーブルである。
【００９３】
ルールは、キーワードが出現する回数で抽出する条件を示している。図１３に示す例において、重複のないキーワードには「１以上」が設定されている。重複キーワードに対しては、属性値によってルールが設定されている場合と空欄の場合とが存在する。
【００９４】
重複キーワード「授業」に対して、属性値「中高生」では「７以上」がルールとして示されている。一方、属性値「大学生」では空欄となっている。即ち、「大学生」が調整属性となる場合、「授業」は大学生のブログ３ａのブログ記事内容に特徴的な言葉であるが、ユーザを抽出するためのキーワードとしては使用されない。
【００９５】
重複キーワード「弁当」に対して、属性値「主婦」では「３以上」がルールとして示されている。一方、属性値「大学生」及び「有職者」では空欄となっている。即ち、「大学生」又は「有職者」が調整属性となる場合、「弁当」は大学生のブログ３ａのブログ記事内容に特徴的な言葉であるが、ユーザを抽出するためのキーワードとしては使用されない。
【００９６】
図１４は、新規ユーザ候補リストのデータ構成例を示す図である。図１４において、新規ユーザ候補リスト５５は、収集部４５によって収集されたブログ３ａのユーザのＩＤを示すリストである。
【００９７】
図１５は、ユーザ毎キーワードテーブルのデータ構成例を示す図である。図１５において、ユーザ毎キーワードテーブル５６は、新規ユーザ候補リスト５５のユーザＩＤ毎に、ブログ記事に出現したキーワードと、出現回数とを対応付けたテーブルであり、ユーザＩＤ、キーワード等の項目を有する。
【００９８】
キーワードには、ユーザの最新１０ブログ記事を収集した結果が示され、出現したキーワードと、キーワードが出現したブログ記事の数を示す出現回数とが示される。
【００９９】
例えば、ユーザＩＤ「00002」に対して、キーワード「部活x3, 授業x8, 友達x2, ゲームx5, ・・・」が示される。キーワード「部活」が３つのブログ記事に出現し、キーワード「友達」が２つのブログ記事に出現し、キーワード「ゲーム」が５つのブログ記事に出現した等が示されている。
【０１００】
図１６は、ユーザ毎推定属性値テーブルのデータ構成例を示す図である。図１６において、ユーザ毎推定属性値テーブル５７は、新規ユーザ候補リスト５５で示されるユーザＩＤ毎に、各職業属性値の推定値と、推定属性とを対応付けたテーブルである。
【０１０１】
職業属性値は、図３の参照分布１で示される「中高生」、・・・「その他」である。各職業属性値に対して、属性推定部４６が推定した推定値が示される。推定値は、高い値であるほど職業として可能性が高いことを示し、低い値であるほど職業として可能性が低いことを示す。推定属性は、各職業属性値の推定値から最も高い値を示す職業属性値を示す。
【０１０２】
図１７は、新規ユーザリストのデータ例を示す図である。図１７において、新規ユーザリスト５８は、不足している職業属性値に対して作成されるリストであり、母集団３１において、新規ユーザとして補充するユーザＩＤのリストを示す。
【０１０３】
例えば、職業属性値「中高生」に対して、ユーザＩＤ「00002」、「00383」、「00876」、・・・等が新規ユーザとして補充されることを示している。
【０１０４】
次に、本実施例に係る新規ユーザ補充処理について説明する。図１８から図２１は、新規ユーザ補充処理を説明するためのフローチャート図である。図１８から図２１において、不足属性値が職業属性値「中高生」である場合で説明する。他職業属性値でも同様の処理となる。
【０１０５】
図１８において、ユーザ集合作成部４２は、ユーザ毎の非調整属性のスコアテーブル３３から２つのランダムユーザ集合ｕ１及びｕ２を作成する（ステップＳ１１）。ここでは、ユーザ集合ｕ１及びｕ２は、母集団３１を参照して、職業が「中高生」を示すユーザＩＤの中からランダムに抽出されたユーザＩＤの集合とする。ランダムユーザ集合ｕ１のユーザＩＤは、第１ランダムユーザ集合５１に相当し、ランダムユーザ集合ｕ２のユーザＩＤは、第２ランダムユーザ集合５２に相当する。
【０１０６】
次に、スコア分布閾値計算部４３は、不足属性値の非調整属性のスコア分布Ｄorigを計算する（ステップＳ１２）。スコア分布Ｄorigは、数１及び数２で算出できる。
【０１０７】
【数１】
0006544084.tif 000002
ｈ１〜ｈｍは、趣味属性値「グルメ」、「映画」、・・・「野球」等に相当する。
【０１０８】
【数２】
0006544084.tif 000003
【０１０９】
また、スコア分布閾値計算部４３は、非調整属性スコア分布Ｄｕ１とＤｕ２とを比較して、許容誤差閾値θ＝Ｄiff（Ｄｕ１、Ｄｕ２）を求める（ステップＳ１３）。上記数１及び数２を２つのランダムユーザ集合ｕ１及びｕ２の各々に適用して、非調整属性スコア分布Ｄｕ１及びＤｕ２を計算する。許容誤差閾値θは、非調整属性スコア分布Ｄｕ１とＤｕ２との差によって求められる。許容誤差閾値θは、許容誤差閾値５３に相当する。
【０１１０】
スコア分布閾値計算部４３は、各趣味ｈについて、各スコアｓのユーザ数割合ｒu,h・sの差の２乗和（数３）により計算する。
【０１１１】
【数３】
0006544084.tif 000004
図２２に、趣味属性値「グルメ」と「映画」の各々に関して、職業属性値「中高生」の場合の、ランダムユーザ集合ｕ１とｕ２の非調整属性スコア分布例を示す。図２２中、横軸に趣味に対する興味の度合を趣味スコアで示し、縦軸にユーザ数割合を示している。
【０１１２】
図２２において、趣味属性値「グルメ」（ｈ１とする）に関して、ランダムユーザ集合ｕ１の非調整属性スコア分布をｄu1,h1で示し、ランダムユーザ集合ｕ２の非調整属性スコア分布をｄu2,h1で示している。
【０１１３】
同様に、趣味属性値「映画」（ｈ２とする）に関して、ランダムユーザ集合ｕ１の非調整属性スコア分布をｄu1,h2で示し、ランダムユーザ集合ｕ２の非調整属性スコア分布をｄu2,h2で示している。よって、数３により、趣味属性値毎の差の２乗和の合計を計算して許容誤差閾値θを得る。
【０１１４】
図１８に戻り、ステップＳ１４からＳ２０がキーワードリスト作成部４４での処理に相当する。ステップＳ１４からＳ２０での処理により、許容誤差閾値θを用いて、母集団３１の非調整属性である職業属性値の分布と同様になるようにキーワードを決定する。先ず、キーワードリスト作成部４４は、変数ｉをゼロに初期化する（ステップＳ１４）。
【０１１５】
キーワードリスト作成部４４は、変数ｉを１インクリメントして（ステップＳ１５）、変数ｉが語彙数以上となったか否かを判断する（ステップＳ１６）。語彙数は、職業推定モデル３４で保持するキーワードの値「部活」、「テスト」等の総数以下であれば良い。変数ｉが語彙数以上の場合、キーワードリスト作成部４４は、図２１のステップＳ１２１へと進む。
【０１１６】
変数ｉが語彙数未満である場合、キーワードリスト作成部４４は、職業推定モデル３４から、獲得したい職業属性値の分類に有用なキーワードを上位ｉ個の集合Ｔｉを抽出する（ステップＳ１７）。「獲得したい職業属性値の分類に有用なキーワード」とは、例えば、「中高生らしさ」を高めるキーワードである。職業推定モデル３４から職業属性値「中高生」の値が高い順に上位ｉ個が抽出される。
【０１１７】
キーワードリスト作成部４４は、集合Ｔｉのキーワードのいずれかを含んだブログ記事を投稿したユーザを、ブログＤＢ３２に保持しているブログ記事から抽出して、非調整属性のスコア分布Ｄｉを求める（ステップＳ１８）。
【０１１８】
ステップＳ１８において、キーワードリスト作成部４４は、キーワード対ユーザテーブル３５を参照して、集合Ｔｉのキーワードのいずれかを含んだブログ記事を投稿したユーザを抽出して、趣味属性のスコア分布Ｄｉを求める。
【０１１９】
次に、キーワードリスト作成部４４は、母集団３１の分布Ｄorigと不足の職業属性値の分布Ｄｉとの分布差Ｄiff（Ｄorig，Ｄｉ）を求める（ステップＳ１９）。分布差Ｄiff（Ｄorig，Ｄｉ）は、分布Ｄorigと分布Ｄｉとに対して数３を適用すれば良い。
【０１２０】
そして、キーワードリスト作成部４４は、ステップＳ１９で求めた分布差Ｄiff（Ｄorig，Ｄｉ）がステップＳ１３で求めたθ未満であるか否かを判断する（ステップＳ２０）。分布差Ｄiff（Ｄorig，Ｄｉ）がθ以上である場合、キーワードリスト作成部４４は、未だ母集団３１の職業属性値の割合に近づいていないと判断して、ステップＳ１５へと戻り、更にｉ個目のキーワードを追加して、上記同様の処理を繰り返す。一方、分布差Ｄiff（Ｄorig，Ｄｉ）がθ未満となった場合、キーワードリスト作成部４４による処理は終了し、図２１のステップＳ１２１へと進む。
【０１２１】
図２３に、趣味属性値「グルメ」と「映画」の各々に関して、母集団３１と不足の職業属性値「中高生」の非調整属性スコア分布例を示す。図２３中、横軸に趣味に対する興味の度合を趣味スコアで示し、縦軸にユーザ数割合を示している。
【０１２２】
図２３において、趣味属性値「グルメ」（ｈ１とする）に関して、母集団３１の非調整属性スコア分布をｄorig,h1で示し、不足の職業属性値「中高生」の非調整属性スコア分布をｄi,h1で示している。
【０１２３】
同様に、趣味属性値「映画」（ｈ２とする）に関して、母集団３１の非調整属性スコア分布をｄorig,h2で示し、不足の職業属性値「中高生」の非調整属性スコア分布をｄi,h2で示している。よって、数３を適用することで、趣味属性値毎の差の２乗和の合計を計算して分布差Ｄiff（Ｄorig，Ｄｉ）を得る。
【０１２４】
このような処理を、職業推定モデル３４（図８）の職業属性値「高校生」の推定値が高い順に、キーワードを検索キーワード集合Ｔｉに追加するたびに行う。職業推定モデル３４（図８）より、１回目は、検索キーワード集合Ｔ１＝｛部活｝で行う。２回目は、検索キーワード集合Ｔ２＝｛部活、テスト｝で行う。３回目は、検索キーワード集合Ｔ３＝｛部活、テスト、クラス｝で行う。４回目は、検索キーワード集合Ｔ４＝｛部活、テスト、クラス、学校｝で行う。
【０１２５】
４回目の処理で、分布差Ｄiff（Ｄorig，Ｄｉ）がθ未満となったときに、キーワードリスト作成部４４は、ステップＳ１５〜Ｓ２０の繰り返し処理を終了する。そして、キーワードリスト作成部４４による処理が終了すると、頻度閾値計算部４４−２による処理が開始される。
【０１２６】
頻度閾値計算部４４−２は、検索キーワードリスト５４から属性毎に、検索キーワード集合を抽出する（ステップＳ３１）。「中高生」の検索キーワード集合は｛部活、授業、学校、バイト、・・・｝、「大学生」の検索キーワード集合は｛大学、サークル、授業、弁当、・・・｝、「有職者」の検索キーワード集合は｛職場、弁当、通勤、出張、・・・｝、「主婦」の検索キーワード集合は｛旦那、幼稚園、弁当、夕飯、・・・｝のように検索キーワード集合が抽出される。
【０１２７】
そして、頻度閾値計算部４４−２は、複数の属性に重複するキーワードの集合を作成する（ステップＳ３２）。以下、複数の属性に重複するキーワードを含む重複キーワード集合５ａが記憶部１３０に記憶される。
【０１２８】
次に、頻度閾値計算部４４−２は、重複キーワード集合から重複キーワードを１つ選択し、属性判定済み記事ＤＢ３６から重複キーワードを含むブログ記事を特定して作業テーブル５ｂを作成する（ステップＳ３３）。作業テーブル５ｂでは、重複キーワード毎に、属性判定済み記事ＤＢ３６から得られた、属性値と、１以上のブログ記事とが対応付けられる。
【０１２９】
頻度閾値計算部４４−２は、作業テーブル５ｂを参照して、選択した重複キーワードに関して、各属性の発生回数を取得する（ステップＳ３４）。発生回数はブログ記事数に相当する。具体的には、重複キーワードを含むページ数がカウントされる。
【０１３０】
次に、頻度閾値計算部４４−２は、選択した重複キーワードに関して、各属性のポアソン分布を求め（ステップＳ３５）、求めたポアソン分布から各属性についてのルールを獲得する（ステップＳ３６）。属性と重複キーワードとの組み合わせに対してルールを獲得した場合、頻度閾値計算部４４−２は、作業テーブル５において、組み合わせに対応付けて獲得したルールを記録する。組み合わせに対してルールが獲得できなかった場合、ルールは記録されない。ルールの獲得方法については、後に詳述される。
【０１３１】
頻度閾値計算部４４−２は、作業テーブル５ｂの全ての重複キーワードに対してルールを獲得したか否かを判断する（ステップＳ３７）。作業テーブル５ｂに未だルールの獲得できていない重複キーワードが存在する場合（ステップＳ３７のＮＯ）、頻度閾値計算部４４−２は、ステップＳ３３へと戻り、上記同様の処理を繰り返す。
【０１３２】
一方、作業テーブル５ｂの全ての重複キーワードに対してルールを獲得した場合（ステップＳ３７のＹＥＳ）、頻度閾値計算部４４−２は、属性値対キーワードテーブル５４−２を作成する（ステップＳ３８）。
【０１３３】
頻度閾値計算部４４−２は、検索キーワードリスト５４を複製し、作業テーブル５ｂから、重複キーワード、属性値、及びルールとを取得する。取得した重複キーワードと属性値との組み合せに対して獲得したルールが設定された属性値対キーワードテーブル５４−２を作成する。
【０１３４】
頻度閾値計算部４４−２は、属性値対キーワードテーブル５４−２において、重複キーワードと属性値との組み合せ以外のキーワードと属性値との組み合わせに対して「１以上」を設定する。
【０１３５】
属性値対キーワードテーブル５４−２によって、属性毎に、その属性であると判断する際のキーワードの出現回数の閾値を示したルールが示される。従って、属性値対キーワードテーブル５４−２において、重複キーワードと属性値との組み合せにおいて、ルールが設定された組み合せが存在するため、全ての重複キーワードの利用を抑止することなく、重複キーワードを効果的に利用することが可能となる。
【０１３６】
属性値対キーワードテーブル５４−２の作成の完了により、頻度閾値計算部４４−２による処理は終了し、即ち、キーワード特定部４０Ａによる処理が終了し、新規ユーザ補充部４０Ｂによる処理が開始される。
【０１３７】
ここで、ステップＳ３６での重複キーワード毎に各属性に対するルールを獲得するルール獲得処理について図２０で説明する。ルール獲得処理は、頻度閾値計算部４４−２によって行われる処理である。
【０１３８】
図２０において、頻度閾値計算部４４−２は、ルールの下限ｆを１つ増加させる（ステップＳ３６０１）。頻度閾値計算部４４−２は、初回は下限ｆ＝０とし、２回目から下限ｆを１つ増加させる。また、頻度閾値計算部４４−２は、図１９のステップＳ３５で求めたポアソン分布において、ルールの区間幅Δを１つ増加させる（ステップＳ３６０２）。
【０１３９】
次に、頻度閾値計算部４４−２は、重複キーワードが存在する全ての属性で、それぞれの現在の区間（ｆからｆ＋Δ）での面積を計算する（ステップＳ２６０３）。そして、頻度閾値計算部４４−２は、属性を１つ選択し、選択した属性の面積と他の属性の面積との比を求めて（ステップＳ３６０４）、選択した属性の割合が閾値Ｒ以上となっているか否かを判断する（ステップＳ３６０５）。
【０１４０】
選択した属性の割合が閾値Ｒ未満の場合（ステップＳ３６０５のＮＯ）、頻度閾値計算部４４−２は、ステップＳ３６０７へと進む。一方、選択した属性の割合が閾値Ｒ以上の場合（ステップＳ３６０５のＹＥＳ）、頻度閾値計算部４４−２は、選択した属性について、現在の区間でのルール「ｆ以上かつｆ＋Δ未満」を獲得する（ステップＳ３６０６）。
【０１４１】
全ての属性が完了した場合、頻度閾値計算部４４−２は、全ての属性についてルールを獲得したか否かを判断する（ステップＳ３６０７）。全ての属性についてルールを獲得していない場合（ステップＳ３６０７のＮＯ）、頻度閾値計算部４４−２は、ステップＳ３６０４へと戻り、次の属性を選択して、上記同様の処理を繰り返す。
【０１４２】
一方、全ての属性についてルールを獲得した場合（ステップＳ３６０７のＹＥＳ）、頻度閾値計算部４４−２は、区間幅Δが上限Δｍａｘに達したか否かを判断する（ステップＳ３６０８）。区間幅Δが上限Δｍａｘに達していない場合（ステップＳ３６０８のＮＯ）、頻度閾値計算部４４−２は、ステップＳ３６０２へと進む。
【０１４３】
一方、区間幅Δが上限Δｍａｘに達している場合（ステップＳ３６０８のＹＥＳ）、頻度閾値計算部４４−２は、下限ｆが上限Ｆに達したか否かを判断する（ステップＳ３６０９）。下限ｆが上限Ｆに達していない場合（ステップＳ３６０９のＮＯ）、頻度閾値計算部４４−２は、ステップＳ３６０２へと進み、上記同様の処理を繰り返す。
【０１４４】
一方、下限ｆが上限Ｆに達した場合（ステップＳ３６０９のＹＥＳ）、頻度閾値計算部４４−２は、このルール獲得処理を終了する。
【０１４５】
図２４は、ルール獲得処理例を説明するための図である。図２４では、３つの属性「大学生」、「有職者」及び「主婦」の夫々において、ある特定のキーワード（以下、特定キーワードという）がブログ記事に出現する回数をピアソン分布で示している。
【０１４６】
大学生分布２ａは、属性「大学生」のブログ記事における特定キーワードの出現回数を表したピアソン分布である。有職者分布２ｂは、属性「有職者」のブログ記事における特定キーワードの出現回数を表したピアソン分布である。主婦分布２ｃは、属性「主婦」のブログ記事における特定キーワードの出現回数を表したピアソン分布である。
【０１４７】
キーワードの出現回数「０」から区間幅Δで、ピアソン分布の面積の範囲が拡大される。拡大される毎に、面積が計算され、計算された面積に基づいて属性同士の比較が行われる。
【０１４８】
図１９のステップＳ３８に続く処理について図２１を参照して説明する。図２１において、新規ユーザ補充部４０Ｂによる処理が開始されると、収集部４５は、属性値対キーワードテーブル５４−２を参照して、管理者が調整属性の中から指定した補充するユーザの属性に対応するキーワードを表示装置１５に表示させ、データ収集装置１００の管理者に検索に用いるキーワードを選定させる（ステップＳ１２１）。
【０１４９】
例えば、属性値「中高生」を選択した場合、「中高生」の検索キーワード集合＝｛部活：１回以上、授業：７回以上、学校：１回以上、バイト：１回以上、・・・｝が選択可能なように表示装置１５に表示される。属性値「中高生」及び「大学生」で重複するキーワード「授業」は選択可能である。
【０１５０】
属性値「大学生」を選択した場合、「大学生」の検索キーワード集合＝｛大学：１回以上、サークル：１回以上、・・・｝が選択可能なように表示装置１５に表示される。表示装置１５に表示される「大学生」の検索キーワード集合には、属性値「中高生」及び「大学生」で重複するキーワード「授業」、及び属性値「中高生」及び「有職者」で重複するキーワード「弁当」は含まれない。
【０１５１】
属性値「有職者」を選択した場合、「有職者」の検索キーワード集合＝｛職場：１回以上、通勤：１回以上、出張：１回以上・・・｝が選択可能なように表示装置１５に表示される。表示装置１５に表示される「有職者」の検索キーワード集合には、属性値「大学生」、「有職者」、及び「主婦」で重複するキーワード「弁当」は含まれない。
【０１５２】
属性値「主婦」を選択した場合、「主婦」の検索キーワード集合＝｛旦那：１回以上、幼稚園：１回以上、弁当：３回以上、夕飯：１回以上・・・｝が選択可能なように表示装置１５に表示される。属性値「大学生」、「有職者」、及び「主婦」で重複するキーワード「弁当」は選択可能である。
【０１５３】
このように重複キーワードがルールにより有効である場合に、表示装置１５に選択可能に表示され、ルールが存在しない場合には表示されないように制御されることで、管理者は、重複キーワードが検索キーワード集合に存在するか否かの判断、重複キーワードの使用の有無を判断する必要がない。
【０１５４】
管理者は、表示装置１５に表示された検索キーワード集合から１以上の所望のキーワードを選択すると、収集部４５は、管理者によって選定されたキーワードでクエリーを作成し、ブログサーバ３にアクセスしてブログ３ａを検索する。
【０１５５】
収集部４５は、ブログサーバ３からブログ記事を、管理者によって選定された１以上の所望のキーワードでＯＲ検索し、候補ユーザを決定する（ステップＳ１２２）。管理者が選定したキーワードを含むブログ記事が検索される。検索されたブログ記事のユーザを候補ユーザとして決定する。決定したユーザのＩＤを示す新規ユーザ候補リスト５５が記憶部１３０に作成される。
【０１５６】
収集部４５は、ブログサーバ３から候補ユーザについて、最新１０記事を収集して、ユーザ毎にキーワードをカウントする（ステップＳ１２３）。即ち、収集部４５は、ユーザＩＤ毎に、関連付けられるブログ記事内をキーワードで検索してカウントして、ユーザ毎キーワードテーブル５６を記憶部１３０に作成する。
【０１５７】
属性推定部４６は、ユーザ毎キーワードテーブル５６を用いて、収集したブログ記事に職業推定モデル３４を適用してユーザ毎推定属性値テーブル５７を記憶部１３０に作成する（ステップＳ１２４）。属性推定部４６は、作成したユーザ毎推定属性値テーブル５７において、ユーザＩＤ毎に最も推定値の高い職業属性値を特定し、ユーザの職業であると判断して、ユーザ毎推定属性値テーブル５７の推定属性に設定する。
【０１５８】
図１６の例では、ユーザＩＤ「00002」に対しては、職業属性値「中高生」の推定値「０．５３」が最も高い値を示すため、ユーザＩＤ「00002」に対応付けて推定属性に「中高生」が設定される。ユーザＩＤ「00014」に対しては、推定属性に「その他」が設定される。ユーザＩＤ「00383」に対しては、推定属性に「中高生」が設定される。
【０１５９】
そして、サンプリング部４７は、対象の職業属性値を有すると推定されたユーザの中から、不足分をランダムにサンプリングして母集団３１に追加する（ステップＳ１２５）。
【０１６０】
例えば、職業属性値「中高生」が不足している場合、サンプリング部４７は、ユーザ毎推定属性値テーブル５７において推定属性に職業属性値「中高生」が設定されたユーザＩＤを抽出して、新規ユーザリスト５８（図１６）を記憶部１３０に作成する。サンプリング部４７は、新規ユーザリスト５８を用いて母集団３１を補充する。
【０１６１】
上述では、収集対象のユーザをランダムに選択するのではなく、補充したいユーザに特徴的なキーワードを含むブログ記事を閾値回数以上投稿したユーザのみとすることができる。
【０１６２】
次に、ブログ記事数の範囲を示すルールに基づいて、収集対象のユーザを特定可能とする閾値対キーワードテーブル５４−２の他のデータ例について説明する。図２５は、属性値対キーワードテーブルの他のデータ構成例を示す図である。図２５に示す属性値対キーワードテーブル５４−２ａは、ルールにブログ記事数の上限及び下限が設定されている点で、図１３に示す属性値対キーワードテーブル５４−２とは異なっている。
【０１６３】
図２５のデータ例において、属性値「中高生」のキーワード「授業」に対して、「７以上１２未満」のルールが設定されている。「中高生」のユーザを補充する場合、キーワード「授業」の出現頻度が「７以上１２未満」のブログ記事数となるユーザが検索対象となることを示している。
【０１６４】
属性値「大学生」のキーワード「授業」に対して、「０以上２未満」及び「５以上６未満」の２つのルールが設定されている。「大学生」のユーザを補充する場合、キーワード「授業」の出現頻度が「０以上２未満」及び「５以上６未満」のブログ記事数となるユーザが検索対象となることを示している。
【０１６５】
また、属性値「大学生」のキーワード「弁当」に対して、「０以上１未満」のルールが設定されている。「大学生」のユーザを補充する場合、キーワード「弁当」の出現頻度が「０以上１未満」のブログ記事数となるユーザが検索対象となることを示している。
【０１６６】
属性値「有職者」のキーワード「弁当」に対して、ルールが空欄である。「有職者」のユーザを補充する場合、検索条件に「弁当」をキーワードとして用いないことを示している。
【０１６７】
属性値「主婦」のキーワード「弁当」に対して、「３以上８未満」のルールが設定されている。「主婦」のユーザを補充する場合、キーワード「弁当」の出現頻度が「３以上８未満」のブログ記事数となるユーザが検索対象となることを示している。
【０１６８】
上述より、「大学生」のユーザに対して、下限のみのルール（図１３）では使用することができなかった重複キーワード「授業」及び「弁当」を、図２５の属性値対キーワードテーブル５４−２ａを参照することにより、使用できるようになる。
【０１６９】
このように、上限及び下限を設定することで、重複キーワードであっても精度良く調整属性のユーザを母集団３１に補充することができる。
【０１７０】
よって、本実施の形態によれば、本実施例に係るデータ収集装置１００において、調査対象の母集団の属性割合を一定に保ちつつ、不足している職業属性値を有するユーザを補充することができる。
【０１７１】
キーワードをランダムに設定する技術では、特定の話題のブログ記事ばかりを投稿しているようなユーザが収集されてしまい、結果として生活者の実態を反映するような母集団にならなくなると言った問題がある。本実施例では、収集対象ユーザの投稿内容傾向がバイアスを回避するようにキーワードを設定するため、調査対象の母集団の属性割合を一定に保つことができる。従って、上述した課題を解決することができる。
【０１７２】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、主々の変形や変更が可能である。
【０１７３】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出し、
前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定し、
新たな公開情報について、前記重複キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成し、
前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定し、
特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する、
処理をコンピュータを用いて実行することを特徴とする群形成方法。
（付記２）
前記コンピュータは、
前記重複キーワードの出現傾向に基づいて前記ルールを決定する
ことを特徴とする付記１記載の群形成方法。
（付記３）
前記コンピュータは、
前記重複キーワード毎に、各属性の出現傾向を表すポアソン分布を求め、該ポアソン分布から他の属性と比べて特徴的な出現傾向を示す属性に対して、該特徴的な出現傾向を示す出現頻度の下限値を前記ルールとする
ことを特徴とする付記２記載の群形成方法。
（付記４）
前記コンピュータは、
前記重複キーワード毎に、各属性の出現傾向を表すポアソン分布を求め、該ポアソン分布から他の属性と比べて特徴的な出現傾向を示す属性に対して、該特徴的な出現傾向を示す出現頻度の範囲を前記ルールとする
ことを特徴とする付記３記載の群形成方法。
（付記５）
前記コンピュータは、
前記重複キーワード毎に、各属性の出現傾向を表すポアソン分布を求め、該ポアソン分布から他の属性と比べて特徴的な出現傾向を示す属性に対して、該特徴的な出現傾向を２以上の前記ルールで示す
ことを特徴とする付記３記載の群形成方法。
（付記６）
公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出する抽出部と、
前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定する設定部と、
新たな公開情報について、前記重複キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成する第一形成部と、
前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定し、
特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する第二形成部と、
を有する特徴とする群形成装置。
（付記７）
公開情報の提供者についての属性であって、時間変化に応じて属性値が変化する第１の属性に関する属性値が所定の属性値に該当すると算出された提供者を要素とする、第１の提供者群に含まれる各提供者の公開情報から１又は複数のキーワードを抽出し、
前記１又は複数のキーワードのうち、２以上の前記属性に重複する重複キーワードに対して、該重複キーワードで該２以上の属性のいずれかを判断するルールを該重複キーワードに対応づけて設定し、
新たな公開情報について、前記重複キーワードと前記ルールとに基づいて、対応するキーワードを含む公開情報の提供者群をそれぞれ形成して、１又は複数の提供者群を形成し、
前記１又は複数の提供者群のうち、前記第１の属性とは異なる属性の属性値の分布が、前記第１の提供者群と所定の類似関係にある提供者群を特定し、
特定した前記提供者群に含まれる提供者のうち、前記第１の属性に関する属性値が前記所定の属性値に該当すると算出された提供者を用いて前記第１の提供者群に対応する新しい提供者群を形成する、
処理をコンピュータに実行させることを特徴とする群形成プログラム。
【符号の説明】
【０１７４】
１１          ＣＰＵ
１２          主記憶装置
１３          補助記憶装置
１４          入力装置
１５          表示装置
１６          出力装置
１７          通信Ｉ／Ｆ
１８          ドライブ
１９          記憶媒体
３０          事前準備領域
３１          ブログＤＢ
３２          職業分類テーブル
３３          スコアテーブル（ユーザ毎非調整属性）
３４          職業推定モデル
３５          キーワード対ユーザモデル
３６          属性判定済み記事ＤＢ
４１          基本データ収集部
４２          ユーザ集合作成部
４３          スコア分布閾値計算部
４４          キーワードリスト作成部
４４−２      頻度閾値計算部
４５          収集部
４６          属性推定部
４７          サンプリング部
５１          第１ランダムユーザ集合
５２          第２ランダムユーザ集合
５３          許容誤差閾値
５４          検索キーワードリスト
５４−２      属性値対キーワードテーブル
５５          新規ユーザ候補テーブル
５６          ユーザ毎キーワードテーブル
５７          ユーザ毎推定属性値テーブル
５８          新規ユーザリスト
１００        データ収集装置
１３０        記憶部
【図１】
0006544084.tif 000005
【図２】
0006544084.tif 000006
【図３】
0006544084.tif 000007
【図４】
0006544084.tif 000008
【図５】
0006544084.tif 000009
【図６】
0006544084.tif 000010
【図７】
0006544084.tif 000011
【図８】
0006544084.tif 000012
【図９】
0006544084.tif 000013
【図１０】
0006544084.tif 000014
【図１１】
0006544084.tif 000015
【図１２】
0006544084.tif 000016
【図１３】
0006544084.tif 000017
【図１４】
0006544084.tif 000018
【図１５】
0006544084.tif 000019
【図１６】
0006544084.tif 000020
【図１７】
0006544084.tif 000021
【図１８】
0006544084.tif 000022
【図１９】
0006544084.tif 000023
【図２０】
0006544084.tif 000024
【図２１】
0006544084.tif 000025
【図２２】
0006544084.tif 000026
【図２３】
0006544084.tif 000027
【図２４】
0006544084.tif 000028
【図２５】
0006544084.tif 000029