(57)【要約】【課題】データ収集の際の計算時間を削減可能とする効果的なデータを提供できる。【解決手段】本実施形態に係る属性選択装置は、第１取得手段、第２取得手段、比較手段、生成手段、計算手段及び出力手段を含む。第１取得手段は、データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得する。第２取得手段は、前記データエントリごとに活動量を取得する。比較手段は、処理対象となる対象属性値を備える対象データエントリ間で活動量を比較し、比較結果を得る。生成手段は、前記対象属性値に関し、前記比較結果から所与の条件に該当する対象データエントリを特定する寄与情報を生成する。計算手段は、前記寄与情報を参照して、対象属性値に対応する属性種別である対象属性種別が前記データエントリの抽出に寄与する度合いを示す寄与度を計算する。出力手段は、前記対象属性種別と前記寄与度とを対応付けたリストを出力する。【選択図】図１
2017228061.tif 000002
【特許請求の範囲】
【請求項１】
データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得する第１取得手段と、
前記データエントリごとに活動量を取得する第２取得手段と、
処理対象となる対象属性値を備える対象データエントリ間で活動量を比較し、比較結果を得る比較手段と、
前記対象属性値に関し、前記比較結果から所与の条件に該当する対象データエントリを特定する寄与情報を生成する生成手段と、
前記寄与情報を参照して、対象属性値に対応する属性種別である対象属性種別が前記データエントリの抽出に寄与する度合いを示す寄与度を計算する計算手段と、
前記対象属性種別と前記寄与度とを対応付けたリストを出力する出力手段と、
を具備することを特徴とする属性選択装置。
【請求項２】
データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得する第１取得手段と、
前記データエントリごとに活動量を取得する第２取得手段と、
処理対象となる対象属性値を備える対象データエントリの活動量の部分統計値を計算し、全データエントリの活動量の全体統計値を計算する第１計算手段と、
対象属性値に対応する属性種別である対象属性種別ごとに、前記部分統計値の全体統計値からの乖離度を計算する第２計算手段と、
前記対象属性種別と前記乖離度とを対応付けたリストを出力する出力手段と、
を具備することを特徴とする属性選択装置。
【請求項３】
データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得し、
前記データエントリごとに活動量を取得し、
処理対象となる対象属性値を備える対象データエントリ間で活動量を比較し、比較結果を得、
前記対象属性値に関し、前記比較結果から所与の条件に該当する対象データエントリを特定する寄与情報を生成し、
前記寄与情報を参照して、対象属性値に対応する属性種別である対象属性種別が前記データエントリの抽出に寄与する度合いを示す寄与度を計算し、
前記対象属性種別と前記寄与度とを対応付けたリストを出力することを特徴とする属性選択方法。
【請求項４】
データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得し、
前記データエントリごとに活動量を取得し、
処理対象となる対象属性値を備える対象データエントリの活動量の部分統計値を計算し、全データエントリの活動量の全体統計値を計算し、
対象属性値に対応する属性種別である対象属性種別ごとに、前記部分統計値の全体統計値からの乖離度を計算し、
前記対象属性種別と前記乖離度とを対応付けたリストを出力することを特徴とする属性選択方法。
【請求項５】
コンピュータを、請求項１または請求項２のいずれか１項に記載の属性選択装置の各手段として実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、属性種別を選択する属性選択装置、方法及びプログラムに関する。
【背景技術】
【０００２】
ゲームやイベント、サービス（以下、サービス等）を利用するユーザのゲームプレイやイベントへの参加等の活動（以下、ユーザ活動）を促進したい場合、サービス等の運営者（以下、サービス等運営者）がユーザごとにユーザ活動の量（以下、活動量）を他のユーザと比較し、その結果をユーザへ提示する。これによって、ユーザの競争心を刺激しユーザ活動への意欲を向上させる技術が提案されている（例えば、非特許文献１参照）。
また、ユーザごとの活動量を他のユーザの活動量と比較するにあたり、比較対象となるユーザ（以下、競争相手）を、ユーザが備える属性値または属性値の組合せに従って限定することで、各々のユーザへ提示される比較結果が、ユーザが上位である比較結果または下位である比較結果となる見込を高くする技術が提案されている（例えば、特許文献１参照）。
【０００３】
しかしながら、これまでの手法は、競争相手を限定する属性種別が増加した際に、属性値の組合せ数が爆発的に増加することにより全ての属性値の組合せについて競争相手を選び直して比較結果を計算する時間（以下、計算時間）が爆発的に増加してしまう（例えば、非特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１７１５５８号公報
【非特許文献】
【０００５】
【非特許文献１】Kevin Werbach et. al., “For the win: How game thinking can revolutionize your business,” Wharton Digital Press, 2012, p. 71-77
【非特許文献２】“Top of Worlds: Estimating Time Complexity of Calculating Rank Order in Multi-dimensional Hierarchical Sets” p. 1405-1413
【発明の概要】
【発明が解決しようとする課題】
【０００６】
これまでの高速化手法として、例えば、属性値を属性集合情報と呼ぶ属性種別ごとの木構造で管理し、属性集合情報の根から近い順に確率的に属性値を選択し組み合わせを生成するものがある。以下、属性集合情報の根から近いことを「浅い」と表現し、属性集合情報の根から遠いことを「深い」と表現する。
ある定められた時間内に計算を終える場合に、属性集合情報の深い位置に対応する属性値が選択される可能性は、浅い位置に対応する属性値と比較して低いことから、ユーザの比較結果が上位あるいは下位となる見込を高くする上で有効な属性値が深い位置にある場合は、当該属性値を見落とす場合があるという問題がある。
【０００７】
この発明は上記事情に着目してなされたもので、その目的とするところは、データ収集の際の計算時間を削減可能とする効果的なデータを提供できる属性選択装置、方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、この発明の一つの観点に係る属性選択装置は、データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得する第１取得手段と、前記データエントリごとに活動量を取得する第２取得手段と、処理対象となる対象属性値を備える対象データエントリ間で活動量を比較し、比較結果を得る比較手段と、前記対象属性値に関し、前記比較結果から所与の条件に該当する対象データエントリを特定する寄与情報を生成する生成手段と、前記寄与情報を参照して、対象属性値に対応する属性種別である対象属性種別が前記データエントリの抽出に寄与する度合いを示す寄与度を計算する計算手段と、前記対象属性種別と前記寄与度とを対応付けたリストを出力する出力手段と、を具備することを特徴とする。
【０００９】
さらに、一つの観点に係る属性選択装置は、データエントリごとに、属性種別と当該属性種別に対応する１以上の属性値との組を複数取得する第１取得手段と、前記データエントリごとに活動量を取得する第２取得手段と、処理対象となる対象属性値を備える対象データエントリの活動量の部分統計値を計算し、全データエントリの活動量の全体統計値を計算する第１計算手段と、対象属性値に対応する属性種別である対象属性種別ごとに、前記部分統計値の全体統計値からの乖離度を計算する第２計算手段と、前記対象属性種別と前記乖離度とを対応付けたリストを出力する出力手段と、を具備することを特徴とする。
【発明の効果】
【００１０】
すなわちこの発明によれば、データ収集の際の計算時間を削減可能とする効果的なデータを提供できる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態における属性選択装置を示すブロック図。
【図２】ユーザ識別子と属性値との組を含むユーザ情報リストの一例を示す図。
【図３】ユーザ識別子と活動量との組を含む活動量リストの一例を示す図。
【図４】第１の実施形態に係る寄与度計算処理を示すフローチャート。
【図５】属性値リストの一例を示す図。
【図６】ユーザ情報リストと活動量リストとから抽出されるリストを示す図。
【図７】比較結果の一例を示す図。
【図８】寄与情報リストの一例を示す図。
【図９】寄与度リストの一例を示す図。
【図１０】第２の実施形態に係る属性選択装置を示すブロック図。
【図１１】第２の実施形態に係る乖離度計算処理を示すフローチャート。
【図１２】活動量の統計値の一例を示す図。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら本開示の一実施形態に係る属性選択装置および方法について詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
【００１３】
（第１の実施形態）  
第１の実施形態における属性選択装置について図１のブロック図を参照して説明する。
【００１４】
属性選択装置１００は、属性値取得部１０１、活動量取得部１０２、情報蓄積部１０３、寄与情報生成部１０４、比較結果計算部１０５、寄与度計算部１０６および出力部１０７を含む。
【００１５】
属性値取得部１０１は、例えば、サービス等運営者が管理するユーザ情報管理システムから、ユーザごとに、ユーザの情報として、ユーザ識別子と、ユーザの属性種別および属性値との組の入力を受け付ける。ユーザ識別子は、ユーザを一意に識別する識別子であり、例えば氏名、ハンドルネーム、ユーザが指定する任意の文字列が挙げられる。属性種別は、ユーザ情報の属性に関する種別である。属性値は、属性種別に対応する値である。例えば、属性種別としては、「性別」「年齢」「居住地」および「血液型」であり、属性値としては、属性種別にそれぞれ対応する「男性」「３０歳」「東京」および「Ｂ型」といった値である。なお、属性種別および属性値は、これらの例に限られない。
【００１６】
活動量取得部１０２は、サービス等運営者が管理する活動量管理システムから、ユーザごとのユーザ識別子と活動量との組の入力を受け付ける。活動量は、ユーザの活動状態または行動状態を示す値であり、例えば、「歩数」「消費カロリー」「商品注文回数」「商品注文金額」「ゲームスコア」といった活動状態にそれぞれ対応する、「１０００（歩）」「２００（ｋｃａｌ）」「３（回）」「５０００（円）」「３０００（点）」といった値である。なお、活動量はこれらの例に限られない。
【００１７】
また、属性値取得部１０１および活動量取得部１０２は、キーボード、マウスなどの入力装置を含んでもよく、サービス等運営者またはユーザなどが直接入力できるようにしてもよい。また、属性値取得部１０１がユーザ情報管理システムから、活動量取得部１０２が活動量管理システムからそれぞれ、定期的にデータ（ユーザ識別子、属性種別および属性値、活動量）を取得するようにしてもよい。
【００１８】
情報蓄積部１０３は、属性値取得部１０１からユーザ識別子と、属性種別および属性値との組を、活動量取得部１０２からユーザ識別子と活動量との組をそれぞれ受け取って格納し、後述する寄与情報生成部１０４から、寄与情報を受け取って格納する。なお、情報蓄積部１０３は、例えば半導体メモリにより構成されてもよく、属性選択装置１００として機能する少なくともいずれかのプログラム及び処理に必要な情報を記憶し、例えばＳＱＬ言語などの問い合わせに対し記憶した情報の一部または演算結果を返却する、いわゆるデータベースの機能を備えるものとする。
【００１９】
寄与情報生成部１０４は、情報蓄積部１０３を参照して、処理対象となる対象属性種別に対応する属性値である対象属性値に基づいて、対象属性値を備えるユーザのユーザ識別子と活動量との組を生成する。また、寄与情報生成部１０４は、後段の比較結果計算部１０５から比較結果を受け取り、対象属性値に関し、比較結果から所与の条件に該当するユーザを特定する寄与情報を生成する。
【００２０】
比較結果計算部１０５は、寄与情報生成部１０４から対象属性値を備えるユーザのユーザ識別子と活動量との組を受け取り、活動量を比較及び計算することで比較結果を得る。
【００２１】
寄与度計算部１０６は、寄与情報生成部１０４から対象属性値ごとの寄与情報を受け取り、寄与情報に基づいて対象属性種別がユーザの抽出に寄与する度合いを示す寄与度を計算する。
【００２２】
出力部１０７は、寄与度計算部１０６から対象属性種別と寄与度との組を受け取り、対象属性種別と寄与度との組を対応付けた寄与度リストを寄与度に基づいて並び替える。出力部１０７は、並び替えた寄与度リストを、例えばサービス等運営システムに出力する。
【００２３】
次に、情報蓄積部１０３に蓄積されるユーザ識別子と属性値との組の一例について図２を参照して説明する。
図２に示すリスト２００には、ユーザ識別子２０１と、属性種別（性別２０２、年齢２０３、居住地２０４および血液型２０５）ごとの属性値とがそれぞれ対応付けられる（以下、ユーザ情報リストともいう）。
具体的には、例えば、ユーザ識別子２０１「００１」、性別２０２の属性値「男」、年齢２０３の属性値「３０代、３３歳」、居住地２０４の属性値「東京都、武蔵野市」および血液型２０５の属性値「Ａ」が対応付けられる。
【００２４】
次に、情報蓄積部１０３に蓄積されるユーザ識別子と活動量との組の一例について図３を参照して説明する。なお、ここでは、活動量が歩数である場合を想定する。
図３に示すリスト３００には、ユーザ識別子２０１と、活動量３０１との組が対応付けられる（以下、活動量リストともいう）。具体的には、ユーザ識別子２０１「００１」と活動量３０１「５０３４歩」とが対応付けられる。
【００２５】
次に、属性選択装置１００に係る寄与度計算処理について図４のフローチャートを参照して説明する。
【００２６】
ステップＳ４０１では、寄与情報生成部１０４が、情報蓄積部１０３から属性値リストを取得する。具体的には、まず、寄与情報生成部１０４が、情報蓄積部１０３に全てのユーザの属性値（ユーザ識別子に対応する属性値）を要求する。情報蓄積部１０３は、寄与情報生成部１０４からの要求を受けると、自身のデータベースの機能により、記憶しているユーザ情報リストから、属性種別と属性値との組を属性値リストとして生成し、寄与情報生成部１０４に送る。なお、寄与情報生成部１０４は、属性値リストをバッファなどに一時的に記憶してもよい。
【００２７】
ステップＳ４０２では、寄与情報生成部１０４が、属性値リストが空であるかどうかを判定する。ここで「空」とは、属性値リスト自体が空データである場合、またはリストに含まれる全ての属性値に対して寄与度計算処理が完了し、処理対象となる属性値が存在しない場合を示す。属性値リストが空である場合、ステップＳ４０８に進み、属性値リストが空でない場合、ステップＳ４０３に進む。
【００２８】
ステップＳ４０３では、寄与情報生成部１０４が、属性値リストの先頭から属性値を取得し、変数Ａへ代入する。変数Ａに代入された属性値が対象属性値となる。寄与情報生成部１０４は、変数Ａと属性値リストとを一時的に格納してもよい。また、寄与情報生成部１０４は、変数Ａとして取得した属性値と対応する属性種別との組を属性値リストから取り除いてもよく、変数Ａと、属性値および対応する属性種別の組が取り除かれた残りの属性値リストとを一時的に格納してもよい。
【００２９】
ステップＳ４０４では、寄与情報生成部１０４が、情報蓄積部１０３から変数Ａに代入した対象属性値を備えるユーザ識別子（以下、対象ユーザ識別子ともいう）と活動量との組のリストを取得する。具体的には、寄与情報生成部１０４が、対象ユーザ識別子と活動量との組を情報蓄積部１０３に要求する。情報蓄積部１０３は、寄与情報生成部１０４からの要求を受けると、対象ユーザ識別子と活動量との組のリストを寄与情報生成部１０４に送る。なお、寄与情報生成部１０４は、対象ユーザ識別子と活動量との組のリストをバッファなどに一時的に記憶してもよい。
【００３０】
ステップＳ４０５では、比較結果計算部１０５が、ステップＳ４０４で得られたリストに基づいて、活動量の比較結果を計算する。比較結果は、例えば活動量の順位付けでもよいし、特定のユーザの活動量と他のユーザの活動量との相対位置（例えば、偏差値）でもよいし、その他の値でもよい。
【００３１】
ステップＳ４０６では、寄与情報生成部１０４が、比較結果に基づいて、変数Ａに代入した対象属性値に関する寄与情報を生成する。具体的には、所与の条件に該当する対象ユーザ識別子を寄与情報として生成する。ここでは、所与の条件として、活動量が１位であるユーザ識別子、最下位であるユーザ識別子、上位１０％に含まれるユーザ識別子、下位１０％に含まれるユーザ識別子、偏差値６０以上であるユーザ識別子、偏差値４０以下であるユーザ識別子といった条件に該当する情報を想定しているが、これらに限られない。
【００３２】
ステップＳ４０７では、寄与情報生成部１０４が、変数Ａに代入した対象属性値と計算した寄与情報との組を情報蓄積部１０３に入力する。情報蓄積部１０３では、変数Ａに代入した対象属性値と寄与情報との組を、寄与情報リストとして格納する。その後、ステップＳ４０２に戻り、次の属性値に対して同様に処理を行う。なお、ステップＳ４０３において、属性値と対応する属性種別との組を属性値リストから取り除く場合は、属性値リストの先頭にある属性値を対象属性値として処理すればよい。一方、属性値と対応する属性種別との組を属性値リストから取り除かずに残しておく場合は、例えば、対象属性値について処理が完了したことを示すフラグを立てておき、フラグが立っていない属性値を対象属性値として処理すればよい。
【００３３】
ステップＳ４０８は、属性値リストにある全ての属性値について寄与情報が算出されており、全ての属性値に関する寄与情報リストが生成された状態である。寄与度計算部１０６は、全ての属性値に関する寄与情報リストと属性値リストとに基づいて属性種別ごとの寄与度を計算し、寄与度リストを生成する。寄与度は、例えば、ある属性種別に属する属性値の寄与情報の中で重複を除いたユーザ識別子の総数が挙げられる。なお、この場合の寄与度は、属性種別を利用して、１位または上位１０％、最下位または下位１０％の地位にあるユーザの総数によるため、この値が大きい属性種別ほど、属性種別の寄与によって、より多くのユーザを上位または下位として比較結果を提示できる見込みが増加することから、この値を寄与度として定めてもよい。
【００３４】
ステップＳ４０９では、出力部１０７が、寄与度リストにおいて、属性種別と寄与度との組を、寄与度が降順または昇順になるように並び替え、並び替えた寄与度リストを外部に出力する。出力方法としては、例えば、サービス等運用者のために提示する画面を備え、画面にリストを表示すればよい。また、リスト中の属性種別と寄与度との組をカンマで区切り、組と組とを改行コードで区切るなどの方法により、他のプログラムで利用可能な方式としてもよい。なお、寄与度に応じた並び替えは必須ではなく、後段のサービス等運営システムにおける処理において並び替えるようにしてもよい。
【００３５】
以下、図４のフローチャートに示した寄与度計算処理の具体例を、図５から図９を参照しながら説明する。また、本具体例では、属性値「男」を変数Ａに代入する場合を想定する。
【００３６】
まず、ステップＳ４０１で生成される属性値リストの一例について図５を参照して説明する。
図５に示す属性値リスト５００は、情報蓄積部１０３が図２に示すユーザ情報リストから抽出することにより得られたものである。属性値リスト５００には、属性種別５０１と属性値５０２とが対応付けられて格納される。
【００３７】
具体的には、図２のユーザ識別子２０１「００１」に対応付けられる属性種別である、性別２０２の「男」「女」、年齢２０３の「３０代」「３３歳」、居住地２０４の「東京都」「武蔵野市」といった属性値が重複なく、それぞれ属性種別５０１と属性値５０２との組として属性値リストに格納される。
【００３８】
次に、ステップＳ４０４で抽出されるリストの一例について図６を参照して説明する。
図６に示すリスト６００は、情報蓄積部１０３が、図２に示すユーザ情報リストと図３に示す活動量リストとに基づいて抽出することにより得られたものである。リスト６００には、変数Ａ（属性値５０２「男」）に該当する対象ユーザ識別子６０１と活動量６０２（歩数）とが対応付けられる。
【００３９】
具体的には、図２および図３を参照すると、図２において変数Ａの属性値「男」に該当する対象ユーザ識別子６０１は、「００１」および「００３」である。よって、図３を参照し、対象ユーザ識別子６０１「００１」および「００３」にそれぞれ対応する活動量６０２「５０３４歩」「２２５９歩」を抽出することで図６のリスト６００が得られる。
【００４０】
次に、ステップＳ４０５で計算される比較結果の一例について図７を参照して説明する。
図７に示すリスト７００は、比較結果計算部１０５が、図６に示すリスト６００に基づいて算出することにより得られたものである。リスト７００には、対象ユーザ識別子６０１と比較結果７０１とが対応付けられる。
【００４１】
具体的には、図６に示すリスト６００の活動量６０２である歩数が多い方から昇順で順位付けを行う。つまり、対象ユーザ識別子６０１「００１」が「５０３４歩」、対象ユーザ識別子６０１「００３」が「２２５９歩」なので、対象ユーザ識別子６０１「００１」が比較結果７０１「１位」、対象ユーザ識別子６０１「００３」が比較結果７０１「２位」、と順位付けられる。
【００４２】
次に、ステップＳ４０６で生成される寄与情報リストの一例について図８を参照して説明する。
図８に示す寄与情報リスト８００は、寄与情報生成部１０４が、比較結果計算部１０５の図７に示す比較結果のリスト７００に基づいて算出することにより得られたものである。
寄与情報リスト８００には、対象属性値である属性値８０１と寄与情報８０２とが対応付けられる。図８の例では、属性値８０１の中で１位である対象ユーザ識別子を寄与情報とする。
【００４３】
すなわち、図７において比較結果７０１が「１位」と順位付けられている対象ユーザ識別子６０１は「００１」なので、寄与情報８０２は「００１」となり、寄与情報リスト８００には、属性値８０１「男」と寄与情報８０２「００１」とが対応付けられる。なお、他の対象属性値についても同様に処理され、情報蓄積部１０３は、寄与情報が生成されるたびに寄与情報リスト８００に属性値８０１と寄与情報８０２との組を追加していけばよい。
【００４４】
次に、ステップＳ４０８で生成される寄与度リストの一例について図９に示す。
図９に示す寄与度リスト９００は、寄与度計算部１０６が、図８に示す寄与情報リスト８００に基づいて算出することにより得られたものである。
【００４５】
ここでは、図５の属性値リスト５００に示される全ての属性値について処理が完了した場合を想定する。寄与度リスト９００には、属性種別９０１と寄与度９０２とが対応付けられる。また、寄与度として、属性種別の属性値の寄与情報の中で、重複を除いたユーザ識別子の総数を用いる。
【００４６】
具体的には、寄与情報リスト８００を参照すると、属性値８０１「男」には寄与情報８０２としてユーザ識別子「００１」が、属性値８０１「女」には寄与情報８０２としてユーザ識別子「００２」が、それぞれ存在する。属性値「男」「女」の属性種別は「性別」であるから、寄与情報の総数は「２」である。よって、寄与度リスト９００には、属性種別９０１「性別」および寄与度９０２「２」が対応付けられて格納される。
【００４７】
また、「重複を除いたユーザ識別子の総数」とは、例えば、ユーザ識別子「００１」が、図８の寄与情報リスト８００に示すように、属性値８０１「３０代」および「３３歳」の両方で１位のユーザであるとする。属性値リスト５００を参照すると、属性値８０１「３０代」および「３３歳」の属性種別５０１は「年齢」であり、ユーザ識別子「００１」が重複する。よって、重複を除いたユーザ識別子の数となるようにユーザ識別子「００１」は総数を「１」としてカウントすればよい。
【００４８】
以上に示した第１の実施形態によれば、属性種別に関する寄与度を含む寄与度リストを生成して出力することにより、寄与度リストを参照すれば、多くのユーザ識別子が比較結果の条件を満たすことができる属性種別を認識することができる。これによって、ランキング集計などにおいて計算時間を大幅に削減することができる効率的なデータを提供することができる。
【００４９】
例えば、寄与度リストを受け取ったサービス等運営者が使用するサービス運営システムにおいて、寄与度リストを保存しておく。サービス等運営者は、ユーザのランキングの集計を行う際には、過去の属性値、活動量から求めた寄与度の高い属性種別を用いて計算を行う。なお、属性選択装置による計算はユーザ情報や活動量の更新に対応するため、定期的に計算を行うことが望ましい。
その結果、ユーザ全体の属性種別が膨大となった場合でも、事前に求めておいた参加ユーザにおいて活動量が上位（又は下位）となるユーザがより多数となる確率の高い属性種別の候補を用いてランキングの計算を行うことができるため、実際の情報提供時の計算時間の大幅に削減し、かつ効果的なランキング結果を提示することができる。つまり、データベースに保存されたユーザの過去の属性値の活動量を鑑みて選考基準に合致する属性種別（属性値）を選択することができる。
【００５０】
（第２の実施形態）
第２の実施形態では、比較結果を用いずに、属性種別に関する乖離度を算出する点が第１の実施形態とは異なる。
【００５１】
第２の実施形態に係る属性選択装置について図１０を参照して説明する。
図１０に示す属性選択装置１０００は、属性値取得部１０１、活動量取得部１０２、情報蓄積部１０３、統計値計算部１００１、寄与度計算部１００２および出力部１００３を含む。
属性値取得部１０１、活動量取得部１０２および情報蓄積部１０３については、第１の実施形態とほぼ同様の処理を行うので説明を省略する。
【００５２】
統計値計算部１００１は、情報蓄積部１０３から対象ユーザ識別子と活動量との組のリストを取得する。統計値計算部１００１は、対象ユーザ識別子の活動量の統計値（以下、部分統計値ともいう）を計算し、全ユーザ識別子の活動量の統計値（以下、全体統計値ともいう）を計算する。
【００５３】
寄与度計算部１００２は、統計値計算部１００１から部分統計値および全体統計値を受け取り、対象属性種別ごとに、部分統計値の全体統計値からの乖離度を計算する。
出力部１００３は、第１の実施形態とほぼ同様であるが、寄与度に代えて乖離度を出力する点が異なる。
【００５４】
次に、第２の実施形態に係る属性選択装置の乖離度計算処理について図１１のフローチャートを参照して説明する。
ステップＳ４０１からステップＳ４０４までは、第１の実施形態と同様である。
【００５５】
ステップＳ１１０１では、統計値計算部１００１が、取得した活動量リストから活動量に関して統計値（部分統計値）を計算する。統計値は、例えば、属性値を条件とした活動量の条件付き頻度分布または活動量の条件付き平均値が挙げられるが、これらに限られない。
【００５６】
ステップＳ１１０２では、統計値計算部１００１は、変数Ａに代入した対象属性値と計算した部分統計値との組を情報蓄積部１０３に入力し、情報蓄積部１０３は、属性値と部分統計値との組を格納する。その後処理はステップＳ４０２に戻り、同様の処理を繰り返す。なお、ステップＳ４０２において対象属性値が存在しない場合または属性値リストが空である場合、ステップＳ１１０３に進む。
【００５７】
ステップＳ１１０３では、統計値計算部１００１が、情報蓄積部１０３から全ての活動量を取得し、ユーザ全体の活動量の統計値（全体統計値）を計算する。ユーザ全体の活動量の全体統計値は、例えば、頻度分布または平均値が考えられるが、これらに限られない。
【００５８】
ステップＳ１１０４では、寄与度計算部１００２が、統計値からユーザ全体と属性種別ごとの属性値とによって決まる、ユーザ識別子の部分集合に関する統計値の乖離度を計算し、乖離度リストを生成する。
【００５９】
乖離度は、例えば、Ｋｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ距離を用いて以下のように計算できる。
属性種別５０１が性別の場合、対応する属性値である男、女を条件とする条件付頻度分布をｐ（ｉ｜男）、ｐ（ｉ｜女）とする。ここでｉは、歩数などの活動量の取り得る値である。同様に全体の頻度分布をｐ（ｉ）とする。
【００６０】
ｐ（ｉ｜男）とｐ（ｉ）とのＫｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ距離  Ｄ（ｐ（ｉ｜男）｜｜ｐ（ｉ））は、ｐ（ｉ｜男）×ｌｏｇ｛ｐ（ｉ｜男）／ｐ（ｉ）｝を全てのｉについて総和したものである。ここでｐ（ｉ｜男）＝０の場合、ｐ（ｉ｜男）×ｌｏｇ｛ｐ（ｉ｜男）／ｐ（ｉ）｝＝０として計算する。
【００６１】
同様にｐ（ｉ｜女）とｐ（ｉ）とのＫｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ距離  Ｄ（ｐ（ｉ｜女）｜｜ｐ（ｉ））は、ｐ（ｉ｜女）×ｌｏｇ｛ｐ（ｉ｜女）／ｐ（ｉ）｝を全てのｉについて総和したものである。
属性種別（性別）の乖離度は、これらの値を用いて、Ｄ（ｐ（ｉ｜男）｜｜ｐ（ｉ））＋Ｄ（ｐ（ｉ｜女）｜｜ｐ（ｉ））とする。
【００６２】
属性種別がとりうる属性値が３以上ある場合、その全ての属性値に対するＫｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ距離の和を乖離度とすればよい。
【００６３】
なお、乖離度は他に以下のようなものがあるが、これに限らない。
（１）属性種別ごとの活動量の条件付頻度分布と全体の活動量の頻度分布とから計算されるＪｅｎｓｅｎ−Ｓｈａｎｎｏｎ距離。
但し、Ｊｅｎｓｅｎ−Ｓｈａｎｎｏｎ距離は、Ｋｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ距離と同じ情報を用いて計算可能であるので説明は省略する。なお、上で定める乖離度は、Ｋｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ距離またはＪｅｎｓｅｎ−Ｓｈａｎｎｏｎ距離いずれも、分布の距離を定量化し与えることから、この距離が大きい属性種別は、ユーザ全体の集合では１位または上位になり得なかったユーザが上位となるような偏ったユーザの部分集合を形成する可能性が高いと言えるため、その値を属性種別の乖離度として定めてよい。
【００６４】
（２）属性値ごとの活動量の平均値と全体の活動量の分布から計算される平均値との差の絶対値を、属性種別ごとに合計した値。
なお、平均値の差が大きいことは、ユーザの集合の偏りが大きいと考えられることから、上述の（１）の場合と同様に、属性種別の乖離度として定めてよい。すなわち、ある属性種別の乖離度が大きいほど、当該属性種別で絞り込まれた場合に全体集合から離れていることを示すので、後段でランキング処理などをした場合に、全体のランキングでは出現しないようなユーザ識別子を抽出することができる。
【００６５】
ステップＳ１１０５では、出力部１０７が、乖離度リストにおいて、属性種別と乖離度との組を、乖離度が降順または昇順になる用に並び替え、並び替えた乖離度リストを外部に出力する。
【００６６】
次に、ステップＳ１１０１で算出される活動量の統計値の一例について図１２を参照して説明する。
図１２に示すリスト１２００は、統計値計算部１００１が、統計値として活動量に対する条件付き頻度分布を計算することにより得られたものである。リスト１２００には、活動量１２０１（ここでは、歩数）と、条件付き頻度分布１２０２（ここでは、変数Ａに代入した対象属性値に該当するユーザ識別子であって、かつ活動量１２０１に該当する歩数である人数）とが対応付けられる。
具体的には、活動量１２０１「２２５９歩」と条件付き頻度分布１２０２「５人／１２０人」とが対応付けられる。
【００６７】
以上に示した第２の実施形態によれば、属性種別の乖離度を計算することで、比較結果を計算しなくても、寄与度とは異なる観点で第１の実施形態と同様の効果を得ることができる。すなわち、乖離度リストを参照すれば、多くのユーザ識別子が比較結果の条件を満たすことができる属性種別を認識することができる。これによって、ランキング集計などにおいて計算時間を大幅に削減することができる効率的なデータを提供することができる。
【００６８】
なお、上述の実施形態では、属性値取得部１０１および活動量取得部１０２において、ユーザ識別子、属性種別および属性値を含むユーザの情報について取得し、寄与度を算出する例を示すが、ユーザの情報に限られない。すなわち、データを集計する対象となる、ある識別子と属性種別および属性値とが対応付けられるようなデータエントリであれば、上述した実施形態に係る属性選択装置により同様に処理できる。例えば、データエントリが商品の情報であってもよく、属性値取得部１０１は、ユーザ識別子の代わりに商品識別子（商品管理番号など）、対応する属性種別として製造会社、色などを取得すればよく、活動量取得部１０２は、活動量として、当該商品の販売台数などを取得すればよい。
このようにすることで、商品の情報についてもユーザの情報を取得する場合と同様に処理することができる。
【００６９】
上述した属性選択装置は、図１および図１０の構成要素の全部または一部を備える装置とし、いずれか一部または全部を属性選択装置とは別の装置が備え、別の装置と属性選択装置とがネットワークを介して接続する形態で処理が実現してもよい。
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。
【００７０】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００７１】
１００，１０００・・・属性選択装置、１０１・・・属性値取得部、１０２・・・活動量取得部、１０３・・・情報蓄積部、１０４・・・寄与情報生成部、１０５・・・比較結果計算部、１０６，１００２・・・寄与度計算部、１０７，１００３・・・出力部、２００，３００，６００，７００，１２００・・・リスト、２０１・・・ユーザ識別子、２０２・・・性別、２０３・・・年齢、２０４・・・居住地、２０５・・・血液型、３０１，１２０１・・・活動量、５００・・・属性値リスト、５０１，９０１・・・属性種別、５０２，８０１・・・属性値、６０１・・・対象ユーザ識別子、６０２・・・活動量、７０１・・・比較結果、８００・・・寄与情報リスト、８０２・・・寄与情報、９００・・・寄与度リスト、９０２・・・寄与度、１００１・・・統計値計算部、１２０２・・・条件付き頻度分布。
【図１】
2017228061.tif 000003
【図２】
2017228061.tif 000004
【図３】
2017228061.tif 000005
【図４】
2017228061.tif 000006
【図５】
2017228061.tif 000007
【図６】
2017228061.tif 000008
【図７】
2017228061.tif 000009
【図８】
2017228061.tif 000010
【図９】
2017228061.tif 000011
【図１０】
2017228061.tif 000012
【図１１】
2017228061.tif 000013
【図１２】
2017228061.tif 000014