(58)【調査した分野】(Int.Cl.,DB名)
前記入力データを入力した場合に出力する出力データが所定の分類の特徴情報を再現するノード間の結合係数を算出し、算出した結合係数をノード間に設定することで前記学習器を生成する生成部
をさらに備えることを特徴とする請求項1〜4のいずれか一つに記載の特定装置。
【発明を実施するための形態】
【0009】
以下に、本願に係る特定装置、特定方法及び特定プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る特定装置、特定方法及び特定プログラムが限定されるものではない。また、以下の実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0010】
〔1.特定処理〕
まず、
図1を用いて、実施形態に係る特定処理の一例について説明する。
図1は、実施形態に係る特定装置による特定処理の一例を示す説明図である。
図1の例では、特定装置100によって製品と共起する人物を特定する特定処理が行われる例を示す。
【0011】
特定装置100は、所定の分類の特徴情報を再現する学習器(例えば、オートエンコーダ)によって入力データの属する分類を特定するサーバ装置である。この点について
図1を用いて詳細に説明する。学習器Le
1〜Le
nは、所定の分類の特徴を学習したオートエンコーダである。具体的には、学習器Le
1〜Le
nは、入力データに対する演算結果を出力する複数のノード(例えば、ニューロン)を接続したDNN(Deep Neural Network)であって被写体が描出された画像を入力データとして入力した場合に入力データを再現する出力データ(例えば、再現データ)を出力するオートエンコーダである。この点について、
図2を用いて説明する。
図2は、オートエンコーダの一例を示す説明図である。学習器Le
2は、ノートパソコンの特徴を学習したオートエンコーダである。学習器Le
2は、ノートパソコンが描出された画像NPを入力データとして入力した場合に、ノートパソコンを再現する出力データREを出力する。
【0012】
例えば、学習器Le
2は、画像NPの各画素の画素値(例えば、グレースケールの8ビット値)を対応する入力ノードに入力し、各出力ノードが出力した値を取得する。また、学習器Le
2は、各出力ノードが出力した値を、各出力ノードと対応する位置の画素の画素値として画像を構成することで、出力データとなる画像を得る。ここで、オートエンコーダにおいては、入力ノードの数よりも中心部分のノードの数が少ないため、入力ノードに含まれる特徴のうち再現されない特徴が生じる。このため、オートエンコーダにある物体が描出された画像を入力した際に、かかる物体がうまく再現された場合(例えば、ノイズが入っていない画像が出力された場合等)は、かかる物体の特徴を良く学習していると判断できる。一方、学習器Le
3は、ノートパソコンの特徴を学習していないエンコーダであるため、
図2に示すように、ノートパソコンが描出された画像NPが入力データとして入力された場合は、画像をうまく再現することができずに、ビット欠け等のノイズが生じた画像を出力する恐れがある。
【0013】
なお、
図1の例では、学習器Le
1は、テレビの特徴を学習したオートエンコーダである。学習器Le
2は、ノートパソコンの特徴を学習したオートエンコーダである。学習器Le
nは、スマートフォンの特徴を学習したオートエンコーダである。
【0014】
また、
図1の例では、学習器Le
1〜Le
nは、入力層と、多段のノード群によって形成される中間層と、出力層とから構成される。ここで、中間層は、
図1に示すように、次元数が最も少ない層を中心に含む。
【0015】
特定装置100は、まず、入力データを受け付ける(ステップS1)。ここで、入力データは、例えば、特定装置100によって分類を特定する特定対象の未知データである。
図1の例では、入力データP1は、ノートパソコンが描出された画像である。なお、画像には、被写体に加えて背景などが描出されてもよい。
【0016】
続いて、特定装置100は、学習器Le
1〜Le
nを用いて入力データP1に描出された被写体が属する分類を特定する。具体的には、特定装置100は、まず、入力データP1を学習器Le
1〜Le
nに入力する(ステップS2)。なお、
図1では、説明を簡単にするため、3つの学習器Le
1、Le
2およびLe
nに入力データP1を入力する例を示すが実際には各種の異なる分類の特徴を学習した学習器であって予め用意された各学習器に入力データP1を入力する。これにより、
図1の例では、学習器Le
1は、出力データOD
1を出力する。学習器Le
2は、出力データOD
2を出力する。学習器Le
nは、出力データOD
nを出力する。
【0017】
そして、特定装置100は、学習器Le
1〜Le
nに対して、入力データP1を入力した場合に出力する出力データOD
1〜OD
nの入力データP1に対する再現誤差を算出する(ステップS3)。ここで、再現誤差は、入力データに対する出力データの再現度を示す指標である。例えば、特定装置100は、入力データである画像に含まれる各画素のグレースケールの値を対応する入力ノードに入力し、各出力ノードが出力した値を各画素のグレースケールの値とする。また、特定装置100は、各画素に対応する入力ノードに入力した値と出力ノードが出力した値との差分の累乗値をそれぞれ算出する。そして、特定装置100は、各画素について算出した累乗値の総和を平均誤差の値とする。
【0018】
すなわち、再現誤差は、出力データが入力データを正確に再現しているほど低くなる。
図1の例では、特定装置100は、出力データOD
1の再現誤差を「50」と算出する。また、特定装置100は、出力データOD
2の再現誤差を「0」と算出する。また、特定装置100は、出力データOD
nの再現誤差を「90」と算出する。
【0019】
その後、特定装置100は、算出された再現誤差に基づいて入力データP1が属する分類を特定する(ステップS4)。例えば、特定装置100は、算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を入力データが属する分類として特定する。
図1の例では、算出された再現誤差のうち最も低い再現誤差「0」となる出力データOD
2を出力する学習器Le
2に対応する分類である「ノートパソコン」を入力データP1が属する分類として特定する。
【0020】
このように、実施形態に係る特定装置100は、入力データを受け付ける。また、特定装置100は、所定の分類の特徴情報を再現する学習器に対して、受け付けられた入力データを入力した場合に出力する出力データの再現誤差を算出する。また、特定装置100は、算出された再現誤差に基づいて入力データが属する分類を特定する。
【0021】
これにより、特定装置100は、入力データが属する適切な分類を特定することができるので、適切なラベルを付けることができる。例えば、特定装置100は、被写体が描出された画像が入力された場合に画像に描出された被写体が属する分類を特定することができる。このため、特定装置100は、例えば、インターネットオークションにおいて出品者が新規に出品する商品が描出された画像を受け付けた場合に商品が属するカテゴリを特定することができる。
【0022】
また、特定装置100は、例えば、インターネットオークションで出品する商品に対して適切なラベルを付けることができるので、不適切なラベルが付いた商品を減らすことができる。このため、特定装置100は、出品者やオークションの利用者の利便性を向上させることができる。
【0023】
また、特定装置100は、商品の画像を学習器に入力するだけで商品に対して適切なラベルを付けることができるので、出品者がラベルを検討する手間を減らすことができる。このため、特定装置100は、出品者の出品作業における利便性を向上させることができる。
【0024】
〔2.出品システムの構成〕
図3を用いて、実施形態に係る出品システムの構成について説明する。
図3は、実施形態に係る出品システムによる出品処理の一例を示す説明図である。
図3に示すように、出品システム1には、端末装置10と、サーバ装置50と、特定装置100とが含まれる。端末装置10、サーバ装置50および特定装置100は、ネットワークを介して、有線又は無線により通信可能に接続される。なお、
図3に示した出品システム1には、複数台の端末装置10や、複数台のサーバ装置50や、複数台の特定装置100が含まれてもよい。
【0025】
端末装置10は、例えば、デスクトップ型PCや、ノート型PCや、タブレット型端末や、スマートフォンや、携帯電話機や、PDA(Personal Digital Assistant)等の情報処理装置である。例えば、端末装置10は、オークションに商品を出品する利用者(例えば、販売者)によって利用される。端末装置10は、利用者によって用意された画像をサーバ装置50に送信する。例えば、端末装置10は、表示部に表示中のウェブページである出品画面に対して所定の操作(例えば、クリック操作)を受け付けた場合に、利用者が出品する商品が描出された画像CPをサーバ装置50に送信する。
【0026】
サーバ装置50は、各種ウェブページを端末装置10に提供するサーバ装置である。具体的には、サーバ装置50は、ネットオークションに関するウェブページを提供する。例えば、サーバ装置50は、消費者が閲覧するネットオークションサイトや商品を出品する利用者が閲覧する管理画面(例えば、出品画面)を提供する。なお、サーバ装置50は、ネットオークションサイトのウェブページに限らず、技術解説サイト、検索エンジンサイト、ショッピングサイト、ニュースサイト、ファイナンスサイト(株価サイト)等といった各種のウェブページを提供してもよい。
【0027】
特定装置100は、学習器Leを用いて商品が属する分類を特定するサーバ装置である。具体的には、特定装置100は、まず、入力データとして商品が描出された画像を学習器Leに入力する。続いて、特定装置100は、入力データに対する出力データの再現誤差を算出する。そして、特定装置100は、算出した再現誤差に基づいて商品が属する分類を特定する。
【0028】
次に、
図3を用いて、出品システム1による出品処理について説明する。まず、端末装置10は、例えば、サーバ装置50から提供される出品画面を介して、利用者がオークションサイトに出品する商品C1が描出された画像CPをサーバ装置50に送信する(ステップS21)。
【0029】
続いて、サーバ装置50は、端末装置10から送信された画像CPを特定装置100に送信する(ステップS22)。これにより、特定装置100は、商品C1が描出された画像CPを受け付ける。
【0030】
そして、特定装置100は、画像CPに描出された商品C1が属する分類を特定する(ステップS23)。具体的には、特定装置100は、入力データとして画像CPを学習器Leに入力し、入力データに対する出力データの再現誤差に基づいて商品C1が属する分類を特定する。
【0031】
その後、特定装置100は、特定した商品C1が属する分類をサーバ装置50に通知する(ステップS24)。例えば、特定装置100は、画像CPに描出された商品C1が属する分類を「ノートパソコン」と特定した場合には、「ノートパソコン」という分類に関する情報をサーバ装置50に通知する。
【0032】
そして、サーバ装置50は、特定装置100から通知された分類に基づいて商品C1のラベル付けを実行する(ステップS25)。例えば、サーバ装置50は、「ノートパソコン」という分類が通知された場合には、商品C1のカテゴリを「ノートパソコン」に設定する。これにより、サーバ装置50は、商品C1のラベルを適切に設定してオークションに出品することができる。
【0033】
〔3.特定装置の構成〕
次に、
図4を用いて、実施形態に係る特定装置100の構成について説明する。
図4は、実施形態に係る特定装置100の構成例を示す図である。
図4に示すように、特定装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、特定装置100は、特定装置100を利用する管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
【0034】
(通信部110について)
通信部110は、例えば、NIC等によって実現される。通信部110は、ネットワークと有線又は無線で接続され、ネットワークを介して、各種のサーバ装置や端末装置との間で情報の送受信を行う。
【0035】
(記憶部120について)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、学習器情報記憶部121を有する。
【0036】
(学習器情報記憶部121について)
学習器情報記憶部121は、学習器(例えば、DNN)に関する情報を記憶する。具体的には、学習器情報記憶部121は、DNN(例えば、オートエンコーダ)に含まれる入力層、中間層および出力層のノードや、ノード間の結合係数に関する情報を記憶する。例えば、学習器情報記憶部121は、
図1に示す学習器Leを記憶する。
【0037】
(制御部130について)
制御部130は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、特定装置100内部の記憶装置に記憶されている各種プログラム(特定プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0038】
制御部130は、
図4に示すように、受付部131と、生成部132と、算出部133と、特定部134とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、
図4に示した構成に限られず、後述する生成処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、
図4に示した接続関係に限られず、他の接続関係であってもよい。
【0039】
(受付部131について)
受付部131は、入力データを受け付ける。具体的には、受付部131は、被写体が描出された画像を受け付ける。例えば、受付部131は、販売者がオークションサイトに商品を出品する際に、出品する商品が描出された画像を端末装置10から受け付ける。また、受付部131は、学習器の学習を行う際には、所定の分類の被写体が描出された画像を受け付ける。なお、この場合、受付部131は、所定の分類の特徴を学習するのに十分な数の画像を受け付ける。
【0040】
(生成部132について)
生成部132は、学習器(例えば、DNN)を生成する。具体的には、生成部132は、入力データを入力した場合に出力する出力データが所定の分類の特徴情報を再現するノード間の結合係数を算出し、算出した結合係数をノード間に設定することでオートエンコーダを生成する。一例としては、生成部132は、バックプロパゲーション法や教師あり学習によりDNNに含まれるノード間の結合係数を算出する。
【0041】
例えば、生成部132は、受付部131によって「ノートパソコン」が描出された画像を入力した場合に出力する出力データが「ノートパソコン」の分類の特徴情報を再現するノード間の結合係数を算出する。そして、生成部132は、算出した結合係数をノード間に設定することでオートエンコーダを生成する。これにより、生成部132は、所定の分類に属する被写体が描出された画像が受け付けられた場合に、被写体を再現する出力データを出力する学習器を生成することができる。例えば、生成部132は、ノートパソコンが描出された画像を入力した場合に、ノートパソコンを再現した画像である出力データを出力する学習器を生成する。なお、生成部132は、例えば、ネットオークションで用いられる商品の各種の分類に対応する学習器をそれぞれ生成する。そして、生成部132は、生成した各学習器を学習器情報記憶部121に格納する。
【0042】
(算出部133について)
算出部133は、出力データの再現誤差を算出する。具体的には、算出部133は、所定の分類の特徴情報を再現する学習器に対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの再現誤差を算出する。
【0043】
例えば、算出部133は、まず、学習器情報記憶部121に記憶された学習器であって各種の分類の特徴を学習した各学習器に入力データを入力する。続いて、算出部133は、各学習器から出力された出力データの再現誤差をそれぞれ算出する。ここで、算出部133は、例えば、入力データと出力データとの間の誤差が小さいほど再現誤差を低く算出する。すなわち、算出部133は、出力データが入力データを正確に再現しているほど再現誤差を低く算出する。なお、算出部133は、生成部132によって生成された学習器に限らず、他から取得した学習器を用いて算出処理を行ってもよい。
【0044】
(特定部134について)
特定部134は、受付部131によって受け付けられた入力データが属する分類を特定する。具体的には、特定部134は、算出部133によって算出された再現誤差に基づいて入力データが属する分類を特定する。例えば、特定部134は、算出部133によって算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を入力データが属する分類として特定する。特徴が類似するオートエンコーダほど入力データを最も高い精度で再現する出力データを出力すると考えられるからである。
【0045】
そして、特定部134は、例えば、入力データが属する分類として特定した分類をサーバ装置50に通知する。これにより、サーバ装置50は、サーバ装置50から通知された分類を用いて、例えば、販売者がオークションサイトに出品する商品のラベル付けを適切に行うことができる。
【0046】
〔4.生成処理手順〕
次に、
図5を用いて、実施形態に係る特定装置100による生成処理の手順について説明する。
図5は、実施形態に係る特定装置100による生成処理手順を示すフローチャートである。
【0047】
図5に示すように、特定装置100は、入力データを受け付ける(ステップS101)。例えば、特定装置100は、入力データとして所定の分類に属する商品が描出された画像を、商品が属する分類の特徴を学習するのに十分な枚数受け付ける。そして、特定装置100は、入力データを受け付けていない場合には(ステップS101;No)、入力データを受け付けるまで待機する。例えば、特定装置100は、商品が属する分類の特徴を学習するのに十分な枚数が集まるまで画像を受け付ける。
【0048】
一方、特定装置100は、入力データを受け付けた場合(ステップS101;Yes)、受け付けた入力データを学習器に入力する(ステップS102)。例えば、特定装置100は、入力データとして所定の分類に属する商品が描出された画像を学習器に入力する。
【0049】
その後、特定装置100は、受け付けられた入力データに基づいて、入力データを入力した場合に入力データを再現する出力データを出力する学習器を生成する。具体的には、特定装置100は、入力データを入力した場合に出力する出力データが所定の分類の特徴情報を再現するノード間の結合係数を算出する(ステップS103)。例えば、特定装置100は、バックプロパゲーション法により結合係数を算出する。一例としては、特定装置100は、出力データの誤差が最小となる結合係数を算出する。
【0050】
そして、特定装置100は、所定の分類の特徴を学習した学習器を生成する(ステップS104)。例えば、特定装置100は、算出した結合係数をノード間に設定することで、所定の分類の特徴を学習した学習器を生成する。そして、特定装置100は、生成した学習器を格納する(ステップS105)。なお、特定装置100は、例えば、ネットオークションで用いられる商品の各種の分類において上記のステップS101〜S105の処理を実行し、各種の分類に対応する学習器をそれぞれ生成する。
【0051】
〔5.特定処理手順〕
次に、
図6を用いて、実施形態に係る特定装置100による特定処理の手順について説明する。
図6は、実施形態に係る特定装置100による特定処理手順を示すフローチャートである。
【0052】
図6に示すように、特定装置100は、入力データを受け付ける(ステップS201)。例えば、特定装置100は、入力データとして販売者がネットオークションに出品する商品が描出された画像を受け付ける。そして、特定装置100は、入力データを受け付けていない場合には(ステップS201;No)、入力データを受け付けるまで待機する。
【0053】
一方、特定装置100は、入力データを受け付けた場合(ステップS201;Yes)、受け付けた入力データを各学習器に入力する(ステップS202)。例えば、特定装置100は、各種の分類の特徴を学習した学習器を学習器情報記憶部121から取得する。そして、特定装置100は、取得した各学習器に販売者がオークションに出品する商品が描出された画像をそれぞれ入力する。
【0054】
その後、特定装置100は、出力データの再現誤差を算出する(ステップS203)。具体的には、特定装置100は、各学習器が出力した出力データの再現誤差をそれぞれ算出する。
【0055】
そして、特定装置100は、算出した再現誤差に基づいて入力データが属する分類を特定する(ステップS204)。例えば、特定装置100は、算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を入力データが属する分類として特定する。
【0056】
そして、特定装置100は、特定した分類をサーバ装置50に通知する(ステップS205)。その後、サーバ装置50は、特定装置100から通知された分類に基づいて入力データのラベル付けを実行する。これにより、サーバ装置50は、例えば、オークションサイトに出品する商品に適切なラベルを付けることができる。
【0057】
〔6.変形例〕
上述した実施形態に係る特定装置100は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、上記の特定装置100の他の実施形態について説明する。
【0058】
〔6−1.人の分類を特定〕
上記実施形態では、特定装置100は、商品の分類の特徴情報を再現する学習器を用いて、入力データである画像に描出された商品が属する分類を特定する例を示した。ここで、特定装置100は、各種の特徴を学習した学習器を用いて、各種の分類を特定してもよい。
【0059】
具体的には、特定装置100は、人が属する分類の特徴情報を再現する学習器に対して、人の動きを入力した場合に出力する出力データの人の動きに対する再現誤差を算出し、算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を人が属する分類として特定する。
【0060】
初めに、特定装置100によって所定の人が属する分類の特徴情報を再現する学習器を生成する処理について説明する。例えば、特定装置100は、まず、歩数計やスマートフォンなどを人に持たせることで各時刻における人の動きに関する情報を人が所属する組織の業種ごとに取得する。すなわち、特定装置100は、人の動きを時系列なデータとして取得する。
【0061】
そして、特定装置100は、取得した人の動きに関する情報を用いて、人の動きの特徴を学習する学習器(例えば、オートエンコーダ)を生成する。すなわち、人の行動パターンを学習した学習器を生成する。例えば、特定装置100は、人の動きの特徴を学習する学習器を人が所属する組織の業種ごとに生成する。一例としては、特定装置100は、飲食業、製造業、漁業といった各種の業種ごとに人の動きの特徴を学習した学習器を生成する。なお、特定装置100は、人が所属する組織の業種ごとに限らず、性別や役職などといった各種のユーザ属性ごとに学習器を生成してもよい。
【0062】
次に、特定装置100が学習器を用いて人が属する分類を特定する特定処理について説明する。特定装置100は、まず、入力データとして特定対象の人の動きを受け付ける。そして、特定装置100は、生成した学習器を用いて、人が所属する組織の業種を特定する。例えば、特定装置100は、まず、入力データを各学習器に入力する。一例としては、特定装置100は、入力データとして「午前10時〜午前11時までのAさんの動き」を示すベクトルを各学習器に入力する。
【0063】
そして、特定装置100は、人が属する分類の特徴情報を再現する各学習器に対して、受け付けられた人の動きを入力した場合に出力する出力データの入力データに対する再現誤差を算出する。例えば、特定装置100は、出力データが表すベクトルと入力データが表すベクトルとの間の誤差に基づいて再現誤差を算出する。
【0064】
そして、特定装置100は、算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を人が属する分類として特定する。例えば、特定装置100は、最も低い再現誤差となる出力データを出力する学習器が飲食業に対応する場合、人の分類を「飲食業」として特定する。なお、特定装置100は、利用者の行動、思考、属性などから利用者のラベル付けを行ってもよい。
【0065】
このように、特定装置100は、入力データとして人の動きを受け付ける。また、特定装置100は、所定の人が属する分類の特徴情報を再現する学習器に対して、受付部131によって受け付けられた人の動きを入力した場合に出力する出力データの入力データに対する再現誤差を算出する。また、特定装置100は、算出部133によって算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を人が属する分類として特定する。
【0066】
これにより、特定装置100は、入力データに対して入力データが属する適切な分類を特定することができるので、人に適切なラベルを付けることができる。例えば、特定装置100は、業種や役職ごとに分類したラベルを人に対して適切に付けることができるので、マーケティングなどにおけるデータ分析に活用することができる。一例としては、特定装置100は、ビッグデータのサンプルとして活用することができるので、分析の精度を高めることができる。
【0067】
なお、特定装置100は、利用者の友人関係の特徴の共通性を特定してもよい。この場合、特定装置100は、友人関係の特徴を学習した学習器を生成する。例えば、特定装置100は、友人が属するユーザ属性ごとに特徴を学習した学習器を生成する。その後、特定装置100は、入力データとして利用者の友人に関する情報を学習器に入力する。続いて、特定装置100は、入力データに対して学習器が出力する出力データに基づいて利用者の友人関係の特徴を特定する。
【0068】
〔6−2.分類を提案〕
上記実施形態では、特定装置100は、算出部133によって算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を入力データが属する分類として特定し、特定した分類を商品のラベルとして付ける例を示した。
【0069】
ここで、特定装置100は、再現誤差に応じて入力データが属する分類を提案してもよい。例えば、特定装置100は、ネットオークションに商品を出品する販売者に対して、算出部133によって算出された再現誤差が所定の閾値より低い分類を商品が属するカテゴリとして提案する。続いて、販売者は、提案されたカテゴリのうち商品に最も適したカテゴリを選択する。そして、サーバ装置50は、販売者によって選択されたカテゴリを商品のラベルとして付けてネットオークションに出品する。
【0070】
このように、特定装置100は、再現誤差に応じて入力データが属する分類を提案する。これにより、特定装置100は、機械的に特定された分類の候補から販売者が商品のカテゴリを選択することができるので、販売者の希望を反映したカテゴリを商品に付けることができる。このため、特定装置100は、販売者のラベル付けにかかる手間を軽減することができるとともに、販売者の利便性を高めることができる。
【0071】
〔6−3.オートエンコーダ〕
上記実施形態では、特定装置100は、所定の分類の特徴情報を再現する学習器に対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの入力データに対する再現誤差を算出する例を示した。
【0072】
ここで、特定装置100は、特徴情報の次元数を削減した後に特徴情報を再現する学習器に対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの再現誤差を算出してもよい。例えば、特定装置100は、まず、中間層に含まれるノード群の層のうち中心の層が最も少ないノード数となるオートエンコーダを生成する。すなわち、特定装置100は、入力された入力データの情報の次元数を中間層の中心まで序所に削減し、その後に次元数を元に戻すオートエンコーダを生成する。具体的には、特定装置100は、出力データが入力データを高い精度で再現するようにノード間の結合係数を補正することでオートエンコーダを生成する。ここで、特定装置100は、例えば、入力データの画像自体を再現するのではなく、画像に描出された被写体を再現するオートエンコーダを生成する。一例としては、特定装置100は、画像に描出された被写体を再現するオートエンコーダを生成する。
【0073】
そして、特定装置100は、生成したオートエンコーダに対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの入力データに対する再現誤差を算出する。
【0074】
このように、特定装置100は、特徴情報の次元数を削減した後に特徴情報を再現する学習器に対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの入力データに対する再現誤差を算出する。
【0075】
これにより、特定装置100は、画像に描出された被写体を再現するオートエンコーダを生成することができるので、出力データの再現精度を高めることができる。このため、特定装置100は、入力データの分類を特定する精度を高めることができる。
【0076】
〔6−4.DNN〕
上記実施形態では、特定装置100は、入力層、中間層および出力層によって構成される学習器を生成する例を示した。ここで、特定装置100は、各種の層に任意の数のノード群を含む学習器を生成してもよい。例えば、特定装置100は、中間層に複数のノード群が含まれる多段の学習器を生成する。また、学習器に含まれるノード群は、任意の数のノードによって構成されてもよい。
【0077】
〔6−5.適用対象〕
上記実施形態では、特定装置100は、ネットオークションに出品する商品の分類を特定する画像認識の適用例を示した。ここで、特定装置100は、商品の分類に限らず、各種の認識に適用してもよい。例えば、特定装置100は、音声を対象とする音声認識に適用する。一例としては、特定装置100は、入力データとして音声データを入力することで話者の分類を学習する学習器を生成する。これにより、特定装置100は、音声データに含まれる音声を発した話者の性別や年齢、国籍などといった分類を特定することができる。
【0078】
〔6−6.装置構成〕
上記実施形態では、特定装置100は、サーバ装置50と一体となって構成されてもよい。この場合、特定装置100は、学習器を用いて特定した分類に基づいて商品のラベル付けを行う。また、特定装置100は、学習器を生成する生成処理は行わず、算出部133と、特定部134とによる特定処理のみを行う特定装置であってもよい。この場合、特定装置は、少なくとも生成部132を有しない。そして、特定装置は、生成部132を有する生成装置によって生成された学習器を用いて分類を特定し、特定した分類をサーバ装置50等に通知する。
【0079】
〔6−7.その他〕
上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0080】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、
図4に示した受付部131および生成部132は統合されてもよい。
【0081】
〔6−8.ハードウェア構成〕
また、上述してきた実施形態に係る特定装置100は、例えば
図7に示すような構成のコンピュータ1000によって実現される。以下、特定装置100を例に挙げて説明する。
図7は、特定装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、およびメディアインターフェイス(I/F)1700を有する。
【0082】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0083】
HDD1400は、CPU1100によって実行されるプログラム、および、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、通信網500を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを通信網500を介して他の機器へ送信する。
【0084】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、および、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0085】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0086】
例えば、コンピュータ1000が実施形態に係る特定装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、HDD1400には、記憶部120内のデータが格納される。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から通信網500を介してこれらのプログラムを取得してもよい。
【0087】
〔7.効果〕
上述してきたように、実施形態に係る特定装置100は、受付部131と、算出部133と、特定部134とを有する。受付部131は、入力データを受け付ける。算出部133は、所定の分類の特徴情報を再現する学習器に対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの再現誤差を算出する。特定部134は、算出部133によって算出された再現誤差に基づいて入力データが属する分類を特定する。
【0088】
また、実施形態に係る特定装置100において、特定部134は、算出部133によって算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を前記入力データが属する分類として特定する。
【0089】
また、実施形態に係る特定装置100において、受付部131は、入力データとして商品が描出された画像を受け付ける。算出部133は、所定の商品が属する分類の特徴情報を再現する学習器に対して、受付部131によって受け付けられた画像を入力した場合に出力する出力データの再現誤差を算出する。特定部134は、算出部133によって算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を商品が属する分類として特定する。
【0090】
また、実施形態に係る特定装置100において、生成部132は、入力データを入力した場合に出力する出力データが所定の分類の特徴情報を再現するノード間の結合係数を算出し、算出した結合係数をノード間に設定することで学習器を生成する。
【0091】
これにより、実施形態に係る特定装置100は、入力データが属する適切な分類を特定することができるので、適切なラベルを付けることができる。例えば、特定装置100は、被写体が描出された画像が入力された場合に画像に描出された被写体が属する分類を特定することができる。このため、特定装置100は、例えば、インターネットオークションにおいて出品者が新規に出品する商品が描出された画像を受け付けた場合に商品が属するカテゴリを特定することができる。
【0092】
また、特定装置100は、例えば、インターネットオークションで出品する商品に対して適切なラベルを付けることができるので、不適切なラベルが付いた商品を減らすことができる。このため、特定装置100は、出品者やオークションの利用者の利便性を向上させることができる。
【0093】
また、特定装置100は、商品の画像を学習器に入力するだけで商品に対して適切なラベルを付けることができるので、出品者がラベルを検討する手間を減らすことができる。このため、特定装置100は、出品者の出品作業における利便性を向上させることができる。
【0094】
また、変形例に係る特定装置100において、受付部131は、入力データとして人の動きを受け付ける。算出部133は、所定の人が属する分類の特徴情報を再現する学習器に対して、受付部131によって受け付けられた人の動きを入力した場合に出力する出力データの入力データに対する再現誤差を算出する。特定部134は、算出部133によって算出された再現誤差のうち最も低い再現誤差となる出力データを出力する学習器に対応する分類を人が属する分類として特定する。
【0095】
これにより、変形例に係る特定装置100は、入力データが属する適切な分類を特定することができるので、人に適切なラベルを付けることができる。例えば、特定装置100は、業種や役職ごとに分類したラベルを人に対して適切に付けることができるので、マーケティングなどにおけるデータ分析に活用することができる。一例としては、特定装置100は、ビッグデータのサンプルとして活用することができるので、分析の精度を高めることができる。
【0096】
また、変形例に係る特定装置100において、算出部133は、特徴情報の次元数を削減した後に特徴情報を再現する学習器に対して、受付部131によって受け付けられた入力データを入力した場合に出力する出力データの入力データに対する再現誤差を算出する。
【0097】
これにより、変形例に係る特定装置100は、画像に描出された被写体を再現するオートエンコーダを生成することができるので、出力データの再現精度を高めることができる。このため、特定装置100は、入力データの分類を特定する精度を高めることができる。
【0098】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。