以下、図面を参照し、本発明の情報処理装置、情報処理方法、およびプログラムの実施形態について説明する。
[概要]
実施形態の情報処理装置は、一以上のプロセッサによって実現される。情報処理装置は、複数のユーザの行動履歴と、複数のユーザの素性情報とを取得し、取得した複数のユーザの行動履歴および素性情報に基づいて、複数のユーザのうち、互いに異なる複数のサービスのうちターゲットとするサービスを利用して所定の行動に至りやすい対象ユーザに対して、複数のサービス間において利用可能な複数のインセンティブのうち、いずれか一つ以上のインセンティブを付与することを決定する。
インセンティブとは、例えば、ショッピングなどにおいて販売される商品またはサービス(以下、アイテムと称する)の購入に利用可能なポイントである。また、インセンティブは、ポイントと同様の効果をもたらすクーポンやチケット、割引券などであってもよいし、特定のアイテムを優先的に購入できる権利(先着何名様限定の購入権)などであってもよい。このようなインセンティブは、予め提携した種々のサービス間で横断的あるいは相互に利用することができる。本実施形態では、一例として、インセンティブがアイテムの購入などに利用可能なポイントであるものとして説明する。
また、情報処理装置は、取得した複数のユーザの行動履歴および素性情報に基づいて、複数のユーザのうち、互いに異なる複数の商品のうちターゲットとする商品について所定の行動に至りやすい対象ユーザに対して、複数の商品間において利用可能な複数のインセンティブのうち、いずれか一つ以上のインセンティブを付与することを決定してもよい。
<第1の実施形態>
[全体構成]
第1の実施形態では、互いに異なる複数のサービスのうちターゲットとするサービスを利用して所定の行動に至りやすい対象ユーザに対してインセンティブ(例えばポイント)を付与する例について説明する。図1は、第1の実施形態における情報処理装置100を含む情報処理システム1の一例を示す図である。第1の実施形態における情報処理システム1は、一以上の端末装置10と、一以上のサーバ装置20と、情報処理装置100とを備える。これらの装置は、ネットワークNWを介して互いに接続される。ネットワークNWは、例えば、無線基地局、Wi−Fiアクセスポイント、通信回線、プロバイダ、インターネットなどを含む。なお、図1に示す各装置の全ての組み合わせが相互に通信可能である必要はなく、ネットワークNWは、一部にローカルなネットワークを含んでもよい。
端末装置10は、ユーザにより利用される端末装置である。端末装置10は、例えば、スマートフォンなどの携帯電話、タブレット端末、PDA、パーソナルコンピュータである。例えば、端末装置10は、ユーザによる操作を受け付けて、所定のウェブブラウザを介して、サーバ装置20が提供するウェブサイトにアクセスしてもよいし、予めインストールされたアプリケーションを介してサーバ装置20と通信を行い、アプリケーション上で表示或いは再生するコンテンツ(例えば画像や動画、テキストなど)を取得してもよい。このアプリケーションは、例えば、ショッピングアプリなどのアイテムを購入可能なアプリケーションであってもよいし、アプリ内で課金し動画等を再生するコンテンツ配信アプリケーションなどであってもよい。
サーバ装置20は、例えば、販売サイトを提供するウェブサーバ装置であってよい。販売サイトは、例えば、インターネット上において、アイテムを販売する複数の店舗が出店したショッピングサイトや、アイテムを出品したり落札したりすることが可能なオークションの場を提供するオークションサイト、個人がアイテムを売買可能なマーケットを提供するフリーマーケットサイト、電子書籍を専門に販売するブックストアサイト、動画を配信する動画配信サイト、旅行商品(ホテルの宿泊予約や航空券のチケットなど)を販売するトラベルサイト等のウェブサイトを含む。このような販売サイトでは、例えば、アイテムの購入時などにポイントが利用可能であり、アイテムの購入金額の一部または全部をポイントによって支払うことができる。
また、サーバ装置20は、販売サイトに加えて、或いは代えて、クレジットカードの会員登録を受け付けるウェブサイト(以下、クレジットカード登録サイト)や、銀行口座を開設するためのウェブサイト(以下、銀行口座開設サイト)、上記の販売サイトにおいて他の利用者よりも種々のメリット(例えばポイントの付与率が増大するメリット)を享受可能なプレミアム会員の登録を受け付けるウェブサイト(以下、プレミアム会員登録サイト)、アカウント登録を受け付けるコンテンツ配信サイト、携帯電話キャリアの契約または解約を受け付けるウェブサイト(以下、携帯電話キャリア契約サイト)、インターネットプロバイダなどの契約または解約を受け付けるウェブサイト(以下、プロバイダ契約サイト)、株、為替、先物、仮想通貨などが売り買いされるウェブサイト(以下、金融商品取引サイト)などを提供してもよい。
また、サーバ装置20は、アプリケーションが起動された端末装置10と通信を行って、各種情報の受け渡しを行うアプリケーションサーバ装置であってもよい。アプリケーションサーバ装置が提供する情報に基づいて端末装置10のアプリケーションプログラムが生成する画面は、販売サイトやクレジットカード登録サイト、銀行口座開設サイト、プレミアム会員登録サイト、コンテンツ配信サイト、携帯電話キャリア契約サイト、プロバイダ契約サイト、金融商品取引サイトなどの各種ウェブサイトと同様のサービスを提供する。
情報処理装置100は、端末装置10およびサーバ装置20の一方または双方とネットワークNWを介して通信を行って、ユーザに関する各種情報を取得する。情報処理装置100は、取得した情報に基づいて、過去にポイントが付与されたユーザの購入傾向から、ポイントを付与したときにユーザが所定の行動に至る確率(以下、行動確率と称する)を予測する。そして、情報処理装置100は、予測した確率に基づいて、これからポイントを付与する予定のユーザに対してより効果的にポイントを付与するためにはどうすべきかを解析する。
所定の行動とは、ウェブサイトの提供主、アプリケーションの提供主、またはインセンティブを付与する付与主がユーザに対して期待する行動である。例えば、サーバ装置20により提供されるウェブサイトがショッピングサイトである場合、所定の行動は、ショッピングサイトで販売されるアイテムを購入することなどである。
また、サーバ装置20により提供されるウェブサイトがオークションサイトである場合、所定の行動は、オークションサイトにアイテムを出品することや、オークションサイトに出品されたアイテムを入札または落札することなどである。
また、サーバ装置20により提供されるウェブサイトがフリーマーケットサイトである場合、所定の行動は、アイテムを販売することや購入することなどである。
また、サーバ装置20により提供されるウェブサイトがクレジットカード登録サイトである場合、所定の行動は、クレジットカードの新規会員登録を行うこと、或いはクレジットカードの会員登録を解消しないことなどである。
また、サーバ装置20により提供されるウェブサイトが銀行口座開設サイトである場合、所定の行動は、口座を新規に開設すること、或いは既に開設した口座を解約しないことなどである。
また、サーバ装置20により提供されるウェブサイトがプレミアム会員登録サイトである場合、所定の行動は、新規にプレミアム会員を登録すること、或いは既に登録したプレミアム会員を解消しないことなどである。
また、サーバ装置20により提供されるウェブサイトがコンテンツ配信サイトである場合、所定の行動は、新規にアカウント登録を行うこと、或いは既に登録したアカウントを解消しないことなどである。
また、サーバ装置20により提供されるウェブサイトが携帯電話キャリア契約サイトやプロバイダ契約サイトなどである場合、所定の行動は、新規に契約すること、或いは既に契約していれば解約しないことなどである。
また、サーバ装置20により提供されるウェブサイトが金融商品取引サイトである場合、所定の行動は、アイテムの一例である金融商品や仮想通貨などをトレード(売買)することなどである。
[情報処理装置の構成]
以下、情報処理装置100の構成について説明する。図2は、第1の実施形態における情報処理装置100の構成の一例を示す図である。情報処理装置100は、例えば、通信部102と、制御部110と、記憶部130とを備える。
通信部102は、例えば、NIC等の通信インターフェースを含む。通信部102は、ネットワークNWを介して、端末装置10やサーバ装置20などの他装置と通信する。例えば、通信部102は、端末装置10から端末側管理情報を受信する。端末側管理情報は、例えば、ウェブブラウザごとに管理されるクッキー(HTTP cookie)である。このクッキーには、例えば、販売サイトなどの各種ウェブサイトにおける行動履歴やウェブページの閲覧履歴などが含まれる。また、通信部102は、サーバ装置20から、上述した端末側管理情報に相当し、販売サイトなどの各種ウェブサイトにおける行動履歴やウェブページの閲覧履歴などが含まれるサーバ側管理情報を受信してもよい。通信部102により受信された端末側管理情報やサーバ側管理情報は、後述する行動履歴情報132として記憶部130に記憶される。
制御部110は、例えば、取得部112と、モデル生成部114と、確率予測部116と、付与ポイント決定部118とを備える。これらの構成要素の一部または全部は、例えば、CPU(Central Processing Unit)などのプロセッサが記憶部130に格納されたプログラムを実行することにより実現される。また、制御部110の構成要素のうち一部または全部は、GPU(Graphics Processing Unit)、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、またはFPGA(Field-Programmable Gate Array)などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
記憶部130は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、またはRAM(Random Access Memory)などの記憶装置により実現される。記憶部130には、プロセッサが読み出すプログラムの他、行動履歴情報132、素性情報134、予測モデル情報136、アカウント情報138などの情報が記憶される。
図3は、行動履歴情報132の一例を示す図である。行動履歴情報132は、各ユーザを識別可能なユーザIDに対して、複数種類のインセンティブ(ポイント)のそれぞれをユーザに付与したときに、そのユーザが所定期間(例えばポイントの有効期間)内に、インセンティブ(ポイント)を利用して所定の行動(例えばアイテムの購入など)に至ったのか否かを示す情報が対応付けられた情報である。図示の例では、行動履歴情報132において、ある販売サイトにおいてアイテムを購入することが所定の行動として扱われており、販売サイトで販売されるアイテムを購入していれば「購入」という情報が対応付けられており、アイテムを購入していなければ「非購入」という情報が対応付けられている。
ユーザIDは、例えば、販売サイトなどの各種ウェブサイトや各種アプリケーションを利用する複数のユーザのそれぞれを識別するために、サーバ装置20によって発行されるIDである。複数種類のインセンティブは、ユーザに与える影響度(例えば購入意欲を向上させる度合など)が互いに異なるものであり、例えば、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントというように、ポイントの効力(使用可能額面)が異なるインセンティブを含む。0ポイントとは、ポイントが付与されないことである。そのため、0ポイントにおける所定の行動の有無(例えば購入または非購入)とは、ユーザが、ポイントが付与されなくとも所定の行動に至ったのかどうかを表している。なお、所定の行動が「アイテムの購入」である場合、各ポイントにおける「購入」は、その購入時にポイントが利用されたことを要件としてもよいし、要件としなくてもよい。
上述した図の例では、各ユーザIDに対して、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントの全種類のインセンティブを付与することで、各インセンティブにおいて購入の有無(購入/非購入)を示す情報が取得されているがこれに限られず、一部のインセンティブのみを付与することで、特定のインセンティブについての購入の有無を示す情報が取得されてもよい。例えば、ある母集団(例えば100万人程度のユーザの集合)のユーザIDに対して、所定数(例えば20万人)ごとに互いに異なるポイントを付与して、購入の有無を示す情報を取得してよい。すなわち、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントのうち、いずれか一つのポイントについての購入の有無が判断できればよい。
また、年齢や性別などのユーザの属性を示す情報が得られる任意のユーザID(後述する機械学習などの学習データとして利用しなかったユーザIDを含む)に対して、各ポイントについて購入傾向をモデル化した予測モデルを生成することができる。例えば、20万件ずつの500ポイント、300ポイント、100ポイント、3ポイント、0ポイントのそれぞれの所定の行動の有無を示す情報を用いて、各ポイントにおける予測モデルを生成した後、次回以降にインセンティブを付与する対象となる全ユーザIDに対して、各ユーザIDの属性情報だけを各ポイントの予測モデルの入力することで、各ユーザIDの全ポイントの所定の行動に至る行動確率を算出する。従って、本実施形態では、例えば、20万件ずつ合計100万件の学習データを使って予測モデルを構築した後、学習に使わなかったユーザIDも含めて、例えば、1000万件のユーザIDの行動確率を算出することができる。これらの具体的な処理内容については、フローチャート等を用いて後述する。
また、行動履歴情報132を取得する段階において、各ポイントは、有効期間が重ならないように付与される。例えば、500ポイントを付与した後に、当該500ポイントの付与によってアイテムの購入に至ったのかどうかを判断するために、例えば、500ポイントの失効期間を待ってから他の種類のポイントが付与される。なお、一人のユーザに対して全種類のポイントを付与せずに、上述したように、例えば、特定のポイントのみを付与する場合には、ポイントの失効期間等を考慮せずに任意のタイミングでポイントが付与されてよい。
また、行動履歴情報132には、ポイントを利用して購入されたアイテムの購入金額を示す情報が含まれていてもよい。図4は、行動履歴情報132の他の例を示す図である。図に例示する行動履歴情報132では、各ユーザIDに対して、複数種類のポイントのそれぞれをユーザに付与したときに、ユーザがアイテムを購入した場合、そのアイテムの購入金額を示す情報が対応付けられており、ユーザがアイテムを購入しなかった場合、ゼロ円が対応付けられている。なお、ポイントが使用された結果、アイテムがゼロ円で購入された場合、その旨を示すフラグなどが付与されてもよい。なお、上述した図3と同様に、図4においても、各ユーザIDに対して、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントの全種類のインセンティブを付与することで、各インセンティブにおいて購入の有無(購入/非購入)を示す情報が取得される必要はなく、一部のインセンティブのみを付与することで、特定のインセンティブについての購入の有無を示す情報のみが取得されてよい。
また、行動履歴情報132は、販売サイトでのアイテムの購入の有無を示す情報に限られず、上述したクレジットカード登録サイト、銀行口座開設サイト、プレミアム会員登録サイト、コンテンツ配信サイト、携帯電話キャリア契約サイト、プロバイダ契約サイト、金融商品取引サイトに対する所定の行動の有無を示す情報であってもよい。
図5は、行動履歴情報132の他の例を示す図である。図に例示する行動履歴情報132では、各ユーザIDに対して、ポイントごとに携帯電話キャリア契約サイトにおける契約の有無が対応付けられた情報である。
また、例えば、ポイントが付与されたユーザが所定の行動としてクレジットカードを新規に登録した場合、行動履歴情報132には、クレジットカードの登録の有無に加えて、更に、クレジットカードのランク(種類)を示す情報が含まれていてもよい。ランクは、例えば、ゴールドカード、プラチナカード、ブラックカードといったカードの格付けを表してよい。また、例えば、ポイントが付与されたユーザが所定の行動として銀行口座を開設した場合、行動履歴情報132には、銀行口座の開設の有無に加えて、更に、銀行口座のランク(種類)を示す情報が含まれていてもよい。この場合、ランクは、普通預金口座、定期預金口座、貯蓄預金口座等のように、口座ごとの支払われる金利の大きさなどを表してよい。
図6は、行動履歴情報132の他の例を示す図である。図に例示する行動履歴情報132では、ポイントが付与されたユーザがカードの新規登録や口座の新規開設といった所定の行動を起こした場合、そのユーザの行動対象にランクを示す情報が、各ユーザIDに対して対応付けられている。例えば、ポイントが付与されたユーザがブラックカードのクレジットカードを登録した場合、そのユーザのユーザIDには、「高ランク」が対応付けられ、プラチナカードのクレジットカードを登録した場合、「中ランク」が対応付けられ、ゴールドカードのクレジットカードを登録した場合、「低ランク」が対応付けられてよい。これらのランクは、購入金額のように数値換算されてもよい。
また、行動履歴情報132には、アイテムの購入時に利用されたポイントの利用額を示す情報が含まれていてもよい。図7は、行動履歴情報132の他の例を示す図である。図に例示する行動履歴情報132では、各ユーザIDに対して、複数種類のポイントのそれぞれをユーザに付与したときに、そのユーザが、付与されたポイントの一部または全部、或いは元々保有していたポイントの一部または全部を利用してアイテムを購入した場合、そのアイテムの購入時に利用されたポイントの利用額を示す情報が対応付けられている。また、行動履歴情報132は、ポイントの利用額に代えて、或いは加えて、ポイントの利用率がユーザIDに対応付けられていてもよい。ポイントの利用率は、例えば、ポイントの利用額に対するアイテムの購入金額の比率である。
図8は、素性情報134の一例を示す図である。図の例のように、素性情報134は、ポイントが付与されたユーザ(ユーザID)に対して、ユーザ属性を示す素性、ユーザ行動履歴を示す素性、およびポイントに関連した素性が対応付けられた情報である。
ユーザ属性を示す素性は、例えば、性別、年代(年齢)、ユーザIDの登録年月日、電子マネーのチャージ額、保有ポイント数などの各種素性を含む。ユーザIDの登録年月日は、サーバ装置20によってユーザIDが発行された後に登録された年月日である。電子マネーのチャージ額は、販売サイトや販売サイトと提携したウェブサイトにおいて利用可能な電子マネーのチャージ残高を示す情報である。
ユーザ行動履歴を示す素性は、例えば、販売サイトなどの各ウェブサイト、或いはこれらのウェブサイトで提供されるサービスと同様のサービスを提供するアプリケーションの利用に関する素性や、各ウェブサイトを構成するウェブページや、アプリケーション用のページの閲覧に関する素性などを含む。以下、ウェブページとアプリケーション用のページとを区別しない場合、「電子ページ」と称して説明する。
ウェブサイトやアプリケーションに関する素性には、例えば、販売サイトでどのようなアイテムを購入等したのか否か、クレジットカード登録サイトでクレジットカードを登録したのか否か、銀行口座開設サイトで新規に口座を開設したのか否か、プレミアム会員登録サイトで新規に会員登録したのか否か、コンテンツ配信サイトでアカウント登録したのか否か、携帯電話キャリア契約サイトやプロバイダ契約サイトなどで新規に契約したのか否か、現在契約している携帯電話キャリアやプロバイダから他の携帯電話キャリアやプロバイダに契約先を変更したのか否か、金融商品取引サイトで金融商品をトレードしたのか否か、といった素性が含まれる。
また、例えば、ユーザが、クレジットカードの会員登録をしていたり、銀行口座を開設していたり、プレミアム会員を登録していたり、コンテンツ配信サイトでアカウント登録をしていたり、携帯電話キャリアやプロバイダと契約していたりした場合、ウェブサイトやアプリケーションに関する素性には、それらの登録、開設、契約が行われた日付からの経過日数や、契約更新月までの日数などを示す素性などが含まれてもよい。
また、電子ページの閲覧に関する素性には、例えば、上述したクレジットカード登録や銀行口座開設、プレミアム会員登録、アカウント登録、キャリアやプロバイダの契約などを、解消や解約するための電子ページにアクセスしたか否か、といった素性が含まれる。
ポイントに関連した素性は、過去にユーザに付与されたポイントに関する素性であり、例えば、ポイントの利用回数、ポイントの利用額、ポイントの獲得回数、ポイントの獲得額、ポイントの残高などの素性を含む。
図9は、ユーザ行動履歴の素性をより具体的に例示した図である。図示のように、例えば、ショッピングサイトの利用に関する素性には、購入回数、購入金額、購入月日、購入したアイテムのカテゴリ(例えばファッション、家電、食品など)等の素性が含まれる。また、オークションサイトの利用に関する素性には、入札回数、落札回数、出品回数等の素性が含まれる。また、クレジットカード登録サイトの利用に関する素性には、クレジットカードの登録有無、登録したカードの種類、限度額、登録した日付からの経過日数、契約更新月等の素性が含まれる。
また、電子ページの閲覧に関する素性には、例えば、ページビュー、ウェブページのアクセス日数、直近のアクセス日時、検索時に入力された検索クエリ(検索用のキーワード)等の素性が含まれる。例えば、ページビューは、検索サイトからの販売サイトへのアクセス数を表してもよいし、検索サイトから、販売サイトと異なる他のウェブサイト(例えばニュースサイトなど)へのアクセス数を表してもよい。また、ページビューは、検索サイトを介さずに、ウェブブラウザ等によって自動的に提供されたウェブサイトへのアクセス数を表してもよい。すなわち、ページビューは、ユーザが自発的にアクセスしたウェブサイトへのアクセス数と受動的にアクセスしたウェブサイトへのアクセス数を区別した指標であってよい。また、電子ページの閲覧に関する素性には、例えば、上述したクレジットカード登録や銀行口座開設、プレミアム会員登録、アカウント登録、キャリアやプロバイダの契約などを、解消または解約するための電子ページ(図中契約解消ページ)にアクセスしたか否か、といった素性が含まれる。
図10は、予測モデル情報136の一例を示す図である。図示の例のように、予測モデル情報136は、各ポイントに対して、予測モデルが対応付けられた情報である。予測モデルとは、後述するモデル生成部114により生成されるパターン認識モデルである。
図11は、アカウント情報138の一例を示す図である。図示の例のように、アカウント情報138は、ユーザごとに、ユーザID、パスワード、メールアドレス、ポイント残高などが互いに対応付けられた情報である。
以下、第1の実施形態における制御部110の各構成要素による処理をフローチャートに即して説明する。図12は、第1の実施形態における制御部110による一連の処理の一例を示すフローチャートである。
まず、取得部112は、通信部102を介して、端末装置10またはサーバ装置20から、行動履歴情報132および素性情報134を取得し(S100)、取得したこれらの情報を記憶部130に記憶させる。例えば、取得部112は、素性情報134に含まれる素性のうち、ユーザ属性を示す素性を端末装置10から取得し、ユーザ行動履歴を示す素性をサーバ装置20から取得し、ポイントに関連した素性を端末装置10およびサーバ装置20から取得し、各装置から取得した素性をユーザIDごとに合わせて一つの素性情報134としてもよい。
次に、モデル生成部114は、取得部112により取得された行動履歴情報132および素性情報134に基づいて、ポイントごとのユーザの行動傾向をモデル化した予測モデルを生成する(S102)。ユーザの行動傾向とは、例えば、販売サイトでどのようなアイテムを購入したのか、またはアイテムの購入にどの程度の金額を費やしたのかなどを表す。また、ユーザの行動傾向は、例えば、クレジットカード登録サイトや銀行口座開設サイト、プレミアム会員登録サイト、コンテンツ配信サイト、携帯電話キャリア契約サイト、プロバイダ契約サイト、金融商品取引サイトなどにおいて、所定の行動をとったか否かを表す。
例えば、モデル生成部114は、SVM(Support Vector Machine)を用いて、素性情報134に含まれる複数の素性の一部または全部、あるいはそれらの組み合わせを要素とする特徴ベクトルを、ある特徴空間に分布させ、その特徴空間において各特徴ベクトルを正例または負例に分類する超平面(特徴空間の次元数から1低下した次元を有する空間)を導出する。なお、モデル生成部114は、素性に対して正規化処理を行って、特徴ベクトルの各要素の値のオーダーを揃えてもよい。
例えば、二値分類問題を、アイテムを購入するかどうかという問題と捉えた場合、正例は、ポイントが付与された後にアイテムを購入したユーザの素性を示す特徴ベクトルとなり、負例は、ポイントが付与された後にアイテムを購入しなかったユーザの素性を示す特徴ベクトルとなる。また、例えば、二値分類問題を、クレジットカードを新規登録するかどうかという問題と捉えた場合、正例は、ポイントが付与された後にクレジットカードの新規登録を行ったユーザの素性を示す特徴ベクトルとなり、負例は、ポイントが付与された後にクレジットカードの新規登録を行わなかったユーザの素性を示す特徴ベクトルとなる。特徴空間において超平面を表す関数は、予測モデルの一例である。
例えば、素性情報134に含まれる複数のユーザの素性のうち、半数程度のユーザの素性は、SVMにおける教師データ(正解データ)として扱われ、残りのユーザの素性は、学習データとして扱われる。教師データは、上述した超平面を導出するためのデータであり、学習データは、教師データにより導出された超平面によって正例負例のいずれかに分類される対象のデータである。
例えば、モデル生成部114は、各ポイントにおけるユーザの素性から、正例負例のいずれかに分離するための超平面を導出することで、500ポイント、300ポイント、100ポイントといったように各ポイントでの予測モデル(超平面を示す関数)を生成する。
このとき、モデル生成部114は、学習データの正例と負例の比率を、教師データの正例と負例の比率と同程度(好ましくは同じ比率)にするように超平面を導出する。
そして、モデル生成部114は、教師データを用いて生成した各ポイントでの予測モデルに従って、学習データであるユーザの素性を正例負例のいずれかに分類し、分類した各素性のスコアを導出する(S104)。ここでのスコアは、例えば、予測モデルとして導出された超平面と、素性を示す特徴ベクトルとの間の距離を数値化した情報である。
図13は、ポイントごとに導出されたスコアの一例を示す図である。図示の例のように、スコアは、各ユーザのポイントごとに導出される。例えば、ユーザID「ABC01」の500ポイントにおけるスコア「0.465283」は、ユーザID「ABC01」に対応するユーザの素性から求められた複数の特徴ベクトルのそれぞれと、500ポイントの予測モデルとして導出された超平面との間の距離を平均した値として導出される。
なお、モデル生成部114は、SVMの代わりに、ロジスティック回帰等の学習手法を用いて、ユーザ毎に各ポイントにおけるスコアを導出してもよい。この場合、スコアは、Wald統計量((標準誤差/回帰係数)^2)またはWald統計量から求めた予測確率(所謂傾向スコアに相当する)などである。
また、モデル生成部114は、SVMを用いてニ値分類問題(正例または負例のいずれかに分類する問題)を解くことで、学習データをスコア化するものとしたがこれに限られない。例えば、モデル生成部114は、図5に示す行動履歴情報132を参照して、各ユーザのポイントごとの購入金額を予測モデルにモデル化することで、各ポイントでのスコアを導出してもよい。より具体的には、モデル生成部114は、図4に示す行動履歴情報132に含まれる各ユーザのポイントごとの購入金額を教師データとして扱って重回帰分析を行い、教師データの購入金額をモデル化する。そして、モデル生成部114は、学習データの購入金額を、重回帰分析によって教師データから導出された予測モデルに近似させることで、学習データの購入金額を評価したスコアを導出する。この場合、スコアは、重回帰分析により求められる購入金額である。
また、モデル生成部114は、図6に示す行動履歴情報132を参照して、各ユーザのポイントごとのランクを数値に換算し、その換算した数値を予測モデルにモデル化することで、各ポイントでのスコアを導出してもよい。
また、モデル生成部114は、図7に示す行動履歴情報132を参照して、各ユーザのポイントごとの、アイテム購入時に利用されたポイントの利用額や利用率を数値に換算し、その換算した数値を予測モデルにモデル化することで、各ポイントでのスコアを導出してもよい。
次に、確率予測部116は、過去のユーザの行動実績に基づいて、目的関数fを最適化にするためのユーザの行動確率を予測する(S106)。目的関数fは、例えば、オークションサイトや、ショッピングサイト、ブックストアサイト、動画配信サイト、トラベルサイトといった、ウェブサイトやアプリケーションを介して(媒体として)提供される複数のサービスのうち、あるターゲットとするサービスを利用して、ポイントが付与されたユーザが所定の行動に至る行動確率と、複数のサービスのうち、ターゲットとするサービス以外の他のサービスを利用して、ポイントが付与されたユーザが所定の行動に至る行動確率との差分に基づく関数である。ターゲットとするサービスは、例えば、他のサービスに比して集客力の弱いサービスであり、具体的には、オークションなどである。また、ターゲットとするサービスは、集客力を考慮せずに、単に、他のサービスよりも利用者の数などを増加させることを目的として決められてもよい。なお、ターゲットとするサービスは、オークションやショッピングなどのアイテムの売買の場を提供するものであり、アイテムの一例であるサービス(購入や契約などの所定の行動の直接的な対象となるサービス)とは異なるものである。
例えば、ターゲットとするサービスをオークションとする場合、目的関数fは、数式(1)によって表されてよい。式中のΣは、括弧内の式を各ポイントについて求め、更にポイントごとに求めた値の総和を求めることを表している。
確率予測部116は、数式(1)に示すように、各ユーザに付与されたポイントごとに、オークションサイトでのアイテムの落札確率と、オークション以外の他のサービス(例えばショッピングサイトやブックストアサイト)でのユーザの所定の行動の行動確率との差分を導出し、それらの差分の総和を導出する。例えば、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントが其々付与されている場合、確率予測部116は、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントの其々について、オークションサイトでのアイテムの落札確率と、オークション以外の他のサービスでのユーザの所定の行動の行動確率との差分を求める。
そして、確率予測部116は、ポイントごとに求めたサービス間の行動確率の差分の総和を全て足し合わせものを、目的関数fとして導出する。例えば、ターゲットとするサービスを除く他のサービスの数がK個である場合、サービス間の行動確率の差分の総和は、K個導出される。この場合、確率予測部116は、K個の行動確率の差分の総和を全て足し合わせて目的関数fとする。
また、目的関数fは、数式(1)の代わりに数式(2)によって表されてもよい。
また、目的関数fは、数式(1)や(2)のように、ユーザの所定の行動に至る行動確率の差分に基づく関数であることに限られない。例えば、目的関数fは、ポイントが付与されたユーザが、ターゲットとするサービスを利用して所定の行動に至った場合にもたらされた成果と、ターゲットとしないサービスを利用して所定の行動に至った場合にもたらされた成果との差分に基づく関数であってもよい。所定の行動に至った場合にもたらされた「成果」は、例えば、所定の行動がアイテムの購入であれば、上述したようにアイテムの購入金額のような金銭的な成果であってよい。また、例えば、「成果」は、所定の行動が金融商品のトレードであれば、トレード回数であってよく、所定の行動が携帯電話のキャリア契約であれば、携帯電話会社が提供するサービスの利用期間(サービス契約継続期間)であってもよい。目的関数fが成果に基づく関数である場合、例えば、目的関数fは、数式(3)によって表されてよい。
例えば、確率予測部116は、数式(3)に示すように、各ユーザに付与されたポイントごとに、オークションサイトでのアイテムの落札金額と、ショッピングサイトやブックストアサイトでのアイテムの購入金額との差分を導出し、それらの差分の総和を導出する。そして、確率予測部116は、ポイントごとに求めたサービス間の落札金額と購入金額との差分の総和を全て足し合わせものを、目的関数fとして導出する。
また、目的関数fは、ポイントを付与されたユーザが、ターゲットとするサービスを利用して所定の行動に至った場合に、その行動に伴って利用されたポイントの利用率と、ターゲットとするサービス以外の他のサービスを利用して所定の行動に至った場合に、その行動に伴って利用されたポイントの利用率との差分に基づく関数であってもよい。この場合、例えば、目的関数fは、数式(4)によって表されてよい。
例えば、確率予測部116は、数式(4)に示すように、各ユーザに付与されたポイントごとに、オークションサイトでアイテムを落札した時に利用されたポイントの利用率(例えばポイント利用額/落札金額)と、ショッピングサイトやブックストアサイトでアイテムを購入した時に利用されたポイントの利用率との差分をポイントごとに導出し、それらの差分の総和を導出する。そして、確率予測部116は、ポイントごとに求めたサービス間のポイント利用率の差分の総和を全て足し合わせものを、目的関数fとして導出する。
また、目的関数fは、ポイントを付与されたユーザが、ターゲットとするサービスを利用して所定の行動に至った場合に、その行動に伴って利用されたポイントの利用額と、ターゲットとするサービス以外の他のサービスを利用して所定の行動に至った場合に、その行動に伴って利用されたポイントの利用額との差分に基づく関数であってもよい。この場合、例えば、目的関数fは、数式(5)によって表されてよい。
例えば、確率予測部116は、数式(5)に示すように、各ユーザに付与されたポイントごとに、オークションサイトでアイテムを落札した時に利用されたポイントの利用額と、ショッピングサイトやブックストアサイトでアイテムを購入した時に利用されたポイントの利用額との差分を導出し、それらの差分の総和を導出する。そして、確率予測部116は、ポイントごとに求めたサービス間のポイント利用額の差分の総和を全て足し合わせものを、目的関数fとして導出する。
また、目的関数fは、上述した数式(1)〜(5)に代えて、数式(6)〜(9)のいずれかによって表されてもよい。数式(6)〜(9)は、ウェブサイトやアプリケーションを介して(媒体として)提供される複数のサービスのうち、あるターゲットとするサービス(式中の例ではオークション)に関する一つの指標値と、ターゲットとしない複数の他のサービスの中で最も値が大きい指標値との差分を各ポイントごとに導出し、更にポイントごとに導出した差分を全て足し合わせた総和を表している。なお、数式(1)〜(9)はあくまでも一例であり、適時種々の変更を加えてよい。
また、目的関数fは、上述した購入確率や購入金額、ポイント利用率、ポイント利用額以外にも、オークションの落札者数、入札者数、出品者数、落札合計金額、入札合計金額並びに出品合計金額や、クレジットカードの新規登録数並びに登録解消数、銀行口座の新規開設数並びに口座解約数、プレミアム会員の新規獲得数並びに会員登録解消数、コンテンツ配信サイトにおける新規アカウント登録数並びにアカウント解約数、携帯電話キャリアやインターネットプロバイダの新規契約数、解約数並びに契約継続月数、金融商品のトレード(売買)回数並びにトレード金額、といった種々の指標値の差分に基づく関数であってもよい。
確率予測部116は、上述した目的関数fが最適となるようなユーザの行動確率を予測する。例えば、所定の行動がアイテムの購入であり、目的関数fが数式(1)に示すようなサービス間での購入(落札)確率の差分に基づく関数である場合、確率予測部116は、目的関数fが最大化するようなユーザの行動確率を予測する。
より具体的には、確率予測部116は、モデル生成部114により導出された各ユーザのポイントごとのスコアと、教師データの正例および負例の比率とに基づいて、ユーザの将来の行動傾向を表す確率密度関数を予測する。この確率密度関数は、各ユーザのポイントごとのスコアを変数として、ユーザの将来の行動確率を返す関数である。例えば、予測される確率密度関数は、スコアが増加するのに応じて確率が1に近づくと共に、スコアが減少するのに応じて確率が0に近づく奇関数である。このような関数は、例えば、シグモイド関数や、ステップ関数、一次関数、アークタンジェント関数、その他の多項式関数などである。以下、一例として、ユーザの将来の行動傾向を表す確率密度関数を、数式(10)に示すシグモイド関数であるものとして説明する。
数式(10)のSVMScoreは、モデル生成部114により導出された各ユーザのポイントごとのスコアを表している。また、パラメータAは、SVMScoreに応じて変動する行動確率Pの増加または減少の程度の大きさを表し、パラメータBは、シグモイド関数をSVMScore軸方向に平行移動(シフト)させる成分を表している。
以下、ユーザの将来の行動傾向を表す確率密度関数の導出方法について説明する。図14は、ある期間において、販売サイトを利用した全ユーザの購入履歴に関する情報を示す図である。図示の獲得率[%](=A)は、付与されたポイントがユーザの意思によってどの程度獲得されたのかを表す指標である。例えば、獲得率は、ポイントが付与されることが、ウェブサイト上で不特定多数向けに通知されたり、電子メールやダイレクトメール、プッシュ通知などによって個別に通知されたりしたユーザのうち、その通知の案内に従ってポイントを受け取ったユーザの人数の割合を示している。すなわち、獲得率は、ポイント付与の候補としてカウントされたユーザのうち、実際にポイントを受け取ったユーザの人数の割合を示している。また、購入率[%](=B)は、ポイントを獲得した全ユーザのうち、そのポイントが失効するまでの期間に販売サイトなどでアイテムを購入したユーザの人数の割合を表している。なお、所定の行動の対象先がクレジットカード登録サイトや、銀行口座開設サイトなどである場合、購入率は、登録率や開設率などに置き換わってよい。
例えば、確率予測部116は、シグモイド関数により返される行動確率Pの平均値が、上述した図14における購入率(=B)と等しくなるように、数式(10)のパラメータAを決定する。
図15は、パラメータAの決定方法を模式的に示す図である。図示の(a)から(c)のように、確率予測部116は、パラメータAの大きさを変更しながら、シグモイド関数により返される行動確率Pの平均値が、購入率(=B)と等しくなるパラメータAを探索する。図示のように、パラメータAを探索することは、SVMScore軸方向にシグモイド関数を拡縮することを意味する。すなわち、パラメータAを探索することは、シグモイド関数の分散の度合を変更することを意味する。
なお、数式(10)におけるパラメータBは、SVMにおける学習データの正例と負例の比率と、教師データの正例と負例の比率とを同程度にする際に、モデル生成部114によって好適な値に決定される。
図16は、パラメータBの決定方法を模式的に示す図である。例えば、図示のように、SVMによる学習段階において、教師データの正例と負例の比率が15:85であった場合、モデル生成部114は、学習データの正例と負例の比率を15:85に近づけるようにパラメータBを設定する。すなわち、パラメータBを決定することは、特徴空間内において超平面(図中HP)の位置を動かしながら、正例と負例の数を調整することを意味する。
このようにして、確率予測部116は、シグモイド関数のような確率密度関数を予測し、この予測した関数に、モデル生成部114により導出されたスコアを代入することで、ユーザの将来の行動確率(図14の例ではアイテムの購入確率)を予測する。
図17は、スコアから将来の行動確率を導出する様子を示す図である。図示のように、確率予測部116は、ユーザ(ユーザID)ごとに、各ポイントのスコア(図示の例では、SVMによるスコア)を、シグモイド関数のような確率密度関数に従って行動確率に変換する。一般的に、単にSVMやロジスティック回帰等の学習手法を適用して得られたスコアを確率とした場合、その確率を示す確率密度分布では、局所的に解が集まって分布する傾向があることが知られている。これに対して、本実施形態では、単に予測モデルのスコアを行動確率とするのではなく、ニューラルネットワークなどを利用した機械学習の分野において実際の事象を表すのに利用されているシグモイド関数のような確率密度関数にスコアをフィッティングさせることによって、eコマースの分野においても実際の事象によりマッチした確率分布を得ることができる。例えば、シグモイド関数により返される行動確率の平均値が、実際の過去の購入率と等しくなるように上述したパラメータAを探索することによって、シグモイド関数がSVMScore軸方向に拡縮するため、解が局所的に集まった場合でも実際の事象に合わせながら確率分布を分散させることができる。この結果、精度良く将来の行動確率を予測することができる。
ここで、図12のフローチャートの説明に戻る。次に、付与ポイント決定部118は、確率予測部116により予測された、ユーザごとの各ポイントでの行動確率に基づいて、ポイントを付与可能な予算内で、上述した目的関数fを最大化にするように各ユーザに割り振るポイントの配分を決定する(S108)。
例えば、付与ポイント決定部118は、整数計画法を用いて、ポイントを付与可能な予算内で、目的関数fを最大化にするように各ユーザに割り振るポイントの配分を決定する。本実施形態における整数計画法とは、ポイントの種類n(本実施形態では、n=5)分のベクトル成分を要素eとしてもつ高次元ベクトル(以下、ポイント配分用ベクトルVと称する)を、各ユーザのポイントごとの行動確率(販売サイトの場合、購入確率)に乗算することで、予め決められた制約条件を満たし、且つ目的関数fが最大となる解(ユーザに割り振るポイントの組み合わせ)を探す処理をいう。ポイント配分用ベクトルVの要素eは、1または0のいずれか一方の値をとり、全ての要素の和は1となる。言い換えれば、ポイント配分用ベクトルVの要素eは、いずれか一つの要素だけが1の値をとり、それ以外の要素の値は0となる。
制約条件とは、例えば、以下の条件を含む。
(1)付与可能なポイントの予算内に、付与するポイントの総額を収めること(予算≦付与ポイントの総額)。
(2)ポイント配分用ベクトルVの要素eが、1または0のいずれか一方の整数をとること。
(3)ポイント配分用ベクトルVの要素eは、全ての要素の和が1となること。
(4)(i)ターゲットとするサービスを利用して所定の行動に至る行動確率が、ターゲットとしないサービスを利用して所定の行動に至る行動確率よりも大きいこと、(ii)ターゲットとするサービスを利用して所定の行動に至った場合に得られる成果が、ターゲットとしないサービスを利用して所定の行動に至った場合に得られる成果よりも大きいこと、(iii)ターゲットとするサービスを利用して所定の行動に至った場合の所定の行動に伴うインセンティブの利用結果が、ターゲットとしないサービスを利用して所定の行動に至った場合の所定の行動に伴うインセンティブの利用結果よりも大きいこと、のいずれかを満たすこと。
例えば、(i)の条件は、数式(11)または(12)によって表現され、(ii)の条件は、数式(13)または(14)によって表現され、(iii)の条件は、数式(15)から(18)によって表現される。各数式のa、b、c、…は、任意の定数である。
例えば、付与ポイント決定部118は、目的関数fとして上述した数式(1)または(2)を用いる場合、ユーザに割り振るポイントの候補となる複数の組み合わせの中から、制約条件として(1)〜(3)の条件を満たすと共に、(4)の(i)の条件を表す数式(11)または数式(12)を満たす組み合わせを最適解として選択する。例えば、数式(11)に示す制約条件は、オークションサイトでのアイテムの落札(購入)確率が、ショッピングサイトでのアイテムの購入確率に定数aを乗算した確率よりも大きく、且つブックストアサイトでの電子書籍の購入確率に定数bを乗算した確率よりも大きく、且つその他サイトでのアイテムの購入確率に任意の定数cを乗算した確率よりも大きいことを表している。
また、付与ポイント決定部118は、目的関数fとして上述した数式(3)を用いる場合、ユーザに割り振るポイントの候補となる複数の組み合わせの中から、制約条件として(1)〜(3)の条件を満たすと共に、(4)の(ii)の条件を表す数式(13)または数式(14)を満たす組み合わせを最適解として選択する。例えば、数式(13)に示す制約条件は、オークションサイトでのアイテムの落札(購入)金額が、ショッピングサイトでのアイテムの購入金額に定数aを乗算した金額よりも大きく、且つブックストアサイトでの電子書籍の購入金額率に定数bを乗算した金額よりも大きく、且つその他サイトでのアイテムの購入金額に任意の定数cを乗算した金額よりも大きいことを表している。
また、付与ポイント決定部118は、目的関数fとして上述した数式(4)を用いる場合、ユーザに割り振るポイントの候補となる複数の組み合わせの中から、制約条件として(1)〜(3)の条件を満たすと共に、(4)の(iii)の条件を表す数式(15)または数式(16)を満たす組み合わせを最適解として選択する。例えば、数式(15)に示す制約条件は、オークションサイトでのアイテムの落札(購入)時に利用されたポイントの利用率が、ショッピングサイトでのアイテムの購入時に利用されたポイントの利用率に定数aを乗算した値よりも大きく、且つブックストアサイトでの電子書籍の購入時に利用されたポイントの利用率に定数bを乗算した値よりも大きく、且つその他サイトでのアイテムの購入時に利用されたポイントの利用率に任意の定数cを乗算した値よりも大きいことを表している。
また、付与ポイント決定部118は、目的関数fとして上述した数式(5)を用いる場合、ユーザに割り振るポイントの候補となる複数の組み合わせの中から、制約条件として(1)〜(3)の条件を満たすと共に、(4)の(iii)の条件を表す数式(17)または数式(18)を満たす組み合わせを最適解として選択する。例えば、数式(17)に示す制約条件は、オークションサイトでのアイテムの落札(購入)時に利用されたポイントの利用額が、ショッピングサイトでのアイテムの購入時に利用されたポイントの利用額に定数aを乗算した値よりも大きく、且つブックストアサイトでの電子書籍の購入時に利用されたポイントの利用額に定数bを乗算した値よりも大きく、且つその他サイトでのアイテムの購入時に利用されたポイントの利用額に任意の定数cを乗算した値よりも大きいことを表している。
なお、プロセッサの処理能力に制限がある場合、付与ポイント決定部118は、全ユーザ数のデータの一部のデータについて目的関数fの最適解を求める処理を行って、一部データの処理結果を全データの処理結果として扱ってもよい。一部のデータとは、例えば、統計学的に十分信頼できる程度のサンプル数(ユーザ数)を含むデータである。具体的には、全ユーザ数が1千万人程度であれば、一部のデータに、50万人程度のユーザ数が含まれていればよい。
また、付与ポイント決定部118は、更に、整数計画法の一手法として、線形計画緩和の手法を用いて、割り振るポイントの配分の最適解を求めてもよい。本実施形態における線形計画緩和とは、上述したポイント配分用ベクトルVの要素eを、0から1の間において取り得る小数(例えば0.5など)として扱いながら、ポイントごとの最適解を探し、最終的な計算過程において、解が整数であるという条件を追加して、小数となっている変数(例えば行動確率×要素値)を整数に変換し、変換した整数のうち、最も大きい整数を最適解として求める手法である。このとき、個々の要素が小数であっても要素の和は1であるものとする。
図18は、線形計画緩和を説明するための図である。図示のように、例えば、500、300、100、3、0の計5種類のポイントを付与した場合、付与ポイント決定部118は、ユーザIDごとに、上記5種類のポイントごとの行動確率を求め、最適化計算を行って、最適化する過程で求めた変数(行動確率×要素値)が極端に小さくなったり、要素値が0に近似できる程度に小さくなったりする場合には、そのポイントは考慮せずに残りのポイントで再度、最適化計算を行う。
より具体的には、500ポイントの行動確率P1に乗算するベクトル要素e1の値が0.30、300ポイントの行動確率P2に乗算するベクトル要素e2の値が0.20、100ポイントの行動確率P3に乗算するベクトル要素e3の値が0.29、3ポイントの行動確率P4に乗算するベクトル要素e4の値が0.01、0ポイントの行動確率P5に乗算するベクトル要素e5の値が0.20であった場合、付与ポイント決定部118は、3ポイントを付与することは考慮せずに、残りの500ポイント、300ポイント、100ポイント、0ポイントで再度、最適化計算を行う。これによって、残りのポイントに対するベクトル要素eの配分比率を変更することができる。なお、いずれかのポイントに配分するベクトル要素eの値が0であった場合、再度の計算は省略してよい。なお、図18の例において、いずれかのベクトル要素eは0であってもよい。この場合、付与ポイント決定部118は、このベクトル要素eが乗算される対象のポイントを、最適化計算の対象から除外してよい。
また、上述した例では、500、300、100、3、0の計5種類のポイントが用意されているものとして説明したがこれに限られない。例えば、400ポイントや200ポイントといった他の種類のポイント(過去に付与したことがないポイント)を追加してもよいし、上記いずれかを省略してもよい。
また、過去に付与したことがないポイント(例えば400ポイントや200ポイントなど)の行動確率については、線形補完や直線近似補完、曲線近似補完などを行うことで補完してもよい。例えば、付与ポイント決定部118は、未付与の200ポイントの行動確率を、線形補完を行って推定する場合、300ポイントの行動確率と、100ポイントの行動確率との平均を、未付与の200ポイントの行動確率として導出してよい。
これによって、付与ポイント決定部118は、過去に付与されたことがないポイントとして、例えば、450、350、250、50、3、0ポイントといった種々のポイントを組み合わせて目的関数fを最適化(例えば最大化)する処理を繰り返し行い、最適なポイントの組み合わせを探索することができる。上述した例のように、実際に付与されたことがあるポイントとして、500、300、100、3、0ポイントの履歴しかない場合においても、これらの5種類のポイントのそれぞれの予測モデルに従って導出された5つの行動確率を用いて、過去に付与されたことがないポイントを線形補完等によって求めることができる。例えば、付与ポイント決定部118は、0ポイントを下限とし、500ポイントを上限とした範囲の中でとりうるすべての自然数(0、1、2、3、…、499、500)をポイントとして扱い、これらの501種類のポイントに対応した行動確率を線形補完等によって求める。そして、付与ポイント決定部118は、ユーザIDごとに、501種類のポイントの中から目的関数fを最大化し、且つ制約条件を満たすポイントを選択して、選択したポイントをユーザに付与することを決定する。この場合、ポイント配分用ベクトルVの要素eの要素数は501個であり、いずれか1個の要素の値だけ1となる。なお、補完によって補うポイントの種類は、501個に限らず、例えば、上記0から500までの範囲において5刻みの101種類(0、5、10、…、495、500)にしてもよい。
また、付与ポイント決定部118は、500、300、100、3、0の各ポイントの行動確率と、各ポイント値とを、最小二乗法などを用いて、ポイント値を変数として行動確率を返す近似関数を導出してもよい。この場合、付与ポイント決定部118は、導出した関数に未付与のポイント値を代入することで、その未付与のポイントに対応した行動確率を求めてよい。
このようにして、線形補完や直線近似補完などによって、過去に付与されたことがないポイントに対応する行動確率を推定することができる。この結果、過去に付与されたことがない種類のポイント(額の異なるポイント)を今回新たに付与しようとする場合、新たな種類のポイントをユーザに付与することを想定した場合の目的関数fが最大になるように、付与するポイントの好適な組み合わせを導出することができる。
また、付与ポイント決定部118は、線形計画緩和手法の他に、例えば、ラグランジュ緩和手法を用いてもよいし、アニーリング法、タブー探索法、ランダム多スタート局所最適化法、遺伝的アルゴリズムなどのヒューリステクス手法を用いることで、購入者数または購入金額などの目的関数を最適化にするように各ユーザに割り振るポイントの配分を決定してよい。
次に、付与ポイント決定部118は、整数計画法を用いて決定したポイントが付与されたことを示す案内を、通信部102を介してユーザに通知する(S110)。例えば、付与ポイント決定部118は、アカウント情報138を参照して、ユーザIDに対応付けられたメールアドレスに電子メールを送信することで、ポイント付与の案内をユーザに通知する。このメールには、例えば、ポイントを受け取ることが可能なウェブサイトへのURL(Uniform Resource Locator)が記載されている。このURL先のウェブサイトは、例えば、販売サイトで使用されるユーザIDを入力することでログインがなされるウェブサイトであってよい。例えば、ユーザは、端末装置10を操作して、このURLから所定のウェブサイトにアクセスすると、ログイン時に入力されたユーザIDに対して割り振られたポイントが付与される。これによって、アカウント情報138において、ユーザIDに対応するポイント残高に、付与されたポイントが加算される。なお、付与ポイント決定部118は、電子メールの代わりに、プッシュ通知などによってユーザが操作可能な端末装置10に案内を通知してもよいし、ユーザが販売サイトにおいて予め設定した住所にダイレクトメールを郵送したりすることで、案内を通知してもよい。なお、付与ポイント決定部118は、ユーザごとに決定した最適なポイントを、ユーザの受け取る意思に関わらず付与し、事後的に、ポイントが付与されたことをメール等でユーザに通知してもよい。
以上説明した第1の実施形態によれば、互いに異なる複数のサービスのうちターゲットとするサービスを利用して所定の行動に至りやすい対象ユーザに対して、複数のサービス間において利用可能な複数のインセンティブのうち、いずれか一つ以上のインセンティブを付与することを決定するため、効果的にインセンティブを付与することができる。
例えば、オークションやショッピングなどの互いに異なる複数のサービス間で共通のポイントが相互に利用可能な場合、それらの複数のサービス間で集客力に差異があると、ターゲットとするサービスにおいてユーザにポイントを付与しても、そのターゲットのサービスの集客力が他のサービスよりも弱ければ、付与したポイントが集客力のより強い他のサービスで利用されてしまい、ターゲットのサービスを介してアイテムの購入などを促す目的が達成されず、ポイントを付与することが無駄になってしまう場合がある。
また、単に、ターゲットのサービスを介して所定の行動に至りやすいユーザ(例えば、オークションで落札確率の高いユーザ)にポイントを付与しても、そのユーザが他のサービスでも所定の行動に至りやすい(例えば、ショッピングでの購入確率も高い)場合、ターゲットのサービスで付与したポイントが他のサービスで利用されてしまう場合がある。
これに対して、本実施形態では、例えば、ターゲットとするサービスでの所定の行動の行動確率と、ターゲットとしない他のサービスでの所定の行動の行動確率との差分に基づく関数を目的関数fとし、その目的関数fが最大となるように、ポイントを付与するユーザを決定するため、ターゲットとするサービスに対しては所定の行動に至りにくく、ターゲットとしないサービスに対しては所定の行動に至りやすいユーザや、ターゲットとするサービスとターゲットとしないサービスとの双方で所定の行動に至りやすいユーザについては、ポイントを付与する対象から除外することができる。この結果、効果的にインセンティブを付与することができる。
また、上述した第1の実施形態によれば、性別、年齢、住所といったユーザの属性を素性として予測モデルを生成するため、例えば、男性の方がオークションの利用頻度が高いといった傾向があった場合、その傾向を予測モデルに反映することができるため、オークション利用者のうち、男性利用者の方がより多くのポイントを付与するといった運用を行うことができる。
<第2の実施形態>
以下、第2の実施形態について説明する。上述した第1の実施形態では、互いに異なる複数のサービスのうちターゲットとするサービスを利用して所定の行動に至りやすい対象ユーザに対してインセンティブを付与するものとして説明した。これに対して、第2の実施形態では、互いに異なる複数の商品またはサービスのうちターゲットとする商品またはサービスについて所定の行動に至りやすい対象ユーザに対してインセンティブを付与する点で上述した第1実施形態と相違する。ターゲットとする商品またはサービス(すなわちアイテム)とは、例えば、複数のアイテムのうち、特定のカテゴリのアイテム、または特定の金額帯(価格帯)のアイテムである。以下、第1の実施形態との相違点を中心に説明し、第1の実施形態と共通する点については説明を省略する。なお、第2の実施形態の説明において、第1の実施形態と同じ部分については同一符号を付して説明する。
第2の実施形態における目的関数fは、例えば、ポイントが付与されたユーザが、ターゲットとするアイテムについて所定の行動に至る行動確率と、ターゲットとしないアイテムについて所定の行動に至る行動確率との差分に基づく関数である。
例えば、ターゲットとするアイテムを、特定の金額帯Aのアイテムとする場合、目的関数fは、数式(19)によって表されてよい。特定の金額帯Aは、例えば、ユーザに付与したポイントの利用額よりも大きい金額帯である。より具体的には、500円相当の500ポイントを付与した場合、特定の金額帯Aは、501円以上の金額帯となる。また、特定の金額帯Aは、付与したポイントの利用額に関わらず、単に、○○円以上、といったように予め決められた金額帯であってもよい。
第2の実施形態における確率予測部116は、数式(19)に示すように、各ユーザに付与されたポイントごとに、ターゲットとする金額帯Aでのアイテムの購入確率と、その他金額帯(例えば金額帯BやC、D)でのアイテムの購入確率との差分とを導出し、それらの差分の総和を導出する。例えば、金額帯Aを0円から1000円までとした場合、金額帯Bを、1001円から5000円までとし、金額帯Cを、5001円から10000円までとし、金額帯Dを、10001円から50000円までとする、といったように決めてよい。例えば、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントが其々付与されている場合、確率予測部116は、500ポイント、300ポイント、100ポイント、3ポイント、0ポイントの其々について、ターゲットとする金額帯Aでのアイテムの購入確率と、その他金額帯でのアイテムの購入確率との差分との差分を求める。そして、確率予測部116は、ポイントごとに求めた互いに異なる金額帯間の行動確率の差分の総和を全て足し合わせものを、目的関数fとして導出する。
なお、数式(19)では、特定の金額帯のアイテムをターゲットのアイテムとしているがこれに限られず、例えば、特定のカテゴリのアイテムをターゲットのアイテムとした数式であってよい。特定のカテゴリは、例えば、商品券や旅行券、金券といった換金性の高いアイテムが分類されるカテゴリ以外のカテゴリであってよいし、継続して購入されやすいカテゴリ(例えば日用品や食料品など)であってもよい。この場合、例えば、数式(19)において、ターゲットとする金額帯Aのアイテムの購入確率を、ターゲットとするカテゴリAのアイテムの購入確率、ターゲットとしない金額帯B、C、D、…のアイテムの購入確率を、ターゲットとしないカテゴリB、C、D、…のアイテムの購入確率と読み替えてよい。
また、第2の実施形態における目的関数fは、ポイントが付与されたユーザが、ターゲットとするアイテムについて所定の行動に至った場合に得られる成果と、ターゲットとしないアイテムについて所定の行動に至った場合に得られる成果との差分に基づく関数であってもよい。第2の実施形態における「成果」は、例えば、所定の行動がアイテムの購入であれば、第1の実施形態と同様に、アイテムの購入金額のような金銭的な成果であってよい。この場合、例えば、数式(19)において、第1の実施形態において例示した数式(3)のように、ターゲットとする金額帯Aのアイテムの購入確率を、ターゲットとする金額帯Aのアイテムの購入確率、ターゲットとしない金額帯B、C、D、…のアイテムの購入確率を、ターゲットとしない金額帯B、C、D、…のアイテムの購入金額と読み替えてよい。
また、第2の実施形態における目的関数fは、ポイントが付与されたユーザが、ターゲットとするアイテムについて所定の行動に至った場合に、その行動に伴って利用されたポイントの利用率と、ターゲットとしない他のアイテムについて所定の行動に至った場合に、その行動に伴って利用されたポイントの利用率との差分に基づく関数であってもよい。この場合、例えば、数式(19)において、第1の実施形態において例示した数式(4)のように、ターゲットとする金額帯Aのアイテムの購入確率を、ターゲットとする金額帯Aのアイテムの購入時に利用されたポイントの利用率、ターゲットとしない金額帯B、C、D、…のアイテムの購入確率を、ターゲットとしない金額帯B、C、D、…のアイテムの購入時に利用されたポイントの利用率と読み替えてよい。
なお、目的関数fは、ポイントの利用率に限られず、ポイントの利用額であってもよい。この場合、例えば、数式(19)において、第1の実施形態において例示した数式(5)のように、ターゲットとする金額帯Aのアイテムの購入確率を、ターゲットとする金額帯Aのアイテムの購入時に利用されたポイントの利用額、ターゲットとしない金額帯B、C、D、…のアイテムの購入確率を、ターゲットとしない金額帯B、C、D、…のアイテムの購入時に利用されたポイントの利用額と読み替えてよい。
第2の実施形態における確率予測部116は、上述した目的関数fが最適となるようなユーザの行動確率を予測する。例えば、所定の行動がアイテムの購入であり、目的関数fが数式(19)に示すようなアイテム間での購入確率の差分に基づく関数である場合、確率予測部116は、目的関数fが最大化するようなユーザの行動確率を予測する。
また、第2の実施形態では、第1の実施形態において例示した制約条件の(4)が、(i)ターゲットとするアイテムについて所定の行動に至る行動確率が、ターゲットとしないアイテムについて所定の行動に至る行動確率よりも大きいこと、(ii)ターゲットとするアイテムについて所定の行動に至った場合に得られる成果(例えば購入金額など)が、ターゲットとしないアイテムについて所定の行動に至った場合に得られる成果よりも大きいこと、(iii)ターゲットとするアイテムについて所定の行動に至った場合の所定の行動に伴うインセンティブの利用結果(例えば、ポイントの利用率や利用額)が、ターゲットとしないアイテムについて所定の行動に至った場合の所定の行動に伴うインセンティブの利用結果よりも大きいこと、のいずれかを満たすという条件である。
例えば、ターゲットとするアイテムを特定の金額帯のアイテムとし、目的関数fとして上述した数式(19)を用いる場合、第2の実施形態における付与ポイント決定部118は、数式(20)を満たすようにユーザに割り振るポイントを決定する。
以上説明した第2の実施形態によれば、互いに異なる複数のアイテムのうちターゲットとするアイテムについて所定の行動に至りやすい対象ユーザに対して、複数のアイテム間において利用可能な複数のインセンティブのうち、いずれか一つ以上のインセンティブを付与することを決定するため、効果的にインセンティブを付与することができる。
一般的に、ユーザを限定せずにポイントを付与した場合、商品券や旅行券、金券などの換金性が高く、現金への交換がしやすい商品(特定のカテゴリのアイテム)の購入に対してポイントが利用されたり、購入金額が少額の商品に対して、その購入金額と同額のポイントが使用され、現金での支払いが生じなかったりする(自腹を切らない)場合があった。このような方法でポイントを利用するユーザは、サービスを継続して利用せずに、ポイントが付与されたときだけサービスを利用したり、ポイントを付与しても自費が少なくなるような少額の商品を購入したりする傾向がある。このようなユーザにポイントを付与した場合、ターゲットとするアイテムをユーザに購入させるというような目的が達成されず、ポイントを付与することの費用対効果が小さくなりやすい。
これに対して、第2の実施形態では、上記のような傾向を有するユーザを除くユーザ、すなわち、特定の金額帯や特定のカテゴリのアイテムをターゲットとし、そのターゲットのアイテムについては所定の行動に至りやすく、ターゲットとしないアイテムについては所定の行動に至りにくいユーザに対してインセンティブを付与するため、効果的にインセンティブを付与することができる。
<第3の実施形態>
以下、第3の実施形態について説明する。第3の実施形態では、複数のサービスの中からターゲットとするサービスを選択すると共に、複数のアイテムの中からターゲットとするアイテムを選択する点で上述した第1の実施形態または第2の実施形態と相違する。以下、第1の実施形態または第2の実施形態との相違点を中心に説明し、第1の実施形態または第2の実施形態と共通する点については説明を省略する。なお、第3の実施形態の説明において、第1の実施形態または第2の実施形態と同じ部分については同一符号を付して説明する。
第3の実施形態における目的関数fは、例えば、インセンティブが付与されたユーザが、ターゲットとするサービスにおいて扱われる(例えば販売される)アイテムの中でターゲットとするアイテム(特定の金額帯または特定のカテゴリのアイテム)について所定の行動に至る行動確率と、ターゲットとしないサービスにおいて扱われるアイテムの中でターゲットとするアイテムについて所定の行動に至る行動確率との差分に基づく関数である。
また、第3の実施形態における目的関数fは、例えば、インセンティブが付与されたユーザが、ターゲットとするサービスにおいて扱われるアイテムの中でターゲットとするアイテムについて所定の行動に至る行動確率と、ターゲットとするサービスおよびターゲットとしないサービスを問わず、ターゲットとしないアイテムについて所定の行動に至る行動確率との差分に基づく関数であってもよい。
なお、第3の実施形態における目的関数fの「所定の行動に至る行動確率」は、第1の実施形態や第2の実施形態と同様に、所定の行動に至った場合に得られた購入金額などの成果や、所定の行動に伴うインセンティブの利用額、所定の行動に伴うインセンティブの利用率であってもよい。
図19から図21は、第3の実施形態における目的関数fを説明するための図である。例えば、図19に示すように、オークションやショッピングなどのサービスがX、Y、Zの3種類存在し、各サービスを介して販売されるアイテム(図中では商品)が、1000円以下の金額帯、1001円から5000円までの金額帯、5001円から10000円までの金額帯、10001円から50000円までの金額帯、50001円以上の金額帯の合計5種類あるものとする。なお、ターゲットとするアイテムを、特定のカテゴリのアイテムとする場合、図中の各金額帯を、カテゴリと読み替えてよい。
例えば、ターゲットとするサービスを「サービスX」とし、更に、ターゲットとするアイテムを「1000円以下の金額帯のアイテム」とした場合、目的関数fは、図20に示すように、サービスXで扱われる1000円以下の金額帯のアイテムについての所定の行動に至る行動確率から、サービスYおよびZで扱われる1000円以下の金額帯のアイテム(図中ハイライト表示した金額帯のアイテム)についての所定の行動に至る行動確率を減算した差分に基づく関数となる。
また、ターゲットとするサービスを「サービスX」とし、更に、ターゲットとするアイテムを「1000円以下の金額帯のアイテム」とした場合、目的関数fは、図21に示すように、サービスXで扱われる1000円以下の金額帯のアイテムについての所定の行動に至る行動確率から、サービスXで扱われる1000円以下の金額帯以外の他の金額帯のアイテムについての所定の行動に至る行動確率と、サービスYおよびZで扱われる全ての金額帯のアイテムについての所定の行動に至る行動確率との和を減算した差分に基づく関数であってよい。
以上説明した第3の実施形態によれば、複数のサービスの中からターゲットとするサービスを選択すると共に、複数のアイテムの中からターゲットとするアイテムを選択して、それらの双方のターゲットに対して所定の行動に至りやすい対象ユーザに対してインセンティブを付与することを決定するため、第1の実施形態または第2の実施形態に比べて、更に効果的にインセンティブを付与することができる。
<第4の実施形態>
以下、第4の実施形態について説明する。上述した第1の実施形態から第3の実施形態では、ユーザが所定の行動(アイテムの購入など)に至る前に、インセンティブが付与されるものとして説明した。これに対して、第4の実施形態では、ユーザが所定の行動に至る前にはインセンティブが付与されず、所定の行動に至ればインセンティブが付与されることがユーザに事前に通知される上述した第1の実施形態から第3の実施形態と相違する。以下、第1の実施形態から第3の実施形態との相違点を中心に説明し、第1の実施形態から第3の実施形態と共通する点については説明を省略する。なお、第4の実施形態の説明において、第1の実施形態から第3の実施形態と同じ部分については同一符号を付して説明する。
図22は、インセンティブが付与されることが事前に通知される様子を模式的に示す図である。図示の例では、販売サイトおけるアイテムの購入ページを表している。このようなアイテムの購入ページには、アイテムの価格や写真と共に、そのアイテムを購入した場合に付与されるポイント額(図中PNT)が表示される。これによって、アイテムの購入ページにアクセスしたユーザに対して、このページで紹介されているアイテムを購入すれば、その購入額に応じたポイントが付与されることを、アイテムが購入されるよりも前に通知することができる。この結果、アイテム購入ページにアクセスしたユーザの購買意欲を高めることができる。ユーザが、ポイント付与が事前に通知されているアイテムを購入した場合、すなわち、所定の行動に至った場合、そのユーザには、アイテムの購入後に、通知されたポイント(図示の例では150ポイント)が付与される。このポイントは、例えば、次回以降のアイテム購入に利用できるものとする。
なお、ポイントなどのインセンティブが付与されるタイミングは、少なくとも所定の行動がなされた以降(例えばアイテムの購入以降)であればよく、例えば、行動した日の翌日や、1か月後、2年後など任意のタイミングであってよい。また、図22の例では、不特定多数のユーザが閲覧可能なウェブページ上に、付与ポイント額を掲載することで、アイテム購入の前にインセンティブが付与されることを通知しているがこれに限られず、例えば、各ユーザのメールアドレスにメールを配信することで、不特定多数ではなく個別にインセンティブが付与されることを通知してもよい。
図23は、第4の実施形態における制御部110による一連の処理の一例を示すフローチャートである。まず、取得部112は、通信部102を介して、端末装置10またはサーバ装置20から、行動履歴情報132および素性情報134を取得し(S200)、取得したこれらの情報を記憶部130に記憶させる。
次に、モデル生成部114は、取得部112により取得された行動履歴情報132および素性情報134に基づいて、ポイントごとのユーザの行動傾向をモデル化した予測モデルを生成する(S202)。例えば、二値分類問題を、アイテムを購入するかどうかという問題と捉えた場合、SVMの正例とする素性は、アイテムの購入に応じてポイントが付与されることが事前に通知された後にアイテムを購入したユーザの素性を示す特徴ベクトルとなり、SVMの負例とする素性は、アイテムの購入に応じてポイントが付与されることが事前に通知された後にアイテムを購入しなかったユーザの素性を示す特徴ベクトルとなる。
次に、モデル生成部114は、教師データを用いて生成した各ポイントでの予測モデルに従って、学習データであるユーザの素性を正例負例のいずれかに分類し、分類した各素性のスコアを導出する(S204)。
次に、確率予測部116は、過去のユーザの行動実績に基づいて、目的関数fを最適化(最大化)にするためのユーザの行動確率を予測する(S206)。例えば、ある複数のユーザに、「所定の行動をとればインセンティブが付与される」ということを事前に通知した場合、第4の実施形態における目的関数fは、通知を受けたユーザが、ターゲットとするサービスを利用して所定の行動に至る行動確率と、ターゲットとしないサービスを利用して所定の行動に至る行動確率との差分に基づく関数であってよい。第4の実施形態における目的関数fの「所定の行動に至る行動確率」は、他の実施形態と同様に、所定の行動に至った場合に得られた購入金額などの成果や、所定の行動に伴うインセンティブの利用額、所定の行動に伴うインセンティブの利用率であってもよい。
例えば、確率予測部116は、シグモイド関数のような確率密度関数を予測し、この予測した関数に、モデル生成部114により導出されたスコアを代入することで、ユーザの将来の行動確率を予測する。
次に、付与ポイント決定部118は、確率予測部116により予測された、ユーザごとの各ポイントでの行動確率に基づいて、ポイントを付与可能な予算内で、上述した目的関数fを最適化(例えば最大化)にするように各ユーザに割り振るポイントの配分を決定する(S208)。
次に、付与ポイント決定部118は、整数計画法を用いて決定した配分に応じたポイント額を、通信部102を介してサーバ装置20に送信する(S210)。これを受けて、サーバ装置20は、自身が提供するウェブサイトやアプリケーションを介して、付与ポイント決定部118により決定された額のポイントが所定の行動を取った場合に付与されることを、ユーザに通知する。例えば、サーバ装置20は、ウェブサイト上で、「アイテムを購入すると、購入額の10[%]分のポイントが付与されます」等といった文字を表示する。サーバ装置20は、ユーザにポイントが付与されることを通知した後、そのユーザが所定の行動を取った場合、その旨を示す情報を情報処理装置100に送信する。
次に、情報処理装置100の制御部110は、サーバ装置20からの情報の受信有無に基づいて、ポイントの付与が通知されたユーザによって所定の行動がなされたか否かを判定し(S212)、所定の行動がなされたと判定した場合、ポイント付与の案内を、通信部102を介してユーザの端末装置10に送信する(S214)。
以上説明した第4の実施形態によれば、インセンティブが付与されることが事前に通知されたユーザのうち、互いに異なる複数のサービスのうちターゲットとするサービスを利用して所定の行動に至りやすい、または互いに異なる複数のアイテムのうちターゲットとするアイテムについて所定の行動に至りやすい対象ユーザに対してインセンティブを付与することを決定するため、上述した第1の実施形態から第3の実施形態と同様に、効果的にインセンティブを付与することができる。
<その他の実施形態>
以下、その他の実施形態として、上述した実施形態の変形例について説明する。上述した実施形態では、整数計画法を行うことによって、ユーザに割り振るポイントを決定したがこれに限られない。例えば、上述したヒューリスティック手法を用いて、ユーザに割り振るポイントを決定してもよい。付与ポイント決定部118は、例えば、ある任意のポイントを暫定的な最適解(近似解)と仮定し、この最適解を変更したとき、制約条件を満たしながら、目的関数fがより大きくなるポイントを探索する。この手法は、所謂局所探索と呼ばれる手法である。例えば、付与ポイント決定部118は、3ポイントを暫定的な最適解として仮定し、3ポイントから100ポイントに変更したときの目的関数fの値が3ポイントでの目的関数fの値よりも大きければ、暫定的な最適解を3ポイントから100ポイントに変更する。さらに、付与ポイント決定部118は、300ポイント、500ポイントといったように対象となるポイントを順次変更しながら、目的関数fの値がより大きくなるものを探索する。これによって、付与ポイント決定部118は、最も目的関数fの値が大きくなったポイントを最適解として導出する。なお、上述したヒューリスティック手法は、あくまでも一例であり、他の手法を用いてもよい。
<ハードウェア構成>
上述した実施形態の情報処理システム1に含まれる複数の装置のうち、少なくとも情報処理装置100は、例えば、図24に示すようなハードウェア構成により実現される。図24は、実施形態の情報処理装置100のハードウェア構成の一例を示す図である。
情報処理装置100は、NIC100−1、CPU100−2、RAM100−3、ROM100−4、フラッシュメモリやHDDなどの二次記憶装置100−5、およびドライブ装置100−6が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置100−6には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置100−5、またはドライブ装置100−6に装着された可搬型記憶媒体に格納されたプログラムがDMAコントローラ(不図示)などによってRAM100−3に展開され、CPU100−2によって実行されることで、制御部110が実現される。制御部110が参照するプログラムは、ネットワークNWを介して他の装置からダウンロードされてもよい。
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。