(57)【要約】【課題】コンテンツの推薦に利用されるパラメータのデータサイズを低減すること。【解決手段】ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を備え、前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、情報処理装置が提供される。【選択図】図３
2013228947.tif 000002
【特許請求の範囲】
【請求項１】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得部と、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出部と、
を備え、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
端末装置。
【請求項２】
前記ユーザｋによるコンテンツの利用値が更新された場合に、更新後の利用値に基づいて前記ベクトルＵｋ’を更新するベクトル更新部をさらに備える、
請求項１に記載の端末装置。
【請求項３】
前記ユーザｋによるコンテンツの利用値が更新された場合に、前記更新後の利用値及び前記ベクトル更新部により更新されたベクトルＵｋ’を所定のサーバに提供する更新値提供部をさらに備え、
前記圧縮行列取得部は、前記所定のサーバから前記ベクトルＵｋ’を取得する、
請求項２に記載の端末装置。
【請求項４】
前記要素ベクトルＶj’が格納された記憶部をさらに備え、
前記推定値算出部は、前記記憶部に格納された前記要素ベクトルＶｊ’を用いて前記推定値ｒｋｊ’を算出する、
請求項１に記載の端末装置。
【請求項５】
前記行列Ｖは、特異値分解又は確率的行列分解を利用して前記積Ｖ'ＡＶ"ｔの形式に表現される、
請求項１に記載の端末装置。
【請求項６】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を備え、
前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、
情報処理装置。
【請求項７】
前記ベクトルＵｉ’と、コンテンツｊに対応する前記行列Ｖ'の要素ベクトルＶｊ’との積Ｕｉ’Ｖｊ’ｔ＝ｒｉｊ’に基づき、ユーザｉによるコンテンツｊの利用値を推定する利用値推定部をさらに備え、
前記利用値推定部により推定された利用値は、コンテンツの推薦に利用される、
請求項６に記載の情報処理装置。
【請求項８】
前記ベクトルＵｉ’をユーザｉの利用端末に提供する圧縮行列提供部をさらに備え、
前記ユーザｉの利用端末では、前記ユーザｉに対するコンテンツｊの推薦処理において、前記ベクトルＵｉ’と、コンテンツｊに対応する前記行列Ｖ'の要素ベクトルＶｊ’との積Ｕｉ’Ｖｊ’ｔ＝ｒｉｊ’が用いられる、
請求項６に記載の情報処理装置。
【請求項９】
前記ベクトルＵｉ’を保持する圧縮行列保持部をさらに備え、
ユーザｉに対するコンテンツｊの推薦処理において、前記ベクトルＵｉ’と、コンテンツｊに対応する前記行列Ｖ'の要素ベクトルＶｊ’との積Ｕｉ’Ｖｊ’ｔ＝ｒｉｊ’が用いられる、
請求項６に記載の情報処理装置。
【請求項１０】
ユーザｉによるコンテンツの利用値が更新された場合に、少なくともユーザｉの利用端末から送信される更新後の利用値を取得する更新値取得部と、
前記更新後の利用値に基づく前記ベクトルＵｉ’と、前記行列Ａと、前記行列Ｖ"との積Ｕｉ’Ａ−１Ｖ”ｔ＝Ｕｉ”により、前記行列Ｕの要素ベクトルＵｉを置き換えて当該行列Ｕを更新する行列更新部と、
をさらに備える、
請求項６に記載の情報処理装置。
【請求項１１】
前記更新値取得部は、前記更新後の利用値に基づいて前記ユーザｉの利用端末で算出された前記ベクトルＵｉ’を取得する、
請求項１０に記載の情報処理装置。
【請求項１２】
前記行列Ｖは、特異値分解又は確率的行列分解を利用して前記積Ｖ'ＡＶ"ｔの形式に表現される、
請求項６に記載の端末装置。
【請求項１３】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を有する、情報処理装置と；
前記情報処理装置から、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得部と、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出部と、
を有する、端末装置と；
を含み、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
推薦システム。
【請求項１４】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得するステップと、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出するステップと、
を含み、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
情報処理方法。
【請求項１５】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得機能と、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出機能と、
をコンピュータに実現させるためのプログラムであり、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
プログラム。
【請求項１６】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算するステップを含み、
前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、
情報処理方法。
【請求項１７】
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算機能をコンピュータに実現させるためのプログラムであり、
前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、端末装置、情報処理装置、推薦システム、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ネットワークを利用したビジネスが急拡大している。例えば、ネットワーク上のオンラインストアで商品を購入するシステムは広く一般に利用されている。こうしたオンラインストアの多くには、ユーザに商品を推薦する仕組みが設けられている。例えば、ある商品の詳細情報をユーザが閲覧すると、その商品に関連する商品の情報が関連商品又は推薦商品としてユーザに提示される。
【０００３】
このような仕組みは、例えば、下記の特許文献１に記載された協調フィルタリング方法などを利用して実現される。この協調フィルタリング方法は、嗜好の似たユーザの購入履歴などを利用して商品を推薦する方法である。また、推薦先となるユーザの購入履歴などを利用して商品を推薦するコンテンツベースフィルタリング方法も知られている。最近では、こうした推薦技術は、商品に限らず、様々なコンテンツの推薦に利用されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１６７９０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記のようなコンテンツの推薦を実現するには、ユーザが利用する端末装置と、ユーザの利用履歴などを解析するサーバ装置との間の連携が必要になる。まず、サーバ装置が端末装置からコンテンツの利用履歴などを収集する。このとき、端末装置とサーバ装置との間で通信が発生する。次いで、サーバ装置は、端末装置から収集した利用履歴を用いてコンテンツ推薦用のアルゴリズムを実行し、推薦するコンテンツのリストを生成する。このリストは、サーバ装置から端末装置へと送信される。そして、端末装置は、サーバ装置から受信したリストをディスプレイなどに表示してユーザに提示する。
【０００６】
通信環境が良好な場合、上記の連携方法を用いてコンテンツの推薦を実現することが可能になる。しかし、何らかの事情で端末装置とサーバ装置との間で通信が途絶えてしまった場合、コンテンツの推薦サービスが利用できなくなってしまう。また、通信環境が悪化したり、もともと通信帯域の幅が狭かったりすると、コンテンツの推薦リストがユーザに提示されるまでに長い時間を要してしまう。さらに、上記の連携方法を適用すると、端末装置からサーバ装置へのアクセスが集中してしまう傾向もある。
【０００７】
そのため、通信量や通信頻度を減らしたり、ある程度は端末装置単独でコンテンツの推薦サービスを提供できるようにしたり、サーバ装置における演算負荷を低減できるようにしたりする工夫が求められている。その解決方法として、例えば、端末装置とサーバ装置との間でコンテンツの推薦に用いるパラメータを共有する方法などが考えられる。この方法を利用すると、定期的にパラメータを更新する必要はあるが、更新までの期間は、端末装置がコンテンツ推薦用のアルゴリズムを実行することにより、端末装置単独でコンテンツの推薦サービスを提供することが可能になる。
【０００８】
また、ユーザの利用履歴に関するパラメータについては端末装置自身が更新処理を実行することで利用履歴の変化にも対応することが可能になる。しかしながら、多くの場合、端末装置の演算能力は低く、さらには記憶容量も少ないため、端末装置が、コンテンツの推薦に用いるパラメータを全て保持することや、全てのパラメータを利用してコンテンツ推薦用のアルゴリズムを実行することは難しい。
【０００９】
そこで、本技術は、上記のような事情を受けて考案されたものであり、コンテンツの推薦に利用されるパラメータのデータサイズを低減することが可能な、新規かつ改良された端末装置、情報処理装置、推薦システム、情報処理方法、及びプログラムを提供することを意図している。
【課題を解決するための手段】
【００１０】
本技術のある観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得部と、前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出部と、を備え、前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、端末装置が提供される。
【００１１】
また、本技術の別の観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を備え、前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、情報処理装置が提供される。
【００１２】
また、本技術の別の観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を有する、情報処理装置と；前記情報処理装置から、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得部と、前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出部と、を有する、端末装置と；を含み、前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、推薦システムが提供される。
【００１３】
また、本技術の別の観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得するステップと、前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出するステップと、を含み、前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、情報処理方法が提供される。
【００１４】
また、本技術の別の観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得機能と、前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出機能と、をコンピュータに実現させるためのプログラムであり、前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、プログラムが提供される。
【００１５】
また、本技術の別の観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算するステップを含み、前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、情報処理方法が提供される。
【００１６】
また、本技術の別の観点によれば、ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算機能をコンピュータに実現させるためのプログラムであり、前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、プログラムが提供される。
【発明の効果】
【００１７】
以上説明したように本技術によれば、コンテンツの推薦に利用されるパラメータのデータサイズを低減することが可能になる。
【図面の簡単な説明】
【００１８】
【図１】本技術の一実施形態に係る推薦システムのシステム構成について説明するための説明図である。
【図２】同実施形態に係る端末装置の機能構成について説明するための説明図である。
【図３】同実施形態に係るサーバ装置の機能構成について説明するための説明図である。
【図４】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図５】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図６】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図７】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図８】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図９】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図１０】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図１１】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図１２】同実施形態に係るサーバ装置の動作について説明するための説明図である。
【図１３】同実施形態に係る端末装置の動作について説明するための説明図である。
【図１４】同実施形態に係る端末装置及びサーバ装置の機能を実現することが可能なハードウェア構成について説明するための説明図である。
【発明を実施するための形態】
【００１９】
以下に添付図面を参照しながら、本技術に係る好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２０】
［説明の流れについて］
ここで、以下に記載する説明の流れについて簡単に述べる。
【００２１】
まず、図１〜図３を参照しながら、本実施形態に係るシステムの構成について説明する。次いで、図４〜図１３を参照しながら、本実施形態に係るシステムの動作について説明する。次いで、図１４を参照しながら、本実施形態に係る端末装置１０及びサーバ装置２０の機能を実現することが可能なハードウェア構成について説明する。最後に、同実施形態の技術的思想について纏め、当該技術的思想から得られる作用効果について簡単に説明する。
【００２２】
（説明項目）
１：システムの構成
１−１：全体構成
１−２：端末装置１０の機能構成
１−３：サーバ装置２０の機能構成
２：システムの動作
２−１：行列分解方式について
２−２：パラメータ圧縮方式について
３：ハードウェア構成例
４：まとめ
【００２３】
＜１：システムの構成＞
まず、本実施形態に係る推薦システムのシステム構成について説明する。
【００２４】
［１−１：全体構成］
図１に示すように、本実施形態に係る推薦システムは、端末装置１０と、サーバ装置２０とにより構成される。端末装置１０としては、携帯電話、携帯情報端末、パーソナルコンピュータの他、例えば、ゲーム機、情報家電、カーナビゲーションシステム、撮像装置、録画再生装置、テレビジョン受像機、セットトップボックスなど、様々な情報処理装置が利用可能である。一方、サーバ装置２０としては、単独の情報処理装置、ネットワークで接続された複数台の情報処理装置群、クラウドコンピューティングシステムなどが利用可能である。ここではシステム構成の一例を紹介するが、本実施形態に係る技術の適用範囲はこれに限定されない。以下、端末装置１０、及びサーバ装置２０の構成について、それぞれ説明する。
【００２５】
［１−２：端末装置１０の機能構成］
まず、図２を参照しながら、端末装置１０の機能構成について説明する。図２は、端末装置１０の機能構成について説明するための説明図である。
【００２６】
図２に示すように、端末装置１０は、主に、入力部１０１と、通信部１０２と、演算部１０３と、記憶部１０４と、推薦部１０５と、出力部１０６とにより構成される。
【００２７】
入力部１０１は、ユーザが情報を入力するために用いる入力デバイスである。入力部１０１としては、例えば、キーボード、マウス、タッチパッド、タッチセンサ、タッチパネル、トラックボール、リモートコントローラ、マイク、カメラなどが利用可能である。ユーザがコンテンツを利用する際に入力部１０１に入力された情報は、利用履歴として通信部１０２及び演算部１０３に入力される。
【００２８】
通信部１０２は、サーバ装置２０と通信するための通信デバイスである。なお、端末装置１０とサーバ装置２０との間の通信は、有線通信であってもよいし、無線通信であってもよい。例えば、通信部１０２は、コンテンツの利用履歴に関する情報をサーバ装置２０に送信する。なお、通信部１０２は、コンテンツの利用履歴に関する情報と共に、演算部１０３による演算結果をサーバ装置２０に送信するように構成されていてもよい。また、通信部１０２は、コンテンツの推薦に利用するパラメータをサーバ装置２０から受信する。サーバ装置２０から受信したパラメータは、演算部１０３に入力される。
【００２９】
演算部１０３は、通信部１０２を介してサーバ装置２０から受信したパラメータを記憶部１０４に格納する。また、演算部１０３は、記憶部１０４に格納されたパタメータを利用して未利用のコンテンツに関する利用値（後述）を推定する。演算部１０３による利用値の推定結果は、推薦部１０５に入力される。推薦部１０５は、未利用のコンテンツに関する利用値の推定結果に基づいて推薦すべきコンテンツのリスト（以下、推薦リスト）を生成する。そして、推薦部１０５は、出力部１０６を制御して推薦リストの内容をユーザに提示する。
【００３０】
出力部１０６としては、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）やＥＬＤ（Ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）ディスプレイなどの表示デバイス、或いは、スピーカやヘッドホンなどの音声出力デバイスが利用可能である。また、記憶部１０４としては、例えば、磁気記録デバイス、光記録デバイス、光磁気記録デバイス、半導体記録デバイスなどが利用可能である。また、記憶部１０４は、端末装置１０から着脱可能なデバイスであってもよい。
【００３１】
以上、端末装置１０の機能構成について説明した。
【００３２】
［１−３：サーバ装置２０の機能構成］
次に、図３を参照しながら、サーバ装置２０の機能構成について説明する。図３は、サーバ装置２０の機能構成について説明するための説明図である。
【００３３】
図３に示すように、サーバ装置３０は、主に、通信部２０１と、演算部２０２と、記憶部２０３とにより構成される。
【００３４】
通信部２０１は、端末装置１０と通信するための通信デバイスである。なお、端末装置１０とサーバ装置２０との間の通信は、有線通信であってもよいし、無線通信であってもよい。例えば、通信部２０１は、コンテンツの利用履歴に関する情報などを端末装置１０から受信する。コンテンツの利用履歴に関する情報は、通信部２０１から演算部２０２へと入力される。また、通信部２０１は、コンテンツの推薦に利用するパラメータを端末装置１０に送信する。
【００３５】
演算部２０２は、通信部２０１を介して取得したコンテンツの利用履歴に基づいてコンテンツの推薦に利用するパラメータを更新する。また、演算部２０２は、更新後のパラメータを記憶部２０３に格納する。さらに、演算部２０２は、通信部２０１を介して端末装置１０へと送信するパタメータを圧縮する。この圧縮方法については後述する。
【００３６】
以上、サーバ装置２０の機能構成について説明した。
【００３７】
上記のように、本実施形態に係る推薦システムは、端末装置１０からサーバ装置２０へとコンテンツの利用履歴などの情報を送信する工程と、サーバ装置２０から端末装置１０へとパラメータを送信する工程とを実行する機能を有する。但し、後述するように、端末装置１０とサーバ装置２０との間で送受信されるパラメータは所定の方法で圧縮される。そのため、通信負荷の低減、端末装置１０における演算負荷の低減、端末装置１０及びサーバ装置２０における記憶容量の低減に寄与する。以下では、本実施形態に係る推薦システムの動作に沿って、パラメータの圧縮方法について詳細に説明する。
【００３８】
＜２：システムの動作＞
以下、本実施形態に係る推薦システムの動作について説明する。
【００３９】
本実施形態に係る推薦システムは、行列分解によるコンテンツ推薦技術（以下、行列分解方式）を採用する。行列分解方式の特徴は、あるユーザが、あるコンテンツを利用した利用履歴を示す利用値を要素とする行列（以下、利用値行列Ｒ；図４を参照）をユーザの区別に依存する行列（以下、ユーザ行列Ｕ）と、コンテンツの区別に依存する行列（以下、コンテンツ行列Ｖ）との積ＵＶｔに分解（図５を参照）する点にある。
【００４０】
［２−１：行列分解方式について］
例えば、ユーザｉによるコンテンツｊの利用履歴が変化した場合、ユーザｉの端末装置１０は、ユーザｉによるコンテンツｊの利用履歴を示す利用値ｒｉｊをサーバ装置２０へと送信する。利用値ｒｉｊとしては、例えば、コンテンツｊに対してユーザｉが付した評価スコア（５段階評価など）などが利用される。もちろん、購入履歴や、詳細情報の閲覧履歴などを表すスコアを利用値として利用することも可能である。なお、利用値ｒｉｊは、０〜１の実数値に正規化されているとする。
【００４１】
サーバ装置２０には、各ユーザの端末装置１０から利用値が集められる。上記の利用値行列Ｒは、利用値ｒｉｊをｉ行目ｊ列目の要素に持つ行列である。なお、ユーザ毎に利用するコンテンツが異なることから、利用値行列Ｒは、図４に示すように疎な行列となる。例えば、ユーザ数がＮ、コンテンツ数がＭの場合、利用値行列Ｒのサイズは、Ｎ×Ｍとなる。図４に示した利用値行列Ｒの空白欄は、該当するユーザが未利用のコンテンツに対応する。コンテンツ推薦アルゴリズムは、この空白欄に入るであろう利用値を予測し、予測値が大きい要素に対応するコンテンツを推薦リストに追加するのである。
【００４２】
行列分解方式の場合、利用値行列Ｒは、図５に示すように、ランクＤの行列Ｕ及びＶに分解される。具体的には、下記の式（１）に示すように、Ｎ×Ｄの行列Ｕと、Ｍ×Ｄの行列Ｖの積ＵＶｔで利用値行列Ｒが近似的に表現される（但し、添字のｔは行列の転置を表す。）。行列Ｕのｉ行目に位置するベクトルＵｉは、ユーザｉの嗜好を表すベクトル（以下、ユーザベクトル）である。一方、行列Ｖのｊ行目に位置するベクトルＶｊは、コンテンツｊに関するベクトル（以下、コンテンツベクトル）である。行列分解方式に係るコンテンツ推薦アルゴリズムは、ｉ行目ｊ列目の要素が未利用であった場合、下記の式（２）に示すようにして利用値ｒｉｊを推定する。
【００４３】
Ｒ≒ＵＶｔ
…（１）
ｒｉｊ←ＵｉＶｊｔ
…（２）
【００４４】
上記の行列Ｕ及びＶは、所定の期間毎に更新される。行列Ｕ及びＶの更新方法については、例えば、「Ｙ．  Ｊ．  Ｌｉｍ  ａｎｄ  Ｙ．  Ｗ．  Ｔｅｈ，  “Ｖａｒｉａｔｉｏｎａｌ  Ｂａｙｅｓｉａｎ  ａｐｐｒｏａｃｈ  ｔｏ  ｍｏｖｉｅ  ｒａｔｉｎｇ  ｐｒｅｄｉｃｔｉｏｎ”．  Ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＫＤＤ  Ｃｕｐ  ａｎｄ  Ｗｏｒｋｓｈｏｐ，  ２００７．」「Ｒｕｓｌａｎ  Ｓａｌａｋｈｕｔｄｉｎｏｖ  ａｎｄ  Ａｎｄｒｉｙ  Ｍｎｉｈ，  “Ｐｒｏｂａｂｉｌｉｓｔｉｃ  ｍａｔｒｉｘ  ｆａｃｔｏｒｉｚａｔｉｏｎ”．  Ｉｎ  Ａｄｖａｎｃｅｓ  ｉｎ  Ｎｅｕｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ，  ｖｏｌｕｍｅ  ２０，  ２００８．」などが参考になる。
【００４５】
（パラメータの更新処理）
具体的には、図６に示すような流れに沿ってサーバ装置２０によりパラメータ（行列Ｕ及びＶなど）の更新処理が実行される。
【００４６】
図６に示すように、サーバ装置２０は、Ｕ及びＶの更新が収束するまで、次の処理を繰り返し実行する（更新ループ）。まず、サーバ装置２０は、インデックスｉを１ずつインクリメントさせながら、ステップＳ１１の処理を繰り返し実行する。ステップＳ１１において、サーバ装置２０は、ベクトルＵｉ以外のパラメータ（例えば、Ｖなど）を固定してＵｉを更新する（Ｓ１１）。
【００４７】
ｉ＝１〜ＮについてステップＳ１１の処理が終了すると、サーバ装置２０は、インデックスｊを１ずつインクリメントさせながら、ステップＳ１２の処理を繰り返し実行する。ステップＳ１２において、サーバ装置２０は、ベクトルＶｊ以外のパラメータ（例えば、Ｕなど）を固定してＶｊを更新する（Ｓ１２）。ｊ＝１〜ＭについてステップＳ１１の処理が終了すると、サーバ装置２０は、Ｕ及びＶの更新が収束したか判定し、収束している場合にはパラメータの更新処理を終了する。
【００４８】
（コンテンツの推薦処理）
サーバ装置２０においてパラメータが更新されると、更新後のパラメータが各ユーザの端末装置１０に送信される。具体的には、ユーザｉの端末装置１０には、更新後のパラメータとしてユーザベクトルＵｉ及び行列Ｖが送信される。更新後のパラメータを受信した端末装置１０は、図７に示すような流れに沿ってコンテンツの推薦処理を実行する。
【００４９】
図７に示すように、まず、端末装置１０は、未使用のコンテンツについて利用値を予測する（Ｓ２１）。利用値の予測は、上記の式（２）に基づいて実行される。次いで、端末装置１０は、ステップＳ２１で予測された利用値の降順に、未利用のコンテンツをソートする（Ｓ２２）。次いで、端末装置１０は、利用値が高い順に所定数の未利用のコンテンツを抽出して推薦リストとしてユーザに提示し（Ｓ２３）、処理を終了する。
【００５０】
（ユーザベクトルの更新処理）
また、新たなコンテンツが利用された場合、端末装置１０は、図８に示すような流れに沿ってユーザベクトルＵｉを更新する。このとき、コンテンツベクトルＶは更新されない。図８に示すように、端末装置１０は、Ｕｉの更新が収束するまでステップＳ３１の処理を繰り返し実行する。ステップＳ３１において、端末装置１０は、Ｕｉ以外のパラメータ（Ｖなど）を固定してＵｉを更新する（Ｓ３１）。その後、端末装置１０は、Ｕｉの更新が収束したか否かを判定し、収束した場合には処理を終了する。
【００５１】
このように、ユーザベクトルを端末装置１０で更新することにより、サーバ装置２０にアクセスできない期間でも最新の利用履歴に基づいたコンテンツの推薦が可能になる。また、端末装置１０にてユーザベクトルが更新されることから、端末装置１０とサーバ装置２０との間でパラメータを送受信する頻度を低減させることが可能になり、通信負荷の低減にも寄与する。但し、ユーザベクトルの更新に要する演算負荷はランクＤの２乗に比例する。また、通信の頻度が低減しても、Ｕｉ及びＶのデータサイズは依然大きい。そこで、パラメータを圧縮する方式（以下、パラメータ圧縮方式）を提案する。
【００５２】
［２−２：パラメータ圧縮方式について］
パラメータ圧縮方式は、図９に示すように、行列Ｖをさらに分解する方式である。分解方法としては、例えば、特異値分解や確率的行列分解などの方法が利用可能である。ここでは一例として、特異値分解を利用する方法を紹介する。
【００５３】
まず、サーバ装置２０は、上記の式（１）に基づいて利用値行列Ｒから行列Ｕ及びＶを得る。次いで、サーバ装置２０は、図９に示すように、行列Ｖを特異値分解する。このとき、分解後の行列のランクｄ（ｄ＜Ｄ）は、任意に設定可能である。但し、ランクｄの値が小さいほど、端末装置１０の演算負荷が低減する。また、ランクｄの値が小さいほど、端末装置１０とサーバ装置２０との間の通信負荷が低減する。一方、ランクｄの値が大きいほど、近似の精度が高まる。従って、端末装置１０の演算能力、通信環境、及び推薦に求められる精度に応じてランクｄの値は適切に設定されることが望ましい。
【００５４】
例えば、端末装置１０の機器情報に応じてランクｄの値が自動的に切り替わる仕組みを推薦システムに設けることも考えられる。具体的には、演算能力の高いパーソナルコンピュータなどの場合にはランクｄの値を所定の高い値にし、演算能力の低い携帯情報端末などの場合にはランクｄの値を所定の低い値に設定する仕組みなどが考えられる。その他にも、端末装置１０の記憶容量に応じてランクｄが設定される仕組みなども考えられる。
【００５５】
また、通信環境に応じてランクｄの値が自動的に切り替わる仕組みを推薦システムに設けることも考えられる。具体的には、端末装置１０が低速な通信回線に接続している場合にはランクｄの値を所定の低い値にし、高速な通信回線に接続している場合にはランクｄの値を所定の高い値にする仕組みなどが考えられる。上記のような仕組みを実現するためには、機器を判別したり、通信環境を判別したりする仕組みを設け、その判別結果に応じてサーバ装置２０がランクｄを自動調整する仕組みを追加すればよい。
【００５６】
ランクｄを設定すると、サーバ装置２０は、特異値の大きい順にｄランクを選択し、下記の式（３）に示すように行列分解を実行する（図９を参照）。下記の式（３）において、行列Ｖ'は、特異値の大きい順に選択されたｄ個の特異値に対応する左特異値ベクトルから成るＭ×ｄ行列である。また、行列Ａは、ｄ個の特異値から成るｄ次元対角行列である。また、行列Ｖ"は、ｄ個の特異値に対応する右特異値ベクトルから成るＤ×ｄ行列である。なお、ｄ＜Ｄの条件下において、下記の式（３）に示す行列分解は近似である。
【００５７】
Ｖ≒Ｖ'ＡＶ"ｔ
…（３）
【００５８】
上記のようにして行列Ｖを分解した後、サーバ装置２０は、下記の式（４）に基づいてユーザベクトルＵｉを圧縮する。図１０に示すように、下記の式（４）に基づく演算により、ランクＤのベクトルＵｉからランクｄのベクトルＵｉ’へとｄ／Ｄのサイズに圧縮される。なお、以下では、圧縮後のユーザベクトルＵｉ’を圧縮ユーザベクトルと呼ぶことにする。パラメータ圧縮方式においては、ユーザベクトルＵｉに代えて、圧縮ユーザベクトルＵｉ’がサーバ装置２０から端末装置１０へと送信される。さらに、利用値の推定にも圧縮ユーザベクトルＵｉ’が利用される。
【００５９】
Ｕｉ’←ＵｉＶ”Ａ
…（４）
【００６０】
上記のように、ユーザベクトルＵｉが圧縮されることで、サーバ装置２０から端末装置１０へと送信されるパラメータのデータサイズが低減される。また、サーバ装置２０及び端末装置１０においてパラメータを保持するために確保すべき記憶容量を抑制することができる。さらに、端末装置１０における演算負荷が低減される。
【００６１】
ここで、圧縮ユーザベクトルＵｉ’を利用した端末装置１０によるコンテンツの推薦処理について説明する。
【００６２】
圧縮ユーザベクトルＵｉ’を受信した端末装置１０は、未利用のコンテンツｊについて、下記の式（５）に基づいて利用値の推定値ｒｉｊ’を算出する。但し、Ｖｊ’は、行列Ｖ’を構成するｊ行目のベクトルである。下記の式（５）に上記の式（４）を代入すると、下記の式（６）のようになる。下記の式（６）に示すように、下記の式（５）に示した演算で得られる推定値ｒｉｊ’は、上記の式（２）に示した演算で得られる推定値ｒｉｊの近似値に他ならない。従って、端末装置１０は、推定値ｒｉｊを利用して推薦リストを生成した場合と同様に、推定値ｒｉｊ’を利用して推薦リストを生成し、コンテンツをユーザに推薦する。
【００６３】
ｒｉｊ’←Ｕｉ’Ｖｊ’ｔ
…（５）
ｒｉｊ’＝ＵｉＶ”ＡＶｊ’ｔ≒ＵｉＶｊｔ
…（６）
【００６４】
また、新しいコンテンツが利用された場合、端末装置１０は、行列Ｖ’を固定したままで、圧縮ユーザベクトルＵｉ’を更新する。更新処理についても、上述したユーザベクトルＵｉの更新処理と実質的に同じである。なお、この更新処理の計算量はベクトルのランクの２乗に比例する。そのため、ユーザベクトルＵｉを利用する更新処理の計算量に比べ、圧縮ユーザベクトルＵｉ’を利用する更新処理の計算量は、ｄ２／Ｄ２に低減される。また、サーバ装置２０にアクセスできない期間があっても、端末装置１０において最新の利用履歴に基づくコンテンツの推薦が可能になる。
【００６５】
また、端末装置１０は、利用履歴が変化した場合に、利用履歴の差分と、更新後の圧縮ユーザベクトルＵｉ’をサーバ装置２０に送信する。サーバ装置２０は、更新後の圧縮ユーザベクトルＵｉ’を下記の式（７）に従ってＤ次元のベクトルＵｉ”に変換する（図１１を参照）。サーバ装置２０は、現在の行列Ｕに含まれるベクトルＵｉとベクトルＵｉ”とを置き換え、行列Ｕを更新する。なお、ベクトルＵｉ”は、ユーザベクトルＵｉの近似である。そのため、行列Ｕの更新は短時間で収束することが期待される。
【００６６】
Ｕｉ”←Ｕｉ’Ａ−１Ｖ”ｔ
…（７）
【００６７】
その後、サーバ装置２０は、所定のタイミングで、最新の利用値行列Ｒに基づいて行列Ｕ及びＶを更新する。そして、サーバ装置２０は、更新後の行列Ｕ及びＶに基づく圧縮パタメータ（例えば、Ｕｉ’及びＶ’）を端末装置１０に送信する。
【００６８】
ところで、上記説明においては、利用履歴の更新があった場合に端末装置１０にて圧縮ユーザベクトルＵｉ’を更新する方法について述べた。しかし、通信環境が比較的良好な場合や、端末装置１０の演算能力が低い場合、圧縮ユーザベクトルＵｉ’の更新処理をサーバ装置２０にて実行するような仕組みに変形してもよい。この場合、処理の流れは図１２のようになる。
【００６９】
図１２に示すように、サーバ装置２０は、定期的な処理として、最新の利用値行列Ｒに基づく行列Ｕ及びＶの更新処理、及び行列Ｖの特異値分解を実行する（Ｓ１０１）。次いで、サーバ装置２０は、端末装置１０からパラメータの更新要求を受信したか否かを確認する（Ｓ１０２）。パラメータの更新要求を受信した場合、サーバ装置２０は、処理をステップＳ１０３に進める。一方、パラメータの更新要求を受信していない場合、サーバ装置２０は、処理をステップＳ１０１に進める。
【００７０】
処理をステップＳ１０３に進めた場合、サーバ装置２０は、端末装置１０から取得した利用履歴の差分に基づいて更新後の圧縮ユーザベクトルＵｉ’を算出する（Ｓ１０３）。次いで、サーバ装置２０は、圧縮ユーザベクトルＵｉ’を端末装置１０に送信する（更新されている場合にはＶ’も送信し（Ｓ１０４）、処理をステップＳ１０１に進める。
【００７１】
サーバ装置２０による上記の処理は繰り返し実行される。一方、この場合における端末装置１０の更新処理は図１３のようになる。
【００７２】
図１３に示すように、端末装置１０は、利用履歴が変化したか否かを判定する（Ｓ１１１）。利用履歴が変化した場合、端末装置１０は、処理をステップＳ１１２に進める。一方、利用履歴が変化していない場合、端末装置１０は、処理を再びステップＳ１１１に進める。処理をステップＳ１１２に進めた場合、端末装置１０は、利用履歴の差分をサーバ装置２０に送信する（Ｓ１１２）。
【００７３】
次いで、端末装置１０は、サーバ装置２０から更新後のパラメータを受信する（Ｓ１１３）。次いで、端末装置１０は、サーバ装置２０から受信した更新後のパラメータにより現在保持している圧縮ユーザベクトルＵｉ’を更新する（Ｓ１１４）。次いで、端末装置１０は、ユーザからコンテンツ推薦の要求を受けたか否かを判定する（Ｓ１１５）。要求を受けた場合、端末装置１０は、処理をステップＳ１１６に進める。一方、要求を受けていない場合、端末装置１０は、処理をステップＳ１１１に進める。
【００７４】
処理をステップＳ１１６に進めた場合、端末装置１０は、更新後のパラメータを利用して未利用のコンテンツの利用値を推定し、推定した利用値に基づいて推薦リストを生成する。そして、端末装置１０は、生成した推薦リストをユーザに提示する（Ｓ１１６）。推薦リストをユーザに提示した後、端末装置１０は、処理をステップＳ１１１に進める。
【００７５】
以上、本実施形態に係る推薦システムの動作について説明した。
【００７６】
（変形例：確率的行列分解の推定アルゴリズム）
上記の説明においては、特異値分解を利用するアルゴリズムについて述べたが、例えば、確率的行列分解を利用するアルゴリズムを適用することも可能である。ここでは、特異値分解の代わりに確率的行列分解を利用する方法について紹介する。
【００７７】
まず、ｈランク目（１≦ｈ≦Ｄ）の残差行列Ｒ（ｈ）＝（ｒｉｊ（ｈ））を下記の式（８）により定義する。但し、Ｉｉｊは、利用者行列Ｒのｉ行目ｊ列目の要素が既に利用されていれば１、未利用であれば０となる行列である。また、Ｕｉｋ及びＶｊｋは、それぞれＤ次元のベクトルＵｉ及びＶｊのｋ番目の要素である。
【００７８】
【数１】
2013228947.tif 000003
【００７９】
上記の残差行列Ｒ（ｈ）を行列Ｕのｈ列目の列ベクトルＵ・ｈと、行列Ｖのｈ列目の列ベクトルＶ・ｈとを利用して、正則化最小二乗法によりＲ（ｈ）＝Ｕ・ｈＶ・ｈｔと行列分解する。この処理をｈ＝１からＤまで順番に実行することにより、全体の行列分解（つまり、行列Ｕ及びＶの推定）を実行したことになる。なお、正則化パラメータはクロスバリデーションなどにより適切に設定されているものとする。このような方法を適用することで、確率的行列分解を利用することも可能である。
【００８０】
以上説明したように、本実施形態に係る推薦システムを利用すると、端末装置１０からコンテンツの推薦要求を受ける度にサーバ装置２０が端末装置１０と通信する必要がなくなり、定期的に少ない回数の通信だけで済むため、通信負荷が低減される。また、端末装置１０がサーバ装置２０と通信できない場合でも、更新後の利用履歴に基づくパラメータの更新を端末装置１０が実行できるため、最新の利用履歴に基づくコンテンツの推薦が可能になる。さらに、サーバ装置２０へのアクセス集中を緩和することができる。
【００８１】
さらに、パラメータ圧縮方式を採用することで、端末装置１０において低い演算負荷でパラメータの更新を実行することが可能になる。また、端末装置１０とサーバ装置２０との間で送受信されたパタメータのデータ量が削減されるため、通信負荷も低減される。また、パラメータの圧縮率（上記のランクｄに対応）を柔軟に変更することができるため、端末装置１０の性能や通信環境などに応じたパラメータの圧縮が可能になる。
【００８２】
＜３：ハードウェア構成例＞
上記の端末装置１０、サーバ装置２０が有する各構成要素の機能は、例えば、図１４に示す情報処理装置のハードウェア構成を用いて実現することが可能である。つまり、当該各構成要素の機能は、コンピュータプログラムを用いて図１４に示すハードウェアを制御することにより実現される。なお、このハードウェアの形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、ＰＨＳ、ＰＤＡ等の携帯情報端末、ゲーム機、又は種々の情報家電がこれに含まれる。但し、上記のＰＨＳは、Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍの略である。また、上記のＰＤＡは、Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔの略である。
【００８３】
図１４に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０と、を有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６と、を有する。但し、上記のＣＰＵは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略である。また、上記のＲＯＭは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略である。そして、上記のＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略である。
【００８４】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
【００８５】
これらの構成要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等が用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ（以下、リモコン）が用いられることもある。
【００８６】
出力部９１８としては、例えば、ＣＲＴ、ＬＣＤ、ＰＤＰ、又はＥＬＤ等のディスプレイ装置、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。但し、上記のＣＲＴは、Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅの略である。また、上記のＬＣＤは、Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙの略である。そして、上記のＰＤＰは、Ｐｌａｓｍａ  ＤｉｓｐｌａｙＰａｎｅｌの略である。さらに、上記のＥＬＤは、Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ  Ｄｉｓｐｌａｙの略である。
【００８７】
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ハードディスクドライブ（ＨＤＤ）等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。但し、上記のＨＤＤは、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略である。
【００８８】
ドライブ９２２は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８は、例えば、ＤＶＤメディア、Ｂｌｕ−ｒａｙメディア、ＨＤ  ＤＶＤメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体９２８は、例えば、非接触型ＩＣチップを搭載したＩＣカード、又は電子機器等であってもよい。但し、上記のＩＣは、Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略である。
【００８９】
接続ポート９２４は、例えば、ＵＳＢポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ、ＲＳ−２３２Ｃポート、又は光オーディオ端子等のような外部接続機器９３０を接続するためのポートである。外部接続機器９３０は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はＩＣレコーダ等である。但し、上記のＵＳＢは、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略である。また、上記のＳＣＳＩは、Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅの略である。
【００９０】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスであり、例えば、有線又は無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、又はＷＵＳＢ用の通信カード、光通信用のルータ、ＡＤＳＬ用のルータ、又は各種通信用のモデム等である。また、通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークにより構成され、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、可視光通信、放送、又は衛星通信等である。但し、上記のＬＡＮは、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略である。また、上記のＷＵＳＢは、Ｗｉｒｅｌｅｓｓ  ＵＳＢの略である。そして、上記のＡＤＳＬは、Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅの略である。
【００９１】
＜４：まとめ＞
最後に、本実施形態の技術的思想について簡単に纏める。以下に記載する技術的思想は、例えば、ＰＣ、携帯電話、携帯ゲーム機、携帯情報端末、情報家電、カーナビゲーションシステム等、種々の端末装置及び情報処理装置などに対して適用することができる。
【００９２】
上記の端末装置、情報処理装置、これらの装置を含む推薦システム、或いは、これらの装置及びシステムに関連する情報処理方法の構成は次のように表現することができる。かかる構成の適用は、コンテンツ推薦の際に演算量の削減に寄与する。また、圧縮行列Ｕｉ’だけを保持するように構成すれば、記憶容量を低減することが可能になる。さらに、圧縮行列Ｕｉ’をクライアントに送信する際の通信負荷を低減することも可能になる。
【００９３】
（１）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得部と、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出部と、
を備え、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
端末装置。
【００９４】
（２）
前記ユーザｋによるコンテンツの利用値が更新された場合に、更新後の利用値に基づいて前記ベクトルＵｋ’を更新するベクトル更新部をさらに備える、
上記（１）に記載の端末装置。
【００９５】
（３）
前記ユーザｋによるコンテンツの利用値が更新された場合に、前記更新後の利用値及び前記ベクトル更新部により更新されたベクトルＵｋ’を所定のサーバに提供する更新値提供部をさらに備え、
前記圧縮行列取得部は、前記所定のサーバから前記ベクトルＵｋ’を取得する、
上記（２）に記載の端末装置。
【００９６】
（４）
前記要素ベクトルＶj’が格納された記憶部をさらに備え、
前記推定値算出部は、前記記憶部に格納された前記要素ベクトルＶｊ’を用いて前記推定値ｒｋｊ’を算出する、
上記（１）〜（３）のいずれか１項に記載の端末装置。
【００９７】
（５）
前記行列Ｖは、特異値分解又は確率的行列分解を利用して前記積Ｖ'ＡＶ"ｔの形式に表現される、
上記（１）〜（４）のいずれか１項に記載の端末装置。
【００９８】
（６）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を備え、
前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、
情報処理装置。
【００９９】
（７）
前記ベクトルＵｉ’と、コンテンツｊに対応する前記行列Ｖ'の要素ベクトルＶｊ’との積Ｕｉ’Ｖｊ’ｔ＝ｒｉｊ’に基づき、ユーザｉによるコンテンツｊの利用値を推定する利用値推定部をさらに備え、
前記利用値推定部により推定された利用値は、コンテンツの推薦に利用される、
上記（６）に記載の情報処理装置。
【０１００】
（８）
前記ベクトルＵｉ’をユーザｉの利用端末に提供する圧縮行列提供部をさらに備え、
前記ユーザｉの利用端末では、前記ユーザｉに対するコンテンツｊの推薦処理において、前記ベクトルＵｉ’と、コンテンツｊに対応する前記行列Ｖ'の要素ベクトルＶｊ’との積Ｕｉ’Ｖｊ’ｔ＝ｒｉｊ’が用いられる、
上記（６）又は（７）に記載の情報処理装置。
【０１０１】
（９）
前記ベクトルＵｉ’を保持する圧縮行列保持部をさらに備え、
ユーザｉに対するコンテンツｊの推薦処理において、前記ベクトルＵｉ’と、コンテンツｊに対応する前記行列Ｖ'の要素ベクトルＶｊ’との積Ｕｉ’Ｖｊ’ｔ＝ｒｉｊ’が用いられる、
上記（６）又は（７）に記載の情報処理装置。
【０１０２】
（１０）
ユーザｉによるコンテンツの利用値が更新された場合に、少なくともユーザｉの利用端末から送信される更新後の利用値を取得する更新値取得部と、
前記更新後の利用値に基づく前記ベクトルＵｉ’と、前記行列Ａと、前記行列Ｖ"との積Ｕｉ’Ａ−１Ｖ”ｔ＝Ｕｉ”により、前記行列Ｕの要素ベクトルＵｉを置き換えて当該行列Ｕを更新する行列更新部と、
をさらに備える、
上記（６）〜（９）のいずれか１項に記載の情報処理装置。
【０１０３】
（１１）
前記更新値取得部は、前記更新後の利用値に基づいて前記ユーザｉの利用端末で算出された前記ベクトルＵｉ’を取得する、
上記（１０）に記載の情報処理装置。
【０１０４】
（１２）
前記行列Ｖは、特異値分解又は確率的行列分解を利用して前記積Ｖ'ＡＶ"ｔの形式に表現される、
上記（６）〜（１１）のいずれか１項に記載の端末装置。
【０１０５】
（１３）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算部を有する、情報処理装置と；
前記情報処理装置から、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得部と、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出部と、
を有する、端末装置と；
を含み、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
推薦システム。
【０１０６】
（１４）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得するステップと、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出するステップと、
を含み、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
情報処理方法。
【０１０７】
（１５）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｋ（１≦ｋ≦Ｎ）に対応する前記行列Ｕの要素ベクトルＵｋと、前記行列Ｖ"と、前記行列Ａとの積ＵｋＶ"ＡであるベクトルＵｋ’を取得する圧縮行列取得機能と、
前記ユーザｋによるコンテンツｊの利用値ｒｋｊに対する推定値ｒｋｊ’として、前記ベクトルＵｋ’と、コンテンツｊに対応する前記行列Ｖ’の要素ベクトルＶｊ’との積Ｕｋ’Ｖｊ’ｔを算出する推定値算出機能と、
をコンピュータに実現させるためのプログラムであり、
前記推定値ｒｋｊ’は、前記ユーザｋに対するコンテンツｊの推薦に利用される、
プログラム。
【０１０８】
（１６）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算するステップを含み、
前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、
情報処理方法。
【０１０９】
（１７）
ユーザｉ（ｉ＝１〜Ｎ）によるコンテンツｊ（ｊ＝１〜Ｍ）の利用値ｒｉｊを要素に持つ履歴行列Ｒが、Ｎ行Ｄ列の行列ＵとＭ行Ｄ列の行列Ｖとの積ＵＶｔで表現され、前記行列Ｖが、Ｍ行ｄ列（ｄ＜Ｄ）の行列Ｖ'と、ｄ行ｄ列の行列Ａと、Ｍ行ｄ列の行列Ｖ"との積Ｖ'ＡＶ"ｔで表現される場合に、ユーザｉに対応する前記行列Ｕの要素ベクトルＵｉと、前記行列Ｖ"と、前記行列Ａとの積ＵｉＶ"ＡであるベクトルＵｉ’を計算する圧縮行列計算機能をコンピュータに実現させるためのプログラムであり、
前記ベクトルＵｉ’は、前記ユーザｉに対するコンテンツの推薦処理に利用される、
プログラム。
【０１１０】
（１８）
上記いずれかのプログラムが記録された、コンピュータにより読み取り可能な記録媒体。
【０１１１】
（備考）
上記の通信部１０２は、圧縮行列取得部、更新値提供部の一例である。上記の演算部１０３は、推定値算出部、ベクトル更新部の一例である。上記のサーバ装置２０は、情報処理装置の一例である。上記の演算部２０２は、圧縮行列計算部、利用値推定部、行列更新部の一例である。上記の通信部２０１は、圧縮行列提供部、更新値取得部の一例である。上記の記憶部２０３は、圧縮行列保持部の一例である。
【０１１２】
以上、添付図面を参照しながら本技術に係る好適な実施形態について説明したが、本技術はここで開示した構成例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本技術の技術的範囲に属するものと了解される。
【符号の説明】
【０１１３】
１０      端末装置
１０１    入力部
１０２    通信部
１０３    演算部
１０４    記憶部
１０５    推薦部
１０６    出力部
２０      サーバ装置
２０１    通信部
２０２    演算部
２０３    記憶部
【図１】
2013228947.tif 000004
【図２】
2013228947.tif 000005
【図３】
2013228947.tif 000006
【図４】
2013228947.tif 000007
【図５】
2013228947.tif 000008
【図６】
2013228947.tif 000009
【図７】
2013228947.tif 000010
【図８】
2013228947.tif 000011
【図９】
2013228947.tif 000012
【図１０】
2013228947.tif 000013
【図１１】
2013228947.tif 000014
【図１２】
2013228947.tif 000015
【図１３】
2013228947.tif 000016
【図１４】
2013228947.tif 000017