以下に、本願に係る情報処理装置、情報処理方法および情報処理プログラムを実施するための形態(以下、「実施形態」と記載する)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法および情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
まず、図1を用いて、実施形態に係る情報処理装置が行う情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1には、実施形態に係る情報処理装置1を含む情報処理システムSを示している。図1に示すように、実施形態に係る情報処理システムSは、情報処理装置1と、サービス提供サーバ10(10−1,10−2,10−3)と、ユーザ端末100とを含む。
ユーザ端末100は、ユーザUが所有する端末装置である。ユーザUは、ユーザ端末100を操作してサービス提供サーバ10へアクセスすることで、各サービス提供サーバ10が提供するサービスY(Y1,Y2,Y3)を利用する(ステップS1−1,S1−2,S1−3)。
サービス提供サーバ10は、各種サービスYをユーザUへ提供するサーバ装置である。サービス提供サーバ10が提供するサービスYは、例えば、ユーザ端末100にインストールされた各種アプリを介して情報を配信するサービスである。このようなサービスには、例えば、ニュース提供サービスや、オークションサービス、天気予報サービス、ショッピングサービス、金融取引(株取引等)サービス、路線検索サービス、地図提供サービス、旅行サービス、飲食店紹介サービス、ブログサービス等がある。なお、サービスYは、アプリを介して情報を配信されるサービスに限らず、例えば、ユーザUがブラウザにアクセスすることで情報を提供するサービスであってもよい。
なお、図1では、サービスY1は、ショッピングサイトを提供するショッピングサービスであり、サービスY2は、地図に関する機能を提供する地図提供サービスであり、サービスY3は、各種情報を検索する検索サイトを提供する検索サービスである場合を例に挙げて説明する。
また、各サービス提供サーバ10は、サービスYを利用したユーザUの属性を解析することでユーザUの特徴を推定する。具体的には、各サービス提供サーバ10は、ユーザUの属性を用いてユーザUの特徴を推定するモデル、および、ユーザUの属性を用いて推定されたユーザUの特徴に関する推定結果の少なくとも一方を含む特徴情報を生成する(ステップS2−1,S2−2,S2−3)。
ここでいう属性とは、ユーザUの確定した属性、あるいは、ユーザUの特徴であり、例えば、検索ログや購入履歴等といったサービスYを利用した際のユーザUの行動に関する行動情報や、性別、年齢、住所等といったデモグラフィック属性、ライフサイクル、価値観、個性、購買動機等といったサイコグラフィック属性等を含む概念である。
また、ユーザUの特徴とは、ユーザUの様々な属性を包括することで推定されるユーザUの性質、あるいは、推定される属性であって、例えば、ユーザUの興味や、趣味嗜好、行動パターン(検索行動や、購買行動等)等を含む。
また、特徴情報における上記したモデルは、例えば、ユーザUの属性を入力して、ユーザUの特徴をスコアとして出力することができる。また、特徴情報における上記した推定結果とは、例えば、モデルが出力するスコアである。なお、推定結果は、モデルによらない情報、例えば、ユーザUの属性を単に数値化した情報(例えば、検索回数に応じて増減するスコア等)であってもよい。図1に示す例では、ショッピングサービスとしてのサービスY1は、「釣り好き」のモデル、および、推定結果であるスコア「2.3」を生成する。例えば、サービスY1のモデルは、ショッピングサービスにおける釣り商品の購入履歴に基づき、スコアを出力する。
また、地図提供サービスとしてのサービスY2は、サービスY1と同様に「釣り好き」のモデル、および、推定結果であるスコア「5.3」を生成する。例えば、サービスY2のモデルは、釣りスポットの検索履歴に基づき、スコアを出力する。なお、図1では、スコアが大きいほど、その特徴が強いことを示す。
また、上記したスコアは、連続値である場合を示したが、例えば、離散値であってもよい。具体的には、釣り好きかどうかを「1」(好き)または「0」(嫌い)のいずれかの離散値のスコアで表現してもよい。あるいは、推定結果の一例としてスコアを示したが、推定結果は、スコアに限定されるものではなく、「釣り好き」等のようにテキストの情報であってもよい。
このように、各サービスY1、Y2で生成される特徴情報は、互いに「釣り好き」のモデルで共通するものの、スコアが互いに異なる場合が想定される。このため、「釣り好き」に関して異なる2つのスコアを提供するおそれがある。
つまり、サービスY1の「釣り好き」のスコア「2.3」に対してサービスY2の「釣り好き」のスコア「5.3」は、一見すると、スコア「5.3」の方が高く見えるが、実際には、スコア「2.3」の方が高い場合も想定される。
また、仮に、各サービスYが、特徴情報に対して信頼度を独自に算出したとしても、統一した基準で信頼度が算出されていないため、信頼度自体の信憑性が疑われる。つまり、各特徴情報の推定結果の推定精度、すなわち、各特徴情報の信頼度が担保されていないおそれがある。
そこで、実施形態に係る情報処理では、取得した特徴情報について統一した基準で信頼度を算出することとした。具体的には、実施形態に係る情報処理装置1は、上記した特徴情報を異なるサービスYそれぞれから取得(ステップS3−1,S3−2,S3−3)し、かかる特徴情報をユーザ毎に紐づけた共有情報を生成する。なお、実施形態に係る情報処理装置1は、上記したモデル、および、推定結果であるスコアを含む特徴情報を取得する場合に限らず、モデルのみを含む特徴情報、あるいは、スコアのみを含む特徴情報を取得してもよい。
続いて、情報処理装置1は、各サービスYから取得した特徴情報の推定結果に基づき、特徴情報の信頼度を算出する(ステップS4)。例えば、情報処理装置1は、ユーザUに対して「釣り」に関するアンケートを配信し、アンケート結果からユーザUの「釣り」に関する関心度を推定する。
続いて、情報処理装置1は、かかる関心度と、「釣り好き」における各スコアとを比較することで、各サービスYによって登録された特徴情報の信頼度を算出する。なお、情報処理装置1は、サービスYにおける関心度とスコアとのペアをランダムに抽出し、抽出したペア同士を比較することで、各サービスの特徴情報の信頼度を算出することも可能であるが、かかる点については、後述する。
続いて、情報処理装置1は、サービスYから要求があった場合に、登録した特徴情報に基づく提供情報を提供する(ステップS5−1,S5−2,S5−3)。例えば、提供情報の提供方法としては、以下の2通りがある。
1つ目は、サービス提供サーバ10が特定のユーザUを指定し、共有情報に基づいてそのユーザUの特徴(推定結果)を提供する方法である。かかる場合に、上述の信頼度が所定値以上、すなわち、信頼性が担保された特徴のみを提供することや、あるいは、ユーザUの特徴に信頼度をあわせて提供することも可能である。
2つ目は、サービス提供サーバ10が特定の特徴を指定し、共有情報に基づいてその特徴をもつユーザUをリストとして提供する方法である。かかる場合に、信頼性が担保された特徴に基づき、ユーザUのリストを生成することや、各特徴の信頼度をあわせてリストを生成することも可能である。
つまり、実施形態に係る情報処理方法では、ユーザUの属性を包括して生成された特徴情報を解析結果として蓄積する。これにより、他のサービスYが特徴情報を取得する、すなわち、ユーザUに関連付けられた属性、または、属性に関連付けられるユーザUの情報を他のサービスYが包括的に取得することができる。
したがって、実施形態に係る情報処理方法では、他のサービスYがユーザUの情報を特徴情報として包括的に取得可能となったことで、技術的な困難を解消することができる。すなわち、実施形態に係る情報処理方法によれば、サービスY間の隔たりを意識することなく他のサービスYの解析結果を取得することができる。
また、実施形態に係る情報処理において、統一した基準で信頼度を算出することで、各特徴情報の推定精度を担保することが可能となる。言い換えれば、共有する情報の信頼度を担保することができる。
次に、図2を用いて、実施形態に係る情報処理システムSの構成について説明する。図2は、実施形態に係る情報処理システムSの構成例を示す図である。図2に示すように、実施形態に係る情報処理システムSは、情報処理装置1と、複数のサービス提供サーバ10−1〜10−nと、複数のユーザ端末100−1〜100−mとを含む。情報処理装置1、複数のサービス提供サーバ10−1〜10−nおよび複数のユーザ端末100−1〜100−mは、ネットワークNを介して接続される。ネットワークNは、LAN(Local Area Network)、WAN(Wide Area Network)、電話網(携帯電話網、固定電話網等)、地域IP(Internet Protocol)網、インターネット等の通信ネットワークである。ネットワークNには、有線ネットワークが含まれていてもよいし、無線ネットワークが含まれていてもよい。
ユーザ端末100は、上記したように、ユーザUによって利用される端末装置である。ユーザ端末100は、例えば、スマートデバイス(スマートフォン、あるいはタブレット)、携帯電話、パーソナルコンピュータ等である。ユーザ端末100は、ユーザUの操作に従って、サービス提供サーバ10に対して情報の要求を送信する。
情報処理装置1は、サービス提供サーバ10の上位サーバとして機能するサーバ装置である。情報処理装置1は、各サービス提供サーバ10から特徴情報を取得して共有情報を生成するとともに、生成した共有情報を使ってサービス提供サーバ10へ各種情報を提供する。また、情報処理装置1は、取得した特徴情報の信頼度を算出する機能を有する。
サービス提供サーバ10は、上記したようにサービスYをユーザUへ提供するサーバ装置である。サービス提供サーバ10は、例えば、サービスYを利用したユーザUの属性を用いて特徴情報を生成する。また、サービス提供サーバ10は、情報処理装置1に対して提供情報を要求する。提供情報の要求は、サービス提供サーバ10に接続された専用端末をサービスYの管理者が操作することで、サービス提供サーバ10から送信される。
また、情報処理システムSのうち、情報処理装置1および複数のサービス提供サーバ10−1〜10−nは、例えば、1つの事業者が有するように構成される。つまり、ある事業者のあるサービスYから見た場合の他のサービスYは、同じ事業者の他のサービスYであってもよく、他の事業者のサービスYであってもよい。また、1つの事業者は、複数のサービスYを提供可能である。また、1つの事業者は、各サービスYが生成した特徴情報を共有情報として情報処理装置1に集約するとともに、共有情報に基づいた提供情報を取得して利用する。
なお、情報処理装置1および複数のサービス提供サーバ10−1〜10−nは、それぞれ別の事業者が有する構成であってもよい。また、複数のサービス提供サーバ10−1〜10−nは、それぞれ別の事業者が有する構成であってもよい。また、上記した情報処理システムSに加えて、提供情報の利用のみを行う事業者のサーバが接続されてもよい。
なお、図2では、情報処理装置1は、サービス提供サーバ10とは別体で構成されて共有情報を生成および提供する機能を有する場合を示したが、例えば、いずれかのサービス提供サーバ10が情報処理装置1の機能の一部または全部を代替して行ってもよい。
また、図2では、情報処理装置1は、共有情報の生成および提供のすべての機能を兼ね備える場合を示したが、例えば、複数の情報処理装置1が、上記した機能を分担して行ってもよい。
次に、図3を用いて、実施形態に係る情報処理装置1の構成について説明する。図3は、実施形態に係る情報処理装置1の構成例を示す図である。
図3に示すように、情報処理装置1は、通信部2と、制御部3と、記憶部4とを備える。制御部3は、取得部31と、選択部32と、配信部33と、算出部34と、受付部35と、抽出部36と、推定部37と、提供部38とを備える。
通信部2は、例えば、NIC(Network Interface Card)等によって実現される。通信部2は、ネットワークNと有線または無線で接続され、ネットワークNを介して、少なくともサービス提供サーバ10との間で情報の送受信を行う。
記憶部4は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図2に示すように、記憶部4は、共有情報41と、サービス情報42と、モデルプログラム情報43とを記憶する。
共有情報41は、サービス提供サーバ10から取得した特徴情報を含んだ情報である。図4は、共有情報41の一例を示す図である。図4に示すように、共有情報41は、例えば、列項目が「UID」であり、行項目が「特徴情報」であるテーブルである。
また、各特徴情報には、特徴情報の提供元となるサービス名と、特徴情報の信頼度が付与される。かかる信頼度は、後述する算出部34によって算出される値であり、100を上限として、100に近いほど、信頼度が高いことを示す。また、列項目および行項目の各組のデータ項目には、モデルの出力であるスコアが入力される。
「UID」は、ユーザUを識別する識別情報である。「特徴情報」は、サービス提供サーバ10それぞれで生成されるモデルおよびスコアに関する情報である。なお、図4では、「特徴情報」の各項目には、モデル名称が入力される。
図4に示すように、共有情報41は、「UID」および「特徴情報」のスコアを含む情報である。図4に示す例では、UIDが「U1」であるユーザは、サービスY1の特徴情報におけるモデル「釣り好き」のスコアが「2.3」であり、サービスY2のモデル「釣り好き」のスコアが「3.5」であることを示す。また、UIDが「U1」であるユーザは、サービスY3の特徴情報におけるモデル「旅行好き」のスコアが「9.8」となっている。
また、図4では、共有情報41をスコアとして示したが、共有情報41は、スコアに限定されるものではなく、「○、△および×」や、「優、良および可」等といった段階分けされた情報であってもよい。同様に、図4では、信頼度を数値で示したが、「○、△および×」や、「優、良および可」等といった段階分けで示すことにしてもよい。
次に、サービス情報42は、各サービス提供サーバ10が提供するサービスYに関する情報である。図5は、サービス情報42の一例を示す図である。図5に示すように、サービス情報42は、「サービスID」、「提供サービス」および「登録モデル数」といった項目を含む。
「サービスID」は、サービスY(あるいは、サービス提供サーバ10)を識別する識別情報である。「提供サービス」は、サービスYの内容を示す情報である。「登録モデル数」は、共有情報41に登録されている特徴情報のモデルの数を示す情報である。
次に、モデルプログラム情報43は、特徴情報におけるモデルのプログラムデータを含んだ情報である。図6は、モデルプログラム情報43の一例を示す図である。モデルプログラム情報43は、後述の取得部31が取得した特徴情報におけるモデルのプログラムデータを含む情報である。図6に示すように、モデルプログラム情報43は、「モデルID」、「モデル名称」、「グループ」、「サービスID」および「モデルデータ」等といった項目を含む。
「モデルID」は、モデルを識別する識別情報である。「モデル名称」は、モデルの名称を示す情報である。「サービスID」は、サービスY(あるいは、サービス提供サーバ10)を識別する識別情報である。「モデルデータ」は、特徴情報におけるモデルのプログラムデータである。
「モデルデータ」は、例えば、ユーザUの属性を説明変数とする回帰モデルである。例えば、「モデルデータ」は、以下の式に示す回帰モデルである。すなわち、y=ω1・x1+ω2・x2+・・・+ωn・xnの回帰モデルとして表すことができる。
上記式において、「x」は、ユーザUの属性に対応する説明変数である。「y」は、ユーザUの特徴を示すスコアに対応する目的変数である。また、「ω」は、「x」の係数であり、所定の重み値を示す。具体的には、「ω1」は、「x1」の重み値であり、「ω2」は、「x2」の重み値であり、「ωn」は、「xn」の重み値である。このように、上記式は、ユーザUの属性に対応する説明変数「x」と、所定の重み値「ω」とを含む変数(例えば、「ω1・x1」)を組み合せることにより作成される。
なお、「モデルデータ」は、SVM(Support Vector Machine)やその他の機械学習法を用いて生成された特徴情報であってもよい。また、特徴情報は、深層学習(ディープラーニング)の技術を用いて生成されたものであってもよい。例えば、サービスYは、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて特徴情報を生成することができる。
図3の説明に戻り、制御部3について説明する。制御部3は、コントローラ(Controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置1内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部3は、例えば、コントローラであり、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
なお、取得部31、選択部32、配信部33、算出部34、受付部35、抽出部36、推定部37および提供部38それぞれ一部または全部がASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等のハードウェアで構成されてもよい。
制御部3は、サービス提供サーバ10から取得した特徴情報の共有情報への登録および登録した特徴情報の補正や更新を行う。また、制御部3は、特徴情報に基づいてサービスYに対して各種提供を行う。
制御部3は、サービス提供サーバ10から取得した特徴情報の共有情報41への登録および登録した特徴情報の補正や更新を行う。また、制御部3は、特徴情報に基づいてサービスYに対して各種提供を行う。
取得部31は、ユーザUの属性を用いてユーザUの特徴を推定するモデル、および、ユーザUの属性を用いて推定されたユーザUの特徴に関する推定結果の少なくとも一方を含む特徴情報を異なるサービスYそれぞれから取得する。例えば、取得部31は、サービスYに対して予め指定したフォーマットで生成させた特徴情報を取得する。これにより、サービスY間で特徴情報のフォーマットを揃えることができるため、統一した基準の特徴情報を取得することができる。
また、取得部31は、特徴情報として、上記したモデルと、かかるモデルから出力されるスコアの初期値とを含む情報を取得する。スコアの初期値は、例えば、サービス提供サーバ10によって予め算出されてもよく、取得部31がモデルデータを取得して算出してもよい。取得部31が初期値を算出する場合、特徴情報のモデルデータのみをまず取得し、その後、サービス提供サーバ10からユーザUの属性を取得してスコアを算出する。
なお、取得部31は、特徴情報を取得した際に、かかる特徴情報が指定のフォーマットに沿って生成されたか否かをチェックするチェック機能を有してもよい。
また、取得部31は、取得した特徴情報を共有情報41として登録するとともに、登録した特徴情報を更新する更新処理を行う。具体的には、取得部31は、初回時には、まず特徴情報のモデルデータとスコアの初期値とを取得し共有情報41として登録し、2回目以降については、サービスYからユーザUの属性を取得して共有情報41のスコアの更新のみ行うようにする。
また、取得部31は、ユーザUの属性の変化に応じてモデルを更新したり、各サービスYから提供されるスコアを更新したりすることで、共有情報41を更新することも可能である。
また、取得部31は、特徴情報におけるモデルの入力となるユーザUの属性を、モデルの取得元のサービスYとは異なるサービスYから取得してもよい。つまり、共有情報41として登録されたモデルの取得元のサービスYからユーザUの属性を取得してスコアを出力してもよく、あるいは、取得元のサービスYとは異なるサービスYから取得したユーザUの属性を使ってスコアを出力してもよい。これにより、例えば、異なる事業者のサービスY間で、共有情報41に登録されたモデルを共有することができる。
続いて、選択部32について説明する。選択部32は、取得部31によって登録された特徴情報のうち、信頼度の算出対象となる特徴情報を選択し、配信部33へ通知する。例えば、選択部32は、スコアの数、すなわち、サンプリング数が所定数以上に達した特徴情報を選択する。なお、選択部32は、各サービスYから新たな特徴情報を取得した場合に、かかる特徴情報を信頼度の算出対象とすることにしてもよい。
配信部33は、特徴情報によって推定される特徴に関する配信情報をユーザU(ユーザ端末100)へ配信する。例えば、配信部33は、信頼度の算出対象となる特徴が「釣り好き」である場合、「釣り」に関する配信情報を配信する。
まず、配信部33は、配信対象となるユーザUを共有情報41に基づいて選択する。例えば、配信部33は、「釣り好き」のスコアが登録されたユーザUをランダムに所定数選択する。続いて、配信部33は、選択したユーザUに対して配信情報を配信する。
図7は、実施形態に係る配信情報の一例を示す図である。図7に示すように、ユーザ端末100には、配信情報として、特徴に関するアンケートが配信される。なお、図7に示す「○○」、「○×」、「×○」等の欄には、アンケート対象となる各特徴が記載される。
例えば、質問Q1〜Q3は、各特徴に対するユーザUの関心の有無を問うものである。すなわち、質問Q1〜Q3に対するユーザUの回答結果に基づき、ユーザUの関心度を測ることができる。つまり、かかる回答結果は、各モデルの推定結果であるスコアの信頼度の指標となる。ユーザUが、ユーザ端末100を操作し、アンケートに回答すると、回答結果が情報処理装置1へ通知される。
後述する算出部34は、かかる回答結果に基づき、信頼度を算出することとなる。なお、ここでの回答結果とは、質問Q1〜Q3に対する回答に加え、回答の有無を含む。すなわち、ユーザUがアンケートを開封後、未回答であれば、未回答という回答結果が情報処理装置1へ通知される。また、質問Q1〜Q3は、アンケート対象となる1つの特徴に関する質問であってもよく、アンケート対象となる複数の特徴に関する質問であってもよい。
すなわち、情報処理装置1は、ユーザUに対するアンケートを配信情報として配信することで、ユーザUの特徴に関する関心度を直接得ることが可能となる。言い換えれば、確度の高い指標に基づいて信頼度を算出することが可能となる。
また、ここでは、配信部33が、図7に示すようなアンケートを配信情報として配信する場合について説明したが、信頼度の算出対象となる特徴に関する電子広告を配信情報として配信することも可能である。
配信部33が、電子広告を配信情報として配信する場合、ユーザUの電子広告に対するクリックの有無、閲覧時間の電子広告に対するユーザUの挙動が情報処理装置1へ通知される。
つまり、ユーザUが興味のある電子広告に対して閲覧時間が長くなることが予想され、また、電子広告をクリックする可能性が高まる。また、ユーザUが興味の薄い電子広告に対して閲覧時間が短くなることが予想され、電子広告をクリックをしない可能性が高まる。
つまり、電子広告に対するユーザUの挙動に基づき、電子広告に対する関心度を推定することが可能となる。また、この場合に、電子広告を配信することで、ユーザUにとって有益となる情報を提供しつつ、関心度を推定することが可能となる。なお、この場合の配信にかかる費用を電子広告主が負担することにしてもよい。
また、配信部33は、かかる電子広告をプッシュ通知やプル通知でユーザ端末100へ配信することが可能である。また、配信部33は、上記のアンケートと電子広告とを併用してユーザ端末100へ配信することにしてもよい。
また、ここでは、配信部33が、配信情報を配信する場合について説明したが、配信情報の配信機能を他のサーバが担うことにしてもよい。この場合、配信部33は、他のサーバに対して配信情報の配信を指示することとなる。すなわち、配信情報の配信処理を外部に委託することにしてもよい。
また、ここでは、配信部33が、ユーザUの関心度に対する配信情報を配信する場合について説明したが、これに限定されるものではない。すなわち、配信部33は、例えば、ユーザUのデモグラフィック属性を推定する特徴情報が有った場合、デモグラフィック属性の正誤に関するアンケートを配信情報として配信することにしてもよい。
具体的には、配信部33は、特徴情報において、「東京都民」モデルがあった場合、東京都民であるか否かのアンケートを配信情報として配信することができる。
図3の説明に戻り、算出部34について説明する。算出部34は、取得部31によって登録された特徴情報の推定結果に基づいて当該特徴情報の信頼度を算出する。具体的には、まず、算出部34は、配信部33による配信情報に対するユーザUの応答結果を取得する。
続いて、算出部34は、応答結果に基づき、ユーザUの特徴に対する関心度を推定する。算出部34は、配信情報がアンケートである場合、回答結果に応じて関心度を「○」、「×」の2段階に分類する。このとき、回答結果を未取得であるユーザUについては、未回答を示す「−」に分類する。
これにより、1人のユーザUに対する特徴情報としてのスコアと、関心度とが1つのペアとして得られる。同様に、算出部34は、配信情報が電子広告である場合、電子広告に対するユーザUの挙動に基づき、関心度を「○」、「×」の2段階に分類する。なお、ここでは、関心度を「○」、「×」の2段階に分類する場合について説明したが、関心度を数値化するなど、更に細分化して推定する事も可能である。
図8は、実施形態に係る算出部34による処理の具体例を示す図である。図8に示すように、算出部34は、各スコアに対して関心度が付与する。続いて、算出部34は、関心度とスコアとを1つのペアを比較するいわゆるペアワイズ法を用いることで、各特徴情報の信頼度を算出する。
具体的には、算出部34は、2つのペアをランダムで選択し、選択した2つのペアの「スコア」および「関心度」をそれぞれ比較する。このとき、スコアの大小関係と関心度の大小関係とが一致していれば、「OK」とし、スコアの大小関係と関心度の大小関係とが矛盾している場合、「NG」とする。
このとき、「OK」の数が多い程、特徴情報の信頼度が高いことを示し、「NG」の数が多い程、特徴情報の信頼度が低いことを示す。図8に示す例では、スコア「2.3」に対する関心度が「○」であり、スコア「3.5」に対する関心度が「×」であり、スコア「7.5」に対する関心度が「○」である場合を示す。
例えば、スコア「2.3」とスコア「3.5」を比較すると、スコア「2.3」の方がスコアの値が高いものの、関心度は、スコア「3.5」の方が高い。すなわち、スコアの大小関係と関心度の大小関係とが矛盾するため、この場合の比較結果は、「NG」となる。
また、スコア「3.5」と、スコア「7.5」を比較すると、スコア「7.5」の方がスコアの値が高く、関心度もスコア「7.5」の方が高い。すなわち、スコアの大小関係と関心度の大小関係と一致するため、この場合の比較結果は、「OK」となる。
算出部34は、上記の比較を統計的に優位となる回数行うことで、各特徴情報の信頼度を算出する。また、算出部34は、ペアワイズ法を用いることで、少ないサンプル数(ペア数)で確度の高い信頼度を算出することが可能となる。なお、例えば、信頼度は、「OK数」/「総比較回数」で求めることが可能である。
また、算出部34は、信頼度の算出に用いるサンプル数に基づき、信頼度に対する標準誤差を算出することも可能である。なお、算出部34は、標準誤差について統計学的手法を用いて算出することが可能である。
つまり、算出部34は、特徴情報の信頼度に対する確からしさを算出する。かかる確からしさは、情報処理装置1の利用者が特徴情報の推定結果を用いるうえで1つの指標となる情報である。
つまり、利用者に対してよりよい提供情報を提供することが可能となる。なお、図8では、ペアワイズ法を用いて信頼度を算出する場合について説明したが、これに限定されるものではない。すなわち、各スコアと各スコアにそれぞれ対応する関心度とを単に比較することで、信頼度を算出することにしてもよいし、あるいは、他の統計学的手法を用いて信頼度を算出することにしてもよい。
また、算出部34は、特徴情報の信頼度が所定値以下であるものについては、提供元のサービスYへ特徴情報の改良を指示したり、あるいは、特徴情報そのものを使わないようにしたりすることも可能である。
すなわち、情報処理装置1は、基準値以上の信頼度が担保された特徴情報のみを用いて提供情報を各サービス提供サーバ10へ提供することも可能である。これにより、確度の高い特徴情報のみを提供情報として提供することが可能となる。したがって、確度の高い特徴情報のみを各サービスYで共有することが可能となり、各サービス提供サーバ10による情報処理装置1の利用を促進することが可能となる。
なお、ここでは、算出部34が、関心度とスコアとを1つのペアとしたペアワイズ法を用いて信頼度を算出する場合について説明したが、これに限定されるものではない。すなわち、上述のように、算出部34は、デモグラフィック属性を推定する特徴情報については、関心度をデモグラフィック属性の正誤結果に置き換えて、ペアワイズ法を適用することができる。
これにより、デモグラフィック属性を推定する特徴情報への信頼度を算出することができ、信頼度が担保されたデモグラフィック属性を各サービスYで共有することが可能となる。また、算出部34は、他のサービスYでユーザUの実際のデモグラフィック属性に関する情報を保有していた場合、配信結果を用いることなくペアワイズ法を適用することも可能である。
図3の説明に戻り、受付部35について説明する。受付部35は、サービス提供サーバ10から各種要求を受け付ける。例えば、受付部35は、特定の特徴を指定する特徴指定の要求をサービスYから受け付ける。特徴指定は、共有情報41に含まれるモデルのモデルIDやモデル名称等を指定する。特徴指定による指定は、1つのモデルであってもよく、複数のモデルであってもよい。あるいは、特徴指定は、分野指定等といった複数のモデルを包含する指定であってもよい。
図9Aは、受け付け画面の一例を示す図であり、サービス提供サーバ10に表示される画面の一例である。図9Aに示すように、受け付け画面には、特徴指定の各カテゴリとともに、信頼度の選択項目が表示される。
サービス提供サーバ10の利用者は、受け付け画面を視認しつつ、所望のカテゴリおよび信頼度を指定する。図9Aに示す例では、特徴指定のモデル名称「釣り好き」が選択され、「信頼度95%以上」が選択されている場合を示す。
受付部35は、選択されたカテゴリにおいて、指定された信頼度を満たす特徴情報の推定結果の提供要求を受け付けることとなる。このように、受付部35は、特徴指定とともに、信頼度の指定を受け付けることで、利用者の要求に応じた信頼度を有する情報のみに絞って利用者へ提供することが可能となる。
なお、ここでは、信頼度の指定を受け付ける場合について説明したが、これに限定されるものではない。情報処理装置1は、特徴指定により指定されたカテゴリのうち、信頼度が基準値を満たすもののみを自動的に抽出して提供することも可能である。
また、受付部35は、上述のように、特定のユーザUを指定するユーザ指定の要求をサービスYから受け付けることもできる。ユーザ指定により指定されるユーザUは、1人であってもよく、複数であってもよい。あるいは、ユーザ指定は、複数のユーザを包含するグループ指定であってもよい。グループ指定の場合、ユーザ指定によって特定のグループの名称等が指定される。
また、受付部35は、上記した要求の中に期間指定を含ませてもよい。例えば、特徴指定の場合、期間指定により指定された期間に登録された特徴情報を特徴指定の対象としてもよい。また、ユーザ指定の場合、期間指定により指定された期間にサービスYを利用したユーザUをユーザ指定の対象としてもよい。また、受付部35は、信頼度に対する標準誤差の指定をあわせて受け付けることにしてもよい。
図3の説明に戻り、抽出部36について説明する。抽出部36は、特徴情報の推定結果に基づいて特徴指定によって指定された特定の特徴に対応するユーザUを抽出する。例えば、抽出部36は、指定された特徴のスコアが所定値以上のユーザUを抽出する。この際、抽出部36は、信頼度の指定が指定されている場合、指定された特徴のうち、指定された信頼度を満たす特徴のみを用いてユーザUを抽出することも可能である。
推定部37は、特徴情報の推定結果に基づいてユーザ指定によって指定された特定のユーザUの特徴を推定する。例えば、推定部37は、指定されたユーザUにおける各特徴情報のうち、スコアが所定値以上の特徴情報が当該ユーザUの特徴であると推定する。
なお、推定部37は、指定されたユーザUにおける各特徴情報のうち、スコアが所定値未満の特徴情報がある場合、その特徴情報の特徴を当該ユーザUが有していないと推定してもよい。
提供部38は、取得部31によって登録された特徴情報の推定結果に基づく提供情報を他のサービスYへ提供する。例えば、提供部38は、スコアに基づいた提供情報を他のサービスYへ提供する。具体的には、提供部38は、抽出部36または推定部37から取得した情報に基づいて提供情報を生成し、当該提供情報をサービスYへ提供する。
例えば、提供部38は、特徴指定に基づき抽出部36によって抽出されたユーザUのリストを含む提供情報を生成し、サービスYへ提供する。リストのソートは、スコアの大小順や、五十音順、アルファベット順等といった任意の順で並べられてもよい。
あるいは、提供部38は、抽出部36によって抽出されたユーザUのうち、一部のユーザUのみを提供情報としてサービスYへ提供してもよい。具体的には、提供部38は、スコアが最上位のユーザUのみや、スコアが上位複数番目のユーザU等を選抜した提供情報を提供してもよい。
図9Bは、提供情報の一例を示す図である。なお、ここでは、図9Aに示す受け付け画面においてモデル名称「釣り好き」、「信頼度70%以上」が選択された場合における提供情報を示す。
図9Bに示すように、提供情報には、抽出部36によって抽出されたユーザUのリストであり、各モデル名称には、信頼度およびサンプル数が付与される。信頼度は、上述の算出部34によって算出される値であり、スコアの信頼度を示す。
また、サンプル数は、信頼度の算出に用いたサンプル数を示す。上述のように、サンプル数が多いほど、信頼度の標準誤差が小さくなることを示す。なお、サンプル数に代えて標準誤差を表示することにしてもよい。
このように、提供部38は、提供情報として信頼度やサンプル数をあわせて提供することで、提供情報の利用者に対して提供情報を利用する際の指針をあわせて提供することが可能となる。
これにより、利用者は、提供情報のうち信頼度の高い提供情報を選択して、自身のサービスYで用いることが可能となる。
また、提供部38は、ユーザ指定に基づき推定部37によって推定されたユーザUの特徴を示す情報を含む提供情報を他のサービスYへ提供する。例えば、提供部38は、推定部37によって推定されたユーザUの特徴をリストにして並べた情報を含む提供情報を提供する。
また、提供部38は、推定部37によって推定されたユーザUの特徴のうち、一部の特徴のみを含む提供情報を提供してもよい。例えば、提供部38は、スコアが最上位のモデルである特徴のみや、スコアが上位複数番目のモデルである特徴のみを選抜した提供情報を提供してもよい。
次に、図10および図11を用いて実施形態に係る情報処理装置1が実行する処理手順について説明する。図10および図11は、実施形態に係る情報処理装置1が実行する処理手順を示すフローチャートである。なお、図10では、特徴情報の信頼度を算出するまでの一連の処理の流れについて説明する。
図10に示すように、まず、取得部31は、ユーザUの属性を用いてユーザUの特徴を推定するモデル、および、属性を用いて推定された特徴に関する推定結果の少なくとも一方を含む特徴情報を異なるサービスYそれぞれから取得する(ステップS101)。
続いて、選択部32は、信頼度の算出対象となる特徴情報を選択し(ステップS102)、配信部33は、算出対象となる特徴情報が推定する特徴に関する配信情報を配信する(ステップS103)。
続いて、算出部34は、配信情報に対するユーザUの応答結果を取得し(ステップS104)、かかる応答結果に基づき、ユーザUの配信情報に対する関心度を推定する(ステップS105)。
続いて、算出部34は、モデルの推定結果であるスコアと、関心度とに基づき、モデルの信頼度を算出し(ステップS106)、処理を終了する。
次に、図11を用いて情報処理装置1が提供情報をサービス提供サーバ10へ提供するまでの一連の処理について説明する。
図11に示すように、提供処理において、まず、受付部35は、サービスYから特徴指定の要求を受け付けたか否かを判定する(ステップS201)。抽出部36は、受付部35が特徴指定を受け付けた場合(ステップS201,Yes)、特徴指定により指定された特定の特徴をもつユーザUを抽出する(ステップS202)。
続いて、提供部38は、抽出部36によって抽出されたユーザUのリストを含む提供情報をサービスYへ提供し(ステップS203)、処理を終了する。
一方、受付部35は、特徴指定の要求を受け付けなかった場合(ステップS201,No)、ユーザ指定の要求を受け付けたか否かを判定する(ステップS204)。なお、ステップS201およびステップS204の処理は、その処理順が入れ替わってもよい。
推定部37は、受付部35がユーザ指定の要求を受け付けた場合(ステップS204,Yes)、ユーザ指定により指定されたユーザUの特徴を推定する(ステップS205)。
続いて、提供部38は、推定部37によって推定されたユーザUの特徴を示す情報を含む提供情報をサービスYへ提供し(ステップS206)、処理を終了する。
一方、受付部35は、ユーザ指定の要求を受け付けなかった場合(ステップS204,No)、処理をステップS201へ移行する。
次に、図12を用いて、実施形態に係る情報処理装置1が実行する提供処理の手順について説明する。図12は、実施形態に係る情報処理装置1が実行する提供処理の手順を示すフローチャートである。
また、上述してきた実施形態にかかる情報処理装置1は、例えば図10に示すような構成のコンピュータ1000によって実現される。図10は、実施形態に係る情報処理装置1の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを、ネットワークNを介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを、入出力インターフェイス1600を介して出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に格納されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態にかかる情報処理装置1として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部3の機能を実現する。また、HDD1400には、記憶部4内のデータが格納される。コンピュータ1000のCPU1100は、これらのプログラムを、記録媒体1800から読み取って実行するが、他の例として、他の装置から、ネットワークNを介してこれらのプログラムを取得してもよい。
上述してきたように、実施形態に係る情報処理装置1は、取得部31と、算出部34とを備える。取得部31は、ユーザUの属性を用いてユーザUの特徴を推定するモデル、および、属性を用いて推定された特徴に関する推定結果の少なくとも一方を含む特徴情報を異なるサービスYそれぞれから取得する。算出部34は、取得部31によって取得された特徴情報に基づく推定結果を用いて当該特徴情報の信頼度を算出する。したがって、実施形態に係る情報処理装置1によれば、モデルの推定精度を担保することができる。
また、実施形態に係るモデルは、ユーザUの属性を入力することで、ユーザUの特徴をスコアとして出力するものであって、算出部34は、推定結果としてスコアを用いて信頼度を算出する。したがって、実施形態に係る情報処理装置1によれば、ユーザUの特徴がスコア化されることで、他のサービスY間で統一された基準の特徴を共有できるため、他のサービスYの解析結果をより有効に活用することができる。
また、情報処理装置1は、特徴情報の特徴に関する配信情報をユーザUへ配信する配信部33をさらに備え、算出部34は、配信部33によって配信された配信情報に対するユーザUの応答結果に基づいて信頼度を算出する。したがって、実施形態に係る情報処理装置1によれば、統一した基準で信頼度を算出することができる。
また、算出部34は、応答結果から推定されるユーザUの特徴に関する関心度と、推定結果とを比較することで、信頼度を算出する。したがって、実施形態に係る情報処理装置1によれば、信頼度を精度よく算出することが可能となる。
また、算出部34は、関心度と推定結果とを1つのペアとし、異なるペア間における関心度および推定結果の大小関係に基づき、信頼度を算出する。したがって、実施形態に係る情報処理装置1によれば、少ないサンプル数で精度よく信頼度を算出することが可能となる。
また、配信部33は、配信情報として、特徴に関するアンケートを配信し、算出部34は、アンケートの回答結果に基づいて関心度を推定する。したがって、実施形態に係る情報処理装置1によれば、関心度を精度よく推定することができる。
また、実施形態に係る配信部33は、配信情報として、特徴に関する電子広告を配信し、算出部34は、電子広告に対するユーザUの挙動に基づいて関心度を推定する。したがって、実施形態に係る情報処理装置1によれば、ユーザUへ有益な情報を提供しつつ、関心度を推定することが可能となる。
また、配信部33は、ユーザUのデモグラフィック属性を推定する特徴情報に関する配信情報を配信する場合に、デモグラフィック属性の正誤に関するアンケートを配信し、算出部34は、アンケートの結果が示す正誤情報と、推定結果とを1つのペアとし、異なるペア間で正誤情報と推定結果とを比較することで、信頼度を算出する。したがって、実施形態に係る情報処理装置1によれば、信頼度が担保されたでもグラフィック属性を各サービスYで共有することが可能となる。
また、実施形態に係る情報処理装置1は、提供情報の提供要求をサービスYから受け付ける受付部35と、受付部35によって受け付けられた提供要求に基づき、特徴情報果を提供する提供部38とを備える。提供部38は、特徴情報に信頼度を対応付けた提供情報を提供する。したがって、実施形態に係る情報処理装置1によれば、利用者が、提供情報のうち信頼度の高い提供情報を選択して、自身のサービスYで用いることが可能となる。
また、実施形態に係る算出部34は、信頼度の算出に用いた推定結果のサンプリル数に基づき、信頼度の標準誤差を算出し、提供部38は、サンプル数または標準誤差を含む提供情報を提供する。したがって、実施形態に係る情報処理装置1によれば、利用者に対して信頼度の確からしさあわせて提示することで、提供情報の質を向上させることができる。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた実施形態に記載した各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部31は、取得手段や取得回路に読み替えることができる。