以下に、本願に係る生成装置、生成方法、生成プログラム、及びモデルを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る生成装置、生成方法、生成プログラム、及びモデルが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
〔1.生成処理〕
まず、図1を用いて、実施形態に係る生成処理の一例について説明する。図1は、実施形態に係る生成処理の一例を示す図である。図1では、生成装置100がコンテンツに関するコンテンツ情報と、配信されたコンテンツがユーザにクリックされたかを示す情報と、配信されたコンテンツに対応する商品が早く売れたかを示す正解情報とに基づいてモデルの生成を行う場合を示す。なお、配信されたコンテンツに対応する商品がコンテンツの配信開始から所定の期間内(例えば24時間以内)にユーザに購入された場合に早く売れたものとする。
このように、図1の例では、生成装置100が第1指標「クリック率(CTR:Click Through Rate)」に関するユーザの行動や第2指標「早く売れる」に関するユーザの行動を正解情報としてモデルを生成する場合を示す。すなわち、図1の例では、生成装置100がコンテンツに関するユーザの行動に対応する2つの指標に基づく評価を示すスコアを出力するモデルを生成する場合を示す。以下では、正解情報が対応付けられた対象情報を「学習データ」ともいう。図1及び図2の例では、コンテンツが商品に関するコンテンツである場合を一例に説明するについては後述する。
〔生成システムの構成〕
まず、図1の説明に先立って、図3に示す生成システム1について説明する。図3に示すように、生成システム1は、端末装置10と、生成装置100とが含まれる。端末装置10と、生成装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。図3は、実施形態に係る生成システムの構成例を示す図である。なお、図3に示した生成システム1には、複数台の端末装置10や、複数台の生成装置100が含まれてもよい。
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。図1に示す例においては、端末装置10がユーザが利用するスマートフォンである場合を示す。なお、以下では、端末装置10をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置10と読み替えることもできる。
また、図1に示す例においては、端末装置10を利用するユーザに応じて、端末装置10を端末装置10−1〜10−5として説明する。例えば、端末装置10−1は、ユーザU1により使用される端末装置10である。また、例えば、端末装置10−2は、ユーザU2により使用される端末装置10である。また、以下では、端末装置10−1〜10−5について、特に区別なく説明する場合には、端末装置10と記載する。なお、上記のように、「ユーザU*(*は任意の数値)」と記載した場合、そのユーザはユーザID「U*」により識別されるユーザであることを示す。例えば、「ユーザU1」と記載した場合、そのユーザはユーザID「U1」により識別されるユーザである。
生成装置100は、コンテンツに関するコンテンツ情報を用いて、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を示すスコアを出力するモデルを生成する情報処理装置である。また、生成装置100は、コンテンツ情報をモデルに入力することにより、入力されたコンテンツに関する複数の指標に基づく評価を示すスコアを予測する。
また、生成システム1においては、生成装置100が複数の販売元が提供する商品を購入可能な電子商取引サービスを提供する。すなわち、生成システム1においては、複数の販売元が提供する商品を購入可能な電子商取引サービスが提供される。
また、生成装置100は電子商取引サービスや検索サービス等の種々のサービスを提供してもよい。また、外部の情報処理装置が検索サービスや電子商取引サービスを提供する場合、生成装置100は検索サービスや電子商取引サービスを提供しなくてもよい。この場合、生成装置100は、検索サービスや電子商取引サービスを提供する外部の情報処理装置等から各種情報を取得し、取得した各種情報に基づいて生成処理や外部の情報処理装置への情報提供を行ってもよい。
まず、図1の示す例において、生成装置100は、正解情報を生成するための情報を収集する。具体的には、生成装置100は、商品GD101(A商品)〜商品GD105(E商品)等のコンテンツをユーザに配信し、配信したコンテンツに対するユーザの行動に関する情報(行動情報)を取得する。
なお、上記のように、「商品GD*(*は任意の数値)」と記載した場合、その商品は商品ID「GD*」により識別される商品であることを示す。例えば、「商品GD1」と記載した場合、その商品は商品ID「GD1」により識別される商品である。なお、以下では、「商品GD*(*は任意の数値)」の商品情報を「商品GD*(*は任意の数値)」と表記する場合がある。例えば、以下では、商品GD1を商品GD1の商品情報(コンテンツ)と読み替えることもできる。
例えば、生成装置100は、ユーザU1が利用する端末装置10−1にコンテンツを提供(配信)する(ステップS11−1)。図1の例では、生成装置100は、端末装置10−1に商品GD101(A商品)等のコンテンツを提供する。そして、生成装置100は、ユーザU1から商品GD101(A商品)等のコンテンツに対する行動情報を取得する(ステップS12−1)。図1の例では、生成装置100は、端末装置10−1からユーザU1がA商品のコンテンツをクリックし、A商品を購入したことを示す行動情報を取得する。また、図1の例では、ユーザU1がA商品を購入した時点が、A商品のコンテンツの配信開始後から1時間が経過した時点であるものとする。以下では、配信したコンテンツに対するユーザの行動を対象行動とする場合がある。例えば、生成装置100は、ユーザU1がA商品のコンテンツをクリックし、A商品を購入するという対象行動を行ったことを示す行動情報を取得する。
また、例えば、生成装置100は、ユーザU2が利用する端末装置10−2にコンテンツを配信する(ステップS11−2)。図1の例では、生成装置100は、端末装置10−2に商品GD102(B商品)等のコンテンツを提供する。そして、生成装置100は、ユーザU2から商品GD102(B商品)等のコンテンツに対する行動情報を取得する(ステップS12−2)。図1の例では、生成装置100は、端末装置10−2からユーザU2がB商品のコンテンツをクリックしたことを示す行動情報を取得する。例えば、生成装置100は、ユーザU2がB商品のコンテンツをクリックするという対象行動を行ったことを示す行動情報を取得する。
例えば、生成装置100は、ユーザU3が利用する端末装置10−3にコンテンツを配信する(ステップS11−3)。図1の例では、生成装置100は、端末装置10−3に商品GD103(C商品)等のコンテンツを提供する。そして、生成装置100は、ユーザU3から商品GD103(C商品)等のコンテンツに対する行動情報を取得する(ステップS12−3)。図1の例では、生成装置100は、端末装置10−3からユーザU3がC商品のコンテンツをクリックし、C商品を購入したことを示す行動情報を取得する。また、図1の例では、ユーザU3がC商品を購入した時点が、C商品のコンテンツの配信開始後から20時間が経過した時点であるものとする。例えば、生成装置100は、ユーザU3がC商品のコンテンツをクリックし、C商品を購入するという対象行動を行ったことを示す行動情報を取得する。
また、例えば、生成装置100は、ユーザU4が利用する端末装置10−4にコンテンツを配信する(ステップS11−4)。図1の例では、生成装置100は、端末装置10−4に商品GD104(D商品)等のコンテンツを提供する。そして、生成装置100は、ユーザU4から商品GD104(D商品)等のコンテンツに対する行動情報を取得する(ステップS12−4)。図1の例では、生成装置100は、端末装置10−4からユーザU4がD商品のコンテンツに関する行動(対象行動)を行わなかったことを示す行動情報を取得する。例えば、生成装置100は、端末装置10−4からユーザU4がD商品のコンテンツをクリックせず、D商品の購入も行わなかったことを示す行動情報を取得する。
また、例えば、生成装置100は、ユーザU5が利用する端末装置10−5にコンテンツを配信する(ステップS11−5)。図1の例では、生成装置100は、端末装置10−5に商品GD105(E商品)等のコンテンツを提供する。そして、生成装置100は、ユーザU5から商品GD105(E商品)等のコンテンツに対する行動情報を取得する(ステップS12−5)。図1の例では、生成装置100は、端末装置10−5からユーザU5がE商品のコンテンツに関する行動(対象行動)を行わなかったことを示す行動情報を取得する。例えば、生成装置100は、端末装置10−5からユーザU5がE商品のコンテンツをクリックせず、E商品の購入も行わなかったことを示す行動情報を取得する。
以下、ステップS11−1〜S11−5を区別せずに説明する場合、ステップS11と総称する。また、ステップS11−1〜S11−5に限らず、各ユーザへのコンテンツの配信は、複数回行われてもよい。また、以下、ステップS12−1〜S12−5を区別せずに説明する場合、ステップS12と総称する。なお、図1では、5人のユーザU1〜U5を図示するが、生成装置100は、ユーザU1〜U5に限らず、多数のユーザ(例えば、100万ユーザや1000万ユーザ等)による配信されたコンテンツに対する行動情報を取得する。
そして、生成装置100は、ステップS12において取得した情報に基づいて、学習データを追加する(ステップS13)。例えば、生成装置100は、配信したコンテンツに関する情報と、配信したコンテンツに対するユーザの行動を正解情報との組み合わせを学習データとして追加する。具体的には、生成装置100は、コンテンツを配信した商品GD101〜GD105等の各々に対応するデータDT101〜DT105等を学習データ記憶部121に追加する。
なお、上記のように、「データDT*(*は任意の数値)」と記載した場合、そのデータはデータID「DT*」により識別されるデータであることを示す。例えば、「データDT1」と記載した場合、そのデータはデータID「DT1」により識別されるデータである。
図1中の学習データ記憶部121に示す「データID」は、データを識別するための識別情報を示す。図1中の学習データ記憶部121に示す「対象商品」は、データIDにより識別されるデータに対象となる商品を示す。
図1中の学習データ記憶部121に示す「正解情報」は、データIDにより識別されるデータに対応する正解情報を示す。図1中の学習データ記憶部121に示す「正解情報」中の「クリック」は、対応する対象商品のコンテンツが配信先のユーザにクリックされたか否かを示す。例えば、「クリック」が「1」である場合、対応する対象商品のコンテンツが配信先のユーザにクリックされたことを示す。例えば、「クリック」が「0」である場合、対応する対象商品のコンテンツが配信先のユーザにクリックされなかったことを示す。
図1中の学習データ記憶部121に示す「正解情報」中の「早く売れる」は、対応する対象商品のコンテンツの配信先となるユーザが、その対象商品を購入したか否かを示す。例えば、「早く売れる」が「1」である場合、対応する対象商品のコンテンツの配信が開始されてから所定の期間内に、ユーザに購入されたことを示す。例えば、「早く売れる」が「1」である場合、対応する対象商品のコンテンツの配信が開始されてから24時間内に、ユーザに購入されたことを示す。また、「早く売れる」が「1」である場合に示す時間は、対応する対象商品のコンテンツの配信が開始されてからユーザに購入されるまでに経過した時間を示す。また、例えば、「早く売れる」が「0」である場合、対応する対象商品のコンテンツの配信が開始されてから所定の期間内に、ユーザに購入されなかったことを示す。
図1中の学習データ記憶部121に示す「コンテンツ情報」は、データIDにより識別されるデータに対応するコンテンツに関する情報を示す。「コンテンツ情報」は、データIDにより識別されるデータに対応するコンテンツの配信に関する情報を示す。
図1中の学習データ記憶部121に示す「コンテンツ情報」中の「コンテンツデータ」は、データIDにより識別されるデータに対応する配信においてユーザに提供されたコンテンツデータを示す。図5では「コンテンツデータ」に「CDT101」といった概念的な情報が格納される例を示したが、実際には、コンテンツに関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。例えば、「コンテンツデータ」には、対応商品に関する商品名やカテゴリや画像やタイトルや説明文等の文字情報等の種々の情報が含まれる。例えば、「コンテンツデータ」には、対応商品に関する商品名やカテゴリや画像やタイトルや説明文等の文字情報等の種々の情報が含まれる。例えば、「コンテンツデータ」は、コンテンツに関する情報のうち、配信先となるユーザや配信日時により変動しない静的な情報であってもよい。例えば、「コンテンツデータ」には、フリーマーケット形式における契約が成立する価格やオークション形式においてオークション期間内であっても契約が成立する価格(即決価格)が含まれてもよい。
図1中の学習データ記憶部121に示す「コンテンツ情報」中の「ログデータ」は、データIDにより識別されるデータに対応する対象商品のコンテンツ配信における履歴情報を示す。「ログデータ」は、データIDにより識別されるデータに対応する対象商品のコンテンツ配信の配信先となるユーザや配信時点における種々の情報が含まれる。図5では「ログデータ」に「LDT101」といった概念的な情報が格納される例を示したが、実際には、コンテンツ配信に関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。例えば、「ログデータ」は、データIDにより識別されるデータに対応する対象商品のコンテンツ配信の配信先となるユーザに関する情報が含まれてもよい。
また、例えば、「ログデータ」には、対象商品に関するユーザの行動(入札)等によって動的に変動する動的情報であって、コンテンツ配信時点における動的情報が含まれてもよい。例えば、「ログデータ」には、コンテンツ配信時点における現在価格や入札数や入札者数や残り時間等の種々の情報が含まれてもよい。なお、上記は一例であり、ログデータには、上記に限らず種々の情報が含まれてもよい。なお、「コンテンツデータ」と「ログデータ」とは、コンテンツに関する情報であれば、互いに重複する情報が含まれてもよい。
例えば、図1に示す例において、データID「DT101」により識別されるデータ(データDT101)は、対象商品が商品GD101(A商品)であることを示す。また、データDT101は、正解情報のうち、「クリック」が「1」であり、「早く売れる」が「1(1時間)」であることを示す。また、データDT101は、コンテンツ情報のうち、「コンテンツデータ」が「CDT101」であり、「ログデータ」が「LDT101(U1等)」であることを示す。
すなわち、データDT101は、商品GD101(A商品)のコンテンツのユーザU1への配信に関するデータであることを示す。データDT101は、配信された商品GD101のコンテンツをユーザU1がクリックしたことを示す。また、データDT101は、配信された商品GD101をユーザU1が購入したことを示す。また、データDT101は、ユーザU1による商品GD101の購入が商品GD101のコンテンツの配信開始から1時間後であることを示す。
そして、生成装置100は、学習データに基づいてモデルを生成する(ステップS14)。例えば、生成装置100は、学習データ記憶部121中のデータDT101〜DT105等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。例えば、生成装置100は、コンテンツに関する特徴量を用いて、モデルを生成する。例えば、生成装置100は、コンテンツの内容に関する特徴量を用いて、モデルを生成する。例えば、生成装置100は、コンテンツに対応する商品に関する特徴量を用いて、モデルを生成する。例えば、生成装置100は、コンテンツに対応する商品のカテゴリや販売モード等に関する特徴量を用いて、モデルを生成する。例えば、生成装置100は、コンテンツの配信先となるユーザに関する特徴量を用いて、モデルを生成する。図1の例では、生成装置100は、コンテンツ情報に含まれるそのコンテンツに対応する商品等に関する特徴を学習し、そのコンテンツがユーザにクリックされたり、そのコンテンツに対応する商品がユーザに購入されたりするかを予測するモデルを生成する。なお、生成装置100が学習するコンテンツ情報に含まれる特徴は、生成装置100の管理者等の人間が生成装置100に入力してもよいし、生成装置100に自動的に学習(抽出)させてもよい。
例えば、生成装置100は、データDT101〜DT105を用いてモデルM1を生成する。例えば、生成装置100は、正解情報である第1指標「クリック」及び第2指標「早く売れる」の両方が「1」であるデータDT101については、モデルM1にデータDT101に対応するコンテンツ情報が入力された場合に、モデルM1が出力するスコアが「1」に近づくように、学習処理を行う。例えば、生成装置100は、データDT101のコンテンツデータCDT101やログデータLDT101等がモデルM1に入力された場合に、モデルM1が出力するスコアが「1」に近づくように、学習処理を行う。なお、生成装置100は、販売開始から購入されるまでの時間に基づいて、第2指標「早く売れる」について重み付けを変動させてもよいが、この点の詳細は後述する。
また、例えば、生成装置100は、正解情報である第1指標「クリック」が「1」であり、第2指標「早く売れる」が「0」であるデータDT102については、モデルM1にデータDT102に対応するコンテンツ情報が入力された場合に、モデルM1が出力するスコアが「0.5」に近づくように、学習処理を行う。例えば、生成装置100は、データDT102のコンテンツデータCDT102やログデータLDT102等がモデルM1に入力された場合に、モデルM1が出力するスコアが「0.5」に近づくように、学習処理を行う。
また、例えば、生成装置100は、正解情報である第1指標「クリック」及び第2指標「早く売れる」の両方が「0」であるデータDT104については、モデルM1にデータDT104に対応するコンテンツ情報が入力された場合に、モデルM1が出力するスコアが「0」に近づくように、学習処理を行う。例えば、生成装置100は、データDT104のコンテンツデータCDT104やログデータLDT104等がモデルM1に入力された場合に、モデルM1が出力するスコアが「0」に近づくように、学習処理を行う。
なお、モデルの学習手法については、上述した手法に限定されるものではなく、任意の公知技術が適用可能である。なお、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。また、例えば、モデルの生成は、教師なし学習の機械学習に関する技術を用いて行われてもよい。例えば、モデルの生成は、深層学習(ディープラーニング)の技術を用いて行われてもよい。例えば、モデルの生成は、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて行われてもよい。なお、上記モデルの生成に関する記載は例示であり、モデルの生成は、取得可能な情報等に応じて適宜選択された学習手法により行われてもよい。すなわち、生成装置100は、学習データに含まれるコンテンツ情報が入力された場合に、正解情報に対応するスコアを出力するようにモデルM1を学習可能であれば、どのような手法によりモデルM1の生成を行ってもよい。
上記のような処理により、図1の例では、生成装置100は、モデル情報記憶部122に示すように、モデルID「M1」により識別されるモデル(モデルM1)を生成する。上記のように、「モデルM*(*は任意の数値)」と記載した場合、そのモデルはモデルID「M*」により識別されるモデルであることを示す。例えば、「モデルM1」と記載した場合、そのモデルはモデルID「M1」により識別されるモデルである。また、図1中のモデル情報記憶部122に示すように、モデルM1は予測の対象となる指標を示す予測対象「早く売れる+CTR」、すなわちユーザに配信されるコンテンツがユーザにクリックされ、その対象となる商品がユーザに早く購入されるかの予測に用いられるモデルであり、その具体的なモデルデータが「モデルデータMDT1」であることを示す。例えば、生成装置100は、モデルM1にコンテンツ情報を入力することにより、入力したコンテンツ情報に対応するコンテンツがクリックされ、コンテンツに対応する商品が早く売れるかを示すスコアを、モデルM1に出力させる。そして、生成装置100は、モデルM1が出力するスコアに基づいて、コンテンツに関するユーザの行動に対応する複数の指標に対応するコンテンツの評価を予測する。具体的には、生成装置100は、モデルM1が出力するスコアに基づいて、コンテンツがクリックされるかを示す第1指標「CTR」と、コンテンツに対応する商品が早く売れるかを示す第2指標「早く売れる」の2つ指標に対応するコンテンツの評価を予測する。
上述したように、生成装置100は、コンテンツ情報と正解情報とが対応付けられた学習データを用いて学習することにより、あるコンテンツにおける複数の指標に基づく評価を適切に予測可能にするモデルを生成することができる。したがって、生成装置100は、上述のように生成したモデルを用いることにより、例えば、あるコンテンツがクリックされやすいか、またそのコンテンツに対応する商品が早く売れるかの2つの指標を加味したコンテンツの評価を精度よく予測することを可能にすることができる。
〔2.配信処理〕
図2を用いて、実施形態に係る配信処理の一例について説明する。図2は、実施形態に係る配信処理の一例を示す図である。図2では、生成装置100は、ユーザからの配信要求を取得した場合に、予測したスコアに基づいてコンテンツを配信する場合を示す。
まず、生成装置100は、コンテンツの配信要求を取得する(ステップS21)。図2の例では、生成装置100は、ユーザU101が利用する端末装置10かコンテンツの配信要求を取得する。
コンテンツの配信要求を取得した生成装置100は、コンテンツ情報をモデルに入力することにより、スコアを予測する。例えば、生成装置100は、商品情報記憶部125に記憶された各商品GD1〜GD5、GD101〜GD105等のコンテンツデータや配信先となるユーザU101に関する情報を、モデルM1に入力する。
図2の例では、生成装置100は、処理群PS22−1に示すような処理により、商品GD1(V商品)が配信先となるユーザU101にクリックされかつ早く売れる可能性を示すスコアを算出する。生成装置100は、コンテンツ情報DT1をモデルM1に入力する(ステップS22−1)。具体的には、生成装置100は、V商品のコンテンツデータCDT1やユーザU101に関する情報等を含むデータDT1をモデルM1に入力する。データDT1が入力されたモデルM1は、スコアを出力する(ステップS23−1)。図2の例では、データDT1が入力されたモデルM1は、スコアSC11−1に示すようなスコア「0.26」を出力する。
また、生成装置100は、処理群PS22−2に示すような処理により、商品GD2(W商品)が配信先となるユーザU101にクリックされかつ早く売れる可能性を示すスコアを算出する。生成装置100は、コンテンツ情報DT2をモデルM1に入力する(ステップS22−2)。具体的には、生成装置100は、W商品のコンテンツデータCDT2やユーザU101に関する情報等を含むデータDT2をモデルM1に入力する。データDT2が入力されたモデルM1は、スコアを出力する(ステップS23−2)。図2の例では、データDT2が入力されたモデルM1は、スコアSC11−2に示すようなスコア「0.28」を出力する。
図2の例では、生成装置100は、処理群PS22−1、PS22−2等に示すような処理により、各商品GD1〜GD5、GD101〜GD105等に対応するスコアを予測する(ステップS24)。図2の例では、生成装置100は、スコア一覧SL11に示すように、各商品GD1〜GD5、GD101〜GD105等に対応するスコアを予測する。また、生成装置100は、各商品GD1〜GD5、GD101〜GD105等に対応するスコアに基づいて、各商品GD1〜GD5、GD101〜GD105等のランキングを予測する。図2の例では、生成装置100は、スコアが高い方から順に、各商品GD1〜GD5、GD101〜GD105等のランキングを高く予測する。
その後、生成装置100は、予測結果に基づいてコンテンツ配信を行う(ステップS25)。例えば、生成装置100は、スコアが高い方から順にコンテンツを配信する。図2の例では、生成装置100は、商品GD5(Z商品)、商品GD102(B商品)、商品GD2(W商品)、商品GD1(V商品)の順にコンテンツをユーザU101が利用する端末装置10に配信する。例えば、生成装置100は、商品GD5(Z商品)、商品GD102(B商品)、商品GD2(W商品)、商品GD1(V商品)の順に一覧表示されるコンテンツを端末装置10に配信する。
上述したように、生成装置100は、モデルを用いることにより、商品に関するコンテンツがユーザにクリックされ、その商品がユーザに早く購入されるかの度合いを示すスコアを予測(生成)する。このように、生成装置100は、モデルを用いることにより、商品に関するコンテンツがユーザにクリックされ、その商品がユーザに早く購入されるかを予測する。例えば、図2の例では、生成装置100は、V商品のコンテンツデータCDT1やユーザU101に関する情報等を含むデータDT1をモデルM1に入力することにより、モデルM1にユーザU1によりV商品のコンテンツがクリックされ、ユーザU1にV商品が早く購入される度合いを示すスコアを出力させる。また、図2の例では、生成装置100は、他の各商品についての同様に、モデルM1にユーザU1により各商品のコンテンツがクリックされ、ユーザU1に各商品が早く購入される度合いを示すスコアを出力させる。そして、生成装置100は、モデルM1が出力するスコアが高い程、その商品に関するコンテンツがユーザにクリックされ、その商品がユーザに早く購入される可能性が高いと予測する。そして、図2の例では、生成装置100は、スコアが高い商品のコンテンツが優先してユーザに視認されるように、ユーザU101の端末装置10にコンテンツを配信する。これにより、生成装置100は、ユーザにクリックされたり、商品が購入されたりするコンテンツを優先してユーザに提供することができる。
(2−1.複数の指標)
上記では、第1指標「CTR」と第2指標「早く売れる」の2つの指標に対応するスコアを予測するモデルを予測(生成)する場合を示したが、生成装置100は、上記2つの指標に限らず、種々の指標に対応するスコアを予測するモデルを生成してもよい。例えば、生成装置100は、第1指標「CTR」と第2指標「コンバージョン率(CVR:Conversion Rate)」の2つの指標に対応するスコアを予測するスコアを生成してもよい。例えば、生成装置100は、第1指標「CVR」と第2指標「高く売れる」の2つの指標に対応するスコアを予測するスコアを生成してもよい。なお、上記は一例であり、生成装置100は、コンテンツに関するユーザの行動に対応する指標であれば、どのような指標を対象としてモデルを生成してもよい。
上述のように、第1指標「CTR」と第2指標「早く売れる」の2つの指標に対応するスコアを予測するモデルを生成する場合を示したが、生成装置100は、2つの指標に限らず、第3指標や第4指標等の3つ以上指標に対応するスコアを予測してもよい。例えば、生成装置100は、第1指標「CTR」、第2指標「コンバージョン率(CVR)」、第3指標「早く売れる」、及び第4指標「高く売れる」の4つの指標に対応するスコアを予測するスコアを生成してもよい。
(2−2.売れるまでの時間に基づく重み予測の対象)
なお、図1の例では、説明を簡単にするために、早く売れた場合、その経過時間に関わらず同じスコアとする場合を示したが、生成装置100は、売れるまでの時間に応じて重み付けしたスコアを設定してもよい。この点について、図12を用いて説明する。図12は、実施形態に係る所要時間に基づく倍率の変動を示す図である。
図12に示すように、生成装置100は、販売開始から所定の期間内にユーザに購入された商品であっても、販売開始からの経過時間が短い程、重みを大きくしてもよい。例えば、生成装置100は、販売開始から所定の期間内にユーザに購入された商品であっても、販売開始からの経過時間が短い程、大きなスコアとなるようにモデルを生成してもよい。
第2倍率α2は、第1倍率α1よりも、販売開始時点の重みと閾値における重みとの差が小さい倍率である。すなわち、第2倍率α2は、第1倍率α1よりも、時間経過に伴う重みの低下の割合が小さい倍率である。また、第3倍率α3は、第2倍率α2よりも、販売開始時点の重みと閾値における重みとの差が小さい倍率である。すなわち、第3倍率α3は、第2倍率α2よりも、時間経過に伴う重みの低下の割合が小さい倍率である。生成装置100は、このように重みが異なる複数の倍率を用いて、モデルの生成等を行ってもよい。
例えば、生成装置100は、第1倍率α1、第2倍率α2、第3倍率α3等の種々の倍率のうち、最も予測精度が高い倍率を用いてモデルを生成してもよい。例えば、生成装置100は、第1倍率α1、第2倍率α2、第3倍率α3等の種々の倍率の各々に基づいて、複数のモデルを生成し、生成した複数のモデルのうち、最も予測精度が高いモデルを用いてコンテンツ配信等を行ってもよい。
〔3.生成装置の構成〕
次に、図4を用いて、実施形態に係る生成装置100の構成について説明する。図4は、実施形態に係る生成装置の構成例を示す図である。図4に示すように、生成装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、生成装置100は、生成装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、端末装置10との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図4に示すように、学習データ記憶部121と、モデル情報記憶部122と、ユーザ情報記憶部123と、ログ情報記憶部124と、商品情報記憶部125とを有する。
(学習データ記憶部121)
実施形態に係る学習データ記憶部121は、学習データに関する各種情報を記憶する。図5は、実施形態に係る学習データ記憶部の一例を示す図である。例えば、学習データ記憶部121は、モデルの生成に用いる教師データを記憶する。図5に示す学習データ記憶部121には、「データID」、「対象商品」、「正解情報」、「コンテンツ情報」といった項目が含まれる。「正解情報」には、「クリック」、「早く売れる」といった項目が含まれる。また、「コンテンツ情報」には、「コンテンツデータ」、「ログデータ」といった項目が含まれる。
「データID」は、データを識別するための識別情報を示す。例えば、データID「DT101」により識別されるデータは、図1の例に示した、データDT101に対応する。「対象商品」は、データIDにより識別されるデータに対象となる商品を示す。
「正解情報」は、データIDにより識別されるデータに対応する正解情報を示す。「正解情報」中の「クリック」は、対応する対象商品のコンテンツが配信先のユーザにクリックされたか否かを示す。例えば、「クリック」が「1」である場合、対応する対象商品のコンテンツが配信先のユーザにクリックされたことを示す。例えば、「クリック」が「0」である場合、対応する対象商品のコンテンツが配信先のユーザにクリックされなかったことを示す。
「正解情報」中の「早く売れる」は、対応する対象商品のコンテンツの配信先となるユーザが、その対象商品を購入したか否かを示す。例えば、「早く売れる」が「1」である場合、対応する対象商品のコンテンツの配信が開始されてから所定の期間内に、ユーザに購入されたことを示す。例えば、「早く売れる」が「1」である場合、対応する対象商品のコンテンツの配信が開始されてから24時間内に、ユーザに購入されたことを示す。また、「早く売れる」が「1」である場合に示す時間は、対応する対象商品のコンテンツの配信が開始されてからユーザに購入されるまでに経過した時間を示す。また、例えば、「早く売れる」が「0」である場合、対応する対象商品のコンテンツの配信が開始されてから所定の期間内に、ユーザに購入されなかったことを示す。
「コンテンツ情報」は、データIDにより識別されるデータに対応するコンテンツに関する情報を示す。「コンテンツ情報」は、データIDにより識別されるデータに対応するコンテンツの配信に関する情報を示す。
「コンテンツ情報」中の「コンテンツデータ」は、データIDにより識別されるデータに対応する配信においてユーザに提供されたコンテンツデータを示す。図5では「コンテンツデータ」に「CDT101」といった概念的な情報が格納される例を示したが、実際には、コンテンツに関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。例えば、「コンテンツデータ」には、対応商品に関する商品名やカテゴリや画像やタイトルや説明文等の文字情報等の種々の情報が含まれる。例えば、「コンテンツデータ」には、対応商品に関する商品名やカテゴリや画像やタイトルや説明文等の文字情報等の種々の情報が含まれる。例えば、「コンテンツデータ」は、コンテンツに関する情報のうち、配信先となるユーザや配信日時により変動しない静的な情報であってもよい。例えば、「コンテンツデータ」には、フリーマーケット形式における契約が成立する価格やオークション形式においてオークション期間内であっても契約が成立する価格(即決価格)が含まれてもよい。
「コンテンツ情報」中の「ログデータ」は、データIDにより識別されるデータに対応する対象商品のコンテンツ配信における履歴情報を示す。「ログデータ」は、データIDにより識別されるデータに対応する対象商品のコンテンツ配信の配信先となるユーザや配信時点における種々の情報が含まれる。図5では「ログデータ」に「LDT101」といった概念的な情報が格納される例を示したが、実際には、コンテンツ配信に関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。例えば、「ログデータ」は、データIDにより識別されるデータに対応する対象商品のコンテンツ配信の配信先となるユーザに関する情報が含まれてもよい。
また、例えば、「ログデータ」には、対象商品に関するユーザの行動(入札)等によって動的に変動する動的情報であって、コンテンツ配信時点における動的情報が含まれてもよい。例えば、「ログデータ」には、コンテンツ配信時点における現在価格や入札数や入札者数や残り時間等の種々の情報が含まれてもよい。なお、上記は一例であり、ログデータには、上記に限らず種々の情報が含まれてもよい。なお、「コンテンツデータ」と「ログデータ」とは、コンテンツに関する情報であれば、互いに重複する情報が含まれてもよい。
例えば、図5に示す例において、データID「DT101」により識別されるデータ(データDT101)は、対象商品が商品GD101(A商品)であることを示す。また、データDT101は、正解情報のうち、「クリック」が「1」であり、「早く売れる」が「1(1時間)」であることを示す。また、データDT101は、コンテンツ情報のうち、「コンテンツデータ」が「CDT101」であり、「ログデータ」が「LDT101(U1等)」であることを示す。
すなわち、データDT101は、商品GD101(A商品)のコンテンツのユーザU1への配信に関するデータであることを示す。データDT101は、配信された商品GD101のコンテンツをユーザU1がクリックしたことを示す。また、データDT101は、配信された商品GD101をユーザU1が購入したことを示す。また、データDT101は、ユーザU1による商品GD101の購入が商品GD101のコンテンツの配信開始から1時間後であることを示す。
なお、学習データ記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、学習データ記憶部121は、学習データが追加された日時に関する情報を記憶してもよい。また、例えば、学習データ記憶部121は、各学習データがどのような判定処理により追加されたかを示す情報を記憶してもよい。例えば、学習データ記憶部121は、各学習データが管理者の選択により判定されたか等を示す情報を記憶してもよい。
(モデル情報記憶部122)
実施形態に係るモデル情報記憶部122は、モデルに関する情報を記憶する。例えば、モデル情報記憶部122は、生成処理により生成されたモデル情報(モデルデータ)を記憶する。図6は、実施形態に係るモデル情報記憶部の一例を示す図である。図6に示すモデル情報記憶部122は、「モデルID」、「予測対象」、「モデルデータ」といった項目が含まれる。なお、図6では、モデルM1〜M3のみを図示するが、M4、M5等、各予測対象(予測の対象)に応じて多数のモデル情報が記憶されてもよい。
「モデルID」は、モデルを識別するための識別情報を示す。例えば、モデルID「M1」により識別されるモデルは、図1の例に示したモデルM1に対応する。「予測対象」は、対応するモデルの予測対象を示す。また、「モデルデータ」は、対応付けられた対応するモデルのデータを示す。例えば、「モデルデータ」には、各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
例えば、図6に示す例において、モデルID「M1」により識別されるモデル(モデルM1)は、予測対象が「早く売れる+CTR」であり、ユーザに配信されるコンテンツがユーザにクリックされ、その対象となる商品がユーザに早く購入されるかの予測に用いられることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
例えば、モデルM1(モデルデータMDT1)は、コンテンツに関するコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価の予測に用いられるスコアの値を出力層から出力するよう、コンピュータを機能させるためのモデルである。
ここで、モデルM1〜M3等が「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、例えば、モデルM1が含む第1要素は、x1やx2等といった入力データ(xi)に対応する。また、第1要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第1要素は、入力層が有するいずれかのノードに対応し、第2要素は、出力層が有するノードと見做すことができる。
また、モデルM1〜M3等がDNN等、1つまたは複数の中間層を有するニューラルネットワークで実現されるとする。この場合、例えば、モデルM1が含む第1要素は、入力層または中間層が有するいずれかのノードに対応する。また、第2要素は、第1要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第1要素の重みは、第1要素と対応するノードから第2要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。
なお、モデル情報記憶部122は、上記に限らず、目的に応じて種々のモデル情報を記憶してもよい。
(ユーザ情報記憶部123)
実施形態に係るユーザ情報記憶部123は、ユーザに関する各種情報を記憶する。例えば、ユーザ情報記憶部123は、クラウドソーシングなどによるタスクを行う複数のワーカ(ユーザ)に関する情報を記憶する。図7は、実施形態に係るユーザ情報記憶部の一例を示す図である。図7に示すユーザ情報記憶部123は、「ユーザID」、「年齢」、「性別」、「自宅」、「勤務地」、「興味」といった項目が含まれる。
「ユーザID」は、ユーザを識別するための識別情報を示す。例えば、ユーザID「U1」により識別されるユーザは、図1の例に示したユーザU1に対応する。また、「年齢」は、ユーザIDにより識別されるユーザの年齢を示す。なお、「年齢」は、例えば35歳など、ユーザIDにより識別されるユーザの具体的な年齢であってもよい。また、「性別」は、ユーザIDにより識別されるユーザの性別を示す。
また、「自宅」は、ユーザIDにより識別されるユーザの自宅の位置情報を示す。なお、図7に示す例では、「自宅」は、「LC11」といった抽象的な符号を図示するが、緯度や経度を示す情報であってもよい。また、例えば、「自宅」は、地域名や住所であってもよい。
また、「勤務地」は、ユーザIDにより識別されるユーザの勤務地の位置情報を示す。なお、図7に示す例では、「勤務地」は、「LC12」といった抽象的な符号を図示するが、緯度や経度を示す情報であってもよい。また、例えば、「勤務地」は、地域名や住所であってもよい。
また、「興味」は、ユーザIDにより識別されるユーザの興味を示す。すなわち、「興味」は、ユーザIDにより識別されるユーザが関心の高い対象を示す。なお、図7に示す例では、「興味」は、各ユーザに1つずつ図示するが、複数であってもよい。
例えば、図7に示す例において、ユーザID「U1」により識別されるユーザの年齢は、「20代」であり、性別は、「男性」であることを示す。また、例えば、ユーザID「U1」により識別されるユーザは、自宅が「LC11」であることを示す。また、例えば、ユーザID「U1」により識別されるユーザは、勤務地が「LC12」であることを示す。また、例えば、ユーザID「U1」により識別されるユーザは、「スポーツ」に興味があることを示す。
なお、ユーザ情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、ユーザ情報記憶部123は、ユーザのデモグラフィック属性に関する情報やサイコグラフィック属性に関する情報を記憶してもよい。例えば、ユーザ情報記憶部123は、氏名、家族構成、収入、興味、ライフスタイル等の情報を記憶してもよい。
(ログ情報記憶部124)
実施形態に係るログ情報記憶部124は、ユーザの行動等の種々の履歴に関する情報を記憶する。図8は、実施形態に係るログ情報記憶部の一例を示す図である。例えば、ログ情報記憶部124は、各ユーザの端末装置10に配信したコンテンツに対するユーザの行動情報等を含む種々の行動情報を記憶する。図8に示すログ情報記憶部124には、「ユーザID」、「履歴ID」、「種別」、「内容」、「日時」といった項目が含まれる。
「ユーザID」は、ユーザを識別するための識別情報を示す。例えば、ユーザID「U1」により識別されるユーザは、図1の例に示したユーザU1に対応する。また、「履歴ID」は、ユーザの行動を識別する情報を示す。また、「種別」は、対応するユーザの行動の種別に関する情報を示す。また、「内容」は、対応するユーザの行動において対象となった内容を示す。「日時」は、対応するユーザの行動が行われた日時を示す。「日時」には、「dt11」等のように抽象的に図示するが、「2017年8月6日19時31分52秒」等の具体的な日時が記憶されてもよい。
例えば、図8に示す例において、ユーザID「U1」により識別されるユーザ(ユーザU1)は、履歴ID「LG11」により識別される履歴(履歴LG11)や履歴ID「LG12」により識別される履歴(履歴LG12)等に対応する行動を行ったことを示す。具体的には、図8に示す例においてユーザU1は、コンテンツの配信要求(履歴LG11に対応)を日時dt11に行ったことを示す。例えば、履歴LG11は、日時dt11にA商品等のコンテンツがユーザU1が利用する端末装置10に配信されたことを示す。また、図8に示す例においてユーザU1は、日時dt11後の日時dt12においてA商品のコンテンツをクリックしたことを示す。また、図8に示す例においてユーザU1は、日時dt12後の日時dt13においてA商品を購入したことを示す。
例えば、図8に示す例において、ユーザID「U2」により識別されるユーザ(ユーザU2)は、履歴ID「LG21」により識別される履歴(履歴LG21)や履歴ID「LG22」により識別される履歴(履歴LG22)等に対応する行動を行ったことを示す。具体的には、図8に示す例においてユーザU2は、コンテンツの配信要求(履歴LG21に対応)を日時dt21に行ったことを示す。例えば、履歴LG21は、日時dt21にB商品等のコンテンツがユーザU2が利用する端末装置10に配信されたことを示す。また、図8に示す例においてユーザU2は、日時dt21後の日時dt22においてB商品のコンテンツをクリックしたことを示す。また、図8に示す例においてユーザU2は、B商品を購入しなかったことを示す。
なお、ログ情報記憶部124は、上記に限らず、目的に応じて種々の情報を記憶してもよい。また、図8では、ユーザIDごとに行動情報がログ情報記憶部124に記憶される場合を示したが、行動情報は、ユーザIDごとに限らず、例えば時刻順に記憶されてもよい。
(商品情報記憶部125)
実施形態に係る商品情報記憶部125は、商品に関する情報を記憶する。例えば、商品情報記憶部125には、商品に出品された商品の詳細な情報が記憶される。図9には、商品情報記憶部に記憶される商品に関する情報の一例を示す。図9に示すように、商品情報記憶部125は、商品に関する情報として、「商品ID」、「商品名」、「販売モード」、「コンテンツデータ」といった項目が含まれる。
「商品ID」は、商品を識別するための識別情報を示す。また、「商品名」は、商品IDにより識別される商品の名称を示す。また、「販売モード」は、対応する商品の販売態様を示す。例えば、「販売モード」は、オークション形式やフリーマーケット形式等の商品の出品形式を示す。例えば、「販売モード」が「フリマ」である場合、その商品の販売形態は、フリーマーケット形式であることを示す。例えば、「販売モード」が「オークション」である場合、その商品の販売形態は、オークション形式であることを示す。例えば、「販売モード」が「オークション(即決有)」である場合、その商品の販売形態は、オークション形式であり、かつオークション期間内であっても契約が成立する価格(即決価格)の設定が有ることを示す。
「コンテンツデータ」は、商品IDにより識別される商品に対応するコンテンツデータを示す。図9では「コンテンツデータ」に「CDT1」といった概念的な情報が格納される例を示したが、実際には、コンテンツに関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。例えば、「コンテンツデータ」には、対応する商品に関するカテゴリや画像やタイトルや説明文等の文字情報等の種々の情報が含まれる。例えば、図9中の「コンテンツデータ」は、コンテンツに関する情報のうち、配信先となるユーザや配信日時により変動しない静的な情報であってもよい。例えば、「コンテンツデータ」には、フリーマーケット形式における契約が成立する価格やオークション形式においてオークション期間内であっても契約が成立する価格(即決価格)が含まれてもよい。なお、図9の例では、商品名を図示するために、「商品名」の項目を示したが、「商品名」の情報は「コンテンツデータ」に含まれてもよい。
例えば、図9に示す例において、商品ID「GD1」により識別される商品(商品GD1)は、商品名が「V商品」であることを示す。また、商品GD1は、販売モード「フリマ」であり、コンテンツデータが「CDT1」であることを示す。
なお、商品情報記憶部125は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(制御部130)
図4の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、生成装置100内部の記憶装置に記憶されている各種プログラム(生成プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。制御部130は、モデル情報記憶部122に記憶されているモデルM1等に従った情報処理により、コンテンツに関するコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価の予測に用いられるスコアの値を出力層から出力する。
図4に示すように、制御部130は、取得部131と、生成部132と、予測部133と、配信部134とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。制御部130は、記憶部120に記憶されているモデルM1(モデルデータMDT1)に従った情報処理により、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価の予測に用いられるスコアの値を出力層から出力する。
(取得部131)
取得部131は、各種情報を取得する。例えば、取得部131は、学習データ記憶部121と、モデル情報記憶部122と、ユーザ情報記憶部123と、ログ情報記憶部124と、商品情報記憶部125等から各種情報を取得する。また、取得部131は、各種情報を外部の情報処理装置から取得してもよい。また、取得部131は、各種情報を端末装置10等から取得してもよい。
例えば、取得部131は、コンテンツに関するコンテンツ情報を取得する。例えば、取得部131は、ユーザが利用する端末装置へのコンテンツの配信に関するログ情報を含むコンテンツ情報を取得する。例えば、取得部131は、コンテンツに関する対象に設定された金額に対する承諾に応じて取引が成立する態様で出品された対象に対応するコンテンツ情報を取得する。例えば、取得部131は、コンテンツに関する対象に設定された期間内における対象に対する入札に応じて取引が成立する態様で出品された対象に対応するコンテンツ情報を取得する。
図1の例では、取得部131は、ユーザU1から商品GD101(A商品)等のコンテンツに対する行動情報を取得する。例えば、取得部131は、端末装置10−1からユーザU1がA商品のコンテンツをクリックし、A商品を購入したことを示す行動情報を取得する。例えば、取得部131は、ユーザU2から商品GD102(B商品)等のコンテンツに対する行動情報を取得する。例えば、取得部131は、端末装置10−2からユーザU2がB商品のコンテンツをクリックしたことを示す行動情報を取得する。例えば、取得部131は、ユーザU3から商品GD103(C商品)等のコンテンツに対する行動情報を取得する。例えば、取得部131は、端末装置10−3からユーザU3がC商品のコンテンツをクリックし、C商品を購入したことを示す行動情報を取得する。
また、図1の例では、取得部131は、ユーザU4から商品GD104(D商品)等のコンテンツに対する行動情報を取得する。例えば、取得部131は、端末装置10−4からユーザU4がD商品のコンテンツに関する行動を行わなかったことを示す行動情報を取得する。例えば、取得部131は、端末装置10−4からユーザU4がD商品のコンテンツをクリックせず、D商品の購入も行わなかったことを示す行動情報を取得する。例えば、取得部131は、ユーザU5から商品GD105(E商品)等のコンテンツに対する行動情報を取得する。例えば、取得部131は、端末装置10−5からユーザU5がE商品のコンテンツに関する行動を行わなかったことを示す行動情報を取得する。例えば、取得部131は、端末装置10−5からユーザU5がE商品のコンテンツをクリックせず、E商品の購入も行わなかったことを示す行動情報を取得する。
例えば、取得部131は、コンテンツの配信要求を取得する。図2の例では、取得部131は、ユーザU101が利用する端末装置10からコンテンツの配信要求を取得する。
(生成部132)
生成部132は、各種情報を生成する。例えば、生成部132は、学習データ記憶部121に記憶された学習データを用いて、モデル情報記憶部122に示すようなモデルを生成する。例えば、生成部132は、取得部131により取得されたコンテンツ情報を用いて、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を示すスコアを出力するモデルを生成する。また、生成部132は、コンテンツに関するユーザの行動情報を正解情報として、モデルを生成する。
例えば、生成部132は、ユーザによるコンテンツに関する対象の購入有無に関する指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成する。例えば、生成部132は、コンテンツの配信開始から所定期間以内における対象の購入有無に関する指標であって、対象が早く売れたかを示す指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成する。
例えば、生成部132は、コンテンツの配信開始から対象が購入されるまでの時間が短い程、高いスコアが出力されるようにモデルを生成する。例えば、生成部132は、コンテンツの配信開始から対象が購入されるまでの時間が短い行動情報程、重みを重くすることによりモデルを生成する。例えば、生成部132は、ユーザによるコンテンツのクリック有無に関する指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成する。例えば、生成部132は、複数の指標の各々に対応する行動を行ったユーザの行動情報が入力された場合に高いスコアを出力するようにモデルを生成する。
例えば、生成部132は、モデルM1〜M3等を生成し、生成したモデルM1〜M3等をモデル情報記憶部122に格納する。なお、生成部132は、いかなる学習アルゴリズムを用いてモデルM1〜M3等を生成してもよい。例えば、生成部132は、ニューラルネットワーク、サポートベクターマシン(SVM)、クラスタリング、強化学習等の学習アルゴリズムを用いてモデルM1〜M3等を生成する。一例として、生成部132がニューラルネットワークを用いてモデルM1〜M3等を生成する場合、モデルM1〜M3等は、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。
生成部132は、モデルを生成し、生成したモデルをモデル情報記憶部122に格納する。具体的には、生成部132は、コンテンツに関するコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価の予測に用いられるスコアの値を出力層から出力するモデルを生成する。
図1の例では、生成部132は、学習データに基づいてモデルを生成する。例えば、生成部132は、学習データ記憶部121中のデータDT101〜DT105等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。例えば、生成部132は、コンテンツに関する特徴量を用いて、モデルを生成する。例えば、生成部132は、コンテンツの内容に関する特徴量を用いて、モデルを生成する。例えば、生成部132は、コンテンツに対応する商品に関する特徴量を用いて、モデルを生成する。例えば、生成部132は、コンテンツに対応する商品のカテゴリや販売モード等に関する特徴量を用いて、モデルを生成する。例えば、生成部132は、コンテンツの配信先となるユーザに関する特徴量を用いて、モデルを生成する。例えば、生成部132は、コンテンツ情報に含まれるそのコンテンツに対応する商品等に関する特徴を学習し、そのコンテンツがユーザにクリックされたり、そのコンテンツに対応する商品がユーザに購入されたりするかを予測するモデルを生成する。
図1の例では、生成部132は、データDT101〜DT105を用いてモデルM1を生成する。例えば、生成部132は、正解情報である第1指標「クリック」及び第2指標「早く売れる」の両方が「1」であるデータDT101については、モデルM1にデータDT101に対応するコンテンツ情報が入力された場合に、モデルM1が出力するスコアが「1」に近づくように、学習処理を行う。例えば、生成部132は、データDT101のコンテンツデータCDT101やログデータLDT101等がモデルM1に入力された場合に、モデルM1が出力するスコアが「1」に近づくように、学習処理を行う。
また、例えば、生成部132は、正解情報である第1指標「クリック」が「1」であり、第2指標「早く売れる」が「0」であるデータDT102については、モデルM1にデータDT102に対応するコンテンツ情報が入力された場合に、モデルM1が出力するスコアが「0.5」に近づくように、学習処理を行う。例えば、生成部132は、データDT102のコンテンツデータCDT102やログデータLDT102等がモデルM1に入力された場合に、モデルM1が出力するスコアが「0.5」に近づくように、学習処理を行う。
また、例えば、生成部132は、正解情報である第1指標「クリック」及び第2指標「早く売れる」の両方が「0」であるデータDT104については、モデルM1にデータDT104に対応するコンテンツ情報が入力された場合に、モデルM1が出力するスコアが「0」に近づくように、学習処理を行う。例えば、生成部132は、データDT104のコンテンツデータCDT104やログデータLDT104等がモデルM1に入力された場合に、モデルM1が出力するスコアが「0」に近づくように、学習処理を行う。
図1の例では、生成部132は、上記のようなデータDT101〜DT105等を含む学習データに基づいてモデルを生成する。例えば、生成部132は、学習データ記憶部121中のデータDT101〜DT105等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。図1に示すような処理により生成部132は、モデル情報記憶部122に示すように、モデルID「M1」により識別されるモデル(モデルM1)を生成する。
(予測部133)
予測部133は、各種情報を予測する。予測部133は、学習データ記憶部121と、モデル情報記憶部122と、ユーザ情報記憶部123と、ログ情報記憶部124と、商品情報記憶部125等に記憶された情報を用いて種々の情報を予測する。例えば、予測部133は、取得部131により取得された各種情報に基づいて、種々の情報を予測する。
例えば、予測部133は、モデルを用いて、コンテンツのスコアを予測する。例えば、予測部133は、コンテンツに関するコンテンツ情報をモデルに入力することにより、コンテンツのスコアを予測する。例えば、予測部133は、モデルM1が出力するスコアに基づいて、コンテンツに関するユーザの行動に対応する複数の指標に対応するコンテンツの評価を予測する。例えば、予測部133は、モデルM1が出力するスコアに基づいて、コンテンツがクリックされるかを示す第1指標「CTR」と、コンテンツに対応する商品が早く売れるかを示す第2指標「早く売れる」の2つ指標に対応するコンテンツの評価を予測する。
図2の例では、予測部133は、処理群PS22−1、PS22−2等に示すような処理により、各商品GD1〜GD5、GD101〜GD105等に対応するスコアを予測する。例えば、予測部133は、スコア一覧SL11に示すように、各商品GD1〜GD5、GD101〜GD105等に対応するスコアを予測する。例えば、予測部133は、各商品GD1〜GD5、GD101〜GD105等に対応するスコアに基づいて、各商品GD1〜GD5、GD101〜GD105等のランキングを予測する。例えば、予測部133は、スコアが高い方から順に、各商品GD1〜GD5、GD101〜GD105等のランキングを高く予測する。
例えば、予測部133は、上述した回帰モデルやニューラルネットワーク等、任意の構造を有するモデルを用いて、スコアの算出を行う。具体的には、モデルM1は、コンテンツに関するコンテンツ情報(すなわち、上述したスコアの算出に用いられる各要素)が入力された場合に、所定の対象の予測を定量化した値(すなわち、複数の指標の各々に対応する行動がユーザにより行われる可能性が高いかを示唆するスコア)を出力するように係数が設定される。予測部133は、このようなモデルM1を用いて、各出品の対象に関するスコアを算出する。
なお、上記例では、モデルM1が、コンテンツに関するコンテンツ情報が入力された場合に、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を定量化した値を出力するモデルである例を示した。しかし、実施形態に係るモデル(モデルX)は、モデルM1にデータの入出力を繰り返すことで得られる結果に基づいて生成されるモデルであってもよい。例えば、モデルXは、コンテンツに関するコンテンツ情報を入力とし、モデルM1が出力するスコアを出力とするよう学習されたモデル(モデルY)であってもよい。または、モデルM1は、コンテンツに関するコンテンツ情報を入力とし、モデルYの出力値を出力とするよう学習されたモデルであってもよい。また、予測部133がGAN(Generative Adversarial Networks)を用いた予測処理を行う場合、モデルM1は、GANの一部を構成するモデルであってもよい。
(配信部134)
配信部134は、各種情報を提供する。例えば、配信部134は、端末装置10に各種情報を提供する。配信部134は、予測部133により予測されたスコアに基づいてサービスを提供する。例えば、配信部134は、予測部133により予測されたスコアに基づいて、コンテンツ配信サービスを提供する。また、例えば、配信部134は、生成部132により生成されたモデルに関する情報を外部の情報処理装置へ提供してもよい。また、例えば、配信部134は、モデルが出力する情報を外部の情報処理装置へ提供してもよい。
配信部134は、モデルが出力するスコアに基づいて、コンテンツを配信する。例えば、配信部134は、オークション形式により取引される対象に関するコンテンツと、フリーマーケット形式により取引される対象に関するコンテンツとを含むコンテンツ群のうち、モデルが出力するスコアに基づいて、コンテンツを配信する。
図1の例では、配信部134は、ユーザU1〜U5が利用する端末装置10−1〜10−5にコンテンツを配信する。図2の例では、配信部134は、予測部133による予測結果に基づいてコンテンツ配信を行う。例えば、配信部134は、スコアが高い方から順にコンテンツを配信する。例えば、配信部134は、商品GD5(Z商品)、商品GD102(B商品)、商品GD2(W商品)、商品GD1(V商品)の順にコンテンツをユーザU101が利用する端末装置10に配信する。例えば、配信部134は、商品GD5(Z商品)、商品GD102(B商品)、商品GD2(W商品)、商品GD1(V商品)の順に一覧表示されるコンテンツを端末装置10に配信する。
〔4.生成処理のフロー〕
次に、図10を用いて、実施形態に係る生成システム1による生成処理の手順について説明する。図10は、実施形態に係る生成処理の一例を示すフローチャートである。
図10に示すように、生成装置100は、学習データを取得する(ステップS101)。例えば、生成装置100は、学習データ記憶部121から学習データを取得する。
その後、生成装置100は、学習データに基づきモデルを生成する(ステップS102)。図1の例では、生成装置100は、学習データ記憶部121に記憶された学習データを用いてモデルM1を生成する。
〔5.配信処理のフロー〕
次に、図11を用いて、実施形態に係る生成システム1による配信処理の手順について説明する。図11は、実施形態に係る配信処理の一例を示すフローチャートである。
図11に示すように、生成装置100は、配信要求を取得する(ステップS201)。図2の例では、生成装置100は、ユーザU101が利用する端末装置10から配信要求を取得する。
また、生成装置100は、モデルを用いて各商品のスコアを予測する(ステップS202)。図2の例では、生成装置100は、モデルM1を用いて、商品GD1〜GD5、GD101〜GD105等のコンテンツ(商品情報)のスコアを予測する。
また、生成装置100は、予測したスコアに基づいて、商品に関するコンテンツを提供する(ステップS203)。図2の例では、生成装置100は、商品GD5(Z商品)、商品GD102(B商品)、商品GD2(W商品)、商品GD1(V商品)等、スコアが高い方から順にコンテンツを配信する。
〔6.効果〕
上述してきたように、実施形態に係る生成装置100は、取得部131と、生成部132とを有する。取得部131は、コンテンツに関するコンテンツ情報を取得する。また、生成部132は、取得部131により取得されたコンテンツ情報を用いて、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を示すスコアを出力するモデルを生成する。
このように、実施形態に係る生成装置100は、コンテンツ情報を用いて、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を示すスコアを出力するモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、取得部131は、ユーザが利用する端末装置10へのコンテンツの配信に関するログ情報を含むコンテンツ情報を取得する。また、生成部132は、コンテンツに関するユーザの行動情報を正解情報として、モデルを生成する。
このように、実施形態に係る生成装置100は、コンテンツに関するユーザの行動情報を正解情報として、モデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、生成部132は、ユーザによるコンテンツに関する対象の購入有無に関する指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成する。
このように、実施形態に係る生成装置100は、ユーザによるコンテンツに関する対象の購入有無に関する指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、生成部132は、コンテンツの配信開始から所定期間以内における対象の購入有無に関する指標であって、対象が早く売れたかを示す指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成する。
このように、実施形態に係る生成装置100は、コンテンツの配信開始から所定期間以内における対象の購入有無に関する指標であって、対象が早く売れたかを示す指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、生成部132は、コンテンツの配信開始から対象が購入されるまでの時間が短い程、高いスコアが出力されるようにモデルを生成する。
このように、実施形態に係る生成装置100は、コンテンツの配信開始から対象が購入されるまでの時間が短い程、高いスコアが出力されるようにモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、生成部132は、コンテンツの配信開始から対象が購入されるまでの時間が短い行動情報程、重みを重くすることによりモデルを生成する。
このように、実施形態に係る生成装置100は、コンテンツの配信開始から対象が購入されるまでの時間が短い行動情報程、重みを重くすることによりモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、取得部131は、コンテンツに関する対象に設定された金額に対する承諾に応じて取引が成立する態様で出品された対象に対応するコンテンツ情報を取得する。
このように、実施形態に係る生成装置100は、コンテンツに関する対象に設定された金額に対する承諾に応じて取引が成立する態様で出品された対象に対応するコンテンツ情報を取得することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、取得部131は、コンテンツに関する対象に設定された期間内における対象に対する入札に応じて取引が成立する態様で出品された対象に対応するコンテンツ情報を取得する。
このように、実施形態に係る生成装置100は、コンテンツに関する対象に設定された期間内における対象に対する入札に応じて取引が成立する態様で出品された対象に対応するコンテンツ情報を取得することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、生成部132は、ユーザによるコンテンツのクリック有無に関する指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成する。
このように、実施形態に係る生成装置100は、ユーザによるコンテンツのクリック有無に関する指標を含む複数の指標に基づく評価を示すスコアを出力するモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100において、生成部132は、複数の指標の各々に対応する行動を行ったユーザの行動情報が入力された場合に高いスコアを出力するようにモデルを生成する。
このように、実施形態に係る生成装置100は、複数の指標の各々に対応する行動を行ったユーザの行動情報が入力された場合に高いスコアを出力するようにモデルを生成することにより、コンテンツに関するユーザの行動に対応する複数の指標に基づく評価を適切に予測可能にすることができる。
また、実施形態に係る生成装置100は、配信部134を有する。配信部134は、モデルが出力するスコアに基づいて、コンテンツを配信する。
このように、実施形態に係る生成装置100は、モデルが出力するスコアに基づいて、コンテンツを配信することにより、コンテンツに関するユーザの行動に対応する複数の指標の予測評価に応じた情報提供を行うことができる。
また、実施形態に係る生成装置100において、配信部134は、オークション形式により取引される対象に関するコンテンツと、フリーマーケット形式により取引される対象に関するコンテンツとを含むコンテンツ群のうち、モデルが出力するスコアに基づいて、コンテンツを配信する。
このように、実施形態に係る生成装置100は、オークション形式により取引される対象に関するコンテンツと、フリーマーケット形式により取引される対象に関するコンテンツとを含むコンテンツ群のうち、モデルが出力するスコアに基づいて、コンテンツを配信することにより、コンテンツに関するユーザの行動に対応する複数の指標の予測評価に応じた情報提供を行うことができる。
〔7.ハードウェア構成〕
上述してきた実施形態に係る生成装置100は、例えば図13に示すような構成のコンピュータ1000によって実現される。図13は、生成装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る生成装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
以上、本願の実施形態及び変形例のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔8.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。