IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 楽天株式会社の特許一覧

特開2024-56888情報処理装置、情報処理方法、およびプログラム
<>
  • 特開-情報処理装置、情報処理方法、およびプログラム 図1
  • 特開-情報処理装置、情報処理方法、およびプログラム 図2
  • 特開-情報処理装置、情報処理方法、およびプログラム 図3
  • 特開-情報処理装置、情報処理方法、およびプログラム 図4
  • 特開-情報処理装置、情報処理方法、およびプログラム 図5
  • 特開-情報処理装置、情報処理方法、およびプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024056888
(43)【公開日】2024-04-23
(54)【発明の名称】情報処理装置、情報処理方法、およびプログラム
(51)【国際特許分類】
   G06Q 30/0202 20230101AFI20240416BHJP
【FI】
G06Q30/0202 318
【審査請求】有
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2024020809
(22)【出願日】2024-02-15
(62)【分割の表示】P 2023501077の分割
【原出願日】2022-02-14
(71)【出願人】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】100109380
【弁理士】
【氏名又は名称】小西 恵
(74)【代理人】
【識別番号】100109036
【弁理士】
【氏名又は名称】永岡 重幸
(72)【発明者】
【氏名】石川 詩苑
(57)【要約】      (修正有)
【課題】レコメンデーションの対象となるユーザの観点が考慮されておらず、コールドスタート問題による影響が十分に低減されないという課題を解決する情報処理装置を提供する。
【解決手段】情報処理装置により実行される処理は、対象ユーザを特定し、対象ユーザを含む複数のユーザのユーザ特徴を取得し、対象のユーザと他のユーザとの類似度を算出する。また、複数のコンテンツに対するコンテンツ特長を取得し、複数コンテンツ間の類似度を算出する。そして、算出した各類似度に基づいて、対象ユーザに適した広告を決定し、決定した広告を対象ユーザへ提供する。
【選択図】図5
【特許請求の範囲】
【請求項1】
対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度を取得する取得手段と、
前記コンテンツ間類似度に基づいて、対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定する推定手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記取得手段は、前記対象のコンテンツと前記1以上の他のコンテンツの特徴を用いて、前記コンテンツ間類似度を取得することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記推定手段は、前記対象のユーザによる前記他のコンテンツに対する実行処理により得られた第1の報酬を用いて、前記事前分布を推定することを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記第1の報酬は、時間の経過による報酬の割引により、前記対象のユーザによる前記他のコンテンツに対する過去の実行処理より最近の実行処理により得られた報酬が高くなるように構成されることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記推定手段は、他のユーザによる前記対象のコンテンツに対する実行処理により得られた第2の報酬を用いて、前記事前分布を推定することを特徴とする請求項1から4のいずれか1項に記載の情報処理装置。
【請求項6】
前記第2の報酬は、時間の経過による報酬の割引により、前記他のユーザによる前記対象のコンテンツに対する過去の実行処理より最近の実行処理により得られた報酬が高くなるように構成されることを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記コンテンツは、有形または無形の商品またはサービスに関する広告であり、前記実行処理は、広告の表示処理であり、前記期待報酬に係る報酬は、前記広告に対するクリックの有無を示すことを特徴とする請求項1から6のいずれか1項に記載の情報処理装置。
【請求項8】
複数のコンテンツ間の類似度を取得する第1取得手段と、
前記複数のコンテンツ間の類似度を用いて、前記複数のコンテンツ間と複数のユーザ間において報酬を転移させることにより、前記複数のコンテンツの各コンテンツに対する期待報酬を取得する第2取得手段と、
を有することを特徴とする情報処理装置。
【請求項9】
前記複数のコンテンツのそれぞれは、有形または無形の商品またはサービスに関する広告であることを特徴とする請求項8に記載の情報処理装置。
【請求項10】
情報処理装置によって実行される情報処理方法であって、
対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度を取得する取得工程と、
前記コンテンツ間類似度に基づいて、対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定する推定工程と、
を有することを特徴とする情報処理方法。
【請求項11】
情報処理装置によって実行される情報処理方法であって、
複数のコンテンツ間の類似度を取得する第1取得工程と、
前記複数のコンテンツ間の類似度を用いて、前記複数のコンテンツ間と複数のユーザ間において報酬を転移させることにより、前記複数のコンテンツの各コンテンツに対する期待報酬を取得する第2取得工程と、
を有することを特徴とする情報処理装置。
【請求項12】
情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、
対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度を取得する取得処理と、
前記コンテンツ間類似度に基づいて、対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定する推定処理と、を含む処理を実行させるためのものである、
情報処理プログラム。
【請求項13】
情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、
複数のコンテンツ間の類似度を取得する第1取得処理と、 前記複数のコンテンツ間の類似度を用いて、前記複数のコンテンツ間と複数のユーザ間において報酬を転移させることにより、前記複数のコンテンツの各コンテンツに対する期待報酬を取得する第2取得処理と、を含む処理を実行させるためのものである、
情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、種々のアイテムをレコメンドするレコメンデーションシステムに応用可能な強化学習の技術に関する。
【背景技術】
【0002】
機械学習の適用分野として、種々のアイテムをレコメンドするレコメンデーションシステムが知られている。従来、このようなシステムでは、レコメンデーション効果を高めるために、アイテムの取引履歴などを基にユーザ間の類似性を判定することで、一方のユーザが購買したアイテムを、当該ユーザに類似する他のユーザに適したアイテムとして特定する協調フィルタリングを用いる手法が活用されている。しかしながら、当該手法は、取引履歴などの履歴情報が乏しい場合に最適化が困難となるコールドスタート問題に直面するという課題がある。
【0003】
コールドスタート問題による影響を低減させるために、モデル間で知識を転移させる手法が、例えば、非特許文献1において開示されている。レコメンデーションのためのモデルは、特定のドメインに特化し、各モデルは高いに独立していることが一般的であったが、当該文献には、ドメイン間の類似性に基づいて知識を転移させるアルゴリズムが開示されている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Liu, B., Wei, Y., Zhang, Y., Yan, Z., Yang, Q.: Transferable contextual bandit for cross-domain recommendation. In: Proceedings of the AAAI Conference on Artificial Intelligence. vol. 32 (2018). URL:https://ojs.aaai.org/index.php/AAAI/article/view/11699
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記文献に記載の手法では、レコメンデーションの対象となるユーザの観点が考慮されておらず、コールドスタート問題による影響が十分に低減されないという課題があった。
【0006】
本発明は上記課題に鑑みてなされたものであり、機械学習におけるコールドスタート問題による影響を低減するための技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明による情報処理装置の一態様は、対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度と、対象のユーザと1以上の他のユーザとの類似度であるユーザ間類似度と、を取得する取得手段と、前記コンテンツ間類似度と前記ユーザ間類似度とに基づいて、前記対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定する推定手段と、前記事前分布を用いて、前記期待報酬の事後分布を導出する導出手段と、を有する。
【0008】
前記情報処理装置において、前記取得手段は、前記対象のコンテンツと前記1以上の他のコンテンツの特徴を用いて、前記コンテンツ間類似度を取得し、前記対象のユーザと前記1以上の他のユーザの特徴を用いて前記ユーザ間類似度を取得しうる。
【0009】
前記情報処理装置において、前記推定手段は、前記対象のユーザによる前記他のコンテンツに対する実行処理により得られた第1の報酬を用いて、前記事前分布を推定しうる。
【0010】
前記第1の報酬は、時間の経過による報酬の割引により、前記対象のユーザによる前記他のコンテンツに対する過去の実行処理より最近の実行処理により得られた報酬が高くなるように構成されうる。
【0011】
前記情報処理装置において、前記推定手段は、前記他のユーザによる前記対象のコンテンツに対する実行処理により得られた第2の報酬を用いて、前記事前分布を推定しうる。
【0012】
前記第2の報酬は、時間の経過による報酬の割引により、前記他のユーザによる前記対象のコンテンツに対する過去の実行処理より最近の実行処理により得られた報酬が高くなるように構成されうる。
【0013】
前記情報処理装置において、前記導出手段により導出された前記期待報酬の事後分布に基づいて、前記対象のコンテンツを前記対象のユーザに提供するかを判定する判定手段をさらに有しうる。
【0014】
前記コンテンツは、有形または無形の商品またはサービスに関する広告であり、前記実行処理は、広告の表示処理であり、前記報酬は、前記広告に対するクリックの有無を示しうる。
【0015】
上記課題を解決するために、本発明による情報処理装置の別の態様は、複数のコンテンツ間の類似度と、複数のユーザ間の類似度を取得する取得手段と、前記複数のコンテンツ間の類似度と前記複数のユーザ間の類似度を用いて、前記複数のコンテンツのうち、期待報酬が最大のコンテンツを、前記複数のユーザのうちの1以上のユーザに適したコンテンツとして決定する決定手段と、を有する。
【0016】
上記課題を解決するために、本発明による情報処理方法の一態様は、対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度と、対象のユーザと1以上の他のユーザとの類似度であるユーザ間類似度と、を取得する取得工程と、前記コンテンツ間類似度と前記ユーザ間類似度とに基づいて、前記対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定する推定工程と、前記事前分布を用いて、前記期待報酬の事後分布を導出する導出工程と、を有する。
【0017】
上記課題を解決するために、本発明によるプログラムの一態様は、情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度と、対象のユーザと1以上の他のユーザとの類似度であるユーザ間類似度と、を取得する取得処理と、前記コンテンツ間類似度と前記ユーザ間類似度とに基づいて、前記対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定する推定処理と、前記事前分布を用いて、前記期待報酬の事後分布を導出する導出処理と、を含む処理を実行させるためのものである。
【0018】
上記課題を解決するために、本発明による情報処理方法の別の態様は、複数のコンテンツ間の類似度と、複数のユーザ間の類似度を取得する取得工程と、前記複数のコンテンツ間の類似度と前記複数のユーザ間の類似度を用いて、前記複数のコンテンツのうち、期待報酬が最大のコンテンツを、前記複数のユーザのうちの1以上のユーザに適したコンテンツとして決定する決定工程と、を有する。
【0019】
上記課題を解決するために、本発明によるプログラムの別の態様は、情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、複数のコンテンツ間の類似度と、複数のユーザ間の類似度を取得する取得処理と、前記複数のコンテンツ間の類似度と前記複数のユーザ間の類似度を用いて、前記複数のコンテンツのうち、期待報酬が最大のコンテンツを、前記複数のユーザのうちの1以上のユーザに適したコンテンツとして決定する決定処理と、を含む処理を実行させるためのものである。
【0020】
上記課題を解決するために、本発明による学習モデルの一態様は、対象のコンテンツと1以上の他のコンテンツとの類似度であるコンテンツ間類似度と、対象のユーザと1以上の他のユーザとの類似度であるユーザ間類似度とに基づいて、前記対象のユーザによる前記対象のコンテンツに対する実行処理により得られる期待報酬の事前分布を推定し、前記事前分布を用いて、前記期待報酬の事後分布を導出するように構成される。
【発明の効果】
【0021】
本発明によれば、機械学習におけるコールドスタート問題による影響を低減することが可能となる。
【図面の簡単な説明】
【0022】
図1図1は、情報処理システムの構成例を示す。
図2図2は、情報処理装置10の機能構成例を示す。
図3図3は、実施形態による学習モデルのアルゴリズムを示す。
図4図4は、情報処理装置10とユーザ装置11のハードウェア構成例を示す。
図5図5は、情報処理装置10により実行される処理のフローチャートを示す。
図6図6は、実施形態による学習モデルを適用した適用例を示す。
【発明を実施するための形態】
【0023】
以下、添付図面を参照して、本発明を実施するための実施形態について詳細に説明する。以下に開示される構成要素のうち、同一機能を有するものには同一の符号を付し、その説明を省略する。なお、以下に開示される実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0024】
[情報処理システムの構成]
図1に、本実施形態による情報処理システムの構成例を示す。本情報処理システムは、その一例として、図1に示すように、情報処理装置10と、任意の複数のユーザ1~Mにより使用される複数のユーザ装置11-1~11-M(M>1)とを含んで構成される。なお、以下の説明において、特に説明がない限り、ユーザ装置11-1~11-Mをユーザ装置11と総称しうる。また、以下の説明において、ユーザ装置とユーザという語は同義に使用されうる。
【0025】
ユーザ装置11は、例えば、スマートフォンやタブレットといったデバイスであり、LTE(Long Term Evolution)等の公衆網や、無線LAN(Local Area Network)等の無線通信網を介して、情報処理装置10と通信可能に構成されている。ユーザ装置11は、液晶ディスプレイ等の表示部(表示面)を有し、ユーザ1~Nは、当該液晶ディスプレイに装備されたGUI(Graphic User Interface)により各種操作を行うことができる。当該操作は、指やスタイラス等によりタップ操作、スライド操作、スクロール操作等、画面に表示された画像等のコンテンツに対する各種の操作を含む。
なお、ユーザ装置11は、図1に示すような形態のデバイスに限らず、デスクトップ型のPC(Personal Computer)や、ノート型のPCといったデバイスであってもよい。その場合、ユーザ1~Mによる操作は、マウスやキーボードといった入力装置を用いて行われうる。また、ユーザ装置11は、表示面を別に備えてもよい。
【0026】
情報処理装置10は、有形または無形の商品やサービス(例えば、旅行商品)等のアイテムをレコメンドするためのコンテンツをユーザ装置11に提供し、ユーザ装置11は、ユーザ装置11の表示部に当該コンテンツを表示可能に構成される。本実施形態では、情報処理装置10は、コンテンツとして、各種アイテムに関する広告の画像(広告画像。以下、単に広告とも称する)をユーザ装置11に提供し、ユーザ装置11は、ユーザ装置11の表示部に当該広告を表示可能に構成される。情報処理装置10は、当該広告の提供のために、各種ウェブサイトを提供する。なお、各種ウェブサイトの運営は、情報処理装置10により行われてもよいし、不図示のサーバ装置により行われてもよい。各種ウェブサイトは、例えば、電子商取引サイトや、レストラン予約サイトや、ホテル予約サイト等を含むことができる。
【0027】
[情報処理装置10の機能構成]
情報処理装置10は、ユーザ装置11-1~11Mのユーザ1~Mのそれぞれの属性(属性を表す情報)を、ユーザ特徴として取得することができる。また、情報処理装置10は、提供する広告に関する複数の特徴を、広告特徴として取得することができる。情報処理装置10は、取得したユーザ特徴と広告特徴を用いて、後述する学習モデルのアルゴリズムを実行し、ユーザ装置11-1~11-Mのうちの任意の1つ以上のユーザ装置に適した広告を決定して、当該任意の1つ以上のユーザ装置に提供する。当該学習モデルと当該学習モデルを用いた処理については、後述する。
【0028】
本実施形態による情報処理装置10の機能構成の一例を図2に示す。本実施形態による情報処理装置10は、その機能構成の一例として、ユーザ特徴取得部101、コンテンツ特徴取得部102、パラメータ設定部103、推定部104、および提供部105を備える。
【0029】
ユーザ特徴取得部101は、ユーザ装置11-1~11-Mのユーザ1~Mのそれぞれの属性を、ユーザ特徴として取得する。当該ユーザ特徴は、性別、年齢、年収、学歴、居住地といった人口統計学的属性(デモグラフィック属性)や、趣味、趣向といった心理学的属性(サイコグラフィック属性)や、過去のインターネットでの検索履歴、閲覧履歴、購買履歴といった行動学的属性(ビヘイビオラル属性)や、特定のアプリケーションによる登録情報等の少なくとも一部を含みうる。
【0030】
コンテンツ特徴取得部102は、ユーザに提供するコンテンツ(本実施形態では広告)の属性を、コンテンツ特徴として取得する。本実施形態では、当該コンテンツは広告であり、当該コンテンツ特徴(広告特徴)は、広告の対象となるアイテム(有形または無形の商品やサービス(例えば、旅行商品)等)の属性、広告を構成する画像の特徴等を含みうる。
コンテンツ特徴取得部102は、過去にユーザに提供したコンテンツだけでなく、将来に提供予定のコンテンツのコンテンツ特徴も取得可能に構成される。
【0031】
パラメータ設定部103は、推定部104により実行される学習モデルのアルゴリズムで必要となる所定のパラメータを設定する。当該パラメータについては後述する。当該パラメータは、予め情報処理装置10に設定されていてもよいし、情報処理装置10の操作者により入力されてもよい。
【0032】
推定部104は、後述する本実施形態による学習モデルのアルゴリズムを実行し、コンテンツに対する実行処理から得られる期待報酬を推定し、任意のユーザに適したコンテンツを推定する。本実施形態では、推定部104は、当該学習モデルのアルゴリズムを実行し、広告の表示処理により得られる期待報酬を推定し、ユーザ装置11-1~11-Mのうちの任意の1つ以上のユーザ装置に表示するのに適した広告を決定する。また、推定部104は、任意のコンテンツに対して、当該コンテンツが任意のユーザに適しているかを判定することができる。
【0033】
提供部105は、推定部104により決定された広告を、ユーザ装置11に提供する。これにより、ユーザ装置11は、提供された広告を表示部に表示することが可能となる。
【0034】
[学習モデルのアルゴリズム]
次に、本実施形態による学習モデルのアルゴリズムについて説明する。本実施形態による学習モデルは、バンディットアルゴリズム(Bandit Algorithm)のためのモデルである。バンディットアルゴリズムは、強化学習(Reinforcement Learning)のアルゴリズムとして知られており、累積報酬を最大化することを目的としている。具体的には、バンディットアルゴリズムは、アームに対する活用(Exploitation)と探索(Exploration)のバランス(活用と探索の割合)を調節することにより、期待報酬を最大にするようにアームを引くことを目的としている。なお、強化学習の分野では、アームは、一般的にはアクションと呼ばれ、以下の説明においてもアクションという用語を用いる。
【0035】
本実施形態による学習モデルのアルゴリズムは、マルチドメインかつマルチユーザで知識(報酬)を転移させることを特徴とする。当該アルゴリズムでは、アクションとして広告の表示を用い、広告の表示に対する累積報酬を最大化することを目的とする。また、当該アルゴリズムにおいて、各ドメインは、有形または無形の商品やサービス(例えば、旅行商品)等のアイテムを扱うウェブサイトとする。例えば、電子商取引サイト、レストラン予約サイト、ホテル予約サイトはそれぞれ異なるドメインに対応する。
【0036】
広告は、映画や製品と異なり、新たな販売キャンペーンが開始されたときに作成され、キャンペーンが終了したときに削除されるコンテンツである。したがって、新たに作成された広告の比率は、新たに作成される映画や製品の比率に比べて高くなるため、広告の場合はコールドスタート問題が顕著となりうる。本実施形態では、コールドスタート問題による影響を低減するための学習モデルとして、バンディットアルゴリズムための方策の1つである、公知のトンプソンサンプリング方策を基にした新たな学習モデルを説明する。以下、数式を用いて、本実施形態による学習モデルのアルゴリズムを説明する。
【0037】
まず、N個の利用可能なソースを仮定する。各ソースは、広告を表示するウィジェット(widget)に対応する。ウィジェットは、端末装置(本実施形態では、図1における任意のユーザ装置11に対応)の表示部の画面上に小さく広告(例えば、バナー広告)を表示する機能を有するアプリケーションソフトである。本実施形態では、各ソースにより、複数の広告からなる広告のセットが表示されることを想定する。当該複数の広告は、一定時間ごとに切り替えて表示されるように構成されてもよいし、カルーセル機能を用いて表示されるように構成されてもよい。カルーセル機能は、1つの広告表示枠に対して、ユーザが主体的に操作することにより複数の広告の表示を切り替えることができる機能である。
【0038】
ここで、任意のソースsにおける広告のセット(ソースsにより表示可能な広告のセット)を、Aとする。また、M(M>0)ユーザの各ユーザは、それぞれd種類(d>0)の特徴(feature)を有し、Mユーザの特徴を表すセット(ユーザ特徴セット)を、Xとする。よって、Xは、M×dのサイズの行列で表される。また、ソースsにおいて、K個(K>0)の広告のそれぞれがd種類(d>0)の特徴を有し、K個の広告の特徴を表すセット(広告特徴セット)を、Yとする。よって、Yは、K×dのサイズの行列で表される。
【0039】
さらに、時間ステップtでのソースsにおけるユーザiを、ユーザi として示す。時間ステップtでのソースsにおけるユーザ特徴:
と、時間ステップtでのソースsにおける広告特徴:
を、観察する。
そして、ユーザは、時間ステップtでのソースsにおける広告:
を見て、それによる報酬(reward)
を観察する。当該報酬は、ユーザi が広告a をクリックしたかどうか(広告に対するクリックの有無)を示す、暗黙的な(implicit)報酬を表す。
よって、全体の観察は、
として示される。
なお、当該報酬は、広告をクリックし、かつ、コンバージョン(商品購入や資料請求といった最終成果)に至ったかを示す指標に対応するように構成されてもよい。
【0040】
本実施形態による学習モデルは、累積報酬
を最大化するときに表示する広告a を決定することを目的としている。ここで、Tは、時間ステップtが取りうる最大値である。累積報酬期待値の最大化は、ユーザiの総リグレットを最小化するものとして、式(1)のように表すことができる。
【数1】
ここで、rは、ユーザi に適した広告表示(すなわち、アクション)から得られる報酬である。
【0041】
本実施形態による学習モデルは、全てのソースsの観察:
から、広告を取り出すポリシーを学習するモデルである。また、本実施形態による学習モデルは、ソース間の接続を利用して、ソース間(すなわち、広告間)とユーザ間のそれぞれにおいて、知識を転移させる。これにより、当該ポリシーは、より一般化されたユーザの挙動(behavior)を認識することになる。本実施形態による学習モデルは、ソース間とユーザ間とで、知識としての報酬を転移させる。報酬の転移の度合い(degree)は、一方のオブジェクトの特徴と、対象(target)としての他方のオブジェクトの特徴との類似度に基づく。
【0042】
本実施形態では、ユーザ間の報酬の転移の度合い(すなわち、ユーザ間の類似度)は、コサイン類似度(cosine similarity)を利用して、式(2A)のように表される。
【数2A】
ここで、xとxはそれぞれ、ユーザiに対するユーザ特徴とユーザjに対するユーザ特徴を示す。前述したように、各ユーザはd種類の特徴を有することから、xは各種類の特徴を示してもよい。あるいは、xは、d種類の特徴から生成された特徴ベクトルであってもよい。xについても同様である。
【0043】
同様にして、広告間の報酬の移転の度合い(すなわち、広告間の類似度)は、式(2B)のように表される。
【数2B】
ここで、yとyはそれぞれ、広告iに対する広告特徴と広告jに対する広告特徴を示す。前述したように、各広告はd種類の特徴を有することから、yは各種類の特徴を示してもよい。あるいは、yは、d種類の特徴から生成された特徴ベクトルであってもよい。yについても同様である。
【0044】
なお、広告iと広告jは、同じドメインから選択されてもよいし、異なるドメインから取得されてもよい。前述のように、ドメインが、有形または無形の商品やサービス(例えば、旅行商品)等のアイテムを扱うウェブサイトである場合、広告iが電子商取引サイトにおける広告であって、広告jがレストラン予約サイトにおける広告であってもよい。
【0045】
現実世界のデータセットにおいて、特にユーザの数は膨大であり、ユーザの全てのペアの間の類似度を計算することは困難である。よって、実装時には、上記の類似度を効率的に得るために、公知の局所性鋭敏型ハッシュ(locality sensitive hashing)を利用してもよい。
【0046】
前述のように、本実施形態による学習モデルは、トンプソンサンプリング方策を基にしている。トンプソンサンプリング方策は、期待報酬を最大にするアームを引くために、事前分布を基に導出した、各ラウンドにおけるアームの事後分布から期待される複数のサンプルスコアのうち、最も高いスコアを有するアームを選択する手法である。ベルヌーイバンディットの場合、尤度関数は、ベルヌーイ分布によって定式化され、事前分布は、自然共役事前確率分布(natural conjugate prior)として、ベータ分布によって表される。
ベータ分布関数は、式(3)のように表すことができる。
【数3】
ここで、Γはガンマ関数を表する。本実施形態による学習モデルに照らすと、θは、広告kの表示(すなわち、アクション)により報酬がもたらされる確率であり、αとβはそれぞれ、広告kに対する正報酬と負報酬を表すパラメータである。
【0047】
オリジナルのトンプソンサンプリングでは、α=1かつβ=1という一様分布のケースを想定していたが、本実施形態による学習モデルでは、履歴データを利用して、事前分布を推定する。具体的には、前述のユーザと広告の類似度関数を利用する。これにより、事前分布のより良い推定を提供することを可能にする。
まず、時間ステップtでの対象のユーザiと対象の広告kに対する事前推定のための正報酬(α)と負報酬(β)を表すパラメータを、以下の式(4)のように定式化する。
【数4】
ここで、sil(t)は、割引を意識した(discount-aware)累積正報酬であり、式(5A)のように表される。
【数5A】
式(5A)において、silτは、時間τにおいて対象のユーザiと他の広告lに対する報酬が観察される場合に1であり、それ以外の場合は0である、バイナリ変数である。また、γは、割引率を示す。割引率γに(t-τ)の乗数が掛けられることにより、時間τが大きく時間tに近いほど、割引率は低くなる。すなわち、sil(t)は、ユーザの挙動による報酬の時間変化に対応し、ユーザによる過去の挙動より、時間tに近い時間の(すなわち、最近の)挙動が大きく反映される。
【0048】
同様に、fjk(t)は、fjkτと割引率γよる割引を意識した累積負報酬として(5B)式のように定義される。ここで、fjkτは、推奨(recommendation)の失敗の数を表し、他のユーザjが時間τにおいて対象の広告kを見ているが当該広告をクリックしなかった場合に、1になる。
【数5B】
【0049】
このように、対象のユーザiに対する対象の広告kに対する事前推定のための正報酬(α)と負報酬(β)を表すパラメータは、ユーザ間の類似度(対象のユーザと1以上の他のユーザとの類似度(ΣSuser))と広告間の類似度(対象の広告と1以上の他の広告間との類似度(ΣSad))によって推定することができる。
したがって、ユーザ間の類似度と広告間の類似度に基づいて、報酬を転移させる。また、ユーザの好みは時間とともに変化しうるものであるから、累積正報酬sil(t)に割引率γを導入し、ユーザの最近の挙動からの報酬に、高い値を与えることができる。本実施形態では、上記(4)、(5A)、(5B)式で示したように、対象のユーザiによる他の広告lに対する実行処理(広告表示)で得られた報酬と、他のユーザjによる対象の広告kに対する実行処理の報酬を、時間の経過によって割引き(あるいは逓減)する。そして、これらの割引き後の報酬を用いて事前分布が推定される。なお、割引率の設定はオプションであってもよい。
【0050】
事前分布の推定後に、当該事前分布を用いた事後分布を導出する。オリジナルのトンプソンサンプリング方策と同様に、事後分布をベータ分布によって定式化する。オリジナルのトンプソンサンプリング方策の場合、一様分布の事前分布を用いて、事後ベータ分布のパラメータは、α=s+1、β=f+1であった。
本実施形態では、式(4)の事前知識を用いて、事後ベータ分布のパラメータを式(6)のように定式化する。
【数6】
ここで、λ(s)とλ(f)は、事前知識の重要性を調整するハイパーパラメータであり、
である。
また、gは、ユーザ間と広告間で報酬を転移させた、グローバルな報酬の重要性を調整するハイパーパラメータである。
また、オリジナルのトンプソンサンプリング方策と同様に、s(t)とf(t)が、ユーザ間の報酬の平均として組み込まれている。これは、現実世界のケースでは、有効な類似するユーザがほとんど発生せず、ユーザと広告の相互作用(interaction)は、疎(sparse)であるからである。最後の項の「1」は、履歴的報酬が利用可能でなかった場合のエラーを避けるための擬似カウントである。
【0051】
このように、本実施形態による学習モデルのアルゴリズムは、オリジナルのトンプソンサンプリング方策をベースとして、ユーザ類似度とコンテンツの類似度を動的に用いて推論を行うことから、動的協調フィルタリングトンプソンサンプリング方策(Dynamic collaborative filtering Thompson sampling)と称することができる。
【0052】
図3に、本実施形態による学習モデルのアルゴリズム(ポリシー)をアルゴリズム1として示す。当該アルゴリズムは、情報処理装置10の推定部104により実行される。任意の対象ユーザiに対する図3のアルゴリズムの処理を順に説明する。ここでは、図3の各処理1~10を、S1~S10と示す。
【0053】
まず、ハイパーパラメータλとg、割引率γ、ユーザ間の類似度(Suser)、広告間の類似度(Sad)を入力する。また、過去の観察Oを入力する。その後、S1~S10の処理が行われる。
S1:時間ステップtが0~Tの間、
S2:時間ステップtでのソースsにおけるユーザiのユーザ特徴(ユーザのコンテキスト特徴)と、広告(アクション)のセットAと、それらの広告特徴(広告のコンテキスト特徴)のセットYを観察する
S3:Aに含まれる全ての広告k(k∈A)に対して、
S4:式(4)に従い、時間ステップtでのユーザiと広告kに対する事前推定のための正報酬(α)と負報酬(β)を表すパラメータを計算する
S5:式(6)に従い、事後ベータ分布の正報酬(α)と負報酬(β)を表すパラメータを計算する
S6:事後ベータ分布のパラメータαとβを用いたベータ分布から、θをサンプリングする
S7:S4~S6の処理のループの終了
S8:θの最大値を与える広告kの表示を行い、報酬rを観察する
S9:観察Oを追加
S10:S2~S9の処理のループの終了
【0054】
このように、ユーザの類似性と広告の類似性に基づいて複数のドメイン(本実施形態では複数のウェブサイト)間で報酬を転移させ、観察Oを繰り返すことにより、任意のユーザiに適した広告表示を継続して行うことが可能となる。また、当該転移の手法により、履歴情報が少ない新たな広告について報酬を評価することができ、コールドスタート問題による影響を低減させることが可能となる。
なお、前述の事前分布と事後分布のために用いる関数は、ベータ分布関数に限定されない。例えば、ガウス分布関数も用いることが可能である。
【0055】
[情報処理装置10のハードウェア構成]
図4は、本実施形態による情報処理装置10のハードウェア構成の一例を示すブロック図である。
本実施形態による情報処理装置10は、単一または複数の、あらゆるコンピュータ、モバイルデバイス、または他のいかなる処理プラットフォーム上にも実装することができる。
図4を参照して、情報処理装置10は、単一のコンピュータに実装される例が示されているが、本実施形態による情報処理装置10は、複数のコンピュータを含むコンピュータシステムに実装されてよい。複数のコンピュータは、有線または無線のネットワークにより相互通信可能に接続されてよい。
【0056】
図4に示すように、情報処理装置10は、CPU41と、ROM42と、RAM43と、HDD44と、入力部45と、表示部46と、通信I/F47と、システムバス48とを備えてよい。情報処理装置10はまた、外部メモリを備えてよい。
CPU(Central Processing Unit)41は、情報処理装置10における動作を統括的に制御するものであり、データ伝送路であるシステムバス48を介して、各構成部(42~47)を制御する。
【0057】
ROM(Read Only Memory)42は、CPU41が処理を実行するために必要な制御プログラム等を記憶する不揮発性メモリである。なお、当該プログラムは、HDD(Hard Disk Drive)44、SSD(Solid State Drive)等の不揮発性メモリや着脱可能な記憶媒体(不図示)等の外部メモリに記憶されていてもよい。
RAM(Random Access Memory)43は、揮発性メモリであり、CPU51の主メモリ、ワークエリア等として機能する。すなわち、CPU41は、処理の実行に際してROM42から必要なプログラム等をRAM43にロードし、当該プログラム等を実行することで各種の機能動作を実現する。
【0058】
HDD44は、例えば、CPU41がプログラムを用いた処理を行う際に必要な各種データや各種情報等を記憶している。また、HDD44には、例えば、CPU41がプログラム等を用いた処理を行うことにより得られた各種データや各種情報等が記憶される。
入力部45は、キーボードやマウス等のポインティングデバイスにより構成される。
表示部46は、液晶ディスプレイ(LCD)等のモニターにより構成される。表示部56は、入力部55と組み合わせて構成されることにより、GUI(Graphical User Interface)として機能してもよい。
【0059】
通信I/F47は、情報処理装置10と外部装置との通信を制御するインタフェースである。
通信I/F47は、ネットワークとのインタフェースを提供し、ネットワークを介して、外部装置との通信を実行する。通信I/F47を介して、外部装置との間で各種データや各種パラメータ等が送受信される。本実施形態では、通信I/F47は、イーサネット(登録商標)等の通信規格に準拠する有線LAN(Local Area Network)や専用線を介した通信を実行してよい。ただし、本実施形態で利用可能なネットワークはこれに限定されず、無線ネットワークで構成されてもよい。この無線ネットワークは、Bluetooth(登録商標)、ZigBee(登録商標)、UWB(Ultra Wide Band)等の無線PAN(Personal Area Network)を含む。また、Wi-Fi(Wireless Fidelity)(登録商標)等の無線LAN(Local Area Network)や、WiMAX(登録商標)等の無線MAN(Metropolitan Area Network)を含む。さらに、LTE/3G、4G、5G等の無線WAN(Wide Area Network)を含む。なお、ネットワークは、各機器を相互に通信可能に接続し、通信が可能であればよく、通信の規格、規模、構成は上記に限定されない。
【0060】
図4に示す情報処理装置10の各要素のうち少なくとも一部の機能は、CPU41がプログラムを実行することで実現することができる。ただし、図4に示す情報処理装置10の各要素のうち少なくとも一部の機能が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、CPU41の制御に基づいて動作する。
【0061】
[ユーザ装置11のハードウェア構成]
図1に示すユーザ装置11のハードウェア構成は、図4と同様でありうる。すなわち、ユーザ装置11は、CPU41と、ROM42と、RAM43と、HDD44と、入力部45と、表示部46と、通信I/F47と、システムバス48とを備えうる。ユーザ装置11は、情報処理装置10により提供された各種情報を、表示部46に表示し、GUI(入力部45と表示部46による構成)を介してユーザ1から受け付ける入力操作に対応する処理を行うことができる。
【0062】
[処理の流れ]
図5に、本実施形態による情報処理装置10により実行される処理のフローチャートを示す。図5に示す処理は、情報処理装置10のCPU41がROM42等に格納されたプログラムをRAM43にロードして実行することによって実現されうる。図5に示す処理を、図6に示す適用例に沿って説明する。図6は、図1に示した情報処理システムを参照した、本実施形態による学習モデルを適用した適用例を示す。
【0063】
S51において、ユーザ特徴取得部101は、広告提供の対象となるユーザ(対象ユーザ)を特定する。ユーザ特徴取得部101は、対象ユーザとして、すでに広告を提供していたユーザだけでなく、広告を提供していなかった新たなユーザも特定することができる。
図6の例では、ユーザ特徴取得部101は、ユーザ1~Mのうち、すでに広告を提供していたユーザiを対象ユーザとして特定する。
【0064】
S52において、ユーザ特徴取得部101は、対象ユーザを含む複数のユーザ(ユーザ1~M)のユーザ特徴を取得する。ユーザ特徴には、過去のインターネットでの検索履歴等、時間と共に変化しうる属性も含まれるため、ユーザ特徴取得部101は、定期的に、または任意のタイミングで、ユーザ特徴を取得してもよい。
【0065】
S53において、ユーザ特徴取得部101は、S52で取得したユーザ特徴を用いて、対象のユーザと、当該対象のユーザ以外の他のユーザ間との間の類似度(Suser)を算出する。S53の処理は、前述の式(2A)に関する処理に対応する。
【0066】
S54において、コンテンツ特徴取得部102は、コンテンツとしての広告の特徴を取得する。S54では、コンテンツ特徴取得部102は、複数のウェブサイトにおける複数の広告の特徴を取得する。また、コンテンツ特徴取得部102は、新たに作成され、まだあらゆるユーザに提供していない広告についての特徴を取得することができる。
図6の例では、コンテンツ特徴取得部102は、ドメインA(例えば、電子商取引サイト)における広告の特徴と、ドメインB(例えば、レストラン予約サイト)における広告の特徴を取得する。さらに、コンテンツ特徴取得部102は、新たに作成されてユーザに提供されていないドメインC(例えば、ホテル予約サイト)における広告の特徴を取得する。ドメインCにおける広告は新規な広告であり、ユーザに提供されていない。そのため、ドメインCの広告に関する履歴情報は蓄積されていない。
【0067】
S55において、コンテンツ特徴取得部102は、複数のコンテンツ間(本例では広告間)の類似度(Sad)を算出する。S55の処理は、前述の式(2B)に関する処理に対応する。
図6の例では、ドメインAにおける広告の特徴、ドメインBにおける広告の特徴、およびドメインCにおける広告の特徴に対して、あらゆる2つの組み合わせの広告の特徴の類似度を算出する。
なお、S51~S55の処理の順序は図5の順序に限定されない。
【0068】
S56において、推定部104は対象ユーザに適したコンテンツを推定により決定する。まず、推定部104は、アルゴリズム1を実行するために、パラメータ設定部103から、ハイパーパラメータλとg、割引率γを取得し、ユーザ特徴取得部101とコンテンツ特徴取得部102それぞれから、ユーザ間の類似度(Suser)、広告間の類似度(Sad)を取得する。続いて、推定部104は、対象ユーザをユーザiとして設定し、ユーザiに対するアルゴリズム1を実行する。これにより、推定部104は、対象ユーザに適する広告を決定する。
なお、推定部104は、S56の処理の対象となった各広告について、得られた期待報酬に基づき、対象ユーザに提供するか否かを判定してもよい。
【0069】
図6の例では、ユーザiは、ポイントを獲得するために、電子商取引サイト(ドメインA)上でポイント関連広告(広告61A、62A)をクリックすることに関心があった。最近、ユーザiが美味しい食べものを食べることに興味を持ち、ドメインA上でフード関連広告(広告63A)をクリックするようになった。このように、ユーザiは、時間と共に好みが変化しうる。このようなユーザiによる動的な挙動は、アルゴリズム1におけるsil(t)に反映される。すなわち、過去の挙動より最近の挙動に価値が置かれるように事前分布における正報酬(α)のパラメータが決定される。よって、ドメインA上でフード関連広告(広告63A)がクリックされていることから、推定部104は、広告61Aや広告62Aより、広告63Aに特徴がより類似する広告に、高い報酬期待値を与える(式(1))。図6の例の場合、ドメインB(レストラン予約サイト)におけるフード関連広告(広告61B)や、ドメインC(ホテル予約サイト)における旅行関連広告(広告61C)に高い報酬期待値が与えられる。ドメインCにおける広告は、ユーザに提供されていないため、当該ドメインに関する履歴情報は蓄積されていないが、広告間の類似性とユーザ間の類似性を用いることにより、推定した報酬を利用することができる。最終的に、推定部104は、広告61Bと広告61Cが、ユーザiに適した広告として決定することができる。
【0070】
S57において、提供部105は、S56において決定された広告を、対象ユーザに提供する。図6の例では、提供部105は、広告61Bと広告61Cを、ユーザiに提供する。すなわち、提供部105は、ユーザ装置11-iの表示部に広告61Bと広告61Cを表示させるように制御する。
【0071】
上記説明では、図6を参照いて、S51において、対象ユーザとしてユーザiが特定される例を説明したが、続いて、ユーザjが特定される例について説明する。本例では、ユーザjは、ユーザiのユーザ特徴と類似したユーザ特徴を有するものとする。この場合、推定部104は、上記アルゴリズムを実行することにより、ユーザiに適する広告と類似する広告を、ユーザjに適した広告と決定することができる。図6の例では、推定部104が、ドメインAにおける広告64Aを、ユーザjに適した広告として決定し、提供部105がユーザjに提供することができる。
【0072】
このように、コンテンツ(広告)やユーザに対する事前の履歴情報が少ない、もしくは存在しない場合であっても、コンテンツ間の類似度およびユーザ間の類似度を用いることにより、任意のユーザに適したコンテンツを推定して決定することができる。
【0073】
<その他の実施形態>
上記実施形態では、コンテンツとして広告を用いて説明したが、あらゆるコンテンツに対して、本実施形態を適用可能である。例えば、コンテンツとして、映画、書籍、または各種商品を用いてもよい。
【0074】
また、上記実施形態では、コンテンツのレコメンデーションシステムを前提に説明したが、複数のドメイン間で報酬を転移させると共に、サービス提供対象(例えばユーザ)間で報酬を転移させる本実施形態による学習モデルは、あらゆる分野に対して適用可能である。例えば、ファイナンス分野において、複数のポートフォリオから顧客に最適なポートフォリオを選択するために、本実施形態による学習モデルを適用可能である。また、ヘルスケア分野において、治療方法や薬を患者に提供するために、本実施形態による学習モデルを適用可能である。また、ダイアログシステム分野において、会話エージェントによるシステム構築のために、すなわち、複数の会話システム(それぞれはドメインに対応)を統一して1つのシステムを構築するために、本実施形態による学習モデルを適用可能である。
【0075】
なお、上記において特定の実施形態が説明されているが、当該実施形態は単なる例示であり、本発明の範囲を限定する意図はない。本明細書に記載された装置及び方法は上記した以外の形態において具現化することができる。また、本発明の範囲から離れることなく、上記した実施形態に対して適宜、省略、置換及び変更をなすこともできる。かかる省略、置換及び変更をなした形態は、請求の範囲に記載されたもの及びこれらの均等物の範疇に含まれ、本発明の技術的範囲に属する。
【符号の説明】
【0076】
1~M:ユーザ、10:情報処理装置、11-1~11-M:ユーザ装置、101:ユーザ特徴取得部、102:コンテンツ特徴取得部、103:パラメータ設定部、104:推定部105:提供部
図1
図2
図3
図4
図5
図6