以下に、本願に係る情報処理装置、情報処理方法及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
〔1.情報処理システムの構成〕
図1に示す情報処理システム1について説明する。図1に示すように、情報処理システム1は、情報表示装置10と、情報処理装置100とが含まれる。情報表示装置10と、情報処理装置100とは所定の通信網(ネットワークN)を介して、有線または無線により通信可能に接続される。図1は、実施形態に係る情報処理システム1の構成例を示す図である。なお、図1に示した情報処理システム1には、複数台の情報表示装置10や、複数台の情報処理装置100が含まれてもよい。
情報表示装置10は、ユーザによって利用される情報処理装置である。情報表示装置10は、実施形態における処理を実現可能であれば、どのような装置であってもよい。また、情報表示装置10は、スマートフォンや、タブレット型端末や、ノート型PCや、デスクトップPCや、携帯電話機や、PDA等の装置であってもよい。図2に示す例においては、情報表示装置10がスマートフォンである場合を示す。
情報表示装置10は、例えば、スマートフォンやタブレット等のスマートデバイスであり、3G(Generation)やLTE(Long Term Evolution)等の無線通信網を介して任意のサーバ装置と通信を行うことができる携帯端末装置である。また、情報表示装置10は、液晶ディスプレイ等の画面であって、タッチパネルの機能を有する画面を有し、ユーザから指やスタイラス等によりタップ操作、スライド操作、スクロール操作等、コンテンツ等の表示データに対する各種の操作を受け付けてもよい。
情報処理装置100は、各種のコーディネートの生成を実現するための情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。例えば、情報処理装置100は、複数のアイテムを含むアイテム群をクエリとして受け付けて、受け付けられたクエリと対応するクエリとは異なるアイテムを組み合わせたアイテム群ごとに、クエリとなるアイテム群との調和具合を示すスコアを算出する機能を有する。情報処理装置100は、例えば、PC、WS(Work Station)等の情報処理装置であり、情報表示装置10等からネットワークNを介して送信されてきた情報に基づいて処理を行う。
なお、図1では、情報表示装置10と情報処理装置100とが、別装置である場合を示すが、情報表示装置10と情報処理装置100とが一体であってもよい。
〔2.情報処理の一例〕
画像などの特徴量を示す情報の集合に基づいて、集合同士の調和具合を示すスコア(以下、適宜、「マッチングスコア」とする。)を算出する技術の一例として、セットマッチング(Set Matching)と呼ばれる技術が知られている。セットマッチングは、例えば深層学習を用いた技術であり、マッチングスコアが高いほど、集合同士の相性が高いと推定する。このため、セットマッチングは、集合同士の相性を定量的に評価することができる。セットマッチングを用いたマッチングスコアの算出は、例えば、Y. Saito, T. Nakamura, H. Hachiya, K. Fukumizu "Exchangeable Deep Neural Networks for Set-to-Set Matching and Learning"に開示されている。なお、セットマッチングは一例であり、以下実施形態は、この技術を用いた場合に限られないものとする。
以下実施形態では、セットマッチングのような集合同士のマッチングスコアを算出する技術を応用して、コーディネート全体として調和の高い情報を提供するための情報処理を説明する。なお、以下実施形態では、マッチングスコアの算出の対象となる集合を、適宜、「サブコーデ」と表記する。また、以下実施形態では、サブコーデ同士の組み合わせに基づくコーディネートの生成を、適宜、「コーデ生成」と表記する。そして、以下実施形態では、サブコーデ同士を組み合わせることで一つのコーディネートを完成させる。
以下実施形態では、説明の便宜上、ファッションのコーデ生成を一例として説明するが、ファッションに限らず、どのような特定アイテムのコーデ生成にも応用可能であるものとする。例えば、家具や花束などの外観に特徴がある特定アイテムのコーデ生成にも応用可能であるものとする。
図2は、実施形態に係る情報処理システム1の情報処理の一例を示す図である。図2では、情報表示装置10を介してユーザU11にコーデ生成結果を提案するものとする。
情報処理装置100は、ユーザU11が所持していると判定されたアイテム群に関する情報を取得する(ステップS101)。なお、ユーザU11が所持しているか否かの判定は、どのように行われてもよい。例えば、ユーザU11が所持しているか否かの判定は、ユーザU11の購買履歴に基づいて行われてもよいし、所持しているアイテムとしてユーザU11により予め入力されたアイテム群との比較に基づいて行われてもよい。
情報処理装置100は、ユーザU11が所持していると判定されたアイテム群のうち、選択された複数のアイテムを含むアイテム群をクエリとして受け付ける。この受け付けられたクエリは、サブコーデとなるため、以下、適宜、「クエリサブコーデ」と表記する。クエリサブコーデは、ユーザ側のサブコーデである。
情報処理装置100は、クエリサブコーデと組み合わせることでコーデ生成を行う候補となるサブコーデに関する情報を取得する(ステップS102)。このサブコーデは、例えば、電子商取引で取引される複数のアイテムから構成されるアイテム群であり、電子商取引で取引されると判定された全アイテムを含むアイテム群(以下、適宜、「ギャラリー」とする。)から選択された複数のアイテムを含むアイテム群である。
このような、ギャラリーから選択されたアイテム群も、クエリサブコーデと同様に、複数のアイテムを含むアイテム群であり、サブコーデとなるため、以下、適宜、「ギャラリーサブコーデ」と表記する。ギャラリーサブコーデは、電子商取引を管理するサーバ側のサブコーデである。
ギャラリーサブコーデは、クエリサブコーデと組み合わせることで一つのコーディネートを完成させるための構成の候補であり、候補はクエリサブコーデごとに複数あるものとする。また、ギャラリーサブコーデは、参照データである一のクエリサブコーデに基づいて、最適化時などに取捨選択を繰り返し動的に生成された候補である。なお、ギャラリーサブコーデは、一のクエリサブコーデに紐づくサブコーデとして、クエリサブコーデごとに候補が予め複数定められていてもよい。
具体的な例を挙げると、腕時計とシューズとを含むクエリサブコーデに対して、組み合わせ可能な二つのギャラリーサブコーデがあり、一のギャラリーサブコーデがシャツとパンツとを含み、二のギャラリーサブコーデがトップスとパンツとバッグとを含む場合が挙げられる。情報処理装置100は、クエリサブコーデと一方のギャラリーサブコーデとを組み合わせることで、コーデ生成を行い、一つのコーディネートを完成させる。
すなわち、情報処理装置100は、ユーザ側のアイテム群であるクエリサブコーデに対して、補完するようなサーバ側のアイテム群であるギャラリーサブコーデを合わせることで、コーデ生成を行う。これにより、情報処理装置100は、一つのコーディネートを完成させることができるため、例えば全身のコーディネートを提案することができる。
このように、情報処理装置100は、ユーザが所持しているアイテム群とのコーディネートに適したアイテム群を提案することができるため、例えば、電子商取引の対象となるアイテム群の購買機会の向上を促進することができる。
一方、情報処理装置100は、所定のウェブサービスに投稿された投稿情報を教師データ(正解データ)として予め生成されたモデル(学習器)に関する情報を取得する(ステップS103)。例えば、情報処理装置100は、ユーザ同士が全身のファッションのコーディネート画像を投稿して、互いの画像を閲覧することでファッションのコーディネートの参考とすることを目的とした所定のウェブサービスに投稿された投稿情報を正解データとして生成されたモデルに関する情報を取得する。
情報処理装置100は、クエリサブコーデとギャラリーサブコーデとのサブコーデ同士の組み合わせをモデルの入力情報とするが、モデルの詳細は後述する。ここで、所定のウェブサービスに投稿された投稿情報について説明する。コンテンツCT11は、所定のウェブサービスのウェブコンテンツであり、コンテンツCT11は種々の投稿情報を含む。
コンテンツCT11は、画像GA11及びGA12を含む。画像GA11及びGA12は、異なる二人のユーザにより投稿されたコーディネート画像である。画像GA11は、アイテムFI11乃至FI14を含む。アイテムFI11はハットであり、アイテムFI12は、トップスであり、アイテムFI13はパンツであり、アイテムFI14は、シューズである。
画像GA11は、アイテムFI12のアイテム情報SI11を含む。アイテム情報SI11は、例えば画像GA11を投稿したユーザによって、他のユーザがアイテムFI12を特定できるように設定(例えば、入力や選択)されたアイテム情報である。図2では、アイテム情報SI11が、価格情報と、購入のためのカート情報とを含む商品情報である場合を示す。なお、画像GA11には、アイテム情報SI11が表示される場合を示すが、例えばコンテンツCT11に対する操作に応じて、他のアイテムのアイテム情報も表示されてもよいものとする。
図2では、画像GA11及びGA12が、投稿したユーザの全身を含み、且つ、複数のアイテムを含む画像である場合を示すが、コンテンツCT11を提供する所定のウェブサービスを介して購入し得るアイテムなど、アイテム情報が特定され得るアイテムを複数含む画像であれば、どのような画像であってもよい。例えば、全身を含む画像に限らず、半身のみの一部を含む画像であってもよい。なお、画像に含まれるアイテムの検出は、例えば、従来の画像検出技術に基づいて行われてもよい。
図示されていないが、コンテンツCT11への投稿情報には、画像GA11及びGA12のような画像情報に限らず、他のユーザのコメントやSNS上で評価や共感を示す際に一般的に用いられる「いいね」などの評価を含んでもよい。また、他のユーザの評価は、コーディネート全体としての評価に限らず、部分的な評価であってもよい。例えば、画像に含まれる個々のアイテム同士の評価であってもよい。また、他のユーザの評価は、画像に含まれる背景(例えば、アイテムではないオブジェクト)や人物などとの調和具合を鑑みた評価であってもよい。
情報処理装置100は、サブコーデ同士の組み合わせごとにマッチングスコアを算出する(ステップS104)。具体的には、情報処理装置100は、ギャラリーサブコーデごとにクエリサブコーデとのマッチングスコアを算出する。
情報処理装置100は、マッチングスコアが高いほど、クエリサブコーデとギャラリーサブコーデとのサブコーデ同士の相性が高いと推定することができるため、一のクエリサブコーデに対して、最もマッチングスコアが高く算出されたギャラリーサブコーデを特定する(ステップS105)。
情報処理装置100は、一のクエリサブコーデに対して、特定されたギャラリーサブコーデがギャラリー中で相性が最も高いサブコーデと推定する。これにより、情報処理装置100は、サブコーデ同士の相性を、外観などのユーザの感覚的な判断ではなく、定量的に判断することができる。
図3は、マッチングスコアの算出結果の一例を示す図である。クエリサブコーデKS11とギャラリーサブコーデGS11とのマッチングスコアは「24.4」であり、クエリサブコーデKS11とギャラリーサブコーデGS12とのマッチングスコアは「30.8」である。この場合、情報処理装置100は、マッチングスコアがより高いギャラリーサブコーデGS12のほうが、クエリサブコーデKS11とのサブコーデ同士の相性が高いと推定する。これにより、情報処理装置100は、サブコーデ同士の組み合わせの最適化を適切に行うことができる。
ここで、サブコーデ同士の相性について説明する。情報処理装置100は、サブコーデ同士の組み合わせが、マッチングスコアの算出のための原データである投稿情報に近いほど、サブコーデ同士の相性が高いと推定する。
情報処理装置100は、例えば、クエリサブコーデKS11とギャラリーサブコーデGS12との組み合わせに基づくコーディネートのほうが、よりコンテンツCT11に投稿された投稿情報に基づくコーディネートに近いため、ギャラリーサブコーデGS12のほうが、クエリサブコーデKS11との相性が高いと推定する。
具体的には、情報処理装置100は、コンテンツCT11に投稿されたコーディネート画像において、クエリサブコーデKS11とギャラリーサブコーデGS12との組み合わせと似た画像のアイテムを着用しているユーザが比較的多いほど、マッチングスコアを高く算出し、サブコーデ同士の相性が高いと推定する。
情報処理装置100は、コンテンツCT11に投稿された投稿情報を正解データとして学習することで、マッチングスコアを算出する。このため、情報処理装置100は、よりコンテンツCT11に投稿されたものに近いほど、マッチングスコアを高く算出する。
以下、コーデ生成の処理の詳細について説明する。ここで、情報処理装置100が、例えば、ギャラリーのアイテム全てを用いて総当たり方式でコーデ生成を行う場合、アイテム候補が多すぎてマッチングスコアの算出に時間が掛かり過ぎる場合がある。また、総当たり方式でマッチングスコアを算出する場合、情報処理装置100が提案するコーディネートの質が低下する場合がある。
一般的に、ランダムに取得したアイテムを取捨選択する場合、アイテム候補が多いほど、良い候補を特定することが困難になる。また、算出に掛かる時間が長くなる原因にもなる。これを回避するため、例えば、所定の条件に基づいてアイテム候補を絞ることが考えられる。以下、情報処理装置100が行う所定の条件に基づく処理について説明する。
(カテゴリに基づくアイテム候補の選択)
図4は、カテゴリに基づくアイテム候補の選択を説明するための説明図である。クエリサブコーデKS21は、カテゴリKA11及びKA12を含む。カテゴリKA11は腕時計であり、カテゴリKA12はシューズである。カテゴリKA11及びKA12は、例えば購買履歴に基づくユーザが所持しているアイテム、若しくは、そのカテゴリである。また、ギャラリーサブコーデGS21は、カテゴリKA13乃至KA15を含む。カテゴリKA13はトップスであり、カテゴリKA14はパンツであり、カテゴリKA15はバッグである。
カテゴリKA11及びKA12は、コーデ生成の対象として特定されているため、説明の便宜上、画像が表示されている。一方、カテゴリKA13乃至KA15は、特定されていないため、説明の便宜上、疑問符の記号が表示されている。
情報処理装置100は、クエリサブコーデ、若しくは、クエリサブコーデのカテゴリと、ギャラリーサブコーデのカテゴリとを予め紐づけて記憶しておくことで、クエリサブコーデが選択されると、紐づけに基づいて、ギャラリーサブコーデのアイテム候補を特定する。なお、このようなカテゴリの紐づけを予め複数通り記憶してもよい。例えば、クエリサブコーデのカテゴリとしてトップスとパンツの組み合わせを用意し、これに紐づいたギャラリーサブコーデのカテゴリには、ボトムスとシューズの組み合わせと、スカートとシューズの組み合わせとを用意してもよい。このとき、ギャラリーサブコーデのカテゴリの組み合わせのうちどちらかを選択するかは、ランダムに一つだけ決めてもよいし、ユーザの嗜好の傾向やその他の統計情報に基づいて一つだけ決定してもよいし、一部または全部を使用してマッチングスコアの算出に用いてもよい。ここでユーザの嗜好として、例えばユーザがスカートとパンツどちらを好むかを、アイテムやコーディネートの閲覧回数や購入回数に基づいて決定してもよい。このとき、複数通りのカテゴリの組み合わせに基づいてマッチングスコアの算出を行う場合は、最もマッチングスコアが高かったサブコーデの組み合わせを最終的なコーディネートとしてもよいし、ここで得られた複数のコーディネートを以降の処理に用いてもよい。
情報処理装置100は、例えば、クエリサブコーデKS21のように、腕時計とシューズとがクエリサブコーデである場合には、ギャラリーサブコーデGS21のような、トップスとパンツとバッグとのカテゴリに絞ることで、アイテム候補を特定する。そして、情報処理装置100は、トップスとパンツとバッグとのカテゴリそれぞれについて特定されたアイテム候補から、アイテムをそれぞれ特定する。
これにより、情報処理装置100は、トップスとパンツとバッグとのカテゴリの組み合わせに限定してマッチングスコアを算出すればよいため、アウターなどの他のカテゴリのアイテムを用いたマッチングスコアを算出する必要がなくなる。このため、算出時間を短縮することが可能となる。
一方、情報処理装置100は、ギャラリーサブコーデが選択されることで、紐づけに基づいて、クエリサブコーデのアイテム候補を特定してもよい。
図4では、トップスとパンツとバッグといったギャラリーサブコーデのカテゴリが全て異なる場合を示すが、複数のカテゴリが同一であってもよい。トップスの場合を例に挙げると、冬場などコーディネートとして重ね着をする場合がある。このような場合を鑑みて、ギャラリーサブコーデのカテゴリとして、トップスのカテゴリが複数含まれてもよい。なお、ギャラリーサブコーデに限らず、クエリサブコーデも同様に、複数のカテゴリが同一であってもよい。
情報処理装置100は、同一のカテゴリを含むサブコーデを用いて、マッチングスコアを算出することにより、コーデ生成を行ってもよい。このような、一のサブコーデに含まれるカテゴリとして、複数あってもよいカテゴリを、以下、適宜、「許容カテゴリ」とする。
一方、サブコーデに含まれるカテゴリの組み合わせとして、除外対象となる組み合わせがあってもよい。例えばワンピースとパンツとの組み合わせなど、コーディネートとして組み合わせが想定され難い場合である。また、トップスは複数あってもよいが、シューズが複数は除外したい場合などである。
情報処理装置100は、除外対象として予め定められた組み合わせを除外して、マッチングスコアを算出することにより、コーデ生成を行ってもよい。このような、除外対象として予め定められたカテゴリを、以下、適宜、「排他カテゴリ」とする。
情報処理装置100は、例えば、許容カテゴリと排他カテゴリとに基づいて、サブコーデのカテゴリを選択し、選択されたカテゴリそれぞれについて、アイテム候補の中からアイテムをそれぞれ特定する。
(アイテム間の関係性に基づくアイテム候補の選択)
図5は、アイテム間の関係を示すグラフに基づくアイテム候補の選択を説明するための説明図である。アイテムFI41乃至FI43は、ユーザU12が閲覧や購入などの行動履歴に基づいてユーザ行動したアイテムであり、アイテムFI42乃至FI44は、ユーザU13がユーザ行動したアイテムであるものとする。なお、アイテムFI42及びFI43は、ユーザU12及びU13の二人のユーザによりユーザ行動されたアイテムである。情報処理装置100は、各ユーザがユーザ行動したアイテム同士の関係性を示す情報として、グラフGI11を生成する。なお、図5ではユーザ行動が一度に一つのアイテムに対して発生する場合について示したが、例えば同時に複数のアイテムを購入する場合においては、当該複数のアイテムに対して発生したユーザ行動として同様に扱ってもよい。
情報処理装置100は、グラフGI11に基づいて、アイテム同士の関係性をランダムウォークによって辿ることで、類似する興味を持つユーザが関心を示すアイテムを特定する。この特定されるアイテムは、類似する興味を持つユーザが関心を示すため、類似するアイテムとも考えられる。そして、情報処理装置100は、このように特定されたアイテムをコーデ生成に用いる。なお、アイテム同士の関係性を辿る回数は調整可能であるものとし、回数が増えればより異なるアイテムを情報処理装置100が探索できるようにしてもよい。これにより、情報処理装置100は、探索されるアイテムに統一感を出すことができるため、生成されるコーディネートに統一感を出すことができる。このとき情報処理装置100は、グラフGI11においてエッジの張られたアイテム同士を関連するアイテムとしてアイテム候補に用いてもよいし、ランダムウォークによって訪問された回数に基づいて得られた確率分布をもとに、予め決められた閾値よりも高い確率を示すアイテムをアイテム候補として用いてもよい。
グラフGI11は、各ユーザがユーザ行動したアイテム同士の関係性を示す情報の一例である。情報処理装置100は、探索されるアイテムに統一感を出すことが可能な情報であれば、どのような情報を用いてもよい。例えば、アイテム同士の特徴空間上の距離によってアイテム間の類似度を算出し、類似度が高いか否かによってアイテム候補の選択を行ってもよい。
情報処理装置100によるアイテム間の関係に基づくアイテム候補の選択は、カテゴリに基づくアイテム候補の選択とともに行われてもよい。例えば、情報処理装置100は、カテゴリに基づくアイテム候補の選択を行った上で、アイテム間の関係に基づくアイテム候補の選択を行ってもよい。これにより、情報処理装置100は、マッチングスコアの算出に掛かる処理の負担を更に低減させることができる。
(季節に基づくアイテム候補の選択)
情報処理装置100は、季節に関する所定の条件に基づいて、アイテム候補の選択を行う。例えば、情報処理装置100は、季節に関する所定の条件に基づいてクエリ及び/またはギャラリーを絞ることで、アイテム候補の選択を行う。そして、情報処理装置100は、選択されたアイテム候補を構成するアイテム群を生成する。例えば、情報処理装置100は、夏に販売されたアイテムを夏用のアイテムと推定し、夏用のアイテム候補を構成するアイテム群を生成する。
そして、情報処理装置100は、アイテム候補を構成するアイテム群を用いてサブコーデを生成し、コーデ生成を行う。これにより、情報処理装置100は、季節に応じたアイテムを用いてコーデ生成を行うことができるため、提案するコーディネートの質の向上を促進することができる。また、これにより、情報処理装置100は、生成されるコーディネートに季節に基づく統一感を出すことができる。
情報処理装置100は、例えば、ユーザ行動されたアイテムが夏用のアイテムであり、且つ、季節が夏である場合には、アイテムの探索範囲を夏用のアイテムに絞って処理を行ってもよい。すなわち、情報処理装置100は、ユーザ行動されたアイテムに共通する季節が夏であり、且つ、ユーザ行動された季節が共通して夏である場合には、アイテムの探索範囲を夏用のアイテムに絞って処理を行ってもよい。これにより、情報処理装置100は、季節で統一感を出すことができるため、サブコーデ同士の相性が高い、より良いコーディネートの提案を行うことができる。
季節が夏であっても秋に近い場合には、秋用のアイテムの需要も高いと考えられる。このような場合には、情報処理装置100は、秋用のアイテムに絞って処理を行ってもよい。
以上、所定の条件に基づいてアイテム候補を絞る処理について説明した。このように、情報処理装置100は、所定の条件に基づいて、クエリサブコーデとギャラリーサブコーデとのそれぞれについてアイテム候補を選択し、選択されたそれぞれのアイテム候補から特定されたアイテムを用いてコーデ生成を行ってもよい。
ここで、具体的な処理の例を説明する。情報処理装置100は、例えば、あるユーザが購入した購買履歴からランダムに複数のアイテムを選択し、クエリサブコーデを生成する。また、情報処理装置100は、クエリサブコーデに紐づくカテゴリとして予め定められたカテゴリに属するアイテムをギャラリーサブコーデのアイテム候補として選択して、選択されたアイテム候補の中からアイテムを探索し、カテゴリそれぞれについてアイテムを特定する。ここでは初期値として、アイテム候補の中からランダムにアイテムを決定してもよいし、所定のコーディネートの一部を利用してギャラリーサブコーデの初期値として用いてもよい。例えば、所定のウェブサービスへの投稿情報に含まれるコーディネートのうち、ギャラリーサブコーデに紐づくカテゴリと一致するカテゴリを備えるアイテムをギャラリーサブコーデの初期値として利用してもよい。この際、必要であれば、コーディネート生成処理において、ギャラリーサブコーデの組み合わせを変更せずに固定してもよい。このようにすることで、所定の投稿情報のコーディネートにマッチしたクエリサブコーデが生成されうる。
ただし、情報処理装置100がアイテム全てを探索対象とすると処理の負担が大きくなるため、情報処理装置100は、アイテム間の関係や季節を用いた所定の条件に基づいてアイテム候補を絞ることで探索範囲を狭めてアイテムを特定する。
以下、マッチングスコアの最も高いサブコーデ同士の組み合わせを特定するための情報処理について説明する。
図6は、サブコーデ同士の組み合わせを特定する情報処理を説明するための説明図である。クエリサブコーデKS31は、カテゴリKA21及びKA22を含む。カテゴリKA21は腕時計であり、カテゴリKA22はシューズである。また、ギャラリーサブコーデGS31は、カテゴリKA23乃至KA25を含む。カテゴリKA23はトップスであり、カテゴリKA24はパンツであり、カテゴリKA25はバッグである。
情報処理装置100は、カテゴリごとにアイテムを一つずつ入れ替えていくことで、マッチングスコアがより高くなるアイテムを特定する。例えば、情報処理装置100は、カテゴリKA23のアイテム群GG13からトップスのアイテムを一つ入れ替えて、マッチングスコアが高くなるか否かを判定する。
情報処理装置100は、入れ替えによってマッチングスコアが高くなると判定された場合には、新しく入れ替えられたアイテムを暫定的なカテゴリKA23のアイテムと判定する。なお、情報処理装置100は、入れ替えによってマッチングスコアが高くならないと判定された場合には、入れ替え前のアイテムを暫定的なカテゴリKA23のアイテムと判定する。
情報処理装置100は、アイテム群GG13のアイテム全てが試されるまで入れ替え処理を繰り返し、マッチングスコアが最も高くなったアイテムを最終的なカテゴリKA23のアイテムと判定してもよいし、予め決められた繰り返し回数だけ入れ替え処理を行ってもよいし、マッチングスコアの上り幅が予め決められた閾値を下回った場合に当該処理を打ち切ってもよい。また、情報処理装置100は、最終的なカテゴリKA23のアイテムとしてマッチングスコアが最も高くなったと判定されたアイテムを特定する。
情報処理装置100は、カテゴリKA23に対する入れ替え処理が終了すると、カテゴリKA24やKA25に対しても順番に同様の入れ替え処理を行って、それぞれのカテゴリに対して、マッチングスコアがより高くなったアイテムを特定する。
情報処理装置100は、ギャラリーサブコーデGS31に限らず、クエリサブコーデKS31に対しても同様の入れ替え処理を行って、クエリサブコーデKS31に含まれるそれぞれのカテゴリに対して、マッチングスコアがより高くなったアイテムを特定してもよい。例えばユーザが腕時計を複数購入していた場合には、どの腕時計を用いてコーデ生成が行われてもユーザに影響しないと考えられる。また、情報処理装置100は、ギャラリーサブコーデGS31とクエリサブコーデKS31の同様の入れ替え処理を複数回交互に行ってもよい。例えば、最初にギャラリーサブコーデGS31のアイテムの入れ替え処理を行い、次にクエリサブコーデKS31のアイテムの入れ替え処理を行う、という処理を予め決められた回数繰り返してもよい。このとき所定の回数繰り返すのではなく、マッチングスコアの上り幅が予め決められた閾値を下回る場合にアイテムの入れ替え処理を打ち切ってもよい。
このため、ユーザが所持している腕時計のうちマッチングスコアが最も高くなる一の腕時計に対して一つのコーディネートが生成できればよいとも考えられるため、クエリサブコーデKS31に対しても同様の入れ替え処理を行ってもよい。
情報処理装置100は、予め定められたカテゴリごとの処理の順番に従って入れ替え処理を行ってもよい。例えば、トップス、パンツ、バッグの順に入れ替え処理を行うと定められている場合には、情報処理装置100は、その順番に従ってマッチングスコアが高くなるそれぞれのカテゴリのアイテムを特定してもよい。これにより、情報処理装置100は、コーデ生成の最適化を促進することができる。
入れ替え処理の順番は、サブコーデの種別(クエリサブコーデ、ギャラリーサブコーデ)、カテゴリの種別、カテゴリ同士の関係性などに基づいて、最適化されてもよい。なお、情報処理装置100は、入れ替え処理を順番で行う場合に限らず、複数の入れ替え処理を同時に行ってもよいし、一部の入れ替え処理をスキップして入れ替え処理を行ってもよい。このように、情報処理装置100は、入れ替え処理の種々の制御に基づいて、コーデ生成を行ってもよい。
図2の説明に戻る。情報処理装置100は、ステップS105において特定されたギャラリーサブコーデを、一のクエリサブコーデとサブコーデ同士の相性が高いサブコーデとして提案する(ステップS106)。具体的には、情報処理装置100は、ステップS105において特定されたギャラリーサブコーデに関する情報を情報表示装置10へ送信する。これにより、情報処理装置100は、クエリサブコーデとギャラリーサブコーデとを組み合わせたコーディネート全体として調和の高い情報を提供することができる。
情報表示装置10は、情報処理装置100から送信された情報を表示させることにより、クエリサブコーデとギャラリーサブコーデとを組み合わせたコーディネートを提案する。具体的には、情報表示装置10は、クエリサブコーデとして受け付けられた複数のアイテムを含むアイテム群の情報を表示させるとともに、クエリサブコーデとは異なるアイテムを組み合わせたアイテム群であって、クエリサブコーデとなるアイテム群と対応するアイテム群の情報を表示させる。
画面UI11は、コーディネートを提案するUI画面の一例である。画面UI11は、情報処理装置100から送信された情報に基づいて、情報表示装置10に表示されたUI画面である。画面UI11は、例えば、電子商取引の対象となるアイテムの販売を目的とするウェブコンテンツである。例えば、画面UI11は、電子商取引を管理するサーバにより提供されたウェブコンテンツである。
画面UI11は、クエリサブコーデのアイテムFI21及びFI22を含む。アイテムFI21及びFI22は、ユーザU11が購入した購入済みのアイテムである。
画面UI11は、ギャラリーサブコーデのアイテムFI31及びFI32を含む。アイテムFI31及びFI32は、アイテムFI21及びFI22とのコーディネートとして情報処理装置100により提案されたアイテムである。
画面UI11は、アイテムFI31及びFI32をまとめてカートに加えるためのカート操作項目CA11を含む。カート操作項目CA11が操作(例えば、クリックやタップ)されると、アイテムFI31及びFI32がまとめてカートに加えられる。なお、カート操作項目CA11に対する操作に応じてアイテムFI31及びFI32を購入するための購入画面に遷移してもよい。
画面UI11は、条件を変更してコーディネートを再生成するための条件操作項目JJ11乃至JJ19を含む。条件操作項目JJ11は、アイテムFI21をクエリサブコーデの一のアイテムとして固定して、他のアイテム(アイテムFI22、FI31、FI32)を変更するための操作項目である。また、条件操作項目JJ12は、アイテムFI22をクエリサブコーデの一のアイテムとして固定して、他のアイテム(アイテムFI21、FI31、FI32)を変更するための操作項目である。
条件操作項目JJ13は、アイテムFI31をギャラリーサブコーデの一のアイテムとして固定して、他のアイテム(アイテムFI21、FI22、FI32)を変更するための操作項目である。また、条件操作項目JJ14は、アイテムFI32をギャラリーサブコーデの一のアイテムとして固定して、他のアイテム(アイテムFI21、FI22、FI31)を変更するための操作項目である。
条件操作項目JJ15は、アイテムの探索範囲を多様性に基づいて変更するための操作項目である。例えば、条件操作項目JJ15に対する操作に基づいて探索範囲の多様性を広くするほど、マッチングスコアの低いサブコーデのアイテム群が表示される。条件操作項目JJ15を調整することにより、アイテムの探索範囲に対するユーザの多様性の許容度に応じたアイテム群の情報を表示することができる。例えば、ユーザの興味が薄いと推定されるアイテム群も表示することができる。また、条件操作項目JJ15に対する操作に基づいて上述したランダムウォークによりアイテム間を巡る回数を増減してもよい。これによって、ランダムウォークの探索範囲が広がるほど、奇抜な組み合わせになるアイテム候補が出現する確率を高めることができる。またこのとき、条件操作項目JJ15に対する操作に基づいて、ランダムウォークによって高い確率で得られると判明したアイテム候補を除外してもよい。これにより、生成されるコーディネートがより奇抜になりうる。
条件操作項目JJ16は、アイテムの探索範囲を価格帯に基づいて変更するための操作項目である。例えば、条件操作項目JJ16に対する操作に基づいて価格帯を高くするほど、価格帯の高いサブコーデのアイテム群が表示される。条件操作項目JJ16を調整することにより、コーディネート全体としてユーザの予算額に応じたアイテム群の情報を表示することができる。
条件操作項目JJ17は、アイテムの探索範囲を季節に基づいて限定するための操作項目である。例えば、条件操作項目JJ17に対する操作に基づいて季節を指定することで、指定された季節に適したサブコーデのアイテム群が表示される。例えば、季節として、夏が指定された場合、夏に適したアイテム群が表示される。
条件操作項目JJ18は、アイテムの探索範囲をカテゴリに基づいて限定するための操作項目である。例えば、条件操作項目JJ18に対する操作に基づいてカテゴリを指定することで、指定されたカテゴリに適したサブコーデのアイテム群が表示される。例えば、カテゴリとして、トップス、ボトムス、バッグ、シューズの組み合わせが指定された場合、その組み合わせに適したアイテム群が表示される。
条件操作項目JJ19は、アイテムの探索範囲をTPO(時間、場所、場合)に基づいて限定するための操作項目である。例えば、条件操作項目JJ19に対する操作に基づいてTPOを指定することで、指定されたTPOに適したサブコーデのアイテム群が表示される。例えば、TPOとして、結婚式が指定された場合、結婚式に適したアイテム群が表示される。
画面UI11は、条件を変更してコーディネートを再生成するための再生成操作項目SK11を含む。再生成操作項目SK11が操作されると、サブコーデのアイテムの探索結果が再生成される。例えば、条件操作項目JJ11乃至JJ19に対する操作に基づいて、それぞれの条件操作項目の条件に適した探索結果となるように、探索結果が再生成される。そして、再生成された探索結果が、クエリサブコーデやギャラリーサブコーデのアイテム群に反映される。なお、再生成の際に、サブコーデのアイテム群に含まれるアイテムの数も変更されてもよい。これにより、情報処理装置100は、複数のアイテムを扱うサブコーデならではのコーディネートの生成を実現することができる。
このように、情報処理装置100は、条件操作項目JJ11乃至JJ19などのユーザの嗜好設定に基づいて、コーデ生成の再生成を行ってもよい。なお、コーデ生成の再生成は、ユーザの操作に応じて、何度繰り返されてもよい。これにより、情報処理装置100は、複数のアイテムを扱うサブコーデならではのコーディネートの生成を実現することができるため、コーディネート全体として調和の高い情報を提供することができる。
このように、情報処理装置100は、ユーザが所持するアイテム群を用いたコーディネートにおいて、調和具合の高いアイテム群を適切に提案することができる。そして、情報処理装置100は、どのようなアイテム群を提案すれば、購買機会を増大することができるのかを適切に把握することができるため、購買機会の向上を促進することができる。
〔3.情報表示装置の構成〕
次に、図7を用いて、実施形態に係る情報表示装置10の構成について説明する。図7は、実施形態に係る情報表示装置10の構成例を示す図である。図7に示すように、情報表示装置10は、通信部11と、入力部12と、出力部13と、制御部14とを有する。
(通信部11)
通信部11は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部11は、所定のネットワークNと有線又は無線で接続され、所定のネットワークNを介して、情報処理装置100等との間で情報の送受信を行う。
(入力部12)
入力部12は、ユーザからの各種操作を受け付ける。図2に示す例では、ユーザU11からの各種操作を受け付ける。例えば、入力部12は、タッチパネル機能により表示面を介してユーザからの各種操作を受け付けてもよい。また、入力部12は、情報表示装置10に設けられたボタンや、情報表示装置10に接続されたキーボードやマウスからの各種操作を受け付けてもよい。
(出力部13)
出力部13は、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等によって実現されるタブレット端末等の表示画面であり、各種情報を表示するための表示装置である。例えば、出力部13は、情報処理装置100から送信された情報を表示する。
(制御部14)
制御部14は、例えば、コントローラ(controller)であり、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報表示装置10内部の記憶装置に記憶されている各種プログラムがRAM(Random Access Memory)を作業領域として実行されることにより実現される。例えば、この各種プログラムには、情報表示装置10にインストールされたアプリケーションのプログラムが含まれる。例えば、この各種プログラムには、コーデ生成の結果情報を表示させるアプリケーションのプログラムが含まれる。また、制御部14は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
図7に示すように、制御部14は、第1表示制御部141と、第2表示制御部142と、受信部143と、送信部144とを有し、以下に説明する情報処理の作用を実現または実行する。
(第1表示制御部141)
第1表示制御部141は、クエリサブコーデとして受け付けられた複数のアイテムを含むアイテム群の情報を表示させる。
(第2表示制御部142)
第2表示制御部142は、クエリサブコーデとは異なるアイテムを組み合わせたアイテム群であって、クエリサブコーデとなるアイテム群と対応するアイテム群の情報を表示させる。
(受信部143)
受信部143は、各種情報を受信する。受信部143は、外部の情報処理装置から各種情報を受信する。受信部143は、情報処理装置100等の他の情報処理装置から各種情報を受信する。例えば、受信部143は、コーデ生成の結果情報を表示させるための制御情報を受信する。
(送信部144)
送信部144は、外部の情報処理装置へ各種情報を送信する。送信部144は、情報処理装置100等の他の情報処理装置へ各種情報を送信する。例えば、送信部144は、クエリサブコーデとして選択されたアイテム情報を送信する。
〔4.情報処理装置の構成〕
次に、図8を用いて、実施形態に係る情報処理装置100の構成について説明する。図8は、実施形態に係る情報処理装置100の構成例を示す図である。図8に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC等によって実現される。そして、通信部110は、ネットワークNと有線又は無線で接続され、ネットワークNを介して、情報表示装置10等との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図8に示すように、記憶部120は、購買履歴記憶部121と、ギャラリー記憶部122と、モデル記憶部123とを有する。
購買履歴記憶部121は、ユーザの購買履歴に関する情報を記憶する。ここで、図9に、実施形態に係る購買履歴記憶部121の一例を示す。図9に示すように、購買履歴記憶部121は、「購買履歴ID」、「ユーザID」、「購買履歴」といった項目を有する。
「購買履歴ID」は、購買履歴を識別するための識別情報を示す。「ユーザID」は、ユーザを識別するための識別情報を示す。「購買履歴」は、ユーザの購買履歴を示す。図9に示す例では、「購買履歴」に「購買履歴#11」や「購買履歴#12」といった概念的な情報が格納される例を示したが、実際には、ユーザが購入したアイテム情報(例えば、サイズや価格や画像などの情報)などが格納される。
すなわち、図9では、購買履歴ID「KR11」によって識別されるユーザが「U11」であり、購買履歴が「購買履歴#11」である例を示す。
ギャラリー記憶部122は、ギャラリーサブコーデを生成するためのギャラリーに関する情報を記憶する。ここで、図10に、実施形態に係るギャラリー記憶部122の一例を示す。図10に示すように、ギャラリー記憶部122は、「ギャラリーID」、「アイテムID」、「カテゴリ」、「アイテム情報」といった項目を有する。
「ギャラリーID」は、ギャラリーを識別するための識別情報を示す。「アイテムID」は、アイテムを識別するための識別情報を示す。「カテゴリ」は、アイテムのカテゴリを示す。「アイテム情報」は、アイテム情報を示す。図10に示す例では、「アイテム情報」に「アイテム情報#11」や「アイテム情報#12」といった概念的な情報が格納される例を示したが、実際には、サイズや価格や画像などの情報が格納される。
すなわち、図10では、ギャラリーID「GR11」によって識別されるアイテムが「FI111」であり、カテゴリが「トップス」であり、アイテム情報が「アイテム情報#11」である例を示す。
モデル記憶部123は、サブコーデ同士の組み合わせを入力情報とし、所定のウェブサービスに投稿された投稿情報を正解データとして学習させたモデルに関する情報を記憶する。ここで、図11に、実施形態に係るモデル記憶部123の一例を示す。図11に示すように、モデル記憶部123は、「モデルID」、「モデル(算出式)」といった項目を有する。
「モデルID」は、モデルを識別するための識別情報を示す。「モデル(算出式)」は、モデルの算出式を示す。図11に示す例では、「モデル(算出式)」に「モデル#11」や「モデル#12」といった概念的な情報が格納される例を示したが、実際には、入力されるサブコーデ同士の組み合わせのマッチングスコアを算出する算出式の情報などが格納される。
すなわち、図11では、モデルID「MD11」によって識別されるモデルの算出式が「モデル#11」である例を示す。
(制御部130)
制御部130は、コントローラであり、例えば、CPUやMPU等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現される。
図8に示すように、制御部130は、取得部131と、受付部132と、検出部133と、生成部134と、算出部135と、特定部136と、提供部137とを有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部130の内部構成は、図8に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
(取得部131)
取得部131は、各種情報を取得する。取得部131は、外部の情報処理装置から各種情報を取得する。取得部131は、情報表示装置10等の他の情報処理装置から各種情報を取得する。
取得部131は、記憶部120から各種情報を取得する。取得部131は、購買履歴記憶部121やギャラリー記憶部122やモデル記憶部123から各種情報を取得する。また、取得部131は、取得した各種情報を記憶部120に格納する。取得部131は、購買履歴記憶部121やギャラリー記憶部122やモデル記憶部123に各種情報を格納する。
取得部131は、ユーザが所持していると判定されたアイテム群に関する情報を取得する。例えば、取得部131は、ユーザの購買履歴に基づいて、ユーザが所持していると判定されたアイテム群に関する情報を取得する。
取得部131は、電子商取引で取引されると判定された全アイテムを含むギャラリーに関する情報を取得する。
取得部131は、所定のウェブサービスに投稿された投稿情報に含まれるアイテムに関する情報を取得する。
(受付部132)
受付部132は、複数のアイテムを含むアイテム群をクエリサブコーデとして受け付ける。例えば、受付部132は、ユーザが所持していると判定されたアイテム群のうち、選択された複数のアイテムを含むアイテム群をクエリサブコーデとして受け付ける。
(検出部133)
検出部133は、画像情報に基づいてアイテムを検出する。例えば、検出部133は、投稿情報に含まれるアイテムを検出する。
検出部133は、検出されたアイテムのアイテム情報を特定する。例えば、検出部133は、画像情報が与えられると、画像上でのアイテムの位置やアイテム自身のカテゴリなどのアイテム情報を特定する。
検出部は、人物や他のアイテムの映り込みなどの複雑な背景の場合には、例えば従来の画像検出技術を用いることで、アイテムを特定してもよい。
(生成部134)
生成部134は、クエリサブコーデと対応するクエリサブコーデとは異なるアイテムを組み合わせたアイテム群ごとに、クエリサブコーデとなるアイテム群との調和具合を示すマッチングスコアを算出するモデルを生成する。
生成部134は、例えば、ユーザが所持しているアイテム群と、ユーザが所持していないアイテム群とを入力すると、非所持のアイテム群ごとにスコアを算出するモデルを生成する。
生成部134は、投稿情報に含まれるアイテムの組み合わせを正解データとして学習させたモデルを生成する。すなわち、生成部134は、他のユーザが投稿したコーディネートを正例として学習させたモデルを生成する。
生成部134は、入力されるサブコーデ同士の組み合わせが投稿情報のものに近いほど、マッチングスコアを高く算出し、入力されるサブコーデ同士の組み合わせが投稿情報のものから遠いほど、マッチングスコアを低く算出するように学習させたモデルを生成する。
生成部134は、例えば、ユーザが所持しているアイテム群と、ユーザが所持していないアイテム群との組み合わせが、投稿情報のものに近いほど、マッチングスコアを高く算出し、所持のアイテム群と、非所持のアイテム群との組み合わせが、投稿情報のものから遠いほど、マッチングスコアを低く算出するように学習させたモデルを生成する。
生成部134は、投稿情報のうち、著名人が投稿した投稿情報や、「いいね」の数が多い投稿情報や、ぽっちゃりだけど上手に体型を隠せているユーザが投稿した投稿情報などといった所定の条件を満たす投稿情報に限定して、モデルを生成してもよい。
(算出部135)
算出部135は、生成部134により生成されたモデルを用いて、マッチングスコアを算出する。
(特定部136)
特定部136は、算出部135により算出されたマッチングスコアに基づいて、マッチングスコアが最も高くなったサブコーデ同士の組み合わせを特定する。
(提供部137)
提供部137は、特定部136により特定されたサブコーデ同士の組み合わせに関する情報を提供(送信)する。例えば、提供部137は、特定部136により特定されたサブコーデ同士の組み合わせに関する情報を表示させるための制御情報を提供する。
〔5.情報処理のフロー〕
次に、図12を用いて、実施形態に係る情報処理システム1による情報処理の手順について説明する。図12は、実施形態に係る情報処理システム1による情報処理の手順を示すフローチャートである。
図12に示すように、情報処理装置100は、サブコーデ同士の組み合わせを入力情報とし、所定のウェブサービスに投稿された投稿情報を正解データとして学習させたモデルを生成する(ステップS201)。
情報処理装置100は、生成されたモデルを用いて、入力されるサブコーデ同士の組み合わせごとに、マッチングスコアを算出する(ステップS202)。
情報処理装置100は、マッチングスコアが最も高くなったサブコーデ同士の組み合わせを特定する(ステップS203)。
情報処理装置100は、特定されたサブコーデ同士の組み合わせを用いて、一つのコーディネートを提案する(ステップS204)。
〔6.変形例〕
上述した実施形態に係る情報処理システム1は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、情報処理システム1の他の実施形態について説明する。
(その他の条件に基づくアイテム候補の選択)
上記実施形態では、情報処理装置100が、カテゴリ、アイテム間の関係、季節に基づいて、アイテム候補を選択する場合を示したが、この例に限られない。以下、情報処理装置100が、他の条件に基づいて、アイテム候補を選択する処理について説明する。
情報処理装置100は、その他の条件に基づくアイテム候補の選択として、所定のウェブサービスに投稿されたコーディネートを構成するアイテムのカテゴリの統計情報、ユーザの性別、カテゴリの価格帯、購買履歴で一緒に買われるカテゴリ情報、ユーザの好きなショップ、ユーザの好きなブランド、ブランド同士の相性、アイテムのファッションスタイル、ユーザの体型データ(身体情報)、ユーザの肌の色、その他の肌の情報、アイテムの販売時期、ユーザの閲覧履歴、ユーザのお気に入り、アイテムのランキング、アイテムのメタ情報、などに基づいて、サブコーデのアイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、コーディネートを構成するアイテムのカテゴリの統計情報に基づいて、統計が高いカテゴリのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、トップスとともにコーディネートされ易いカテゴリがパンツやバッグである場合には、パンツやバッグのカテゴリのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザの性別に基づいて、ユーザの性別に適したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザが女性である場合には、女性の属性を有するアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザの購買履歴に基づいて、ユーザがよく購入するカテゴリごとの価格帯のアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、価格帯が高いバッグをメインに購入するユーザに対しては、価格帯の高いバッグのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。なお、情報処理装置100は、そのユーザがバッグ以外は価格帯が低いアイテムをメインに購入する場合であっても、価格帯の高いバッグのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、サーバに記憶された購買履歴に基づいて、一緒に購入され易いカテゴリのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、一のカテゴリのアイテムと、二のカテゴリのアイテムとが一緒のカートで購入され易い場合には、一のカテゴリが指定された場合、二のカテゴリのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザ情報に基づいて、ユーザの好きなショップから提供されるアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザが一のショップを好きな場合、一のショップから提供されるアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザ情報に基づいて、ユーザの好きなブランドのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザが一のブランドを好きな場合、一のブランドのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ブランド同士の相性に基づいて、特定のブランドと相性が高いブランドのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、一のブランドが高級路線であり、二のブランドが高級路線でない場合、ユーザが一のブランドと二のブランドとを同時に着ることは考え難い。このため、情報処理装置100は、一のブランドが高級路線である場合には、高級路線である三や四のブランドなどのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、アイテムのファッションスタイルに基づいて、特定のアイテムのファッションスタイルと相性が高いファッションスタイルのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、一のアイテムのファッションスタイルがモードであり、二のアイテムのファッションスタイルがロリータである場合、ユーザが一のファッションスタイルのアイテムと二のファッションスタイルのアイテムとを同時に着ることは考え難い。このため、情報処理装置100は、一のファッションスタイルがモードである場合には、モードと相性が高い三や四のファッションスタイルなどのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザの体型データを計測可能な計測対象(例えば、ボディスーツや採寸用の衣類など)から計測された体型データに基づいて、ユーザの体型データに適したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザの体型がスリムの場合には、スリムの体型に適した細身のアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザの肌の情報(例えば、肌の色)に基づいて、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザの肌の色が比較的白い場合には、シャープ感を出すために色の濃いアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、アイテムの販売時期に基づいて、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、一のアイテムと販売開始月が同じアイテム群に絞ることで、アイテム候補の選択を行ってもよい。また、例えば、情報処理装置100は、新商品のアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザの閲覧履歴に基づいて、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ランダムウォークによりアイテム間を巡る回数に基づいて、ユーザが興味のあるアイテム群に絞ることで、アイテム候補の選択を行ってもよい。また、例えば、情報処理装置100は、ユーザが閲覧したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザのお気に入りに基づいて、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザが予め設定したお気に入りのブランドやアイテムのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、アイテムのランキングに基づいて、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、人気のアイテムや在庫が多いアイテムのアイテム群に絞ることで、アイテム候補の選択を行ってもよい。これにより、情報処理装置100は、例えば在庫が多いアイテムのアイテム群に絞ることで、売れ残りアイテムを優先的に消化させたいといった要望に適切に応えることができる。
情報処理装置100は、例えば、アイテムのメタ情報に基づいて、アイテム候補の選択を行ってもよい。例えば、情報処理装置100は、カテゴリ、色、商品説明情報、価格、割引率(例えば、クーポン利用割引率)、アイテムの性別、ファッションスタイルなどのメタ情報に基づいて、それぞれ適したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、ユーザの画像、流行のアイテム、流行の色、天気、気温、日時(例えば、給与日やボーナス日の直後)、TPO、好きな芸能人やSNS上でフォローしている人のファッションスタイル(例えば、時計だけ赤色のものを着用)などに基づいて、それぞれ適したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。天気を例に挙げると、情報処理装置100は、季節が梅雨である場合には、雨にも対応したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。また、気温を例に挙げると、情報処理装置100は、一日の気温が変動し易い場合には、寒暖の気温の変動にも対応したアイテム群に絞ることで、アイテム候補の選択を行ってもよい。
情報処理装置100は、例えば、予め設定された所定のアイテムを少なくとも必ず一つ含むようにアイテム候補の選択を行ってもよい。例えば、情報処理装置100は、電子商取引上で人気度が高く流行のアイテムや、在庫数が多く早く売りたいアイテムなどを少なくとも必ず一つ含むようにアイテム候補の選択を行ってもよい。具体的には、情報処理装置100は、電子商取引上で人気度又は在庫数が所定の閾値以上であると判定されたアイテムの中から選択された一のアイテムを少なくとも必ず含むようにアイテム候補の選択を行ってもよい。これにより、情報処理装置100は、予め設定された所定のアイテムを少なくとも必ず一つ含むコーデ生成を行うことができる。
情報処理装置100は、例えば、サブコーデのカテゴリの決定において、カテゴリの組み合わせが複数パタンある場合、ユーザの購買履歴に基づいて、ユーザが定期的によく買うカテゴリを含め、そうでないカテゴリや嫌いと判定されたカテゴリを含めないようにアイテム候補の選択を行ってもよい。換言すると、情報処理装置100は、ユーザの購買履歴に所定の閾値以上含まれるカテゴリを、クエリサブコーデ又はギャラリーサブコーデのカテゴリとして含むようにアイテム候補の選択を行ってもよい。これにより、情報処理装置100は、例えばクエリサブコーデに含める場合には、コーデ生成の最適化において、バリエーションが担保されたコーデ生成を容易に行うことができる。また、情報処理装置100は、例えばギャラリーサブコーデに含める場合には、ユーザが好きなカテゴリを推奨することができるため、購買意欲の向上を促進することができる。
情報処理装置100は、例えば、サブコーデのカテゴリの決定において、カテゴリの組み合わせが複数パタンある場合、所定のカテゴリを優先して含むようにアイテム候補の選択を行ってもよい。例えば、情報処理装置100は、ユーザが特に買うカテゴリがある場合、そのカテゴリを優先して含むようにアイテム候補の選択を行ってもよい。また、例えば、情報処理装置100は、電子商取引上で売れているカテゴリを優先して含むようにアイテム候補の選択を行ってもよい。具体的な例を挙げると、情報処理装置100は、夏の季節にコーデ生成を行う場合、例えば冬のカテゴリであるアウターは電子商取引上で取引可能なアイテム数が少ないと判定して、夏の季節によく売れるカテゴリを優先して含むようにアイテム候補の選択を行ってもよい。
(その他の処理)
上記実施形態では、情報処理装置100が、購入済みの購買履歴に基づいて、クエリサブコーデを生成する場合を示したが、この例に限られない。例えば、情報処理装置100は、カートに加えられたが未だ購入されていないアイテムを購買履歴に含めて、クエリサブコーデを生成してもよい。また、例えば、情報処理装置100は、閲覧されたが未だカートに加えられていないアイテムやお気に入りに登録されたアイテムを購買履歴に含めて、クエリサブコーデを生成してもよい。なお、これらのカートやお気に入り登録に基づくアイテムは一例であり、特に限定されないものとする。情報処理装置100は、所定の操作が行われたアイテムを購買履歴に含めてクエリサブコーデを生成してもよい。また、例えば、情報処理装置100は、アクセス数に基づいて閲覧回数が多いと判定されたアイテムや、視線情報に基づいて一定時間注視していると判定されたアイテムなど、ユーザにとって興味があると判定されたアイテムを購買履歴に含めてクエリサブコーデを生成してもよい。また、UIで表示されるアイテムは、購買履歴に含まれるアイテムや、カートに加えられたアイテムや、お気に入りに登録されたアイテムなどに限らず、どのようなものであってもよい。
上記実施形態では、情報処理装置100が、マッチングスコアを算出し、算出されたマッチングスコアに基づくコーデ生成結果を表示する場合を示したが、コーデ生成の結果情報に限らず、その生成過程の情報を表示してもよい。例えば、情報処理装置100は、算出されたマッチングスコアを表示してもよい。また、例えば、情報処理装置100は、サブコーデ同士の相性を示すマッチングスコアなどの情報に限らず、個々のアイテム同士の相性を示す情報を表示してもよい。また、例えば、情報処理装置100は、生成過程で得られたクエリサブコーデとギャラリーサブコーデとに含まれるアイテムを表示してもよい。
情報処理装置100は、例えば、サブコーデ同士又はアイテム同士の相性が高い場合、相性が高い理由を表示してもよい。これにより、情報処理装置100は、コーディネートの提案において、ユーザに説得感を与えることができる。
上記実施形態は、ユーザに応じてパーソナライズされてもよい。例えば、情報処理装置100は、ユーザの閲覧履歴に基づくサブコーデと、人気アイテムや新着アイテムなどの枠のアイテム群に基づくサブコーデとでコーデ生成を行ってもよい。この場合、情報処理装置100は、ユーザの属性を特徴量に加味してもよいし、クリック数などの枠の特徴量を加味してもよい。
上記実施形態において、クエリサブコーデのアイテムの選択は、ユーザの購買履歴からランダムに選択されてもよいし、ユーザによって選択されてもよいものとする。例えば、上記実施形態におけるクエリサブコーデの腕時計やシューズは、情報処理装置100によってランダムに選択されたものであってもよいし、ユーザによって選択されたものであってもよい。
上記実施形態では、情報処理装置100が、クエリサブコーデのアイテムの選択を、ユーザの購買履歴からランダムに行った場合を示したが、この例に限られない。例えば、情報処理装置100は、ユーザの購買履歴からユーザが選択したアイテムを、クエリサブコーデのアイテムとして選択してもよい。そして、情報処理装置100は、ユーザにより選択されたアイテムを、クエリサブコーデのアイテムとしてサブコーデを生成することで、コーデ生成を行ってもよい。
上記実施形態では、情報処理装置100が、マッチングスコアの算出のための原データである投稿情報として、ファッションのコーディネートを参考とすることを目的とした所定のウェブサービスに投稿された投稿情報に基づいてモデルを生成する場合を示したが、この例に限られない。例えば、コーデ生成の対象が、ファッションではなく、家具や花束である場合には、情報処理装置100は、家具や花束のコーディネートを参考とすることを目的とした所定のウェブサービスに投稿された投稿情報に基づいてモデルを生成してもよい。
上記実施形態では、情報処理装置100が、投稿情報に含まれる画像の特徴量を学習することによりモデルを生成する場合を示したが、この例に限られない。例えば、情報処理装置100は、体型データなどのユーザの特徴量を画像の特徴量に含めて学習することによりモデルを生成してもよいし、メタ情報などのアイテムの特徴量を画像の特徴量に含めて学習することによりモデルを生成してもよい。具体的には、情報処理装置100は、取得可能な各特徴ベクトルを足し合わせて各画像の特徴量とみなすことによりモデルを生成してもよいし、また、取得可能な各特徴ベクトルと各画像の特徴量とを結合することでより大きな次元の特徴ベクトルを生成し、これを各画像の特徴量とみなしてもよい。
上記実施形態では、情報処理装置100が、コンテンツCT11などに投稿された投稿情報の画像を用いてモデルを学習する場合を示したが、この例に限らず、例えば、電子商取引上で提供された画像を用いてモデルを学習してもよい。一般的に、電子商取引上では、各アイテムに対して通常複数の画像が用意されている。情報処理装置100は、例えば、電子商取引上で提供されるメイン画像(例えば、電子商取引上でアイテムを選択すると最初に現れる画像)を用いてモデルを学習してもよいし、目的に応じた画像を用いてモデルを学習してもよい。また、上記実施形態において、アイテム情報SI11は、電子商取引上で提供されるアイテム情報を含んでもよい。
上記実施形態では、情報処理装置100が、投稿情報を正解データとして学習したモデルを用いてコーデ生成を行う場合を示したが、属性ごとに正解データを分けて学習したモデルを用いてコーデ生成を行ってもよい。情報処理装置100は、例えば、モデルIDで管理することで、ユーザの属性(例えば、性別や年代など)や季節などに応じてモデルを切り替えてコーデ生成を行ってもよい。また、情報処理装置100は、例えば、属性や行動などでユーザをクラスタリングすることで、クラスタごとにモデルを切り替えてコーデ生成を行ってもよい。
上記実施形態では、情報処理装置100が、サブコーデ同士を組み合わせてコーデ生成を行う場合を示したが、この例に限られない。例えば、情報処理装置100は、クエリサブコーデを用いずに、ギャラリーサブコーデのアイテム候補を用いてコーデ生成を行ってもよい。具体的には、情報処理装置100は、ギャラリー中のアイテム候補の組み合わせごとにマッチングスコアを算出することにより、コーデ生成を行ってもよい。この場合、マッチングスコアは、複数のアイテム同士の調和具合を示すスコアである。すなわち、情報処理装置100は、電子商取引の対象となる複数のアイテムを組み合わせたアイテム群ごとに、アイテム群に含まれる複数のアイテム同士の調和具合を示すスコアを算出してもよい。この際、ギャラリー中のアイテム候補の組み合わせからなる単一の集合に関する調和具合の算出方法として、当該集合をランダムかつ重複なく二分割することで二つの集合に分け、疑似的にクエリサブコーデとギャラリーサブコーデを作成し、それらの調和具合を上述の方法によって計算してもよいし、当該集合の調和具合をその他の従来の技術によって計算してもよい。この際、例えば、単一の集合の調和具合を計算する方法として、前出のY. Saito, T. Nakamura, H. Hachiya, K. Fukumizu "Exchangeable Deep Neural Networks for Set-to-Set Matching and Learning"に開示されているSet Transformerを用いて行ってもよい。また、ここではクエリサブコーデを用いない例を示したが、更なる例として、クエリサブコーデを用いない一方でクエリとなるアイテム群を用いてもよいものとする。すなわち、例えば、ユーザの購買履歴のアイテム群をギャラリーのアイテム群に加え、クエリサブコーデを生成せずにコーデ生成を行ってもよい。
上記実施形態では、情報処理装置100が、個々のアイテムの特徴量を用いてクエリサブコーデ及びギャラリーサブコーデを生成する場合を示したが、この例に限られない。例えば、情報処理装置100は、複数のアイテムの特徴量を一つのアイテムの特徴量としてみなしてコーデ生成を行ってもよい。例えば、複数個のアイテムが互いに類似し同一カテゴリのアイテムである場合、これらのアイテムを異なるアイテムとして用いてコーデ生成を行うと、生成されるコーデの品質が変わらないのに計算時間が増大するおそれがある。このように類似するアイテムは異なるアイテムとして扱うのではなく、グループとしてまとめたうえで一つのアイテムとして扱うことで、コーデ生成に掛かる計算時間が低減されると考えられる。この際、アイテム同士が類似するか否かの判定は、従来の技術を用いてアイテムの特徴量や属性の類似度を測ることを通して行ってもよいし、従来の技術によって特徴量のクラスタリングを行うことでグループを作成してもよい。なお、グループの特徴量はグループを構成する各アイテムの特徴量を平均した値(ベクトル)を用いてもよいし、従来の技術によって代表点を決めてもよい。このように、アイテムのグループを用いてコーデ生成を行う場合、以降で示すUI画面においては、当該グループを代表する既定のアイテムを一つ自動的に選択してコーデを構成するアイテムとして表示してもよいし、グループの中から好みのアイテムをユーザに選ばせるための画面をさらに表示してもよい。
このように、ギャラリーサブコーデのアイテム候補を用いてコーデ生成を行う場合、情報処理装置100は、電子商取引の対象となる複数のアイテムを組み合わせたアイテム群を入力情報とし、マッチングスコアを出力情報とするモデルを生成してもよい。また、情報処理装置100は、マッチングスコアの最も高いアイテム群に含まれる複数のアイテムの組み合わせに基づく情報を、コーディネートに関する情報として提供してもよい。また、情報処理装置100は、生成されるコーディネートに季節に基づく統一感が出るように、アイテムごとの季節が共通するように選択された複数のアイテムを含むアイテム群ごとに、マッチングスコアを算出してもよい。
上記実施形態は、コーディネートを定期的にお任せする関係にあるスタイリストのためのコーデ生成の支援に用いられてもよいものとする。例えば、上記実施形態において、スタイリストが、コーディネートをお任せする関係にあるユーザのためにアイテムを選択してもよい。情報処理装置100は、スタイリストにより選択されたアイテムを、クエリサブコーデのアイテムとしてサブコーデを生成することで、コーデ生成を行ってもよい。
図13は、コーデ生成の支援を行うUI画面の一例を示す図である。なお、画面UI11と同様の説明は適宜省略する。
画面UI12は、クエリサブコーデのアイテムFI23及びFI24を含む。アイテムFI23及びFI24は、スタイリストにより選択されたアイテムである。
画面UI12は、ギャラリーサブコーデのアイテムFI33及びFI34を含む。アイテムFI33及びFI34は、アイテムFI23及びFI24とのコーディネートとして情報処理装置100により提案されたアイテムである。
画面UI12は、コーディネートの完成を確定するための確定操作項目CK11を含む。確定操作項目CK11が操作されると、アイテムFI23、FI24、FI33及びFI34が、例えばユーザに提供されるアイテムとして決定される。
上記実施形態において、情報処理装置100は、コンテンツCT11に投稿したユーザが所持しているアイテムの所持情報(以下、適宜、「クローゼット」とする。)をユーザごとに記憶することで、コーデ生成を行ってもよい。ここで、クローゼットには、例えば、ユーザがコンテンツCT11に投稿するたびに、投稿情報から検出されたアイテムが、ユーザの所持情報として記憶されていくものとする。
情報処理装置100は、例えば、クローゼットに含まれるアイテムを、クエリサブコーデのアイテムとして選択することで、コーデ生成を行ってもよい。
上記実施形態では、情報処理装置100が、ファッションの購買履歴に基づいて、ファッションのコーディネートを提案する場合を示したが、この例に限られない。例えば、情報処理装置100は、家具の購買履歴に基づいて、家具のコーディネートを提案してもよい。一般的に、椅子やタンスなどの家具は、配置される屋内の調和具体に影響すると考えられる。このため、情報処理装置100は、コーディネート全体として調和の高い家具のコーディネートを提案することができる。なお、家具のコーディネートは、屋内に限らず、屋外であってもよいものとする。
図14は、家具のコーディネートを提案するUI画面の一例を示す図である。なお、画面UI11と同様の説明は適宜省略する。画面UI13は、例えば、家具の販売を目的とするウェブコンテンツである。
画面UI13は、クエリサブコーデのアイテムFI25及びFI26を含む。アイテムFI25及びFI26は、ユーザが購入した購入済みのアイテム、若しくは、購入が予定されている購入予定のアイテムである。
画面UI13は、ギャラリーサブコーデのアイテムFI35及びFI36を含む。アイテムFI35及びFI36は、アイテムFI25及びFI26とのコーディネートとして情報処理装置100により提案されたアイテムである。
画面UI13は、アイテムFI35及びFI36をまとめてカートに加えるためのカート操作項目CA12を含む。
画面UI13は、条件を変更してコーディネートを再生成するための条件操作項目JJ21乃至JJ27、JJ15及びJJ16を含む。
条件操作項目JJ25は、アイテムの探索範囲を部屋の広さに基づいて変更するための操作項目である。例えば、条件操作項目JJ25に対する操作に基づいて部屋の広さを広くするほど、大きめの家具といった広い部屋にも対応可能なサブコーデのアイテム群が表示される。条件操作項目JJ25を調整することにより、コーディネート全体として部屋の広さに応じたアイテム群の情報を表示することができる。
条件操作項目JJ26は、アイテムの探索範囲をタイプに基づいて限定するための操作項目である。例えば、条件操作項目JJ26に対する操作に基づいてタイプを指定することで、指定されたタイプに適したサブコーデのアイテム群が表示される。例えば、タイプとして和風が指定された場合、和風に適したアイテム群が表示される。
条件操作項目JJ27は、アイテムの探索範囲をカテゴリに基づいて限定するための操作項目である。例えば、条件操作項目JJ27に対する操作に基づいてカテゴリを指定することで、指定されたカテゴリに適したサブコーデのアイテム群が表示される。例えば、カテゴリとして、椅子、椅子、椅子、テーブルの組み合わせが指定された場合、その組み合わせに適したアイテム群が表示される。
情報処理装置100は、例えば、花束のコーディネートを提案するためのコーデ生成を行ってもよい。例えば、情報処理装置100は、ユーザの好きな花をクエリサブコーデのアイテムとして選択し、売られているアイテムをギャラリーサブコーデのアイテムとして選択することで、コーデ生成を行ってもよい。これにより、情報処理装置100は、一つの花束といった作品を完成させることができる。このため、情報処理装置100は、コーディネート全体として調和の高い花束のコーディネートを提案することができる。
情報処理装置100は、クリスマスなどのTPOに応じて、ギャラリーサブコーデのアイテム候補を絞ることで、コーデ生成を行ってもよい。例えば、情報処理装置100は、クリスマス用の花束のコーディネートである場合には、ギャラリーサブコーデのアイテムをクリスマス用の花に絞ることで、コーデ生成を行ってもよい。
上記実施形態において、情報処理装置100は、自撮り画像のコーディネートを補完するようにアイテムを提案してもよい。例えば、情報処理装置100は、自撮り画像において、ユーザがハットを着用していない場合には、ハットを補完するようなコーデ生成を行うことで、ハットを補完したコーディネートを提案してもよい。また、例えば、情報処理装置100は、自撮り画像においてトップスのみを他のトップスと入れ替えたい場合には、他のアイテム(例えば、ボトムスとハットとシューズ)を固定してコーデ生成を行うことで、トップスのみが入れ替えられたコーディネートを提案してもよい。
図15は、自撮り画像に対するコーディネートを提案するUI画面の一例を示す図である。なお、画面UI11と同様の説明は適宜省略する。
画面UI14は、アップロードされた自撮り画像PI11を含む。なお、画像PI11は、例えば、ユーザの操作に応じてアップロードされたものであってもよいし、自動的にアップロードされたものであってもよい。
画面UI14は、クエリサブコーデのアイテムFI27乃至FI29を含む。アイテムFI27乃至FI29は、ユーザが着用していると判定されたアイテムである。
画面UI14は、ギャラリーサブコーデのアイテムFI37及びFI38を含む。アイテムFI37及びFI38は、アイテムFI27乃至FI29とのコーディネートとして情報処理装置100により提案されたアイテムである。
画面UI14は、アイテムFI37及びFI38をまとめてカートに加えるためのカート操作項目CA13を含む。
画面UI14は、条件を変更してコーディネートを再生成するための条件操作項目JJ31乃至JJ35、JJ15乃至JJ19を含む。条件操作項目JJ31は、アイテムFI27を変更するための操作項目である。また、条件操作項目JJ32は、アイテムFI28を変更するための操作項目である。また、条件操作項目JJ33は、アイテムFI29を変更するための操作項目である。
条件操作項目JJ34は、アイテムFI37をギャラリーサブコーデの一のアイテムとして固定して、他のアイテム(アイテムFI27、FI28、FI29、FI38)を変更するための操作項目である。また、条件操作項目JJ35は、アイテムFI38をギャラリーサブコーデの一のアイテムとして固定して、他のアイテム(アイテムFI27、FI28、FI29、FI37)を変更するための操作項目である。
上記実施形態において、画面UI11が、条件操作項目JJ11乃至JJ19を有する場合を示したが、条件操作項目はこの例に限られない。例えば、画面UI11は、アイテムの探索範囲をユーザの体型データに基づいて変更するための操作項目を有してもよい。例えば、画面UI11は、ユーザの体型データを計測可能な計測対象から計測された体型データに基づいて、アイテムの探索範囲を変更するための操作項目を有してもよい。これを調整することにより、コーディネート全体としてユーザの体型(例えば、ぽっちゃりやスリム)に適したアイテム群の情報を表示することができる。
上記実施形態において、クエリサブコーデのアイテム群を記憶するサーバと、ギャラリーサブコーデのアイテム群を記憶するサーバとが同一であってもよいし、異なってもよいものとする。また、クエリサブコーデのアイテム群を記憶するサーバ、若しくは、ギャラリーサブコーデのアイテム群を記憶するサーバと、投稿情報を提供する所定のウェブサービスを管理するサーバとが同一であってもよいし、異なってもよいものとする。
(UI画面の種々のバリエーション)
以下、実施形態に係るUI画面の種々のバリエーションについて説明する。上述したように、情報処理装置100は、カートに加えられたが未だ購入されていないアイテムを購買履歴に含めてコーデ生成を行ってもよい。以下では、購買履歴だけでなく、カートに加えられたアイテムも含めてコーデ生成を行う場合を説明する。なお、画面UI11乃至UI14と同様の説明は適宜省略する。
(バリエーション1:カートを利用したコーデ生成)
図16は、カートに加えられたアイテムも含めてコーディネートを提案するUI画面の一例を示す図である。
画面UI15は、クエリサブコーデのアイテムFI211及びFI212を含む。アイテムFI211及びFI212は、ユーザが購入した購入済みのアイテム又はカートに加えられたアイテムから選択されたアイテムである。図16では、アイテムFI211が購入済みのアイテムであり、アイテムFI212がカートに加えられたアイテムである。
画面UI15は、アイテムFI211及びFI212のそれぞれをカートに加えるためのカート操作項目CA111及びCA112を含む。例えば、カート操作項目CA111が操作されると、アイテムFI211がカートに加えられ、カート操作項目CA112が操作されると、アイテムFI212がカートに加えられる。
画面UI15は、クエリサブコーデに追加可能な未入力のアイテムFI213を含む。アイテムFI213は、説明の便宜上、未入力のアイテムとして説明するが、アイテムを追加するための操作項目でもある。ユーザは、アイテムFI213にアイテムを追加することができる。なお、アイテムFI213としてアイテムが追加されると、更に追加可能な未入力のアイテムを画面UI15に表示させてもよい。
アイテムFI213に対して操作が行われると、クエリサブコーデを構成するためのアイテムが購買履歴又はカートから選択されるものとする。なお、選択されるアイテムのカテゴリは、任意のアルゴリズムに従って決められるものとするが、ユーザがカテゴリを指定したい場合には、条件操作項目JJ111のスライドバーを操作することで、指定されてもよい。
アイテムFI211及びFI212の右上の点線で囲まれた「×」表示は、「×」表示が重畳するアイテムを削除するための操作項目である。「×」表示に対して操作が行われると、操作が行われたアイテムは削除され、例えば、アイテムFI213のような未入力のアイテムが表示されてもよい。そして、情報処理装置100は、削除されたアイテムを除外して、コーデ生成を行ってもよい。
アイテムFI211及びFI212の右下の点線で囲まれた「+」表示は、そのアイテムを含むコーディネートを参照するための操作項目である。「+」表示に対して操作が行われると、図17に示すような参照画像情報FF11を表示させてもよい。なお、図17は、参照画像情報FF11の表示以外が図16と同様のため、参照画像情報FF11の表示以外の説明を省略する。
参照画像情報FF11は、アイテムFI211の右下の点線で囲まれた「+」表示に対して操作が行われた際に表示される参照画像情報である。参照画像情報FF11は、アイテムFI211を使用した複数のコーディネート画像(画像PI21乃至PI26)を含む。なお、参照画像情報FF11に表示されるコーディネート画像の数は特に限定されないものとする。情報処理装置100は、例えば所定のウェブサービスに投稿された投稿情報から、アイテムFI211を含むコーディネート画像を検索することで、表示させる参照画像情報を生成する。
図16の説明に戻る。画面UI15は、ギャラリーサブコーデのアイテムFI311及びFI312を含む。また、画面UI15は、アイテムFI311及びFI312に対応したカート操作項目CA113及びCA114を含む。また、画面UI15は、ギャラリーサブコーデに追加可能な未入力のアイテムFI313を含む。ここで、アイテムFI313の機能は、購買履歴とカートとのどちらにも含まれないアイテムが選択される点以外、アイテムFI213と同様である。また、画面UI15は、アイテムFI313に対応した条件操作項目JJ112を含む。
画面UI15は、着用イメージを表示させるための画像表示欄を含む。画像PI12は、着用イメージを表示させるための画像表示欄に表示された画像である。情報処理装置100は、完成したコーディネートを実際に着用した画像を、例えば所定のウェブサービスに投稿された投稿情報から検索することで、画像表示欄に表示させるための画像を決定する。なお、情報処理装置100は、完成したコーディネートを実際に着用した画像が、投稿情報から検索できない場合には、完成したコーディネートを構成するアイテムの大半を着用した画像を検索することで、画像表示欄に表示させるための画像を決定してもよい。
情報処理装置100は、完成したコーディネートを実際に着用した画像が、投稿情報から検索できない場合には、完成したコーディネートを構成するアイテムのうち、検索できない単数又は複数のアイテムと類似のアイテムを含むコーディネートを着用した画像を検索し、画像表示欄に表示させるための画像を決定してもよい。このように、完成したコーディネートを構成するアイテムを着用したコーディネートを用いずに、当該アイテムに類似したアイテムを着用したコーディネートを用いて着用イメージの例として表示してもよい。この際、類似のアイテムからなるコーディネートは、従来の画像検索技術によって検索することで選択してもよい。具体的な例を挙げると、完成したコーディネートが「トップスA、ボトムスB、シューズC」であり、このうち「トップスA、ボトムスB」を着用した画像が複数検索できたが、「シューズC」を含み着用した画像が検索できなかった場合である。この場合、情報処理装置100は、「シューズC」を画像検索にかけて、「シューズC」と類似のアイテムを検索する。そして、情報処理装置100は、「シューズC」と類似のアイテムとして、「シューズD」が検索された場合には、「トップスA、ボトムスB、シューズD」のコーディネートを着用した画像を検索し、見つかった場合には、それを画像表示欄に着用イメージとして表示させてもよい。
画面UI15は、購買履歴のアイテムを含めずにコーディネートを再生成するための条件操作項目JJ113と、カートのアイテムを含めずにコーディネートを再生成するための条件操作項目JJ114を含む。情報処理装置100は、条件操作項目JJ113に対して操作が行われた場合には、コーデ生成時に、購買履歴のアイテムを除外してコーデ生成を行ってもよい。図16の例では、情報処理装置100は、例えば、購買履歴のアイテムであるアイテムFI211を除外して、アイテムFI212のみをクエリサブコーデとして、コーデ生成を行ってもよい。
情報処理装置100は、条件操作項目JJ114に対して操作が行われた場合には、コーデ生成時に、カートのアイテムを除外してコーデ生成を行ってもよい。図16の例では、情報処理装置100は、例えば、カートのアイテムであるアイテムFI212を除外して、アイテムFI211のみをクエリサブコーデとして、コーデ生成を行ってもよい。
画面UI15は、ランダムウォークの設定を操作するためのランダムウォーク欄が追加されたランダムウォーク情報WW11を含む。ランダムウォーク情報WW11は、種々の操作項目を含む。例えば、ランダムウォーク情報WW11は、アイテムの突飛さ、価格帯、ブランドの類似度、アイテムの新しさ、季節感の統一度、閲覧したアイテム、色の近さ、アイテムの人気度、割引率、スタイルの統一度、お気に入りアイテムの優先度、お気に入りブランドの優先度、在庫の多さ、流行度、同時購入率、性別、サイズ感などの操作項目を含む。
ランダムウォーク情報WW11は、それぞれの操作項目に対応したチェック可能な操作項目と、調整可能なトグルの操作項目とを含む。ランダムウォーク情報WW11では、例えばチェックが入れられた操作項目が有効化されて、トグルで効かせ具合を調整できるものとする。図16では、アイテムの突発さ、ブランドの類似度及び閲覧したアイテムの操作項目に対してチェックが入れられて有効化されたものとする。なお、ランダムウォーク情報WW11は一例であり、操作態様や操作項目は特に限定されないものとする。
画面UI15は、コーディネートの再生成に係る条件を自由に入力してアイテムを絞り込むための条件操作項目JJ115を含む。例えば、情報処理装置100は、条件操作項目JJ115に対して入力された入力情報(例えば、文字情報)に基づくアイテムに絞り込んでコーデ生成を行ってもよい。図16に示すように、ファッションスタイルとして「モード」、ファッションブランドとして「AAA1」が入力された場合には、情報処理装置100は、「AAA1」のアイテムで構成されたモード系のコーディネートを再生成するためのコーデ生成を行ってもよい。
画面UI15は、電子商取引上で売り切れのアイテムを含めずにコーディネートを再生成するための条件操作項目JJ116を含む。図16では、条件操作項目JJ116に対してチェックが入れられて有効化されたものとする。情報処理装置100は、条件操作項目JJ116に対して操作が行われて有効化された場合には、コーデ生成時に、電子商取引上で売り切れのアイテムを除外してコーデ生成を行ってもよい。
画面UI15は、性別、身長、体重及び顔の形のそれぞれでアイテムを絞り込むことで、コーディネートを再生成するための条件操作項目JJ116乃至JJ119を含む。条件操作項目JJ116乃至JJ119は、外観からアイテムを絞り込み可能な操作項目でもある。なお、条件操作項目JJ116乃至JJ119は一例であり、これらのような外観からアイテムを絞り込み可能な操作項目の種別や数は特に限定されないものとする。これにより、例えば他人へのプレゼントの際などで効果的になるため、ユーザビリティの向上を促進することができる。
画面UI15では、着用イメージを表示させるための画像表示欄に表示可能な画像の数が、画像PI12の1つである場合を示したが、着用イメージを表示させるための画像表示欄に表示可能な画像の数は特に限定されず、複数が表示されてもよいものとする。
(バリエーション2:特定のアイテムを含めたコーデ生成)
図18は、特定のアイテムを含めてコーデ生成を行うよう操作する場合のUI画面の一例を示す図である。例えば、アイテムを閲覧している際に「このアイテムを使用したコーディネートを生成したい」といったようなシチュエーションを考慮したUI画面である。なお、図16と同様の説明は適宜省略する。
画面UI16は、クエリサブコーデのアイテムFI221を含む。アイテムFI221は、ユーザが閲覧している特定のアイテムである。情報処理装置100は、アイテムFI221が固定して含まれるように、コーデ生成を行ってもよい。なお、画面UI16は、アイテムFI221に対応したカート操作項目CA121を含む。
(バリエーション3:配信用のUI画面)
図19は、電子商取引を管理するサーバから配信されたUI画面の一例を示す図である。
画面UI17は、ユーザが購入した購入済みのアイテム又はカートに加えられたアイテムであるアイテムFI231及びFI232を含む。また、画面UI17は、アイテムFI231及びFI232とのコーディネートを提案するアイテムFI331及びFI332を含む。
画面UI17は、アイテムFI231、FI232、FI331及びFI332のコーデ生成の詳細を示す画面に遷移するための詳細操作項目DD11を含む。画面UI17は、詳細操作項目DD11が操作されると、コーデ生成の詳細を示す画面に遷移する。
(バリエーション4:コーデ生成支援)
図20は、コーデ生成の支援を行うUI画面の一例を示す図である。画面UI18は、画面UI12に画面UI15の機能を追加した画面である。すなわち、画面UI18は、画面UI12又はUI15の変形例である。
図20では、アイテムFI241乃至FI243がクエリサブコーデのアイテムであり、アイテムFI341乃至FI343がギャラリーサブコーデのアイテムである。
(バリエーション5:家具のコーデ生成)
図21は、家具のコーディネートを提案するUI画面の一例を示す図である。画面UI19は、画面UI13に画面UI15の機能を追加した画面である。すなわち、画面UI19は、画面UI13又はUI15の変形例である。
図21では、アイテムFI251乃至FI253がクエリサブコーデのアイテムであり、アイテムFI351乃至FI353がギャラリーサブコーデのアイテムである。また、画面UI19は、家具のコーディネート時の部屋のイメージを表示させるための画像表示欄を含む。画像PI13は、部屋のイメージを表示させるための画像表示欄に表示された画像である。
(バリエーション6:アイテムを指定したコーデ生成)
図22は、特定のアイテムを含めてコーデ生成を行うようアイテムを指定する場合のUI画面の一例を示す図である。
画面UI20は、クエリサブコーデのアイテムFI261及びFI262を含む。アイテムFI261及びFI262は、ユーザによりコーデ生成に指定された特定のアイテムである。情報処理装置100は、アイテムFI261及びFI262が固定して含まれるように、コーデ生成を行ってもよい。すなわち、クエリサブコーデがユーザにより決定されるため、情報処理装置100は、ユーザにより決定されるクエリサブコーデを用いて、能動的にコーデ生成を行ってもよい。なお、画面UI16は、アイテムFI261及びFI262に対応したカート操作項目CA131及びCA132を含む。
(バリエーション7:自撮り画像に対するコーデ生成)
図23は、自撮り画像に対するコーディネートを提案するUI画面の一例を示す図である。画面UI21は、画面UI14に画面UI15の機能を追加した画面である。すなわち、画面UI21は、画面UI14又はUI15の変形例である。
図23では、アイテムFI271乃至FI273がクエリサブコーデのアイテムであり、ユーザが着用していると判定されたアイテムである。また、アイテムFI371乃至FI373がギャラリーサブコーデのアイテムであり、アイテムFI271乃至FI273とのコーディネートとして情報処理装置100により提案されたアイテムである。
以下、画面UI21の実装例について説明する。図24は、画面UI21を、投稿情報を管理する所定のウェブサービスに実装した場合のUI画面の一例を示す図である。例えば、アイテムを閲覧している際に「このアイテムを使用したコーディネートを生成したい」といったようなシチュエーションを考慮したUI画面である。
画面UI22は、ユーザが閲覧している画像を表示させるための画像表示欄を含む。画像PI14は、その画像表示欄に表示された画像である。
画面UI22は、画像PI14のアイテムを、ギャラリーサブコーデのアイテムを管理する電子商取引上で購入するための操作項目PP11を含む。また、画面UI22は、画像PI14のアイテムを、ギャラリーサブコーデのアイテムを管理する電子商取引上で検索するための操作項目PP12を含む。操作項目PP12は、例えば、ユーザが操作項目PP11に紐づく販売元とは異なる販売元から購入したい場合などのための操作項目である。
画面UI22は、ユーザが有するアイテム(例えば、クローゼットに含まれるアイテム)の中から、画像PI14のアイテムと合わせやすいアイテムを選択して表示させた参照画像情報FF21を含む。
画面UI22は、ユーザが有するアイテムと、画像PI14のアイテムとの組み合わせの例を表示させた参照画像情報FF22を含む。情報処理装置100は、画像PI14のアイテムと、参照画像情報FF21に含まれるアイテムとをサブコーデ同士のアイテムとして、コーデ生成を行うことによって、参照画像情報FF22を生成してもよい。
画面UI22は、ギャラリーサブコーデのアイテムを管理する電子商取引上で購入可能なアイテムの中から、画像PI14のアイテムと合わせやすいアイテムを選択して表示させた参照画像情報FF23を含む。
(バリエーション8:クエリサブコーデを用いないコーデ生成)
図25は、ギャラリーサブコーデのアイテム候補のみを用いてコーディネートを提案するUI画面の一例を示す図である。
画面UI23は、ギャラリーサブコーデのアイテムFI381及びFI382を含む。アイテムFI381及びFI382は、ギャラリーサブコーデのアイテム候補から選択されたアイテムである。例えば、ユーザの好きなブランドなどのユーザ情報に基づいて選択されたアイテムである。情報処理装置100は、例えば、仮想のユーザ像(ペルソナ)を予め定めて、予め定められたペルソナとペルソナ用のサブコーデとを紐づけておくことで、ギャラリーサブコーデを生成してもよい。これにより、情報処理装置100は、パーソナライズされた情報に基づいて、適切にコーディネートを提案することができる。
情報処理装置100は、アイテムFI381及びFI382を用いて、コーデ生成を行い、コーディネートを提案してもよい。なお、画面UI23は、アイテムFI381及びFI382に対応したカート操作項目CA141及びCA142を含む。
画面UI23は、ギャラリーサブコーデに追加可能な未入力のアイテムFI383を含む。アイテムFI383が追加された場合、情報処理装置100は、例えばペルソナに基づいて決定されたアイテムFI381及びFI382と、アイテムFI383とを一つのコーディネートとして提案してもよい。なお、画面UI23は、アイテムFI383に対応した条件操作項目JJ121を含む。
(UI操作とアイテム選択の一例)
以下、実施形態に係るUI操作とアイテム選択の一例について説明する。以下では、UI操作の一例として、スワイプ操作でアイテム選択を可能とする場合を説明する。なお、画面UI11乃至UI23と同様の説明は適宜省略する。
(バリエーション1:全身コーディネート画像が表示されない場合のアイテム選択)
図26は、着用イメージなどの全身コーディネート画像が表示されない場合において、スワイプ操作でアイテム選択を行う場合のUI画面の一例を示す図である。
画面UI24は、ユーザが購入した購入済みのアイテム又はカートに加えられたアイテムであるアイテムFI281及びFI282を含む。図26では、アイテムFI282に対して、ユーザが親指UU11でスワイプ操作SW11を行うことによって、アイテムFI282が選択されたものとする。情報処理装置100は、スワイプ操作SW11によって選択されたアイテムSI282を用いてコーデ生成の再生成を行ってもよいし、選択されたアイテムSI282を省いてコーデ生成の再作成を行ってもよい。
画面UI24は、アイテムFI281及びFI282とのコーディネートを提案するアイテムFI391及びFI392を含む。図26では、アイテムFI392に対して、ユーザが親指UU12でスワイプ操作SW12を行うことによって、アイテムFI392が選択されたものとする。情報処理装置100は、スワイプ操作SW12によって選択されたアイテムSI392を用いてコーデ生成の再生成を行ってもよい。なお、図26では、説明の便宜上、親指UU11とUU12とが同時に操作するように表示されているが、実際は、スワイプ操作SW11を行った後にスワイプ操作SW12を行う、若しくは、スワイプ操作SW12を行った後にスワイプ操作SW11を行うものとする。また、アイテムではなく画面全体を右にスワイプ操作を行った場合は、表示されているアイテムを全てカートに入れても良いし、画面全体を左にスワイプ操作を行った場合は、コーディネートを作り直してもよい。
(全身コーディネート画像が表示された場合のアイテム選択)
図27Aは、着用イメージなどの全身コーディネート画像が表示された場合において、スワイプ操作でアイテム選択を行う場合のUI画面の一例を示す図である。なお、図27Aは、スワイプ操作前の初期画面の一例を示す。
画面UI25は、ユーザが購入した購入済みのアイテムであるアイテムFI291乃至FI293を含む。図27Aでは、アイテムFI291に対して、ユーザが親指UU13でスワイプ操作SW13を行うことによって、スワイプ操作SW13に追従して、アイテムFI291がUI画面上を移動する。そして、着用イメージを写す画像PI15において、アイテムFI291のカテゴリであるトップスに移動すると、着用イメージのトップスが、アイテムFI291と置き換わって表示される。情報処理装置100は、スワイプ操作SW13によって選択されたアイテムFI291を、着用イメージに重ねてコーディネート画像を表示させるための処理を行ってもよい。これにより、ユーザは、選択したアイテムを人体モデルに重ねることができるため、コーディネート画像を適切に確認することができる。なお、スワイプされたアイテムを使用したコーディネートを改めて作成し、それを表示してもよいし、スワイプされたアイテムを省いたコーディネートを改めて作成し、それを表示してもよい。更に、アイテムではなく画面全体を右にスワイプ操作を行った場合は、表示されているアイテムを全てカートに入れても良いし、画面全体を左にスワイプ操作を行った場合は、コーディネートを作り直してもよい。
図27Bは、図27Aのスワイプ操作後の画面の一例を示す図である。図27Bでは、図27Aにおいてスワイプ操作SW13によってアイテムFI291が画像PI15に移動したため、画像PI15に写る人物がアイテムFI291を着用しているように表示される。また、図27Bでは、アイテムFI291が画像PI15に移動したため、スワイプ操作前に表示された、アイテムFI291乃至FI293を選択可能な購買履歴のアイテム欄において、アイテムFI291が空白で表示される。また、変形例として、情報処理装置100は、おすすめアイテムを人体モデル上で表示して、表示されたアイテムをスワイプすることで、他のアイテム候補の表示も可能とするための処理を行ってもよい。
〔7.実施形態2〕
実施形態1では、マッチングのためのカテゴリを予め定め、カテゴリ毎にアイテムを一つずつ入れ替えてマッチングスコアを算出するため、繰り返しの計算が発生し、処理の負担が大きくなり得る。また、カテゴリ毎にデータベースを用意する必要もある。
実施形態2は、上記に鑑みてなされたものであって、より効率的に、コーディネート全体として調和の高い情報を提供することを目的とする。
図28は、実施形態2に係る情報処理システム1Aの情報処理(推定時)を説明するための説明図である。以下、実施形態2に係る情報処理装置100を、適宜、「情報処理装置100A」とする。なお、実施形態1と同様の説明は適宜省略する。
情報処理装置100Aは、マッチングの判断において、画像以外の情報を用いて候補アイテムを限定することにより、コーデ生成の処理を行う。実施形態2では、候補アイテムを限定するための情報を「補助情報」とする。以下、補助情報が、候補アイテムのカテゴリを限定するための情報、すなわち、候補アイテムのカテゴリを指定する情報であるものとして説明する。なお、補助情報は、検索対象の何かしらの属性を表現するメタデータであればどのような情報であってもよいものとする。
クエリサブコーデKS41は、シャツとシューズとを含むものとする。例えば、クエリサブコーデKS41は、ターゲットユーザの所有物の中から選択されたアイテムから成るアイテム群である。また、補助情報HJ11は、候補アイテムを「スカート、バッグ、ハット」のカテゴリに限定するための情報である。補助情報HJ11は、人手により指定された情報であってもよいし、補助情報を推定するモデルを別途用意して、補助情報を推定するモデルにより指定された情報であってもよい。
情報処理装置100Aは、クエリサブコーデKS41と補助情報HJ11とを、条件付集合関数(モデルMD21)に入力することにより、候補アイテムの特徴量(y11乃至y13)を出力する。この際、モデルMD21へ入力される入力情報は、クエリサブコーデKS41のアイテムの数に等しいアイテムの特徴量と、補助情報HJ11のカテゴリを指定する情報である。また、モデルMD21から出力される出力情報は、補助情報HJ11のカテゴリを指定する情報の数と同数のアイテムの特徴量である。そして、情報処理装置100Aは、出力した候補アイテムそれぞれの特徴量をデータベースで検索することにより候補アイテムを特定し、候補アイテムから成るアイテム群のギャラリーサブコーデGS41を生成する。例えば、情報処理装置100Aは、特徴量y1からスカートの候補アイテムを特定し、特徴量y2からバッグの候補アイテムを特定し、特徴量y3からハットの候補アイテムを特定し、ギャラリーサブコーデGS41を生成する。なお、特徴量を用いた候補アイテムの検索手段は特に限定されず、例えば、近似計算に基づく一般的な近傍探索技術を用いた手段であってもよい。なお、情報処理装置100Aは、ギャラリーサブコーデGS41のようなギャラリーサブコーデを複数パタン同時に生成してもよい。この場合、情報処理装置100Aは、y11乃至y13の特徴量それぞれ独立に近傍探索を実行し候補アイテムを特定する。この際、情報処理装置100Aは、それぞれ上位k個の候補アイテムを特定したとすると、最大で、k^3個のギャラリーサブコーデを生成することが可能になる。
ここで、モデルMD21の学習について図29を用いて説明する。図29は、実施形態2に係る情報処理システム1Aの情報処理(学習時)を説明するための説明図である。
情報処理装置100Aは、コーディネートのアイテム群を記憶したデータベースDB11からアイテム群を取得してランダムに分割することでアイテム群(BK11及びBK12)を生成する。そして、情報処理装置100Aは、分割した一方のアイテム群BK11の特徴量を用いて、他方のアイテム群BK12の特徴量を推定するためのモデルMD21の学習を行う。なお、データベースDB11は、例えば、コーディネートを投稿する投稿サイトに投稿されたコーディネートのアイテム群を記憶したデータベースである。
情報処理装置100Aは、例えば、分割した一方のアイテム群BK11から特徴量(x1乃びx2)を抽出し、抽出した特徴量と補助情報HJ12(スカート、バッグ)とをモデルMD21に入力し得られた特徴量(y1乃びy2)を用いてモデルMD21の学習を行う。具体的には、情報処理装置100Aは、特徴量(y1乃びy2)と、他方のアイテム群BK12の特徴量の正解データ(Y1乃びY2)とを比較することで、正解データに近づくようにモデルMD21の学習を行う。
また、情報処理装置100Aは、例えば、分割した一方のアイテム群BK11の特徴量(x1乃びx2)と、モデルMD21から得られた特徴量(y1乃びy2)とを用いてモデルMD21の学習を行う。具体的には、情報処理装置100Aは、特徴量(x1乃びx2)と特徴量(y1乃びy2)との組み合わせに基づくマッチングスコア(スコアpred)と、特徴量(x1乃びx2)と特徴量(Y1乃びY2)との組み合わせに基づくマッチングスコア(スコアtrue)とを比較することで、スコアpredがスコアtrueに等しい又はスコアtrueよりも大きくなるようにモデルMD21の学習を行う。換言すると、情報処理装置100Aは、アイテム群BK11と特徴量(y1乃びy2)に基づいて検索されるアイテム群の検索結果との組み合わせのスコアpredが、アイテム群BK11とアイテム群BK12の正解データとの組み合わせのスコアtrueに等しい又はスコアtrueよりも大きくなるようにモデルMD21の学習を行う。
なお、図29では、正例を用いてモデルMD21の学習を行う場合を示したが、正例だけでなく負例を用いてモデルMD21の学習を行ってもよい。以下、情報処理装置100Aが負例を用いてモデルMD21の学習を行う場合の処理を説明する。負例を用いたモデルMD21の学習について図30を用いて説明する。図30は、実施形態2に係る情報処理システム1Aの情報処理(学習時)を説明するための説明図である。なお、図29と同様の説明は適宜省略する。
情報処理装置100Aは、データベースDB11から、BK11及びBK12以外のコーディネートのアイテム群を複数選択し、選択されたアイテム群をそれぞれランダムに分割することで、負例のアイテム群(BK13及びBK14)を生成してもよい。そして、情報処理装置100Aは、図29で出力された特徴量(y1及びy2)と、BK13の特徴量(z1及びz2)や、BK14の特徴量(z3及びz4)との距離が遠くなるようにモデルMD21の学習を行う。また、情報処理装置100は、正例を用いてモデルMD21の学習を行うことで、y1のアイテムをスカート、y2のアイテムをバッグと特定し、且つ、y1とY1、y2とY2を対応付けた上で、y1が負例の特徴量(z1乃至z4)よりもY1に近くなり、y2が負例の特徴量(z1乃至z4)よりもY2に近くなるようにモデルMD21の学習を行ってもよい。
このように、実施形態2では、アイテム群BK12の特徴量を隠し、カテゴリの情報だけを補助情報として与え、アイテム群BK11の特徴量と補助情報とを用いて、アイテム群BK12の特徴量を推定する。これにより、情報処理装置100Aは、アイテム群BK12を隠すような学習を行うことで、アイテム群BK11とコーディネートとして合うアイテム群を適切に推定することができる。
以下、実施形態2に係るUI画面について図31及び32を用いて説明する。図31は、実施形態2に係るUI画面の一例を示す図である。画面UI27は、条件操作項目(JJ41及びJJ42)と、コーデ生成を実行するための操作項目JJ43とを含む。JJ41は、クエリサブコーデを設定するための条件操作項目である。JJ41に入力可能なアイテムの数は任意であり、JJ41に対する操作により、適宜変更可能なものとする。また、JJ42は、補助情報を設定するための条件操作項目である。JJ42に対する操作により、ギャラリーサブコーデに欲しいアイテムに対応した補助情報がそれぞれ設定可能なものとする。例えば、JJ421は、ギャラリーサブコーデに欲しい一のアイテムに対する補助情報(補助情報1)を設定するための条件操作項目である。ここで、JJ421は、カテゴリカル、連続値、自然文入力等の複数の入力を受け付け可能なインターフェイスを含む。なお、符号は付されていないが、JJ42には、JJ421が対象とするアイテムとは異なるアイテムに対する補助情報(補助情報2及3)を設定するための条件操作項目が含まれる。また、図示されていないが、補助情報2及3の条件操作項目にも、JJ421と同様の、カテゴリカル、連続値、自然文入力等の複数の入力を受け付け可能なインターフェイスが含まれるものとする。また、JJ420は、補助情報の項目を追加するための条件操作項目である。JJ420に対する操作により、補助情報の項目がJJ42に追加される。例えば、JJ42に含まれる補助情報のうち、補助情報3が最後の補助情報である場合には、JJ420を操作することにより、補助情報4がJJ42に追加される。更にJJ420を操作すると、補助情報5がJJ42に追加される。なお、例えば、補助情報4が追加され、補助情報4まで入力した状態でJJ43を操作すると、補助情報1乃至4に対応する4つのアイテムを用いたギャラリーサブコーデが複数パタン提示された画面に遷移する。
図32は、実施形態2に係るUI画面の一例を示す図である。画面UI28は、図31のJJ421のカテゴリカルの入力の一例を示すUI画面である。ただし、図32では、図31と異なり、複数の補助情報の項目を用いずに、JJ44で全ての補助情報の入力が実行される。すなわち、JJ44は、JJ42に対応し、JJ44の複数選択のチェックボックスは、JJ42の複数の条件操作項目に対応する。なお、図31と同様の説明は適宜省略する。ここで、画面UI28では、補助情報として、ボトムスとハットとバッグが選択されたものとする。この場合、ギャラリーサブコーデとして出力されるアイテムのカテゴリが、ボトムスとハットとバッグになる。すなわち、画面UI28でチェックしたカテゴリのアイテムが画面UI29に並ぶ。そして、操作項目JJ43が操作されると、コーデ生成が実行され、画面UI29に遷移する。画面UI29は、クエリサブコーデKS51と、提案情報TI11とを含む。提案情報TI11は、クエリサブコーデKS51に対応するギャラリーサブコーデの候補を提案するための情報である。例えば、提案情報TI111は、複数の候補のうち、一の候補を提案するための情報であり、一の候補に含まれる複数のアイテムの画像情報や、複数のアイテムを用いた着用画像の画像情報を含む。なお、各アイテムの画像情報を操作することで、各アイテムの購入を可能としてもよいし、提案された複数のアイテムをまとめて購入するための項目を操作することで、一括購入を可能としてもよい。また、図示されていないが、提案情報TI112や提案情報TI113も、各アイテムの画像情報や着用画像等の提案情報TI111と同様の情報を含むものとする。提案情報TI112や提案情報TI113には、提案情報TI111と同じカテゴリであるが、異なるギャラリーサブコーデのアイテムが並ぶ。
(評価に基づく再学習)
上記実施形態2において、情報処理装置100Aは、モデルMD21の出力結果に対するユーザの評価(例えば、「良い」や「良くない」等)に基づいて、モデルMD21の再学習を行ってもよい。具体的には、情報処理装置100Aは、モデルMD21を用いて推定された特徴量に基づいて検索されたアイテム群の検索結果と、モデルMD21に入力した特徴量のアイテム群との組み合わせのコーディネートを提示して、提示したコーディネートに対するユーザの評価に基づいて、モデルMD21の再学習を行ってもよい。図28に示した例では、情報処理装置100Aは、クエリサブコーデKS41とギャラリーサブコーデGS41とを組み合わせたコーディネートに対するユーザの評価に基づいてモデルMD21の再学習を行ってもよい。なお、情報処理装置100Aは、例えば、ユーザの評価に基づいて異なる補助情報を選択し、選択された補助情報を入力に用いて出力結果を更新してもよい。また、情報処理装置100Aは、例えば、ユーザの評価に基づいて選択された補助情報と、ユーザの評価前に受け付けられた補助情報とを平均した情報を補助情報として入力に用いることで出力結果を更新してもよい。
(他の補助情報)
上記実施形態2では、補助情報が、候補アイテムのカテゴリを指定する情報であるものとして説明したが、この例に限られない。補助情報は、クエリサブコーデKS41とのコーディネートのアイテム群を絞り込むための情報であればどのような情報であってもよい。例えば、補助情報は、ブランドやファッションテイスト(例えば、カジュアルやフォーマル等)を指定する情報であってもよい。この場合、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムとして、指定されたブランドやファッションテイストをアイテム属性に含む候補アイテムの特徴量を推定する。これにより、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムを特定のブランドやファッションテイストを指定して検索することができる。また、情報処理装置100Aは、指定されたブランドやファッションテイストと系統が類似するブランドやファッションテイストをアイテム属性に含む候補アイテムの特徴量を推定してもよい。これにより、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムを特定のブランドやファッションテイストと系統が類似するブランドやファッションテイストから検索することができる。
また、情報処理装置100Aは、カテゴリの補助情報と組み合わせて候補アイテムの特徴量を推定してもよい。これにより、カテゴリと組み合わせた高度な検索が可能になる。また、情報処理装置100Aは、候補アイテム毎にブランドやファッションテイスト等を指定する補助情報を受け付けてもよい。
また、補助情報は、例えば提案したい複数パタンのコーディネートを数と対応付けて記憶しておくことで、乱数に基づいて指定された情報であってもよい。この場合、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムとして、乱数に基づく数に応じたコーディネートの特徴をアイテム属性に含む候補アイテムの特徴量を推定する。これにより、提案したい複数パタンのコーディネートのうちいずれかのコーディネートの特徴を反映させた候補アイテムの検索が可能になる。
また、補助情報は、性別や年代等のターゲットユーザの属性に基づいて指定された情報であってもよい。この場合、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムとして、ターゲットユーザの属性をターゲットとする候補アイテムの特徴量を推定する。これにより、性別や年代等のターゲットユーザの属性を反映させた候補アイテムの検索が可能になる。
また、補助情報は、流行に基づいて指定された情報であってもよい。この場合、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムとして、流行のアイテム群に共通するアイテム属性をアイテム属性に含む候補アイテムの特徴量を推定する。これにより、流行を反映させた候補アイテムの検索が可能になる。
また、補助情報は、ターゲットユーザの購買傾向に基づいて指定された情報であってもよい。この場合、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムとして、ターゲットユーザの購買傾向に基づく特徴をアイテム属性に含む候補アイテムの特徴量を推定する。これにより、ターゲットユーザの購買傾向を反映させた候補アイテムの検索が可能になる。
また、補助情報は、自然文に基づいて指定された情報であってもよい。例えば、補助情報は、自然文に含まれる文の特徴量である。ここで、自然文とは、例えば、候補アイテムの属性や利用したい場面等を指示する文である。例えば、自然文は、候補アイテムの属性や利用したい場面等を自由記述で入力した文である。この場合、情報処理装置100Aは、クエリサブコーデのアイテム群と調和する候補アイテムとして、自然文に基づく特徴量をアイテム属性に含む候補アイテムの特徴量を推定する。これにより、一般的な検索エンジンのフィルタ機能では扱えないような複雑な自然文の場合でも、文の特徴量を反映させた候補アイテムの検索が可能になる。
〔8.実施形態2に係る情報処理装置の構成〕
次に、図33を用いて、実施形態に係る情報処理装置100Aの構成について説明する。図33は、実施形態に係る情報処理装置100Aの構成例を示す図である。図33に示すように、情報処理装置100Aは、通信部110と、記憶部120と、制御部130Aとを有する。なお、図8と同様の説明は適宜省略する。
(制御部130A)
制御部130Aは、コントローラであり、例えば、CPUやMPU等によって、情報処理装置100A内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部130Aは、コントローラであり、例えば、ASICやFPGA等の集積回路により実現される。
図33に示すように、制御部130Aは、取得部131と、受付部132と、検出部133と、生成部134と、算出部135と、特定部136と、提供部137と、学習部138と、推定部139とを有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部130Aの内部構成は、図33に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
(学習部138)
学習部138は、所定の条件を満たすアイテム群のうち、一部のアイテム群から、残りの一部のアイテム群の特徴量を出力するようにモデルの学習を行う。例えば、学習部138は、所定の条件を満たすアイテム群として、所定のウェブサービスに投稿されたコーディネートのアイテム群を用いて、モデルの学習を行う。例えば、学習部138は、シャツやシューズ等のコーディネートの一部のアイテム群から、スカートやバッグ等のコーディネートの残りの一部のアイテム群の特徴量を出力するようにモデルの学習を行う。
具体的には、学習部138は、一部のアイテム群から出力される残りの一部のアイテム群の特徴量が、残りの一部のアイテム群の特徴量の正解データに近づくように、モデルの学習を行う。また、学習部138は、一部のアイテム群から出力される残りの一部のアイテム群の特徴量に基づいて検索されるアイテム群の検索結果との組み合わせのマッチングスコアが、残りの一部のアイテム群の正解データとの組み合わせのマッチングスコアに等しい、又は、残りの一部のアイテム群の正解データとの組み合わせのマッチングスコアよりも大きくなるように、モデルの学習を行う。
学習部138は、後述の推定部139により推定された特徴量に基づいて検索されたアイテム群の検索結果と、クエリサブコーデのアイテム群との組み合わせに対するユーザの評価に基づいて、モデルの再学習を行う。
(推定部139)
推定部139は、学習部138により学習されたモデルを用いて、クエリサブコーデとの間で所定の条件を満たすアイテム群の特徴量を推定する。例えば、推定部139は、クエリサブコーデとのコーディネートとして、所定のウェブサービスに投稿されたアイテム群の特徴量を推定する。
推定部139は、クエリサブコーデのアイテム群とのコーディネートのアイテム群、すなわち、ギャラリーサブコーデのアイテム群を絞り込むために指定された補助情報と、クエリサブコーデの特徴量とをモデルに入力することにより、特徴量を推定する。
例えば、推定部139は、ギャラリーサブコーデのアイテム群のカテゴリを指定する補助情報に基づいて、特徴量を推定する。例えば、推定部139は、「スカート、バッグ、ハット」のカテゴリが指定された場合には、「スカート、バッグ、ハット」のカテゴリのアイテム群に限定して、特徴量を推定する。
また、例えば、推定部139は、ギャラリーサブコーデのアイテム群のブランド又はファッションテイストを指定する補助情報に基づいて、特徴量を推定する。例えば、推定部139は、「ブランド〇〇」のブランドや、「カジュアル」のファッションテイストが指定された場合には、「ブランド〇〇」のブランドのアイテム群や、「カジュアル」のファッションテイストのアイテム群に限定して、特徴量を推定する。
また、例えば、推定部139は、乱数に基づいて指定された補助情報に基づいて、特徴量を推定する。例えば、推定部139は、提案したい複数パタンのコーディネートが数と対応付けて記憶されている場合には、乱数に基づく数に応じたコーディネートの特徴を補助情報に指定して、乱数に基づく数に応じたコーディネートの特徴をアイテム属性に含むアイテム群に限定して、特徴量を推定する。
また、例えば、推定部139は、ターゲットユーザの属性に基づいて指定された補助情報に基づいて、特徴量を推定する。例えば、推定部139は、ターゲットユーザの属性が「男性、30代」である場合には、「男性、30代」を補助情報に指定して、「男性、30代」をターゲットとするアイテム群に限定して、特徴量を推定する。
また、例えば、推定部139は、流行に基づいて指定された補助情報に基づいて、特徴量を推定する。例えば、推定部139は、流行のアイテム群を特定し、流行のアイテム群に共通するアイテム属性を補助情報に指定して、流行のアイテム群に共通するアイテム属性をアイテム属性に含むアイテム群に限定して、特徴量を推定する。
また、例えば、推定部139は、ターゲットユーザの購買傾向に基づいて指定された補助情報に基づいて、特徴量を推定する。例えば、推定部139は、ターゲットユーザの購買履歴から購買傾向を特定し、購買傾向のアイテム属性を補助情報に指定して、購買傾向のアイテム属性をアイテム属性に含むアイテム群に限定して、特徴量を推定する。
また、例えば、推定部139は、自然文に基づいて指定された補助情報に基づいて、特徴量を推定する。例えば、推定部139は、自然文からアイテム属性を示す特徴量を抽出し、自然文の特徴量を補助情報に指定して、自然文の特徴量が示すアイテム属性をアイテム属性に含むアイテム群に限定して、特徴量を推定する。また、例えば、推定部139は、自然文から利用したい場面を示す特徴量を抽出し、自然文の特徴量を補助情報に指定して、自然文の特徴量が示す場面に関連するアイテム属性をアイテム属性に含むアイテム群に限定して、特徴量を推定する。
推定部139は、推定した特徴量に基づいて、データベースの中からアイテム群を検索し、アイテム群の検索結果と、クエリサブコーデのアイテム群とを、ターゲットユーザに提示するための処理を行う。
〔9.実施形態2に係る情報処理のフロー〕
次に、図34を用いて、実施形態2に係る情報処理システム1Aによる情報処理の手順について説明する。図34は、実施形態2に係る情報処理システム1Aによる情報処理の手順を示すフローチャートである。
図34に示すように、情報処理装置100Aは、所定の条件を満たすアイテム群のうち、一部のアイテム群から、残りの一部のアイテム群の特徴量を出力するようにモデルの学習を行う(ステップS401)。
情報処理装置100Aは、学習したモデルを用いて、所定のアイテム群との間で所定の条件を満たすアイテム群の特徴量を推定する(ステップS402)。
情報処理装置100Aは、推定した特徴量に基づいて検索したアイテム群の検索結果を送信する(ステップS403)。
〔10.効果〕
上述してきたように、学習部138と、推定部139とを有する。学習部138は、所定の条件を満たすアイテム群のうち、一部のアイテム群から、残りの一部のアイテム群の特徴量を出力するようにモデルの学習を行う。推定部139は、学習部138により学習されたモデルを用いて、所定のアイテム群との間で所定の条件を満たすアイテム群の特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、一部のアイテム群を隠すような学習を行うことで、より効果的に、コーディネート全体として調和の高い情報を提供することができる。
また、学習部138は、一部のアイテム群から出力される残りの一部のアイテム群の特徴量が、残りの一部のアイテム群の特徴量の正解データに近づくように、モデルの学習を行う。
これにより、実施形態2に係る情報処理装置100Aは、モデルの精度の向上を促進させることができる。
また、学習部138は、一部のアイテム群から出力される残りの一部のアイテム群の特徴量に基づいて検索されるアイテム群の検索結果との組み合わせのスコアが、残りの一部のアイテム群の正解データとの組み合わせのスコア以上になるように、モデルの学習を行う。
これにより、実施形態2に係る情報処理装置100Aは、コーディネート全体として、より調和の高い情報を提供することができる。
また、学習部138は、推定部139により推定された特徴量に基づいて検索されたアイテム群の検索結果と、所定のアイテム群との組み合わせに対する評価に基づいて、モデルの再学習を行う。
これにより、実施形態2に係る情報処理装置100Aは、ユーザの評価を加味して、コーディネート全体として調和の高い情報を提供することができる。
また、推定部139は、所定のアイテム群とのコーディネートのアイテム群を絞り込むために指定された補助情報と、所定のアイテム群の特徴量とをモデルに入力することにより、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、補助情報を用いることで、より効果的に、コーディネート全体として調和の高い情報を提供することができる。
また、推定部139は、所定のアイテム群とのコーディネートのアイテム群のカテゴリを指定する補助情報に基づいて、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、特定のカテゴリを指定して検索することができる。
また、推定部139は、所定のアイテム群とのコーディネートのアイテム群のブランド又はファッションテイストを指定する補助情報に基づいて、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、特定のブランドやファッションテイストを指定して検索することができる。
また、推定部139は、ターゲットユーザの属性に基づいて指定された補助情報に基づいて、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、ターゲットユーザの属性を反映させた検索を可能にすることができる。
また、推定部139は、流行に基づいて指定された補助情報に基づいて、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、流行を反映させた検索を可能にすることができる。
また、推定部139は、ターゲットユーザの購買傾向に基づいて指定された補助情報に基づいて、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、ターゲットユーザの購買傾向を反映させた検索を可能にすることができる。
また、推定部139は、自然文に基づいて指定された補助情報に基づいて、特徴量を推定する。
これにより、実施形態2に係る情報処理装置100Aは、自然文に含まれる文の特徴量を反映させた検索を可能にすることができる。
〔11.ハードウェア構成〕
また、上述してきた実施形態に係る情報表示装置10及び情報処理装置100(100A)は、例えば、図35に示すような構成のコンピュータ1000によって実現される。図35は、情報表示装置10及び情報処理装置100(100A)の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。
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が実施形態に係る情報表示装置10及び情報処理装置100(100A)として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部14及び130(130A)の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
〔12.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。