(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-07
(45)【発行日】2022-03-15
(54)【発明の名称】学習用サーバ、不足学習用画像収集支援システム、及び不足学習用画像推定プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20220308BHJP
【FI】
G06T7/00 350C
(21)【出願番号】P 2018086457
(22)【出願日】2018-04-27
【審査請求日】2021-02-12
(73)【特許権者】
【識別番号】516249414
【氏名又は名称】AWL株式会社
(74)【代理人】
【識別番号】100084375
【氏名又は名称】板谷 康夫
(74)【代理人】
【識別番号】100125221
【氏名又は名称】水田 愼一
(74)【代理人】
【識別番号】100142077
【氏名又は名称】板谷 真之
(72)【発明者】
【氏名】土田 安紘
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特開2011-198349(JP,A)
【文献】特開2004-213567(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
(57)【特許請求の範囲】
【請求項1】
学習用画像を含む入力画像を取得する画像取得部と、
前記画像取得部により取得した学習用画像に基づいて、特定の物体を認識するためのニューラルネットワークの機械学習を行う機械学習部と、
前記ニューラルネットワークが、前記特定の物体の認識において、現時点で着目している前記入力画像中の着目領域を抽出する着目領域抽出部と、
前記入力画像における、前記特定の物体を判別するための特徴部分を記憶する特徴部分記憶部と、
前記着目領域抽出部により抽出された前記着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定する不足学習用画像推定部と
を備える学習用サーバ。
【請求項2】
前記ニューラルネットワークは、前記入力画像がどのクラスに属するかを分類する画像分類器であり、前記画像分類器による分類先のクラスには、前記特定の物体に対応する特定クラスが含まれ、
前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定することを特徴とする請求項1に記載の学習用サーバ。
【請求項3】
前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分との一致度に基づいて、前記ニューラルネットワークの機械学習の進捗度を算出し、この進捗度と、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定することを特徴とする請求項1又は請求項2に記載の学習用サーバ。
【請求項4】
情報処理端末と、前記情報処理端末にネットワークを介して接続された学習用サーバとを備え、
前記情報処理端末は、
学習用画像を含む入力画像を撮影する撮影部と、
前記撮影部により撮影された入力画像における、特定の物体を判別するための特徴部分の指示入力操作を行うための操作部と、
前記操作部を用いてユーザにより指示された前記特徴部分と、前記撮影部により撮影した、前記学習用画像を含む前記入力画像とを、前記学習用サーバに送信する端末側送信部と、
前記学習用サーバから受信した不足学習用画像情報に基づいて、前記特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な、学習用画像の内容と数量をユーザに提示する必要学習用画像提示部とを備え、
前記学習用サーバは、
前記端末側送信部により送信された、前記学習用画像を含む前記入力画像を受信する画像受信部と、
前記画像受信部により受信した前記学習用画像に基づいて、前記ニューラルネットワークの機械学習を行う機械学習部と、
前記ニューラルネットワークが、前記特定の物体の認識において、現時点で着目している前記入力画像中の着目領域を抽出する着目領域抽出部と、
前記端末側送信部により送信された前記特徴部分を記憶する特徴部分記憶部と、
前記着目領域抽出部により抽出された前記着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定する不足学習用画像推定部と、
前記不足学習用画像推定部により推定された、前記必要な学習用画像の内容と数量を、前記不足学習用画像情報として、前記情報処理端末に送信するサーバ側送信部と
を備える不足学習用画像収集支援システム。
【請求項5】
前記ニューラルネットワークは、前記入力画像がどのクラスに属するかを分類する画像分類器であり、前記画像分類器による分類先のクラスには、前記特定の物体に対応する特定クラスが含まれ、
前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定することを特徴とする請求項4に記載の不足学習用画像収集支援システム。
【請求項6】
前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分との一致度に基づいて、前記ニューラルネットワークの機械学習の進捗度を算出し、この進捗度と、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定することを特徴とする請求項4又は請求項5に記載の不足学習用画像収集支援システム。
【請求項7】
コンピュータを、
学習用画像を含む入力画像を取得する画像取得部と、
特定の物体を認識するためのニューラルネットワークが、前記特定の物体の認識において、現時点で着目している前記入力画像中の着目領域を抽出する着目領域抽出部と、
前記入力画像における、前記特定の物体を判別するための特徴部分を記憶する特徴部分記憶部と、
前記着目領域抽出部により抽出された前記着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な、学習用画像の内容と数量を推定する不足学習用画像推定部
として機能させるための、不足学習用画像推定プログラム。
【請求項8】
前記ニューラルネットワークは、前記入力画像がどのクラスに属するかを分類する画像分類器であり、前記画像分類器による分類先のクラスには、前記特定の物体に対応する特定クラスが含まれ、
前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定することを特徴とする請求項7に記載の不足学習用画像推定プログラム。
【請求項9】
前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分との一致度に基づいて、前記ニューラルネットワークの機械学習の進捗度を算出し、この進捗度と、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定することを特徴とする請求項7又は請求項8に記載の不足学習用画像推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習用サーバ、不足学習用画像収集支援システム、及び不足学習用画像推定プログラムに関し、より詳細には、特定の物体を認識するためのニューラルネットワークの機械学習に関する。
【背景技術】
【0002】
従来から、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)等のニューラルネットワークは、手書き数字の認識等の入力画像のクラス分類(物体認識)に利用されている。また、CNN等のニューラルネットワークは、上記の物体認識の応用である物体検出にも利用されている。この物体検出は、画像中における物体の位置と種類(クラス)を特定する処理である。
【0003】
上記の物体検出を行うプログラム(物体検出エンジン)として、R-CNNベースの物体検出エンジンが知られている(例えば、特許文献1の背景技術等参照)。このR-CNNベースの物体検出エンジンは、主に、オブジェクトらしい領域を抽出するための候補領域抽出部と、候補領域抽出部で抽出した各領域についてクラス分類(物体認識)を行うためのCNNとから構成されている。このR-CNNベースの物体検出エンジンは、例えば、小売店の商品棚における商品タグの検出に用いることができる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところが、上記の物体認識(クラス分類)を行うニューラルネットワークには、現場のユーザが、ある物体を認識するための機械学習を完了するのに必要な学習用画像の内容や数量を知ることができないという問題がある。このため、上記の物体認識用のニューラルネットワークの再学習を行う度に、ディープラーニングに関する知識のあるAI(Artificial Intelligence)技術者が必要になる。
【0006】
例えば、上記の例のように、R-CNNベースの物体検出エンジンを、小売店の商品棚における商品タグの検出に用いた場合には、小売店の店員(ユーザ)は、商品タグを認識するための(ニューラルネットワークのパラメータの)機械学習を完了するのに必要な学習用画像の内容や数量を知ることができなかった。ここで、小売店では、商品タグの入れ替え時に、商品タグ検出用の物体検出エンジン(中のニューラルネットワークにおけるパラメータ)の再学習が必要になる場合がある。そして、従来は、この物体検出エンジンの再学習を行う度に、ディープラーニングに関する知識のあるAI技術者が必要であった。
【0007】
本発明は、上記課題を解決するものであり、特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な学習用画像の内容と数量を、ユーザに知らせることができるようにして、ディープラーニングに関する知識のないユーザでも、容易に、上記の機械学習を完了するのに必要な学習用画像を作成することが可能な学習用サーバ、不足学習用画像収集支援システム、及び不足学習用画像推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明の第1の態様による学習用サーバは、学習用画像を含む入力画像を取得する画像取得部と、前記画像取得部により取得した学習用画像に基づいて、特定の物体を認識するためのニューラルネットワークの機械学習を行う機械学習部と、前記ニューラルネットワークが、前記特定の物体の認識において、現時点で着目している前記入力画像中の着目領域を抽出する着目領域抽出部と、前記入力画像における、前記特定の物体を判別するための特徴部分を記憶する特徴部分記憶部と、前記着目領域抽出部により抽出された前記着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定する不足学習用画像推定部とを備える。
【0009】
この学習用サーバにおいて、前記ニューラルネットワークは、前記入力画像がどのクラスに属するかを分類する画像分類器であり、前記画像分類器による分類先のクラスには、前記特定の物体に対応する特定クラスが含まれ、前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにしてもよい。
【0010】
この学習用サーバにおいて、前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分との一致度に基づいて、前記ニューラルネットワークの機械学習の進捗度を算出し、この進捗度と、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにしてもよい。
【0011】
本発明の第2の態様による不足学習用画像収集支援システムは、情報処理端末と、前記情報処理端末にネットワークを介して接続された学習用サーバとを備え、前記情報処理端末は、学習用画像を含む入力画像を撮影する撮影部と、前記撮影部により撮影された入力画像における、特定の物体を判別するための特徴部分の指示入力操作を行うための操作部と、前記操作部を用いてユーザにより指示された前記特徴部分と、前記撮影部により撮影した、前記学習用画像を含む前記入力画像とを、前記学習用サーバに送信する端末側送信部と、前記学習用サーバから受信した不足学習用画像情報に基づいて、前記特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な、学習用画像の内容と数量をユーザに提示する必要学習用画像提示部とを備え、前記学習用サーバは、前記端末側送信部により送信された、前記学習用画像を含む前記入力画像を受信する画像受信部と、前記画像受信部により受信した前記学習用画像に基づいて、前記ニューラルネットワークの機械学習を行う機械学習部と、前記ニューラルネットワークが、前記特定の物体の認識において、現時点で着目している前記入力画像中の着目領域を抽出する着目領域抽出部と、前記端末側送信部により送信された前記特徴部分を記憶する特徴部分記憶部と、前記着目領域抽出部により抽出された前記着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定する不足学習用画像推定部と、前記不足学習用画像推定部により推定された、前記必要な学習用画像の内容と数量を、前記不足学習用画像情報として、前記情報処理端末に送信するサーバ側送信部とを備える。
【0012】
この不足学習用画像収集支援システムにおいて、前記ニューラルネットワークは、前記入力画像がどのクラスに属するかを分類する画像分類器であり、前記画像分類器による分類先のクラスには、前記特定の物体に対応する特定クラスが含まれ、前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにしてもよい。
【0013】
この不足学習用画像収集支援システムにおいて、前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分との一致度に基づいて、前記ニューラルネットワークの機械学習の進捗度を算出し、この進捗度と、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにしてもよい。
【0014】
本発明の第3の態様による不足学習用画像推定プログラムは、コンピュータを、学習用画像を含む入力画像を取得する画像取得部と、前記特定の物体を認識するためのニューラルネットワークが、前記特定の物体の認識において、現時点で着目している前記入力画像中の着目領域を抽出する着目領域抽出部と、前記入力画像における、前記特定の物体を判別するための特徴部分を記憶する特徴部分記憶部と、前記着目領域抽出部により抽出された前記着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な、学習用画像の内容と数量を推定する不足学習用画像推定部として機能させる。
【0015】
この不足学習用画像推定プログラムにおいて、前記ニューラルネットワークは、前記入力画像がどのクラスに属するかを分類する画像分類器であり、前記画像分類器による分類先のクラスには、前記特定の物体に対応する特定クラスが含まれ、前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにしてもよい。
【0016】
この不足学習用画像推定プログラムにおいて、前記不足学習用画像推定部は、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分との一致度に基づいて、前記ニューラルネットワークの機械学習の進捗度を算出し、この進捗度と、前記着目領域抽出部により抽出された着目領域と、前記特徴部分記憶部に記憶された前記特徴部分とに基づいて、前記機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにしてもよい。
【発明の効果】
【0017】
本発明の第1の態様による学習用サーバ、及び第3の態様による不足学習用画像推定プログラムによれば、特定の物体を判別するための特徴部分と、この特定の物体の認識において、ニューラルネットワークが現時点で着目している入力画像中の着目領域とに基づいて、この特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な学習用画像の内容と数量を推定することができる。これにより、上記の機械学習を完了するのに必要な学習用画像の内容と数量を、ユーザに知らせることが可能になるので、ディープラーニングに関する知識のないユーザでも、容易に、上記の機械学習を完了するのに必要な学習用画像を作成することが可能になる。従って、上記のニューラルネットワークの再学習を行う度に、ディープラーニングに関する知識のあるAI技術者が必要になるという状況を、回避することができる。
【0018】
本発明の第2の態様による不足学習用画像収集支援システムによれば、学習用サーバが、ユーザにより指示された、特定の物体を判別するための特徴部分と、この特定の物体の認識において、ニューラルネットワークが現時点で着目している入力画像中の着目領域とに基づいて、この特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な学習用画像の内容と数量を推定して、推定した学習用画像の内容と数量を、不足学習用画像情報として情報処理端末に送信する。そして、情報処理端末が、学習用サーバから受信した不足学習用画像情報に基づいて、特定の物体を認識するためのニューラルネットワークの機械学習を完了するのに必要な、学習用画像の内容と数量を、ユーザに提示する(上記の機械学習を完了するのに必要な学習用画像の内容と数量を、情報処理端末を保持するユーザに知らせる)。これにより、ディープラーニングに関する知識のないユーザでも、上記の情報処理端末が提示した学習用画像の内容と数量に基づいて、容易に、上記の機械学習を完了するのに必要な学習用画像を作成することが可能になる。従って、上記のニューラルネットワークの再学習を行う度に、ディープラーニングに関する知識のあるAI技術者が必要になるという状況を、回避することができる。
【図面の簡単な説明】
【0019】
【
図1】本発明の一実施形態の不足学習用画像推定プログラムを実装した学習用サーバを含む、不足学習用画像収集支援システムの概略のブロック構成図。
【
図2】同学習用サーバとスマートフォンの機能ブロック構成図。
【
図3】同学習用サーバにおける不足学習用画像推定処理のフローチャート。
【
図4】同学習用サーバにおける、物体検出エンジンの概略構成と、着目領域抽出部の詳細処理の説明図。
【
図5】上記物体検出エンジンの画像分類器に商品タグの認識の再学習をさせた場合における、今までの商品タグの例の正面図。
【
図6】上記物体検出エンジンの画像分類器に商品タグの認識の再学習をさせた場合における、新しい商品タグの例の正面図。
【
図7】上記スマートフォンにおいて、ユーザが行う特徴部分の指示入力操作の例の説明図。
【
図8】上記スマートフォンのディスプレイに表示される、機械学習の完了に必要な学習用画像の内容と数量の例を示す図。
【発明を実施するための形態】
【0020】
以下、本発明を具体化した実施形態による学習用サーバ、不足学習用画像収集支援システム、及び不足学習用画像推定プログラムについて、図面を参照して説明する。
図1は、本実施形態による不足学習用画像収集支援システム10を構成する、学習用サーバ1(請求項における「学習用サーバ」、及び「コンピュータ」)とスマートフォン2(請求項における「情報処理端末」)の概略の内部構成を示すブロック図である。図中の学習用サーバ1は、装置全体の制御と各種演算を行うCPU11(請求項における「機械学習部」、「着目領域抽出部」、及び「不足学習用画像推定部」)を備えている。また、学習用サーバ1は、通信部12(請求項における「画像取得部」、「画像受信部」、及び「サーバ側送信部」)を有しており、通信部12とネットワーク(例えば、インターネット)とを介して、スマートフォン2と接続されている。通信部12は、通信用ICを備えている。
【0021】
また、学習用サーバ1は、各種のプログラムやデータを記憶するハードディスク13と、各種のプログラムの実行時に、実行するプログラムやデータをロードするRAM14とを備えている。上記のハードディスク13には、物体検出エンジン16と、特徴部分DB18(請求項における「特徴部分記憶部」)と、不足学習用画像推定プログラム19とが格納されている。
【0022】
上記の物体検出エンジン16は、例えば、R-CNN(Regions with Convolutional Neural Network features)ベースの物体検出エンジンである。この物体検出エンジン16は、重みやバイアス等のパラメータデータ17を有している。なお、本明細書において、「エンジン」とは、情報処理装置を使用して様々な情報処理を行う、一種のプログラムを意味する。
【0023】
また、上記の特徴部分DB18は、スマートフォン2側から送信された、特定の物体を判別するための(画像中の)特徴部分を記憶する。より詳細に言うと、特徴部分DB18には、物体検出エンジン16に含まれる画像分類器の分類先の各クラスについての、ユーザが考える(画像中の)特徴部分が記憶される。また、上記の不足学習用画像推定プログラム19は、上記物体検出エンジン16に含まれる画像分類器が、(上記の特定の物体に対応する)特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量を推定するためのプログラムである。
【0024】
一方、スマートフォン2は、装置全体の制御と各種演算を行うCPU21と、通信部22(請求項における「端末側送信部」)とを備えている。通信部22は、通信ICとアンテナを備えている。スマートフォン2は、通信部22とネットワークとを介して、学習用サーバ1と接続されている。
【0025】
また、スマートフォン2は、各種のデータやプログラムを記憶するメモリ23を備えている。メモリ23に記憶されているプログラムには、必要学習用画像提示プログラム24が含まれている。この必要学習用画像提示プログラム24の詳細については、後述する。
【0026】
また、スマートフォン2は、カメラ27(請求項における「撮影部」)と、ディスプレイ28と、操作ボタン29と、マイクロフォン30と、スピーカ31と、二次電池32とを備えている。カメラ27は、物体検出エンジン16内の画像分類器の機械学習に用いられる学習用画像を含む、(物体検出エンジン16への)入力画像の撮影に用いられる。
【0027】
上記のディスプレイ28は、いわゆるタッチパネルタイプのディスプレイであり、ユーザが、上記の入力画像における、特定の物体を判別するための特徴部分を指示入力する際に用いられる。従って、ディスプレイ28は、請求項における「操作部」に相当する。また、ディスプレイ28は、後述する画像分類器の機械学習を完了するのに必要な、学習用画像の内容と数量の表示(提示)に用いられる。操作ボタン29は、ユーザによる電源オン/オフ等の指示入力に用いられる。なお、タッチパネルタイプのディスプレイ28の代わりに、操作ボタン29を、上記の特徴部分の指示入力に用いてもよいし、メモリ23に音声指示用のプログラムを格納して、この音声指示用のプログラムとマイクロフォン30とを用いて、ユーザによる音声指示により、上記の特徴部分の指示入力を行ってもよい。また、二次電池32は、リチウムイオン電池等の、充電により繰り返し使用することが可能な電池であり、スマートフォン2の各部に電力を供給する。
【0028】
図2は、上記の学習用サーバ1側の機能ブロックと、スマートフォン2側の機能ブロックを示す。学習用サーバ1側のCPU11内の各ブロック(機械学習部43、着目領域抽出部44、不足学習用画像推定部45)の機能は、CPU11が不足学習用画像推定プログラム19を実行することにより実現される。また、スマートフォン2側のCPU21内の各ブロック(学習用画像取得部41、特徴部分登録部46、必要学習用画像提示部47)の機能は、CPU21が必要学習用画像提示プログラム24を実行することにより実現される。ただし、この構成に限られず、例えば、上記のCPU11及びCPU21における各ブロックの機能の少なくとも一つを、ASIC(Application Specific Integrated Circuit)等によって構成される個別のハードウェアによって実現してもよい。なお、
図2中の画像受信部42は、請求項における「画像受信部」と「画像取得部」に相当する。
【0029】
次に、上記
図2に加えて、
図3のフローチャートを参照して、不足学習用画像収集支援システム10において行われる不足学習用画像提示処理について説明する。
図3は、学習用サーバ1が行う不足学習用画像推定処理のフローチャートである。
【0030】
ユーザが、
図2に示すカメラ27を用いて、学習用画像等の入力画像を撮影すると、スマートフォン2の学習用画像取得部41は、カメラ27から学習用画像等の入力画像を取得して、この入力画像を、通信部22(
図1参照)により学習用サーバ1に送信する。ここで、上記の入力画像には、学習用画像(訓練データ又は教師データ)と、特定の物体が写りこんだテスト用画像(テストデータ)とが含まれる。ただし、学習用画像のうちの1枚を、テスト用画像として用いてもよい。以下の説明では、学習用画像とテスト用画像とを分けた場合の例を説明する。
【0031】
学習用サーバ1の画像受信部42(通信部12に相当)は、上記のスマートフォン2側の通信部22により送信された入力画像を受信する(
図3のS1)。受信した入力画像が学習用画像のときには(
図3のS2でYES)、学習用サーバ1の機械学習部43は、受信した学習用画像に基づいて、画像分類器(
図4参照)の(パラメータデータ17の)機械学習を行う(
図3のS3)。
【0032】
これに対して、ユーザがカメラ27を用いて撮影した入力画像が、テスト用画像のときには、ユーザは、タッチパネルタイプのディスプレイ28を用いて、テスト用画像における、特定の物体を判別するための特徴部分の指示入力操作を行う。言い換えると、ユーザは、特定の物体の認識においてユーザが特徴部分と考える、テスト用画像中の部分(領域)を登録するための指示入力を行う。この指示入力に応じて、スマートフォン2の特徴部分登録部46は、ユーザにより指示された特徴部分を、学習用サーバ1側の特徴部分DB18に登録する。ユーザは、上記のディスプレイ28へのタッチ操作による、画像中の特徴部分の指示入力操作を行う代わりに、特徴部分DB18に登録される特徴部分を、デフォルトで画像中央の部分としておいて、自分が特徴部分と考える部分(領域)が、画像中央になるように画像を撮影することにより、画像中の特徴部分の指示入力操作を行うようにしてもよい。
【0033】
学習用サーバ1のCPU11は、画像受信部42により受信した入力画像が、(特定の物体が写りこんだ)テスト用画像のときには(
図3のS2でNO)、上記の機械学習部43による機械学習処理を行わず、着目領域抽出部44による処理を行う。この着目領域抽出部44は、Grad-CAM(Gradient-weighted Class Activation Mapping)等の技術を利用して、上記のテスト用画像について、画像分類器が、特定の物体の認識において(特定クラスの分類において)、現時点で着目しているテスト用画像中の着目領域を抽出する(
図3のS4)。言い換えると、CNNベースの画像分類器が、ある特定クラスの分類において、テスト用画像の、どこ(どの部分)に着目しているかを判定する。
【0034】
そして、学習用サーバ1の不足学習用画像推定部45が、上記の着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶(登録)された特徴部分とに基づいて、特定の物体を認識するための画像分類器の機械学習を完了するのに必要な学習用画像の内容と数量を推定する。より詳細に言うと、不足学習用画像推定部45は、着目領域抽出部44により抽出された(特定クラスについての)着目領域と、特徴部分DB18に記憶(登録)された(特定クラスの)特徴部分(の領域)との一致度に基づいて、画像分類器の特定クラスについての機械学習の進捗率(請求項における「進捗度」に相当)を算出し(
図3のS5)、この進捗率と、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分とに基づいて、特定クラスについての機械学習を完了するのに必要な学習用画像の内容と数量(どのような学習用画像を、後どの程度集める必要があるか)を推定する(
図3のS6)。学習用サーバ1の通信部12は、不足学習用画像推定部45により推定された、上記の必要な学習用画像の内容と数量を、不足学習用画像情報として、スマートフォン2に送信する(
図3のS7)。
【0035】
スマートフォン2の必要学習用画像提示部47は、学習用サーバ1から受信した上記の不足学習用画像情報に基づいて、特定の物体を認識するための画像分類器の機械学習を完了するのに必要な(画像分類器の特定クラスについての機械学習を完了するのに必要な)、学習用画像の内容と数量を、ディスプレイ28等を用いて提示する。
【0036】
なお、学習用サーバ1の不足学習用画像推定部45は、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分とが重なる場合には、当該クラスについての学習用画像が必要でない旨の情報を、不足学習用画像情報として、スマートフォン2に送信する。そして、スマートフォン2の必要学習用画像提示部47が、当該クラスについての学習用画像が必要でない旨を、ディスプレイ28等を用いて提示する。
【0037】
次に、
図4を参照して、上記の物体検出エンジン16の概略構成と、着目領域抽出部44がGrad-CAMの技術を利用した場合の詳細処理の例について、説明する。R-CNNベースの物体検出エンジン16は、候補領域抽出部62と、CNN(Convolutional Neural Network)により構成された画像分類器63(請求項における「ニューラルネットワーク」)とを備えている。候補領域抽出部62は、入力画像61における、オブジェクトらしい領域を探し出す(抽出する)。また、画像分類器63は、候補領域抽出部62により抽出された領域に対してCNNを適用して、抽出された領域の画像が、どのクラスに属するかを分類する。画像分類器63は、特徴抽出部64と識別部65とを含んでいる。
【0038】
上記の特徴抽出部64は、候補領域抽出部62により抽出された領域の画像に対して、CNN特徴の抽出処理を行う。特徴抽出部64は、Convolutionレイヤ64aと、ReLUレイヤ64bと、Poolingレイヤ64cとを含んでいる。なお、特徴抽出部64は、Convolutionレイヤ64aとReLUレイヤ64bのみから構成されていてもよい。また、
図4には、簡略化した1組のConvolutionレイヤ64a、ReLUレイヤ64b、及びPoolingレイヤ64cのみを記載しているが、特徴抽出部64は、実際には、これらのレイヤを何組も(何層も)含んでいる。Convolutionレイヤ64aは、候補領域抽出部62により抽出された領域の画像に対して、畳み込み演算を行い、ReLUレイヤ64bは、上記の畳み込み演算結果に対する活性化処理を行い、Poolingレイヤ64cは、ReLUレイヤ64bからの活性化処理後の出力データに対して、縦・横方向の空間を小さくするための演算を行う。なお、上記のReLUレイヤ64bは、Convolutionレイヤ64aから出力された特徴マップにおける各データを、0以下の値のデータについては、0に置き換え、0を超える値のデータについては、そのまま出力する処理を行う。
【0039】
また、上記の識別部65は、特徴抽出部64から出力されたCNN特徴量に基づき、候補領域抽出部62により抽出された領域の画像に対するクラス分類を行う。この識別部65は、全結合の多層ニューラルネットワークから構成され、少なくとも、Affineレイヤ65aと、Softmaxレイヤ65bとを含んでいる。識別部65は、候補領域抽出部62により抽出された各領域の画像に対して、画像分類器63による分類先の各クラスに分類される可能性の高さを表す確率スコアを算出し、この確率スコアが一番大きいクラスを、分類先のクラスとする。なお、Softmaxレイヤ65bは、直近のAffineレイヤ65aから出力された、各クラスに分類される可能性の高さを表すスコアを、確率スコアに変換する。また、識別部65は、上記の各クラスに分類される可能性の高さを表す確率スコアと、各学習用画像についての教師ラベル(クラスラベル)との誤差に基づく、教師あり学習も行う。
【0040】
次に、
図4の下段に示される、着目領域抽出部44がGrad-CAMの技術を利用した場合の詳細処理の例について、説明する。図中のy
cは、上記のSoftmaxレイヤ65bから出力された、クラスcの確率スコアを示す。ただし、y
cは、上記のSoftmaxレイヤ65bにより確率スコアに変換される前の、クラスcのスコア(raw score)であってもよい。また、α
c
kは、クラスcについてのk番目の(Convolutionレイヤ64aの)フィルタに関する重み(係数)である。そして、A
kは、クラスcについてのk番目の特徴マップ(k番目のConvolutionレイヤ64aの後のPoolingレイヤ64cからの出力)を示す。
【0041】
CPU11の着目領域抽出部44は、下記の式(1)に基づいて、上記の重みα
c
kを算出する。具体的には、着目領域抽出部44は、クラスcの確率スコアy
cを、クラスcについてのk番目の特徴マップA
kのピクセル(i,j)における強度A
k
ijについて、偏微分して、勾配(gradient)(∂y
c/∂A
k
ij)を求める処理を繰り返し、これらの処理によって得られた勾配を、k番目の特徴マップA
kの全ピクセルについて平均することにより、重みα
c
kを求める。上記の勾配(∂y
c/∂A
k
ij)は、k番目の特徴マップのピクセル(i,j)が、クラスcの確率スコアy
cに及ぼす影響の大きさを示し、上記の重みα
c
kは、k番目の特徴マップA
k(全体)が、クラスcの確率スコアy
cに及ぼす影響の大きさを示す。
【数1】
【0042】
次に、着目領域抽出部44は、上記の式(1)で求めた各特徴マップA
kの重みα
c
kを用いて、下記の式(2)に基づき、n個の特徴マップA
nについての加重平均値を各ピクセル毎に計算し、この各ピクセル毎の加重平均値を、活性化関数ReLU=max{x,0}のパラメタxとした場合の出力値を、Grad-CAMによるヒートマップ出力値L
c
Grad-CAMとする。
【数2】
【0043】
ここで、上記のように、活性化関数ReLUを用いた理由は、我々は、注目しているクラス(クラスc)に肯定的な影響を与える特徴(ピクセル)にだけ興味があるからであり、ヒートマップ出力に必用なピクセルは、そのピクセル(i,j)についての出力値が増加したときに、クラスcの確率スコアycが増加するピクセルのみだからである。そして、着目領域抽出部44は、上記の活性化関数ReLUからの各ピクセルについての出力値(Grad-CAMによるヒートマップ出力値)のうち、所定値以上の出力値を持つピクセルが集まった領域を、着目領域68として抽出する。
【0044】
次に、上記の物体検出エンジン16を商品タグの検出に用いた場合における、物体検出エンジン16の再学習を例にして、この不足学習用画像収集支援システム10が行う、物体検出エンジン16の機械学習完了に必要な学習用画像の提示処理について、説明する。
【0045】
例えば、ある小売店の商品棚における商品タグが、今までは、
図5に示すフォーマットの商品タグ71のみであったという状況において、新たに、
図6に示す新しいフォーマットの商品タグ72が追加されたとする。そして、
図5に示す今までの商品タグ71には、商品名71a、値段71b、及びバーコード71cが記載されており、
図6に示す新しい商品タグ72には、商品名72a、値段72b、及びバーコード72cに加えて、大セール表示72dが記載されていたとする。この場合には、新しいフォーマットの商品タグ72も商品タグであると認識させるために、物体検出エンジン16の画像分類器63の再学習が必要になる場合がある。このケースにおいて、物体検出エンジン16の画像分類器63は、本来なら、今までの商品タグ71と新しい商品タグ72において画像的特徴が共通する、バーコード71c,72cの領域に着目すべきである(値段71bや72bに注目する場合もあるが、一般的にこれらは商品タグ毎に異なる数字となることが多く、「円」の部分を除き着目領域とならない場合が多い。一方でバーコードは、それぞれ意味する数字が異なっても、画像的特徴としては縦方向の直線が長方形状に分布するものであり、着目領域となりやすい)。しかしながら、この再学習の途中において、偶々、新しい商品タグ72における大セール表示72dの特徴が、(商品タグに相当するクラス以外の)他のクラスの特徴に似ていたために、物体検出エンジン16の画像分類器63が、(商品タグに相当する特定クラスの認識において)現時点で着目している領域が、新しい商品タグ72における大セール表示72dの領域であったとする。
【0046】
上記の状況において、ユーザである店員が、物体検出エンジン16の(再)学習状況を確認するために、カメラ27を用いて、
図6に示す新しいフォーマットの商品タグ72の画像を、テスト用画像として撮影した上で、このテスト用画像における、商品タグを判別するための特徴部分の指示入力操作を行ったとする。この指示入力操作は、具体的には、店員が、スマートフォン2のタッチパネルタイプのディスプレイ28へのタッチ操作で、
図7に示す特徴部分指示枠81により、商品タグの認識において自分が特徴部分と考える、テスト用画像中の部分(領域)を囲むという操作である。この指示入力操作に応じて、スマートフォン2の特徴部分登録部46が、店員により指示された特徴部分(特徴部分指示枠81内の領域)を、学習用サーバ1側の特徴部分DB18に登録する。ここでは、店員が、商品タグ72におけるバーコード72cの領域を、商品タグを判別するための特徴部分として登録したものとする。
【0047】
上記の特徴部分の登録処理が完了すると、学習用サーバ1の着目領域抽出部44は、スマートフォン2から受信した上記のテスト用画像について、画像分類器63が、商品タグの認識において、現時点で着目しているテスト用画像中の着目領域を抽出する。ここでは、上記のように、画像分類器63が現時点で着目している領域(着目領域)が、大セール表示72dの領域であり、店員により指示された特徴部分(の領域)が、バーコード72cの領域であるので、上記
図3のS5において算出される機械学習の進捗率は、低くなる。
【0048】
学習用サーバ1の不足学習用画像推定部45は、上記の機械学習の進捗率と、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分とに基づいて、物体検出エンジン16の画像分類器63の(商品タグの認識についての)再学習を完了するのに必要な学習用画像の内容と数量を推定する。具体的には、この例の場合は、新しい商品タグ72における大セール表示72dの特徴が、(商品タグに相当するクラス以外の)他のクラスの特徴に似ていたために、機械学習の進捗率が低くなっていると考えられる。このため、不足学習用画像推定部45は、商品タグに対応するクラスについての機械学習を完了するのに必要な学習用画像(の内容)が、大セール表示72dを含む商品タグ(新しい商品タグ72)が写り込んだ学習用画像であるという推定と、この種類の学習画像が、後どれ位必要であるかという推定を行う。学習用サーバ1の通信部12は、上記の必要な学習用画像の内容(種類)と数量を、不足学習用画像情報として、スマートフォン2に送信する
【0049】
不足学習用画像推定部45は、回帰モデルのニューラルネットワークにより実現することができる。当該ニューラルネットワークは、着目領域と特徴部分を入力とし、当該着目領域と特徴部分の状況において必要な学習用画像の数量を出力として、事前に学習させたものであり、充分な量の学習データ(入力と出力の組み合わせ)を用いて学習することで、ある未知の着目領域と特徴部分の組み合わせにおいて、必要な学習用画像の数量を回帰(予測(推定))することが可能となる。必要な学習用画像の内容については、着目領域とテスト画像のANDをとった画像が利用可能である。
【0050】
スマートフォン2の必要学習用画像提示部47は、学習用サーバ1から受信した上記の不足学習用画像情報に基づいて、商品タグを認識するための画像分類器の機械学習(再学習)を完了するのに必要な、学習用画像の内容と数量を、ディスプレイ28を用いて表示(提示)する。この例では、スマートフォン2の必要学習用画像提示部47によってディスプレイ28に表示される学習用画像の内容と数量(ガイダンス)は、
図8に示すようになる。店員は、
図8に示すガイダンスに従って、大セール表示72dを含む学習用画像を、カメラ27で、50枚撮影(取得)することにより、商品タグを認識するための画像分類器の機械学習(再学習)を完了させることができる。これにより、店舗の現場において、ディープラーニングに関する知識のない店員が、スマートフォン2が提示した学習用画像の内容と数量(ガイダンス)に基づいて、容易に、機械学習を完了するのに必要な学習用画像を作成することができる。従って、上記のガイダンス(学習用画像の内容と数量)に基づいて、店員が、容易に、それまでの機械学習の軌道を修正することができる。
【0051】
上記のように、本実施形態の不足学習用画像推定プログラム19を実装した学習用サーバ1によれば、商品タグ等の特定の物体を判別するための特徴部分と、この特定の物体の認識において、画像分類器63(請求項における「ニューラルネットワーク」)が現時点で着目している入力画像(テスト用画像)中の着目領域とに基づいて、この特定の物体を認識するための画像分類器63の機械学習を完了するのに必要な学習用画像の内容と数量を推定することができる。これにより、上記の機械学習を完了するのに必要な学習用画像の内容と数量を、ユーザに知らせることが可能になるので、ディープラーニングに関する知識のないユーザでも、容易に、上記の機械学習を完了するのに必要な学習用画像を作成することが可能になる。従って、画像分類器63の再学習を行う度に、ディープラーニングに関する知識のあるAI技術者が必要になるという状況を、回避することができる。
【0052】
また、本実施形態の不足学習用画像推定プログラム19を実装した学習用サーバ1によれば、CPU11の不足学習用画像推定部45が、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分との一致度に基づいて、画像分類器63の機械学習の進捗度を算出し、この進捗度と、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分とに基づいて、画像分類器63の機械学習を完了するのに必要な学習用画像の内容と数量を推定するようにした。ここで、上記のように、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分との一致度に基づいて、画像分類器63の機械学習の進捗度を算出することにより、画像分類器63の機械学習の進捗度を正確に算出することができるので、この正確な進捗度と、着目領域抽出部44により抽出された着目領域と、特徴部分DB18に記憶された特徴部分とを用いることにより、画像分類器63の機械学習を完了するのに必要な学習用画像の内容と数量を、正確に推定することが可能になる。
【0053】
また、本実施形態の不足学習用画像収集支援システム10によれば、学習用サーバ1が、ユーザにより指示された、(商品タグ等の)特定の物体を判別するための特徴部分と、この特定の物体の認識において、画像分類器63が現時点で着目している入力画像(テスト用画像)中の着目領域とに基づいて、この特定の物体を認識するための画像分類器63の機械学習を完了するのに必要な学習用画像の内容と数量を推定して、推定した学習用画像の内容と数量を、不足学習用画像情報としてスマートフォン2に送信する。そして、スマートフォン2が、学習用サーバ1から受信した不足学習用画像情報に基づいて、特定の物体を認識するための画像分類器63の機械学習を完了するのに必要な、学習用画像の内容と数量を、ユーザに提示する(上記の機械学習を完了するのに必要な学習用画像の内容と数量を、スマートフォン2を保持するユーザに知らせる)。これにより、ディープラーニングに関する知識のないユーザでも、上記のスマートフォン2が提示した学習用画像の内容と数量に基づいて、容易に、上記の機械学習を完了するのに必要な学習用画像を作成することが可能になる。従って、画像分類器63の再学習を行う度に、ディープラーニングに関する知識のあるAI技術者が必要になるという状況を、回避することができる。
【0054】
変形例:
なお、本発明は、上記の各実施形態の構成に限られず、発明の趣旨を変更しない範囲で種々の変形が可能である。次に、本発明の変形例について説明する。
【0055】
変形例1:
上記の実施形態では、スマートフォン2の必要学習用画像提示部47が、画像分類器の機械学習を完了するのに必要な、学習用画像の内容と数量を、ディスプレイ28に表示することにより、ユーザに提示したが、画像分類器の機械学習を完了するのに必要な、学習用画像の内容と数量を、スピーカを用いた音声ガイダンスによって、ユーザに提示してもよい。
【0056】
変形例2:
また、上記の実施形態では、学習用サーバ1が、ユーザ(店員)がスマートフォン2のカメラ27で撮影した画像を、スマートフォン2から受信して、学習用画像及びテスト用画像として用いる場合の例を示したが、これに限られず、例えば、他のサーバから送信された画像を、学習用画像及びテスト用画像として用いてもよい。また、学習用サーバが、いわゆるUSBメモリ等のリムーバブルメディアから、学習用画像及びテスト用画像を読み取ることにより、これらの画像を取得するようにしてもよい。すなわち、請求項における画像取得部は、上記実施形態におけるスマートフォン2のような情報処理端末から、学習用画像等の入力画像を取得する通信装置(
図1における通信部12に相当)に限られず、例えば、リムーバブルメディアから学習用画像等の入力画像を取得(入力)するための入力端子であってもよい。
【0057】
変形例3:
上記の実施形態では、学習用サーバ1が、画像分類器63を含む物体検出エンジン16を用いる場合の例を示したが、学習用サーバ1が、物体の検出を行わず、物体(例えば、商品タグ)の認識だけを行う場合には、物体検出エンジンの代わりに、画像分類器を単独で用いればよい。
【0058】
変形例4:
また、上記の実施形態では、R-CNNベースの物体検出エンジン16を用いる場合の例を示したが、Faster R-CNNベースの物体検出エンジンを用いてもよい。Faster R-CNNベースの物体検出エンジンを用いることにより、物体認識処理(
図4中の画像分類器63が行う、画像のクラス分類処理に相当)だけではなく、画像における物体候補領域抽出処理(
図4中の候補領域抽出部62が行う処理)も、一つのCNNで行うことができる。
【0059】
変形例5:
上記の実施形態では、本発明の情報処理端末が、スマートフォン2である場合の例を示したが、本発明の情報処理端末は、これに限られず、例えば、カメラを備えたタブレット型コンピュータであってもよい。
【符号の説明】
【0060】
1 学習用サーバ(コンピュータ)
2 スマートフォン(情報処理端末)
12 通信部(画像取得部、画像受信部、サーバ側送信部)
18 特徴部分DB(特徴部分記憶部)
19 不足学習用画像推定プログラム
22 通信部(端末側送信部)
27 カメラ(撮影部)
28 (タッチパネルタイプの)ディスプレイ(操作部)
42 画像受信部(画像取得部、画像受信部)
43 機械学習部
44 着目領域抽出部
45 不足学習用画像推定部
47 必要学習用画像提示部
61 入力画像
63 画像分類器(ニューラルネットワーク)
68 着目領域