本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
<A.服飾提案システムの概要>
まず、本発明に係る情報処理システムの典型例として、本実施の形態に従う服飾提案システム1の概要について説明する。
本明細書において、「服飾」は、人が身につける衣服(衣類)および装身具(装飾品)の全般を意味する。「服飾アイテム」は、服飾に含まれる任意の商品を指し示す用語である。説明の簡単化のため、「服飾アイテム」を単に「アイテム」と称することもある。
本明細書において、「客」は、服飾アイテムについて何らかの購入意思を有するユーザ一般を意味するものである。以下の説明においては、店舗の来店する客を「来店者」とも称す。また、携帯端末を介して本実施の形態に従うシステムを利用する客を「ネットユーザ」とも称す。
図1は、本実施の形態に従う服飾提案システム1が配置される店舗の外観の一例を示す模式図である。図2および図3は、本実施の形態に従う服飾提案システム1を構成する表示端末100での処理を説明するための図である。
図1に示すように、店舗30に客(以下、「来店者40」とも称す。)が入店したとする。店舗30の店内の入り口付近には、情報処理装置の一例である表示端末100が配置されている。表示端末100は、比較的大型のディスプレイ102と、ディスプレイ102に近傍に配置された人感センサ128、カメラ130およびマイクロフォン132とを含む。ディスプレイ102の下部には、プリンタ120が配置されている。
来店者40が表示端末100に接近すると(図2(a))、人感センサ128がその接近を検知して、ディスプレイ102にはカテゴリ選択受付画面50が表示される(図2(b))。この状態において、表示端末100のカメラ130により来店者40が撮像される。すなわち、表示端末100では来店者40を示す画像(以下、「撮像画像136」とも称す。)が取得される。
カテゴリ選択受付画面50には、1または複数のカテゴリがリスト表示されている。併
せて、来店者40の発話を促すための、「音声でカテゴリを選択して下さい」とのメッセージが表示されている。
その後、表示端末100のマイクロフォン132により音声の収集が開始され、来店者40が希望するカテゴリを示す音声(図2に示す例では、「ジャケット」)を発すると(図2(c))、ディスプレイ102にはアイテム提案画面52が出力される(図3(a))。このとき、表示端末100では来店者40が発した音声(以下、「収集音声138」とも称す。)が取得される。
このように、ディスプレイ102は、マイクロフォン132による音声の収集前に、服飾アイテムの分類を示すカテゴリのリストを表示するとともに、当該リストに表示されているカテゴリのいずれかを音声で選択することを来店者40に促すメッセージを表示する。
アイテム提案画面52は、来店者40の嗜好に応じて「おすすめ」と推定された服飾アイテムの一覧表示54を含む。アイテム提案画面52に一覧表示されるアイテムは、後述するような学習済モデルを用いたアイテム推定処理の実行により得られる推定結果に基づいて決定される。このように、情報処理装置の一例である表示端末100は、客の特徴を表わす特徴量(典型的には、撮像画像136および収集音声138)に基づいて複数の服飾アイテムの中から当該客に応じた服飾アイテムを提案する。
アイテム提案画面52は、クーポン発行ボタン56をさらに有している。クーポン発行ボタン56の押下に応答して、プリンタ120からはクーポン10が出力される。
プリンタ120から出力されるクーポン10は、割引額表示12に加えて、アイテム提案画面52に含まれる一覧表示54に対応する一覧表示14と、一覧表示14に含まれる各アイテムが店舗内のいずれに位置にあるのかを示す地図16とを含む(図3(b))。
さらに、クーポン10は、後述するクーポンIDを示すQRコード(登録商標)などの識別画像18を含む。識別画像18が示すクーポンIDを用いることで、推定モデルの学習に用いられる学習用データセットが生成される。
図4は、本実施の形態に従う服飾提案システム1を構成する表示端末100から出力されたクーポン10を利用する来店者40を説明するための図である。来店者40は、クーポン10に印字された内容を参考にしながら、ショッピングを楽しむことができる(図4(a))。クーポン10を提示することで割引が適用されるので、通常、来店者40は、表示端末100から出力されたクーポン10を会計時に提示する(図4(b))。
図5は、本実施の形態に従う服飾提案システム1における学習用データセットの生成処理を説明するための図である。図5を参照して、表示端末100において取得された撮像画像136および収集音声138と、購入されたアイテムの情報(以下、「売上情報218」とも称す。)とは、クーポン10(正確には、クーポンID166)を媒介として対応付けられる。このように、対応付けられた撮像画像136および収集音声138と売上情報218とが学習用データセットとして推定モデルの学習に用いられる。
このように、本実施の形態に従う服飾提案システム1においては、入店時に来店者40の嗜好に基づくアイテムの提案を行うとともに、来店者40が実際に購入したアイテムの情報を用いて、アイテムの提案を行うための推定モデルを学習することができる。
<B.服飾提案システムのハードウェア構成例>
次に、本実施の形態に従う服飾提案システム1のシステム構成例について説明する。先に、服飾提案システム1の全体構成例を説明した上で、服飾提案システム1に含まれる主要装置のハードウェア構成例について説明する。
(b1:システム構成例)
図6は、本実施の形態に従う服飾提案システム1のシステム構成の一例を示す模式図である。図6を参照して、服飾提案システム1は、ローカルネットワーク2を介して接続された、1または複数の表示端末100と、1または複数のPOS端末200と、管理装置300とを含む。
表示端末100は、典型的には店舗30の入口付近に配置されて、来店者の嗜好に応じた服飾を提案する。より具体的には、表示端末100は、来店者を撮像することで画像を取得するとともに、当該来店者が発する音声を収集する。表示端末100は、来店者の画像(以下、「撮像画像」とも称す。)および音声(以下、「収集音声」とも称す。)を学習済モデルに入力することで、当該来店者の嗜好への適合度(以下、「スコア」とも称す。)を販売しているアイテム毎に算出する。表示端末100は、上位のスコアを有するアイテムを当該来店者へ提案する。表示端末100は、来店者へ提案したアイテムが印字されたクーポンを発行することもできる。
表示端末100は、さらに、撮像画像および収集音声を要求に応じて管理装置300へ送信することもできる。
POS端末200は、来店者が購入を希望するアイテムの会計処理を実行する。POS端末200は、購入されたアイテムの情報(売上情報)を生成するとともに、要求に応じて管理装置300へ送信することもできる。
管理装置300は、表示端末100が利用する学習済モデルの管理および更新を担当する。より具体的には、管理装置300は、表示端末100から撮像画像および収集音声を取得するとともに、POS端末200から売上情報を取得する。そして、管理装置300は、取得した撮像画像および収集音声と取得した売上情報とから学習用データセットを生成する。管理装置300は、生成した学習用データセットを用いて、学習済モデルの学習(新規学習および追加学習の両方を含み得る。)を実行する。
管理装置300により生成または更新された学習済モデルは、表示端末100へ送信される。
(b2:表示端末100)
図7は、本実施の形態に従う服飾提案システム1を構成する表示端末100のハードウェア構成の一例を示す模式図である。表示端末100は、汎用コンピュータを用いて実現されてもよい。
図7を参照して、表示端末100は、主要なハードウェア要素として、ディスプレイ102と、プロセッサ104と、メモリ106と、ネットワークコントローラ108と、ストレージ110と、プリンタ120と、光学ドライブ122と、タッチ検出部126と、人感センサ128と、カメラ130と、マイクロフォン132とを含む。
ディスプレイ102は、カテゴリ選択受付画面50やアイテム提案画面52などを出力する。ディスプレイ102は、例えば、LCD(Liquid Crystal Display)や有機EL(Electroluminescence)ディスプレイなどで構成される。
プロセッサ104は、後述するような各種プログラムを実行することで、表示端末100の実現に必要な処理を実行する演算主体である、プロセッサ104としては、例えば、1または複数のCPU(Central Processing Unit)やGPU(Graphics Processing Unit)などで構成される。複数のコアを有するCPUまたはGPUを用いてもよい。
メモリ106は、プロセッサ104がプログラムを実行するにあたって、プログラムコードやワークメモリなどを一時的に格納する記憶領域を提供する。メモリ106としては、例えば、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性メモリデバイスを用いてもよい。
ネットワークコントローラ108は、ローカルネットワーク2を介して、管理装置300を含む任意の情報処理装置などとの間でデータを送受信する。ネットワークコントローラ108は、例えば、イーサネット(登録商標)、無線LAN(Local Area Network)、Bluetooth(登録商標)などの任意の通信方式に対応するようにしてもよい。
ストレージ110は、プロセッサ104にて実行されるOS(Operating System)112、後述するような機能構成を実現するためのアプリケーションプログラム114、学習済モデル116、およびアイテム提案画面52を生成するためのアイテム画像118などを格納する。ストレージ110としては、例えば、ハードディスク、SSD(Solid State Drive)などの不揮発性メモリデバイスを用いてもよい。さらに、ストレージ110に
は、来店者を撮像して取得される撮像画像および当該来店者が発する音声である収集音声を格納するようにしてもよい。
アプリケーションプログラム114をプロセッサ104で実行する際に必要となるライブラリや機能モジュールの一部を、OS112が標準で提供するライブラリまたは機能モジュールを用いるようにしてもよい。この場合には、アプリケーションプログラム114単体では、対応する機能を実現するために必要なプログラムモジュールのすべてを含むものにはならないが、OS112の実行環境下にインストールされることで、後述するような機能構成を実現できることになる。そのため、このような一部のライブラリまたは機能モジュールを含まないプログラムであっても、本発明の技術的範囲に含まれ得る。
プリンタ120は、来店者へ提案したアイテムが印字されたクーポンを発行する。プリンタ120としては、電子写真方式、インクジェット方式および感熱紙方式などの任意の印刷方式を採用できる。
光学ドライブ122は、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)などの光学ディスク124に格納されているプログラムなどの
情報を読み出す。光学ディスク124は、非一過的(non-transitory)な記録媒体の一例であり、任意のプログラムを不揮発的に格納した状態で流通する。光学ドライブ122が光学ディスク124からプログラムを読み出して、ストレージ110にインストールすることで、本実施の形態に従う表示端末100を構成できる。したがって、本発明の主題は、ストレージ110などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した光学ディスク124などの記録媒体でもあり得る。
図7には、非一過的な記録媒体の一例として、光学ディスク124などの光学記録媒体を示すが、これに限らず、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、MO(Magneto-Optical disk)などの光磁気記録媒体を用いてもよい。
あるいは、表示端末100を実現するためのプログラムは、上述したような任意の記録媒体に格納されて流通するだけでなく、インターネットまたはイントラネットを介してサーバ装置などからダウンロードすることで配布されてもよい。
タッチ検出部126は、ディスプレイ102に対応付けられて配置されており、ディスプレイ102への入力操作を検知する。タッチ検出部126としては、静電容量方式、抵抗膜方式、超音波表面弾性波方式などの任意の検出方式を採用できる。
人感センサ128は、赤外線などを用いて、表示端末100への来店者の接近を検知する。
カメラ130は、来店者を撮像するデバイスであり、ディスプレイ102の表示エリアの近傍などに配置され、ディスプレイ102に正対する来店者を視野に含むように構成される。カメラ130は、視野範囲を所定周期で連続的に撮像するようにしてもよいし、プロセッサ104などから発せられる指令に応じて撮像を行うようにしてもよい。
マイクロフォン132は、音声を収集するためのデバイスであり、来店者が発する音声を収集可能な、ディスプレイ102の表示エリアの近傍などに配置される。マイクロフォン132は、ディスプレイ102に正対する来店者の声のみを収集することが好ましく、そのため、先鋭な指向性を有することが好ましい。
図7には、汎用コンピュータ(プロセッサ104)がアプリケーションプログラム114を実行することで表示端末100を実現する構成例を示すが、表示端末100を実現するために必要な機能の全部または一部を、集積回路などのハードワイヤード回路(hard-wired circuit)を用いて実現してもよい。例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などを用いて実現してもよい。
(b3:POS端末200)
図8は、本実施の形態に従う服飾提案システム1を構成するPOS端末200のハードウェア構成の一例を示す模式図である。図8を参照して、POS端末200は、主要なハードウェア要素として、ディスプレイ202と、プロセッサ204と、メモリ206と、ネットワークコントローラ208と、ストレージ210と、プリンタ220と、光学ドライブ222と、タッチ検出部226と、光学読取機228と、入力部230と、決済処理部232とを含む。
ディスプレイ202は、アイテムの会計処理に必要な情報などを表示する。ディスプレイ202は、例えば、LCDや有機ELディスプレイなどで構成される。
プロセッサ204は、後述するような各種プログラムを実行することで、POS端末200の実現に必要な処理を実行する演算主体である、プロセッサ204としては、例えば、1または複数のCPUなどで構成される。複数のコアを有するCPUを用いてもよい。
メモリ206は、プロセッサ204がプログラムを実行するにあたって、プログラムコードやワークメモリなどを一時的に格納する記憶領域を提供する。メモリ206としては、例えば、DRAMやSRAMなどの揮発性メモリデバイスを用いてもよい。
ネットワークコントローラ208は、ローカルネットワーク2を介して、管理装置300を含む任意の情報処理装置などとの間でデータを送受信する。ネットワークコントローラ208は、例えば、イーサネット、無線LAN、Bluetoothなどの任意の通信
方式に対応するようにしてもよい。
ストレージ210は、プロセッサ204にて実行されるOS212、後述するような機能構成を実現するためのアプリケーションプログラム214、会計処理に必要な各アイテムの価格や属性情報などを含むアイテム情報216、および購入されたアイテムの情報である売上情報218などを格納する。ストレージ210としては、例えば、ハードディスク、SSDなどの不揮発性メモリデバイスを用いてもよい。
アプリケーションプログラム214をプロセッサ204で実行する際に必要となるライブラリや機能モジュールの一部を、OS212が標準で提供するライブラリまたは機能モジュールを用いるようにしてもよい。この場合には、アプリケーションプログラム214単体では、対応する機能を実現するために必要なプログラムモジュールのすべてを含むものにはならないが、OS212の実行環境下にインストールされることで、後述するような機能構成を実現できることになる。そのため、このような一部のライブラリまたは機能モジュールを含まないプログラムであっても、本発明の技術的範囲に含まれ得る。
プリンタ220は、会計処理の結果など印字されたレシートを発行する。プリンタ220としては、電子写真方式、インクジェット方式および感熱紙方式などの任意の印刷方式を採用できる。
光学ドライブ222は、CD-ROM、DVDなどの光学ディスク224に格納されているプログラムなどの情報を読み出す。光学ディスク224は、非一過的な記録媒体の一例であり、任意のプログラムを不揮発的に格納した状態で流通する。光学ドライブ222が光学ディスク224からプログラムを読み出して、ストレージ210にインストールすることで、本実施の形態に従うPOS端末200を構成できる。したがって、本発明の主題は、ストレージ210などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した光学ディスク224などの記録媒体でもあり得る。
図8には、非一過的な記録媒体の一例として、光学ディスク224などの光学記録媒体を示すが、これに限らず、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、MOなどの光磁気記録媒体を用いてもよい。
あるいは、POS端末200を実現するためのプログラムは、上述したような任意の記録媒体に格納されて流通するだけでなく、インターネットまたはイントラネットを介してサーバ装置などからダウンロードすることで配布されてもよい。
タッチ検出部226は、ディスプレイ202に対応付けられて配置されており、ディスプレイ202への入力操作を検知する。タッチ検出部226としては、静電容量方式、抵抗膜方式、超音波表面弾性波方式などの任意の検出方式を採用できる。
光学読取機228は、アイテムに付されているアイテムタグの情報やクーポンに含まれるQRコードなどを光学的に読み取る。光学読取機228としては、レーザスキャン方式やイメージセンシング方式などの任意の検出方式を採用できる。
入力部230は、金額は品種などの入力操作を受け付ける。入力部230としては、例えば、レジキー、キーボード、マウス、タッチパネル、ペンなどを用いてもよい。
決済処理部232は、現金決済に必要な機構、ならびに、クレジットカードなどの電子的決済に必要な機構を含む。より具体的には、決済処理部232は、現金決済に関して、
紙幣や硬貨を格納するための現金格納部および売上額を管理する売上管理部などを含む。決済処理部232は、電子決済に関して、クレジットカードに格納された情報を読み取って決済センタなどとの間で決済情報を遣り取りする機構などを含む。
図8には、汎用コンピュータ(プロセッサ204)がアプリケーションプログラム214を実行することでPOS端末200を実現する構成例を示すが、POS端末200を実現するために必要な機能の全部または一部を、集積回路などのハードワイヤード回路を用いて実現してもよい。例えば、ASICやFPGAなどを用いて実現してもよい。
(b4:管理装置300)
図9は、本実施の形態に従う服飾提案システム1を構成する管理装置300のハードウェア構成の一例を示す模式図である。図9を参照して、管理装置300は、主要なハードウェア要素として、ディスプレイ302と、プロセッサ304と、メモリ306と、ネットワークコントローラ308と、ストレージ310と、入力部330とを含む。
ディスプレイ302は、管理装置300での処理に必要な情報を表示する。ディスプレイ302は、例えば、LCDや有機ELディスプレイなどで構成される。
プロセッサ304は、後述するような各種プログラムを実行することで、管理装置300の実現に必要な処理を実行する演算主体である、プロセッサ304としては、例えば、1または複数のCPUやGPUなどで構成される。複数のコアを有するCPUまたはGPUを用いてもよい。管理装置300においては、学習済モデルを生成するための学習処理に適したGPUなどを採用することが好ましい。
メモリ306は、プロセッサ304がプログラムを実行するにあたって、プログラムコードやワークメモリなどを一時的に格納する記憶領域を提供する。メモリ306としては、例えば、DRAMやSRAMなどの揮発性メモリデバイスを用いてもよい。
ネットワークコントローラ308は、ローカルネットワーク2を介して、表示端末100およびPOS端末200を含む任意の情報処理装置などとの間でデータを送受信する。ネットワークコントローラ308は、例えば、イーサネット、無線LAN、Bluetoothなどの任意の通信方式に対応するようにしてもよい。
ストレージ310は、プロセッサ304にて実行されるOS312、後述するような機能構成を実現するためのアプリケーションプログラム314、画像/音声情報320および売上情報322から学習用データセット324を生成するための前処理プログラム316、ならびに、学習用データセット324を用いて学習済モデル326を生成するための学習用プログラム318などを格納する。
画像/音声情報320は、表示端末100から取得される撮像画像136および収集音声138からなる。売上情報322は、POS端末200から取得された売上情報218からなる。画像/音声情報320および売上情報322の取得処理については、後に詳述する。
学習用データセット324は、画像/音声情報320に売上情報322をラベル(あるいは、タグ)として付与した訓練データセットである。学習済モデル326は、学習用データセット324を用いて学習処理を実行することで得られる推定モデルである。
ストレージ310としては、例えば、ハードディスク、SSDなどの不揮発性メモリデバイスを用いてもよい。
アプリケーションプログラム314、前処理プログラム316および学習用プログラム318をプロセッサ304で実行する際に必要となるライブラリや機能モジュールの一部を、OS312が標準で提供するライブラリまたは機能モジュールを用いるようにしてもよい。この場合には、アプリケーションプログラム314、前処理プログラム316および学習用プログラム318の各単体では、対応する機能を実現するために必要なプログラムモジュールのすべてを含むものにはならないが、OS312の実行環境下にインストールされることで、後述するような機能構成を実現できることになる。そのため、このような一部のライブラリまたは機能モジュールを含まないプログラムであっても、本発明の技術的範囲に含まれ得る。
アプリケーションプログラム314、前処理プログラム316および学習用プログラム318は、光学ディスクなどの光学記録媒体、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、ならびにMOなどの光磁気記録媒体といった非一過的な記録媒体に格納されて流通し、ストレージ310にインストールされてもよい。したがって、本発明の主題は、ストレージ310などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した記録媒体でもあり得る。
あるいは、管理装置300を実現するためのプログラムは、上述したような任意の記録媒体に格納されて流通するだけでなく、インターネットまたはイントラネットを介してサーバ装置などからダウンロードすることで配布されてもよい。
入力部330は、各種の入力操作を受け付ける。入力部330としては、例えば、キーボード、マウス、タッチパネル、ペンなどを用いてもよい。
図9には、汎用コンピュータ(プロセッサ304)がアプリケーションプログラム314、前処理プログラム316および学習用プログラム318を実行することで管理装置300を実現する構成例を示すが、管理装置300を実現するために必要な機能の全部または一部を、集積回路などのハードワイヤード回路を用いて実現してもよい。例えば、ASICやFPGAなどを用いて実現してもよい。
(b5:統合型構成/クラウド構成)
図6~図9には、典型例として、表示端末100、POS端末200および管理装置300の各々が担当する機能を実現するためにプロセッサを有している構成を例示したが、これに限らず、服飾提案システム1の実現に必要な機能をより少ない演算主体で実現する統合型の構成を採用してもよい。
このような統合型の構成の一例としては、表示端末100およびPOS端末200が担当する機能を管理装置300において実現するとともに、表示端末100およびPOS端末200は、いわばシンクライアントのようなユーザインターフェイスのみを提供するようにしてもよい。
さらに、管理装置300についても、コンピュータネットワークを介して接続された複数のコンピュータが明示的または黙示的に連携して実現するようにしてもよい。複数のコンピュータが連携する場合、一部のコンピュータがいわゆるクラウドコンピュータと称される、ネットワーク上にある不特定のコンピュータであってもよい。
当業者であれば、本発明が実施される時代に応じた技術を適宜用いて、本実施の形態に従う服飾提案システム1を実現できるであろう。
<C.表示端末100の機能および処理>
次に、本実施の形態に従う服飾提案システム1を構成する表示端末100の機能および処理について説明する。服飾提案システム1において、表示端末100は、学習済モデル(推定モデル)を用いた服飾の提案という運用フェーズを担当するとともに、学習済モデルを構築するための学習フェーズの一部も担当することになる。
(c1:表示端末100の機能構成)
図10は、本実施の形態に従う服飾提案システム1を構成する表示端末100の機能構成の一例を示す模式図である。図10に示す各機能は、典型的には、表示端末100のプロセッサ104がOS112およびアプリケーションプログラム114(いずれも図7参照)を実行することで実現されてもよい。
図10を参照して、表示端末100は、機能構成として、提案アイテム推定機能140と、表示制御機能150と、クーポン発行制御機能160と、画像音声保存機能170とを有している。
提案アイテム推定機能140は、カメラ130により来店者を撮像して得られた撮像画像136、および、マイクロフォン132により来店者が発した音声を収集して得られた収集音声138を入力として受け付けて、学習済モデル116に入力することで、推定結果を出力する。
表示制御機能150は、提案アイテム推定機能140からの推定結果を受け付けて、来店者の嗜好に応じた服飾を提案する画面を生成する。
クーポン発行制御機能160は、表示制御機能150が来店者に提案したアイテムの情報を受け付けて、クーポンID166を生成するとともに、提案アイテムおよびクーポンID166が印字されたクーポン10を発行する。
画像音声保存機能170は、提案アイテム推定機能140が入力として受け付けた撮像画像136および収集音声138に、クーポン発行制御機能160が生成したクーポンID166を付与して保存する。画像音声保存機能170により保存される撮像画像136および収集音声138(クーポンID166が付与されている)は、後述するように、管理装置300へ送信されて、学習済モデルを生成するための学習処理に用いられる。
(c2:提案アイテム推定機能140)
次に、図10に示す表示端末100の提案アイテム推定機能140の詳細について説明する。
図11は、本実施の形態に従う服飾提案システム1を構成する表示端末100の提案アイテム推定機能140における処理内容を説明するための図である。図11を参照して、表示端末100は、提案アイテム推定機能140として、領域特定モジュール141と、サイズ調整モジュール142,143と、区間特定モジュール144と、リサンプリングモジュール145とを含む。
領域特定モジュール141は、撮像画像136に含まれる被写体(来店者)を解析して、顔領域および体領域を特定する。すなわち、領域特定モジュール141は、カメラ130で客を撮像して得られた画像内において、客の顔を表わす顔領域と、客の体を表わす体領域とを特定する。領域特定モジュール141は、特定した顔領域および体領域に対応する顔領域部分画像147および体領域部分画像148を撮像画像136から抽出して出力
する。
典型的には、領域特定モジュール141は、目や鼻などの顔特徴を抽出するとともに、手足などの骨格特徴を抽出することで、顔領域および体領域を特定する。このとき、領域特定モジュール141は、客が身につけている服飾を表わす部分を体領域として特定するようにしてもよい。
図12は、図11に示す領域特定モジュール141による領域特定の処理を説明するための図である。図12を参照して、領域特定モジュール141は、来店者の顔を含む領域を顔領域部分画像147として抽出し、来店者の顔より下部の領域を体領域部分画像148として抽出する。
顔領域部分画像147は、来店者の性別や年齢などの属性情報を含むと考えられ、体領域部分画像148は、来店者の現在の服装に関する情報(すなわち、服飾の嗜好傾向を示す情報)を含むと考えられる。
再度図11を参照して、領域特定モジュール141が撮像画像136から抽出した顔領域部分画像147は、サイズ調整モジュール142へ出力される。同様に、領域特定モジュール141が撮像画像136から抽出した体領域部分画像148は、サイズ調整モジュール143へ出力される。
サイズ調整モジュール142および143において、顔領域部分画像147および体領域部分画像148は、予め定められた次元をもつ特徴量(特徴量ベクトル)に変換されて推定モデル1400に与えられる。ここで、領域特定モジュール141により抽出される顔領域部分画像147および体領域部分画像148の画像サイズは変動し得るため、サイズ調整モジュール142および143は画像サイズを規格化する。
より具体的には、サイズ調整モジュール142は、領域特定モジュール141からの顔領域部分画像147を予め定められた画素数の画像に調整した上で、調整後の画像を構成する各画素の画素値を顔領域特徴量1410として推定モデル1400に入力する。
同様に、サイズ調整モジュール143は、領域特定モジュール141からの体領域部分画像148を予め定められた画素数の画像に調整した上で、調整後の画像を構成する各画素の画素値を体領域特徴量1420として推定モデル1400に入力する。
このように、サイズ調整モジュール142,143は、顔領域部分画像147(画像の顔領域)から顔領域特徴量1410(第1特徴量)を抽出するとともに、体領域部分画像148(画像の体領域)から体領域特徴量1420(第2特徴量)を抽出する。
区間特定モジュール144は、収集音声138に含まれる来店者が発した音声の区間を特定して、特定区間音声149を抽出して出力する。典型的には、区間特定モジュール144は、収集音声138が示す音声の時間的変化を解析して、表示端末100の周囲にある雑音成分に対して、振幅あるいは周波数などが変化した区間を特定することで、特定区間音声149を抽出する。
図13は、図11に示す区間特定モジュール144による区間特定の処理を説明するための図である。図13を参照して、区間特定モジュール144は、収集音声138が示す音声の時間的変化のうち、前後の時間的変化に対して有意な変化を示す区間を来店者による発話区間であるとして特定し、特定区間音声149として抽出する。
特定区間音声149は、来店者が希望するカテゴリを発話した音声であるので、希望するカテゴリを特定するための情報を含む。さらに、特定区間音声149は、来店者の現在のフィーリング(気分)を示す情報を含むと考えられる。
このように、区間特定モジュール144およびリサンプリングモジュール145は、マイクロフォン132で収集された音声のうち客の発話に対応する部分の音声から音声特徴量1430(第3特徴量)を抽出する。
再度図11を参照して、リサンプリングモジュール145が収集音声138から抽出した特定区間音声149は、リサンプリングモジュール145へ出力される。リサンプリングモジュール145において、特定区間音声149は、予め定められた次元をもつ特徴量(特徴量ベクトル)に変換されて推定モデル1400に与えられる。ここで、区間特定モジュール144により特定される特定区間音声149の音声の時間長さは変動し得るため、リサンプリングモジュール145が音声サンプリング数を規格化する。
より具体的には、リサンプリングモジュール145は、区間特定モジュール144からの特定区間音声149が示す音声の時間波形を予め定められたサンプル数でサンプリングすることで、各サンプリング点での振幅値を音声特徴量1430として推定モデル1400に入力する。
推定モデル1400は、ネットワーク構造および対応するパラメータを規定する学習済モデル116に基づいて構築される。顔領域特徴量1410、体領域特徴量1420および音声特徴量1430が推定モデル1400に入力されることで、推定モデル1400が定義する演算処理が実行されて、推定結果1450としてアイテム毎のスコアが算出される。ここで、アイテム毎のスコアは、各服飾アイテムが提案されるべき服飾アイテムであるそれぞれの可能性を示す値である。
推定モデル1400は、後述するような学習用データセットを用いた学習処理により生成される。後述するように、学習用データセットは、他の客を撮像して得られた画像および当該他の客が発話した音声に対して、当該他の客が購入した服飾アイテムをラベル付けした学習用データを複数含む。
このように、学習済の推定モデルである推定モデル1400は、顔領域特徴量1410(第1特徴量)、体領域特徴量1420(第2特徴量)および音声特徴量1430(第3特徴量)の入力を受けて、複数の服飾アイテムの各々が提案されるべき服飾アイテムであるそれぞれの可能性(スコア)を、推定結果1450として出力する。
(c3:推定モデル1400)
図14は、図11に示す推定モデル1400のネットワーク構成例を示す模式図である。図14を参照して、推定モデル1400は、DNN(Deep Neural Network)に分類さ
れるネットワークである。推定モデル1400は、CNN(Convolutional Neural Network)に分類される前処理ネットワーク1460,1470,1480と、中間層1490と、出力層に相当する活性化関数1492と、Softmax関数1494とを含む。
前処理ネットワーク1460,1470,1480は、相対的に次数の大きな顔領域特徴量1410、体領域特徴量1420および音声特徴量1430から、推定結果1450を算出するために有効な特徴量を抽出するための一種のフィルタとして機能することが予定されている。前処理ネットワーク1460,1470,1480の各々は、畳み込み層(CONV)およびプーリング層(Pooling)が交互に配置された構成を有している。なお、
畳み込み層とプーリング層との数は同数でなくてもよく、また、畳み込み層の出力側には
ReLU(正規化線形関数:rectified linear unit)などの活性化関数が配置される。
より具体的には、前処理ネットワーク1460は、顔領域特徴量1410(x11,x12,・・・,x1r)の入力を受けて、来店者の性別や年齢などの属性情報を示す内部特徴量を出力するように構築される。前処理ネットワーク1470は、体領域特徴量1420(x21,x22,・・・,x2s)の入力を受けて、来店者の現在の服装に関する情報(すなわち、服飾の嗜好傾向を示す情報)を示す内部特徴量を出力するように構築される。前処理ネットワーク1480は、音声特徴量1430(x31,x32,・・・,x3t)の入力を受けて、カテゴリを特定するための情報、および、来店者の現在のフィーリング(気分)を示す情報を示す内部特徴量を出力するように構築される。
中間層1490は、所定数の層数を有する全結合ネットワークからなり、前処理ネットワーク1460,1470,1480の各々からの出力を、各ノードについて決定される重みおよびバイアスを用いてノード毎に順次結合する。
中間層1490の出力側には、ReLUなどの活性化関数1492が配置され、最終的には、Softmax関数1494により確率分布に正規化された上で、推定結果1450(y1,y2,・・・,yN)が出力される。
後述するような学習フェーズにおいては、推定モデル1400のネットワークを構築する各エレメントのパラメータが最適化される。
(c4:表示制御機能150およびクーポン発行制御機能160)
次に、図10に示す表示端末100の表示制御機能150およびクーポン発行制御機能160の詳細について説明する。
図15は、本実施の形態に従う服飾提案システム1を構成する表示端末100の表示制御機能150およびクーポン発行制御機能160における処理内容を説明するための図である。図15を参照して、表示端末100は、表示制御機能150として、表示制御モジュール152を含む。
表示制御モジュール152は、提案アイテム推定機能140により算出される推定結果1450を受け付けて、推定結果1450において上位のスコアを有するアイテムに対応するアイテム画像118を用いてアイテム提案画面52を生成する。表示制御モジュール152は、生成したアイテム提案画面52をディスプレイ102に出力する。すなわち、ディスプレイ102は、推定結果1450に基づいて、客に応じた服飾アイテムを表示する。
アイテム画像118は、アイテムの識別情報に対応付けられた各アイテムの画像を含む。表示制御モジュール152は、推定結果1450に基づいて、アイテム画像118に含まれる画像のうち必要な画像を抽出する。
また、表示端末100は、クーポン発行制御機能160として、クーポン発行制御モジュール162と、クーポンID生成モジュール164とを含む。クーポン発行制御モジュール162は、表示制御モジュール152からの提案アイテムとクーポンID生成モジュール164からのクーポンID166とを受け付けて、それらの情報が印字されたクーポン10をプリンタから発行する。
クーポンID生成モジュール164は、ユニークな識別情報であるクーポンID166を任意の方法で生成する。なお、クーポンID166は、QRコードなどの形でクーポン
10に印字されてもよい。この場合には、クーポンID生成モジュール164は、所定数の文字列をランダムに生成するとともに、生成された文字列に対応するQRコードを生成するようにしてもよい。後述するように、クーポンID166は、学習用データセット324を生成するためのキーとして用いられる。
(c5:画像音声保存機能170)
次に、図10に示す表示端末100の画像音声保存機能170の詳細について説明する。
図16は、本実施の形態に従う服飾提案システム1を構成する表示端末100の画像音声保存機能170における処理内容を説明するための図である。図16を参照して、表示端末100は、画像音声保存機能170として、対応付けモジュール172と、画像音声格納部174とを含む。
クーポン発行制御モジュール162(図15参照)がクーポン10を発行したことに応答して、対応付けモジュール172は、発行されたクーポン10に付与されたクーポンID166を受け付けて、当該クーポン10の発行に利用された撮像画像136および収集音声138に受け付けたクーポンID166を対応付ける。対応付けモジュール172は、対応付けられたクーポンID166と、撮像画像136および収集音声138とを一体として画像音声格納部174に格納する。
画像音声格納部174は、メモリ106あるいはストレージ110(いずれも図7参照)が提供する記憶領域の少なくとも一部を用いて実現される。画像音声格納部174には、クーポンID166、撮像画像136および収集音声138からなるデータセットの単位でデータが格納される。
(c6:処理手順)
次に、服飾提案システム1を構成する表示端末100において実行されるアイテム推定処理について説明する。
図17は、本実施の形態に従う服飾提案システム1を構成する表示端末100におけるアイテム推定処理の処理手順を示すフローチャートである。図17に示す各ステップは、典型的には、表示端末100のプロセッサ104がOS112およびアプリケーションプログラム114(いずれも図7参照)を実行することで実現されてもよい。
図17を参照して、まず、表示端末100は、来店者を検知したか否かを判断する(ステップS100)。ステップS100においては、典型的には、人感センサ128(図7参照)からの検知結果に基づいて、来店者が存在しているか否かが判断される。来店者が検知されなければ(ステップS100においてNO)、ステップS100の処理が繰り返される。
来店者が検知されると(ステップS100においてYES)、表示端末100は、カテゴリ選択受付画面(図2参照)をディスプレイ102に表示する(ステップS102)。
続いて、表示端末100は、表示端末100に正対する来店者をカメラ130により撮像することで撮像画像136を取得する(ステップS104)。併せて、表示端末100は、音声の収集を開始する(ステップS106)。そして、表示端末100は、収集される音声に基づいて、来店者の発話を検知したか否かを判断する(ステップS108)。ステップS108においては、図13に示すように、音声の時間的変化に対して有意な変化を示す区間(発話区間)が現れたか否かが判断される。来店者の発話が検知されなければ
(ステップS108においてNO)、ステップS106およびS108の処理が繰り返される。このように、表示端末100は、客を撮像して得られた撮像画像136および客の発話を含む収集音声138を取得する処理を実行する。
来店者の発話が検知されると(ステップS108においてYES)、表示端末100は、撮像画像136から顔領域部分画像147および体領域部分画像148を抽出する(ステップS110)。そして、表示端末100は、抽出した顔領域部分画像147および体領域部分画像148をサイズ調整して顔領域特徴量1410および体領域特徴量1420を抽出する(ステップS112)。
併せて、表示端末100は、収集音声138に含まれる発話区間を特定区間音声149として抽出する(ステップS114)。そして、表示端末100は、抽出した特定区間音声149をリサンプリングして音声特徴量1430を抽出する(ステップS116)。
表示端末100は、ステップS112において生成した顔領域特徴量1410および体領域特徴量1420、ならびに、ステップS116において生成した音声特徴量1430を推定モデル1400に入力して推定結果1450を生成する(ステップS118)。
このように、表示端末100は、撮像画像136および収集音声138から抽出される複数の特徴量を学習済の推定モデル1400に入力して当該客に応じた服飾アイテムの提案を生成する処理を実行する。
表示端末100は、ステップS118において生成した推定結果1450においてスコアが上位のアイテムに基づいてアイテム提案画面52を生成して出力する(ステップS120)。
表示端末100は、クーポン発行ボタンが押下されたか否かを判断する(ステップS122)。クーポン発行ボタンが押下されなければ(ステップS122においてNO)、ステップS122の処理が繰り返される。
クーポン発行ボタンが押下されると(ステップS122においてYES)、表示端末100は、クーポンID166を生成するとともに、提案アイテムおよびクーポンID166が印字されたクーポン10を発行する(ステップS124)。すなわち、表示端末100は、識別情報であるクーポンID166を生成する処理を実行するとともに、媒体であるクーポン10を発行する処理を実行する。クーポン10は、生成された服飾アイテムの提案および生成されたクーポンID166(識別情報)を含むとともに、服飾アイテムの購入を促すための割引の内容が表示されている。
最終的に、表示端末100は、クーポンID166に対応付けて撮像画像136および収集音声138を保存する(ステップS126)。すなわち、表示端末100は、生成されたクーポンID166(識別情報)と撮像画像136および収集音声138とを関連付ける処理を実行する。
以上により、一人の来店者に対するアイテム推定処理は完了する。
(c7:小括)
本実施の形態に従う表示端末100は、来店者の顔領域部分画像147から生成される顔領域特徴量1410と、来店者の体領域部分画像148から生成される体領域特徴量1420と、来店者の特定区間音声149から生成される音声特徴量1430とを推定モデル1400に与えることで、来店者の嗜好に応じた服飾を提案できる。
また、本実施の形態に従う表示端末100は、クーポンID166を含むクーポン10を発行することで、後述するような学習フェーズで使用される学習データセットを生成するためのプラットフォームを提供できる。
<D.POS端末200の機能構成>
次に、本実施の形態に従う服飾提案システム1を構成するPOS端末200の機能および処理について説明する。服飾提案システム1において、POS端末200は、主として、学習済モデルを構築するための学習フェーズの一部を担当することになる。
(d1:POS端末200の機能構成)
図18は、本実施の形態に従う服飾提案システム1を構成するPOS端末200の機能構成の一例を示す模式図である。図18に示す各機能は、典型的には、POS端末200のプロセッサ204がOS212およびアプリケーションプログラム214(いずれも図8参照)を実行することで実現されてもよい。
図18を参照して、POS端末200は、機能構成として、会計機能240と、売上情報保存機能250とを有している。
会計機能240は、来店者がアイテムを購入する際の決済処理を担当する。より具体的には、会計機能240は、購入対象のアイテムに付されているアイテムタグ20の情報およびクーポンから読み取られるクーポンID166に基づいて、購入対象アイテムの金額、割引額、支払額などを算出するとともに、決済処理を実行する。会計機能240は、決済処理されたアイテムを示す売上情報218を出力する。
売上情報保存機能250は、会計機能240から出力される売上情報218に、クーポン10から読み取られたクーポンID166を付与して保存する。売上情報保存機能250により保存される売上情報218(クーポンID166が付与されている)は、後述するように、管理装置300へ送信されて、学習済モデルを生成するための学習処理に用いられる。
(d2:売上情報保存機能250)
次に、図18に示すPOS端末200の売上情報保存機能250の詳細について説明する。
図19は、本実施の形態に従う服飾提案システム1を構成するPOS端末200の売上情報保存機能250における処理内容を説明するための図である。図19を参照して、POS端末200は、売上情報保存機能250として、対応付けモジュール252と、売上情報格納部254とを含む。
会計機能240(図18参照)から売上情報218およびクーポンID166が入力されたことに応答して、対応付けモジュール252は、売上情報218に係るアイテムの購入時に使用されたクーポン10に付与されていたクーポンID166を受け付けて、売上情報218と対応付ける。対応付けモジュール252は、対応付けられたクーポンID166と売上情報218とを一体として売上情報格納部254に格納する。
売上情報格納部254は、メモリ106あるいはストレージ110(いずれも図7参照)が提供する記憶領域の少なくとも一部を用いて実現される。売上情報格納部254には、クーポンID166および売上情報218からなるデータセットの単位でデータが格納される。
売上情報218は、典型的には、アイテム種別(アイテム1,アイテム2,・・・,アイテムN)毎に売上個数が格納されている。
(d3:処理手順)
次に、服飾提案システム1を構成するPOS端末200において実行される売上管理処理について説明する。
図20は、本実施の形態に従う服飾提案システム1を構成するPOS端末200における売上管理処理の処理手順を示すフローチャートである。図20に示す各ステップは、典型的には、POS端末200のプロセッサ204がOS212およびアプリケーションプログラム214(いずれも図8参照)を実行することで実現されてもよい。
図20を参照して、まず、POS端末200は、光学読取機228(図8参照)によりクーポン10が読み取られたか否かを判断する(ステップS200)。クーポン10が読み取られると(ステップS200においてYES)、POS端末200は、読み取られたクーポン10のクーポンID166を取得する(ステップS202)。一方、クーポン10が読み取られなければ(ステップS200においてNO)、ステップS202の処理はスキップされる。
続いて、POS端末200は、光学読取機228(図8参照)により購入対象のアイテムに付されているアイテムタグ20が読み取られたか否かを判断する(ステップS204)。アイテムタグ20が読み取られると(ステップS204においてYES)、POS端末200は、読み取られたアイテムタグ20のアイテム情報を売上情報218に追加する(ステップS206)。
そして、POS端末200は、アイテムタグの読み取り終了指示が与えられたか否かを判断する(ステップS208)。アイテムタグの読み取り終了指示が与えられていなければ(ステップS208においてNO)、ステップS204以下の処理が繰り返される。
アイテムタグの読み取り終了指示が与えられると(ステップS208においてYES)、POS端末200は、クーポン10の有無および現在の売上情報218に基づいて支払額を算出する(ステップS210)。そして、POS端末200は、ステップS210において算出した支払額について決済処理を実行する(ステップS212)。
続いて、POS端末200は、クーポンID166が取得済であるか否かを判断する(ステップS214)。すなわち、ステップS200において、クーポン10が読み取られているか否かを判断する。
クーポンID166が取得済であれば(ステップS214においてYES)、POS端末200は、クーポンID166に対応付けて売上情報218を保存する(ステップS216)。一方、クーポンID166が取得済でなければ(ステップS214においてNO)、ステップS216の処理はスキップされる。以上により、一人の来店者に対する売上管理処理は完了する。
(d4:小括)
本実施の形態に従うPOS端末200は、来店者が購入するアイテムの決済処理を実行するとともに、その際に提示されるクーポン10に付与されているクーポンID166を読み取り、購入されたアイテムと対応付けて保存する。この保存された購入されたアイテムの情報(売上情報218)は、後述するような学習フェーズで使用される学習データセットの生成に利用される。
<E.学習フェーズの概要>
次に、本実施の形態に従う服飾提案システム1における学習フェーズの概要について説明する。
本実施の形態に従う服飾提案システム1は、同一の来店者についての、表示端末100に保存される撮像画像136および収集音声138と、POS端末200に保存される売上情報218とを対応付けることで、学習用データセット324を生成し、生成した学習用データセット324を用いて推定モデルを学習する。
図21は、本実施の形態に従う服飾提案システム1における学習フェーズの概要について説明するための図である。図21を参照して、表示端末100は、アイテム推定処理の実行の際に取得した、クーポンID166が対応付けられた撮像画像136および収集音声138を管理装置300へ送信する(シーケンスSQ1)。同様に、POS端末200は、売上管理処理の実行の際に取得した、クーポンID166が対応付けられた売上情報218を管理装置300へ送信する(シーケンスSQ2)。
管理装置300は、表示端末100から送信された撮像画像136および収集音声138と、POS端末200から送信された売上情報218とを、クーポンID166をキーにして対応付けることで、学習用データセット324を生成する(シーケンスSQ3)。すなわち、シーケンスSQ3は、学習用データセット324を生成するための前処理に相当する。
管理装置300は、生成した学習用データセット324を用いて、推定モデルを学習または追加学習することで、学習済モデル326を生成する(シーケンスSQ4)。そして、管理装置300は、生成した学習済モデル326を表示端末100の各々に送信する(シーケンスSQ5)。表示端末100は、管理装置300から送信された学習済モデル326を学習済モデル116として保存する。すなわち、表示端末100の学習済モデル116が設定あるいは更新される。
図21に示すように、本実施の形態に従う服飾提案システム1においては、クーポン10に付与されたクーポンID166を用いて、表示端末100およびPOS端末200のそれぞれで取得される情報同士を結合できるので、来店者に負担を与えることなく、推定モデルの推定精度を高めるための学習用データセット324を容易に生成できる。
<F.管理装置300の機能構成>
次に、本実施の形態に従う服飾提案システム1を構成する管理装置300の機能および処理について説明する。服飾提案システム1において、管理装置300は、主として、学習済モデルを構築するための学習フェーズの一部を担当することになる。
(f1:管理装置300の機能構成)
図22は、本実施の形態に従う服飾提案システム1を構成する管理装置300の機能構成の一例を示す模式図である。図22に示す各機能は、典型的には、管理装置300のプロセッサ304がOS312、アプリケーションプログラム314、前処理プログラム316、および学習用プログラム318(いずれも図9参照)を実行することで実現されてもよい。
図22を参照して、管理装置300は、機能構成として、撮像画像・収集音声・売上情報取得機能340と、学習用データセット生成機能350と、学習機能360とを有している。
撮像画像・収集音声・売上情報取得機能340は、表示端末100に保存されている、クーポンID166が対応付けられた撮像画像136および収集音声138、ならびに、POS端末200に保存されている、クーポンID166が対応付けられた売上情報218を取得する。これらのデータは、学習用データセットとして用いられることになる。すなわち、管理装置300の撮像画像・収集音声・売上情報取得機能340は、学習用データセットを取得するための構成に相当する。
表示端末100およびPOS端末200からのデータ取得の方法としては、例えば、表示端末100およびPOS端末200に対して何らかの指令を与えて表示端末100およびPOS端末200がそれぞれデータを送信するようにしてもよいし、管理装置300が表示端末100およびPOS端末200にアクセスしてそれぞれデータを取得するようにしてもよい。あるいは、表示端末100およびPOS端末200は、予め定められた周期毎にデータを管理装置300へ送信するようにしてもよい。
学習用データセット生成機能350は、表示端末100から取得されたクーポンID166が対応付けられた撮像画像136および収集音声138と、POS端末200から取得されたクーポンID166が対応付けられた売上情報218とから、学習用データセット324を生成する。
学習機能360は、学習用データセット生成機能350により生成された学習用データセット324を用いて、推定モデルを学習することで学習済モデル326を生成する。生成された学習済モデル326は、表示端末100へ送信される。
(f2:学習用データセット生成機能350)
次に、図22に示す管理装置300の学習用データセット生成機能350の詳細について説明する。
図23は、本実施の形態に従う服飾提案システム1を構成する管理装置300の学習用データセット生成機能350における処理内容を説明するための図である。図23を参照して、学習用データセット生成機能350に関して、管理装置300は、表示端末100から取得された、クーポンID166が対応付けられた撮像画像136および収集音声138と、POS端末200から取得された、クーポンID166が対応付けられた売上情報218とを比較して、同一のクーポンID166を有するデータ間を対応付ける。
図23には、一例として、クーポンID166として「01」,「02」,「03」がそれぞれ付与された撮像画像136と収集音声138とのデータの組、ならびに、クーポンID166として「02」,「03」,「08」がそれぞれ付与された売上情報218が示されている。これらのうち、クーポンID166が「02」および「03」が付与されたデータについては、撮像画像136、収集音声138および売上情報218のすべてが揃うことになる。これらの3種類のデータを学習用データ(入力情報と推定結果の正解値との関係)として決定できる。複数のクーポンID166について学習用データをそれぞれ生成することで、学習用データセット324を生成できる。
このとき、後述するような学習処理に適合させるために、売上情報218がラベル(タグ)として用いられる。すなわち、学習用データセット324は、任意の客を撮像して得られた撮像画像136(学習用画像)および当該任意の客が発話した収集音声138(学習用音声)に対して、当該任意の客が購入した服飾アイテム(売上情報218)がラベル付けされている。
(f3:学習機能360)
次に、図22に示す管理装置300の学習機能360の詳細について説明する。
図24は、本実施の形態に従う服飾提案システム1を構成する管理装置300の学習機能360における処理内容を説明するための図である。図24を参照して、管理装置300は、学習機能360として、領域特定モジュール141と、サイズ調整モジュール142,143と、区間特定モジュール144と、リサンプリングモジュール145とを含む。これらのモジュールは、表示端末100が、提案アイテム推定機能140として有しているモジュールと実質的に同一である。そのため、これらのモジュールについての詳細な説明は繰り返さない。
さらに、管理装置300は、学習機能360として、パラメータ最適化モジュール362を含む。パラメータ最適化モジュール362は、推定モデル1400を規定するためのモデルパラメータ364を最適化することで、学習済モデル326を生成する。
パラメータ最適化モジュール362は、学習用データセット324に含まれる撮像画像136、収集音声138および売上情報218の各組(学習用データ)を用いて、モデルパラメータ364を最適化する。
より具体的には、パラメータ最適化モジュール362は、学習用データセット324に含まれる各組の撮像画像136および収集音声138から、顔領域特徴量1410、体領域特徴量1420および音声特徴量1430を生成して、推定モデル1400に入力することで推定結果1450を算出する。そして、パラメータ最適化モジュール362は、推定モデル1400から出力される推定結果1450と対応する売上情報218(正解ラベル)とを比較することで誤差を算出し、算出した誤差に応じてモデルパラメータ364の値を最適化(調整)する。
すなわち、パラメータ最適化モジュール362は、学習部に相当し、学習用データ(撮像画像136および収集音声138に売上情報218がラベル付けされている)から抽出された、顔領域特徴量1410(第1特徴量)、体領域特徴量1420(第2特徴量)および音声特徴量1430(第3特徴量)を推定モデル1400に入力して出力される推定結果1450が、当該学習用データにラベル付けされている服飾アイテムの購入実績(売上情報218)に近付くように、推定モデル1400を最適化する。言い換えれば、パラメータ最適化モジュール362は、学習用データに含まれる撮像画像136および収集音声138から特徴量を抽出して推定モデル1400に入力したときに算出される推定結果1450が対応する売上情報218と一致するようにモデルパラメータ364を調整する。
同様の手順で、学習用データセット324に含まれる各学習用データ(撮像画像136、収集音声138および売上情報218)に基づいて、推定モデル1400のモデルパラメータ364を繰り返し最適化することで、学習済モデル326が生成される。
パラメータ最適化モジュール362がモデルパラメータ364の値を最適化するにあたっては、任意の最適化アルゴリズムを用いることができる。より具体的には、最適化アルゴリズムとしては、例えば、SGD(Stochastic Gradient Descent:確率的勾配降下法
)、Momentum SGD(慣性項付加SGD)、AdaGrad、RMSprop、AdaDelta、Adam(Adaptive moment estimation)などの勾配法を用いることができる。
なお、推定モデル1400から出力される推定結果1450の各要素を正規化された確
率として出力する場合には、売上情報218に含まれるアイテム種別(アイテム1,アイテム2,・・・,アイテムN)毎の売上個数(図19参照)についても正規化しておくことが好ましい。
パラメータ最適化モジュール362によりモデルパラメータ364を最適化された推定モデル1400は、学習済モデル326に相当し、表示端末100へ送信される。
(f4:処理手順)
次に、服飾提案システム1を構成する管理装置300において実行される学習処理について説明する。
図25は、本実施の形態に従う服飾提案システム1を構成する管理装置300における学習処理の処理手順を示すフローチャートである。図25に示す各ステップは、典型的には、管理装置300のプロセッサ304がOS312、アプリケーションプログラム314、前処理プログラム316、および学習用プログラム318(いずれも図9参照)を実行することで実現されてもよい。
図25を参照して、管理装置300は、表示端末100からクーポンID166が付与された撮像画像136および収集音声138を取得する(ステップS300)。併せて、管理装置300は、POS端末200からクーポンID166が付与された売上情報218を取得する(ステップS302)。すなわち、管理装置300は、媒体であるクーポン10に含まれるクーポンID166(識別情報)および客が購入した服飾アイテム(売上情報218)を取得する処理を実行する。
そして、管理装置300は、クーポンID166をキーにして、撮像画像136および収集音声138と、売上情報218とを対応付けることで、学習用データセット324を生成する(ステップS304)。すなわち、管理装置300は、媒体であるクーポン10から取得されたクーポンID166(識別情報)と客が購入した服飾アイテム(売上情報218)とを関連付ける処理を実行し、さらに、クーポンID166をキーとして撮像画像136および収集音声138と売上情報218とを関連付けて、推定モデル1400の学習に用いられる学習用データとして保存する処理を実行する。
管理装置300は、生成した学習用データセット324のうち、1つのデータの組(学習用データ)を選択する(ステップS306)。
管理装置300は、選択したデータの撮像画像136から顔領域部分画像147および体領域部分画像148を抽出する(ステップS308)。そして、管理装置300は、抽出した顔領域部分画像147および体領域部分画像148をサイズ調整して顔領域特徴量1410および体領域特徴量1420を抽出する(ステップS310)。
このように、管理装置300は、各学習用データの撮像画像136内において、客の顔を表わす顔領域と、客の体を表わす体領域とを特定する処理を実行する。そして、管理装置300は、撮像画像136の顔領域から顔領域特徴量1410(第1特徴量)を抽出するとともに、撮像画像136の体領域から体領域特徴量1420(第2特徴量)を抽出する処理を実行する。
併せて、管理装置300は、選択したデータの収集音声138に含まれる発話区間を特定区間音声149として抽出する(ステップS312)。そして、管理装置300は、抽出した特定区間音声149をリサンプリングして音声特徴量1430を抽出する(ステップS314)。このように、管理装置300は、収集音声138のうち客の発話に対応す
る部分の音声から音声特徴量1430(第3特徴量)を抽出する処理を実行する。
管理装置300は、ステップS310において生成した顔領域特徴量1410および体領域特徴量1420、ならびに、ステップS314において生成した音声特徴量1430を推定モデル1400に入力して推定結果1450を生成する(ステップS316)。
管理装置300は、選択したデータの売上情報218とステップS316において生成した推定結果1450との誤差に基づいて推定モデルのモデルパラメータ364を最適化する(ステップS318)。
このように、管理装置300は、顔領域特徴量1410(第1特徴量)、体領域特徴量1420(第2特徴量)および音声特徴量1430(第3特徴量)を推定モデル1400に入力して出力される推定結果1450が、当該学習用データにラベル付けされている服飾アイテムの購入実績(売上情報218)に近付くように、推定モデル1400を最適化する処理を実行する。
そして、管理装置300は、ステップS304において生成した学習用データセット324のすべてを処理したか否かを判断する(ステップS320)。学習用データセット324のすべてを処理していなければ(ステップS320においてNO)、ステップS306以下の処理が繰り返される。
学習用データセット324のすべてを処理していれば(ステップS320においてYES)、管理装置300は、現在のモデルパラメータ364により規定される学習済モデル326を各表示端末100へ送信する(ステップS322)。以上により、学習処理は完了する。
(f5:小括)
本実施の形態に従う管理装置300は、表示端末100から取得される撮像画像136および収集音声138と、POS端末200から取得される売上情報218とを、クーポンID166をキーにして対応付けることで、学習用データセット324を容易に生成できる。このような学習用データセット324を用いることで、推定モデルの構築あるいは学習済モデル326の追加学習が可能となる。これによって、服飾の提案精度を高めることができる。
<G.変形例>
上述の実施の形態においては、典型例として、表示端末100、POS端末200および管理装置300が単一の店舗30に配置された服飾提案システム1を例示したが、これに限らず、各種の変形が可能である。以下、いくつかの変形例について説明する。
(g1:複数店舗連携:変形例1)
一変形例として、管理装置300が複数の店舗間を管理するようにしてもよい。
図26は、本実施の形態の変形例1に従う服飾提案システム1Aのシステム構成の一例を示す模式図である。図26を参照して、店舗30Aおよび店舗30Bの各々には、1または複数の表示端末100および1または複数のPOS端末200が配置されている。各店舗30は、広域ネットワーク4を介して同一の管理装置300と接続されている。
管理装置300は、店舗30Aの表示端末100およびPOS端末200から必要な情報(撮像画像136、収集音声138および売上情報218)を取得するとともに、店舗30Bの表示端末100およびPOS端末200から必要な情報を取得する。そして、管
理装置300は、収集した情報に基づいて、両店舗に共通の学習済モデル、あるいは、店舗毎の学習済モデルを生成する。
図26に示すような構成を採用することで、管理装置300の配置数を低減できるとともに、より多くの学習用データセットを取得できるので、学習済モデルの推定精度を高めることができる。
(g2:カテゴリ別のアイテム提案:変形例2)
上述の実施の形態に従う推定モデル1400(図11参照)には、カテゴリ選択受付画面50に表示されるカテゴリのいずれかに対応する音声特徴量1430が入力されるので、基本的には、出力される推定結果1450において、発声されたカテゴリに属するアイテムは相対的に高いスコアを有することになる。なお、複数の服飾アイテムの各々は、予め定められた複数のカテゴリ(商品カテゴリ)のいずれかに属することになる。
但し、選択されたカテゴリに属するアイテムと同時に購入された他のカテゴリに属するアイテムが多数存在する場合には、推定結果1450には、相対的に高いスコアを有する他のカテゴリに属するアイテムが混在し得る。このような場合には、アイテム提案画面52には、選択されたカテゴリ以外のカテゴリに属するアイテムも提案されることになる。
図27は、本実施の形態の変形例2に従う服飾提案システム1の表示端末100に表示されるアイテム提案画面を説明するための図である。図27(a)に示すように、推定結果1450に他のカテゴリに属するアイテムが相対的に高いスコアを有する場合には、アイテム提案画面52の一覧表示54には、当該他のカテゴリに属するアイテム(符号54M)が含まれることになる。
このような他のカテゴリに属するアイテムを含み得るアイテム提案画面52を表示するようにしてもよいが、図27(b)に示すように、選択されたカテゴリに属するアイテムと、それ以外のカテゴリに属するアイテムとを異なる表示態様で提案してもよい。
すなわち、図27(b)に示すアイテム提案画面52は、来店者40が音声で選択したカテゴリに属するアイテムからなる一覧表示54と、来店者40が音声で選択したカテゴリ以外のカテゴリに属するアイテムからなる一覧表示55とを含む。一覧表示55には、選択されたカテゴリとは異なるカテゴリではあるものの、過去の販売実績に基づいて、提案にふさわしいアイテムであることを示す「こちらもどうですか」といったメッセージが併せて表示される。
図28は、本実施の形態の変形例2に従う服飾提案システム1を構成する表示端末100の表示制御機能150Aおよびクーポン発行制御機能160における処理内容を説明するための図である。図28を参照して、表示端末100は、表示制御機能150Aとして、表示制御モジュール152Aと、音声解析モジュール154と、カテゴリ・アイテム対応情報156とを有している。
音声解析モジュール154は、来店者40が発話した収集音声138を音声解析することで、来店者40が音声で選択したカテゴリを特定する。すなわち、音声解析モジュール154は、客が発話した音声に基づいて、複数のカテゴリの中から、客によって選択されたカテゴリを特定する。なお、音声解析モジュール154による音声解析方法は、公知の任意のアルゴリズムを用いることができる。音声解析モジュール154により特定されたカテゴリは、表示制御モジュール152Aへ与えられる。
表示制御モジュール152Aは、提案アイテム推定機能140により算出される推定結
果1450を受け付けて、推定結果1450において上位のスコアを有するアイテムを特定する。表示制御モジュール152Aは、カテゴリ・アイテム対応情報156を参照して、推定結果1450において上位のスコアを有するアイテムの各々が、音声解析モジュール154により特定されたカテゴリに属するか否かを判断する。そして、表示制御モジュール152Aは、アイテム画像118を参照して、音声解析モジュール154により特定されたカテゴリに属するアイテムについては、その画像を一覧表示54に追加し、音声解析モジュール154により特定されたカテゴリ以外のカテゴリに属するアイテムについては、その画像を一覧表示55に追加することで、アイテム提案画面52Aを生成する。生成されたアイテム提案画面52Aは、ディスプレイ102に表示される。
以上のような表示制御モジュール152Aでの処理が実行されることで、図27(b)に示されるようなアイテム提案画面52Aが提供される。すなわち、ディスプレイ102は、推定結果1450に基づいて表示される服飾アイテムのうち、音声解析モジュール154により特定されたカテゴリに属する服飾アイテムと、当該特定されたカテゴリに属さない服飾アイテムとを異なる表示態様で表示する。このような表示態様を採用することで、来店者40が選択したカテゴリ以外のアイテムについても購入を促すことができる。
その他の処理および機能については、図15を参照して説明した内容と実質的に同一であるので、詳細な説明は繰り返さない。
(g3:ネットワーク:変形例3)
上述の実施の形態においては、顔領域特徴量1410、体領域特徴量1420および音声特徴量1430が入力される推定モデル1400を例示したが、さらに追加の情報を入力可能な推定モデルを採用してもよい。
図29は、本実施の形態の変形例3に従う服飾提案システム1を構成する表示端末100の提案アイテム推定機能140における処理内容を説明するための図である。図29には、天気や気温といった気象情報を入力特徴量1440として受け付ける推定モデル1400Aを示す。このように、入力情報を追加することで、推定精度を高めることができる。
推定モデル1400Aに入力する特徴量を追加した場合には、推定モデル1400Aの学習に用いられる学習用データセットに含める情報についても、入力される特徴量に対応させて増加させることになる。
なお、図29には、典型例として、気象情報を示すが、追加的に入力する情報は、これに限らず、提案するアイテムの決定に何らかの関連性が推定される情報であれば、任意の情報を採用できる。例えば、風速や日照時間などの他の気象情報、日時や曜日といった時間情報、当該店舗の混雑具合などの情報を用いてもよい。
(g4:ネットワーク:変形例4)
上述の実施の形態においては、顔領域特徴量1410、体領域特徴量1420および音声特徴量1430が入力される推定モデル1400を例示したが、一部の情報を代替するような推定モデルを採用してもよい。
図30は、本実施の形態の変形例4に従う服飾提案システム1を構成する表示端末100の提案アイテム推定機能140における処理内容を説明するための図である。図30には、音声特徴量1430に代えて、カテゴリを示す入力特徴量1442を入力する構成例を示す。入力特徴量1442については、来店者40が発話した収集音声138を音声解析することで、来店者40が音声で選択したカテゴリを特定することで生成してもよい。
あるいは、来店者40が、表示端末100に表示されるカテゴリ選択受付画面50において、カテゴリに対応する部分をタッチすることで選択した場合には、そのタッチ操作により選択されたカテゴリを入力特徴量1442として入力するようにしてもよい。
なお、図30には、カテゴリを示す入力特徴量1442を入力する例を示すが、上述の図28に示すような構成を採用することで、入力特徴量1442の入力も削除するようにしてもよい。
(g5:携帯端末を用いたアイテム提案:変形例5)
一変形例として、実店舗に代えて、個人所有の携帯端末上で上述したようなアイテム提案を行うようにしてもよい。
図31は、本実施の形態の変形例5に従う服飾提案システム1Bの使用例を示す模式図である。図31を参照して、携帯端末500のアプリケーションをインストールすることで、表示端末100と同様の機能を携帯端末500上で実現できる。ネットユーザは、携帯端末500でアプリケーションを実行するとともに、携帯端末500に搭載されているカメラを用いて自身を撮像しつつ、希望するカテゴリを発声することで、上述したような服飾の提案を受けることができる。
携帯端末500で本実施の形態に従うアイテム推定処理を実現するための実装としては、任意の形態を採用できる。
図32は、本実施の形態の変形例5に従う服飾提案システムの実装例を示す模式図である。
図32(a)は、携帯端末500単体でアイテム推定処理を実現する実装例を示す。図32(a)に示すように、サーバ装置400からアプリケーション510を携帯端末500にインストールする。アプリケーション510は、提案アイテム推定機能512と、表示制御機能514と、クーポン発行制御機能516とを有している。提案アイテム推定機能512、表示制御機能514およびクーポン発行制御機能516は、表示端末100の提案アイテム推定機能140、表示制御機能150およびクーポン発行制御機能160(いずれも図10参照)と実質的に同一の処理を実行する。
図32(a)に示す実装例においては、学習済モデル518(表示端末100に配置される学習済モデル116と実質的に同一)が携帯端末500に配置されるので、サーバ装置400との通信が行えない場合であっても、アイテム推定処理を実行できる。
図32(b)は、サーバ装置400と携帯端末500とが連携してアイテム推定処理を実現する実装例を示す。図32(b)に示すように、サーバ装置400からアプリケーション520を携帯端末500にインストールする。アプリケーション520は、特徴量生成機能522および表示機能524を有している。特徴量生成機能522は、ネットユーザを撮像することで得られる撮像画像から顔領域特徴量1410および体領域特徴量1420を抽出するとともに、ネットユーザが発した収集音声138から音声特徴量1430を生成して、サーバ装置400へ送信する。
表示機能524は、サーバ装置400からの表示内容を携帯端末500のディスプレイに出力する。
一方、サーバ装置400は、提案アイテム推定機能412と、表示制御機能414と、
クーポン発行制御機能416とを有している。提案アイテム推定機能412は、表示端末100の提案アイテム推定機能140(図11参照)において特徴量を抽出する機能を除いた部分に対応する。表示制御機能414およびクーポン発行制御機能416は、表示端末100の表示制御機能150およびクーポン発行制御機能160(いずれも図10参照)と実質的に同一の処理を実行する。
図32(b)に示す実装例においては、学習済モデル518(表示端末100に配置される学習済モデル116と実質的に同一)がサーバ装置400に配置されるので、サーバ装置400において学習済モデル518の適宜更新などが可能になる。また、携帯端末500では、特徴量のみを抽出すればよいので、携帯端末500側のリソースの消費を低減できる。
図32(c)は、サーバ装置400と携帯端末500とが連携してアイテム推定処理を実現する実装例を示す。図32(c)に示すように、サーバ装置400からアプリケーション530を携帯端末500にインストールする。アプリケーション530は、画像音声送信機能532および表示機能524を有している。画像音声送信機能532は、ネットユーザを撮像することで得られる撮像画像およびネットユーザが発した収集音声138をサーバ装置400へ送信する。
表示機能534は、サーバ装置400からの表示内容を携帯端末500のディスプレイに出力する。
一方、サーバ装置400は、提案アイテム推定機能412と、表示制御機能414と、クーポン発行制御機能416とを有している。提案アイテム推定機能412、表示制御機能414およびクーポン発行制御機能416は、表示端末100の表示制御機能150およびクーポン発行制御機能160(いずれも図10参照)と実質的に同一の処理を実行する。
図32(c)に示す実装例においては、学習済モデル518(表示端末100に配置される学習済モデル116と実質的に同一)がサーバ装置400に配置されるので、サーバ装置400において学習済モデル518の適宜更新などが可能になる。また、携帯端末500では、撮像画像136および収集音声138をそのままサーバ装置400へ送信すればよいので、携帯端末500側のリソースの消費を低減できる。
(g6:その他)
上述したような変形例に限らず、本発明の趣旨に沿った各種変形が可能であることは自明である。また、上述したそれぞれの変形例については、1または複数を任意に組み合わせることもできる。
<H.まとめ>
本実施の形態に従う服飾提案システム1によれば、来店者の顔領域部分画像147から生成される顔領域特徴量1410と、来店者の体領域部分画像148から生成される体領域特徴量1420と、来店者の特定区間音声149から生成される音声特徴量1430とを入力情報として用いることで、来店者の嗜好に応じた服飾をより高い精度で提案できる。
また、本実施の形態に従う服飾提案システム1によれば、来店者から取得された入力情報(撮像画像136および収集音声138)と、当該来店者が実際に購入したアイテムとを、クーポン10に付与されたクーポンID166を用いて互いに対応付けることで学習用データセット324を生成できる。このような学習用データセット324を用いて、推
定モデルを学習することで、推定精度を継続的に高めることができるとともに、新たなアイテムが追加された場合であっても、推定モデルを適合させることができる。
さらに、本実施の形態に従う服飾提案システム1は、支払金額が割り引かれるクーポン10を発行するので、来店者はクーポン10を積極的に利用しようとするインセンティブが存在する。その結果、学習用データセット324を生成するための情報を収集する可能性を高めることができる。
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。