(57)【特許請求の範囲】
【請求項１】
パラメータを用いて入力データに対する推論を行う情報処理装置であって、
前記入力データを取得する取得手段と、
追加学習前のパラメータを基本パラメータとして記憶する第１の記憶手段と、
前記推論に使用されるパラメータと前記基本パラメータとの差分である第１の差分パラメータを記憶する第２の記憶手段と、
前記基本パラメータに対する追加学習を行い、追加学習後のパラメータと前記基本パラメータとの差分を第２の差分パラメータとして計算する追加学習手段と、
前記第１の差分パラメータと前記第２の差分パラメータとに基づいて、前記第２の記憶手段に記憶された前記第１の差分パラメータを更新する更新手段と、
前記基本パラメータと、前記更新手段により更新された前記第１の差分パラメータとに基づいてモデルパラメータを生成し、該生成されたモデルパラメータを用いて前記入力データに対する推論を行う推論手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記更新手段は、前記第１の差分パラメータと前記第２の差分パラメータとを、所定の混合比で加算することにより、前記第１の差分パラメータを更新することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記混合比は前記追加学習の回数に基づいて定められることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記混合比は予め定められた一定の比であることを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記追加学習手段は、誤差逆伝搬法によってニューラルネットワークを学習する手段であり、前記基本パラメータを初期値として誤差逆伝搬法で追加学習した後、得られたパラメータと前記基本パラメータとの差分を前記第２の差分パラメータとして計算することを特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記入力データは顔の画像を含み、前記推論手段が行う推論は、顔認証を含むことを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記入力データと、該入力データに対する前記推論手段が行う推論の結果とを表示する表示手段と、
前記推論の結果が正しいか否かに関する情報を入力する入力手段と、
をさらに備えることを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記追加学習手段は、前記入力手段より入力された情報により正しいとされた推論の結果を学習データとして追加学習を行うことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記推論手段は、前記推論の信頼度を表す数値を生成することを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記推論手段は、前記推論の信頼度を表す数値を生成し、
前記表示手段は、前記推論の信頼度を表す数値が所定の閾値未満の場合、前記推論の結果と前記入力データとを表示することを特徴とする請求項７に記載の情報処理装置。
【請求項１１】
前記表示手段が前記推論の結果と前記入力データとを表示する場合にアラームを発するアラーム手段をさらに備えることを特徴とする請求項７または１０に記載の情報処理装置。
【請求項１２】
前記第２の記憶手段は、前記入力データが作成されたそれぞれの環境に応じて、複数の第１の差分パラメータを記憶することを特徴とする請求項１〜１１のいずれか１項に記載の情報処理装置。
【請求項１３】
請求項１〜１２のいずれか１項に記載の情報処理装置と、
人物の画像を撮像する撮像装置と、
複数の登録画像が記憶された登録画像記憶部と、
所定エリアへの出入口を開閉するゲートを駆動するゲート駆動部とを備え、
前記情報処理装置の推論手段による推論の結果、前記撮像装置により撮像された人物の画像が前記登録画像記憶部に記憶された複数の登録画像のいずれかと一致すると判断された場合、前記推論手段は前記ゲート駆動部にゲートを開けるための信号を送ることを特徴とするシステム。
【請求項１４】
パラメータを用いて入力データに対する推論を行う情報処理方法であって、
追加学習前のパラメータを基本パラメータとして、前記推論に使用されるパラメータと前記基本パラメータとの差分である第１の差分パラメータを記憶手段に記憶するステップと、
前記基本パラメータに対する追加学習を行い、追加学習後のパラメータと前記基本パラメータとの差分を第２の差分パラメータとして計算するステップと、
前記第１の差分パラメータと前記第２の差分パラメータとに基づいて、前記記憶手段に記憶された前記第１の差分パラメータを更新するステップと、
前記基本パラメータと、更新された前記第１の差分パラメータとに基づいてモデルパラメータを生成し、該生成されたモデルパラメータを用いて前記入力データに対する推論を行うステップと、
を有することを特徴とする情報処理方法。
【請求項１５】
コンピュータを、請求項１〜１２のいずれか１項に記載の情報処理装置として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、追加学習を行うことができる情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
近年、人物の顔画像を使った顔認証の需要が高まっている。顔認証の精度を高めるためには、照明条件、顔向き条件、撮像ノイズなどといった、画像の見え方に様々な変動を与える撮影条件の違いに対応する必要がある。すべての条件変動に対応したモデルパラメータを予め学習しておくことは困難であるが、カメラの設置現場ごとの変動の範囲は限定的であるので、予めモデルパラメータを学習しておくことはできる。そして、予め学習しておいたモデルパラメータに対して、現場で取得した画像データを追加学習することで効果的に精度を高めることができる。しかし、昼には昼の画像しか収集できないなど、一度に取得できる画像データの条件には限界があるため、複数回に分けて追加学習を行うことが考えられる。
このような複数回の追加学習を行う場合、最新の画像データに適合したモデルパラメータを学習することで、過去に学習した情報を忘却してしまうということが問題となる。
この問題に対し、特許文献１では、追加学習のたびにニューラルネットワークに中間ユニットを追加し、追加したユニットに関する重みだけが更新しやすくなるような学習方法によって、過去に学習した重みを維持する方法が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０４−２６０１６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の方法では、追加学習のたびに中間ユニットを追加する必要があり、ネットワークのパラメータ数が増えることで、モデルパラメータの保持に必要なメモリ使用量や、学習および推論に必要な計算量が増大してしまうという課題があった。
上記課題を解決するために、本発明は、過去に学習した情報を忘却することなく、追加学習に関する装置側の負担増大を抑制することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記の目的を達成するために、本発明の一態様による情報処理装置は、パラメータを用いて入力データに対する推論を行う情報処理装置であって、前記入力データを取得する取得手段と、追加学習前のパラメータを基本パラメータとして記憶する第１の記憶手段と、前記推論に使用されるパラメータと前記基本パラメータとの差分である第１の差分パラメータを記憶する第２の記憶手段と、前記基本パラメータに対する追加学習を行い、追加学習後のパラメータと前記基本パラメータとの差分を第２の差分パラメータとして計算する追加学習手段と、前記第１の差分パラメータと前記第２の差分パラメータとに基づいて、前記第２の記憶手段に記憶された前記第１の差分パラメータを更新する更新手段と、前記基本パラメータと、前記更新手段により更新された前記第１の差分パラメータとに基づいてモデルパラメータを生成し、該生成されたモデルパラメータを用いて前記入力データに対する推論を行う推論手段とを備える。
【発明の効果】
【０００６】
本発明によれば、過去に学習した情報を忘却することなく、追加学習を行うための装置側の負担増大を抑制することができる。
【図面の簡単な説明】
【０００７】
【図１】ＣＮＮの構成例を示す図。
【図２】本発明の実施形態のハードウェア構成を説明する図。
【図３】本発明の実施形態の機能構成を示す図。
【図４】推論結果表示部の表示例を示す図。
【図５】推論結果記憶部に記憶される情報の例を示す図。
【図６】追加学習のフローを示す図。
【図７】混合比設定のユーザインターフェースの表示例を示す図。
【図８】条件選択のユーザインターフェースの表示例を示す図。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明を実施するための実施形態を詳細に説明する。以下に説明する実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。
実施形態１
以下、顔認証による入退室管理システムを例にとって本発明の実施形態１について説明する。
本システムは、建物内の所定のエリアに入ろうとする人物の画像を現場（当該エリア近傍）に備え付けられたカメラから取得し、予め登録しておいた複数の登録画像と照合することにより、当該人物の侵入を許可するか否かを判定するものである。許可すると判定した場合、本システムは当該エリアの出入口を開閉するゲートを開く等の操作を行う。許可しないと判定した場合、本システムはゲートを閉じたままにする等の操作を行う。本実施形態では、ゲートは、初期設定において、閉じられているとする。また、カメラは建物内に設置されているとする。
本実施形態では、顔認証の推論を行うための数値モデル（数学モデル）として、畳み込みニューラルネットワーク（ＣＮＮ）を用いる。なお、本発明の数値モデルはＣＮＮに限定されない。ＣＮＮは、Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋの略である。
【０００９】
（畳み込みニューラルネットワーク：ＣＮＮ）
図１はＣＮＮの例を表す図である。このＣＮＮは、１つの顔画像を人物の固有性を表す抽象度の高い特徴ベクトルへ変換する。顔認証では、検査対象の顔画像（検査画像）と、予め登録された比較対象の顔画像（登録画像）とをそれぞれＣＮＮに入力し、得られた２つの特徴ベクトルを照合することで、それらが同一人物か別人かを推定する。照合方法としては、例えばＳＶＭ（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）等の識別器を用いる方法や、特徴ベクトル間の単純なユークリッド距離が予め定めた閾値よりも大きいか小さいかに基づき判定する方法などがある。なお、本実施形態で使用可能な照合方法は上記したものに限定されない。
図１のＣＮＮは４種類の演算要素（Convn、Pooln、ActnおよびFulln）を含む。Convnは畳み込み演算、Poolnはプーリング、Actnは活性化関数、Fullnは全結合演算を表す。以下、それぞれの演算要素について説明する。
畳み込み演算がネットワークに含まれていることがＣＮＮの特徴である。畳み込み演算は、多チャンネル画像（３階テンソル）から多チャンネル画像への変換であり、モデルパラメータをθとして、畳み込みカーネルＷ（４階テンソル）とバイアスｂ（ベクトル）とを持ち、式１のような線形演算で表される。
【００１０】
【数１】
0006661398.tif 000002
【００１１】
添え字ｋは入力画像チャンネル、添え字ｌは出力画像チャンネル、添え字ｉ、ｊは出力画素座標、添え字ｕ、ｖは畳み込みカーネル上の画素座標である。Ｋは入力チャンネル数、Ｕ、Ｖはカーネルサイズ（幅および高さ）である。
プーリングは、画像の解像度を落とす演算である。プーリングとして、最大値プーリングや平均値プーリングなどを用いることができる。
活性化関数は、ニューラルネットの非線形性の基礎となっている。例えば、ロジスティックシグモイド関数や、Ｒｅｃｔｉｆｉｅｒ  Ｌｉｎｅａｒ  Ｕｎｉｔ（ＲｅＬＵ）関数などが用いられる。
全結合演算は、入出力の全成分の間にパラメータ（畳み込みカーネル）Ｗによって重みをつけて加算し、バイアスｂを付加する演算であり、式２のように表される。
【００１２】
【数２】
0006661398.tif 000003
【００１３】
Ｄは入力ベクトルＸの次元数である。
畳み込み演算や全結合演算は、モデルパラメータθ＝｛Ｗ,ｂ｝に関して線形演算である。畳み込み演算および全結合演算は、式３のように関数Ｆで表記することができる。
Ｙ＝Ｆ（Ｘ,θ）              （式３）
追加学習では、現場のデータを用いてモデルパラメータθを誤差逆伝搬法によって更新する。このとき、追加学習を繰り返すことで過去に学習した情報を忘却してしまう。この忘却を防止するために、本実施形態では、モデルパラメータθを基本パラメータθ０と差分パラメータΔθに分割して保持する。基本パラメータとは、現場設置前に予め学習したモデルパラメータで、追加学習によって更新されない。差分モデル（差分パラメータ）は基本モデル（基本パラメータ）からの差分で、現場設置時には０によって初期化され、追加学習によって更新される。θ０およびΔθ間で対応するモデルパラメータはすべて階数および次元数が同一である。基本パラメータと差分パラメータにより、式３は式４のように表される。
Ｙ＝Ｆ（Ｘ, θ０+Δθ）      （式４）
【００１４】
（情報処理装置１０のハードウェア構成）
図２は本実施形態に係る入退室管理システムである情報処理装置１０のハードウェア構成を示す図である。情報処理装置１０は画像解析をするので、画像解析装置と称することもできる。情報処理装置（画像解析装置）１０は、撮像装置１１、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１２、記憶装置１３、ゲート装置１４、入力装置１５、および出力装置１６を有する。各装置は、互いに通信可能に構成され、バス１７等により接続されている。なお、各装置は、互いに無線接続されてもよい。
撮像装置１１はカメラを含んでおり、通過しようとする人物の様子を撮像する。撮像装置１１には時計も内蔵されており、撮像装置１１は撮像の時刻や時間帯（朝・昼・夜）を検出することができる。撮像装置１１は動画および静止画像を撮像することができる。
ＣＰＵ１２は、情報処理装置１０の動作をコントロールし、記憶装置１３に格納されたプログラムの実行等を行う。
【００１５】
記憶装置１３は、磁気記憶装置、半導体メモリ等のストレージデバイスを含み、ＣＰＵ１２の動作に基づき読み込まれたプログラムを記憶する。また、記憶装置１３は、長時間記憶しなくてはならないデータ等を記憶する。本実施形態では、ＣＰＵ１２が、記憶装置１３に格納されたプログラムの手順に従って処理を行うことによって、情報処理装置１０における機能が実現される。また、記憶装置１３は、本実施形態の情報処理装置１０が処理対象とする画像および認証結果（推論結果）等を記憶する。本実施形態では、記憶装置１３は、基本パラメータ、差分パラメータおよび仮差分パラメータ（後述）を記憶する。
ゲート装置１４は、建物内の所定のエリアの出入口を開閉するゲートを含む。ゲート装置１４のゲートは、情報装置装置１０の推論結果に応じて開閉される。
【００１６】
入力装置１５および出力装置１６は、情報処理装置（顔認証システム）１０の作業者（監視員、ユーザ）が情報処理装置１０に対して操作を行うためのインターフェース装置である。入力装置１５は、マウス、キーボード、タッチパネルデバイス、ボタン等を含み、作業者は入力装置１５を介して各種の指示を情報処理装置１０に入力する。例えば、作業者は、入力装置１５を介して、推論の結果が正しいか否かに関する情報を入力する。出力装置１６は、液晶パネル、外部モニタ、アラーム機器等を含み、各種の情報を作業者に出力する。
なお、情報処理装置１０のハードウェア構成は、上述した構成に限定されない。例えば、情報処理装置１０は、各種の装置間で通信を行うためのＩ／Ｏ装置を備えてもよい。例えば、Ｉ／Ｏ装置は、メモリーカード、ＵＳＢケーブル等の入出力部、有線、無線等による送受信部である。
【００１７】
（情報処理装置１０の機能構成）
図３は、実施形態に係る情報処理装置（画像解析装置）１０の機能構成を示す図である。情報処理装置１０の処理および機能は、図３に示す各部により実現される。
情報処理装置１０は、データ取得部３１、データ記憶部３２、登録情報記憶部３３、推論部３４、推論結果記憶部３５、推論結果表示部３６、正解情報入力部３７、ゲート駆動部３８およびアラーム出力部３９を有する。さらに、情報処理装置１０は、差分パラメータ記憶部４０、基本パラメータ記憶部４１、仮差分パラメータ学習部４２、差分パラメータ調整部４３および追加学習回数記憶部４４を有する。
データ取得部３１は、人物の顔画像を撮像するカメラであり、撮像した画像を入力データとして取得し、顔検出を行った後、顔画像を抽出してデータ記憶部３２に送る。データ記憶部３２は、データ取得部３１から受け取った顔画像を記憶する。登録情報記憶部３３には、ゲート通過を許可する人物の顔画像を予め登録しておく。登録情報記憶部３３は、登録した顔画像を記憶するので、登録画像記憶部と称することもできる。
【００１８】
推論結果記憶部３５は検査画像と推論結果を記憶する。推論結果表示部３６は、液晶ディスプレイ等からなる。推論結果表示部３６は、推論結果記憶部３５から受け取る情報（推論の結果、入力データ（検査画像）等）を表示する。
正解情報入力部３７は、情報処理装置１０の作業者が正解情報（後述する）を情報処理装置１０に入力する際に使用する入力部である。入力された正解情報は推論結果記憶部３５に記憶される。
ゲート駆動部３８は、ゲートを駆動してゲートを開閉する。アラーム出力部３９は、推論部３４からアラーム信号を受信すると、音や文字等によるアラームを発し、アラーム信号が受信されたことを作業者に知らせる。
基本パラメータ記憶部４１には、情報処理装置１０（撮像装置１１）の現場への設置に先立ち（例えば、情報処理装置の出荷時に）予め学習しておいたＣＮＮのモデルパラメータが基本パラメータとして記憶されている。
差分パラメータ記憶部４０には、撮像装置１１の現場設置後に基本パラメータに対して追加学習を行うことによって学習したモデルパラメータと、基本パラメータとの差分が、差分パラメータとして記憶されている。情報処理装置１０が現場に設置される際には、差分パラメータはすべて０の値で初期化される。撮像装置１１の現場設置後に追加学習によって最初に得た差分パラメータを、当初差分パラメータと称する。
【００１９】
推論部３４は、基本パラメータ記憶部４１および差分パラメータ記憶部４０からそれぞれ基本パラメータθ０および差分パラメータΔθを読み出し、加算することで、モデルパラメータθ＝θ０+Δθを構成する。そして、推論部３４は、データ記憶部３２に記憶された検査対象人物の顔画像に対し、登録情報記憶部３３に記憶された登録人物の顔画像を用いて、人物認証を行う。推論部３４は、推論結果（すなわち検査人物が登録人物のいずれと一致する、あるいは、いずれの人物とも一致しない）とともに０から１の範囲の認証信頼度を出力（生成）する。認証信頼度の数値が０に近ければ推論結果が誤りである可能性が高いことを表し、１に近ければ推論結果が正しい可能性が高いことを表す。なお、認証信頼度は、０から１の範囲で表示するのではなく、０％から１００％の範囲で表示してもよい。図４および図５において認証信頼度は％で表示している。本実施形態では、認証信頼度は、検査画像と登録画像の一致率に基づく数値である。
【００２０】
認証信頼度が事前に定めたある閾値（例えば０．９または９０％）以上であった場合、情報処理装置１０は推論結果に応じてゲート駆動部３８によってゲートを操作する（開閉する）。すなわち、検査人物が登録人物のいずれかであると判定され且つ認証信頼度が閾値以上であった場合、情報処理装置１０（推論部３４）はゲートを開けるための信号（指示）をゲート駆動部３８に送る。その結果、情報処理装置１０はゲートを開けることになる。検査人物が登録人物のいずれでもないと判定され且つ認証信頼度が閾値以上であった場合、情報処理装置１０はゲートを閉じたままにする。
【００２１】
一方、認証信頼度が閾値よりも低かった場合、本実施形態では、推論結果が正しいかどうかを作業者に確認させる。より詳しくは、情報処理装置１０は推論結果記憶部３５に検査画像と推論結果を記憶し、その情報（検査画像と推論結果に関する情報）を推論結果表示部３６に送る。そして、推論結果表示部３６は、当該情報を表示する。つまり、推論結果表示部３６は、推論の結果と入力データ（検査画像）を表示する。この場合、情報処理装置１０（推論部３４）は、さらに、アラーム出力部３９にアラーム信号を出力する。アラーム出力部３９はアラーム信号を受信すると、作業者を呼ぶためのアラームを発する。アラームを知覚した作業者は、推論結果表示部３６に表示された推論結果と検査画像を確認し、正解情報入力部３７より正解情報（すなわち検査人物が正しくは誰であるかに関する情報）を入力する。情報処理装置１０は、正解情報を推論結果と検査画像とに紐づけて推論結果記憶部３５に記憶する。このような手順によって、認証信頼度の低い画像サンプル（検査画像）が正解情報とともに推論結果記憶部３５に蓄積されていく。
【００２２】
なお、図３に示す各機能ブロックは、プログラムとして、図２の記憶装置１３に記憶され、ＣＰＵ１２によって実行される。また、図３に示す機能ブロックの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからＦＰＧＡ上に自動的に専用回路を生成すればよい。ＦＰＧＡは、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略である。また、ＦＰＧＡと同様にしてＧａｔｅ  Ａｒｒａｙ回路を形成し、ハードウェアとして実現するようにしてもよい。また、図３に示す機能ブロックの少なくとも一部は、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により実現するようにしてもよい。
【００２３】
（推論結果表示部３６の表示情報）
図４は、推論結果表示部３６が表示する情報の例を示す。図４(ａ)は、検査人物（検査画像）が登録人物（登録画像）のいずれにも一致しないと推定され、その認証信頼度が６７％であった場合の表示例である。推論結果表示部３６は、３つの表示エリア５１、５２および５４を有すると共に、２つのタッチパネル式ボタン５３および５５を有する。表示エリア５１には、認証の対象である検査画像が表示される。表示エリア５２には、推論結果（未登録）と認証信頼度（６７％）と×画像とが表示される。「未登録」は、推論部３４が検査人物の画像は登録人物の画像のいずれとも一致しないと推論した場合に表示される。
図４（ａ）の場合、認証信頼度が閾値未満であるので、アラーム出力部３９からアラームが発せられ、作業者は推論結果表示部３６を見ることになる。作業者がこの推論結果（推論結果表示部３６に表示されている内容）が正しいと判断した場合、ボタン５３を押下することで、推論結果がそのまま正解として記憶される。つまり、認証信頼度は６７％であるので推論の信頼度は低い（認証信頼度は閾値９０％より低い）と判定されたが、作業者が確認したところ、認証信頼度は１００％としてよいと判断された。その結果、図４（ａ）の検査画像を登録画像と比較する際の認証信頼度は、以後の推論において閾値以上の信頼度を有することになる。図４（ａ）の例では、作業者はボタン５３を押下することで、正解情報を入力していることになる。
【００２４】
表示エリア５４には、登録人物（登録画像）のうち、検査人物と一致する可能性が高い人物が、可能性の順番に表示される。図４（ａ）の例では、表示エリア５４には３つの人物画像が表示されており、左から右に行くにしたがって検査人物と一致する可能性が小さくなる。推論結果（未登録）が正しいか否かを判断する場合、作業者は、検査画像の人物が、表示エリア５４に表示されている画像の人物と一致しないことを確認する。その後、作業者は、ボタン５５を押下することにより、残りの登録画像を全て表示エリア５４に表示して、当該残りの登録画像の全てが検査画像の人物ではないことを確認する。この確認により、作業者は、推定結果（未登録）が正しかったと判断することができる。
【００２５】
もし表示エリア５４に表示された人物の中に、検査人物と一致する人物が含まれていた場合、作業者はその画像を選択する。つまり、作業者は表示エリア５４に表示された人物の中から正解の人物を選択する。選択された画像は、表示エリア５３に表示される。これは、作業者が「未登録」という推論結果が正しくないと判断した場合である。したがって、この場合には「未登録」は「一致」に変更され、表示エリア５３の×画像は、上記選択された画像に変更され、認証信頼度は１００％に変更される。そして、このような変更後の情報が正解情報として、推論結果記憶部３５に蓄積される。
【００２６】
図４(ｂ)は検査人物が登録人物のある人物と判定された場合の表示例である。図４（ｂ）の場合も認証信頼度が閾値（９０％）未満であるので、推論結果および認証信頼度等が推論結果表示部３６に表示されている。作業者は、この推論結果が正しいかを、登録画像（表示エリア５４に表示される登録画像）に基づいて判断する。この判断は図４（ａ）で説明した判断と同様の判断であるので説明は省略する。作業者がこの推論結果（検査人物が判定された登録人物である）が正しいと判断した場合、ボタン５３を押下することで、推論結果がそのまま正解として推論結果記憶部３５に記憶される。なお、登録画像には×画像も含まれている。図４（ｂ）の例において、もし「一致」という推論結果が間違っている場合には、作業者は×画像（未登録）を選択する。つまり×画像（未登録）が正解情報として推論結果記憶部３５に蓄積されることになる。
【００２７】
（推論結果記憶部３５の記憶情報）
図５は、推論結果記憶部３５に記憶される情報の例を示す。認証結果一件ごとに一行が記憶される。各検査画像に対し、「推論結果」と「認証信頼度」、作業者の入力した「正解（正解情報）」が記憶される。「推論結果」は、検査人物に一致する可能性が最も高い登録人物が「１位」列に記憶され、以下、可能性の高い順に「２位」から「４位」まで記憶される。「推論結果」と「認証信頼度」は、推論結果表示部３６（図４）に表示するために用いられる。「正解」は、以下で説明する追加学習において用いられる。
（追加学習）
次に、追加学習の手順について説明する。追加学習によって現場により適合したモデルパラメータを構成することが可能になる。追加学習は、推論結果記憶部３５に記憶されたサンプル数が一定数に達したとき、あるいは作業者が明示的に指示したとき、あるいは一定期間ごとに実施される。
図６は追加学習のフローである。以下、図６を参照して追加学習を説明する。なお、図６の説明においては、当初差分パラメータは既に学習（取得）されており、正解情報（後述）も取得されているとする。また、基本パラメータθ０は基本パラメータ記憶部４１に記憶されているとする。
【００２８】
まず、Ｓ６１において、追加学習に用いる学習データの収集を行う。Ｓ６１の学習データの収集は、本実施形態では、仮差分パラメータ学習部４２が行う。すなわち、仮差分パラメータ学習部４２は、推論結果記憶部３５から、検査画像と正解情報とを取得する（追加学習データの取得）。Ｎをサンプル数とすると、検査画像はＸ＝｛Ｘ１,Ｘ２,…,ＸＮ｝と表され、正解情報はｔ＝｛ｔ１,ｔ２,…、ｔＮ｝と表される。ｔｉは、０以上Ｎ以下の値をとり、０は登録人物のいずれにも一致しないことを表し、１以上Ｎ以下はいずれかの登録人物に一致することを表す。また、Ｓ６１において、仮差分パラメータ学習部４２は、基本パラメータ記憶部４１から基本パラメータθ０を読み出す。
【００２９】
次にＳ６２において、仮差分パラメータ学習部４２は、Ｓ６１で取得した学習データを用いて、基本パラメータからの差分としてのパラメータ（仮差分パラメータ）を学習する（得る）。仮差分パラメータは、当初差分パラメータを計算（取得）した後に追加学習ごとに得られる基本パラメータからの差分である。
以下にＳ６２における仮差分パラメータの学習方法を説明する。
ＣＮＮに含まれる線形演算（畳み込み演算ないし全結合演算）を式５のように構成する。
【００３０】
【数３】
0006661398.tif 000004
式５はＦの線形性により、式６のようにモデルパラメータの加重和を用いて表すことができる。
【００３１】
【数４】
0006661398.tif 000005
【００３２】
なお、ＣＮＮにおける仮差分パラメータの算出方法は上記の方法に限定されない。基本パラメータを初期値として誤差逆伝搬法で学習したのち、得られた（学習後の）パラメータと基本モデル（基本パラメータ）との差分を仮差分パラメータとしてもよい。また、上記の方法で仮差分パラメータを算出する対象は、ＣＮＮに含まれるすべての線形演算としてもよいし、一部の線形演算としてもよい。仮差分パラメータを算出する対象を一部の線形演算とする場合は、他の仮差分パラメータの算出方法と組み合わせてもよい。
図６の説明に戻る。Ｓ６２で仮差分パラメータを得た後、Ｓ６３へ進む。
Ｓ６３において、差分パラメータ調整部４３は、追加学習回数記憶部４４に記憶されている追加学習回数ｍを読み出す。追加学習回数は、初期差分パラメータの学習後に追加学習が実行された回数（仮差分パラメータを学習した回数）を表す整数値で、情報処理装置１０の現場設置時には０に初期化されている。
【００３３】
次に、Ｓ６４において、差分パラメータ調整部４３は、仮差分パラメータΔθ’を用い、差分パラメータの調整（更新）を行う。差分パラメータ調整部４３は、差分パラメータ記憶部４０に記憶されている差分パラメータΔθを読み出し、式７のように差分パラメータを更新する。
Δθ←（１−α）Δθ＋αΔθ’              （式７）
なお、最初の更新のときに差分パラメータ記憶部４０に記憶されている差分パラメータΔθは、当初差分パラメータである。差分パラメータが更新されている場合、差分パラメータ記憶部４０に記憶されている差分パラメータΔθは、最も最近更新された差分パラメータである。よってＳ６４で更新される差分パラメータは、最も新しい差分パラメータ（直近の差分パラメータ）である。
ここで、αは、最も新しい差分パラメータ（差分パラメータ記憶部４０から読み出された差分パラメータ）Δθと仮差分パラメータΔθ’の混合比である。αを、追加学習回数ｍを使って式８のように定めることで、更新後の差分パラメータΔθは、これまでの追加学習で算出した仮差分パラメータの平均となるように構成することができる。
【００３４】
【数５】
0006661398.tif 000006
【００３５】
Ｓ６５において、差分パラメータ調整部４３は、更新後の差分パラメータを差分パラメータ記憶部４０に記憶（保存）する。
Ｓ６６において、差分パラメータ調整部４３は、追加学習回数記憶部４４に、増分した追加学習回数ｍ＋１を記憶（保存）する。
以上が追加学習の流れである。
上記手順における式８の重み設定方法（αの決め方）は、これまでの追加学習で算出した仮差分パラメータの平均となるように差分パラメータを構成しているが、本実施形態の重み設定方法は上記したような方法に限定されない。例えば、αを追加学習回数によらない定数として混合比を一定としてもよい。αを追加学習回数によらない定数とすれば、差分パラメータを仮差分パラメータの指数移動平均として構成することができる。
また、仮差分パラメータΔθ’を用いた差分パラメータΔθの調整（更新）は、上述した重み付きの加算に限らない。例えば、両者の積の平方など他の関数でもよい。
【００３６】
（差分パラメータ調整用のインターフェース）
作業者が差分パラメータ調整方法（αの決め方）を指定できるよう、インターフェースを用いる（設ける）ことができる。図７は、そのようなインターフェース７０の例を示す。インターフェース７０は、ラジオボタン７１とスライダー７２とを有する。
図７において、まずラジオボタン７１によって、混合結果が平均となるような調整方法（式８）か指数移動平均となるような調整方法かを選ぶことができる。指数移動平均を選択すると、さらにスライダー７２によって混合比を調整することができる。スライダー７２を０％に設定した場合、α＝０となり、追加学習した仮差分パラメータΔθ’は差分パラメータに反映されない。スライダー７２を１００％に設定した場合、α＝１となり、差分パラメータは、追加学習した仮差分パラメータΔθ’ですべて上書きされる。スライダー７２を中間の値にした場合、αは当該値に応じた値となり、差分パラメータは仮差分パラメータΔθ’の指数移動平均となる。
【００３７】
上記したように、本実施形態では、モデルパラメータθを基本パラメータθ０と差分パラメータΔθとに分け、基本パラメータθ０は基本パラメータ記憶部４１に記憶している。そして、基本パラメータは更新することなく、同じ値を使用し、差分パラメータΔθのみを更新している。差分パラメータは更新して使用するので、差分パラメータ記憶部４０を設けるだけでよい。よって、追加学習のたびに中間ユニットを追加する必要はないし、モデルパラメータの保持に必要なメモリ使用量の増加もない。また、追加学習を繰り返しても、基本パラメータθ０は基本パラメータ記憶部４１に記憶されているので、忘却されることはない。
つまり、上記した実施形態では、モデルパラメータを基本パラメータと差分パラメータとに分けて保持し、追加学習のたびに基本パラメータからの差分である仮差分パラメータを学習する。そして、差分パラメータに仮差分パラメータを加重加算することで差分パラメータを更新していく。このようにすることで、過去に追加学習した情報が忘却されることを防ぐとともに、効率的に追加学習をすることができる。
【００３８】
（変形例）
上記した実施形態における追加学習の手順では、差分パラメータΔθを１つのみ保持していた。本発明は、差分パラメータΔθを１つのみ保持する構成に限定されず、複数の差分パラメータΔθを保持してもよい。以下に、変形例として、撮像環境に関連する条件により複数の差分パラメータを保持し、使い分ける場合について説明する。
撮像環境に関連する条件とは、例えば、朝・昼・夜といった時刻（時間帯）や、春・夏・秋・冬といった季節や、日照条件である（これらに限定されない）。このような条件に対して１つのモデルパラメータで対応するのではなく、条件毎に個別のモデルパラメータによって対応することで、それぞれの条件に特化した精度の高いモデルパラメータを獲得（用意）することができる。各条件に対して個別のモデルパラメータで対応するために、例えば、差分パラメータ記憶部４０に読み書き操作をする際、撮像環境によって、どの差分パラメータを読み書き操作の対象とするかを選択できるようにする。
【００３９】
例えば、朝・昼・夜の３つの条件それぞれに応じた差分パラメータを保持する場合、認証や追加学習を行う時刻が朝・昼・夜のいずれに属するかに応じ、対応する差分パラメータを選択して読み書きの対象とする。撮像装置１１には時計が内蔵されており、撮像時刻が朝・昼・夜のいずれの時間帯の時刻であるのかは、撮像装置１１が検出する（自動的に判定する）。
このようにすることによって、入力データ（検査画像）が作成された環境に応じて、複数の差分パラメータの中から１つの差分パラメータを利用することができる。
本実施形態では、撮像装置１１は建物内に設置されているので、条件の中には、建物外の天気などのように情報処理装置１０が自動的に判定できない条件もある。情報処理装置１０が自動的に判定できない条件の場合、作業者が手動で条件を与えることもできる。その場合、図８のようなインターフェース８０によって条件を作業者に選択させることができる。インターフェース８０は複数の条件を表示（提示）し、作業者はそのうちの１つの条件を選択することができる。図８の例では、「曇り」、「晴れ」および「雨」という３つの条件がインターフェース８０に表示されている。
【００４０】
以上、本発明の実施形態（情報処理装置）を顔認証による入退室管理システムを例に説明したが、本発明は、追加学習によって精度の向上が期待される他のシステムに対しても適応可能である。そのような例として、音声認識、文字認識、スパムフィルタ、コンテンツレコメンデーション等が挙げられる。
（他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４１】
１０…情報処理装置、１１…撮像装置、１２…ＣＰＵ、１３…記憶装置、１４…ゲート装置、１５…入力装置、１６…出力装置、１０４…推論部
【図１】
0006661398.tif 000007
【図２】
0006661398.tif 000008
【図３】
0006661398.tif 000009
【図４】
0006661398.tif 000010
【図５】
0006661398.tif 000011
【図６】
0006661398.tif 000012
【図７】
0006661398.tif 000013
【図８】
0006661398.tif 000014