(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-04-14
(45)【発行日】2022-04-22
(54)【発明の名称】予測システム、予測方法、及びプログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20220415BHJP
G06Q 10/06 20120101ALI20220415BHJP
【FI】
G06Q50/10
G06Q10/06
(21)【出願番号】P 2021531731
(86)(22)【出願日】2020-06-26
(86)【国際出願番号】 JP2020025266
【審査請求日】2021-06-03
【早期審査対象出願】
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】特許業務法人はるか国際特許事務所
(72)【発明者】
【氏名】友田 恭輔
【審査官】池田 聡史
(56)【参考文献】
【文献】特表2017-527037(JP,A)
【文献】特開2020-042651(JP,A)
【文献】特開2019-082801(JP,A)
【文献】特開平10-269294(JP,A)
【文献】特開2001-344534(JP,A)
【文献】「マツモトキヨシHD+IBM」 IBM SPSS Modeler + IBM Campaign,日経 xTECH EXPO 2019,2019年10月09日,pp.1~4
【文献】久保田進彦,“顧客リテンション”,季刊マーケティングジャーナル,社団法人日本マーケティング協会,2000年03月27日,第76号,pp.105~115
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
所定のサービスにおける所望の結果
である、前記サービスに関する基準を満たすことの得やすさに影響
する情報であって、前記サービスで利用するシステムのリソースを示す情報の候補を複数取得する候補取得手段と、
前記サービスで利用するシステムが依存する他のシステムの設定と当該他のシステムに予測される状況との少なくとも一方と、前記候補と、に基づいて、前記候補ごとに、前記
基準を
満たすか否かを予測する予測手段と、
前記
基準を
満たすと予測された前記候補を特定する特定手段と、
を含む予測システム。
【請求項2】
所定のサービスにおける所望の結果である、ユーザが前記サービスの利用を継続することの得やすさに影響する情報であって、前記サービスのユーザに付与される特典を示す情報の候補を複数取得する候補取得手段と、
所定の計算方法に基づいて、前記サービスからの前記ユーザの離反率を計算する離反率計算手段と、
前記離反率が低いほど、前記ユーザに付与可能な前記特典の最大値が高くなるように、前記最大値を計算する最大値計算手段と、
所定の予測方法に基づいて、前記候補ごとに、前記ユーザが前記サービスの利用を継続するか否かを予測する予測手段と、
前記最大値の範囲内で、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する特定手段と、
を含む予測システム。
【請求項3】
前記情報が示す値が高いほど、前記結果を得やすくなり、かつ、前記サービスに関するコストが高くなり、
前記特定手段は、前記結果を得ると予測され、かつ、前記コストが相対的に低い前記候補を特定する、
請求項1
又は2に記載の予測システム。
【請求項4】
前記特定手段は、前記結果を得ると予測される前記候補のうち、前記コストが最小の前記候補を特定する、
請求項
3に記載の予測システム。
【請求項5】
前記予測手段は、前記情報を入力とし、前記結果を得るか否かを出力とする訓練データに基づいて学習された予測モデルを利用して、前記候補ごとに、前記結果を得るか否かを予測する、
請求項1~
4の何れかに記載の予測システム。
【請求項6】
前記離反率計算手段は、前記ユーザの属性、前記ユーザによる前記サービスの利用状況、及び前記ユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、前記離反率を計算する、
請求項
2に記載の予測システム。
【請求項7】
前記予測システムは、所定の計算方法に基づいて、前記ユーザの期待利益を計算する期待利益計算手段を更に含み、
前記特定手段は、前記期待利益に基づいて、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する、
請求項
2又は6に記載の予測システム。
【請求項8】
前記予測システムは、前記期待利益に基づいて、前記ユーザに付与可能な前記特典の最大値を計算する最大値計算手段を更に含み、
前記特定手段は、前記期待利益に応じた前記最大値の範囲内で、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する、
請求項
7に記載の予測システム。
【請求項9】
前記予測手段は、前記サービスからの前記ユーザの離反率、前記ユーザの属性、前記ユーザによる前記サービスの利用状況、及び前記ユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、前記ユーザが前記サービスの利用を継続するか否かを予測する、
請求項
2、6、7、又は8に記載の予測システム。
【請求項10】
所定のサービスにおける所望の結果
である、前記サービスに関する基準を満たすことの得やすさに影響
する情報であって、前記サービスで利用するシステムのリソースを示す情報の候補を複数取得する候補取得ステップと、
前記サービスで利用するシステムが依存する他のシステムの設定と当該他のシステムに予測される状況との少なくとも一方と、前記候補と、に基づいて、前記候補ごとに、前記
基準を
満たすか否かを予測する予測ステップと、
前記
基準を
満たすと予測された前記候補を特定する特定ステップと、
を含む予測方法。
【請求項11】
所定のサービスにおける所望の結果である、ユーザが前記サービスの利用を継続することの得やすさに影響する情報であって、前記サービスのユーザに付与される特典を示す情報の候補を複数取得する候補取得ステップと、
所定の計算方法に基づいて、前記サービスからの前記ユーザの離反率を計算する離反率計算ステップと、
前記離反率が低いほど、前記ユーザに付与可能な前記特典の最大値が高くなるように、前記最大値を計算する最大値計算ステップと、
所定の予測方法に基づいて、前記候補ごとに、前記ユーザが前記サービスの利用を継続するか否かを予測する予測ステップと、
前記最大値の範囲内で、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する特定ステップと、
を含む予測方法。
【請求項12】
所定のサービスにおける所望の結果
である、前記サービスに関する基準を満たすことの得やすさに影響
する情報であって、前記サービスで利用するシステムのリソースを示す情報の候補を複数取得する候補取得手段、
前記サービスで利用するシステムが依存する他のシステムの設定と当該他のシステムに予測される状況との少なくとも一方と、前記候補と、に基づいて、前記候補ごとに、前記
基準を
満たすか否かを予測する予測手段、
前記
基準を
満たすと予測された前記候補を特定する特定手段、
としてコンピュータを機能させるためのプログラム。
【請求項13】
所定のサービスにおける所望の結果である、ユーザが前記サービスの利用を継続することの得やすさに影響する情報であって、前記サービスのユーザに付与される特典を示す情報の候補を複数取得する候補取得手段、
所定の計算方法に基づいて、前記サービスからの前記ユーザの離反率を計算する離反率計算手段、
前記離反率が低いほど、前記ユーザに付与可能な前記特典の最大値が高くなるように、前記最大値を計算する最大値計算手段、
所定の予測方法に基づいて、前記候補ごとに、前記ユーザが前記サービスの利用を継続するか否かを予測する予測手段、
前記最大値の範囲内で、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する特定手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、予測システム、予測方法、及びプログラムに関する。
【背景技術】
【0002】
従来、サービスにおいて所望の結果を得るための技術が知られている。例えば、特許文献1には、ネットワークを介してITリソースを提供するクラウドサービスにおいて、事業者が顧客に提供すべきクラウドサービスのサービスレベルアグリーメントを締結し、ITリソースを顧客に提供するサービスレベル管理システムが記載されている。このサービスレベル管理システムでは、クラウドサービスにおいてサービスレベルアグリーメントを満たすことが、所望の結果を得ることに相当する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1の技術では、サービスレベルアグリーメントを満たすために必要なITリソースが、人間の経験によって決定されており、サービスレベルアグリーメントを満たさないITリソースが採用されることがあった。このため、従来の技術では、サービスにおいて所望の結果を得ることができないことがあった。
【0005】
本開示の目的は、サービスにおいて所望の結果を得ることである。
【課題を解決するための手段】
【0006】
本開示の一態様に係る予測システムは、所定のサービスにおける所望の結果の得やすさに影響する情報の候補を複数取得する候補取得手段と、所定の予測方法に基づいて、前記候補ごとに、前記結果を得るか否かを予測する予測手段と、前記結果を得ると予測された前記候補を特定する特定手段と、を含む。
【0007】
本開示の一態様に係る予測方法は、所定のサービスにおける所望の結果の得やすさに影響する情報の候補を複数取得する候補取得ステップと、所定の予測方法に基づいて、前記候補ごとに、前記結果を得るか否かを予測する予測ステップと、前記結果を得ると予測された前記候補を特定する特定ステップと、を含む。
【0008】
本開示の一態様に係るプログラムは、所定のサービスにおける所望の結果の得やすさに影響する情報の候補を複数取得する候補取得手段、所定の予測方法に基づいて、前記候補ごとに、前記結果を得るか否かを予測する予測手段、前記結果を得ると予測された前記候補を特定する特定手段、としてコンピュータを機能させる。
【0009】
本開示の一態様によれば、前記情報が示す値が高いほど、前記結果を得やすくなり、かつ、前記サービスに関するコストが高くなり、前記特定手段は、前記結果を得ると予測され、かつ、前記コストが相対的に低い前記候補を特定する。
【0010】
本開示の一態様によれば、前記特定手段は、前記結果を得ると予測される前記候補のうち、前記コストが最小の前記候補を特定する。
【0011】
本開示の一態様によれば、前記予測手段は、前記情報を入力とし、前記結果を得るか否かを出力とする訓練データに基づいて学習された予測モデルを利用して、前記候補ごとに、前記結果を得るか否かを予測する。
【0012】
本開示の一態様によれば、前記情報は、前記サービスで利用するシステムのリソースを示し、前記結果は、前記サービスに関する基準を満たすことであり、前記予測手段は、前記候補ごとに、前記基準を満たすか否かを予測し、前記特定手段は、前記基準を満たすと予測された前記候補を特定する。
【0013】
本開示の一態様によれば、前記予測手段は、前記サービスで利用するシステムの設定、当該システムに予測される状況、当該システムが依存する他のシステムの設定、及び当該他のシステムに予測される状況のうちの少なくとも1つと、前記候補と、に基づいて、前記基準を満たすか否かを予測する。
【0014】
本開示の一態様によれば、前記情報は、前記サービスのユーザに付与される特典を示し、前記結果は、前記ユーザが前記サービスの利用を継続することであり、前記予測手段は、前記候補ごとに、前記ユーザが前記サービスの利用を継続するか否かを予測し、前記特定手段は、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する。
【0015】
本開示の一態様によれば、前記予測システムは、所定の計算方法に基づいて、前記サービスからの前記ユーザの離反率を計算する離反率計算手段と、前記離反率に基づいて、前記ユーザに付与可能な前記特典の最大値を計算する最大値計算手段と、を更に含み、前記特定手段は、前記最大値の範囲内で、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する。
【0016】
本開示の一態様によれば、前記離反率計算手段は、前記ユーザの属性、前記ユーザによる前記サービスの利用状況、及び前記ユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、前記離反率を計算する。
【0017】
本開示の一態様によれば、前記予測システムは、所定の計算方法に基づいて、前記ユーザの期待利益を計算する期待利益計算手段を更に含み、前記特定手段は、前記期待利益に基づいて、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する。
【0018】
本開示の一態様によれば、前記予測システムは、前記期待利益に基づいて、前記ユーザに付与可能な前記特典の最大値を計算する最大値計算手段を更に含み、前記特定手段は、前記期待利益に応じた前記最大値の範囲内で、前記ユーザが前記サービスの利用を継続すると予測された前記候補を特定する。
【0019】
本開示の一態様によれば、前記予測手段は、前記サービスからの前記ユーザの離反率、前記ユーザの属性、前記ユーザによる前記サービスの利用状況、及び前記ユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、前記ユーザが前記サービスの利用を継続するか否かを予測する。
【発明の効果】
【0020】
本開示によれば、サービスにおいて所望の結果を得ることができる。
【図面の簡単な説明】
【0021】
【
図3】実施形態1の予測システムで実現される機能の一例を示す機能ブロック図である。
【
図4】訓練データセットのデータ格納例を示す図である。
【
図5】リソース候補データのデータ格納例を示す図である。
【
図6】実施形態1の予測システムで実行される処理の一例を示すフロー図である。
【
図7】実施形態2における予測システムの概要を示す図である。
【
図8】実施形態2の予測システムで実現される機能の一例を示す機能ブロック図である。
【
図9】離反率計算モデルの訓練データセットのデータ格納例を示す図である。
【
図10】期待利益計算モデルの訓練データセットのデータ格納例を示す図である。
【
図11】予測モデルの訓練データセットのデータ格納例を示す図である。
【
図12】実施形態2の特定部の処理内容を示す図である。
【
図13】実施形態2の予測システムで実行される処理の一例を示すフロー図である。
【発明を実施するための形態】
【0022】
[1.実施形態1]
以下、本開示に係る予測システムの第1の実施形態(以降、実施形態1)の例を説明する。
【0023】
[1-1.予測システムの全体構成]
図1は、予測システムの全体構成を示す図である。
図1に示すように、予測システムSは、サーバ10と端末20とを含み、これらは、インターネット又はLANなどのネットワークNに接続される。なお、
図1ではサーバ10と端末20とを1台ずつ示しているが、これらは複数台あってもよい。
【0024】
サーバ10は、サーバコンピュータである。例えば、サーバ10は、制御部11、記憶部12、及び通信部13を含む。制御部11は、少なくとも1つのプロセッサを含む。制御部11は、記憶部12に記憶されたプログラムやデータに従って処理を実行する。記憶部12は、主記憶部及び補助記憶部を含む。例えば、主記憶部はRAMなどの揮発性メモリであり、補助記憶部は、ROM、EEPROM、フラッシュメモリ、又はハードディスクなどの不揮発性メモリである。通信部13は、有線通信又は無線通信用の通信インタフェースであり、ネットワークNを介してデータ通信を行う。
【0025】
端末20は、サーバ10と通信可能なコンピュータである。例えば、端末20は、パーソナルコンピュータ、携帯情報端末(タブレット型コンピュータ及びウェアラブル端末を含む)、又は携帯電話機(スマートフォンを含む)等である。例えば、端末20は、制御部21、記憶部22、通信部23、操作部24、及び表示部25を含む。制御部21、記憶部22、及び通信部23の物理的構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であってよい。操作部24は、入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイス、キーボード、又はボタン等である。表示部25は、例えば、液晶表示部又は有機EL表示部等である。
【0026】
なお、記憶部12,22に記憶されるものとして説明するプログラム及びデータは、ネットワークNを介して供給されるようにしてもよい。また、サーバ10及び端末20の各々のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器とデータの入出力をするための入出力部(例えば、USBポート)が含まれていてもよい。例えば、情報記憶媒体に記憶されたプログラムやデータが読取部や入出力部を介して、各コンピュータに供給されるようにしてもよい。
【0027】
[1-2.実施形態1の予測システムの概要]
実施形態1の予測システムSは、所定のサービスにおいて、コストを最小限に抑えて所望の結果を得るための予測を行う。予測システムSは、任意のサービスにおける予測を行うことができる。実施形態1では、ITを利用したサービスにおける予測を例に挙げて説明する。他のサービスの適用例は、後述する第2の実施形態(以降、実施形態2)及び変形例で説明する。
【0028】
実施形態1のサービスは、コンピュータを利用して提供されるサービスである。ユーザは、自身のスマートフォンなどを操作し、ネットワークNを介してサービスを利用する。例えば、ユーザは、クラウドサービス、電子決済サービス、通信サービス、金融サービス、電子商取引サービス、又は動画配信サービスを利用する。
【0029】
コストとは、サービスにおいて発生する費用である。実施形態1では、コストが金額そのものを意味する場合を説明するが、ハードウェアの性能などのように、金額と相関関係がある他の情報がコストに相当してもよい。例えば、必要なハードウェアの性能が高いほど、そのハードウェアを用意するための金額も高くなるので、ハードウェアの性能がコストに相当してもよい。また例えば、必要なハードウェアの数が多いほど、その数のハードウェアを用意するための金額も高くなるので、ハードウェアの数がコストに相当してもよい。
【0030】
コストは、サービスに関係する者に対して発生する。実施形態1では、サービスを提供する事業者に対して発生するコストを例に挙げるが、サービスの内容によっては、コストが他の者に対して発生してもよい。例えば、コストは、事業者と協力する協力者に対して発生してもよいし、サービスを利用するユーザに対して発生してもよい。
【0031】
所望の結果とは、サービスにおいて得るべき結果である。別の言い方をすれば、所望の結果は、サービスにおける目的、課題、又は任務を達成することである。例えば、所望の結果は、サービスの品質を基準以上に保つこと、利益若しくは売上を基準以上出すこと、所定人数以上のユーザ数を確保すること、ユーザからの評価を基準以上にすること、所定数以上のアクセス数を得ること、又はコンバージョン率を所定値以上にすることである。
【0032】
実施形態1では、クラウドサービスにおけるサービスレベルアグリーメントを満たすことが、所望の結果に相当する場合を例に挙げる。所望の結果は、サービスの内容に応じた結果であればよく、所望の結果の他の例は、後述する実施形態2及び変形例で説明する。サービスレベルアグリーメントは、サービスの品質基準の取り決めである。例えば、応答速度、通信速度、稼働時間、障害件数、及び復旧時間のうちの少なくとも1つの品質基準が、サービスレベルアグリーメントに定められる。
【0033】
実施形態1では、サービスレベルアグリーメントの一例として、タイムアウトの発生率を説明する。例えば、タイムアウトの発生率が所定パーセント(例えば、3パーセント)未満であることが、サービスレベルアグリーメントとして定められている。即ち、タイムアウトの発生率が所定パーセント未満であることは、所望の結果を得ることに相当する。
【0034】
実施形態1の予測システムSは、クラウドサービスの事業者が負担するコストを抑えつつ、サービスレベルアグリーメントを満たすために必要なシステムのリソースを予測する。以降、クラウドサービスを提供するためのシステムをクラウドシステムと記載する。
【0035】
クラウドサービスのユーザは、クラウドシステムが有する機能を遠隔地から利用する。例えば、ユーザは、クラウドシステム上でデータを保管したり、クラウドシステム上のプログラムを遠隔地から実行したりする。実施形態1では、予測システムSがクラウドシステムとは異なるシステムである場合を説明するが、予測システムSがクラウドシステムに相当してもよい。
【0036】
リソースとは、クラウドシステムに含まれるハードウェア資源である。例えば、リソースは、サーバコンピュータ、CPU、メモリ、通信機器、及び通信回線のうちの少なくとも1つである。クラウドサービスを提供する事業者は、任意のリソースを選択可能である。例えば、事業者は、サーバコンピュータの台数、CPUの性能、及びメモリの容量などを自由に選択できる。事業者が選択したリソースに応じて、クラウドサービスで必要なコストも変化する。
【0037】
クラウドサービスでは、CPUの性能を高めたりメモリ容量を増やしたりすると、クラウドシステムの処理能力が高まるので、サービスレベルアグリーメントを満たしやすくなる。しかしながら、事業者が過度なリソースを選択すると無駄なコストが発生する。
【0038】
そこで、予測システムSは、事業者が選択できるリソースの候補ごとに、サービスレベルアグリーメントを満たすか否かを予測する。詳細は後述するが、予測システムSは、候補が示すハードウェア資源だけではなく、クラウドシステムの設定等の他の要素も考慮して予測を行う。ただし、事業者は、原則としてリソースを選択可能であり、設定等の他の要素は変更できないものとする。このため、実施形態1では、事業者がサービスレベルアグリーメントを満たすか否かに関与できるのは、原則としてリソースの選択のみとなる。なお、設定等の他の要素は、変更可能であってもよい。
【0039】
予測システムSは、サービスレベルアグリーメントを満たすと予測された候補のうち、相対的にコストが安い候補を特定して事業者に提案する。例えば、事業者が端末20を操作してサーバ10にアクセスすると、サーバ10の予測結果を示すリソース設定画面が表示部25に表示される。
【0040】
図2は、リソース設定画面の一例を示す図である。
図2に示すように、リソース設定画面Gには、事業者が選択可能なリソースの候補ごとに、その候補が示すハードウェア資源の詳細と、サーバ10の予測結果と、が表示される。
図2の例では、事業者はCPUとメモリの性能を選択可能である。なお、リソース設定画面Gには、タイムアウトの発生率の予測値等の詳細な予測結果が表示されてもよい。また、リソース設定画面Gには、各候補に対応するコストが表示されてもよい。
【0041】
図2の例では、6つの候補の各々が性能の降順でソートされて表示されている。「No.1」~「No.3」の候補は、サービスレベルアグリーメントを満たすとの予測結果が得られている。「No.4」~「No.6」の候補は、サービスレベルアグリーメントを満たさないとの予測結果が得られている。このため、「No.3」の候補と「No.4」の候補は、サービスレベルアグリーメントを満たすか否かの境目となる。
【0042】
リソース設定画面Gには、6つの候補の何れかを選択するための入力フォームFが表示される。事業者は、リソース設定画面Gに表示された情報を参考にして、入力フォームFから、自身のクラウドサービスで採用する候補を選択する。
【0043】
図2の例では、サービスレベルアグリーメントを満たす候補のうち、最もコストが安い「No.3」の候補が、入力フォームFにデフォルトで選択されている。事業者は、最もコストが安い「No.3」の候補を選択してもよいし、余裕を持って「No.1」又は「No.2」の候補を選択してもよい。事業者は、サービスレベルアグリーメントを見直すのであれば、「No.4」以降の候補を選択してもよい。
【0044】
以上のように、実施形態1の予測システムSは、クラウドサービスの事業者が選択可能なリソースの候補ごとに、サービスレベルアグリーメントを満たすか否かを予測する。リソース設定画面Gには、候補ごとに、予測結果が表示される。これにより、クラウドサービスにおいて、最低限のコストでサービスレベルアグリーメントを満たすリソースを設定できる。以降、予測システムSの詳細を説明する。
【0045】
[1-3.実施形態1の予測システムで実現される機能]
図3は、実施形態1の予測システムSで実現される機能の一例を示す機能ブロック図である。実施形態1では、主な機能がサーバ10で実現される場合を説明する。例えば、サーバ10は、データ記憶部100、候補取得部101、予測部102、及び特定部103を含む。データ記憶部100は、記憶部12を主として実現され、候補取得部101、予測部102、及び特定部103の各々は、制御部11を主として実現される。
【0046】
[データ記憶部]
データ記憶部100は、サーバ10が予測を行うために必要なデータを記憶する。実施形態1では、このデータの一例として、予測モデルM1、訓練データセットDS1、及びリソース候補データD1を説明する。
【0047】
予測モデルM1は、リソースの候補が入力されると、その候補に応じた予測結果を出力するモデルである。予測モデルM1には、候補と予測結果の関係が定義されている。予測モデルM1は、予測結果を出力するプログラム自体を意味してもよいし、プログラムだけでなく、パラメータ等を含むデータ全体を意味してもよい。
【0048】
実施形態1では、予測モデルM1は、機械学習を利用して作成された学習モデルである。機械学習自体は、種々の手法を利用可能であり、例えば、畳み込みニューラルネットワークであってもよいし、再帰型ニューラルネットワークであってもよい。実施形態1で予測モデルM1と記載した箇所は、機械学習のコンセプトを意味するのではなく、そのコンセプトにより生み出された電子的なデータを意味する。即ち、予測モデルM1は、プログラムとパラメータを含む。
【0049】
予測モデルM1に含まれるプログラムには、コンピュータが実行すべき処理内容(命令又は計算式)が定義されており、例えば、入力データに応じた特徴量を計算するためのコードが含まれる。予測モデルM1のパラメータは、学習によって調整される数値を含み、例えば、重み付け係数やバイアスなどの数値を含む。学習前の予測モデルM1であれば、初期値のパラメータを含み、学習済みの予測モデルM1であれば、学習によって調整されたパラメータを含む。
【0050】
例えば、入力データには、クラウドシステムの設定、クラウドシステムに予測される状況、クラウドシステムが依存する他のシステムの設定、及び当該他のシステムに予測される状況のうちの少なくとも1つと、リソースの候補と、が含まれる。実施形態1では、これらの全てが入力データに含まれる場合を説明する。入力データは、予測結果に影響を与える値(予測結果と相関関係がある値)を含めばよく、これらの全てが含まれる必要はない。例えば、クラウドシステムの設定等が入力データに含まれず、候補となるリソースの値のみが入力データに含まれていてもよい。リソースの値は、ハードウェアの性能や数である。
【0051】
クラウドシステムの設定は、サーバコンピュータなどの設定値であり、例えば、キープアライブ設定値又はタイムアウト値などである。クラウドシステムの設定は、サービスレベルアグリーメントの満たしやすさに影響する。例えば、キープアライブ設定値又はタイムアウト値が緩い値であるほど、サービスレベルアグリーメントを満たしやすくなる。
【0052】
クラウドシステムに予測される状況は、サーバコンピュータなどのリソースに対する負荷などの予測値であり、例えば、クラウドシステムに対するリクエスト数、クエリパーセカンド、又はデータ量などである。クラウドシステムに予測される状況は、サービスレベルアグリーメントの満たしやすさに影響する。例えば、リクエスト数、クエリパーセカンド、又はデータ量が少ないほど、サービスレベルアグリーメントを満たしやすくなる。
【0053】
クラウドシステムが依存する他のシステムとは、クラウドシステムと連携する他のシステムであり、例えば、データベースシステムなどである。他のシステムの設定は、他のシステムのリソースの設定値であり、例えば、キャッシュサイズなどデータベースの設定値である。他のシステムの設定は、サービスレベルアグリーメントの満たしやすさに影響する。例えば、キャッシュサイズなどのデータベースの設定値が大きいほど、サービスレベルアグリーメントを満たしやすくなる。
【0054】
他のシステムに予測される状況は、他のシステムに対する負荷などの予測値であり、例えば、他のシステムに対するリクエスト数、クエリパーセカンド、又はデータ量などである。他のシステムに予測される状況は、サービスレベルアグリーメントの満たしやすさに影響する。例えば、リクエスト数、クエリパーセカンド、又はデータ量が少ないほど、サービスレベルアグリーメントを満たしやすくなる。
【0055】
図4は、訓練データセットDS1のデータ格納例を示す図である。
図4に示すように、訓練データは、予測モデルM1に学習させる個々のデータ単位である。訓練データは、教師データ又は学習データと呼ばれることもある。例えば、訓練データには、予測モデルM1に入力されるデータと同じ形式の入力データと、当該入力データが入力された場合に予測モデルM1が出力すべき内容を示す出力データ(正解データ)とが対応付けられている。実施形態1では、入力データと出力データのペアを訓練データと記載し、訓練データの集まりを訓練データセットDS1と記載する。
【0056】
実施形態1の予測モデルM1は、クラウドサービスの設定やリソース等の情報が入力されると、サービスレベルアグリーメントを満たすか否かの予測結果を出力する。このため、
図4に示すように、訓練データに含まれる入力データは、クラウドサービスの設定やリソース等の情報を含む。訓練データに含まれる出力データは、予測結果を示す値を含む。
【0057】
例えば、出力データは、サービスレベルアグリーメントを満たすことを示す第1の値(
図4では「〇」)、又は、サービスレベルアグリーメントを満たさないことを示す第2の値(
図4では「×」)の何れかになる。これらの値は、数値で示されてもよいし、文字で示されてもよい。また、予測結果としては、サービスレベルアグリーメントを満たすか否かの2値ではなく、サービスレベルアグリーメントを満たす確率を示してもよいし、タイムアウトの予測値を示してもよい。出力データは、種々のリソースの組み合わせを実機で試した実測値に基づいて作成されてもよいし、シミュレータによって作成されてもよい。
【0058】
訓練データセットDS1は、予測システムSの管理者によって用意される。サーバ10は、訓練データセットDS1の個々の訓練データに含まれる入力データが入力されると、対応する出力データが出力されるように、予測モデルM1の学習を行う。学習自体は、機械学習で用いられている公知の手法を利用可能であり、例えば、ニューラルネットワークで用いられる誤差逆伝搬法などの学習方法を利用可能である。
【0059】
図5は、リソース候補データD1のデータ格納例を示す図である。
図5に示すように、リソース候補データD1は、リソースの候補の詳細を示すデータである。例えば、リソース候補データD1には、候補の詳細な内容(ハードウェア資源の量と性能の少なくとも一方)と、必要なコストと、の関係が示されている。例えば、リソース候補データD1は、予測システムSの管理者(例えば、クラウドベンダ)により用意される。
【0060】
実施形態1では、事業者がCPUとメモリの性能を選択するので、リソース候補データD1には、候補ごとにCPUとメモリの性能が示されている。CPUとメモリの性能は、数値で表現され、数値が高いほど性能が高い。例えば、CPUであれば、クロック周波数、キャッシュ、コア、及びスレッドといった数値が高いほど、性能が高くサービスレベルアグリーメントを満たしやすくなる。また例えば、メモリであれば、メモリ容量及びメモリクロック(データ転送レート)といった数値が高いほど、性能が高くサービスレベルアグリーメントを満たしやすくなる。
【0061】
なお、事業者がCPUとメモリの数を選択できるようにする場合には、リソース候補データD1には、候補ごとにCPUとメモリの数が示される。例えば、CPUの数が多いほど、処理能力が高くなりサービスレベルアグリーメントを満たしやすくなる。また例えば、メモリの数が多いほど、記憶容量が多くなりサービスレベルアグリーメントを満たしやすくなる。事業者が他のリソースを選択できるようにする場合も同様であり、リソース候補データD1には、候補ごとにリソースの性能及び数の少なくとも一方が示されればよい。
【0062】
図5に示すように、実施形態1では、候補が示す数値が高いほど、コストが高くなる。例えば、CPUとメモリの性能が高いほど、コストが高くなる。また例えば、CPUとメモリの数が多いほど、コストが高くなる。リソース候補データD1には、市場価格に応じたコストが格納されるようにすればよい。市場価格によっては、候補の数値が相対的に低いにも関わらず、コストが高いリソースが含まれることもある。
【0063】
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。例えば、データ記憶部100は、事業者のサービスレベルアグリーメントの内容を示すデータを記憶してもよい。また例えば、データ記憶部100は、クラウドシステムの設定値と、クラウドシステムが依存する他のシステムの設定値と、を記憶してもよい。また例えば、データ記憶部100は、予測モデルM1の学習に必要なプログラムを記憶してもよい。
【0064】
[候補取得部]
候補取得部101は、所定のサービスにおける所望の結果の得やすさに影響する情報の候補を複数取得する。所望の結果の得やすさとは、所望の結果を得る確率又は可能性である。ここでの影響とは、情報が示す値と、所望の結果の得やすさと、に相関関係があることである。例えば、情報が示す値が高いほど、所望の結果を得やすくなり、コストが高くなる。値は、数値で表現されてもよいし、リソースの性能などを示す文字で表現されてもよい。候補は、情報が示す値の候補値であり、選択肢ということもできる。
【0065】
実施形態1では、上記情報は、クラウドサービスで利用するクラウドシステムのリソースを示す。この情報は、リソースの詳細を示す情報であり、例えば、ハードウェア資源の性能と、ハードウェア資源の量と、の少なくとも一方を示す。リソース情報が示す値が高いほど、所望の結果を得やすくなり、かつ、クラウドサービスに関するコストが高くなる。
【0066】
実施形態1では、リソース候補データD1に候補が格納されているので、候補取得部101は、リソース候補データD1に格納された全部又は一部の候補を取得する。なお、候補は、リソース候補データD1に格納されているのではなく、操作部24から入力されてもよいし、候補を生成するプログラムによって生成されてもよい。
【0067】
[予測部]
予測部102は、所定の予測方法に基づいて、候補ごとに、所望の結果を得るか否かを予測する。実施形態1では、学習済みの予測モデルM1を利用した予測方法を説明するが、機械学習を利用した予測方法ではなくてもよい。例えば、所望の結果を得るか否かを予測するシミュレータを作成し、シミュレータを利用した予測方法であってもよい。他にも例えば、予測モデルM1やシミュレータではなく、数式やテーブルなどを利用した予測方法であってもよい。予測部102は、候補と所望の結果を得るか否かの予測結果との関係が定義されたデータに基づいて、予測を行えばよい。
【0068】
例えば、予測部102は、リソースを示す情報を入力とし、所望の結果を得るか否かを出力とする訓練データに基づいて学習された予測モデルM1を利用して、候補ごとに、サービスレベルアグリーメントを満たすか否かを予測する。実施形態1における所望の結果は、サービスレベルアグリーメントを満たすことでなくてもよく、サービスレベルアグリーメントとは別に定められた、クラウドサービスに関する基準を満たすことであってもよい。この場合、予測部102は、候補ごとに、クラウドサービスに関する基準を満たすか否かを予測する。
【0069】
例えば、予測部102は、サービスで利用するシステムの設定、当該システムに予測される状況、当該システムが依存する他のシステムの設定、及び当該他のシステムに予測される状況のうちの少なくとも1つと、候補と、に基づいて、基準を満たすか否かを予測する。予測部102は、候補ごとに、これらの少なくとも1つと当該候補を含む入力データを予測モデルM1に入力する。予測モデルM1は、入力された入力データの特徴量を計算し、特徴量に応じた予測結果を出力する。予測部102は、予測モデルM1により出力された各候補の予測結果を取得する。
【0070】
[特定部]
特定部103は、所望の結果を得ると予測された候補を特定する。実施形態1では、特定部103は、所望の結果を得ると予測され、かつ、コストが相対的に低い候補を特定する。コストが相対的に低いとは、他のコストよりも低いことである。別の言い方をすれば、他に高いコストが1つでも存在することは、コストが相対的に低いことに相当する。
【0071】
実施形態1では、特定部103は、所望の結果を得ると予測される候補のうち、コストが最小の候補を特定する。例えば、特定部103は、サービスレベルアグリーメントを満たすとの予測結果から、サービスレベルアグリーメントを満たさないとの予測結果に切り替わる境目を特定する。その境目から数えて1つ目の候補が、コストが最小の候補に相当する。所望の結果が、上述したようなクラウドサービスに関する基準を満たすことである場合、特定部103は、クラウドサービスに関する基準を満たすと予測された候補を特定する。
【0072】
なお、特定部103は、サービスレベルアグリーメントを満たすとの予測結果が得られた候補のうち、コストが2番目に小さい候補を特定してもよいし、それ以上のコストの候補を特定してもよい。また、特定部103は、コストを考慮せずに、サービスレベルアグリーメントを満たす何れかの候補を特定してもよい。実施形態1の特定部103は、特定した候補の詳細をリソース設定画面Gに表示させるが、特定された候補は、他の用途で用いられてもよい。例えば、特定部103は、事業者に候補を選択させることなく、特定した候補を、事業者のリソースとして決定してもよい。
【0073】
[1-4.実施形態1の予測システムで実行される処理]
図6は、実施形態1の予測システムSで実行される処理の一例を示すフロー図である。
図6に示す処理は、制御部11が記憶部12に記憶されたプログラムに従って動作し、制御部21が記憶部22に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、
図3に示す機能ブロックにより実行される処理の一例である。
【0074】
図6に示すように、サーバ10は、訓練データセットDS1に基づいて、予測モデルM1の学習を行う(S100)。S100においては、サーバ10は、個々の訓練データに基づいて、予測モデルM1のパラメータを調整し、予測モデルM1の学習を行う。サーバ10は、学習済みの予測モデルM1を記憶部12に記録する。
【0075】
端末20は、操作部24から所定の操作が行われると、サーバ10に対し、リソース設定画面Gの表示要求を送信する(S101)。サーバ10は、表示要求を受信すると、所定の計算方法に基づいて、クラウドシステムに予測されるリクエスト数などの状況を計算する(S102)。S102においては、サーバ10は、過去の実測値の統計からリクエスト数などの予測値を計算する。サーバ10は、所定の日時における予測値を計算してもよいし、毎時間又は月次の予測値を計算してもよい。実施形態1では、S102において、サーバ10は、クラウドシステムが依存する他のシステムに予測される状況も同様の計算方法によって計算する。
【0076】
サーバ10は、リソース候補データD1に基づいて、リソースの候補を複数取得する(S103)。S103においては、サーバ10は、リソース候補データD1に格納された全ての候補を取得する。実施形態1では、コストの降順にリソースの候補が取得され、S104の処理による予測が行われてもよい。
【0077】
サーバ10は、S102で計算した予測値、記憶部12に記憶されたクラウドシステムと他のシステムの設定値、及びS103で取得した何れかの候補を含む入力データを予測モデルM1に入力し、予測モデルM1から出力された予測結果を取得する(S104)。S104において入力データが入力されると、予測モデルM1は、入力データに基づいて特徴量を計算し、特徴量に応じた予測結果を出力する。
【0078】
サーバ10は、S103で取得した全ての候補の予測結果を取得したか否かを判定する(S105)。まだ予測結果を取得していない候補がある場合(S105;N)、S104の処理に戻り、次の候補の予測結果が取得される。
【0079】
なお、全ての候補の予測結果を取得するのではなく、サービスレベルアグリーメントを満たさない予測結果が得られた時点で、サーバ10は、予測結果を取得する処理を終了してもよい。この場合、サービスレベルアグリーメントを満たしやすいリソースの値が高い候補から順番に、例えばコストの降順に、予測結果が取得されるものとする。これとは逆に、リソースの値が低い候補から順番に予測結果が取得され、サービスレベルアグリーメントを満たす予測結果が得られた時点で、サーバ10は、予測結果を取得する処理を終了してもよい。即ち、サービスレベルアグリーメントを満たすか否かの境目となる候補が特定された時点で、サーバ10は、予測結果を取得する処理を終了してもよい。
【0080】
全ての候補の予測結果を取得したと判定された場合(S105;Y)、サーバ10は、リソース設定画面Gの表示データを生成し、端末20に送信する(S106)。S106においては、サーバ10は、S103で取得した候補の詳細と、S104で取得した予測結果と、の関係を示すリソース設定画面Gの表示データを生成する。サーバ10は、サービスレベルアグリーメントを満たすと予測された候補のうち、最もコストが安い候補を入力フォームFのデフォルト値としてセットする。なお、表示データは、画像を表示させるためのデータであればよく、例えば、HTMLデータなどである。
【0081】
端末20は、表示データを受信すると、リソース設定画面Gを表示部25に表示させ(S107)、本処理は終了する。事業者は、リソース設定画面Gに表示された情報を参考にして、入力フォームFから任意の候補を選択し、クラウドシステムのリソースを決定する。
【0082】
実施形態1の予測システムSによれば、所定のサービスにおける所望の結果の得やすさに影響する情報の候補ごとに、所望の結果を得るか否かを予測し、所望の結果を得ると予測された候補を特定することによって、サービスにおいて所望の結果を得やすくなる。例えば、予測システムSは、所望の結果を得ると予測された候補を事業者に提示したり、その候補をサービスで採用する情報として決定したりすることで、所望の結果を得る確率を高めることができる。
【0083】
また、予測システムSでは、情報が示す値が高いほど、所望の結果を得やすくなり、かつ、サービスに関するコストが高くなる。そして、予測システムSは、所望の結果を得ると予測され、かつ、コストが相対的に低い候補を特定する。これにより、予測システムSは、コストを抑えつつ、所望の結果を得ることができる。例えば、サービスレベルアグリーメントを満たすために必要なハードウェア資源の無駄を抑制することができる。例えば、過度にハイスペックなCPUを搭載したり、無駄に大きなメモリを搭載したりすることを抑制できる。
【0084】
また、予測システムSは、所望の結果を得ると予測される候補のうち、コストが最小の候補を特定することによって、所望の結果を得るためのコストを最低限に抑えることができる。例えば、最低限のハードウェア資源で、サービスレベルアグリーメントを満たすことができる。例えば、最低限のスペックのCPUを搭載したり、最低限の容量のメモリを搭載したりすることによって、ハードウェア資源の無駄を効果的に抑制できる。
【0085】
また、予測システムSは、予測モデルM1を利用して、候補ごとに、結果を得るか否かを予測することにより、所望の結果を得るか否かの予測精度を高めることができる。また、最新の訓練データに基づいて、予測モデルM1を定期的に学習させることで、最新の傾向を予測結果に反映することができる。
【0086】
また、予測システムSは、サービスレベルアグリーメントなどの基準を満たすために必要なリソースを特定し、一定の品質のサービスを提供するためのリソースを確保することができる。その結果、サービスの品質を向上させることができる。
【0087】
また、予測システムSは、サービスで利用するシステムの設定、当該システムに予測される状況、当該システムが依存する他のシステムの設定、及び当該他のシステムに予測される状況のうちの少なくとも1つと、候補と、に基づいて、サービスレベルアグリーメントなどの基準を満たすか否かを予測することによって、予測精度を高めることができる。
【0088】
[2.実施形態2]
実施形態1では、予測システムSをクラウドサービスに適用する場合を説明したが、実施形態2では、予測システムSを電子決済サービスに適用する場合を説明する。実施形態2では、実施形態1と同様の構成については説明を省略し、実施形態1と異なる構成について説明する。
【0089】
実施形態2のサーバ10は、電子決済サービスを提供するサーバコンピュータである。電子決済自体は、公知の決済方法を利用可能であり、例えば、クレジットカード、電子マネー、ポイント、銀行口座、又は仮想通貨を利用した決済が行われる。サーバ10は、電子決済に必要な情報を記憶し、ユーザからの要求に応じて決済処理を実行する。
【0090】
端末20は、電子決済サービスのユーザが操作するコンピュータである。例えば、端末20には、電子決済サービスのアプリケーション(以降、電子決済アプリ)がインストールされている。ユーザは、端末20の電子決済アプリを利用して、実店舗や自動販売機などにおいて電子決済を行う。端末20は、電子決済用のICチップを含んでもよい。
【0091】
実施形態2では、ユーザが電子決済サービスを利用して電子決済を行うと、次回以降に使用できるポイントが付与される。ポイントは、任意のタイミングで付与されてよく、例えば、ユーザが電子決済を行うたびに付与されてもよいし、一定の期間ごとに付与されてもよい。電子決済サービスの事業者は、ユーザに付与されたポイントの分だけ利益が減るので、ポイント分のコストが事業者に発生する。
【0092】
事業者は、ポイントに応じたコストを負担することによって、電子決済サービスを継続して利用する動機付けをユーザに与えることができる。もし仮に、事業者が全てのユーザに多くのポイントを付与すれば、全てのユーザに強い動機付けを与えることができるが、事業者に多大なコストが発生する。また、動機付けを与えるのに有効なポイントの量は、ユーザに応じて異なる。このため、全てのユーザに一律で同じポイントを付与しても、全てのユーザに有効な動機付けを与えられるわけではない。
【0093】
そこで、実施形態2の予測システムSは、付与されるポイントの候補ごとに、そのポイントが付与されたと仮定した場合にユーザが電子決済サービスを継続して利用するか否かを予測する。これにより、動機付けを与えるのに有効なポイントをユーザに付与するようにしている。更に、予測システムSは、ユーザが電子決済サービスを継続して利用すると予測されたポイントの候補のうち、最小値の候補を、ユーザに付与するポイントとして特定する。これにより、事業者に発生するコストを最低限に抑えるようにしている。
【0094】
図7は、実施形態2における予測システムSの概要を示す図である。
図7の例は、期待利益が高く離反率が低いユーザAと、期待利益が低く離反率が高いユーザBと、の各々にポイントが付与される場合を示している。期待利益は、将来の所定期間においてユーザから得られることが予測(期待)される利益である。離反率は、電子決済サービスから離反すると予測される確率、又は、ある一定期間(例えば、6ヶ月)のうち離反すると予測される期間の割合である。詳細は後述するが、期待利益と離反率の各々は、ユーザの属性や利用状況などによって計算される。
【0095】
なお、電子決済サービスを継続して利用することと、電子決済サービスから離反しないことは、互いに同じ意味であってもよいが、実施形態2では異なる意味で使用する。実施形態2では、ある期間t1(例えば、t1は1ヶ月)の間、ユーザが電子決済サービスを利用しない場合に、そのユーザは電子決済サービスから離反した状態になる。離反の条件を満たさないユーザは、電子決済サービスから離反していない状態になる。
【0096】
また、期間t1よりも長い期間t2(例えば、t2は6ヶ月)において、離反した回数が所定回数以上になった場合、又は、1回も利用していない期間が基準値を超えた場合に、そのユーザは、電子決済サービスを継続して利用していない状態になる。継続の条件を満たしたユーザは、電子決済サービスを継続して利用している状態になる。実施形態2では、継続して利用していない状態を休眠と記載することがある。離反したユーザだったとしても、離反した回数が少なかったり、1回も利用していない期間が短かったりすれば、継続の条件を満たすこともある。
【0097】
ユーザAは、期待利益が高く、離反率が低いので、予測システムSは、ユーザAに多くのポイントを付与しても、事業者に損失が発生しないと予測する。このため、予測システムSは、ユーザBよりも多い「800pt」をユーザAに付与する。「800pt」は、ユーザAに動機付けを与えるのに有効と予測されるポイントのうちの最小値である。また、予測システムSは、ユーザAに「800pt」を付与しても、利益が出ると予測する。
【0098】
ユーザBは、期待利益が低く、離反率が高いので、予測システムSは、ユーザBに多くのポイントを付与すると、事業者に損失が発生すると予測する。このため、予測システムSは、ユーザBに対し、ユーザAよりも少ない「15pt」をユーザBに付与する。「15pt」は、ユーザBに動機付けを与えるのに有効と予測されるポイントのうちの最小値である。また、予測システムSは、ユーザBに「15pt」を付与しても、利益が出ると予測する。
【0099】
以上のように、実施形態2の予測システムSは、事業者に利益が出る範囲内で、電子決済サービスを継続して利用する動機付けを与えると予測されるポイントを、ユーザに付与するようにしている。以降、実施形態2の予測システムSの詳細を説明する。
【0100】
[2-1.実施形態2の予測システムで実現される機能]
図8は、実施形態2の予測システムSで実現される機能の一例を示す機能ブロック図である。実施形態2のサーバ10は、実施形態1で説明した機能に加えて、離反率計算部104、期待利益計算部105、及び最大値計算部106を含む。離反率計算部104、期待利益計算部105、及び最大値計算部106の各々は、制御部11を主として実現される。実施形態1で説明したデータ記憶部100、候補取得部101、予測部102、及び特定部103については、実施形態1と異なる部分を説明する。
【0101】
[データ記憶部]
実施形態2では、データ記憶部100が記憶するデータの一例として、離反率計算モデルM2、期待利益計算モデルM3、予測モデルM4、及びこれらのモデルに対応する訓練データセットDS2~DS4を記憶する。
【0102】
離反率計算モデルM2は、ユーザに関する情報が入力されると、そのユーザの離反率を計算して出力する。離反率計算モデルM2には、ユーザに関する情報と離反率の関係が定義されている。離反率計算モデルM2は、離反率を計算して出力するプログラム自体を意味してもよいし、そのプログラムだけではなく、パラメータなどを含むデータ全体を意味してもよい。
【0103】
実施形態2では、離反率計算モデルM2は、機械学習を利用して作成されたモデルである。実施形態1で説明した予測モデルM1と同様、機械学習自体は、種々の手法を利用可能である。また、実施形態1で説明した予測モデルM1と同様、離反率計算モデルM2には、プログラムとパラメータの少なくとも一方が含まれており、学習によってパラメータが調整される。これらの点は、期待利益計算モデルM3と実施形態2の予測モデルM4についても同様である。
【0104】
実施形態2では、離反率計算モデルM2の入力データには、ユーザの属性、電子決済サービスの利用状況、及び他のサービスの利用状況のうちの少なくとも1つが含まれる。属性は、ユーザの特徴を表す情報であり、分類又はカテゴリということもできる。例えば、属性は、ユーザの性別、年齢、居住地域、収入(年収)、及び職業のうちの少なくとも1つである。属性は、ユーザの個人情報の一種である。
【0105】
電子決済サービスの利用状況は、過去の全期間又は一部の期間(例えば、直近1ヶ月)において、ユーザが電子決済サービスをどのように利用したかを示す情報である。例えば、電子決済サービスの利用状況は、電子決済サービスにおける利用額、利用ポイント数、利用回数、利用頻度、利用時間、利用場所、及び支払先のうちの少なくとも1つである。
【0106】
他のサービスは、電子決済サービスのユーザが利用する他のサービスである。電子決済サービスは、他のサービスと連携しており、他のサービスとユーザの利用状況を共有する。例えば、他のサービスは、電子決済サービスと提携する金融サービス、通信サービス、又は電子商取引サービスである。他のサービスにおける利用状況は、過去の全期間又は一部の期間において、ユーザが他のサービスをどのように利用したかを示す情報である。例えば、他のサービスの利用状況は、他のサービスにおける利用額、利用ポイント数、利用回数、利用頻度、利用時間、利用場所、及び支払先のうちの少なくとも1つである。
【0107】
図9は、離反率計算モデルM2の訓練データセットDS2のデータ格納例を示す図である。
図9に示すように、離反率計算モデルM2の訓練データセットDS2は、ユーザ属性、ユーザによる電子決済サービスの利用状況、及びユーザによる他のサービスの利用状況を含む入力データと、離反率を示す出力データと、のペアである訓練データが多数格納されている。
【0108】
訓練データセットDS2は、予測システムSの管理者によって用意される。離反率は、過去のユーザの利用状況に基づいて集計される。なお、出力データは、離反率ではなく、離反したか否かを示す値であってもよい。この場合、離反率計算モデルM2は、離反する蓋然性を示すスコアを離反率として出力してもよい。
【0109】
期待利益計算モデルM3は、ユーザに関する情報が入力されると、そのユーザの期待利益を計算して出力する。期待利益計算モデルM3には、ユーザに関する情報と期待利益の関係が定義されている。期待利益計算モデルM3は、期待利益を計算して出力するプログラム自体を意味してもよいし、そのプログラムだけではなく、パラメータなどを含むデータ全体を意味してもよい。
【0110】
実施形態2では、期待利益計算モデルM3は、機械学習を利用して作成されたモデルである。期待利益計算モデルM3の入力データには、ユーザの属性と、ユーザによる電子決済サービスの利用状況と、のうちの少なくとも1つが含まれる。この入力データには、ユーザによる他のサービスの利用状況が含まれてもよい。また、この電子決済サービスの利用状況が示す期間は、離反率計算モデルM2と同じ期間であってもよいし、異なる期間であってもよい。例えば、電子決済サービスの利用状況が示す期間は、離反率計算モデルM2よりも長期間であってもよい。例えば、離反率計算モデルM2では、直近の利用状況だけが利用され、期待利益計算モデルM3では、より長期の利用状況が利用されてもよい。
【0111】
図10は、期待利益計算モデルM3の訓練データセットDS3のデータ格納例を示す図である。
図10に示すように、期待利益計算モデルM3の訓練データセットDS3は、ユーザ属性と電子決済サービスの利用状況を含む入力データと、期待利益を示す出力データと、のペアである訓練データが多数格納されている。訓練データセットDS3は、予測システムSの管理者によって用意される。期待利益は、過去のユーザの利用状況に基づいて集計される。
【0112】
実施形態2の予測モデルM4は、所望の結果を得るか否かを予測する点については、実施形態1と同様である。ただし、所望の結果の意味は、実施形態1と実施形態2で異なるので、予測モデルM4の処理の詳細は、実施形態1と異なる。実施形態2の予測モデルM4は、ユーザに関する情報が入力されると、そのユーザが電子決済サービスを継続して利用するか否かの予測結果を出力する。
【0113】
予測モデルM4には、ユーザに関する情報と、継続利用の予測結果と、の関係が定義されている。予測モデルM4は、予測結果を計算して出力するプログラム自体を意味してもよいし、そのプログラムだけではなく、パラメータなどを含むデータ全体を意味してもよい。
【0114】
実施形態2の予測モデルM4は、機械学習を利用して作成されたモデルである。予測計算モデルの入力データには、ユーザの離反率、ユーザの属性、ユーザによる電子決済サービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つが含まれる。これらの利用状況が示す期間は、離反率計算モデルM2及び期待利益計算モデルM3と同じ期間であってもよいし、異なる期間であってもよい。例えば、予測モデルM4では、直近の利用状況だけが利用されてもよい。実施形態2では、上記の情報の他に、ユーザに実際に付与されたポイント数が入力データに含まれる。
【0115】
図11は、予測モデルM4の訓練データセットDS4のデータ格納例を示す図である。
図11に示すように、予測モデルM4の訓練データセットDS4は、離反率、ユーザ属性、電子決済サービスの利用状況、及び付与ポイントを含む入力データと、予測結果を示す出力データと、のペアである訓練データが多数格納されている。
【0116】
訓練データセットDS4は、予測システムSの管理者によって用意される。出力データが示す値(継続又は休眠)は、過去のユーザの利用状況に基づいて集計される。例えば、訓練データセットDS4のデータ収集用に、予め一定割合のユーザにランダムにポイントが付与され、ポイントを付与されたユーザが電子決済サービスを継続して利用したか否かが確認されてもよい。
【0117】
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。例えば、データ記憶部100は、ユーザに関する各種情報が格納されたユーザデータベースを記憶してもよい。ユーザデータベースには、ユーザID、パスワードなどの認証情報、クレジットカード情報などの決済情報、ユーザの属性、ユーザが保有するポイント、過去に付与されたポイントの履歴、電子決済サービスにおける利用状況、及び他のサービスにおける利用状況が格納される。
【0118】
[離反率計算部]
離反率計算部104は、所定の計算方法に基づいて、電子決済サービスからのユーザの離反率を計算する。本実施形態では、この計算方法の一例として、離反率計算モデルM2を利用する方法を例に挙げる。計算方法は、他の方法であってもよく、例えば、マクロ、数式、又はテーブルなどを利用した計算方法であってもよい。離反率計算部104は、ユーザに関する情報と離反率の関係が定義された何らかのデータに基づいて、ユーザに応じた離反率を計算すればよい。
【0119】
例えば、ユーザの年収が多いほど、そのユーザの離反率は低くなる。また例えば、ユーザの居住地域が都市部であるほど、そのユーザの離反率は低くなる。また例えば、ユーザの利用金額が多いほど、そのユーザの離反率は低くなる。また例えば、ユーザの利用頻度が高いほど、そのユーザの離反率が低くなる。また例えば、ユーザの利用場所が多いほど、そのユーザの離反率が低くなる。他の要素についても同様に、ユーザに関する情報と離反率の間に相関関係があり、その相関関係が定義されたデータに基づいて、ユーザに応じた離反率が計算されるようにすればよい。
【0120】
実施形態2では、離反率計算部104は、ユーザの属性、ユーザによる電子決済サービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、離反率を計算する。離反率計算部104は、これらの少なくとも1つを含む入力データを離反率計算モデルM2に入力する。離反率計算モデルM2は、この入力データの特徴量を計算し、特徴量に応じた離反率を出力する。離反率計算部104は、離反率計算モデルM2により出力された離反率を取得する。なお、離反率計算モデルM2は、過去のポイントの付与履歴も考慮して離反率を出力してもよい。
【0121】
[期待利益計算部]
期待利益計算部105は、所定の計算方法に基づいて、ユーザの期待利益を計算する。本実施形態では、この計算方法の一例として、期待利益計算モデルM3を利用する方法を例に挙げる。計算方法は、他の方法であってもよく、例えば、マクロ、数式、又はテーブルなどを利用した計算方法であってもよい。期待利益計算部105は、ユーザに関する情報と期待利益の関係が定義された何らかのデータに基づいて、ユーザに応じた期待利益を計算すればよい。
【0122】
例えば、ユーザの年収が多いほど、そのユーザの期待利益は高くなる。また例えば、ユーザの居住地域が都市部であるほど、そのユーザの期待利益は高くなる。また例えば、ユーザの利用金額が多いほど、そのユーザの期待利益は高くなる。また例えば、ユーザの利用頻度が高いほど、そのユーザの期待利益は高くなる。また例えば、ユーザの利用場所が多いほど、そのユーザの期待利益は高くなる。他の要素についても同様に、ユーザに関する情報と期待利益の間に相関関係があり、その相関関係が定義されたデータに基づいて、ユーザに応じた期待利益が計算されるようにすればよい。
【0123】
実施形態2では、期待利益計算部105は、ユーザの属性と、ユーザによる電子決済サービスの利用状況と、のうちの少なくとも1つに基づいて、期待利益を計算する。期待利益計算部105は、これらの少なくとも1つを含む入力データを期待利益計算モデルM3に入力する。期待利益計算モデルM3は、この入力データの特徴量を計算し、特徴量に応じた期待利益を出力する。期待利益計算部105は、期待利益計算モデルM3により出力された期待利益を取得する。
【0124】
[最大値計算部]
最大値計算部106は、離反率に基づいて、ユーザに付与可能なポイントの最大値を計算する。実施形態2では、最大値計算部106は、離反率だけではなく、期待利益に基づいて、ユーザに付与可能なポイントの最大値を計算する。最大値計算部106は、期待利益を考慮せずに、離反率だけを考慮して、付与可能なポイントの最大値を計算してもよい。
【0125】
最大値計算部106は、所定の計算方法に基づいて、付与可能なポイントの最大値を計算すればよい。計算方法は、任意の方法であってよく、例えば、機械学習を利用して作成したモデルで計算する方法、所定の計算式を利用した方法、又は付与可能なポイントを定めたテーブルなどを利用可能である。
【0126】
例えば、最大値計算部106は、離反率が低いほど、付与可能なポイントの最大値は高くなるように、最大値を計算する。また例えば、最大値計算部106は、期待利益が高いほど、付与可能なポイントの最大値は高くなるように、最大値を計算する。実施形態2では、最大値の計算方法の一例として、下記の方法を説明するが、この計算方法に限られない。例えば、離反率が高いユーザを引き留めるために、最大値計算部106は、離反率が高いほど、付与可能なポイントの最大値は高くなるように、最大値を計算してもよい。
【0127】
例えば、ユーザの離反率をP(c)とし、ユーザの期待利益をR(c)とし、離反率P(c)に応じたポイントをf(P(c))とする。ユーザが電子決済サービスから離反した場合、事業者は、付与されたポイントの全額を負担することになるので、f(P(c))の損失が発生する。ユーザが電子決済サービスから離反せずに継続して利用すれば、R(c)-f(P(c))の利益が発生すると予測される。
【0128】
事業者としては、計算式「(1-P(c))×(R(c)-f(P(c)))-P(c)×f(P(c))」で求まる値が、事業者が得られる期待利益となる。最大値計算部106は、この値が正になるように、ポイントf(P(c))の最大値を計算する。例えば、最大値計算部106は、計算式「f(P(c))<R(c)-P(c)×R(c)」又は「f(P(c))≦R(c)-P(c)×R(c)」となるように、付与可能なポイントf(P(c))の最大値を計算する。
【0129】
[候補取得部]
実施形態2の予測モデルM4は、所望の結果の得やすさに影響する情報の候補を取得する点については、実施形態1の予測モデルM1と同様である。実施形態2では、この情報は、電子決済サービスのユーザに付与されるポイントなので、候補取得部101は、ユーザに付与されるポイントの候補を取得する。実施形態2では、所望の結果は、ユーザが電子決済サービスの利用を継続することであり、ポイントは、電子決済サービスを継続して利用することに影響する情報の一例に相当する。ユーザに付与されるポイントが多いほど、ユーザは電子決済サービスを継続して利用しやすくなる。
【0130】
ポイントは、特典の一例である。特典は、ポイントに限られず、任意の特典がユーザに付与されてよい。例えば、その場で利用できる割引、クーポン、又はユーザへのプレゼントが特典に相当してもよい。例えば、候補取得部101は、最大値計算部106により計算された最大値の範囲内で候補を取得する。最大値の範囲内とは、最大値以下の任意の数値である。
【0131】
実施形態2では、候補取得部101は、最大値以下の全ての数値を候補として取得する場合を説明するが、候補取得部101は、最大値以下の一部の数値だけを候補として取得してもよい。なお、候補取得部101は、最大値とは関係なく、ランダムに生成した数値を候補として取得してもよい。
【0132】
[予測部]
予測部102は、候補ごとに、ユーザが電子決済サービスの利用を継続するか否かを予測する。実施形態2では、実施形態1と同様、学習済みの予測モデルM4を利用した予測方法を説明するが、特に機械学習を利用した予測ではなくてもよい。例えば、利用を継続するか否かを予測するシミュレータを作成し、シミュレータを利用した予測方法であってもよい。他にも例えば、予測モデルM4やシミュレータではなく、数式やテーブルなどを利用した予測方法であってもよい。
【0133】
予測部102は、電子決済サービスからのユーザの離反率、ユーザの属性、ユーザによる電子決済サービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、ユーザが電子決済サービスの利用を継続するか否かを予測する。予測部102は、候補ごとに、これらの少なくとも1つと当該候補を含む入力データを予測モデルM4に入力する。予測モデルM4は、入力された入力データの特徴量を計算し、特徴量に応じた予測結果を出力する。予測部102は、予測モデルM4により出力された各候補についての予測結果を取得する。
【0134】
[特定部]
特定部103は、ユーザが電子決済サービスの利用を継続すると予測された候補を特定する。実施形態2では、付与可能なポイントの最大値も考慮されるので、特定部103は、最大値の範囲内で、ユーザが電子決済サービスの利用を継続すると予測された候補を特定する。また、実施形態2では、ユーザの期待利益も考慮されるので、特定部103は、期待利益に基づいて、ユーザが電子決済サービスの利用を継続すると予測された候補を特定する。例えば、特定部103は、期待利益に応じた最大値の範囲内で、ユーザが電子決済サービスの利用を継続すると予測された候補を特定する。
【0135】
図12は、実施形態2の特定部103の処理内容を示す図である。
図12にD2の符号で示すデータは、ユーザIDが「u00001」のユーザの予測結果が格納されたデータである。予測部102は、予測モデルM4から予測結果を得るたびに、ポイントの候補に関連付けて予測結果をデータD2に格納する。
図12の例では、付与可能なポイントの最大値を「1000pt」とする。特定部103は、「1000pt」以下の全ての候補について、予測部102の予測結果を参照する。
【0136】
図12の例では、「800pt」以上であれば、「継続」の予測結果が得られており、「799pt」以下であれば、「休眠」の予測結果が得られている。このため、特定部103は、「継続」の予測結果が得られた最小値の「800pt」を、ユーザに付与するポイントとして特定する。なお、特定部103は、「801pt」以上のポイントを特定してもよいし、「継続」と「休眠」の境目に近い「799pt」を特定してもよい。特定部103は、特定したポイントをユーザに付与する。ポイントを付与するとは、ユーザが保有するポイントを増加させることである。なお、
図12の例では、付与可能なポイントの最大値以下の1ポイント毎の候補について、予測結果が得られているが、予測結果を得るポイントの単位は、任意の他の単位であってもよい。
【0137】
なお、ポイントは、ユーザが利用するたびに付与されるのではなく、ポイントが付与された後の所定期間は、ポイントが付与されないように制限されてもよい。また、何ポイント付与したとしても、事業者に利益が出ず、ユーザが電子決済サービスの利用を継続もしない場合には、ポイントが付与されないようにしてもよい。例えば、付与可能なポイントの最大値以下の全ての候補について、「休眠」の予測結果が得られた場合、ポイントが付与されないようにしてもよい。
【0138】
[2-2.実施形態2の予測システムで実行される処理]
図13は、実施形態2の予測システムSで実行される処理の一例を示すフロー図である。
図13に示す処理は、制御部11が記憶部12に記憶されたプログラムに従って動作し、制御部21が記憶部22に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、
図8に示す機能ブロックにより実行される処理の一例である。
【0139】
図13に示すように、サーバ10は、離反率計算モデルM2の訓練データセットDS2に基づいて、離反率計算モデルM2の学習を行う(S200)。S200においては、サーバ10は、訓練データに含まれる入力データが離反率計算モデルM2に入力された場合に、訓練データに含まれる出力データが得られるように、離反率計算モデルM2のパラメータを調整する。実施形態1の予測モデルM1と同様、学習自体は、機械学習で用いられている公知の手法を利用可能である。この点は、期待利益計算モデルM3と実施形態2の予測モデルM4についても同様である。
【0140】
サーバ10は、期待利益計算モデルM3の訓練データセットDS3に基づいて、期待利益計算モデルM3の学習を行う(S201)。S201においては、サーバ10は、訓練データに含まれる入力データが期待利益計算モデルM3に入力された場合に、訓練データに含まれる出力データが得られるように、期待利益計算モデルM3のパラメータを調整する。
【0141】
サーバ10は、予測モデルM4の訓練データセットDS4に基づいて、予測モデルM4の学習を行う(S202)。S202においては、サーバ10は、訓練データに含まれる入力データが予測モデルM4に入力された場合に、訓練データに含まれる出力データが得られるように、予測モデルM4のパラメータを調整する。
【0142】
端末20は、操作部24から所定の操作が行われると、サーバ10に対し、決済要求を送信する(S203)。決済要求は、決済処理の実行を要求するための要求である。例えば、決済要求には、電子決済サービスにおいてユーザが選択した決済方法や決済額などの情報が含まれる。サーバ10は、決済要求を受信すると、決済処理を実行する(S204)。サーバ10は、S204における決済処理の実行結果に基づいて、ユーザによる電子決済サービスの利用状況を更新する。
【0143】
サーバ10は、学習済みの離反率計算モデルM2に基づいて、ユーザの離反率を計算する(S205)。S205においては、サーバ10は、ユーザの属性、ユーザによる電子決済サービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つを含む入力データを、離反率計算モデルM2に入力する。離反率計算モデルM2は、入力データの特徴量を計算し、特徴量に応じた離反率を出力する。
【0144】
サーバ10は、学習済みの期待利益計算モデルM3に基づいて、ユーザの期待利益を計算する(S206)。S206においては、サーバ10は、ユーザの属性と、ユーザによる電子決済サービスの利用状況と、のうちの少なくとも1つを含む入力データを、期待利益計算モデルM3に入力する。期待利益計算モデルM3は、入力データの特徴量を計算し、特徴量に応じた期待利益を出力する。
【0145】
サーバ10は、S206で計算された期待利益に基づいて、ユーザに付与可能なポイントの最大値を計算する(S207)。S207においては、サーバ10は、S205で計算された離反率と、S206で計算された期待利益を所定の計算式に代入し、ポイントの最大値を計算する。
【0146】
サーバ10は、S207で計算された最大値の範囲内で、ユーザに付与されるポイントの候補を取得する(S208)。S208においては、サーバ10は、S207で計算された最大値以下の全ての数値を、ポイントの候補として取得する。以降説明するS209の処理は、候補が示す数値の高い順に実行される。
【0147】
サーバ10は、学習済みの予測モデルM4に基づいて、S208で取得した候補について、ユーザが電子決済サービスを継続して利用するか否かの予測結果を取得する(S209)。S209においては、サーバ10は、S205で計算した離反率、ユーザの属性、ユーザによる電子決済サービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つと、S208で取得した候補を含む入力データを予測モデルM4に入力し、予測モデルM4から出力された予測結果を取得する。予測モデルM4は、入力データに基づいて特徴量を計算し、特徴量に応じた予測結果を出力する。
【0148】
サーバ10は、S208で取得した全ての候補について予測結果を取得したか否かを判定する(S210)。まだ予測結果を取得していない候補がある場合(S210;N)、S209の処理に戻り、次に数値が低い候補の予測結果が取得される。
【0149】
全ての候補の予測結果を取得したと判定された場合(S210;Y)、サーバ10は、予測結果が継続を示す候補のうちの最小値のポイントを、ユーザに付与し(S211)、本処理は終了する。ユーザにポイントが付与されると、サーバ10から端末20に決済が完了した旨の通知が送信され、
図7の画面が端末20に表示される。なお、S203及びS204の処理は省略してもよい。例えば、離反率が高いユーザの端末20は、決済要求を送信する頻度が低いため、決済要求の送信に応じてポイントが付与されるのではなく、他の任意のタイミングでポイントが付与されるようにしてもよい。このようにすることで、離反率が高いユーザに対し、電子決済サービスを継続する動機付けを与える機会を逃してしまうことを防止できる。このユーザについては、電子メール等を利用して、ポイントが付与されたことが通知されるようにしてもよい。即ち、ユーザが電子決済アプリを起動しなくても、ポイントが付与されたことに気付きやすくしてもよい。
【0150】
実施形態2の予測システムSによれば、電子決済サービスなどのように、ポイントを利用可能なサービスにおいて、ユーザにサービスの利用を継続させる確率を高めることができる。その結果、事業者が得る利益を最大化することができる。
【0151】
また、実施形態2の予測システムSは、ユーザの離反率に応じたポイントの最大値の範囲内で、ユーザがサービスの利用を継続すると予測された候補を特定することにより、事業者が確実に利益を得る範囲で、ユーザにサービスの利用を継続させることができる。
【0152】
また、実施形態2の予測システムSは、ユーザの属性、ユーザによるサービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、離反率を計算することにより、離反率の計算精度を高めることができる。その結果、ユーザが継続して利用するか否かの予測精度を高めることができる。
【0153】
また、実施形態2の予測システムSは、ユーザの期待利益に基づいて、ユーザがサービスの利用を継続すると予測された候補を特定することにより、事業者が確実に利益を得る範囲で、ユーザにサービスの利用を継続させることができる。
【0154】
また、実施形態2の予測システムSは、期待利益に応じたポイントの最大値の範囲内で、ユーザがサービスの利用を継続すると予測された候補を特定することにより、最大値の範囲内でサービスの利用を継続させることができる。事業者が確実に利益を得る範囲で、ユーザにサービスの利用を継続させることができる。
【0155】
また、実施形態2の予測システムSは、サービスからのユーザの離反率、ユーザの属性、ユーザによるサービスの利用状況、及びユーザによる他のサービスの利用状況のうちの少なくとも1つに基づいて、ユーザがサービスの利用を継続するか否かを予測することにより、予測精度を高めることができる。
【0156】
[3.変形例]
なお、本開示は、以上に説明した実施の形態に限定されるものではない。本開示の趣旨を逸脱しない範囲で、適宜変更可能である。
【0157】
例えば、実施形態1ではクラウドサービスの適用例を説明し、実施形態2では電子決済サービスの適用例を説明したが、他の任意のサービスに、予測システムSを適用可能である。例えば、予測システムSは、実施形態1と同様にして、通信サービスにおいて一定の品質のサービスを提供するために必要であり、コストを最低限に抑えるリソースを特定してもよい。また例えば、予測システムSは、実施形態2と同様にして、電子商取引サービスにおいてユーザに利用を継続させ、コストを最低限に抑えるポイントを決定してもよい。他のサービスについても同様に、予測システムSは、サービスにおいて所望の結果を得ると予測される候補を特定すればよい。
【0158】
また例えば、サーバ10で実現されるものとして説明した機能は、複数のコンピュータで分担されてもよい。また例えば、データ記憶部100に記憶されるものとして説明したデータは、サーバ10とは異なる他のコンピュータ又は情報記憶媒体に記憶されていてもよい。
【要約】
予測システム(S)の候補取得手段(101)は、所定のサービスにおける所望の結果の得やすさに影響する情報の候補を複数取得する。予測手段(102)は、所定の予測方法に基づいて、候補ごとに、所望の結果を得るか否かを予測する。特定手段(103)は、所望の結果を得ると予測された候補を特定する。