図面 (/)

技術 アイテム推薦装置、アイテム推薦方法およびプログラム

出願人 株式会社東芝東芝デジタルソリューションズ株式会社
発明者 浜田伸一郎
出願日 2015年3月13日 (6年3ヶ月経過) 出願番号 2015-050664
公開日 2016年5月23日 (5年0ヶ月経過) 公開番号 2016-091535
状態 特許登録済
技術分野 特定用途計算機 検索装置
主要キーワード レーティング値 ラベル形式 推定ルール 非終端ノード ユーザ要望 商品特徴 誤差伝播 実数ベクトル
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2016年5月23日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

内面的な情報を推定してアイテム推薦をより精度よく行うことができるアイテム推薦装置アイテム推薦方法およびプログラムを提供する。

解決手段

実施形態のアイテム推薦装置は、文脈情報生成部と、順位付け部と、を備える。文脈情報生成部は、入力された自然言語要求を意味解析して、ユーザの意図を含む文脈情報を生成して出力する。順位付け部は、前記文脈情報と、ユーザの属性を表すユーザ情報と、ユーザのアイテム利用履歴を表す履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う。

概要

背景

ユーザが関心を寄せることが期待されるアイテム推薦する技術は、例えば、電子商取引(EC:Electronic Commerce)、ネット広告行動案サービスなどの様々な分野で広く利用されている。アイテム推薦において最も広く用いられる処理方式は、ユーザとアイテムの相関関係(もしくはユーザのアイテムへの関心の度合い)を示す行列を生成し、この行列を元に統計分析を行う方式である。しかしこの方式では、ユーザのアイテムへの興味ニーズ文脈によって変化する点が考慮されていない。そこで、近年では、例えばレストラン推薦タスクを対象に、時間帯、機会(祝日誕生日記念日など)、場所、同伴者などの文脈情報を追加的に用いる方式が提案されている。

文脈情報を用いてアイテムの推薦を行う従来の方式では、利用可能な文脈情報が、外部から容易に観測可能な情報に限られていた。しかし、これら外部から観測可能な文脈情報以外にも、ユーザの活動目的や気分など、ユーザに意図を聞かないと分からない内面的な情報も、アイテムの推薦処理を行う上で有用と思われる。このため、内面的な情報を推定してアイテムの推薦をより精度よく行うことができる仕組みの構築が求められている。

概要

内面的な情報を推定してアイテムの推薦をより精度よく行うことができるアイテム推薦装置アイテム推薦方法およびプログラムを提供する。実施形態のアイテム推薦装置は、文脈情報生成部と、順位付け部と、を備える。文脈情報生成部は、入力された自然言語要求を意味解析して、ユーザの意を含む文脈情報を生成して出力する。順位付け部は、前記文脈情報と、ユーザの属性を表すユーザ情報と、ユーザのアイテム利用履歴を表す履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う。

目的

本発明が解決しようとする課題は、内面的な情報を推定してアイテムの推薦をより精度よく行うことができるアイテム推薦装置、アイテム推薦方法およびプログラムを提供する

効果

実績

技術文献被引用数
1件
牽制数
1件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

入力された自然言語要求を意味解析して、ユーザの意図を含む文脈情報を生成して出力する文脈情報生成部と、前記文脈情報と、ユーザの属性を表すユーザ情報と、ユーザのアイテム利用履歴を表す履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う順位付け部と、を備えるアイテム推薦装置

請求項2

文脈を端的に表す文脈タグを、該文脈タグと意味的に類似する語句対応付けて格納する文脈タグ辞書をさらに備え、前記文脈情報生成部は、入力された自然言語要求から抽出した語句が前記文脈タグ辞書に格納された前記文脈タグと一致する場合は該文脈タグを前記文脈情報として出力し、入力された自然言語要求から抽出した語句が前記文脈タグ辞書に格納された語句と一致する場合は該語句に対応付けて前記文脈タグ辞書に格納された前記文脈タグを前記文脈情報として出力する、請求項1に記載のアイテム推薦装置。

請求項3

前記文脈情報生成部は、入力された自然言語要求に対して、統計的意味解析を用いて該自然言語要求のテキスト全体の意味を示す特徴ベクトルを生成し、該特徴ベクトルを前記文脈情報として出力する、請求項1に記載のアイテム推薦装置。

請求項4

入力された自然言語要求を意味解析して、アイテムの情報を蓄積する蓄積部に対する検索に用いる検索情報を生成する検索情報生成部と、前記検索情報を用いて前記蓄積部に対する検索を行って、ユーザに提示するアイテムの候補を抽出する候補抽出部と、をさらに備える、請求項1に記載のアイテム推薦装置。

請求項5

検索キーワードとなる検索タグを、該検索タグと意味的に類似する語句と、該検索タグが適用される属性を表す適用先属性とに対応付けて格納する検索タグ辞書をさらに備え、前記検索情報生成部は、入力された自然言語要求から抽出した語句が前記検索タグ辞書に格納された前記検索タグと一致する場合は該検索タグおよび該検索タグに対応付けて前記検索タグ辞書に格納された前記適用先属性を前記検索情報として出力し、入力された自然言語要求から抽出した語句が前記検索タグ辞書に格納された語句と一致する場合は該語句に対応付けて前記検索タグ辞書に格納された前記検索タグおよび該検索タグに対応付けて前記検索タグ辞書に格納された前記適用先属性を前記検索情報として出力する、請求項4に記載のアイテム推薦装置。

請求項6

入力された画像を解析して、該画像に含まれる人物群人間関係を表す人間関係情報を生成して出力する人間関係情報生成部と、前記人間関係情報を前記文脈情報に統合する統合部と、をさらに備え、前記順位付け部は、前記人間関係情報が統合された前記文脈情報と、前記ユーザ情報と、前記履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う、請求項1に記載のアイテム推薦装置。

請求項7

前記人間関係情報生成部は、前記画像から人物を検出して各人物の属性を推定し、前記画像から検出した各人物の属性の集合を所定のルールと照合して前記人間関係情報を生成する、請求項6に記載のアイテム推薦装置。

請求項8

前記人間関係情報生成部は、さらに、前記画像から検出した各人物のうち、前記画像におけるサイズが最大の人物、または前記画像の中心に最も近い位置から検出された人物、または口唇領域が動いていると判定される人物を選択し、前記順位付け部は、前記人間関係情報生成部により選択された人物の属性を、前記ユーザ情報として用いる、請求項7に記載のアイテム推薦装置。

請求項9

アイテム推薦装置において実行されるアイテム推薦方法であって、入力された自然言語要求を意味解析して、ユーザの意図を含む文脈情報を生成して出力する工程と、前記文脈情報と、ユーザの属性を表すユーザ情報と、ユーザのアイテム利用履歴を表す履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う工程と、を含むアイテム推薦方法。

請求項10

コンピュータに、入力された自然言語要求を意味解析して、ユーザの意図を含む文脈情報を生成して出力する機能と、前記文脈情報と、ユーザの属性を表すユーザ情報と、ユーザのアイテム利用履歴を表す履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う機能と、を実現させるためのプログラム

技術分野

0001

本発明の実施形態は、アイテム推薦装置アイテム推薦方法およびプログラムに関する。

背景技術

0002

ユーザが関心を寄せることが期待されるアイテム推薦する技術は、例えば、電子商取引(EC:Electronic Commerce)、ネット広告行動案サービスなどの様々な分野で広く利用されている。アイテム推薦において最も広く用いられる処理方式は、ユーザとアイテムの相関関係(もしくはユーザのアイテムへの関心の度合い)を示す行列を生成し、この行列を元に統計分析を行う方式である。しかしこの方式では、ユーザのアイテムへの興味ニーズ文脈によって変化する点が考慮されていない。そこで、近年では、例えばレストラン推薦タスクを対象に、時間帯、機会(祝日誕生日記念日など)、場所、同伴者などの文脈情報を追加的に用いる方式が提案されている。

0003

文脈情報を用いてアイテムの推薦を行う従来の方式では、利用可能な文脈情報が、外部から容易に観測可能な情報に限られていた。しかし、これら外部から観測可能な文脈情報以外にも、ユーザの活動目的や気分など、ユーザに意図を聞かないと分からない内面的な情報も、アイテムの推薦処理を行う上で有用と思われる。このため、内面的な情報を推定してアイテムの推薦をより精度よく行うことができる仕組みの構築が求められている。

先行技術

0004

Contextual recommendation based on text mining,Li,Yize,et al.Proceedings of the 23rd International Conference on Computational Linguistics:Posters.Association for Computational Linguistics,2010.

発明が解決しようとする課題

0005

本発明が解決しようとする課題は、内面的な情報を推定してアイテムの推薦をより精度よく行うことができるアイテム推薦装置、アイテム推薦方法およびプログラムを提供することである。

課題を解決するための手段

0006

実施形態のアイテム推薦装置は、文脈情報生成部と、順位付け部と、を備える。文脈情報生成部は、入力された自然言語要求を意味解析して、ユーザの意図を含む文脈情報を生成して出力する。順位付け部は、前記文脈情報と、ユーザの属性を表すユーザ情報と、ユーザのアイテム利用履歴を表す履歴情報とに基づいて、ユーザに提示するアイテムの候補に対する順位付けを行う。

図面の簡単な説明

0007

図1は、第1実施形態のアイテム推薦装置の構成例を示すブロック図である。
図2は、店舗DBのデータ構造の一例を示す図である。
図3は、検索タグの一例を示す図である。
図4は、検索タグ辞書のデータ構造の一例を示す図である。
図5は、自然言語要求から検索タグ群を生成する処理手順の一例を示すフローチャートである。
図6は、検索タグ群から候補アイテム群を生成する処理手順の一例を示すフローチャートである。
図7は、文脈タグの一例を示す図である。
図8は、文脈タグ辞書のデータ構造の一例を示す図である。
図9は、自然言語要求から文脈タグ群を生成する処理手順の一例を示すフローチャートである。
図10は、ユーザDBのデータ構造の一例を示す図である。
図11は、利用ログDBのデータ構造の一例を示す図である。
図12は、予測処理の処理手順の一例を示すフローチャートである。
図13は、第2実施形態のアイテム推薦装置の構成例を示すブロック図である。
図14は、利用ログDBのデータ構造の一例を示す図である。
図15は、文脈ベクトル生成のための統計処理で用いる数理モデルを説明する図である。
図16は、図15の数理モデルにおける各種パラメタ学習方法を説明する図である。
図17は、各種パラメタの学習処理の処理手順の一例を示すフローチャートである。
図18は、文脈ベクトルを生成する処理手順の一例を示すフローチャートである。
図19は、第3実施形態のアイテム推薦装置の構成例を示すブロック図である。
図20は、人物属性推定器による処理手順の一例を示すフローチャートである。
図21は、アイテム推薦装置のハードウェア構成の一例を概略的に示すブロック図である。

実施例

0008

以下、実施形態のアイテム推薦装置、アイテム推薦方法およびプログラムを、図面を参照して詳細に説明する。

0009

実施形態のアイテム推薦装置は、意味解析エンジンと文脈認識型推薦エンジンとを備える。意味解析エンジンは、ユーザから入力された自然言語要求を元に、気分、要望、目的など、ユーザの内面的な情報を推定する。文脈認識型推薦エンジンは、文脈情報として、外部観測情報(日時、場所など)に加えて、これら内面的情報を併せて分析を行う。自然言語要求は、自然言語によるアイテムの推薦要求である。近年では、音声認識技術成熟携帯端末の普及などを背景に、システムやサービスへの対話処理の導入が広がっており、自然言語による要求の入力がユーザに受け入れられやすい土壌になってきている。

0010

以下の実施形態では、本発明の適用事例として、アイテムとして店舗を推薦する店舗推薦タスクを想定する。実施形態のアイテム推薦装置は、自然言語要求を入力として受理し、順位付けされた店舗リスト推薦アイテムリストとして出力する。またバックデータとして、ユーザ群の各店舗への利用ログを格納した利用ログDBを保持しているとする。ただし、本実施形態で説明する推薦処理は汎用的であり、店舗推薦タスクの適用事例に限定されるものではなく様々なタスクに適用できる。

0011

以下に具体的な適用事例を示す。実施形態のアイテム推薦装置では、例えば「来週末、同期の送別会を開こうと思っています」という目的を主体とした自然言語要求が入力されたときに、以下の処理が行われる。

0012

「送別会」というキーワードから、推薦候補は、店舗カテゴリが居酒屋、バー、レストラン、カフェ、花屋(プレゼント購入用)である店舗に絞られる。

0013

「週末」というキーワードから、推薦候補は、週末にオープンしている店舗に絞られる。

0014

「送別会」というキーワードは、予め用意されたタグ辞書と照合され、「宴会」というタグが生成される。

0015

「同期」というキーワードは、予め用意されたタグ辞書と照合され、「同僚」というタグが生成される。

0016

送別会および週末によって絞られた推薦候補のうち、「宴会」および「同僚」というタグと共起しやすい店舗(すなわち、実績として同僚の宴会として多く利用された店舗)を重視しつつ、利用ログを元に推薦店舗の候補を順位付けして推薦アイテムリストを出力する。

0017

これにより、絞込処理によって意図に合う可能性のない店舗が排除され、さらにタグによって、意図に合う可能性の高い店舗が優先される、という条件下で、ユーザの嗜好性適合する推薦結果が出力される。

0018

<第1実施形態>
図1は、第1実施形態のアイテム推薦装置の構成例を示すブロック図である。本実施形態のアイテム推薦装置は、図1に示すように、意味解析エンジン10と、文脈認識型推薦エンジン20と、を備える。

0019

意味解析エンジン10は、ユーザ要望などが含まれる自然言語要求D1を入力として受け取り、検索タグ群D2と文脈タグ群D4とを出力する。検索タグ群D2に含まれる各検索タグは、店舗が満たすべき性質を説明する問合せ情報片である。文脈タグ群D4に含まれる各文脈タグは、ユーザ側の状況を説明する問合せ情報片である。意味解析エンジン10は、これらのタグを生成するために、形態素解析器11、検索タグ抽出器12(検索情報生成部)、および文脈タグ生成器13(文脈情報生成部)を内部に備える。

0020

文脈認識型推薦エンジン20は、意味解析エンジン10により生成された検索タグ群D2および文脈タグ群D4を入力として受け取り、推薦アイテムリストD5を推薦結果として出力する。検索タグ群D2は、店舗への制約条件として店舗DB103と照合されて、絞り込まれた候補アイテム群D3が生成される。文脈タグ群D4は、ユーザDB104に格納されたユーザ情報、および利用ログDB105に格納された利用ログと併せて、候補アイテム群D3に含まれる各候補アイテムの順位付けに利用される。順位付けされた候補アイテムのリストが、推薦アイテムリストD5である。文脈認識型推薦エンジン20は、これらの処理を行うために、候補抽出器21(候補抽出部)および順位付け器22(順位付け部)を内部に備える。

0021

以下では、本実施形態のアイテム推薦装置による処理の詳細を、「店舗絞込処理」、「文脈タグ群の生成処理」、および「推薦処理」の3つに分けて説明する。これらの処理は、モジュール横断で実行される。

0022

(店舗絞込処理)
店舗絞込処理とは、入力されたユーザ要望表現を含む自然言語要求D1を元に、推薦候補となる店舗(候補アイテム)を絞り込む処理である。自然言語要求D1に店舗名が含まれていた場合は、推薦候補はその店舗名で絞り込まれる。自然言語要求D1に店舗カテゴリ名が含まれていた場合は、推薦候補はその店舗カテゴリ名で絞り込まれる。その他、自然言語要求D1に“安い”、“食べ放題あり”など、店舗の属性を表す表現が含まれていた場合は、推薦候補はその属性で絞り込まれる。

0023

店舗DB103は、本実施形態のアイテム推薦装置が扱う全店舗の店舗情報を格納するデータベースであり、この店舗DB103に格納された店舗情報が店舗絞込処理の対象である。店舗DB103のデータ構造の一例を図2に示す。店舗DB103に格納された店舗情報は、例えば図2に示すような表形式となっており、各レコードは店舗ID、店舗名、カテゴリ名、および他属性のカラムを含む。

0024

店舗IDカラムには、ユニークな通し番号が振られている。店舗名カラムには、本実施形態のアイテム推薦装置が扱う全店舗の店舗名が格納されている。カテゴリ名カラムには、居酒屋、カフェなど、予め定められたカテゴリの中のいずれかのカテゴリが格納されている。他属性カラムは、マルチラベル形式となっており、安い、食べ放題ありなど、店舗の特徴を表す予め定められた他属性のラベルの中から0個以上のラベルが列挙されている。他属性のラベルとしては、サービス内容商品特徴雰囲気など、様々な観点でのラベルを用意することが望ましい。

0025

自然言語要求D1から検索タグ群D2を生成する処理について説明する。本実施形態のアイテム推薦装置が扱う検索タグの一例を図3に示す。検索タグは、図3に示すように、店舗名に関するタグ、カテゴリ名に関するタグ、および他属性に関するタグを含む。

0026

ここで、検索タグ群D2を生成する処理の中で用いる検索タグ辞書101について説明する。検索タグ辞書101は、入力される自然言語要求D1において、異なる言い回しや、異なる観点に基づく言及の仕方の違いを吸収する知識源として利用される。これにより、ユーザの要求表現において直接的な言及が無くても、その意図を汲み取って対象店舗を絞り込む効果を得ることができる。

0027

検索タグ辞書101のデータ構造を図4に示す。検索タグ辞書101は、例えば図4に示すような表形式となっており、各レコードは検索タグ、適用先属性、およびトリワードのカラムを含む。

0028

検索タグカラムは、レコードごとにユニークであり、本実施形態のアイテム推薦装置が扱う検索タグが格納されている。ただし、必ずしもすべての検索タグを格納しなくてもよい。適用先属性カラムは、検索タグが制約課す対象となるカラム名が格納されている。例えば、検索タグが居酒屋のようなカテゴリ名を示しているレコードの場合、当該レコードの適用先属性カラムには“カテゴリ名”という値が格納される。トリガワードカラムは、マルチラベル形式となっており、検索タグ生成のトリガとなる単語やフレーズなどの語句(以下、「トリガワード」と呼ぶ。)が列挙されている。検索タグ群D2を生成する処理において図4に例示した検索タグ辞書101を用いることにより、“酒”、“飲み会”、“食事”といったトリガワードが含まれた自然言語要求D1に対して、“居酒屋”という検索タグを生成し、カテゴリ名への制約条件とした店舗絞込みを行う。

0029

図5は、自然言語要求D1から検索タグ群D2を生成する処理手順の一例を示すフローチャートである。本実施形態のアイテム推薦装置は、以下のステップS101〜ステップS109の処理により、自然言語要求D1から検索タグ群D2を生成する。

0030

ステップS101:形態素解析器11は、自然言語要求D1を単語またはフレーズに分割してLemmatize(辞書見出し語化)を行う。

0031

ステップS102:検索タグ抽出器12は、ステップS101で得られた単語またはフレーズ群から、単語またはフレーズを1つ取り出す。

0032

ステップS103:検索タグ抽出器12は、ステップS102で取り出した単語またはフレーズが検索タグであるか否かを判定する。そして、判定の結果がYesであればステップS104に進み、NoであればステップS105に進む。

0033

ステップS104:検索タグ抽出器12は、ステップS102で取り出した単語またはフレーズに一致する検索タグと当該検索タグに対応する適用先属性とのペア出力バッファに追加し、ステップS108に進む。

0034

ステップS105:検索タグ抽出器12は、ステップS102で取り出した単語またはフレーズがトリガワードであるか否かを判定する。そして、判定の結果がYesであればステップS106に進み、NoであればステップS108に進む。

0035

ステップS106:検索タグ抽出器12は、ステップS102で取り出した単語またはフレーズに一致するトリガワードを、当該トリガワードに対応する検索タグに変換する。

0036

ステップS107:検索タグ抽出器12は、ステップS106でトリガワードから変換した検索タグと当該検索タグに対応する適用先属性とのペアを出力バッファに追加する。

0037

ステップS108:検索タグ抽出器12は、ステップS101で得られた単語またはフレーズ群に含まれるすべての単語またはフレーズを取り出したか否かを判定する。そして、判定の結果がYesであればステップS109に進み、NoであればステップS102に戻る。

0038

ステップS109:検索タグ抽出器12は、出力バッファ内の検索タグと適用先属性のペアをすべて出力し、一連の処理を終了する。このステップS109で出力される検索タグと適用先属性のペアの集合が、検索タグ群D2である。

0039

次に、検索タグ群D2から候補アイテム群D3を生成する処理について説明する。図6は、検索タグ群D2から候補アイテム群D3を生成する処理手順の一例を示すフローチャートである。本実施形態のアイテム推薦装置は、以下のステップS201〜ステップS204の処理により、検索タグ群D2から候補アイテム群D3を生成する。

0040

ステップS201:候補抽出器21は、検索タグ群D2に含まれる検索タグのうち、適用先属性が店舗名またはカテゴリ名の検索タグに対し、適用先属性のカラム値が検索タグと厳密一致するという条件を生成する。

0041

ステップS202:候補抽出器21は、検索タグ群D2に含まれる検索タグのうち、適用先属性が他属性の検索タグに対し、他属性が当該検索タグを含んでいるという条件を生成する。

0042

ステップS203:候補抽出器21は、ステップS201およびステップS202で生成された条件群をANDでつなぐ

0043

ステップS204:候補抽出器21は、ステップS203で生成された条件を元に店舗DB103に対する検索を行い、得られた店舗レコード群を候補アイテム群D3として出力して、一連の処理を終了する。

0044

(文脈タグ群の生成処理)
文脈タグ群の処理とは、入力されたユーザ要望表現を含む自然言語要求D1を元に、ユーザの内面的な情報を含む文脈情報としての文脈タグ群D4を生成する処理である。

0045

本実施形態のアイテム推薦装置が扱う文脈タグの一例を図7に示す。文脈タグは、前述の通り、ユーザ側の状況を説明する問合せ情報片である。本実施形態における文脈タグは、図7に示すように、シーンに関するタグ、同伴者に関するタグ、目的に関するタグ、状況に関するタグ、および時間帯に関するタグを含む。

0046

ここで、文脈タグ群D4を生成する処理の中で用いる文脈タグ辞書102について説明する。文脈タグ辞書102は、入力される自然言語要求D1において、異なる言い回しや、異なる観点に基づく言及の仕方の違いを吸収する知識源として利用される。これにより、ユーザの要求表現において直接的な言及が無くても、その意図を汲み取り、予め定められた文脈タグのうち、対応する1つ以上の文脈タグを出力することができる。

0047

文脈タグ辞書102のデータ構造を図8に示す。文脈タグ辞書102は、例えば図8に示すような表形式となっており、各レコードは文脈タグおよびトリガワードのカラムを含む。

0048

文脈タグカラムは、レコードごとにユニークであり、本実施形態のアイテム推薦装置が扱う文脈タグが格納されている。ただし、必ずしもすべての文脈タグを格納しなくてもよい。トリガワードカラムは、マルチラベル形式となっており、文脈タグ生成のトリガとなるトリガワードが列挙されている。文脈タグ群D4を生成する処理において図8に例示した文脈タグ辞書102を用いることにより、“忘年会”、“懇親会”、“レク”、“飲み会”、“送別会”といったトリガワードが含まれた自然言語要求D1に対して、“宴会”という文脈タグを生成する。

0049

図9は、自然言語要求D1から文脈タグ群D4を生成する処理手順の一例を示すフローチャートである。本実施形態のアイテム推薦装置は、以下のステップS301〜ステップS309の処理により、自然言語要求D1から文脈タグ群D4を生成する。

0050

ステップS301:形態素解析器11は、自然言語要求D1を単語またはフレーズに分割してLemmatize(辞書見出し語化)を行う。

0051

ステップS302:文脈タグ生成器13は、ステップS301で得られた単語またはフレーズ群から、単語またはフレーズを1つ取り出す。

0052

ステップS303:文脈タグ生成器13は、ステップS302で取り出した単語またはフレーズが文脈タグであるか否かを判定する。そして、判定の結果がYesであればステップS304に進み、NoであればステップS305に進む。

0053

ステップS304:文脈タグ生成器13は、ステップS302で取り出した単語またはフレーズに一致する文脈タグを出力バッファに追加し、ステップS308に進む。

0054

ステップS305:文脈タグ生成器13は、ステップS302で取り出した単語またはフレーズがトリガワードであるか否かを判定する。そして、判定の結果がYesであればステップS306に進み、NoであればステップS308に進む。

0055

ステップS306:文脈タグ生成器13は、ステップS302で取り出した単語またはフレーズに一致するトリガワードを、当該トリガワードに対応する文脈タグに変換する。

0056

ステップS307:文脈タグ生成器13は、ステップS306でトリガワードから変換した文脈タグを出力バッファに追加する。

0057

ステップS308:文脈タグ生成器13は、ステップS301で得られた単語またはフレーズ群に含まれるすべての単語またはフレーズを取り出したか否かを判定する。そして、判定の結果がYesであればステップS309に進み、NoであればステップS302に戻る。

0058

ステップS309:文脈タグ生成器13は、出力バッファ内の文脈タグをすべて出力し、一連の処理を終了する。このステップS309で出力される文脈タグの集合が、文脈タグ群D4である。

0059

(推薦処理)
本実施形態のアイテム推薦装置では、文脈タグ群D4、ユーザDB104に格納されたユーザ情報、および利用ログDB105に格納された利用ログに基づき、文脈認識型推薦エンジン20の順位付け器22において、候補アイテム群D3に含まれる候補アイテムの順位付けを行って、その結果を推薦アイテムリストD5として出力する。順位付け器22における候補アイテムの順位付けは、機械学習による学習処理および予測処理により行われる。この学習処理および予測処理には、例えば、非特許文献1に記載されている確率的潜在関係モデル(Probabilistic Latent Relational Model)を用いることができる。ただし、文脈情報を扱うことが可能な他の手法を用いてもよい。

0060

アルゴリズム説明に先立ち、文脈認識型推薦エンジン20の順位付け器22において用いられるユーザDB104および利用ログDB105について説明する。

0061

ユーザDB104は、本実施形態のアイテム推薦装置が扱う全登録ユーザについて、ユーザの属性を表すユーザ情報を格納するデータベースである。ユーザDB104のデータ構造の一例を図10に示す。ユーザDB104に格納されるユーザ情報は、例えば図10に示すような表形式となっており、各レコードはユーザID、氏名、年代、および性別のカラムを含む。ただし、例えば職業、好きな音楽ジャンルなど、推薦を行う上で役立つ任意のカラムを追加してもよい。

0062

ユーザIDカラムには、ユニークな通し番号が振られている。氏名カラムには、各登録ユーザの氏名が格納されている。年代カラムには、各登録ユーザの年代(10代、20代、30代など)が格納されている。性別カラムには、各登録ユーザの性別が格納されている。

0063

利用ログDB105は、各登録ユーザの過去の店舗利用履歴を表す利用ログ(履歴情報)を格納するデータベースである。利用ログDB105のデータ構造の一例を図11に示す。利用ログDB105に格納される利用ログは、例えば図11に示すような表形式となっており、各レコードはユーザID、店舗ID、時間帯、文脈タグ、レーティング値のカラムを含む。

0064

各レコードはユーザの店舗訪問1回に対応しており、ユーザIDカラム、店舗IDカラム、時間帯カラムにはそれぞれ、訪問したユーザのユーザID、訪問先の店舗の店舗ID、訪問時間帯を示す情報が格納されている。文脈タグカラムは、店舗訪問前に本実施形態のアイテム推薦装置に対して自然言語要求D1によってアイテムの推薦要求を行っていた場合にのみ、値が格納されるカラムであり、そのときの処理で用いた文脈タグが格納される。レーティング値カラムは、店舗訪問後にユーザに入力させた店舗への評価値であるレーティング値が格納される。ここでは、レーティング値は0〜5の整数値を取り、5が最良とする。ユーザにレーティング値を入力させるのが困難な場合は、例えば5などの固定値を入れることで代替してもよい。この場合、ユーザが訪問した店舗には5、訪問していない店舗には0、というレーティング値を与えることと同等となる。

0065

アルゴリズム説明に先立ち、文脈認識型推薦エンジン20の順位付け器22内部で用いる確率モデルについて説明する。この確率モデルは、非特許文献1に記載の確率的潜在関係モデル(Probabilistic Latent Relational Model)に基づくものである。文脈適合性ユーザ嗜好性とをバランスよく反映するモデルとなっている。

0066

下記式(1)および式(2)は、対象となるユーザ、文脈、および店舗が与えられたときのレーティング値の確率分布モデル化したものである。

0067

式(2)の右辺第1項は、ユーザの店舗への長期的嗜好性をモデル化しており、式(2)の右辺第2項は、当該ユーザの現文脈への適合性(短期的嗜好性)をモデル化している。両者の和を目的関数としているため、両者をバランスよく反映した推薦モデルが学習される。式(1)および式(2)の変数のうち、データセットから与えられる変数は、yi,j,c、fi、およびfjであり、それ以外の変数の値または確率分布は、学習によって決定される。

0068

ユーザの潜在特徴ベクトルuiとは、例えば、辛い食べ物を扱うレストランが好き、高級なアクセサリ店が好きなど、データセットに基づく学習結果から決定されるユーザの嗜好性を示すベクトルである。店舗の潜在特徴ベクトルvjも同様である。fi、fjは、予め与えられた特徴ベクトルの設計と観測された事実に基づいて要素値が決定的に与えられるのに対し、ui、ujは、予め与えられるのは次元数のみである点が異なる。

0069

式(2)は、式(1)をユーザおよび店舗の潜在特徴分布周辺化したものである。

0070

次に、各種パラメタの学習アルゴリズムについて説明する。ただし、アルゴリズムには、非特許文献1に記載の方法を用いるものとする。

0071

学習処理における数理上の目的は、上記式(1)および式(2)で算出される、利用ログDB105内の全事例群(各レコードを事例とする。)の同時確率最大化するようなuiの確率分布、vjの確率分布、行列A、および行列Wを求めることである。

0072

まず準備として、各レコードごとに上記式(1)および式(2)の以下の変数に値を割り当てる。
λ(y):適当な値を与える(超パラメタ)
yi,j,c:ユーザi、店舗j、および文脈タグ群cが与えられた時のレーティング値
fi:ユーザiと自然言語要求内の文脈タグに関して抽出した(顕在的)特徴ベクトル
fj:店舗jに関して抽出した(顕在的)特徴ベクトル

0073

yi,j,cには、利用ログDB105のレーティング値カラムの値をそのまま与える。fiには、予め設計された特徴ベクトルの構成に従って、ベクトルの要素値を与える。ただし、ベクトルを生成する上での材料として、ユーザDB104に格納された該当ユーザの各種属性、および利用ログDB105に格納された当該レコードの時間帯および文脈タグを用いるとし、各特徴ベクトルの要素値は該当するかどうかの二値を取る。fjも同様であり、材料には、店舗DB103に格納された該当店舗の各種属性を用いる。以上により定式化された各レコードのyi,j,cの確率を全レコードについて積算したものが全事例の同時確率である。以上により、データセットを反映した問題定式化が完成した。

0074

続いて、uiの確率分布、vjの確率分布、行列A、および行列Wに関する求解の手順を簡単に説明する。まず、このままでは解くことが困難であるため、uiおよびvjの確率分布は、平均:0、精度:λ(u)およびλ(v)のガウス分布に従うと仮定する。これにより求解すべき変数は、λ(u)、λ(v)、行列A、および行列Wに変わる。

0075

λ(u)およびλ(v)と、行列Aおよび行列Wについて、EMアルゴリズムを用いて、一方を固定し他方を最適化することを交替に行う。具体的には、E−Stepでは、行列Aおよび行列Wを現在値に固定して、λ(u)およびλ(v)を変分ベイズを用いて最適化する。続いてM−Stepでは、λ(u)およびλ(v)を現在値に固定して、行列Aと行列Wを最急降下法を用いて最適化する。以上のE−StepとM−Stepを収束するまで繰り返す。以上が学習アルゴリズムである。

0076

次に、各種パラメタの予測アルゴリズムについて説明する。予測処理には下記式(3)を用いる。まず基本方針を説明する。

0077

まず準備として、学習処理によって獲得済のλ(u)、λ(v)λ、行列A、および行列Wを式(3)に当てはめる。続いて、ユーザDB104に格納された現在ユーザの各種属性、および利用ログDB105内に格納された当該レコードの文脈タグ群D4を元に、特徴ベクトルfiを生成する。これらを式(3)に当てはめる。この段階で、未設定な変数はfjのみである。最後に、店舗DB103に格納された各店舗について、店舗の属性から生成した特徴ベクトルfjを順に式(3)に適用し、これによって完成した数式を用いてレーティング予測値を求めた上で、店舗群をレーティングの高い順にソートして出力する。これが推薦アイテムリストD5である。

0078

図12は、予測処理の処理手順の一例を示すフローチャートである。文脈認識型推薦エンジン20の順位付け器22は、以下のステップS401〜ステップS407の処理により、推薦アイテムリストD5を生成して出力する。

0079

ステップS401:順位付け器22は、学習処理によって獲得済のλ(u)、λ(v)、行列A、および行列Wを上記式(3)に当てはめる。

0080

ステップS402:順位付け器22は、ユーザDB104に格納された現在ユーザの各種属性と利用ログDB105内に格納された当該レコードの文脈タグ群D4を元に、特徴ベクトルfiを生成し、上記式(3)に当てはめる。

0081

ステップS403:順位付け器22は、店舗DB103から店舗を順に1つ取り出す。

0082

ステップS404:順位付け器22は、ステップS403で取り出した店舗の属性から特徴ベクトルfjを生成し、上記式(3)に当てはめる。

0083

ステップS405:順位付け器22は、上記式(3)を計算してレーティング予測値を求め、店舗情報と関連付けて出力用バッファ登録する。

0084

ステップS406:順位付け器22は、店舗DB103から店舗をすべて取り出したか否かを判定する。そして、判定の結果がYesであればステップS407に進み、NoであればステップS403に戻る。

0085

ステップS407:順位付け器22は、出力用バッファに格納された店舗情報をレーティング予測値で降順ソートし、上位k個の店舗情報を推薦アイテムリストD5として出力して、一連の処理を終了する。なお、kは予め定められた定数である。

0086

以上により、自然言語要求D1によって与えられた内面的な文脈情報と、ユーザと店舗の利用履歴から割り出される嗜好性とを反映した、ランキングつきの推薦アイテムリストD5が得られる。なお、この推薦アイテムリストD5を用いて画面などに表示する方法については任意であるため、ここでは説明を省略する。

0087

以上、具体的な例を挙げながら詳細に説明したように、本実施形態のアイテム推薦装置によれば、外部から観測可能な文脈情報だけでなく、自然言語要求D1から推定される内面的な情報も利用して、アイテムの推薦をより精度よく行うことができる。

0088

なお、上述した実施形態では、候補抽出器21が検索タグ群D2を用いて候補アイテムとなる店舗の絞り込みを行った上で、順位付け器22が候補アイテム群D3に対する順位付けを行う構成としているが、これに限らない。例えば、順位付け器22が検索タグ群D2を用いた候補アイテムの絞り込みと順位付けを併せて行う構成としてもよいし、順位付け器22による順位付けを行った後に、検索タグ群D2に基づく候補アイテムの絞り込みを行う構成としてもよい。

0089

<第2実施形態>
次に、第2実施形態のアイテム推薦装置について説明する。本実施形態のアイテム推薦装置は、第1実施形態のアイテム推薦装置の意味解析エンジン10による文脈タグ生成処理を統計ベースに置き換えたものである。以下、第1実施形態との差分について説明する。

0090

図13は、第2実施形態のアイテム推薦装置の構成例を示すブロック図である。本実施形態のアイテム推薦装置は、図13に示すように、意味解析エンジン10Aと、文脈認識型推薦エンジン20Aと、を備える。意味解析エンジン10Aの内部には、第1実施形態で説明した形態素解析器11に代えて形態素解析および構文解析器14、文脈タグ生成器13に代えて文脈ベクトル生成器15がそれぞれ設けられている。また、文脈認識型推薦エンジン20Aの内部には、第1実施形態で説明した順位付け器22に代えて順位付け器22Aが設けられている。順位付け器22Aは、第1実施形態で説明した文脈タグ群D4に代えて文脈ベクトルD6、利用ログDB105に代えて利用ログDB105Aをそれぞれ用いるが、学習および予測の処理自体は第1実施形態の順位付け器22と同様である。

0091

図14は、本実施形態の学習処理および予測処理で用いられる利用ログDB105Aのデータ構造の一例を示す図である。本実施形態で用いる利用ログDB105Aは、図11に示した第1実施形態の利用ログDB105の文脈タグカラムを、文脈ベクトルカラムに置き換えたものである。文脈ベクトルカラムは、店舗訪問前に本実施形態のアイテム推薦装置に対して自然言語要求D1によってアイテムの推薦要求を行っていた場合にのみ、値が格納されるカラムであり、そのときの処理で用いた文脈ベクトルが格納される。

0092

第1実施形態の文脈タグ生成器13は、文脈タグ辞書102と呼ばれるルール群を用いて、自然言語要求D1に含まれる任意の語句を文脈タグにマッピングする処理を行っている。文脈タグは、文脈認識型推薦エンジン20において文脈を表すベクトルとして用いられる。従って、以上の処理は、任意の語句から特定次元数の文脈ベクトルを生成する処理であるとも換言できる。

0093

本実施形態の文脈タグ生成器13も同様に、自然言語要求D1に含まれる任意の語句から特定次元数の文脈ベクトルD6を生成する処理を行う。処理上の違いは、前処理として形態素解析だけでなく構文解析も行う点、文脈ベクトルD6の生成に後述するMatrix−Vector RNNsと呼ばれる統計的手法を用いる点、出力されるベクトルは二値ベクトルではなく実数ベクトルとなる点のみである。

0094

効果に影響する違いは、事前に文脈タグ辞書102のようなルールを生成する必要が無い(その代わりに、文脈ベクトルD6の次元数のみを外部から与える)点である。ユーザのニーズは計り知れず、ユーザのニーズをあまねくカバーしたルールを書き下すことは基本的に困難であるため、ルールの生成から解放されることは利点となる。ただし、特定の観点に関して推薦処理を制御することは、第1実施形態ではルールを記述するだけで対応可能であるが、本実施形態では困難である。

0095

ここで、文脈ベクトルD6生成のための統計処理で用いる数理モデルについて説明する。ただし、当該モデルは下記の参考文献1で提案されたMatrix−Vector RNNs(MV−RNN)に基づく。図15は、文脈ベクトルD6生成のための統計処理で用いる数理モデルを説明する図であり、下記の参考文献1で図示された数理モデルである。
(参考文献1)Semantic Compositionality through Recursive Matrix-Vector Spaces,Richard Socher,Brody Huval,Christopher D.Manning and Andrew Y.Ng.Conference on Empirical Methodsin Natural Language Processing,2012.

0096

まず、数理モデルの構造について説明する。MV—RNNは木構造をなしたRecursive Neural Network(再帰ニューラルネットワーク)である。各終端ノードは、テキストに含まれる各単語を出現順に並べたものである。木構造は、テキストの構文解析構造に沿って構成されている。

0097

次に、計算式について説明する。終端ノードは、各単語の意味ベクトルが配置される。ただし、各単語の意味ベクトルには、下記の参考文献2で提案されたWord2Vecと呼ばれる手法によって予め算出した結果を用いる。
(参考文献2)Recurrent neural network based language model,T Mikolov,M Karafiat,L Burget,J Cernocky,S Khudanpur.INTERSPEECH 2010.

0098

非終端ノードには、下記式(4)に示す演算を設定する。ただし、c1、c2は子ノードが出力したベクトル、Cx(C1、C2など)は子ノードの単語種類ごとに用意する意味操作行列、Wはあらゆる非終端ノードで共有される重み行列、bはあらゆる非終ノードで共有されるバイアススカラー変数)、トップノードの出力は入力テキスト全体の構成的意味を表す実数ベクトルである。

0099

次に、上述したMV−RNNの各種パラメタの学習方法について説明する。ただし、当該手法は下記の参考文献3で提案されたUnsupervised Unforlding RAEに基づく。図16は、図15の数理モデルにおける各種パラメタの学習方法を説明する図であり、下記の参考文献3で図示された数理モデルである。
(参考文献3)Dynamic Pooling and Unfolding Recursive Autoencoders for Paraphrase Detection,Richard Socher,Eric H.Huang,Jeffrey Pennington,Andrew Y.Ng,and Christopher D.Manning.Advances in Neural Information Processing Systems 2011.

0100

図17は、各種パラメタの学習処理の処理手順の一例を示すフローチャートである。意味解析エンジン10Aの文脈ベクトル生成器15は、以下のステップS501〜ステップS503の処理により、MV−RNNの各種パラメタを学習する。

0101

ステップS501:文脈ベクトル生成器15は、学習対象となるRecursive Neural Networkのトップノード配下の林を複製して、トップノードにぶら下げる。ただし、複製された林の重み行列(図16ではWdと記載)およびバイアス(図16では表記省略)は、オリジナルの林の重み行列(図16ではWeと記載)およびバイアス(図16では表記省略)とは異なる変数として扱う。

0102

ステップS502:文脈ベクトル生成器15は、オリジナルの林の終端ノードが持つ各ベクトルを鎖状につないだベクトルXと、複製された林の終端ノードに出力された各ベクトルを鎖状につないだベクトルX’とのユークリッド距離が最小となるように、逆誤差伝播などの標準的方法を用いて各パラメタを学習する。ただし、訓練データには構文解析された任意のテキスト群を用いる。

0103

ステップS503:文脈ベクトル生成器15は、結果として得られたオリジナルの林の重み行列(図16ではWeと記載)とバイアス(図16では表記省略)を学習結果とし、一連の処理を終了する。

0104

次に、MV−RNNを用いた文脈ベクトルD6の生成処理について説明する。図18は、文脈ベクトルD6を生成する処理手順の一例を示すフローチャートである。意味解析エンジン10Aの形態素解析および構文解析器14と文脈ベクトル生成器15は、以下のステップS601〜ステップS604の処理により、自然言語要求D1から文脈ベクトルD6を生成する。

0105

ステップS601:形態素解析および構文解析器14は、自然言語要求D1に対し、形態素解析および構文解析を行う。

0106

ステップS602:文脈ベクトル生成器15は、ステップS601の処理により得られた構文構造に基づき、Recursive Neural Network構造を生成する。

0107

ステップS603:文脈ベクトル生成器15は、図17のフローチャートで示した手順により得られた学習済みのパラメタをRecursive Neural Networkに割り当てる。

0108

ステップS604:文脈ベクトル生成器15は、以上により完成したRecursive Neural Networkを用いて算出されたトップノードの出力ベクトルを文脈ベクトルD6とし、一連の処理を終了する。

0109

文脈ベクトル生成器15によって生成された文脈ベクトルD6は、文脈認識型推薦エンジン20Aの順位付け器22Aによる処理において、第1実施形態で説明したfi(ユーザiと自然言語要求D1内の文脈タグに関して抽出した(顕在的)特徴ベクトル)に組み込まれる。ベクトルの値が変わるだけで、文脈認識型推薦エンジン20Aの順位付け器22Aによる処理自体は、第1実施形態の順位付け器22による処理と同様である。なお、上記式(1)および式(2)の説明において「文脈タグ」と表記した部分は、「文脈ベクトル」と読み替えればよい。

0110

以上、具体的な例を挙げながら詳細に説明したように、本実施形態のアイテム推薦装置によれば、第1実施形態のアイテム推薦装置と同様に、外部から観測可能な文脈情報だけでなく、自然言語要求D1から推定される内面的な情報も利用して、アイテムの推薦をより精度よく行うことができる。

0111

また、本実施形態のアイテム推薦装置によれば、文脈タグ辞書102のようなルールを事前に生成することなく、自然言語要求D1から内面的な情報を推定できるので、ユーザの幅広いニーズに対応した効果的なアイテムの推薦を実現することができる。

0112

なお、上述した実施形態では、候補抽出器21が検索タグ群D2を用いて候補アイテムとなる店舗の絞り込みを行った上で、順位付け器22Aが候補アイテム群D3に対する順位付けを行う構成としているが、これに限らない。例えば、順位付け器22Aが検索タグ群D2を用いた候補アイテムの絞り込みと順位付けを併せて行う構成としてもよいし、順位付け器22Aによる順位付けを行った後に、検索タグ群D2に基づく候補アイテムの絞り込みを行う構成としてもよい。

0113

<第3実施形態>
次に、第3実施形態のアイテム推薦装置について説明する。本実施形態のアイテム推薦装置は、上述した第1実施形態のアイテム推薦装置の機能に加え、人物群撮影した画像を入力としてさらに受け取り、この画像に基づいて推定した人間関係タグを、自然言語要求D1から生成した文脈タグ群D4と統合する機能を持つ。そして、本実施形態のアイテム推薦装置は、人間関係タグが統合された文脈タグ群を用いて推薦アイテムの順位付けを行う。また、本実施形態のアイテム推薦装置は、画像認識処理により人物群の中の中心人物主人公)と推定される人物を選択し、この選択した人物の属性を、ユーザDB104に格納されたユーザ情報の代わりに用いる。これにより、ユーザDB104を予め用意できない応用に適用できるようになるほか、人間関係に応じたアイテムを推薦できるようになる。なお、このような機能追加は、第2実施形態のアイテム推薦装置に対して行ってもよい。この場合、例えば、人間関係タグに相当する情報が文脈ベクトルの次元の一部として組み込まれる。

0114

本実施形態のアイテム推薦装置は、例えば、街中に設置されたインタラクティブ型の案内板などを用いたアイテム推薦の用途において有効である。例えばグループで近くのレストランを探すために案内板を利用しようとしたとする。グループの中心人物が案内板に対して音声による自然言語要求を行う。この際、案内板に内蔵されたカメラによりグループを構成する人物群を撮影し、その画像を解析(画像認識処理)することでグループの人間関係を表す人間関係タグを生成して、推薦アイテムの順位付けに利用する。これにより、グループがファミリーであればファミリー向けのレストランを推薦することができ、グループがカップルであればカップル向けのレストランを推薦することができる。また、人物群を撮影した画像から選択された中心人物の属性を、ユーザ情報の代わりに利用することができるので、街中の案内板のように、不特定多数の人が利用することが想定されるためにユーザDB104を予め用意できない場合でも、精度のよいアイテム推薦を実現できる。

0115

以下、第1実施形態との差分について説明する。図19は、第3実施形態のアイテム推薦装置の構成例を示すブロック図である。本実施形態のアイテム推薦装置は、図19に示すように、第1実施形態の文脈認識型推薦エンジン20に代えて、文脈認識型推薦エンジン20Bを備える。また、本実施形態のアイテム推薦装置は、画像解析エンジン30(人間関係情報生成部)と、統合エンジン40(統合部)とをさらに備える。なお、第1実施形態で候補アイテムの順位付けに用いたユーザDB104は、本実施形態では設けられていない。

0116

文脈認識型推薦エンジン20Bの内部には、第1実施形態で説明した順位付け器22に代えて順位付け器22Bが設けられている。順位付け器22Bは、第1実施形態で説明した文脈タグ群D4に代えて人間関係付き文脈タグ群D15、ユーザDB104から抽出するユーザ情報に代えて主人公属性D14をそれぞれ用いるが、学習および予測の処理自体は第1実施形態の順位付け器22と同様である。

0117

画像解析エンジン30は、人物群を撮像した画像D11を入力として受け取り、画像D11に対して公知の画像認識処理を行うことで人物属性群D12を生成する。人物属性群D12は、画像D11から検出された各人物の属性の集合である。また、画像解析エンジン30は、生成した人物属性群D12を予め定めた人間関係推定ルール110と照合することで、人間関係タグD13(人間関係情報)を生成し出力する。また、画像解析エンジン30は、画像D11から検出された人物の中でグループの中心人物(主人公)と推定される人物を選択し、その人物の属性を主人公属性D14として出力する。画像解析エンジン30は、これらの機能を実現するために、人物属性推定器31とグループ属性推定器32とを内部に備える。

0118

統合エンジン40は、意味解析エンジン10により生成された文脈タグ群D4と、画像解析エンジン30により生成された人間関係タグD13とを入力として受け取り、人間関係タグD13を文脈タグ群D4に統合して人間関係付き文脈タグ群D15を生成し出力する。統合エンジン40は、人間関係付き文脈タグ群D15を生成するために、タグ統合器41を内部に備える。

0119

以下では、人物属性推定器31、グループ属性推定器32およびタグ統合器41による処理の具体例を説明する。

0120

まず、人物属性推定器31について説明する。図20は、人物属性推定器31による処理手順の一例を示すフローチャートである。人物属性推定器31は内部に画像認識器具備しており、例えば以下のステップS701〜ステップS706の処理により、画像D11から人物属性群D12を生成して出力する。

0121

ステップS701:人物属性推定器31は、画像D11から人物の顔領域をすべて検出する。画像から人物の顔領域を検出する技術は広く知られているため、詳細な説明は省略する。

0122

ステップS702:人物属性推定器31は、ステップS701で検出された顔領域を1つ取り出す。

0123

ステップS703:人物属性推定器31は、ステップS702で取り出した顔領域の特徴量をもとに、人物の属性(例えば年齢と性別)を推定する。ただし、ここでは推定された年齢の10未満は切り捨てて、0(10未満),10(10〜19歳),20(20〜29歳),・・・,といった情報を出力するものとする。以下ではこれを年代と呼ぶ。顔領域の特徴量から人物の年齢を推定する技術としては、例えば、特開2014−153815号公報に記載されている技術を用いることができる。また、ここでは人物の属性として年代や性別を推定する例を想定するが、年代や性別以外にも、例えば特開2012−3623号公報に記載されているような様々な属性を利用することができる。

0124

ステップS704:人物属性推定器31は、ステップS703で推定した人物の属性情報を、ステップS702で取り出した顔領域の座標情報とともに出力バッファに追加する。

0125

ステップS705:人物属性推定器31は、画像D11から検出したすべての顔領域を取り出したか否かを判定する。そして、判定の結果がYesであればステップS706に進み、NoであればステップS702に戻る。

0126

ステップS706:人物属性推定器31は、出力バッファ内のすべての属性情報と座標情報とのペアを人物属性群D12として出力する。

0127

次に、グループ属性推定器32について説明する。グループ属性推定器32は、入力された人物属性群D12に対して人間関係推定ルール110を適用することで、画像D11に含まれる人物群の人間関係を推定し、推定した人間関係を表す人間関係タグD13を生成して出力する。また、グループ属性推定器32は、画像D11に含まれる人物群の中から主人公を推定し、推定した主人公の属性情報を人物属性群D12から取り出して主人公属性D14として出力する。グループ属性推定器32が人間関係タグD13を生成して出力する処理を人間関係推定処理と呼び、主人公属性D14を出力する処理を主人公推定処理と呼ぶ。主人公属性D14は、第1実施形態でユーザDB104から取り出したユーザ情報の代わりとなるものである。

0128

まず、人間関係推定処理について説明する。人間関係推定処理で用いる人間関係推定ルール110の例を以下に示す。矢印の元がマッチングルールであり、矢印の先が人間関係タグD13である。
10歳未満の人物が含まれている → 子連れ
20代以上のが1人ずつ含まれ、かつ年代差が20以下である →カップル
20代以上の男女が1人ずつと10歳未満の人物とが含まれている → ファミリー

0129

人間関係推定処理では、このように予め定められた人間関係推定ルール110を人物属性群D12に対して順に適用し、マッチした段階で該当する人間関係タグD13を出力する。したがって、人間関係タグD13は1種類のみ出力される。

0130

次に、主人公推定処理について説明する。本実施形態では、画像D11から検出された顔領域が最も大きい人物を主人公と推定する。具体的には、人物属性群D12に含まれる顔領域の座標情報から顔領域の大きさを判断し、顔領域の大きさが最大の人物を選択してこれを主人公とする。また、画像D11から検出された顔領域が画像D11の中心に最も近い位置にある人物を主人公と推定するようにしてもよい。この場合は、人物属性群D12に含まれる顔領域の座標情報から画像D11中の顔領域の位置を判断し、顔領域の位置が画像D11の中心に最も近い位置にある人物を選択してこれを主人公とする。そして、このように特定された主人公の属性(例えば年代や性別)を主人公属性D14として出力する。

0131

また、上述したインタラクティブ型の案内板のように、音声を用いて自然言語要求D1を入力する適用例では、口唇領域動静判定に基づいて検出された発話者を主人公とする方法もある。口唇領域の動静判定には、例えば、下記の参考文献4に記載された方法を用いることができる。例えば、口の開きごとに基準画像を用意しておき、画像D11から検出された顔領域の各フレームに対して、Haar-Like特徴を用いたAdaBoost法を用いて口唇領域を検出する。そして、各フレームの口唇領域について、基準画像をもとに口の開き方を識別し、フレーム間で口の開き方が異なっている場合に、口唇領域に動きがあると判定する。
(参考文献4)規,宮崎大輔,古川亮,青山正人,日浦慎作,浅田尚紀、口唇領域の抽出と認識による発話検出情報処理学会研究報告、Vol.2011-CVIM-177,No.13,pp.1-8(2011)

0132

次に、タグ統合器41について説明する。タグ統合器41は、第1実施形態で説明した文脈タグ群D4と上述した人間関係タグD13とを統合して、人間関係付き文脈タグ群D15を生成する。より具体的には、人間関係タグD13を文脈タグ群D4の一部として組み込むことで、人間関係付き文脈タグ群D15を生成する。すなわち、図7に例示したように、文脈タグ群D4は、例えば、シーンに関するタグ、同伴者に関するタグ、目的に関するタグ、状況に関するタグ、および時間帯に関するタグを含む。タグ統合器41は、これらのうち、同伴者に関するタグとして人間関係タグD13を組み込んで、人間関係付き文脈タグ群D15を生成する。ただし、すでに文脈タグ群D4に同伴者に関するタグが含まれていた場合はそちらを優先し、人間関係タグD13を組み込まないことが望ましい。ユーザが明示的に要望した文脈を優先するのが自然な解決方法と考えられるためである。

0133

人間関係付き文脈タグ群D15は、文脈認識型推薦エンジン20Bの順位付け器22Bにおいて、推薦アイテムの順位付けを行うために用いられる。順位付け器22Bは、文脈タグ群D4の代わりに人間関係付き文脈タグ群D15、ユーザDB104から抽出するユーザ情報の代わりに主人公属性D14を入力として受け取り、第1実施形態と同様の処理により推薦アイテムの順位付けを行う。なお、利用ログDB105の文脈タグカラムでは、文脈タグ群D4の代わりに人間関係付き文脈タグ群D15を扱うものとする。

0134

以上、具体的な例を挙げながら詳細に説明したように、本実施形態のアイテム推薦装置によれば、第1実施形態のアイテム推薦装置と同様に、外部から観測可能な文脈情報だけでなく、自然言語要求D1および画像D11から推定される内面的な情報も利用して、アイテムの推薦をより精度よく行うことができる。

0135

また、本実施形態のアイテム推薦装置によれば、不特定多数のユーザが利用するためにユーザDB104を予め用意できない場合であっても、ユーザDB104から抽出するユーザ情報の代わりに主人公属性D14を用いることで、第1実施形態と同様に高精度なアイテムの推薦を実現することができる。

0136

補足説明
上述した実施形態のアイテム推薦装置における各処理部(例えば第1実施形態の形態素解析器11、検索タグ抽出器12、文脈タグ生成器13、候補抽出器21、順位付け器22)は、ハードウェア、またはハードウェアと協働して動作するソフトウェア(プログラム)での実装が可能である。上記の各処理部をソフトウェアで実装する場合、アイテム推薦装置は、例えば図21に示すように、CPU(Central Processing Unit)51などのプロセッサ回路、ROM(Read Only Memory)52やRAM(Random Access Memory)53などの記憶装置表示パネルや各種操作デバイスが接続される入出力I/F54、ネットワークに接続して通信を行う通信I/F55、各部を接続するバス56などを備えた、通常のコンピュータを利用したハードウェア構成とすることができる。

0137

上述した実施形態のアイテム推薦装置で実行されるプログラムは、例えば、インストール可能な形式または実行可能な形式のファイルCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスクFD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録されてコンピュータプログラムプロダクトとして提供される。

0138

また、上述したアイテム推薦装置で実行されるプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述した実施形態のアイテム推薦装置で実行されるプログラムをインターネットなどのネットワーク経由で提供または配布するように構成してもよい。また、上述した実施形態のアイテム推薦装置で実行されるプログラムを、ROM32等に予め組み込んで提供するように構成してもよい。

0139

上述した実施形態のアイテム推薦装置で実行されるプログラムは、アイテム推薦装置の各処理部(例えば第1実施形態の形態素解析器11、検索タグ抽出器12、文脈タグ生成器13、候補抽出器21、順位付け器22)を含むモジュール構成となっており、実際のハードウェアとしては、例えば、CPU51(プロセッサ回路)が上記記録媒体からプログラムを読み出して実行することにより、上述した各処理部がRAM53(主記憶)上にロードされ、上述した各処理部がRAM53(主記憶)上に生成されるようになっている。なお、上述した実施形態のアイテム推薦装置は、上述した各処理部の一部または全部を、ASIC(Application Specific IntegratedCircuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアを用いて実現することも可能である。

0140

以上、本発明の実施形態を説明したが、ここで説明した実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。ここで説明した新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。ここで説明した実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。

0141

10,10A意味解析エンジン
11形態素解析器
12検索タグ抽出器
13文脈タグ生成器
14形態素解析および構文解析器
15文脈ベクトル生成器
20,20A,20B 文脈認識型推薦エンジン
21 候補抽出器
22,22A,22B順位付け器
30画像解析エンジン
31人物属性推定器
32グループ属性推定器
40統合エンジン
41タグ統合器
101 検索タグ辞書
102 文脈タグ辞書
103店舗DB
104 ユーザDB
105,105A利用ログDB
110人間関係推定ルール
D1自然言語要求
D2 検索タグ群
D3候補アイテム群
D4 文脈タグ群
D5推薦アイテムリスト
D6 文脈ベクトル
D11 画像
D12 人物属性群
D13 人間関係タグ
D14主人公属性
D15 人間関係付き文脈タグ群

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ