(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024145614
(43)【公開日】2024-10-15
(54)【発明の名称】情報処理装置、情報配信システム、及び、機械学習モデルを生成するための方法
(51)【国際特許分類】
G06Q 30/0201 20230101AFI20241004BHJP
【FI】
G06Q30/0201
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023058050
(22)【出願日】2023-03-31
(71)【出願人】
【識別番号】302064762
【氏名又は名称】株式会社日本総合研究所
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】打越 元信
(72)【発明者】
【氏名】島津 翔
【テーマコード(参考)】
5L030
5L049
【Fターム(参考)】
5L030BB08
5L049BB08
(57)【要約】 (修正有)
【課題】情報提供の対象となる対象者の属性に基づいて、複数の種類の告知情報のうち、対象者への提供が推奨される告知情報である1以上の推奨情報のそれぞれの種類を決定する情報処理装置、情報配信システム及び機械学習モデルを生成する方法を提供する。
【解決手段】広告配信システム100において、情報提供処理装置は、対象者の属性を示す属性情報を取得する属性情報取得部と、属性情報により示される対象者の属性と、複数の種類の告知情報が階層的に分類された分類構造とに基づいて、1以上の推奨情報のそれぞれの種類を決定する推奨情報決定部と、して機能する推奨部を備える。分類構造は、少なくとも1つの上位層と、複数の下位層とを備える。複数の下位層のそれぞれは、少なくとも1つの上位層の何れか1つに属し、複数の告知情報のそれぞれは、複数の下位層の何れか1つに属する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
情報提供の対象となる対象者の属性に基づいて、複数の種類の告知情報のうち、前記対象者への提供が推奨される告知情報である1以上の推奨情報のそれぞれの種類を決定する情報処理装置であって、
前記対象者の属性を示す属性情報を取得する属性情報取得部と、
前記属性情報により示される前記対象者の前記属性と、前記複数の種類の告知情報が階層的に分類された分類構造とに基づいて、前記1以上の推奨情報のそれぞれの前記種類を決定する推奨情報決定部と、
を備え、
前記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
前記複数の下位層のそれぞれは、前記少なくとも1つの上位層の何れか1つに属し、
前記複数の種類の告知情報のそれぞれは、前記複数の下位層の何れか1つに属し、
前記推奨情報決定部は、
前記属性情報により示される前記対象者の前記属性に基づいて、前記少なくとも1つの上位層のうち、前記1以上の推奨情報のそれぞれが属する1以上の上位層を出力する上位層出力部と、
前記上位層出力部の出力結果に基づいて、前記複数の下位層のうち、前記1以上の推奨情報のそれぞれが属する1以上の下位層を出力する下位層出力部と、
を有する、
情報処理装置。
【請求項2】
前記上位層出力部は、
(a)(i)前記属性情報により示される前記対象者の前記属性を、学習済みの機械学習モデルである第1学習モデルに入力し、(ii)前記第1学習モデルから、複数のグループのうち前記対象者が属する1以上のグループに関する推論結果に対応する第1出力を導出する第1導出部と、
(b)(i)前記第1出力により示される少なくとも1つのグループを、学習済みの機械学習モデルである第2学習モデルに入力し、(ii)前記第2学習モデルから、前記1以上の推奨情報のそれぞれが属する前記1以上の上位層に関する推論結果に対応する第2出力を導出する第2導出部と、
を有する、
請求項1に記載の情報処理装置。
【請求項3】
前記下位層出力部は、
(c)(i)前記上位層出力部が出力した前記1以上の上位層の少なくとも1つ、又は、前記少なくとも1つの上位層に属する告知情報の種類と、前記属性情報により示される前記対象者の前記属性とを、学習済みの機械学習モデルである第3学習モデルに入力し、(ii)前記第3学習モデルから、前記1以上の推奨情報のそれぞれが属する1以上の下位層に関する推論結果に対応する第3出力を導出する第3導出部、
を有する、
請求項2に記載の情報処理装置。
【請求項4】
前記第2導出部は、前記第2学習モデルの推論結果により示される前記1以上の上位層のうち、予め定められた第2条件を満足する上位層を、前記少なくとも1つの上位層として決定する、
請求項3に記載の情報処理装置。
【請求項5】
前記第3学習モデルは、前記第2学習モデルの出力を評価するための損失関数と、前記第3学習モデルの出力を評価するための損失関数とを用いて機械学習された機械学習モデルである、
請求項3に記載の情報処理装置。
【請求項6】
前記下位層出力部は、
(c)(i)前記上位層出力部が出力した前記1以上の上位層の少なくとも1つ、又は、前記少なくとも1つの上位層に属する告知情報の種類と、前記属性情報により示される前記対象者の前記属性とを、学習済みの機械学習モデルである第3学習モデルに入力し、(ii)前記第3学習モデルから、前記1以上の推奨情報のそれぞれが属する1以上の下位層に関する推論結果に対応する第3出力を導出する第3導出部、
を有する、
請求項1に記載の情報処理装置。
【請求項7】
請求項1から請求項6までの何れか一項に記載の情報処理装置と、
前記対象者に告知情報を配信する情報配信装置と、
を備え、
前記情報配信装置は、
前記情報処理装置が決定した前記1以上の推奨情報のそれぞれの種類に基づいて、前記対象者に配信される告知情報である配信情報を生成する情報生成部、
を有する、
情報配信システム。
【請求項8】
学習済みの機械学習モデルを生成するための方法であって、
複数の学習データを取得する学習データ取得段階と、
前記複数の学習データを用いて、(a)(i)情報提供の対象となる対象者の属性と、(ii)前記対象者に提供可能な情報である複数の告知情報に含まれる1以上の告知情報のそれぞれの種類、又は、前記複数の告知情報が階層的に分類された分類構造における前記1以上の告知情報よりも上位の区分とを入力とし、(b)入力された前記1以上の告知情報のうち、少なくとも1つの告知情報のそれぞれの種類に関する値を出力とする学習モデルを生成する学習モデル生成段階と、
を有し、
前記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
前記複数の下位層のそれぞれは、前記少なくとも1つの上位層の何れか1つに属し、
前複数の告知情報のそれぞれは、前記複数の下位層の何れか1つに属し、
前記複数の学習データのそれぞれは、
(i)過去に配信された告知情報を受け取った受領者の属性と、
(ii)当該告知情報に対する当該受領者の行動履歴と、
を含む、
機械学習モデルを生成するための方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報配信システム、及び、機械学習モデルを生成するための方法に関する。
【背景技術】
【0002】
特許文献1には、学習モデルに、ユーザのユーザ情報及びユーザに推薦する推薦商品の商品情報を入力して、ユーザの購入履歴に基づいた推薦商品から連想されるテキストを生成することが開示されている。特許文献2には、商品を利用したときに新しい知見や発見によってユーザが得られる情報量が大きくなるような商品群をユーザに推薦する情報処理装置が開示されている。
(先行技術文献)
(特許文献)
(特許文献1) 特開2021-068053号公報
(特許文献2) 特開2021-081870号公報
【発明の概要】
【課題を解決するための手段】
【0003】
本発明の第1の態様においては、情報処理装置が提供される。上記の情報処理装置は、例えば、情報提供の対象となる対象者の属性に基づいて、複数の種類の告知情報のうち、対象者への提供が推奨される告知情報である1以上の推奨情報のそれぞれの種類を決定する。上記の情報処理装置は、例えば、対象者の属性を示す属性情報を取得する属性情報取得部を備える。上記の情報処理装置は、例えば、属性情報により示される対象者の属性と、複数の種類の告知情報が階層的に分類された分類構造とに基づいて、1以上の推奨情報のそれぞれの種類を決定する推奨情報決定部を備える。
【0004】
上記の情報処理装置において、分類構造は、例えば、少なくとも1つの上位層と、複数の下位層とを備える。複数の下位層のそれぞれは、例えば、少なくとも1つの上位層の何れか1つに属する。複数の種類の告知情報のそれぞれは、例えば、複数の下位層の何れか1つに属する。上記の情報処理装置において、推奨情報決定部は、例えば、属性情報により示される対象者の属性に基づいて、少なくとも1つの上位層のうち、1以上の推奨情報のそれぞれが属する1以上の上位層を出力する上位層出力部を有する。上記の情報処理装置において、推奨情報決定部は、例えば、上位層出力部の出力結果に基づいて、複数の下位層のうち、1以上の推奨情報のそれぞれが属する1以上の下位層を出力する下位層出力部を有する。
【0005】
上記の何れかの情報処理装置において、上位層出力部は、(a)(i)属性情報により示される対象者の属性を、学習済みの機械学習モデルである第1学習モデルに入力し、(ii)第1学習モデルから、複数のグループのうち対象者が属する1以上のグループに関する推論結果に対応する第1出力を導出する第1導出部を有してよい。上位層出力部は、(b)(i)第1出力により示される少なくとも1つのグループを、学習済みの機械学習モデルである第2学習モデルに入力し、(ii)第2学習モデルから、1以上の推奨情報のそれぞれが属する1以上の上位層に関する推論結果に対応する第2出力を導出する第2導出部を有してよい。
【0006】
上記の何れかの情報処理装置において、下位層出力部は、(c)(i)上位層出力部が出力した1以上の上位層の少なくとも1つ、又は、少なくとも1つの上位層に属する告知情報の種類と、属性情報により示される対象者の属性とを、学習済みの機械学習モデルである第3学習モデルに入力し、(ii)第3学習モデルから、1以上の推奨情報のそれぞれが属する1以上の下位層に関する推論結果に対応する第3出力を導出する第3導出部を有してよい。
【0007】
上記の何れかの情報処理装置において、第2導出部は、第2学習モデルの推論結果により示される1以上の上位層のうち、予め定められた第2条件を満足する上位層を、少なくとも1つの上位層として決定してよい。上記の何れかの情報処理装置において、第3学習モデルは、第2学習モデルの出力を評価するための損失関数と、第3学習モデルの出力を評価するための損失関数とを用いて機械学習された機械学習モデルであってよい。
【0008】
本発明の第2の態様においては、情報配信システムが提供される。上記の情報配信システムは、例えば、上記の第1の態様に係る情報処理装置を備える。上記の情報配信システムは、例えば、対象者に告知情報を配信する情報配信装置を備える。上記の情報配信システムにおいて、情報配信装置は、情報処理装置が決定した1以上の推奨情報のそれぞれの種類に基づいて、対象者に配信される告知情報である配信情報を生成する情報生成部を有する。
【0009】
本発明の第3の態様においては、機械学習モデルを生成するための方法が提供される。上記の方法は、例えば、学習済みの機械学習モデルを生成するための方法である。上記の方法の各段階は、例えば、コンピュータにより実行される。
【0010】
上記の方法は、例えば、複数の学習データを取得する学習データ取得段階を有する。上記の方法は、例えば、複数の学習データを用いて、学習モデル生成段階を有する。上記の学習モデルは、例えば、(a)(i)情報提供の対象となる対象者の属性と、(ii)対象者に提供可能な情報である複数の告知情報に含まれる1以上の告知情報のそれぞれの種類、又は、複数の告知情報が階層的に分類された分類構造における1以上の告知情報よりも上位の区分とを入力とし、(b)入力された1以上の告知情報のうち、少なくとも1つの告知情報のそれぞれの種類に関する値を出力とする。
【0011】
上記の方法において、分類構造は、例えば、少なくとも1つの上位層と、複数の下位層とを備える。複数の下位層のそれぞれは、例えば、少なくとも1つの上位層の何れか1つに属する。複数の種類の告知情報のそれぞれは、例えば、複数の下位層の何れか1つに属する。上記の方法において、複数の学習データのそれぞれは、例えば、(i)過去に配信された告知情報を受け取った受領者の属性を含む。複数の学習データのそれぞれは、例えば、(ii)当該告知情報に対する当該受領者の行動履歴を含む。
【0012】
本発明の第4の態様においては、プログラムが提供される。上記のプログラムを格納するコンピュータ可読媒体が提供されてもよい。コンピュータ可読媒体は、非一時的コンピュータ可読媒体であってもよく、コンピュータ可読記録媒体であってもよい。上記のプログラムは、コンピュータを、上記の第1の態様に係る情報処理装置として機能させるためのプログラムであってよい。上記のプログラムは、コンピュータを、上記の第2の態様に係る情報処理システムとして機能させるためのプログラムであってよい。上記のプログラムは、コンピュータに、上記の第3の態様に係る機械学習モデルを生成するための方法を実行させるためのプログラムであってもよい。
【0013】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0014】
【
図1】広告配信システム100のシステム構成の一例を概略的に示す。
【
図2】通信端末22の内部構成の一例を概略的に示す。
【
図3】配信情報生成部124の内部構造の一例を概略的に示す。
【
図4】ユーザデータベース400のデータ構造の一例を概略的に示す。
【
図5】コンテンツデータベース500のデータ構造の一例を概略的に示す。
【
図6】分類構造データベース600のデータ構造の一例を概略的に示す。
【
図7】データ格納部142の内部構造の一例を概略的に示す。
【
図8】推奨履歴データベース800のデータ構造の一例を概略的に示す。
【
図9】推論過程データベース900のデータ構造の一例を概略的に示す。
【
図10】推奨部144の内部構造の一例を概略的に示す。
【
図11】カテゴリ推奨部1024の内部構造の一例を概略的に示す。
【
図12】コンテンツ推奨部1026の内部構造の一例を概略的に示す。
【
図13】モデル生成部148の内部構造の一例を概略的に示す。
【
図14】学習用データセット1430の生成処理の一例を概略的に示す。
【
図15】学習用データセット1530の生成処理の一例を概略的に示す。
【
図16】学習用データセット1630の生成処理の一例を概略的に示す。
【
図17】コンテンツ学習部1346における情報処理の一例を概略的に示す。
【
図18】コンピュータ3000のシステム構成の一例を概略的に示す。
【発明を実施するための形態】
【0015】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、図面において、同一または類似の部分には同一の参照番号を付して、重複する説明を省く場合がある。
【0016】
(広告配信システム100の概要)
図1は、広告配信システム100のシステム構成の一例を概略的に示す。本実施形態においては、広告配信システム100が、通信ネットワーク10を介して、1以上のユーザ20のそれぞれが利用する通信端末22に広告を配信する場合を例として、広告配信システム100の詳細の一例が説明される。特に、本実施形態においては、広告配信システム100が、1以上のユーザ20のそれぞれの属性に応じた広告(ターゲティング広告と称される場合がある。)を配信する場合を例として、広告配信システム100の詳細の一例が説明される。なお、広告配信システム100は、これらの実施形態に限定されないことに留意されたい。
【0017】
広告は、ユーザ20に対して告知される情報(告知情報と称される場合がある)であればよく、当該広告の内容、当該広告の対象者、当該広告の提供手段、及び/又は、当該広告の提供媒体は特に限定されない。広告は、デジタルデータであってもよい。
【0018】
広告は、広告提供者(広告主と称される場合がある。)の事業に関する情報であってよい。広告は、広告提供者の商品又はサービスに関する情報であってもよい。商品又はサービスに関する情報は、商品又はサービスの割引情報(クーポン情報と称される場合がある。)、イベントの告知情報などであってよい。
【0019】
商品又はサービスに関する情報の他の例として、広告提供者が公共交通機関である場合、広告は、運休情報、遅延情報、渋滞情報などであってよい。広告提供者が天気予報サービスを提供する事業者又は行政機関である場合、広告は、局所的な豪雨、落雷、突風などに関する警報又は注意報であってよい。広告は、災害に関する情報であってもよい。広告は、特定の地域に関する情報であってもよい。
【0020】
本実施形態において、通信ネットワーク10は、複数の装置の間で情報を伝送する。通信ネットワーク10は、有線通信の伝送路であってもよく、無線通信の伝送路であってもよく、それらの組み合わせであってもよい。通信ネットワーク10は、インターネット、専用回線、無線通信網又はそれらの組み合わせであってもよい。通信ネットワーク10は、アドホックネットワークなどのP2Pネットワークを含んでもよい。
【0021】
無線通信網における通信方式は、移動体通信方式であってもよく、無線データ通信方式であってもよい。移動体通信方式としては、3G方式、LTE方式、4G方式、5G方式、などが例示される。無線データ通信方式としては、無線PAN方式、無線LAN方式、無線MAN方式、無線WAN方式などが例示される。無線通信網における通信方式は、各種の近距離無線通信方式であってもよい。
【0022】
本実施形態において、通信端末22は、他の情報処理装置との間で情報を送受することのできる機器であればよく、その詳細は特に限定されない。通信端末22は、複数の通信方式に対応してもよい。例えば、通信端末は、3G方式、LTE方式、4G方式、5G方式などの移動体通信方式と、無線LAN方式、無線MAN方式などの無線通信方式との両方の通信方式に対応する。通信端末22は、携帯端末であってよい。携帯端末としては、携帯電話、スマートフォン、PDA、タブレット、ノートブック・コンピュータ又はラップトップ・コンピュータ、ウエアラブル・コンピュータなどが例示される。
【0023】
(広告配信システム100の各部の概要)
本実施形態において、広告配信システム100は、配信サーバ120と、推奨サーバ140とを備える。本実施形態において、配信サーバ120は、データ格納部122と、配信情報生成部124と、配信制御部126とを有する。本実施形態において、推奨サーバ140は、データ格納部142と、推奨部144と、行動情報取得部146と、モデル生成部148とを有する。
【0024】
(配信サーバ120の概要)
本実施形態において、配信サーバ120は、1以上のユーザ20に広告を配信する。配信サーバ120は、複数の種類の広告を配信可能に構成される。配信サーバ120は、例えば、広告配信システム100による情報提供の対象となるユーザ20(対象ユーザと称される場合がある。)の属性に応じた種類の広告を配信する。
【0025】
本実施形態において、データ格納部122は、配信サーバ120における情報処理において用いられる各種のデータを格納する。データ格納部142は、配信サーバ120における情報処理において生成された各種のデータを格納してもよい。データ格納部122の詳細は後述される。
【0026】
本実施形態において、配信情報生成部124は、対象ユーザに実際に配信される広告の情報(配信情報と称される場合がある。)を生成する。配信情報生成部124の詳細は後述される。
【0027】
本実施形態において、配信制御部126は、配信サーバ120における各種の情報処理を制御する。配信制御部126は、配信情報生成部124における配信情報の生成処理を制御してよい。配信制御部126は、配信情報生成部124が生成した配信情報を対象ユーザに配信するための処理を制御してもよい。
【0028】
配信制御部126は、配信情報を受け取ったユーザ20(受領ユーザと称される場合がある。)の当該配信情報に対する行動又は反応(行動又は反応が、単に行動と称される場合がある。)を示す情報(行動情報と称される場合がある。)を取得するための処理を制御してもよい。受領ユーザの行動は、例えば、クッキー、ウェブビーコン、リダイレクトなどを利用した各種のアドテクノロジー又はトラッキング技術により取得され得る。
【0029】
(配信サーバ120における情報処理の概要)
例えば、配信制御部126は、まず、対象ユーザを決定する。次に、配信制御部126は、対象ユーザの識別情報(ユーザIDと称される場合がある。)を配信情報生成部124に出力し、対象ユーザの属性に応じた広告に関する配信情報を生成するための処理を配信情報生成部124に実行させる。ユーザIDの詳細は特に限定されない。
【0030】
配信情報生成部124は、配信制御部126からの命令に従って、推奨サーバ140に対して、対象ユーザの属性に応じた広告の種類(推奨種目と称される場合がある。)を示す情報を送信するように要求するための信号(推奨要求と称される場合がある。)を送信する。推奨要求には、例えば、対象ユーザのユーザID又は対象ユーザの属性を示す情報(属性情報と称される場合がある。)が含まれる。推奨種目は、対象ユーザへの提供が推奨される広告の種類であってもよい。属性情報は、対象ユーザの1以上の属性のそれぞれを示す情報を含んでよい。属性情報の詳細は後述される。
【0031】
配信情報生成部124は、推奨要求に対する応答を受信すると、当該応答に含まれる推奨種目に基づいて、配信情報を生成する。配信制御部126は、配信情報生成部124が生成した配信情報を、対象ユーザの通信端末22に送信する。
【0032】
配信制御部126は、対象ユーザに配信情報を送信した後、対象ユーザ(この場合、上述された受領ユーザである。)の配信情報に対する行動をトラッキングする。配信情報に対する行動としては、(i)広告の閲覧、又は、メール若しくはメッセージの開封、(ii)広告に含まれるURLのクリック、広告に含まれる各種コマンドの実行、広告に関連するWebサイト又はSNSページの閲覧、(iii)広告に関連する商品又はサービスの購入又は購入の申し込みなどが例示される。
【0033】
(推奨サーバ140の概要)
本実施形態において、推奨サーバ140は、対象ユーザの属性に基づいて、上述された推奨種目を決定する。推奨種目は、例えば、広告配信システム100が提供可能な複数の種類の広告に含まれる1以上の広告の種類を示す。推奨種目は、広告配信システム100が対象ユーザに対して提供可能な複数の種類の広告に含まれる1以上の広告の種類であってもよい。
【0034】
本実施形態において、データ格納部142は、推奨サーバ140における情報処理において用いられる各種のデータを格納する。データ格納部142は、推奨サーバ140における情報処理において生成された各種のデータを格納してもよい。データ格納部142の詳細は後述される。
【0035】
本実施形態において、推奨部144は、対象ユーザの属性に応じた推奨種目を決定する。推奨部144は、配信サーバ120からの推奨要求に応じて、対象ユーザの属性に応じた推奨種目を決定してよい。推奨部144は、例えば、対象ユーザの属性、及び、上述された複数の種類の広告が階層的に分類された分類構造に基づいて推奨種目を決定する。
【0036】
上述されたとおり、推奨要求には、対象ユーザのユーザID及び/又は属性情報が含まれ得る。一実施形態において、推奨部144は、推奨要求から属性情報を抽出することで、対象ユーザの属性情報を取得する。他の実施形態において、推奨部144は、1以上のユーザ20のそれぞれのユーザIDと、属性情報とを対応付けて格納するデータベースを参照して、対象ユーザのユーザIDに対応する属性情報を取得する。
【0037】
推奨部144の詳細は後述される。分類構造の詳細は後述される。
【0038】
本実施形態において、行動情報取得部146は、推奨部144が配信サーバ120からの推奨要求に応じて推奨種目を決定した場合に、配信サーバ120が当該推奨種目に基づいて配信した配信情報を受け取ったユーザ20の行動情報を取得する。上述されたとおり、配信情報を受け取ったユーザ20の行動情報は、公知の任意の手順によりトラッキングされ得る。
【0039】
一実施形態において、行動情報取得部146は、配信サーバ120から、推奨要求に対応する行動情報を取得する。他の実施形態において、行動情報取得部146は、受領ユーザの通信端末22から、推奨要求に対応する行動情報を取得する。さらに他の実施形態において、行動情報取得部146は、ユーザ20の行動情報を収集するサーバ(配信サーバ120とは異なるサーバである。)から、推奨要求に対応する行動情報を取得する。上記のサーバとしては、広告配信サービス、トラッキングサービス、通信解析サービスを提供する各種のサーバが例示される。
【0040】
本実施形態において、モデル生成部148は、推奨部144における情報処理において用いられる各種の機械学習モデルを生成する。モデル生成部148の詳細は後述される。
【0041】
(広告配信システム100の各部の具体的な構成)
広告配信システム100の各部は、ハードウェアにより実現されてもよく、ソフトウェアにより実現されてもよく、ハードウェア及びソフトウェアにより実現されてもよい。広告配信システム100の各部は、その少なくとも一部が、パーソナルコンピュータ又は携帯端末によって実現されてもよい。例えば、パーソナルコンピュータ又は携帯端末が、広告配信システム100のユーザインターフェースとして利用され得る。携帯端末としては、携帯電話、スマートフォン、PDA、タブレット、ノートブック・コンピュータ又はラップトップ・コンピュータ、ウェアラブル・コンピュータなどが例示される。
【0042】
広告配信システム100を構成する構成要素の少なくとも一部がソフトウェアにより実現される場合、当該ソフトウェアにより実現される構成要素は、一般的な構成の情報処理装置において、当該構成要素に関する動作を規定したプログラムを起動することにより実現されてよい。上記の情報処理装置は、例えば、(i)各種プロセッサ(プロセッサとしては、CPU、GPUなどが例示される)、ROM、RAM、通信インターフェースなどを有するデータ処理装置と、(ii)メモリ、HDDなどの記憶装置(外部記憶装置を含む。)とを備える。上記の情報処理装置は、(iii)キーボード、タッチパネル、カメラ、マイク、各種センサ、GPS受信機などの入力装置を備えてもよく、(iv)表示装置、スピーカ、振動装置などの出力装置を備えてもよい。
【0043】
上記の情報処理装置において、上記のデータ処理装置又は記憶装置は、プログラムを格納してよい。上記のプログラムに記述された情報処理は、例えば、当該プログラムがコンピュータに読込まれることにより、当該プログラムに関連するソフトウェアと、広告配信システム100の少なくとも一部を構成する各種のハードウェア資源とが協働した具体的手段として機能する。そして、上記の具体的手段が、本実施形態におけるコンピュータの使用目的に応じた情報の演算又は加工を実現することにより、当該使用目的に応じた広告配信システム100又はその一部が構築される。
【0044】
上記のプログラムは、コンピュータ可読媒体に格納されていてもよい。上記のプログラムは、非一時的なコンピュータ可読記録媒体に格納されていてもよい。上記のプログラムは、CD-ROM、DVD-ROM、メモリ、ハードディスクなどのコンピュータ読み取り可能な媒体に記憶されていてもよく、ネットワークに接続された記憶装置に記憶されていてもよい。上記のプログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、広告配信システム100の少なくとも一部を構成するコンピュータにインストールされてよい。
【0045】
上記のプログラムが実行されることにより、コンピュータが、広告配信システム100の各部の少なくとも一部として機能してもよい。上記のプログラムが実行されることにより、コンピュータが、広告配信システム100の少なくとも一部における情報処理方法を実行してもよい。
【0046】
コンピュータを広告配信システム100の少なくとも一部として機能させるためのプログラムは、例えば、広告配信システム100の少なくとも一部の動作を規定したモジュールを備える。上記のプログラム又はモジュールが実行されると、上記のプログラム又はモジュールは、データ処理装置、入力装置、出力装置、記憶装置等に働きかけて、コンピュータを広告配信システム100の少なくとも一部として機能させたり、コンピュータに広告配信システム100の少なくとも一部における情報処理方法を実行させたりする。
【0047】
上記の情報処理方法は、情報提供の対象となる対象者の属性に基づいて、複数の種類の告知情報のうち、上記対象者への提供が推奨される告知情報である1以上の推奨情報のそれぞれの種類を決定するための方法であってよい。上記の方法の各段階は、例えば、コンピュータにより実行される。上記の方法は、例えば、対象者の属性を示す属性情報を取得する属性情報取得段階を有する。上記の方法は、例えば、属性情報により示される対象者の属性と、複数の種類の告知情報が階層的に分類された分類構造とに基づいて、1以上の推奨情報のそれぞれの種類を決定する推奨情報決定段階を有する。分類構造は、例えば、少なくとも1つの上位層と、複数の下位層とを備える。複数の下位層のそれぞれは、例えば、少なくとも1つの上位層の何れか1つに属する。複数の種類の告知情報のそれぞれは、例えば、複数の下位層の何れか1つに属する。推奨情報決定段階は、例えば、属性情報により示される対象者の属性に基づいて、少なくとも1つの上位層のうち、1以上の推奨情報のそれぞれが属する1以上の上位層を出力する上位層出力段階を有する。推奨情報決定段階は、例えば、上位層出力段階における出力結果に基づいて、複数の下位層のうち、1以上の推奨情報のそれぞれが属する1以上の下位層を出力する下位層出力段階を有する。上記の情報処理方法の他の例としては、学習済みの機械学習モデルを生成するための方法、告知情報を配信するための方法などが例示される。
【0048】
ユーザ20は、対象者又は受領者の一例であってよい。広告配信システム100は、情報配信システム、情報処理システム、情報処理装置、モデル生成装置、又は、情報配信装置の一例であってよい。配信サーバ120は、情報配信装置の一例であってよい。配信情報生成部124は、情報生成部の一例であってよい。推奨サーバ140は、情報処理システム、情報処理装置、又は、モデル生成装置の一例であってよい。推奨部144は、情報処理装置又は推奨情報決定部の一例であってよい。モデル生成部148は、モデル生成装置の一例であってよい。
【0049】
対象ユーザは、対象者の一例であってよい。受領ユーザは、受領者の一例であってよい。広告は、告知情報又は配信情報の一例であってよい。対象ユーザへの提供が推奨される広告は、推奨情報の一例であってよい。対象ユーザに提供される広告は、配信情報の一例であってよい。推奨種目は、推奨種別情報の一例であってよい。
【0050】
図2は、通信端末22の内部構成の一例を概略的に示す。本実施形態において、通信端末22は、例えば、通信部222と、入力部224と、出力部226と、制御部240とを備える。
【0051】
本実施形態において、通信部222は、通信ネットワーク10を介して、広告配信システム100との間で情報を送受する。通信部222は、配信サーバ120との間で情報を送受してもよく、推奨サーバ140との間で情報を送受してもよい。例えば、通信部222は、配信サーバ120から配信情報を受信する。通信部222は、上記の配信情報に対するユーザ20の行動を示す行動情報を、配信サーバ120又は推奨サーバ140に送信してよい。
【0052】
本実施形態において、入力部224は、ユーザ20からの入力を受け付ける。入力部224は、出力部226が出力した広告に対するユーザ20の人為的操作を検出してもよい。これにより、通信端末22は、配信情報に対するユーザ20の行動情報を取得することができる。入力部224としては、キーボード、ポインティングデバイス、タッチパネル、マイク、音声入力装置、ジェスチャ入力装置などが例示される。
【0053】
本実施形態において、出力部226は、ユーザ20に情報を出力する。出力部226は、例えば、配信サーバ120からの配信情報に含まれる広告を出力する。出力部226としては、ディスプレイ、プロジェクタ、スピーカなどが例示される。
【0054】
本実施形態において、制御部240は、通信端末22の各部の動作を制御する。例えば、制御部240は、通信部222が受信した配信情報に基づいて、出力部226に広告を出力させるための処理を実行する。例えば、制御部240は、出力部226から出力された広告に対するユーザ20の行動を検知又はトラッキングするための処理を実行する。
【0055】
図3は、データ格納部122及び配信情報生成部124の内部構造の一例を概略的に示す。本実施形態において、データ格納部122は、例えば、ユーザ情報格納部322と、コンテンツ情報格納部324とを備える。本実施形態において、配信情報生成部124は、例えば、推奨要求送信部342と、広告データ生成部344とを備える。
【0056】
本実施形態において、ユーザ情報格納部322は、1以上のユーザ20のそれぞれに関する各種の情報(ユーザ情報と称される場合がある。)を格納する。ユーザ情報の詳細は後述される。
【0057】
本実施形態において、コンテンツ情報格納部324は、上述された複数の種類の広告に関する各種の情報(コンテンツ情報と称される場合がある。)を格納する。コンテンツ情報としては、広告を生成するためのデータ(コンテンツと称される場合がある)、上述された複数の種類の広告に関する分類構造を示す情報(構造情報と称される場合がある。)などが例示される。コンテンツは、例えば、各種の広告のテンプレート又は定型フォームに関するデジタルデータを含む。本実施形態において、コンテンツという用語が、上述された広告の意味で用いられる場合がある。コンテンツ情報の詳細は後述される。
【0058】
本実施形態において、推奨要求送信部342は、上述された推奨要求を、配信サーバ120に送信する。推奨要求送信部342は、ユーザID及び/又は属性情報を含む推奨要求を、配信サーバ120に送信してよい。ユーザID及び/又は属性情報は、対象ユーザの属性を特定するために用いられる。上述されたとおり、配信サーバ120の推奨部144は、対象ユーザのユーザID及び/又は属性情報に基づいて、当該対象ユーザの属性を特定することができる。
【0059】
本実施形態において、広告データ生成部344は、対象ユーザに実際に配信される広告のデータを生成する。広告データ生成部344は、例えば、配信サーバ120から、推奨要求に対する応答を取得する。上述されたとおり、上記の応答には推奨種目を示す情報が含まれる。また、推奨種目は、対象ユーザへの提供が推奨される1以上の広告のそれぞれの種類を示す。
【0060】
広告データ生成部344は、例えば、コンテンツ情報格納部324を参照して、推奨種目により示される1以上の種類の広告に対応するコンテンツを取得する。また、広告データ生成部344は、例えば、ユーザ情報格納部322を参照して、対象ユーザの氏名を示す情報を取得する。広告データ生成部344は、例えば、コンテンツと、対象ユーザの氏名とを用いて、対象ユーザに実際に配信される広告のデータを生成する。
【0061】
これにより、配信サーバ120が決定した推奨種目に基づいて配信情報が生成される。より具体的には、推奨種目により示される1以上の広告のそれぞれの種類に基づいて配信情報が生成される。
【0062】
推奨要求送信部342は、特定情報送信部の一例であってよい。広告データ生成部344は、種別情報取得部又は情報生成部の一例であってよい。ユーザIDは、属性特定情報の一例であってよい。属性情報は、属性特定情報の一例であってよい。
【0063】
図4は、ユーザデータベース400のデータ構造の一例を概略的に示す。ユーザデータベース400は、例えば、ユーザ情報格納部322に格納される。本実施形態において、ユーザデータベース400は、1以上のレコードを含む。本実施形態において、1以上のレコードのそれぞれは、1以上のユーザ20のそれぞれのユーザID420と、当該ユーザの連絡先430を示す情報と、当該ユーザの属性440を示す情報とを対応付けて格納する。
【0064】
ユーザ20の連絡先は特に限定されるものではないが、ユーザ20の連絡先としては、ユーザ20の氏名、アドレスなどが例示される。アドレスとしては、住所、メールアドレス、メッセージサービス又はSNS(Social Networking Service)のアカウントなどが例示される。ユーザ20の属性は特に限定されるものではないが、ユーザ20の属性としては、年齢、性別、結婚の経験、年収、資産の状況などが例示される。ユーザ20の属性の他の例としては、就業の状態、住宅の種類、世帯の構成、世帯主との続柄などが例示される。
【0065】
ユーザデータベース400を構成する1以上のレコードのそれぞれは、上述されたユーザ情報の一例であってよい。ユーザデータベース400を構成する1以上のレコードのそれぞれは、属性情報の一例であってよい。上記のレコードに含まれるユーザの属性440を示す情報は、属性情報の一例であってよい。
【0066】
図5は、コンテンツデータベース500のデータ構造の一例を概略的に示す。コンテンツデータベース500は、例えば、コンテンツ情報格納部324に格納される。本実施形態において、コンテンツデータベース500は、1以上のレコードを含む。本実施形態において、1以上のレコードのそれぞれは、1以上のコンテンツのそれぞれの識別情報であるコンテンツID520と、当該コンテンツの種類530を示す情報と、コンテンツの内容540を示す情報とを対応付けて格納する。
【0067】
コンテンツID520は、1以上のコンテンツのそれぞれを識別することのできる情報(コンテンツIDと称される場合がある。)あればよく、その詳細は特に限定されない。コンテンツIDとしては、各コンテンツに割り当てられた記号、番号、文字列、名称などが例示される。
【0068】
コンテンツの種類530は特に限定されるものではないが、各コンテンツは、例えば、当該コンテンツにより告知される情報の内容、当該コンテンツが対応するマーケティングフェイズ、当該コンテンツにより情報が告知される手法、及び、これらの組み合わせにより、各種の種類に分類され得る。マーケティングのフェイズとしては、認知、関心又は興味、比較又は検討、購入などが例示される。
【0069】
コンテンツの内容540は特に限定されるものではないが、コンテンツは、例えば、タイトル、本文、及び/又は、添付ファイルにより構成される。コンテンツは、(i)当該コンテンツの受信者が決定される前に予め作成されていてもよく、当該コンテンツの受信者が決定された後、予め定められたテンプレート及び/又はアルゴリズムに従って作成されてもよい。
【0070】
コンテンツデータベース500を構成する1以上のレコードのそれぞれは、上述されたコンテンツ情報の一例であってよい。
【0071】
図6は、分類構造データベース600のデータ構造の一例を概略的に示す。分類構造データベース600は、例えば、コンテンツ情報格納部324に格納される。本実施形態において、分類構造データベース600は、1以上のレコードを含む。本実施形態において、1以上のレコードのそれぞれは、1以上のコンテンツのそれぞれのコンテンツID620と、コンテンツの分類構造630を示す情報とを対応づけて格納する。
【0072】
上述されたとおり、複数の種類の広告又はコンテンツ(単に、コンテンツと称される場合がある。)は階層的に分類され得る。上記の分類構造630は、少なくとも1つの上位層と、複数の下位層とを備える。複数の下位層のそれぞれは、少なくとも1つの上位層の何れか1つに属する。複数の種類の広告又はコンテンツのそれぞれは、複数の下位層の何れか1つに属する。
【0073】
下位層は、上位層の構成単位であってよい。下位層は、上位層を複数に細分化して得られる区分であってよい。大分類、中分類及び小分類という粒度の異なる3つの区分を例として上位層及び下位層の関係を説明すると、中分類及び小分類は、大分類の下位層である。小分類は、中分類の下位層である。
【0074】
本実施形態によれば、複数の種類の広告又はコンテンツは、第1階層であるコンテンツのカテゴリ632と、第2階層であるコンテンツの種類634とにより階層的に分類される。ここで、第1階層は、第2階層よりも上位の階層である。
【0075】
分類構造データベース600を構成する1以上のレコードのそれぞれは、上述されたコンテンツ情報の一例であってよい。コンテンツのカテゴリ632は、上位層の一例であってよい。コンテンツのカテゴリ632は、複数の告知情報が階層的に分類された分類構造における1以上の告知情報よりも上位の区分の一例であってよい。コンテンツの種類634は、下位層の一例であってよい。第1階層は、上位層の一例であってよい。第2階層は、下位層の一例であってよい。コンテンツは、告知情報の一例であってよい。
【0076】
図7は、データ格納部142の内部構造の一例を概略的に示す。本実施形態において、データ格納部142は、ユーザ情報格納部722と、コンテンツ情報格納部724と、推奨履歴格納部726と、推論過程格納部728と、推論モデル格納部740とを備える。本実施形態において、推論モデル格納部740は、グループ推論モデル742と、カテゴリ推論モデル744と、コンテンツ推論モデル746とを格納する。
【0077】
本実施形態において、ユーザ情報格納部722は、1以上のユーザ20のそれぞれのユーザ情報を格納する。ユーザ情報格納部722は、例えば、ユーザデータベース400と同様のデータ構造を有するデータベースを格納する。
【0078】
本実施形態において、コンテンツ情報格納部724は、1以上のコンテンツのそれぞれのコンテンツ情報を格納する。コンテンツ情報格納部724は、例えば、コンテンツデータベース500と同様のデータ構造を有するデータベースを格納する。コンテンツ情報格納部724は、例えば、分類構造データベース600と同様のデータ構造を有するデータベースを格納する。
【0079】
本実施形態において、推奨履歴格納部726は、推奨サーバ140が過去に推奨した1以上の種類の広告に関する各種の情報(推奨履歴と称される場合がある。)を格納する。上述されたとおり、本実施形態において、推奨サーバ140が過去に推奨した1以上の種類の広告は、配信サーバ120が過去に配信した1以上の配信情報に含まれる。推奨履歴の詳細は後述される。
【0080】
本実施形態において、推論過程格納部728は、推奨部144が、対象ユーザの属性から、推奨種目に関する推論結果を出力する過程に関する各種の情報(推論過程と称される場合がある。)を格納する。推論過程の詳細は後述される。
【0081】
本実施形態において、推論モデル格納部740は、推奨サーバ140における情報処理に用いられる各種の推論モデルを格納する。上記の推論モデルは、学習済みの機械学習モデルであってよい。
【0082】
(グループ推論モデル)
本実施形態において、グループ推論モデル742は、例えば、ユーザ20を複数のグループに分類するために用いられる。グループ推論モデル742は、ユーザ20が属するグループを推論するために用いられてよい。グループ推論モデル742は、例えば、特定のユーザ20の属性に基づいて、当該特定のユーザ20を、複数のグループのうちの1以上に分類する。グループ推論モデル742は、特定のユーザ20の属性に基づいて、当該特定のユーザ20が属する1以上のグループを推論してもよい。
【0083】
上記の複数のグループのそれぞれは、広告配信システム100が管理する1以上のユーザ20の潜在的なクラスターであってよい。例えば、金融機関Aに口座を保有する複数のユーザ20のそれぞれは、他の金融機関に定期的に振り込みを行っているユーザ20のグループ、過去にカーローンを利用したユーザ20のグループ、口座残高が予め定められた金額を超えるユーザ20のグループなどに分類され得る。
【0084】
本実施形態において、グループ推論モデル742は、特定のユーザ20に関する1以上の属性を入力とし、当該特定のユーザ20が属すると推論されるグループに対応する値を出力する。例えば、推奨部144が、ユーザ20に関する1以上の属性をグループ推論モデル742に入力すると、グループ推論モデル742は、上記のユーザ20が属するグループの推論結果に関する値を出力する。グループ推論モデル742は、単一のユーザ20が単一のグループに属し得ることを示す値を出力してもよく、単一のユーザ20が複数のグループに属し得ることを示す値を出力してもよい。
【0085】
一実施形態において、グループ推論モデル742は、複数のグループのそれぞれに関するスコアを出力する。グループ推論モデル742は、1以上のグループのそれぞれの識別情報と、1以上のグループのそれぞれに関するスコアとを対応付けて出力してもよい。グループ推論モデル742は、準備されている全てのグループのスコアを出力してよい。グループ推論モデル742は、準備されているグループのうち、スコアが予め定められた閾値以上である又は当該閾値を超えるグループのスコアを出力してもよい。
【0086】
各グループに関するスコアは、推論対象となるユーザ20が各グループに属する確率を示す値、又は、当該確率に基づいて導出される値(確率に関連する値と称される場合がある。)であってよい。上記の確率に関連する値は、例えば、予め定められたアルゴリズムに従って、当該確率に基づいて導出される。各グループに関する上記の確率に関連する値は、各グループが推論結果に含まれる確率を示してもよい。
【0087】
他の実施形態において、グループ推論モデル742は、上記のスコアが最も大きなグループの識別情報を出力する。さらに他の実施形態において、グループ推論モデル742は、上記のスコアが予め定められた閾値以上である又は当該閾値を超える、1以上のグループの識別情報を出力する。
【0088】
さらに他の実施形態において、グループ推論モデル742は、推論結果として、1以上のグループの識別情報を出力する。具体的には、グループ推論モデル742は、グループ推論モデル742に入力される属性を有するユーザ20(推論対象となるユーザ20と称される場合がある。)が各グループに属する確率に基づいて、各グループがグループ推論モデル742の出力に含まれる確率を決定する。グループ推論モデル742は、各グループがグループ推論モデル742の出力に含まれる確率に基づいて、上記の出力に含まれるグループを決定する。
【0089】
例えば、グループ推論モデル742は、まず、複数のグループのそれぞれについて、推論対象となるユーザ20が当該グループに属する確率を示すスコアを導出する。次に、グループ推論モデル742は、各グループのスコアに基づいて、グループ推論モデル742の出力に各グループが含まれる確率を導出する。グループ推論モデル742は、各グループのスコアに対応する確率を、グループ推論モデル742の出力に各グループが出力される確率として決定してよい。次に、グループ推論モデル742は、各グループが出力に含まれる確率に基づいて、グループ推論モデル742の推論結果として出力される1以上のグループを決定する。
【0090】
例えば、ユーザXがグループAに属する確率が70%であり、当該ユーザXがグループBに属する確率が30%である場合を想定して、グループ推論モデル742は、グループAが出力される確率が70%となるように、又は、グループAが出力される確率が70%であることを前提として、今回の出力結果にグループAを含めるか否かを決定する。同様に、グループ推論モデル742は、グループBが出力される確率が30%となるように、又は、グループBが出力される確率が30%であることを前提として、今回の出力結果にグループAを含めるか否かを決定する。
【0091】
これにより、ユーザXに対して、約70%の確率で、グループAに属するユーザに適した広告が配信され得る。同様に、ユーザXに対して、約30%の確率で、グループBに属するユーザに適した広告が配信され得る。
【0092】
(グループ推論モデルの学習手順の概要)
グループ推論モデル742は、例えば、ユーザ20の属性から、複数のグループのうちユーザ20が属する1以上のグループを推論するための機械学習により生成された機械学習モデルである。グループ推論モデル742は、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告に対する上記のユーザ20の行動履歴とを学習データとして機械学習された機械学習モデルであってもよい。上記の行動履歴は、上記のユーザ20の行動に関する統計データであってよい。統計データは、上記のユーザ20が広告を受信した場合に特定の行動を実行する確率であってよい。上記の確率は、カテゴリごとの確率であってよい。
【0093】
学習データは、教師データと称される場合がある。学習データ又は教師データは、説明変数と、目的変数とが対応付けられたデータであってよい。学習データ又は教師データは、説明変数と、目的変数と、ラベルとが対応付けられたデータであってよい。ラベルは、当該データが正例及び負例の何れであるかを示す。
【0094】
グループ推論モデル742の学習は、例えば、カテゴリ推論モデル744の学習と同時に実行される。具体的には、まず、教師データに含まれる1以上の説明変数の値が、グループ推論モデル742に入力される。上述されたとおり、教師データに含まれる1以上の説明変数のそれぞれは、過去に配信された広告を受け取ったユーザ20の属性を示す。グループ推論モデル742は、入力された教師データに対応する1以上のグループを出力する。グループ推論モデル742の出力は、カテゴリ推論モデル744に入力される。後述されるとおり、カテゴリ推論モデル744は、例えば、1以上のカテゴリのそれぞれに関するスコアを出力する。
【0095】
次に、教師データに含まれる1以上の目的変数の値と、カテゴリ推論モデル744の1以上の出力値とのズレ又は誤差を示す損失関数又はコスト関数(目的関数と称される場合がある。)の出力を最適化するべく、グループ推論モデル742のパラメータと、カテゴリ推論モデル744のパラメータとが調整される。上述されたとおり、教師データに含まれる1以上の目的変数は、1以上のカテゴリのそれぞれに関する確率であって、当該教師データに対応するユーザ20が各カテゴリに関する広告を受信した場合に特定の行動を実行する確率を示す。例えば、上記のユーザ20が広告が添付されたメールを開封する確率(開封率と称される場合がある。)を示す。そこで、例えば、カテゴリごとの開封率と、カテゴリごとのスコアとのズレ又は誤差が小さくなるように、グループ推論モデル742のパラメータと、カテゴリ推論モデル744のパラメータとが調整される。
【0096】
準備された1以上の教師データのそれぞれについて上記の処理が繰り返されることで、グループ推論モデル742の学習と、カテゴリ推論モデル744の学習とが同時に実行され得る。グループ推論モデル742の学習手順の詳細は後述される。
【0097】
本実施形態によれば、推奨サーバ140の管理者は、推奨部144における推論過程において、ユーザ20の属性に基づいて決定されたグループに関する情報を取得することができる。これにより、推奨部144の推論結果の解釈性が向上する。
【0098】
(カテゴリ推論モデル)
本実施形態において、カテゴリ推論モデル744は、例えば、ユーザ20が属する1以上のグループに対応するコンテンツ(グループに対応するコンテンツと称される場合がある。)が属するカテゴリ(ユーザの属性に対応するカテゴリ)と称される場合がある。を推論するために用いられる。カテゴリ推論モデル744は、例えば、グループ推論モデル742の推論結果に基づいて、上記のコンテンツのカテゴリを推論する。
【0099】
各グループに対応するコンテンツとしては、各グループに属するユーザに適したコンテンツ、各グループに属するユーザに特定の行動を促す効果の高いコンテンツなどが例示される。上述されたとおり、コンテンツのカテゴリは、コンテンツの分類構造において、コンテンツの種類の上位に位置する。
【0100】
本実施形態において、カテゴリ推論モデル744は、特定のユーザ20が属する1以上のグループを入力とし、当該特定のユーザ20に適したコンテンツのカテゴリに対応する値を出力する。特定のユーザ20に適したコンテンツとしては、当該特定のユーザ20に特定の行動を促す効果(広告効果と称される場合がある。)の高いコンテンツが例示される。
【0101】
例えば、推奨部144は、特定のユーザ20が属する1以上のグループをカテゴリ推論モデル744に入力する。推奨部144は、グループ推論モデル742の出力を、カテゴリ推論モデル744に入力してよい。上述されたとおり、グループ推論モデル742は、特定のユーザ20に関する1以上の属性が入力され、当該特定のユーザ20が属する1以上のグループに関する推論結果を出力する。
【0102】
カテゴリ推論モデル744に1以上のグループが入力されると、カテゴリ推論モデル744は、上述されたコンテンツのカテゴリに関する推論結果を出力する。これにより、グループ推論モデル742と、カテゴリ推論モデル744とが協働することにより、特定のユーザ20に関する1以上の属性に基づいて、当該特定のユーザ20に特定の行動を促す効果が見込まれるコンテンツの属するカテゴリが決定され得る。
【0103】
上述されたコンテンツのカテゴリに関する推論結果は、単一のカテゴリを示す情報であってもよく、複数のカテゴリを示す情報であってもよい。カテゴリ推論モデル744の出力の形式は特に限定されるものではないが、カテゴリ推論モデル744の出力としては、下記が例示され得る。
【0104】
一実施形態において、カテゴリ推論モデル744は、推論結果として、1以上のカテゴリのそれぞれに関するスコアを出力する。カテゴリ推論モデル744は、1以上のカテゴリのそれぞれの識別情報と、1以上のカテゴリのそれぞれに関するスコアとを対応付けて出力してもよい。カテゴリ推論モデル744は、準備されている全てのカテゴリのスコアを出力してよい。カテゴリ推論モデル744は、準備されているカテゴリのうち、スコアが予め定められた閾値以上である又は当該閾値を超えるカテゴリのスコアを出力してもよい。
【0105】
各カテゴリに関するスコアは、当該カテゴリに属するコンテンツを含む広告が特定のユーザ20(例えば、上述された推論対象となるユーザ20である。)に配信された場合に、当該特定のユーザ20に特定の行動を促す確率を示す値、又は、当該確率に基づいて導出される値(確率に関連する値と称される場合がある。)であってよい。特定の行動としては、(i)広告の閲覧、又は、広告を含むメール若しくはメッセージの開封、(ii)広告に含まれるURLのクリック、広告に含まれる各種コマンドの実行、広告に関連するWebサイト又はSNSページの閲覧、(iii)広告に関連する商品又はサービスの購入又は購入の申し込みなどが例示される。上記の確率に関連する値は、例えば、予め定められたアルゴリズムに従って、当該確率に基づいて導出される。各カテゴリに関する上記の確率に関連する値は、各カテゴリが推論結果に含まれる確率を示してもよい。
【0106】
他の実施形態において、カテゴリ推論モデル744は、推論結果として、上記のスコアが最も大きなカテゴリの識別情報を出力する。さらに他の実施形態において、カテゴリ推論モデル744は、推論結果として、上記のスコアが予め定められた閾値以上である又は当該閾値を超える、1以上のカテゴリの識別情報を出力する。
【0107】
(カテゴリ推論モデルの学習手順の一例の概要)
上述されたとおり、カテゴリ推論モデル744の学習は、例えば、グループ推論モデル742の学習と同時に実行される。この場合、カテゴリ推論モデル744は、ユーザ20の属性から、当該属性を有するユーザ20への提供が推奨される1以上のコンテンツのそれぞれが属するカテゴリを推論するための機械学習により生成された機械学習モデルでありうる。
【0108】
カテゴリ推論モデル744は、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告に対する上記のユーザ20の行動履歴とを学習データとして機械学習された機械学習モデルであってよい。カテゴリ推論モデル744は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性がグループ推論モデル742に入力されたときにグループ推論モデル742が出力した推論結果と、(ii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルであってもよい。カテゴリ推論モデル744の学習手順の詳細は後述される。
【0109】
(カテゴリ推論モデルの学習手順の他の例の概要)
カテゴリ推論モデル744は、ユーザ20が属する1以上のグループから、当該1以上のグループのそれぞれの構成員への提供が推奨される1以上の広告のそれぞれが属する1以上のカテゴリを推論するための機械学習により生成された機械学習モデルであってもよい。カテゴリ推論モデル744は、(i)過去に配信された広告の推奨種目の推論過程においてカテゴリ推論モデル744に入力されたグループと、(ii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルであってよい。
【0110】
カテゴリ推論モデル744は、例えば、(i)過去に配信された広告の生成過程においてグループ推論モデル742が出力した推論結果と、(ii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルである。例えば、過去に配信された広告の全部又は一部について、(i)当該広告の生成過程(より具体的には、当該広告に含まれるコンテンツの推奨過程である。)におけるグループ推論モデル742の出力履歴又はカテゴリ推論モデル744の入力履歴と、(ii)当該広告を受信したユーザの行動履歴とが任意の記憶装置に記憶されている場合、例えば、これらのデータが学習データとして用いられる。
【0111】
各学習データに含まれる1以上の説明変数は、例えば、過去の広告の生成過程又はコンテンツの推奨過程において出力された1以上のグループを示す。各学習データに含まれる1以上の目的変数は、例えば、1以上のカテゴリのそれぞれに関する確率であって、当該教師データに対応するユーザ20が各カテゴリに関する広告を受信した場合に特定の行動を実行する確率を示す。
【0112】
これらの実施形態によれば、例えば、推奨サーバ140の管理者は、推奨部144における推論過程において、ユーザ20の属性に基づいて決定されたグループに基づいて決定されたコンテンツのカテゴリに関する情報を取得することができる。これにより、推奨部144の推論結果の解釈性が向上する。
【0113】
また、例えば、推奨サーバ140の管理者は、カテゴリ推論モデル744を用いて、任意の基準に従って作製したグループと、カテゴリとの関係性を検証することもできる。上述されたとおり、各グループは、同一又は類似する属性を有する複数のユーザの潜在的なクラスターである。そこで、例えば、まず、推奨サーバ140の管理者は、検証すべき仮説を決定する。次に、管理者は、上記の仮説の検証に適した特定の属性を有するユーザ20のグループを作成する。管理者は、推奨サーバ140を操作して、上記のグループを作成してもよい。上記のグループは特に限定されるものではないが、上記のグループとしては、既婚者のグループ、独身者のグループ、住宅購入者のグループ、賃貸住宅に居住するユーザのグループなどが例示される。管理者は、推奨サーバ140を操作して、上記のグループに属する複数のユーザの情報をカテゴリ推論モデル744に入力する。カテゴリ推論モデル744は、上記のグループに対応する推論結果を出力する。
【0114】
これにより、管理者は、例えば、上記のグループに属するユーザが各カテゴリに興味を示す度合いに関する情報を取得することができる。また、管理者は、例えば、上記のグループに属するユーザがどのようなカテゴリに興味を示すのか又は興味を示さないのか、特定のカテゴリに興味を示すユーザはどのような属性を有するのかなどに関する情報を取得することができる。
【0115】
(コンテンツ推論モデル)
本実施形態において、コンテンツ推論モデル746は、ユーザ20の属性に応じた推奨種目を推論するために用いられる。コンテンツ推論モデル746は、例えば、カテゴリ推論モデル744の推論結果と、ユーザ20の属性とに基づいて、上記の推奨種目を推論する。ユーザ20の属性に応じた推奨種目としては、当該属性を有するユーザ20に適したコンテンツの種類、当該属性を有するユーザ20に特定の行動を促す効果の高いコンテンツの種類などが例示される。
【0116】
本実施形態において、コンテンツ推論モデル746は、例えば、ユーザ20の属性と、ユーザ20の属性に対応するコンテンツのカテゴリとを入力とし、入力されたカテゴリに含まれるコンテンツの種類のうち、上記のユーザ20への提供が推奨されるコンテンツの種類に対応する値を出力する。コンテンツ推論モデル746は、ユーザ20の属性と、ユーザ20の属性に対応するカテゴリに含まれるコンテンツの種類を入力とし、入力されたコンテンツの種類のうち、上記のユーザ20への提供が推奨されるコンテンツの種類に対応する値を出力してもよい。
【0117】
例えば、推奨部144が、ユーザ20の属性と、ユーザ20の属性に対応するコンテンツのカテゴリとをコンテンツ推論モデル746に入力すると、コンテンツ推論モデル746は、入力されたカテゴリに含まれるコンテンツの種類のうち、上記のユーザ20への提供が推奨されるコンテンツの種類の推論結果に関する値を出力する。例えば、推奨部144が、ユーザ20の属性と、ユーザ20の属性に対応するコンテンツのカテゴリに含まれるコンテンツの種類とをコンテンツ推論モデル746に入力すると、コンテンツ推論モデル746は、入力されたコンテンツの種類のうち、上記のユーザ20への提供が推奨されるコンテンツの種類の推論結果に関する値を出力する。
【0118】
一実施形態において、コンテンツ推論モデル746は、入力されたカテゴリに含まれるコンテンツの種類のそれぞれに関するスコア、又は、入力されたコンテンツの種類のそれぞれに関するスコアを出力する。各コンテンツの種類に関するスコアは、当該種類のコンテンツがユーザ20(例えば、上述された推論対象となるユーザ20である。)に配信された場合に、上記のユーザ20に特定の行動を促す確率、又は、当該確率に基づいて導出される値(確率に関連する値と称される場合がある。)であってよい。上記の確率に関連する値は、例えば、予め定められたアルゴリズムに従って、当該確率に基づいて導出される。各コンテンツの種類に関する上記の確率に関連する値は、当該コンテンツの種類が推論結果に含まれる確率を示してもよい。
【0119】
他の実施形態において、コンテンツ推論モデル746は、上記のスコアが最も大きなコンテンツの種類を出力する。さらに他の実施形態において、コンテンツ推論モデル746は、上記のスコアが予め定められた閾値以上である又は当該閾値を超える1以上のコンテンツの種類を出力する。
【0120】
さらに他の実施形態において、コンテンツ推論モデル746は、推論結果として、1以上のコンテンツの種類(コンテンツ種別と称される場合がある。)を出力する。具体的には、コンテンツ推論モデル746は、各種類のコンテンツが、コンテンツ推論モデル746に入力される属性を有するユーザ20に配信された場合に、上記のユーザ20に特定の行動を促す確率に基づいて、各コンテンツ種別がコンテンツ推論モデル746の出力に含まれる確率を決定する。各コンテンツ種別がコンテンツ推論モデル746の出力に含まれる確率に基づいて、上記の出力に含まれるコンテンツの種類を決定する。
【0121】
例えば、コンテンツ推論モデル746は、まず、複数のコンテンツ種別のそれぞれについて、当該種類のコンテンツが、コンテンツ推論モデル746に入力される属性を有するユーザ20に配信された場合に、上記のユーザ20に特定の行動を促す確率を示すスコアを導出する。次に、コンテンツ推論モデル746は、各コンテンツ種別のスコアに基づいて、コンテンツ推論モデル746の出力に各コンテンツ種別が含まれる確率を導出する。コンテンツ推論モデル746は、各コンテンツ種別のスコアに対応する確率を、コンテンツ推論モデル746の出力に各コンテンツ種別が含まれる確率として決定してよい。次に、コンテンツ推論モデル746は、各コンテンツ種別が出力に含まれる確率に基づいて、カテゴリ推論モデル744の推論結果として出力される1以上のコンテンツ種別を決定する。
【0122】
(コンテンツ推論モデルの学習手順の一例の概要)
コンテンツ推論モデル746は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ推論モデル746の出力を評価するための損失関数とを用いて機械学習された機械学習モデルであってもよい。この場合において、グループ推論モデル742と、カテゴリ推論モデル744とは、同一の損失関数を用いて機械学習された機械学習モデルであってよい。
【0123】
コンテンツ推論モデル746は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ推論モデル746の出力を評価するための損失関数とが任意の態様で結合された目的関数を用いて機械学習された機械学習モデルであってもよい。コンテンツ推論モデル746の機械学習においては、例えば、2つの損失関数を結合して得られる目的関数の値が最小となるように、コンテンツ推論モデル746のパラメータが調整される。
【0124】
一実施形態において、コンテンツ推論モデル746は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ推論モデル746の出力を評価するための損失関数との線形和を用いて機械学習された機械学習モデルであってもよい。他の実施形態において、コンテンツ推論モデル746は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ推論モデル746の出力を評価するための損失関数とが非線形に結合された目的関数を用いて機械学習された機械学習モデルであってもよい。
【0125】
コンテンツ推論モデル746の学習は、例えば、カテゴリ推論モデル744の学習と同時に実行される。上述されたとおり、カテゴリ推論モデル744の学習は、グループ推論モデル742の学習と同時に実行され得る。
【0126】
この場合、コンテンツ推論モデル746は、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告に対する上記のユーザ20の行動履歴とを学習データとして機械学習された機械学習モデルであってよい。コンテンツ推論モデル746は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性がグループ推論モデル742に入力され、グループ推論モデル742の出力がカテゴリ推論モデル744に入力されたときに、カテゴリ推論モデル744が出力した推論結果と、(ii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルであってもよい。
【0127】
コンテンツ推論モデル746は、(a)カテゴリ推論モデル744が出力した1以上のカテゴリに対応するコンテンツの種類の候補(告知情報の種類又は当該告知情報に対応する下位層の一例であってよい)を出力する第1下位層モデルと、(b)ユーザ20の属性と、コンテンツの種類の候補とが入力され、当該コンテンツの種類の候補のうち、ユーザ20に推奨されるべきコンテンツの種類を出力する第2下位層モデルとを有してもよい。この場合、第2下位層モデルは、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)過去に配信された広告を受け取ったユーザ20の属性がグループ推論モデル742に入力され、グループ推論モデル742の出力がカテゴリ推論モデル744に入力されたときに、カテゴリ推論モデル744が出力した推論結果により示されるカテゴリに属するコンテンツの種類と、(iii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルであってもよい。上述されたとおり、コンテンツの種類は、下位層の一例であってよい。
【0128】
具体的には、コンテンツ推論モデル746の学習は、例えば、下記の手順に従って実行される。まず、教師データに含まれる1以上の説明変数の値が、グループ推論モデル742に入力される。上述されたとおり、教師データに含まれる1以上の説明変数のそれぞれは、過去に配信された広告を受け取ったユーザ20の属性を示す。グループ推論モデル742は、入力された教師データに対応する1以上のカテゴリを出力する。グループ推論モデル742の出力は、カテゴリ推論モデル744に入力される。カテゴリ推論モデル744は、例えば、入力されたカテゴリのそれぞれに関するスコアを導出し、当該スコアに基づいて、入力された1以上の属性に対応する1以上のカテゴリを出力する。
【0129】
次に、教師データに含まれる1以上の説明変数の値と、カテゴリ推論モデル744が出力したカテゴリを示す値とが、コンテンツ推論モデル746に入力される。コンテンツ推論モデル746は、例えば、入力されたカテゴリに属する1以上のコンテンツのそれぞれに関するスコアを出力する。
【0130】
次に、教師データに含まれる1以上の目的変数の値と、コンテンツ推論モデル746の1以上の出力値とのズレ又は誤差を示す損失関数又はコスト関数(目的関数と称される場合がある。)の出力を最適化するべく、コンテンツ推論モデル746のパラメータとが調整される。上述されたとおり、上記の目的関数は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ推論モデル746の出力を評価するための損失関数とが任意の態様で結合された関数であってよい。
【0131】
本実施形態において、正例の教師データに含まれる目的変数は、当該教師データに対応するユーザ20が各カテゴリに関する広告を受信した場合に、ユーザ20による特定の行動が観察されたコンテンツの種類を示す。負例の教師データに含まれる目的変数は、当該教師データに対応するユーザ20が各カテゴリに関する広告を受信した場合に、ユーザ20による特定の行動が観察されなかったコンテンツの種類を示す。
【0132】
また、この時、グループ推論モデル742のパラメータ、及び、カテゴリ推論モデル744のパラメータも調整され得る。具体的には、グループ推論モデル742及び/又はカテゴリ推論モデル744に関連して説明されたとおり、教師データに含まれるカテゴリ推論モデル744のための目的変数の値と、カテゴリ推論モデル744の1以上の出力値とのズレ又は誤差を示す目的関数の出力を最適化するべく、グループ推論モデル742のパラメータと、カテゴリ推論モデル744のパラメータとが調整される。
【0133】
準備された1以上の教師データのそれぞれについて上記の処理が繰り返されることで、コンテンツ推論モデル746の学習が、カテゴリ推論モデル744の学習と同時に実行され得る。コンテンツ推論モデル746の学習手順の詳細は後述される。
【0134】
(コンテンツ推論モデルの学習手順の他の例の概要)
コンテンツ推論モデル746は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告の推奨種目の推論過程においてコンテンツ推論モデル746に入力されたコンテンツのカテゴリ又は種類と、(iii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルである。コンテンツ推論モデル746は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告の推奨種目の推論過程においてカテゴリ推論モデル744が出力した推論結果と、(iii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とを学習データとして機械学習された機械学習モデルである。
【0135】
コンテンツ推論モデル746は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告の推奨種目の推論過程においてコンテンツ推論モデル746に入力されたコンテンツのカテゴリ又は種類と、(iii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とから、上述された推奨種目を推論するための機械学習により生成された機械学習モデルである。コンテンツ推論モデル746は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告の推奨種目の推論過程においてカテゴリ推論モデル744が出力した推論結果と、(iii)当該過去に配信された広告を受け取ったユーザ20の当該広告に対する行動履歴とから、上述された推奨種目を推論するための機械学習により生成された機械学習モデルである。
【0136】
例えば、過去に配信された広告の全部又は一部について、(i)当該広告の生成過程(より具体的には、当該広告に含まれるコンテンツの推奨過程である。)におけるグループ推論モデル742の出力履歴又はカテゴリ推論モデル744の入力履歴と、(ii)当該広告を受信したユーザの行動履歴とが任意の記憶装置に記憶されている場合、例えば、これらのデータが学習データとして用いられる。
【0137】
各学習データに含まれる1以上の説明変数は、例えば、過去の広告の生成過程又はコンテンツの推奨過程において出力された1以上のグループを示す。各学習データに含まれる1以上の目的変数は、例えば、1以上のカテゴリのそれぞれに関する確率であって、当該教師データに対応するユーザ20が各カテゴリに関する広告を受信した場合に特定の行動を実行する確率を示す。
【0138】
グループ推論モデル742は、第1学習モデルの一例であってよい。カテゴリ推論モデル744は、第2学習モデルの一例であってよい。コンテンツ推論モデル746は、第3学習モデルの一例であってよい。広告の配信は、情報の告知又は情報の提供の一例であってよい。
【0139】
過去に配信された広告を受け取ったユーザ20の当該広告に対する行動は、告知情報に対する受領者の行動の一例であってよい。過去に配信された広告の推奨種目の推論過程においてカテゴリ推論モデル744に入力されたカテゴリは、当該推論結果に対応する第1出力の一例であってよい。過去に配信された広告の推奨種目の推論過程においてコンテンツ推論モデル746に入力されたコンテンツのカテゴリは、上位層出力部が当該受領者の属性に基づいて出力した1以上の上位層の一例であってよい。過去に配信された広告の推奨種目の推論過程においてコンテンツ推論モデル746に入力されたコンテンツの種類は、上位層出力部が当該受領者の属性に基づいて出力した1以上の上位層に属する告知情報の種類の一例であってよい。第2下位層モデルは、下位層出力部の一例であってよい。
【0140】
(別実施形態の一例)
本実施形態においては、グループ推論モデル742と、カテゴリ推論モデル744とが、同一の損失関数を用いて機械学習された機械学習モデルである場合を例として、広告配信システム100の詳細が説明された。しかしながら、広告配信システム100は本実施形態に限定されない。他の実施形態において、グループ推論モデル742及びカテゴリ推論モデル744の少なくとも一方が、ルールベース型のモデルであってよい。例えば、グループ推論モデル742は、属性及びグループの対応関係を規定するルールを参照して、入力された1以上の属性のそれぞれに対応付けられた1以上のグループを出力する。例えば、カテゴリ推論モデル744は、グループ及びカテゴリの対応関係を規定するルールを参照して、入力された1以上のグループのそれぞれに対応付けられた1以上のカテゴリを出力する。
【0141】
図8は、推奨履歴データベース800のデータ構造の一例を概略的に示す。推奨履歴データベース800は、例えば、推奨履歴格納部726に格納される。本実施形態において、推奨履歴データベース800は、1以上のレコードを含む。本実施形態において、1以上のレコードのそれぞれは、過去に配信された1以上の配信情報のそれぞれの配信ID820と、配信履歴830を示す情報と、行動履歴840を示す情報とを対応づけて格納する。配信ID820は、過去に配信された1以上の配信情報のそれぞれの識別情報(配信IDと称される場合がある。)の一例であってよい。
【0142】
本実施形態において、配信履歴830は、配信サーバ120が過去に配信した1以上の配信情報に関する各種の情報を格納する。本実施形態において、配信履歴830は、例えば、各配信情報が配信された配信日時832、各配信情報が配信されたユーザ20のユーザID834、及び、各配信情報に含まれる1以上のコンテンツの種類を示すコンテンツID836を示す情報を含む。
【0143】
本実施形態において、行動履歴840は、配信サーバ120が過去に配信した1以上の配信情報に対する、当該配信情報の受領ユーザの行動に関する各種の情報を格納する。本実施形態において、行動履歴840は、例えば、広告の開封行動の有無842、広告に関連するWebサイト又はSNSページへの訪問行動の有無844、広告に関連する商品又はサービスの購入行動の有無846に関する情報を含む。
【0144】
行動履歴840は、(i)広告の開封行動の有無、(ii)広告に関連するWebサイト又はSNSページへの訪問行動の有無、及び、(iii)広告に関連する商品又はサービスの購入行動の有無の内の少なくとも2つの組み合わせに関する情報を含んでもよい。開封行動がなく、訪問行動及び/又は購入行動がある場合としては、ユーザ20が、広告とは無関係に又は広告に誘発若しくは誘導されることなく、Webサイト又はSNSページに訪問したり、商品又はサービスを購入したりする場合が例示される。
【0145】
図9は、推論過程データベース900のデータ構造の一例を概略的に示す。推論過程データベース900は、推論過程格納部728に格納される。本実施形態において、推論過程データベース900は、1以上のレコードを含む。本実施形態において、1以上のレコードのそれぞれは、過去に配信サーバ120が送信した1以上の推奨要求のそれぞれの推奨要求ID920と、当該推奨要求に対する応答に基づいて配信された配信情報の配信ID930と、当該推奨要求に対する応答時の推奨部144の推論過程に含まれる各工程におけるモデルの出力履歴940を示す情報とを対応付けて格納する。推奨要求ID920は、過去に配信サーバ120が送信した1以上の推奨要求のそれぞれの識別情報(推奨要求IDと称される場合がある。)の一例であってよい。
【0146】
後述されるとおり、本実施形態において、推奨部144の推論過程は、(i)グループ推論モデル742を用いて、対象ユーザが属するグループが推論されるグループ推論工程と、(ii)カテゴリ推論モデル744を用いて、上記のグループに対応するコンテンツのカテゴリが推論されるグループ推論工程と、(iii)コンテンツ推論モデル746を用いて、推奨種目に含まれるコンテンツの種類が推論されるコンテンツ推論工程とを含む。そこで、本実施形態において、各工程におけるモデルの出力履歴940は、グループ推論工程における推論結果942、カテゴリ推論工程における推論結果944、及び、コンテンツ推論工程における推論結果946を示す情報を含む。
【0147】
図10は、推奨部144の内部構造の一例を概略的に示す。上述されたとおり、推奨部144は、対象ユーザの属性情報により示される対象ユーザの属性と、上述された複数の種類の広告又はコンテンツの分類構造とに基づいて、上述された推奨種目を決定する。本実施形態において、推奨部144は、属性抽出部1022と、カテゴリ推奨部1024と、コンテンツ推奨部1026とを備える。
【0148】
本実施形態において、属性抽出部1022は、対象ユーザの属性情報を取得する。属性抽出部1022は、対象ユーザの属性情報を1024に出力する。
【0149】
一実施形態において、属性抽出部1022は、例えば、推奨要求送信部342から、対象ユーザのユーザIDを含む推奨要求を取得する。属性抽出部1022は、推奨要求に含まれる対象ユーザのユーザIDに基づいて、対象ユーザの属性情報を取得する。より具体的には、属性抽出部1022は、ユーザ情報格納部722を参照して、対象ユーザのユーザIDに対応付けられた属性情報を取得する。他の実施形態において、属性抽出部1022は、推奨要求送信部342から、対象ユーザの属性情報を含む推奨要求を取得してもよい。
【0150】
本実施形態において、カテゴリ推奨部1024は、属性抽出部1022から対象ユーザの属性情報を取得する。カテゴリ推奨部1024は、上記の属性情報により示される対象ユーザの属性に基づいて、少なくとも1つの上位層のうち、対象ユーザへの提供が推奨される1以上の種類の広告(推奨広告と称される場合がある。)のそれぞれが属する1以上の上位層を出力する。上述されたとおり、分類構造において、上位層は、例えば、コンテンツのカテゴリを示す。これにより、例えば、分類構造データベース600に含まれる1以上のカテゴリの中から、対象ユーザの属性に応じた1以上のカテゴリが選択される。
【0151】
カテゴリ推奨部1024は、例えば、対象ユーザの属性情報により示される当該対象ユーザの属性を、学習済みの機械学習モデルに入力し、当該機械学習モデルから、1以上の推奨広告のそれぞれが属する1以上の上位層に関するに対応する出力を導出する。上記の機械学習モデルは、例えば、カテゴリ推論モデル744である。
【0152】
本実施形態において、コンテンツ推奨部1026は、例えば、カテゴリ推奨部1024の出力結果に基づいて、複数の下位層のうち、1以上の推奨広告のそれぞれが属する1以上の下位層を出力する。上述されたとおり、分類構造において、上位層は、例えば、コンテンツのカテゴリを示す。また、下位層は、例えば、コンテンツの種類を示す。推奨広告が属する下位層としては、当該広告に対応するコンテンツの種類が例示される。
【0153】
これにより、推奨要求に示される対象ユーザに対応する推奨種目が決定される。コンテンツ推奨部1026は、推奨要求に対する応答として、上記の推奨種目を示す情報を広告データ生成部344に送信してよい。
【0154】
属性抽出部1022は、属性情報取得部の一例であってよい。カテゴリ推奨部1024は、推奨情報決定部又は上位層出力部の一例であってよい。コンテンツ推奨部1026は、推奨情報決定部又は下位層出力部の一例であってよい。
【0155】
図11は、カテゴリ推奨部1024の内部構造の一例を概略的に示す。本実施形態において、カテゴリ推奨部1024は、グループ導出部1122と、カテゴリ導出部1124とを備える。
【0156】
本実施形態において、グループ導出部1122は、例えば、(i)対象ユーザの属性をグループ推論モデル742に入力し、(ii)グループ推論モデル742から、複数のグループのうち対象ユーザが属する1以上のグループに関する推論結果に対応する第1出力を導出する。上述されたとおり、対象ユーザの属性は、例えば、対象ユーザの属性情報により示される。
【0157】
グループ導出部1122は、グループ推論モデル742の推論結果により示される1以上のグループのうち、予め定められた第1条件を満足するグループを示す情報を、第1出力として出力してもよい。例えば、グループ推論モデル742が、複数のグループのそれぞれに関するスコアを出力する場合、上記の第1条件としては、スコアが最も大きいという条件、スコアが予め定められた閾値以上である又は当該閾値を超えるという条件などが例示される。
【0158】
本実施形態において、カテゴリ導出部1124は、例えば、(i)グループ導出部1122が導出した第1出力により示される少なくとも1つのグループをカテゴリ推論モデル744に入力し、(ii)カテゴリ推論モデル744から、対象ユーザの属性に対応する1以上のカテゴリに関する推論結果に対応する第2出力を導出する。これにより、例えば、分類構造データベース600に含まれる1以上のカテゴリの中から、対象ユーザの属性に応じた1以上のカテゴリが選択される。
【0159】
カテゴリ導出部1124は、カテゴリ推論モデル744の推論結果により示される1以上のカテゴリのうち、予め定められた第2条件を満足するカテゴリを示す情報(例えば、選択されたカテゴリを識別するためのカテゴリIDである)を、第2出力として出力してもよい。例えば、カテゴリ推論モデル744が、1以上のカテゴリのそれぞれに関するスコアを出力する場合、上記の第2条件としては、スコアが最も大きいという条件、スコアが予め定められた閾値以上である又は当該閾値を超えるという条件などが例示される。
【0160】
グループ導出部1122は、第1導出部の一例であってよい。カテゴリ導出部1124は、上位層出力部又は第2導出部の一例であってよい。
【0161】
(別実施形態の一例)
本実施形態においては、カテゴリ推奨部1024が、機械学習により生成されたグループ推論モデル742及びカテゴリ推論モデル744を用いて、1以上の推奨広告のそれぞれに対応する1以上の上位層(例えば、コンテンツのカテゴリである。)を決定する場合を例として、カテゴリ推奨部1024の詳細が説明された。しかしながら、カテゴリ推奨部1024は本実施形態に限定されない。他の実施形態において、カテゴリ推奨部1024は、グループ推論モデル742及びカテゴリ推論モデル744の少なくとも一方の代わりに、ルールベース型のアルゴリズムを用いてグループ及び/又はカテゴリを決定してよい。
【0162】
例えば、グループ導出部1122は、グループ推論モデル742の代わりに、1以上のグループのそれぞれについて、各グループのグループIDと、各グループに属するユーザ20の属性とが対応付けられたデータベースを参照して、対象ユーザの属性に対応するグループIDを導出し得る。例えば、カテゴリ導出部1124は、カテゴリ推論モデル744の代わりに、1以上のカテゴリのそれぞれについて、各カテゴリのカテゴリIDと、各カテゴリに関する広告が高い広告効果を奏し得るグループのグループIDとが対応付けられたデータベースを参照して、グループIDに対応するカテゴリIDを導出し得る。例えば、カテゴリ推奨部1024は、グループ推論モデル742及びカテゴリ推論モデル744の代わりに、1以上のカテゴリのそれぞれについて、各カテゴリのカテゴリIDと、各カテゴリに関する広告が高い広告効果を奏し得るユーザ20の属性とが対応付けられたデータベースを参照して、対象ユーザの属性に対応するカテゴリIDを導出し得る。
【0163】
このような場合であっても、カテゴリ推奨部1024の出力結果を統計的に解析することにより、カテゴリ推奨部1024における情報処理の妥当性が検証され得る。これにより、推奨部144の推論結果の解釈性が向上する。
【0164】
図12は、コンテンツ推奨部1026の内部構造の一例を概略的に示す。本実施形態において、コンテンツ推奨部1026は、推奨候補抽出部1222と、コンテンツ導出部1224とを備える。
【0165】
本実施形態において、推奨候補抽出部1222は、カテゴリ導出部1124が導出した第2出力を取得する。推奨候補抽出部1222は、第2出力により示される1以上のカテゴリに含まれる1以上のコンテンツの種類を抽出する。例えば、推奨候補抽出部1222は、ユーザ情報格納部722に格納された分類構造データベース600を参照して、第2出力により示されるカテゴリに属する1以上のコンテンツの種類を抽出する。これにより、推奨広告の候補となる1以上のコンテンツが抽出される。
【0166】
推奨候補抽出部1222は、抽出された推奨広告の候補となる1以上のコンテンツの種類を示す情報を、コンテンツ導出部1224に出力する。例えば、カテゴリ導出部1124が「カードローン」というカテゴリを出力した場合、推奨候補抽出部は、「カードローンの認知メール」及び「カードローンのキャンペーンメール」を示す情報を、コンテンツ導出部1224に出力する。
【0167】
本実施形態において、コンテンツ導出部1224は、推奨広告の候補となる1以上のコンテンツの種類を示す情報を受け取る。一実施形態において、コンテンツ導出部1224は、(a)(i)推奨広告の候補となる1以上のコンテンツの種類と、(ii)対象ユーザの属性とを、コンテンツ推論モデル746に入力し、(b)コンテンツ推論モデル746から、1以上の推奨広告を作成するために用いられる1以上のコンテンツの種類に関する推論結果に対応する第3出力を導出する。上述されたとおり、コンテンツの種類は、下位層の一例であってよい。
【0168】
なお、他の実施形態において、コンテンツ推奨部1026は、推奨候補抽出部1222を備えなくてもよい。この場合、コンテンツ導出部1224は、例えば、(a)(i)カテゴリ推奨部1024が出力した1以上のカテゴリと、(ii)対象ユーザの属性とを、コンテンツ推論モデル746に入力し、(b)コンテンツ推論モデル746から、1以上の推奨広告を作成するために用いられる1以上のコンテンツの種類に関する推論結果に対応する第3出力を導出する。カテゴリ推奨部1024が出力した1以上のカテゴリは、カテゴリ導出部1124からの第2出力により示される少なくとも1つのカテゴリであってよい。
【0169】
コンテンツ推奨部1026は、下位層出力部又は第3導出部の一例であってよい。カテゴリ推奨部1024が出力した1以上のカテゴリは、上位層出力部が出力した1以上の上位層の少なくとも1つの一例であってよい。推奨広告の候補となる1以上のコンテンツの種類は、上位層出力部が出力した1以上の上位層の少なくとも1つに属する告知情報の種類の一例であってよい。1以上の推奨広告を作成するために用いられる1以上のコンテンツの種類は、1以上の推奨情報のそれぞれが属する1以上の下位層の一例であってよい。
【0170】
図13は、モデル生成部148の内部構造の一例を概略的に示す。本実施形態において、モデル生成部148は、学習データ生成部1320と、学習部1340とを備える。本実施形態において、学習部1340は、グループ学習部1342と、カテゴリ学習部1344と、コンテンツ学習部1346とを有する。
【0171】
本実施形態において、学習データ生成部1320は、各種の学習用データセットを生成する。学習データ生成部1320は、例えば、推奨履歴データベース800を参照して、過去の特定の期間に配信された配信情報に関する複数のレコードを抽出し、抽出された複数のレコードに基づいて学習用データセットを生成する。これにより、モデル生成部148は、上記の学習用データセットを取得することができる。各種の学習用データセットのそれぞれは、複数の学習データを含む。
【0172】
一実施形態において、学習データ生成部1320は、グループ推論モデル742及びカテゴリ推論モデル744の学習に用いられる第1の学習用データセットと、コンテンツ推論モデル746の学習に用いられる第2の学習用データセットとを生成する。第1の学習用データセットに含まれる学習データである第1学習データと、第2の学習用データセットに含まれる学習データである第2学習データとは、データ項目の組み合わせが異なる。
【0173】
複数の第1学習データのそれぞれは、例えば、(i)過去に配信された配信情報を受け取ったユーザ20(上述されたとおり、受領ユーザと称される場合がある。)の属性と、(ii)当該配信情報に対して当該受領ユーザが特定の行動を行う確率とを含む。上記の確率は、カテゴリごとの確率であってよい。特定の行動としては、(i)広告の閲覧、又は、広告が含まれるメール若しくはメッセージの開封、(ii)広告に含まれるURLのクリック、広告に含まれる各種コマンドの実行、広告に関連するWebサイト又はSNSページの閲覧、(iii)広告に関連する商品又はサービスの購入又は購入の申し込みなどが例示される。
【0174】
一実施形態において、配信情報に対して受領ユーザが特定の行動を行う確率は、例えば、推奨履歴データベース800を参照して、ユーザごと及びコンテンツのカテゴリごとのデータを抽出することで導出される。具体的には、推奨履歴データベース800を参照して、ユーザ20ごとに、同一の受領ユーザに対して、同一カテゴリのコンテンツが複数回送信された場合における当該受領ユーザの行動履歴840が抽出される。上記の抽出処理により抽出された1又は複数のユーザ20のデータに基づいて、各種類のコンテンツの送信回数に対する各行動の有無の回数の割合を算出することで、コンテンツのカテゴリごとに、受領ユーザが特定の行動を行う確率が導出され得る。
【0175】
他の実施形態において、配信情報に対して受領ユーザが特定の行動を行う確率は、例えば、推奨履歴データベース800を参照して、ユーザごと及びコンテンツの種類ごとのデータを抽出することで導出される。具体的には、推奨履歴データベース800を参照して、ユーザ20ごとに、同一の受領ユーザに対して、同一種類のコンテンツが複数回送信された場合における当該受領ユーザの行動履歴840が抽出される。上記の抽出処理により抽出された1又は複数のユーザ20のデータに基づいて、各種類のコンテンツの送信回数に対する各行動の有無の回数の割合を算出することで、コンテンツの種類ごとに、受領ユーザが特定の行動を行う確率が導出され得る。
【0176】
なお、上述されたとおり、コンテンツの種類と、コンテンツのカテゴリとの対応関係は、分類構造データベース600に格納されているコンテンツの分類構造630により規定される。そのため、コンテンツの種類ごとに導出された確率に基づいて、コンテンツのカテゴリごとに、受領ユーザが特定の行動を行う確率が導出され得る。
【0177】
複数の第2学習データのそれぞれは、例えば、(i)過去に配信された配信情報を受け取った受領ユーザの属性と、(ii)当該配信情報に含まれる1以上のコンテンツの種類と、(iii)当該配信情報に対する当該受領者の行動履歴とを含む。複数の第2学習データのそれぞれは、(i)過去に配信された配信情報を受け取った受領ユーザの属性と、(ii)当該属性を有するユーザによる特定の行動が観察されたコンテンツの種類(つまり、正例である)、又は、当該属性を有するユーザによる特定の行動が観察されなかったコンテンツの種類(つまり、負例である)とを含んでもよい。
【0178】
他の実施形態において、学習データ生成部1320は、グループ推論モデル742の学習に用いられるグループ学習用データセットと、カテゴリ推論モデル744の学習に用いられるカテゴリ学習用データセットと、コンテンツ推論モデル746の学習に用いられるコンテンツ学習用データセットとを生成する。グループ学習用データセットに含まれる学習データと、カテゴリ学習用データセットに含まれる学習データと、コンテンツ学習用データセットに含まれる学習データとは、データ項目の組み合わせが異なる。これらの学習データの詳細は後述される。
【0179】
本実施形態において、学習部1340は、学習データ生成部1320が生成した複数の学習データを取得する。学習部1340は、上記の複数の学習データを用いて、機械学習により、推奨部144の情報処理において用いられる学習モデルを生成及び/又は更新する。上述されたとおり、推奨部144は、対象ユーザの属性、及び、対象者に提供可能な複数の広告が階層的に分類された分類構造に基づいて、複数の広告の中から少なくとも1つの広告を選択するための情報処理を実行する。推奨部144の情報処理においては、グループ推論モデル742、カテゴリ推論モデル744及びコンテンツ推論モデル746が用いられる。
【0180】
本実施形態において、グループ学習部1342は、グループ推論モデル742を生成及び/又は更新する。グループ学習部1342は、例えば、ユーザ20の属性から、複数のグループのうちユーザ20が属する1以上のグループを推論するための機械学習により、グループ推論モデル742を生成及び/又は更新する。
【0181】
グループ学習部1342は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告に対する上記のユーザ20の行動履歴とを学習データとして用いた機械学習により、グループ推論モデル742を生成及び/又は更新する。グループ学習部1342は、例えば、上述された学習用データセットを用いて、グループ推論モデル742にユーザ20の属性が入力されると、グループ推論モデル742から、複数のグループのうちユーザ20が属する1以上のグループが出力されるように、グループ推論モデル742のパラメータを調整する。
【0182】
上述されたとおり、グループ学習部1342は、例えば、カテゴリ学習部1344と協働して、グループ推論モデル742の学習処理を実行する。グループ学習部1342は、例えば、上述された第1の学習用データセットを学習データとして用いた機械学習により、グループ推論モデル742を生成及び/又は更新する。
【0183】
上述されたとおり、第1の学習用データセットは、グループ推論モデル742及びカテゴリ推論モデル744の学習に用いられる。この場合、グループ学習部1342は、カテゴリ推論モデル744の出力を評価するための損失関数を用いて、グループ推論モデル742のパラメータを調整してもよい。グループ推論モデル742の学習手順の詳細は後述される。
【0184】
本実施形態において、カテゴリ学習部1344は、カテゴリ推論モデル744を生成及び/又は更新する。カテゴリ学習部1344は、例えば、ユーザ20が属する1以上のグループから、1以上のグループのそれぞれの構成員への提供が推奨される1以上の広告のそれぞれが属する1以上の上位層を推論するための機械学習により、カテゴリ推論モデル744を生成及び/又は更新する。
【0185】
カテゴリ学習部1344は、例えば、上述された学習用データセットを用いて、例えば、カテゴリ推論モデル744にユーザ20が属する1以上のグループが入力されると、カテゴリ推論モデル744からコンテンツのカテゴリが出力されるように、カテゴリ推論モデル744のパラメータを調整する。コンテンツのカテゴリは、コンテンツの種類の上位層の一例であってよい。コンテンツの種類は、下位層の一例であってよい。
【0186】
カテゴリ学習部1344は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告に対する上記のユーザ20の行動履歴とを学習データとして用いた機械学習により、カテゴリ推論モデル744を生成及び/又は更新する。上述されたとおり、カテゴリ学習部1344は、例えば、グループ学習部1342と協働して、カテゴリ推論モデル744の学習処理を実行する。カテゴリ学習部1344は、例えば、上述された第1の学習用データセットを学習データとして用いた機械学習により、カテゴリ推論モデル744を生成及び/又は更新する。
【0187】
上述されたとおり、第1の学習用データセットは、グループ推論モデル742及びカテゴリ推論モデル744の学習に用いられる。この場合、カテゴリ学習部1344は、カテゴリ推論モデル744の出力を評価するための損失関数を用いて、カテゴリ推論モデル744のパラメータを調整してもよい。カテゴリ推論モデル744の学習手順の詳細は後述される。
【0188】
本実施形態において、コンテンツ学習部1346は、コンテンツ推論モデル746を生成及び/又は更新する。コンテンツ学習部1346は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信されたユーザ20の当該広告に対する行動履歴とから、上述された推奨種目を推論するための機械学習により、コンテンツ推論モデル746を生成及び/又は更新する。コンテンツ学習部1346は、例えば、(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信されたユーザ20の当該広告に対する行動履歴とを学習データとして用いた機械学習により、コンテンツ推論モデル746を生成及び/又は更新する。コンテンツ学習部1346は、例えば、上述された第2の学習用データセットを学習データとして用いた機械学習により、コンテンツ推論モデル746を生成及び/又は更新する。
【0189】
コンテンツ学習部1346は、例えば、コンテンツ推論モデル746に、(a)(i)ユーザ20の属性と、(ii)ユーザ20の属性に対応するコンテンツのカテゴリとが入力されると、(b)コンテンツ推論モデル746から、入力されたカテゴリに含まれるコンテンツの種類のうち、上記のユーザ20への提供が推奨されるコンテンツの種類が出力されるように、コンテンツ推論モデル746のパラメータを調整する。コンテンツ推論モデル746は、例えば、コンテンツ推論モデル746に、(a)(i)過去に配信された広告を受け取ったユーザ20の属性と、(ii)当該過去に配信された広告を受け取ったユーザ20の属性がグループ推論モデル742に入力され、グループ推論モデル742の出力がカテゴリ推論モデル744に入力されるときに、カテゴリ推論モデル744が出力する推論結果とが入力されると、(b)上記のユーザ20による特定の行動が観察されたコンテンツの種類が出力されるように、コンテンツ推論モデル746のパラメータを調整する。
【0190】
コンテンツ学習部1346は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ学習部1346の出力を評価するための損失関数とを用いて、コンテンツ学習部1346のパラメータを調整してよい。コンテンツ学習部1346は、上記の2つの損失関数が任意に結合された目的関数を用いて、コンテンツ学習部1346のパラメータを調整してよい。コンテンツ学習部1346は、例えば、2つの損失関数を結合して得られる目的関数の値が最小となるように、コンテンツ推論モデル746のパラメータを調整する。目的関数は、上記の2つの損失関数の線形和であってよい。
【0191】
上述されたとおり、本実施形態によれば、コンテンツ学習部1346によるコンテンツ推論モデル746の学習処理と、グループ学習部1342によるグループ推論モデル742の学習処理と、カテゴリ学習部1344によるカテゴリ推論モデル744の学習処理とが、同時に実行される。コンテンツ推論モデル746の学習手順の詳細は後述される。
【0192】
学習データ生成部1320は、学習データ取得部の一例であってよい。コンテンツ学習部1346は、学習モデル生成部の一例であってよい。受領ユーザが特定の行動を行う確率は、受領者の行動の統計データの一例であってよい。
【0193】
図14は、学習データ生成部1320における学習用データセット1430の生成処理の一例を概略的に示す。学習用データセット1430は、例えば、グループ推論モデル742の機械学習に用いられる。学習用データセット1430は、上述された第1の学習用データセットの一例であってよい。
【0194】
本実施形態によれば、学習データ生成部1320は、まず、推奨履歴データベース800と、分類構造データベース600とを参照して、ユーザID834と、コンテンツのカテゴリ632と、行動履歴840とが対応付けられた学習データを生成する。学習データは、ユーザID834と、コンテンツのカテゴリ632と、行動履歴840のうち特定の行動に関する履歴とが対応付けられたデータであってもよい。
【0195】
上述されたとおり、推奨履歴データベース800は、ユーザID834と、コンテンツID836と、行動履歴840とが対応付けられた複数のレコードを格納する。同様に、分類構造データベース600は、コンテンツID620と、コンテンツのカテゴリ632とが対応付けられた複数のレコードを格納する。学習データ生成部1320は、推奨履歴データベース800の各レコードのコンテンツID836をキーとして分類構造データベース600を参照し、コンテンツID836に対応するコンテンツのカテゴリ632を抽出する。これにより、ユーザID834と、コンテンツのカテゴリ632と、行動履歴840とが対応付けられた学習データが生成され得る。学習データ生成部1320は、上記の処理を繰り返して、複数の学習データを含むデータセット1422を生成する。
【0196】
次に、学習データ生成部1320は、データセット1422に含まれる複数のデータをソートして、ユーザID834と、コンテンツのカテゴリ632とが同一のデータを抽出する。学習データ生成部1320は、抽出された1以上のデータに含まれる行動履歴840に基づいて、ユーザ20の行動に関する統計データを導出する。例えば、学習データ生成部1320は、抽出された1以上のデータに含まれる行動履歴840に基づいて、ユーザ20が特定の行動を行う確率(行動確率と称される場合がある。)を導出する。
【0197】
例えば、同一のユーザ20に送信された同一カテゴリの3個のデータのうち、2つのデータは開封されず、1つのデータが開封された場合、当該カテゴリに属する配信情報が開封される確率は1/3となる。学習データ生成部1320は、抽出されたデータをいくつかのグループに分類し、当該グループごとに上記の確率を導出してもよい。
【0198】
学習データ生成部1320は、上記の処理を繰り返して、カテゴリごとに、特定のユーザ20の行動確率を導出する。学習データ生成部1320は、(i)実際に配信された1以上のコンテンツに対応する1以上のカテゴリについて、上記の特定のユーザ20の行動確率を導出してもよく、(ii)広告配信システム100で管理される全てのカテゴリについて、上記の特定のユーザ20の行動確率を導出してもよい。
【0199】
これにより、ユーザID834と、コンテンツのカテゴリ632と、ユーザごとの行動確率1440とが対応付けられた学習データが生成される。ユーザごとの行動確率1440は、特定の種類の行動に関する行動確率であってもよく、広告配信システム100で管理される全ての種類の行動に関する行動確率であってもよい。行動の種類の個数がQ個(Qは、1以上の整数である。)である場合、行動確率は、Q次元の実数ベクトルであってよい。
【0200】
学習データ生成部1320は、例えば、行動確率が予め定められた閾値以上であるデータ又は当該閾値を超えるデータに、当該データが正例であることを示すラベル1450を付与してもよい。同様に、学習データ生成部1320は、例えば、行動確率が予め定められた閾値未満であるデータ又は当該閾値以下であるデータに、当該データが負例であることを示すラベル1450を付与してもよい。学習データ生成部1320は、上記の処理を繰り返して、複数の学習データを含むデータセット1424を生成する。
【0201】
次に、学習データ生成部1320は、ユーザデータベース400を参照して、データセット1424を構成する学習データのそれぞれのユーザID834を、ユーザの属性440に置換する。また、学習データ生成部1320は、同一のユーザ20に関する複数のレコードをマージしてもよい。例えば、学習データの作成処理の対象となる期間中に、特定のユーザ20に対して複数のカテゴリに属するコンテンツが配信されていた場合、単一のユーザID834に対して、複数のレコードが作成される。複数のレコードのそれぞれは、特定のユーザ20に関するカテゴリーごとの行動確率を示す。この場合、学習データ生成部1320は、上記の複数のレコードを統合して、単一のレコードを作成してよい。
【0202】
これにより、ユーザの属性440と、カテゴリごとの行動確率1460と、ラベル1450とが対応付けられた学習データにより構成される学習用データセット1430が生成される。ユーザ20の属性の個数がS個(Sは、1以上の整数である。)である場合、ユーザの属性440は、S次元の実数ベクトルであってよい。上述されたカテゴリの個数がP個(Pは、1以上の整数である。)であり、行動の種類の個数がQ個(Qは、1以上の整数である。)である場合、カテゴリごとの行動確率1460は、P×Q次元の実数ベクトルであってよい。
【0203】
学習用データセット1430に含まれる各学習データにおいて、ユーザの属性440は、学習段階における説明変数として用いられる。同様に、各学習データにおいて、カテゴリごとの行動確率1460は、学習段階における目的変数として用いられる。
【0204】
なお、学習用データセット1430のデータ構造は本実施形態に限定されない。他の実施形態において、学習用データセット1430に含まれる各学習データは、ラベル1450を含まなくてもよい。
【0205】
図15は、学習用データセット1530の生成処理の一例を概略的に示す。学習用データセット1530は、例えば、コンテンツ推論モデル746の機械学習に用いられる。学習用データセット1530は、上述された第2の学習用データセットの一例であってよい。後述されるとおり、学習用データセット1430を構成する各学習データと、学習用データセット1530を構成する各学習データとがマージされて、単一の学習用データセットが生成されてもよい。
【0206】
本実施形態によれば、学習データ生成部1320は、まず、推奨履歴データベース800と、分類構造データベース600とを参照して、ユーザID834と、コンテンツの種類634と、行動履歴840とが対応付けられた学習データを生成する。学習データは、ユーザID834と、コンテンツの種類634と、行動履歴840のうち特定の行動に関する履歴とが対応付けられたデータであってもよい。
【0207】
上述されたとおり、推奨履歴データベース800は、ユーザID834と、コンテンツID836と、行動履歴840とが対応付けられた複数のレコードを格納する。同様に、分類構造データベース600は、コンテンツID620と、コンテンツの種類634とが対応付けられた複数のレコードを格納する。学習データ生成部1320は、推奨履歴データベース800の各レコードのコンテンツID836をキーとして分類構造データベース600を参照し、コンテンツID836に対応するコンテンツの種類634を抽出する。これにより、ユーザID834と、コンテンツの種類634と、行動履歴840とが対応付けられた学習データが生成され得る。学習データ生成部1320は、上記の処理を繰り返して、複数の学習データを含むデータセット1522を生成する。
【0208】
次に、学習データ生成部1320は、ユーザデータベース400を参照して、データセット1522のユーザID834を、ユーザの属性440に置換する。学習データ生成部1320は、例えば、行動履歴の内容が特定の条件に合致するデータに、当該データが正例であることを示すラベル1550を付与してよい。同様に、学習データ生成部1320は、行動履歴の内容が特定の条件に合致しないデータに、当該データが負例であることを示すラベル1550を付与してよい。
【0209】
特定の条件としては、ユーザ20による特定の行動が観察されたという条件が例示される。ユーザ20がコンテンツを取得した場合に、ユーザ20が特定の行動を実行したコンテンツは正例として扱われる。同様に、ユーザ20がコンテンツを取得した場合に、ユーザ20が特定の行動を実行しなかったコンテンツは負例として扱われる。
【0210】
これにより、ユーザの属性440と、コンテンツの種類634と、行動履歴840と、ラベル1550とが対応付けられた学習データにより構成される学習用データセット1530が生成される。学習用データセット1530に含まれる各学習データにおいて、ユーザの属性440は、学習段階における説明変数として用いられる。同様に、各学習データにおいて、(i)コンテンツの種類634又は(ii)コンテンツの種類634及び行動履歴840は、学習段階における目的変数として用いられる。例えば、正例の学習データの目的変数は、コンテンツの種類634により示される種類のコンテンツが開封、訪問又は購入されたことを示し、正例の学習データの目的変数は、コンテンツの種類634により示される種類のコンテンツが開封、訪問又は購入されなかったことを示す。
【0211】
例えば、学習用データセットが、特定のユーザ20に対してどのコンテンツを推奨すべきかを予測又は推論するための学習に用いられる場合、当該学習用データセットに含まれる各学習データに含まれるコンテンツの種類634が、学習段階における目的変数として用いられる。一方、例えば、学習用データセットが、特定のユーザ20に対して特定のコンテンツが提供された場合に、当該特定のユーザ20がどのような行動を起こすかを予測又は推論するための学習に用いられる場合、当該学習用データセットに含まれる各学習データに含まれるコンテンツの種類634及び行動履歴840の両方が、学習段階における目的変数として用いられる。
【0212】
なお、学習用データセット1530のデータ構造は本実施形態に限定されない。例えば、コンテンツの種類が判明すれば、コンテンツの分類構造に基づいてカテゴリの種類も判明する。そのため、他の実施形態において、学習用データセット1530は、実際に配信されたコンテンツに対応するカテゴリに関する情報を含んでもよい。
【0213】
上述されたとおり、本実施形態において、グループ推論モデル742及び/又はカテゴリ推論モデル744の学習用データセット(上述された第1の学習用データセットである。)に含まれる教師データ(上述された第1学習データである。)は、配信情報に対して受領ユーザが特定の行動を行う確率を含む。上記の確率をより正確に導出するためには、比較的長期間にわたってデータを収集することが好ましい。そのため、グループ推論モデル742及び/又はカテゴリ推論モデル744の更新頻度は、コンテンツ推論モデル746の更新頻度よりも小さくてよい。
【0214】
図16は、学習用データセット1630の生成処理の一例を概略的に示す。学習用データセット1630は、例えば、カテゴリ推論モデル744の学習処理と、コンテンツ推論モデル746の学習処理とが同時に実行される場合に用いられる。学習用データセット1630は、グループ推論モデル742の学習処理と、カテゴリ推論モデル744の学習処理と、コンテンツ推論モデル746の学習処理とが同時に実行される場合に用いられてもよい。
【0215】
本実施形態によれば、学習データ生成部1320は、学習用データセット1430を構成する各学習データと、学習用データセット1530を構成する各学習データとをマージする。これにより、単一の学習用データセット1630が生成される。
【0216】
図17は、モデル生成部148における情報処理の一例を概略的に示す。本実施形態においては、学習用データセット1630を構成する複数の教師データのそれぞれが、過去に配信された複数の広告のそれぞれに関するユーザの属性440と、カテゴリごとの行動確率1460と、コンテンツの種類634と、ユーザの行動履歴840と、ラベル1550とを対応付けて格納する場合を例として、モデル生成部148における学習処理の詳細が説明される。本実施形態においては、グループ推論モデル742の学習処理と、カテゴリ推論モデル744の学習処理と、コンテンツ推論モデル746の学習処理とが同時期に実行される場合を例として、モデル生成部148における学習処理の詳細が説明される。
【0217】
上述されたとおり、本実施形態において、グループ学習部1342は、カテゴリ推論モデル744の出力を評価するための損失関数を用いて、グループ推論モデル742のパラメータを調整する。同様に、本実施形態において、カテゴリ学習部1344は、カテゴリ推論モデル744の出力を評価するための損失関数を用いて、カテゴリ推論モデル744のパラメータを調整する。
【0218】
一方、本実施形態において、コンテンツ学習部1346は、カテゴリ推論モデル744の出力を評価するための損失関数と、コンテンツ学習部1346の出力を評価するための損失関数とを用いて、コンテンツ学習部1346のパラメータを調整する。より具体的には、グループ推論モデル742及びカテゴリ推論モデル744の組み合わせに対して定義される損失関数LAと、コンテンツ推論モデル746に対して定義される損失関数LBとが結合されてなる目的関数を用いて、コンテンツ学習部1346のパラメータが調整される。
【0219】
本実施形態においては、学習中のグループ推論モデル742と、学習中のカテゴリ推論モデル744と、ルールベース型の推奨候補抽出部1222と、学習中のコンテンツ推論モデル746とに、教師データに含まれる説明変数の値が入力されることにより、グループ推論モデル742、カテゴリ推論モデル744及びコンテンツ推論モデル746の学習処理が実行される。本実施形態において、教師データに含まれる説明変数の値は、学習中のグループ推論モデル742と、学習中のコンテンツ推論モデル746とに入力される。学習中のグループ推論モデル742の出力は、学習中のカテゴリ推論モデル744に入力される。学習中のカテゴリ推論モデル744の出力は、推奨候補抽出部1222に入力される。推奨候補抽出部1222の出力は、学習中のコンテンツ推論モデル746に入力される。
【0220】
(グループ推論モデル742及びカテゴリ推論モデル744の学習)
本実施形態によれば、まず、教師データに含まれるユーザの属性440が、グループ推論モデル742に入力される。ユーザの属性440は、例えば、M個(Mは、1以上の整数である。)の属性のそれぞれを示す値により構成されるM次元の実数ベクトルである。
【0221】
グループ推論モデル742は、N個(Nは、1以上の整数である。)のグループのそれぞれのスコアにより構成されるN次元の実数ベクトルを導出する。各スコアは、例えば、各スコアに対応するグループが正解である確率を示す。これにより、入力されたM次元の実数ベクトルが、N次元の実数ベクトルに変換される。
【0222】
例えば、N=3である場合、グループ推論モデル742は、(0.1、0.3、0.6)のようなN次元の実数ベクトルを出力する。この場合、入力された教師データにより示される属性を有するユーザ20が1番目のグループに属する確率が0.1であり、上記のユーザ20が2番目のグループに属する確率が0.3であり、上記のユーザ20が3番目のグループに属する確率が0.6であることを示す。
【0223】
上述されたとおり、上記の複数のグループのそれぞれは、広告配信システム100が管理する1以上のユーザ20の潜在的なクラスターであり得る。本実施形態において、上記の整数Nは、広告配信システム100が管理する潜在的なクラスターの全ての個数を示す。なお、他の実施形態において、上記の整数Nは、広告配信システム100が管理する潜在的なクラスターの全ての個数よりも小さな数であってもよい。
【0224】
次に、グループ推論モデル742の出力が、カテゴリ推論モデル744に入力される。つまり、本実施形態において、カテゴリ推論モデル744には、N次元の実数ベクトルが入力される。カテゴリ推論モデル744は、L個(Lは、1以上の整数である。)のカテゴリのそれぞれのスコアにより構成されるL次元の実数ベクトルを出力する。各スコアは、例えば、各スコアに対応するカテゴリが正解である確率を示す。これにより、入力されたN次元の実数ベクトルが、L次元の実数ベクトルに変換される。
【0225】
例えば、L=3である場合、カテゴリ推論モデル744は、(0.8、0.1、0.1)のようなL次元の実数ベクトルを出力する。この場合、例えば、入力された教師データにより示される属性を有するユーザ20が1番目のカテゴリに属するコンテンツに対して特定の行動を実行する確率が0.8であり、2番目のカテゴリに属するコンテンツに対する上記の確率が0.1であり、3番目のカテゴリに属するコンテンツに対する上記の確率が0.1であることを示す。
【0226】
上述されたとおり、本実施形態においては、カテゴリ推論モデル744の出力を評価するための損失関数LAを用いて、グループ推論モデル742のパラメータと、カテゴリ推論モデル744のパラメータとが調整される。具体的には、まず、カテゴリ推論モデル744が出力したL次元の実数ベクトルに対して、例えば、教師データに含まれるカテゴリごとの開封率を目的変数とし、損失関数LAが最適化されることにより、カテゴリ推論モデル744が出力するカテゴリごとのスコア又は確率が上記の目的変数に近づくように、損失関数LAが定義される。
【0227】
例えば、カテゴリ推論モデル744の学習段階において、カテゴリ推論モデル744が(0.7、0.2、0.1)と出力したときに、教師データに含まれるカテゴリごとの行動確率1460の値が(0.8、0.1、0.1)であった場合、1番目のカテゴリのスコアを0.8に近づけるように損失関数LAが定義される。グループ学習部1342及びカテゴリ学習部1344は、協働して、損失関数LAを最適化するべく、グループ推論モデル742のパラメータ及びカテゴリ推論モデル744のパラメータを調整する。
【0228】
(コンテンツ推論モデル746の学習)
次に、カテゴリ推論モデル744の出力が、推奨候補抽出部1222に入力される。推奨候補抽出部1222は、カテゴリ推論モデル744の出力に基づいて、推奨候補となる1以上のコンテンツの種類を出力する。例えば、推奨候補抽出部1222は、例えば、カテゴリ推論モデル744が出力したL次元の実数ベクトルを解析して、スコアが予め定められた第2条件を満たす1以上のカテゴリを抽出する。次に、推奨候補抽出部1222は、1以上のカテゴリのそれぞれに属する1以上のコンテンツのコンテンツIDを、上述された推奨候補として出力する。コンテンツIDは、コンテンツの種類を示す情報の一例であってよい。
【0229】
次に、推奨候補抽出部1222が出力した1以上のコンテンツIDと、教師データに含まれるユーザの属性440とが、コンテンツ推論モデル746に入力される。上述されたとおり、ユーザの属性440は、例えば、M個(Mは、1以上の整数である。)の属性のそれぞれを示す値により構成されるM次元の実数ベクトルである。推奨候補抽出部1222の出力は、例えば、T個(Tは、1以上の整数である。)のコンテンツIDのそれぞれを示す値により構成されるT次元の実数ベクトルであってよい。
【0230】
コンテンツ推論モデル746は、T個のコンテンツIDのそれぞれのスコアにより構成されるT次元の実数ベクトルを導出する。各スコアは、例えば、各スコアに対応するコンテンツIDが正解である確率を示す。コンテンツ推論モデル746は、例えば、スコアが最も良好なコンテンツIDを、推奨種目として出力する。
【0231】
上述されたとおり、本実施形態においては、カテゴリ推論モデル744の出力を評価するための損失関数LAと、コンテンツ推論モデル746の出力を評価するための損失関数LBとが結合された関数を用いて、コンテンツ推論モデル746のパラメータが調整される。損失関数LBは、例えば、正例である教師データに含まれるコンテンツの種類634がコンテンツ推論モデル746の出力に含まれる場合の誤差が、正例である教師データに含まれるコンテンツの種類634がコンテンツ推論モデル746の出力に含まれない場合の誤差よりも小さくなるように設計される。
【0232】
例えば、教師データが正例である場合において、コンテンツ推論モデル746が出力したコンテンツIDと、教師データに含まれるコンテンツの種類634とが一致しないとき、コンテンツ学習部1346は、コンテンツ推論モデル746が出力したコンテンツIDのスコアが小さくなるように、コンテンツ推論モデル746のパラメータを調整する。例えば、教師データが負例である場合において、コンテンツ推論モデル746が出力したコンテンツIDと、教師データに含まれるコンテンツの種類634とが一致するとき、コンテンツ学習部1346は、コンテンツ推論モデル746が出力したコンテンツIDのスコアが小さくなるように、コンテンツ推論モデル746のパラメータを調整する。
【0233】
モデル生成部148は、全ての教師データについて上記の処理を実行する。グループ学習部1342及びカテゴリ学習部1344は、例えば、全ての教師データにおける損失関数LAの値の総和がより小さくなるように、グループ推論モデル742及びカテゴリ推論モデル744のパラメータを調整する。これにより、学習済みのグループ推論モデル742及びカテゴリ推論モデル744が生成される。同様に、コンテンツ学習部1346は、例えば、全ての教師データにおける損失関数LA及び損失関数LBが結合された関数(例えば、損失関数LA及び損失関数LBの線形和である)の値の総和がより小さくなるように、コンテンツ推論モデル746のパラメータを調整する。これにより、学習済みのコンテンツ推論モデル746が生成される。
【0234】
なお、損失関数を用いて推論モデルのパラメータを調整する手順は、上記の手順に限定されない。公知の任意の調整手順が採用され得る。
【0235】
(別実施形態の一例)
本実施形態においては、ラベル1550により正例であることが示された教師データを用いた機械学習により、コンテンツ推論モデル746が生成される場合を例として、コンテンツ推論モデル746の学習処理の詳細が説明された。しかしながら、コンテンツ推論モデル746の学習処理は、本実施形態に限定されない。他の実施形態において、コンテンツ推論モデル746は、ラベル1550により正例であることが示された教師データと、ラベル1550により負例であることが示された教師データとの両方を用いた機械学習により生成される。
【0236】
図18は、本発明の複数の態様が全体的又は部分的に具現化されてよいコンピュータ3000の一例を示す。広告配信システム100の少なくとも一部は、コンピュータ3000により実現されてよい。例えば、配信サーバ120の少なくとも一部が、コンピュータ3000により実現される。例えば、推奨サーバ140の少なくとも一部が、コンピュータ3000により実現される。通信端末22の少なくとも一部が、コンピュータ3000により実現されてもよい。
【0237】
コンピュータ3000にインストールされたプログラムは、コンピュータ3000に、本発明の実施形態に係る装置に関連付けられるオペレーション又は当該装置の1又は複数の「部」として機能させ、又は当該オペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ3000に、本発明の実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ3000に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、CPU3012によって実行されてよい。
【0238】
本実施形態によるコンピュータ3000は、CPU3012、RAM3014、グラフィックコントローラ3016、及びディスプレイデバイス3018を含み、それらはホストコントローラ3010によって相互に接続されている。コンピュータ3000はまた、通信インターフェース3022、ハードディスクドライブ3024、DVD-ROMドライブ3026、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ3020を介してホストコントローラ3010に接続されている。コンピュータはまた、ROM3030及びキーボード3042のようなレガシの入出力ユニットを含み、それらは入出力チップ3040を介して入出力コントローラ3020に接続されている。
【0239】
CPU3012は、ROM3030及びRAM3014内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ3016は、RAM3014内に提供されるフレームバッファ等又はそれ自体の中に、CPU3012によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス3018上に表示されるようにする。
【0240】
通信インターフェース3022は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ3024は、コンピュータ3000内のCPU3012によって使用されるプログラム及びデータを格納する。DVD-ROMドライブ3026は、プログラム又はデータをDVD-ROM3001から読み取り、ハードディスクドライブ3024にRAM3014を介してプログラム又はデータを提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
【0241】
ROM3030はその中に、アクティブ化時にコンピュータ3000によって実行されるブートプログラム等、及び/又はコンピュータ3000のハードウェアに依存するプログラムを格納する。入出力チップ3040はまた、様々な入出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ3020に接続してよい。
【0242】
プログラムが、DVD-ROM3001又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもあるハードディスクドライブ3024、RAM3014、又はROM3030にインストールされ、CPU3012によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ3000に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ3000の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
【0243】
例えば、通信がコンピュータ3000及び外部デバイス間で実行される場合、CPU3012は、RAM3014にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インターフェース3022に対し、通信処理を命令してよい。通信インターフェース3022は、CPU3012の制御の下、RAM3014、ハードディスクドライブ3024、DVD-ROM3001、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【0244】
また、CPU3012は、ハードディスクドライブ3024、DVD-ROMドライブ3026(DVD-ROM3001)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM3014に読み取られるようにし、RAM3014上のデータに対し様々なタイプの処理を実行してよい。CPU3012は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【0245】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU3012は、RAM3014から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM3014に対しライトバックする。また、CPU3012は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU3012は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0246】
上で説明したプログラム又はソフトウェアモジュールは、コンピュータ3000上又はコンピュータ3000近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それにより、上記のプログラムを、ネットワークを介してコンピュータ3000に提供する。
【0247】
上記実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表わしてよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。
【0248】
コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0249】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでよい。
【0250】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0251】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。また、技術的に矛盾しない範囲において、特定の実施形態について説明した事項を、他の実施形態に適用することができる。また、各構成要素は、名称が同一で、参照符号が異なる他の構成要素と同様の特徴を有してもよい。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0252】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【0253】
例えば、本願明細書には下記の技術的事項が開示されている。
(項目1)
情報提供の対象となる対象者の属性に基づいて、複数の種類の告知情報のうち、上記対象者への提供が推奨される告知情報である1以上の推奨情報のそれぞれの種類を決定する情報処理装置であって、
上記対象者の属性を示す属性情報を取得する属性情報取得部と、
上記属性情報により示される上記対象者の上記属性と、上記複数の種類の告知情報が階層的に分類された分類構造とに基づいて、上記1以上の推奨情報のそれぞれの上記種類を決定する推奨情報決定部と、
を備え、
上記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
上記複数の下位層のそれぞれは、上記少なくとも1つの上位層の何れか1つに属し、
上記複数の種類の告知情報のそれぞれは、上記複数の下位層の何れか1つに属し、
上記推奨情報決定部は、
上記属性情報により示される上記対象者の上記属性に基づいて、上記少なくとも1つの上位層のうち、上記1以上の推奨情報のそれぞれが属する1以上の上位層を出力する上位層出力部と、
上記上位層出力部の出力結果に基づいて、上記複数の下位層のうち、上記1以上の推奨情報のそれぞれが属する1以上の下位層を出力する下位層出力部と、
を有する、
情報処理装置。
(項目2)
上記上位層出力部は、
上記属性情報により示される上記対象者の上記属性を、学習済みの機械学習モデルに入力し、
上記機械学習モデルから、上記1以上の推奨情報のそれぞれが属する上記1以上の上位層に関する推論結果に対応する出力を導出する、
項目1に記載の情報処理装置。
(項目3)
上記上位層出力部は、
(a)(i)上記属性情報により示される上記対象者の上記属性を、学習済みの機械学習モデルである第1学習モデルに入力し、(ii)上記第1学習モデルから、複数のグループのうち上記対象者が属する1以上のグループに関する推論結果に対応する第1出力を導出する第1導出部と、
(b)(i)上記第1出力により示される少なくとも1つのグループを、学習済みの機械学習モデルである第2学習モデルに入力し、(ii)上記第2学習モデルから、上記1以上の推奨情報のそれぞれが属する上記1以上の上位層に関する推論結果に対応する第2出力を導出する第2導出部と、
を有する、
項目1に記載の情報処理装置。
(項目4)
上記第1導出部は、上記第1学習モデルの推論結果により示される上記1以上のグループのうち、予め定められた第1条件を満足するグループを上記少なくとも1つのグループとして決定する、
項目3に記載の情報処理装置。
(項目5)
上記下位層出力部は、
(c)(i)上記上位層出力部が出力した上記1以上の上位層の少なくとも1つ、又は、上記少なくとも1つの上位層に属する告知情報の種類と、上記属性情報により示される上記対象者の上記属性とを、学習済みの機械学習モデルである第3学習モデルに入力し、(ii)上記第3学習モデルから、上記1以上の推奨情報のそれぞれが属する1以上の下位層に関する推論結果に対応する第3出力を導出する第3導出部、
を有する、
項目3に記載の情報処理装置。
(項目6)
上記第2導出部は、上記第2学習モデルの推論結果により示される上記1以上の上位層のうち、予め定められた第2条件を満足する上位層を、上記少なくとも1つの上位層として決定する、
項目5に記載の情報処理装置。
(項目7)
上記第3学習モデルは、(i)過去に配信された告知情報を受け取った受領者の属性と、(ii)当該過去に配信された告知情報に対する当該受領者の行動履歴とを学習データとして機械学習された機械学習モデルである、
項目5に記載の情報処理装置。
(項目8)
上記第3学習モデルは、上記第2学習モデルの出力を評価するための損失関数と、上記第3学習モデルの出力を評価するための損失関数とを用いて機械学習された機械学習モデルである、
項目5に記載の情報処理装置。
(項目9)
上記下位層出力部は、
(c)(i)上記上位層出力部が出力した上記1以上の上位層の少なくとも1つ、又は、上記少なくとも1つの上位層に属する告知情報の種類と、上記属性情報により示される上記対象者の上記属性とを、学習済みの機械学習モデルである第3学習モデルに入力し、(ii)上記第3学習モデルから、上記1以上の推奨情報のそれぞれが属する1以上の下位層に関する推論結果に対応する第3出力を導出する第3導出部、
を有する、
項目1に記載の情報処理装置。
(項目10)
学習済みの機械学習モデルを生成するモデル生成装置であって、
複数の学習データを取得する学習データ取得部と、
上記複数の学習データを用いて、(a)(i)情報提供の対象となる対象者の属性と、(ii)上記対象者に提供可能な情報である複数の告知情報に含まれる1以上の告知情報のそれぞれの種類、又は、上記複数の告知情報が階層的に分類された分類構造における上記1以上の告知情報よりも上位の区分とを入力とし、(b)入力された上記1以上の告知情報又は入力された上記上位の区分に含まれる1以上の告知情報のうち、少なくとも1つの告知情報のそれぞれの種類に関する値を出力とする学習モデルを生成する学習モデル生成部と、
を備え、
上記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
上記複数の下位層のそれぞれは、上記少なくとも1つの上位層の何れか1つに属し、
上記複数の種類の告知情報のそれぞれは、上記複数の下位層の何れか1つに属し、
上記複数の学習データのそれぞれは、
(i)過去に配信された告知情報を受け取った受領者の属性と、
(ii)当該過去に配信された告知情報の種類、又は、当該過去に配信された告知情報に対応する上位層若しくは下位層と、
(iii)当該過去に配信された告知情報に対する当該受領者の行動履歴と
を含む、
モデル生成装置。
(項目11)
情報提供の対象となる対象者の属性、及び、上記対象者に提供可能な情報である複数の告知情報が階層的に分類された分類構造に基づいて、上記複数の告知情報の中から少なくとも1つの告知情報を選択するための情報処理装置に用いられる、学習済みの機械学習モデルを生成するモデル生成装置であって、
上記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
上記複数の下位層のそれぞれは、上記少なくとも1つの上位層の何れか1つに属し、
上記複数の種類の告知情報のそれぞれは、上記複数の下位層の何れか1つに属し、
上記モデル生成装置は、
複数の学習データを取得する学習データ取得部と、
上記複数の学習データを用いて、学習モデルを生成する学習モデル生成部と、
を備え、
上記学習モデルは、
上記対象者の属性に基づいて決定される上記対象者が属する1以上のグループから、上記少なくとも1つの告知情報のそれぞれが属する1以上の上位層を推論するための第2学習モデルと、
上記対象者の属性と、上記第2学習モデルが推論した上記1以上の上位層又は当該1以上の上位層に属する告知情報の種類とから、上記少なくとも1つの告知情報のそれぞれの種類を推論するための第3学習モデルと、
を含み、
上記学習モデル生成部は、上記第2学習モデルの出力を評価するための損失関数と、上記第3学習モデルの出力を評価するための損失関数とを用いて、上記第3学習モデルのパラメータを調整する、
モデル生成装置。
(項目12)
上記学習モデルは、
上記受領者の属性から、複数のグループのうち上記受領者が属する1以上のグループを推論するための第1学習モデルをさらに備え、
上記第2学習モデルは、第1学習モデルが推論した上記1以上のグループから、上記少なくとも1つの告知情報のそれぞれが属する1以上の上位層を推論し、
複数の学習データは、
上記第1学習モデル及び上記第2学習モデルの学習に用いられる第1学習データと、
上記第1学習データとは異なる項目により構成される学習データであって、上記第3学習モデルの学習に用いられる第2学習データと、
を含む、
項目11に記載のモデル生成装置。
(項目13)
項目1から項目9までの何れか一項に記載の情報処理装置と、
項目10から項目12までの何れか一項に記載のモデル生成装置と、
を備える、情報処理システム。
(項目14)
項目1から項目9までの何れか一項に記載の情報処理装置と、
上記対象者に告知情報を配信する情報配信装置と、
を備え、
上記情報配信装置は、
上記情報処理装置が決定した上記1以上の推奨情報のそれぞれの種類に基づいて、上記対象者に配信される告知情報である配信情報を生成する情報生成部、
を有する、
情報配信システム。
(項目15)
複数の種類の告知情報のうち、情報提供の対象となる対象者への提供が推奨される告知情報である1以上の推奨情報のそれぞれの種類を決定する情報処理装置に、上記対象者の属性を特定するための情報である属性特定情報を送信する特定情報送信部と、
上記情報処理装置から、上記属性特定情報に対応する上記対象者への提供が推奨される上記1以上の推奨情報のそれぞれの種類を示す情報である推奨種別情報を取得する種別情報取得部と、
上記推奨種別情報に基づいて、上記対象者に配信される告知情報である配信情報を生成する情報生成部と、
を備える、情報配信装置。
(項目16)
上記情報処理装置は、
上記属性特定情報に基づいて、上記対象者の属性を示す属性情報を取得する属性情報取得部と、
上記属性情報により示される上記対象者の上記属性、及び、上記複数の種類の告知情報が階層的に分類された分類構造に基づいて、上記1以上の推奨情報のそれぞれの上記種類を決定する推奨情報決定部と、
を備え、
上記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
上記複数の下位層のそれぞれは、上記少なくとも1つの上位層の何れか1つに属し、
上記複数の種類の告知情報のそれぞれは、上記複数の下位層の何れか1つに属し、
上記推奨情報決定部は、
上記属性情報により示される上記対象者の上記属性に基づいて、上記少なくとも1つの上位層のうち、上記1以上の推奨情報のそれぞれが属する1以上の上位層を出力する上位層出力部と、
上記上位層出力部の出力結果に基づいて、上記複数の下位層のうち、上記1以上の推奨情報のそれぞれが属する1以上の下位層を出力する下位層出力部と、
を有する、
項目15に記載の情報配信装置。
(項目17)
コンピュータを、項目1から項目9までの何れか一項に記載の情報処理装置として機能させるためのプログラム。
(項目18)
学習済みの機械学習モデルを生成するための方法であって、
複数の学習データを取得する学習データ取得段階と、
上記複数の学習データを用いて、(a)(i)情報提供の対象となる対象者の属性と、(ii)上記対象者に提供可能な情報である複数の告知情報に含まれる1以上の告知情報のそれぞれの種類、又は、上記複数の告知情報が階層的に分類された分類構造における上記1以上の告知情報よりも上位の区分とを入力とし、(b)入力された上記1以上の告知情報のうち、少なくとも1つの告知情報のそれぞれの種類に関する値を出力とする学習モデルを生成する学習モデル生成段階と、
を有し、
上記分類構造は、少なくとも1つの上位層と、複数の下位層とを備え、
上記複数の下位層のそれぞれは、上記少なくとも1つの上位層の何れか1つに属し、
上記複数の種類の告知情報のそれぞれは、上記複数の下位層の何れか1つに属し、
上記複数の学習データのそれぞれは、
(i)過去に配信された告知情報を受け取った受領者の属性と、
(ii)当該告知情報に対する当該受領者の行動履歴と、
を含む、
機械学習モデルを生成するための方法。
【符号の説明】
【0254】
10 通信ネットワーク
20 ユーザ
22 通信端末
100 広告配信システム
120 配信サーバ
122 データ格納部
124 配信情報生成部
126 配信制御部
140 推奨サーバ
142 データ格納部
144 推奨部
146 行動情報取得部
148 モデル生成部
222 通信部
224 入力部
226 出力部
240 制御部
322 ユーザ情報格納部
324 コンテンツ情報格納部
342 推奨要求送信部
344 広告データ生成部
400 ユーザデータベース
420 ユーザID
430 連絡先
440 属性
500 コンテンツデータベース
520 コンテンツID
530 コンテンツの種類
540 コンテンツの内容
600 分類構造データベース
620 コンテンツID
630 分類構造
632 カテゴリ
634 種類
722 ユーザ情報格納部
724 コンテンツ情報格納部
726 推奨履歴格納部
728 推論過程格納部
740 推論モデル格納部
742 グループ推論モデル
744 カテゴリ推論モデル
746 コンテンツ推論モデル
800 推奨履歴データベース
820 配信ID
830 配信履歴
832 配信日時
834 ユーザID
836 コンテンツID
840 行動履歴
842 有無
844 有無
846 有無
900 推論過程データベース
920 推奨要求ID
930 配信ID
940 出力履歴
942 推論結果
944 推論結果
946 推論結果
1022 属性抽出部
1024 カテゴリ推奨部
1026 コンテンツ推奨部
1122 グループ導出部
1124 カテゴリ導出部
1222 推奨候補抽出部
1224 コンテンツ導出部
1320 学習データ生成部
1340 学習部
1342 グループ学習部
1344 カテゴリ学習部
1346 コンテンツ学習部
1422 データセット
1424 データセット
1430 学習用データセット
1440 行動確率
1450 ラベル
1460 行動確率
1522 データセット
1530 学習用データセット
1550 ラベル
1630 学習用データセット
3000 コンピュータ
3001 DVD-ROM
3010 ホストコントローラ
3012 CPU
3014 RAM
3016 グラフィックコントローラ
3018 ディスプレイデバイス
3020 入出力コントローラ
3022 通信インターフェース
3024 ハードディスクドライブ
3026 DVD-ROMドライブ
3030 ROM
3040 入出力チップ
3042 キーボード