(57)【要約】【課題】本発明は畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置及び方法を提供する。【解決手段】該装置は、複数のサンプルを含むデータベースの複雑度を決定する第１決定部と、データベースの複雑度に基づいてデータベースに適するＣＮＮモデルの分類能力を決定する第２決定部と、複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得する第３決定部と、各候補ＣＮＮモデルの分類能力及びデータベースに適するＣＮＮモデルの分類能力に基づいてデータベースに適するＣＮＮモデルを決定するマッチング部とを含む。該装置及び方法によれば、普通のユーザでもＣＮＮモデルを容易に設計、調整できるようにＣＮＮモデルの設計プロセスを簡易化できると共に、データベースの複雑度に基づいて該データベースにより合致したＣＮＮモデルを決定できる。【選択図】図１
2018092615.tif 000002
【特許請求の範囲】
【請求項１】
畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置であって、
複数のサンプルを含むデータベースの複雑度を決定する第１決定手段と、
前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定する第２決定手段と、
複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得する第３決定手段と、
前記各候補ＣＮＮモデルの分類能力及び前記データベースに適するＣＮＮモデルの分類能力に基づいて、前記データベースに適するＣＮＮモデルを決定するマッチング手段と、を含む、装置。
【請求項２】
前記第２決定手段は、前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力の数値範囲を決定する、請求項１に記載の装置。
【請求項３】
前記第３決定手段は、前記候補ＣＮＮモデルの第１パラメータを決定し、前記候補ＣＮＮモデルの第１パラメータに基づいて前記候補ＣＮＮモデルの分類能力を算出し、
前記第１パラメータは、前記候補ＣＮＮモデルの訓練度合いを表すためのものである、請求項１に記載の装置。
【請求項４】
前記第３決定手段は、前記候補ＣＮＮモデルの第１パラメータ、第２パラメータ及び第３パラメータに基づいて、前記候補ＣＮＮモデルの分類能力を算出し、
前記第２パラメータは前記候補ＣＮＮモデルの畳み込み層の層数を表し、
前記第３パラメータは前記候補ＣＮＮモデルの幅パラメータであり、前記幅パラメータは前記候補ＣＮＮモデルの特徴マップの数の乗算因子を表す、請求項３に記載の装置。
【請求項５】
前記第３決定手段は、候補ＣＮＮモデルと分類能力との対応関係を構築し、
前記マッチング手段は、前記データベースに適するＣＮＮモデルの分類能力に対応する候補ＣＮＮモデルを、前記データベースに適するＣＮＮモデルとして決定する、請求項１に記載の装置。
【請求項６】
前記第３決定手段は、
同一又は類似の分類能力を有する候補ＣＮＮモデルが同一のグループに分けられるように、前記複数の候補ＣＮＮモデルに対してグループ分けを行い、
同一のグループに属する候補ＣＮＮモデルを、該グループの同一又は類似の分類能力のうち代表的な分類能力に対応付ける、請求項５に記載の装置。
【請求項７】
複数の候補ＣＮＮモデルを選択する選択手段、をさらに含む、請求項４に記載の装置。
【請求項８】
前記選択手段は、
複数のサンプルＣＮＮモデルを構築し、
第２パラメータ及び第３パラメータが所定条件を満たしている複数のサンプルＣＮＮモデルを前記複数の候補ＣＮＮモデルとして選択する、請求項７に記載の装置。
【請求項９】
前記選択手段は、前記サンプルＣＮＮモデルの１つ又は複数のプーリング層のうち各プーリング層の後の特徴マップの数が前記プーリング層の前の特徴マップの数の２倍であるように、前記複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築する、請求項８に記載の装置。
【請求項１０】
畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定方法であって、
複数のサンプルを含むデータベースの複雑度を決定するステップと、
前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定するステップと、
複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得するステップと、
前記各候補ＣＮＮモデルの分類能力及び前記データベースに適するＣＮＮモデルの分類能力に基づいて、前記データベースに適するＣＮＮモデルを決定するステップと、を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施例は、機械学習の分野に関し、具体的に畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置及び決定方法に関する。
【背景技術】
【０００２】
この部分は、本発明に関連する背景情報を提供するが、必ずしも従来技術ではない。
【０００３】
深層学習（ｄｅｅｐ  ｌｅａｒｎｉｎｇ）技術は、既にコンピュータビジョンの分野で広く適用されている。深層学習技術の１つとして、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ：畳み込みニューラルネットワーク）は、画像分類の正確性を大幅に改善し、画像分類タスクに質的変化をもたらした。任意のデータベースについて適切なＣＮＮモデルを設計でき、該ＣＮＮモデルはデータベースにおけるサンプルを訓練するために用いられることができるため、データベースにおけるサンプルのラベル間の関連性を取得できる。ここで、データベースにおけるサンプルは画像であってもよい。
【０００４】
しかし、ＣＮＮモデルの設計及び調整のために、専門的な背景が必要であり、普通の人にとって容易ではない。また、従来のＣＮＮモデルの設計及び調整は、エンジニアの専門的な技能に密接に関連し、通常は最適なモデルを得るために大量の実験が必要である。
【０００５】
本発明は、普通のユーザでもＣＮＮモデルを容易に設計、調整できるようにＣＮＮモデルの設計プロセスを簡易化できると共に、異なるデータベースに応じて該データベースにより合致したＣＮＮモデルを決定できるものが望ましい。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この部分は、本発明の一般的な概要を提供し、その全範囲又はその全ての特徴を完全に開示するものではない。
【０００７】
本発明は、普通のユーザでもＣＮＮモデルを容易に設計、調整できるようにＣＮＮモデルの設計プロセスを簡易化できると共に、異なるデータベースに応じて該データベースにより合致したＣＮＮモデルを決定できる、ＣＮＮモデルの決定装置及び決定方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の１つの態様では、畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置であって、複数のサンプルを含むデータベースの複雑度を決定する第１決定手段と、前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定する第２決定手段と、複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得する第３決定手段と、前記各候補ＣＮＮモデルの分類能力及び前記データベースに適するＣＮＮモデルの分類能力に基づいて、前記データベースに適するＣＮＮモデルを決定するマッチング手段と、を含む、装置を提供する。
【０００９】
本発明のもう１つの態様では、畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定方法であって、複数のサンプルを含むデータベースの複雑度を決定するステップと、前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定するステップと、複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得するステップと、前記各候補ＣＮＮモデルの分類能力及び前記データベースに適するＣＮＮモデルの分類能力に基づいて、前記データベースに適するＣＮＮモデルを決定するステップと、を含む、方法を提供する。
【００１０】
本発明のもう１つの態様では、機器が読み取り可能な命令コードを含むプログラムプロダクトであって、前記命令コードがコンピュータにより読み取られ、実行される際に、前記コンピュータに、本発明の畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定方法を実行させることができる、プログラムプロダクトを提供する。
【００１１】
本発明のもう１つの態様では、機器が読み取り可能な命令コードを含むプログラムプロダクトを記憶する機器読み取り可能な記憶媒体であって、前記命令コードがコンピュータにより読み取られ、実行される際に、前記コンピュータに、本発明の畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定方法を実行させることができる、記憶媒体を提供する。
【００１２】
本発明の畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置及び方法は、データベースの複雑度に基づいて該データベースに適するＣＮＮモデルの分類能力を決定し、候補ＣＮＮモデルから適切なＣＮＮモデルを選択する。これによって、決定されたＣＮＮモデルがデータベースにより合致するように、該データベースの複雑度に基づいて適切なＣＮＮモデルを決定できる。さらに、普通のユーザでもデータベースに適するＣＮＮモデルを設計できるようにＣＮＮモデルの設計プロセスを簡易化できる。
【００１３】
この部分における説明及び特定の例は、単なる例示するためのものであり、本発明の範囲を限定するものではない。
【図面の簡単な説明】
【００１４】
ここで説明される図面は、好ましい実施例を例示するためのものであり、全ての可能な実施例ではなく、本発明の範囲を限定するものではない。
【図１】本発明の実施例に係るＣＮＮモデルの決定装置の構成を示すブロック図である。
【図２】本発明の実施例に係るＣＮＮモデルの構成を示す図である。
【図３】本発明のもう１つの実施例に係るＣＮＮモデルの決定装置の構成を示すブロック図である。
【図４】本発明の実施例に係るＣＮＮモデルの決定方法を示すフローチャートである。
【図５】本発明に係るＣＮＮモデルの決定方法を実施するための汎用パーソナルコンピュータの例示的な構成を示すブロック図である。  本発明の上記及び他の利点及び特徴を説明するために、以下は、図面を参照しながら本発明の具体的な実施形態をさらに詳細に説明する。該図面及び下記の詳細な説明は本明細書に含まれ、本明細書の一部を形成するものである。同一の機能及び構成を有するユニットは、同一の符号で示されている。なお、これらの図面は、本発明の典型的な例を説明するためのものであり、本発明の範囲を限定するものではない。
【発明を実施するための形態】
【００１５】
以下は、図面を参照しながら本発明の例示的な実施例を詳細に説明する。以下の説明は単なる例示的なものであり、本発明、応用及び用途を限定するものではない。
【００１６】
説明の便宜上、明細書には実際の実施形態の全ての特徴が示されていない。なお、実際に実施する際に、開発者の具体的な目標を実現するために、特定の実施形態を変更してもよく、例えばシステム及び業務に関する制限条件に応じて実施形態を変更してもよい。また、開発作業が非常に複雑であり、且つ時間がかかるが、本公開の当業者にとって、この開発作業は単なる例の作業である。
【００１７】
図１は本発明の実施例に係るＣＮＮモデルの決定装置１００の構成を示すブロック図である。
【００１８】
本発明のＣＮＮモデルの決定装置１００は、決定部１１０、決定部１２０、決定部１３０及びマッチング部１４０を含む。
【００１９】
本発明の実施例では、決定部１１０は、複数のサンプルを含むデータベースの複雑度を決定してもよい。ここで、データベースは、ユーザが装置１００に入力した特定のデータベースであってもよく、即ち該データベースに合致したＣＮＮモデルを設計するのが望ましい。また、データベースにおけるサンプルはテキスト及び画像などを含んでもよい。決定部１１０は、データベースの複雑度を決定した後に、決定部１２０に該データベースの複雑度を送信してもよい。
【００２０】
本発明の実施例では、決定部１２０は、データベースの複雑度に基づいて、該データベースに適するＣＮＮモデルの分類能力を決定してもよい。ここで、決定部１２０は、決定部１１０からデータベースの複雑度を取得し、該複雑度に基づいて該データベースに適するＣＮＮモデルの分類能力を決定してもよい。即ち、該データベースに適するＣＮＮモデルの分類能力は、期待されるＣＮＮモデルの達成可能な分類能力である。また、決定部１２０は、決定された該データベースに適するＣＮＮモデルの分類能力をマッチング部１４０に送信してもよい。
【００２１】
本発明の実施例では、決定部１３０は、複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得してもよい。ここで、複数の候補ＣＮＮモデルは、ユーザにより入力された候補モデルであってもよいし、入力されたデータベースに基づいて装置１００により生成された候補モデルであってもよい。即ち、マッチング部１４０は、これらの候補ＣＮＮモデルから最も適切なＣＮＮモデルを選択する。ここで、候補ＣＮＮモデルの分類能力は、該候補ＣＮＮモデルの実際に達成する分類能力である。また、決定部１３０は、各候補ＣＮＮモデルの分類能力をマッチング部１４０に送信してもよい。
【００２２】
本発明の実施例では、マッチング部１４０は、各候補ＣＮＮモデルの分類能力及びデータベースに適するＣＮＮモデルの分類能力に基づいて、データベースに適するＣＮＮモデルを決定してもよい。ここで、マッチング部１４０は、決定部１２０からデータベースに適するＣＮＮモデルの分類能力を取得し、決定部１３０から候補ＣＮＮモデルの分類能力を決定し、候補ＣＮＮモデルから該データベースに適するＣＮＮモデルを選択してもよい。また、マッチング部１４０は、選択された該データベースに適するＣＮＮモデルを装置１００から出力してもよい。
【００２３】
以上のことから、本発明の畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置１００は、データベースの複雑度に基づいて該データベースに適するＣＮＮモデルの分類能力を決定し、候補ＣＮＮモデルの実際の分類能力を決定し、候補ＣＮＮモデルから適切なＣＮＮモデルを選択する。これによって、決定されたＣＮＮモデルの分類能力が該データベースにより合致するように、該データベースの複雑度に基づいて適切なＣＮＮモデルを決定できる。さらに、普通のユーザでもデータベースに適するＣＮＮモデルを設計できるようにＣＮＮモデルの設計プロセスを簡易化できる。
【００２４】
本発明の実施例では、決定部１１０によるデータベースの複雑度の算出は各種の方法を採用してもよいが、本発明はこれに限定されず、該データベースの複雑度を合理的に表すことができれば良い。例えば、データベースにおけるサンプルが画像である場合は、各サンプルの特徴表現により構成された特徴行列の分布関係、例えば特徴値又は距離メトリック等に基づいてデータベースの複雑度を決定してもよい。また、データベースでのサンプルの分類に影響を及ぼす難易度の指標を選択し、該指標に基づいてデータベースの複雑度を定量化してもよい。この方法については後で詳細に説明する。
【００２５】
本発明の実施例では、決定部１１０は、下記のパラメータを含むパラメータ群から複数のパラメータを選択し、選択された複数のパラメータに基づいてデータベースの複雑度を決定する。該パラメータ群は、データベースにおける複数のサンプルの種類の数を表す種類数、データベースにおける各種類のサンプルの平均数を表すサンプル平均数、データベースにおける各種類のサンプル数の分散度を表すサンプル分散度、データベースにおけるサンプルの画像背景の複雑度を表す背景複雑度、及びデータベースにおけるサンプルから対象を認識することの難易度を表す対象鮮明度を含む。本発明では、上記５種類の分類に影響を及ぼす難易度パラメータを列挙し、決定部１１０は、その中から複数のパラメータを選択し、即ち任意の２つ、３つ、４つ又は５つのパラメータを選択し、データベースの複雑度を決定してもよい。なお、分類に影響を及ぼす難易度の他のパラメータを複雑度の算出のための根拠として決定してもよい。
【００２６】
ここで、種類数ｎは、データベースにおける複数のサンプル（例えば画像）の種類の数、即ちデータベースにおけるラベルの数を表し、ｎは１よりも大きい整数である。
【００２７】
サンプル平均数ｍは、データベースにおける各種類のサンプルの平均数を表し、即ちｍ＝データベースにおけるサンプル総数／ｎとなり、ここで、ｍが５００以上であると設定されてもよい。
【００２８】
サンプル分散度ｂｄは、データベースにおける各種類のサンプル数の分散度を表し、即ちｂｄ＝サンプル数の標準偏差／ｍとなり、ｂｄは１以上である。
【００２９】
背景複雑度ｉｂは、データベースにおけるサンプルの画像背景の複雑度を表し、ここで、データベースにおける全てのサンプルの背景の複雑度が類似すると仮定する。通常、画像は背景部分及び前景部分を含み、ｉｂは背景部分の複雑度を表す。例えば、データベースにおける画像の背景が白色である場合、該データベースの背景が簡単であると判断され、データベースにおける画像の背景がカラーである場合、該データベースの背景が複雑であると判断されてもよい。ここで、異なるレベルのｉｂの値を定義してもよく、ｉｂは［０，９］の範囲内にあるものであってもよい。次の式はｉｂ値の定義方法の一例を示している。
【数１】
2018092615.tif 000003
【００３０】
対象鮮明度ｃｄはデータベースにおけるサンプルから対象を認識することの難易度を表し、ここで、データベースにおける全てのサンプルの対象鮮明度が類似すると仮定する。ｃｄは対象を認識できることの難易度を表し、ｃｄに影響を及ぼす要素は、画像の背景部分を含むことだけではなく、画像の前景部分をさらに含む。例えば、同一の背景の場合は、画像の前景部分が１つの数字であるとき、この数字を認識し易い。画像の前景部分が複数の重なる数字であるとき、この数字を認識し難い。ここで、異なるレベルのｃｄの値を定義してもよく、ｃｄは［０，９］の範囲内のものであってもよい。次の式はｃｄ値の定義方法の一例を示している。
【数２】
2018092615.tif 000004
【００３１】
本発明の実施例では、決定部１１０は、複数のパラメータの各パラメータの重み及びスコアを決定し、複数のパラメータの各パラメータを重み付け加算してデータベースの複雑度を決定する。
【００３２】
例えば、５つのパラメータの全てのパラメータを選択した場合は、データベースの複雑度は次の式に従って算出されてもよい。
【００３３】
データベースの複雑度＝ｎのスコア×ｎの重み＋ｍのスコア×ｍの重み＋ｂｄのスコア×ｂｄの重み＋ｉｂのスコア×ｉｂの重み＋ｃｄのスコア×ｃｄの重み
ここで、０≦ｎ、ｍ、ｂｄ、ｉｂ、ｃｄの重み≦１となり、ｎの重み＋ｍの重み＋ｂｄの重み＋ｉｂの重み＋ｃｄの重み＝１となる。
【００３４】
なお、一部のパラメータのみを選択した場合は、一部のパラメータのスコアを重み付け加算してデータベースの複雑度を決定してもよい。
【００３５】
ここで、各パラメータの定義に従って各パラメータのスコアを設定してもよい。例えば、上記５つのパラメータのスコアを次のように定義されてもよい。
【数３】
2018092615.tif 000005
【００３６】
本発明の実施例は、決定部１１０は、階層分析法を用いて、複数のパラメータのうち各２つのパラメータ間の相対的な重要度に基づいて比較行列を構築し、比較行列に基づいて、複数のパラメータの各パラメータの重みを決定してもよい。
【００３７】
上記５つのパラメータの全てのパラメータを選択した場合は、構築された比較行列Ａ＝［ａｉｊ］は５×５の行列である。即ち、１≦ｉ、ｊ≦５となる。ここで、ｉ＝ｊの場合は、ａｉｊ＝１となり、ｉ≠ｊの場合は、ａｉｊはｉ番目の要素のｊ番目の要素に対する重要度を表し、ａｉｊが大きいほど、ｉ番目の要素のｊ番目の要素に対してより重要であることを表し、ａｉｊ＝１／ａｊｉとなる。
【００３８】
本発明の実施例では、下記の方法を用いて比較行列における各要素ａｉｊを算出してもよい。ｉ番目の要素及びｊ番目の要素以外の他の要素（存在する場合）がいずれも変化しないように、いくつかのサイズが異なる（即ち異なる分類能力を有する）ＣＮＮモデル、例えば５つのＣＮＮモデルを選択し、ｉ番目の要素が変化せず、且つｊ番目の要素が変化した場合にこれらのＣＮＮモデルの第１分類精度（即ち分類結果の正確率）を算出し、ｊ番目の要素が変化せず、且つｉ番目の要素が変化した場合にこれらのＣＮＮモデルの第２分類精度を算出し、第１分類精度及び第２分類精度に基づいてａｉｊを決定する。
【００３９】
本発明の実施例では、比較行列を決定した後に、比較行列の最大特徴値を正規化し、各パラメータの重みを決定する。
【００４０】
上述したように、決定部１１０は、各パラメータのスコア及び重みを決定した後に、データベースの複雑度を算出してもよい。以上はデータベースの複雑度の算出の一例のみを説明し、当業者は他の方法を用いてデータベースの複雑度を算出してもよい。
【００４１】
本発明の実施例では、データベースが複雑になるほど、データベースに必要なＣＮＮモデルの分類能力がより強くなる。即ち、データベースに適するＣＮＮモデルの分類能力はデータベースの複雑度に比例する。このため、本発明の実施例では、決定部１２０は、データベースの複雑度により示される該データベースの複雑さが高くなるほど該データベースに適するＣＮＮモデルの分類能力が強くなるように、データベースに適するＣＮＮモデルの分類能力を決定してもよい。
【００４２】
本発明の実施例では、決定部１２０により決定された分類能力は１つの数値であってもよい。例えば、関数ｘｋ＝ｆ（データベースの複雑度）に基づいて該データベースのＣＮＮモデルの分類能力ｘｋを算出してもよい。一例では、次の式に従って該データベースに適するＣＮＮモデルの分類能力ｘｋを算出してもよい。
【００４３】
ｘｋ＝データベースの複雑度／１０
本発明の実施例では、決定部１２０は、データベースの複雑度に基づいて、データベースに適するＣＮＮモデルの分類能力の数値範囲を決定してもよい。例えば、上記の実施例のようにデータベースに適するＣＮＮモデルの分類能力ｘｋを決定した後に、該分類能力の左隣接領域Δｌ及び右隣接領域Δｒを決定し、該データベースに適するＣＮＮモデルの分類能力の数値範囲が［ｘｋ−Δｌ，ｘｋ＋Δｒ］であると決定してもよい。分類能力の左隣接領域及び右隣接領域は経験値に基づいて設定されてもよく、好ましくは、Δｌ＝０．５、Δｒ＝０．５となる。
【００４４】
上述したように、決定部１２０は、データベースの複雑度に基づいて、データベースに適するＣＮＮモデルの分類能力又は分類能力の数値範囲を決定する。そして、決定部１２０は、該データベースに適するＣＮＮモデルの分類能力又は分類能力の数値範囲をマッチング部１４０に送信してもよい。
【００４５】
以下は、以下、本発明の実施例の決定部１３０を詳細に説明する。
【００４６】
本発明の実施例では、決定部１３０は、候補ＣＮＮモデルの第１パラメータを決定し、候補ＣＮＮモデルの第１パラメータに基づいて候補ＣＮＮモデルの分類能力を算出する。第１パラメータは、候補ＣＮＮモデルの訓練度合いを表すためのものである。
【００４７】
本発明の実施例では、候補ＣＮＮモデルの訓練の度合いは、該候補ＣＮＮモデルの分類能力に強い影響を及ぼす。通常の場合は、同一の候補モデルが十分に訓練されるほど、その分類能力が強くなる。本発明の実施例では、任意の方法を用いて候補ＣＮＮモデルの訓練度合いを評価してもよいが、本発明はこれに限定されない。候補ＣＮＮモデルの訓練の度合いは、該候補ＣＮＮモデルにおける畳み込み層の層数に関連する可能性がある。
【００４８】
本発明の実施例では、決定部１３０は、候補ＣＮＮモデルの第１パラメータ、第２パラメータ及び第３パラメータに基づいて、候補ＣＮＮモデルの分類能力を算出する。ここで、第２パラメータは前記候補ＣＮＮモデルの畳み込み層の層数を表し、第３パラメータは候補ＣＮＮモデルの特徴マップの数の乗算因子を表す。
【００４９】
図２は本発明の実施例に係るＣＮＮモデルの構成を示す図である。ＣＮＮモデルは、１つ又は複数の畳み込み層及び１つ又は複数のプーリング層を含んでもよい。ここで、プーリング層は、他の同様の操作により置き換えてもよい。畳み込み層は、データベースにおけるサンプル（例えば画像）の特徴量を抽出し、プーリング層は、ＣＮＮモデルの演算量を低減する。畳み込み層及びプーリング層は処理テンプレートを有し、サンプルの特徴マップが畳み込み層を通過する際に、畳み込み層のテンプレートを用いて該特徴マップを処理し、サンプルの特徴マップがプーリング層を通過する際に、プーリング層のテンプレートを用いて該特徴マップを処理する。特徴マップがプーリング層を通過した後に、特徴マップの長さ及び幅はその前の半分になる。図２に示すＣＮＮモデルは４つの畳み込み層及び２つのプーリング層を含む。データベースにおけるサンプルは、畳み込み層１、畳み込み層２、プーリング層１、畳み込み層３、畳み込み層４及びプーリング層２をそれぞれ通過する。なお、ＣＮＮモデルは他の数の畳み込み層及び他の数のプーリング層を含んでもよく、畳み込み層及びプーリング層の配置位置は図２に示すものと異なってもよい。また、図２にはＣＮＮモデルの一部のみを示し、ＣＮＮモデルは他の部分をさらに含んでもよい。
【００５０】
本発明の実施例では、ＣＮＮモデルの第２パラメータＮはＣＮＮモデルの畳み込み層の層数、即ちＣＮＮモデルの深さパラメータを表し、Ｎは正整数である。例えば、図２に示すＣＮＮモデルの第２パラメータは４である。
【００５１】
本発明の実施例では、ＣＮＮモデルの第３パラメータｓはＣＮＮモデルの特徴マップの数の乗算因子、即ちＣＮＮモデルの幅パラメータを表し、ｓは正数である。ここで、データベースにおけるサンプルのＣＮＮモデルの１番目の畳み込み層を通過した後の特徴マップの数は、第３パラメータｓと基本的な特徴マップの数との積である。即ち、第３パラメータは、データベースにおけるサンプルのＣＮＮモデルの１番目の畳み込み層を通過した後の特徴マップの数を基本的な特徴マップの数で割ったものである。ここで、サンプルのＣＮＮモデルの１番目の畳み込み層を通過した後の特徴マップの数は１番目の畳み込み層におけるテンプレートにより決定され、基本的な特徴マップの数は人為的に設定された値、例えば８、１６、３２又は６４等である。図２に示すように、基本的な特徴マップの数は１６であり、サンプルの１番目の畳み込み層を通過した後の特徴マップの数は１６×ｓである。
【００５２】
本発明の実施例では、第１パラメータ、第２パラメータＮ及び第３パラメータｓを用いてＣＮＮモデルを表現する。これは、この３つのパラメータがＣＮＮモデルにおける比較的に重要なパラメータであり、ＣＮＮモデルの分類能力をある程度決めるからである。また、本発明の実施例では、第３パラメータｓを用いてＣＮＮモデルの幅を表現することで、特徴マップの数をより簡単に表現できる。
【００５３】
本発明の実施例では、決定部１３０は、候補ＣＮＮモデルの第１パラメータ、第２パラメータ及び第３パラメータに基づいて、候補ＣＮＮモデルの分類能力を算出してもよい。例えば、候補ＣＮＮモデルの分類能力ｘは以下であってもよい。
【００５４】
ｘ＝ｇ（Ｎ，ｓ）×Ｇ
ここで、Ｎは該候補ＣＮＮモデルの第２パラメータを表し、ｓは該候補ＣＮＮモデルの第３パラメータを表し、ｇ（Ｎ，ｓ）はＮ及びｓを変数とする関数を表し、Ｇは該候補ＣＮＮモデルの第１パラメータを表す。
【００５５】
なお、第１パラメータ、第２パラメータ及び第３パラメータの他に、決定部１３０は他のパラメータ、例えばサンプルの正規化された大きさ、畳み込みのステップ長及び畳み込み和の大きさ等に基づいてＣＮＮモデルの分類能力を算出してもよい。即ち、関数ｇ（Ｎ，ｓ）はＮ及びｓ以外のものを変数としてもよい。
【００５６】
上述したように、決定部１３０は、各候補ＣＮＮモデルの分類能力を決定してもよい。
【００５７】
本発明の実施例では、決定部１３０は、候補ＣＮＮモデルと分類能力との対応関係を構築してもよく、マッチング部１４０は、データベースに適するＣＮＮモデルの分類能力に対応する候補ＣＮＮモデルを、データベースに適するＣＮＮモデルとして決定してもよい。
【００５８】
本発明の実施例では、決定部１３０は、各候補ＣＮＮモデルの分類能力ｘｋを決定した後に、候補ＣＮＮモデルとその分類能力ｘｋとの対応関係を構築し、この対応関係をマッチング部１４０に送信してもよい。そして、マッチング部１４０は、この対応関係に基づいて、データベースに適するＣＮＮモデルを決定してもよい。例えば、マッチング部１４０は、決定部１２０からデータベースに適するＣＮＮモデルの分類能力ｘｋを取得し、分類能力ｘｋに対応する候補ＣＮＮモデルを最終的なデータベースに適するＣＮＮモデルとして決定してもよい。
【００５９】
本発明の実施例では、決定部１３０は、同一又は類似の分類能力を有する候補ＣＮＮモデルが同一のグループに分けられるように、複数の候補ＣＮＮモデルに対してグループ分けを行い、同一のグループに属する候補ＣＮＮモデルを、該グループの同一又は類似の分類能力のうち代表的な分類能力に対応付ける。
【００６０】
決定部１３０が上述したように各候補ＣＮＮモデルの分類能力ｘを決定する際に、異なる候補ＣＮＮモデルの分類能力がかなり異なり、よって、演算の速度をさらに向上するために、分類能力に応じて候補ＣＮＮモデルに対してグループ分けを行ってもよい。表１は、候補ＣＮＮモデルのグループ分けの一例を示している。
【表１】
2018092615.tif 000006
【００６１】
表１に示すように、第２パラメータＮ及び第３パラメータｓがＣＮＮモデルにおける比較的に重要なパラメータであるため、表１ではこの２つのパラメータを用いて候補ＣＮＮモデルを表す。例えば、候補ＣＮＮモデル：Ｎ＝４，ｓ＝１；Ｎ＝５，ｓ＝１；Ｎ＝６，ｓ＝１；Ｎ＝７，ｓ＝０．７を第１グループの候補ＣＮＮモデルに分けられ、このグループの候補ＣＮＮモデルは同一又は類似の分類能力を有し、該グループの同一又は類似の分類能力から代表的な分類能力を選択してもよい。例えば、第１グループの候補ＣＮＮモデルの代表的な分類能力は５．４であり、該グループの候補ＣＮＮモデルの実際の分類能力は例えば［５．２５，５．５５］の範囲内にある。本発明の実施例では、同一のグループの候補ＣＮＮモデルを該グループの代表的な分類能力に対応付ける。例えば、第１グループの候補ＣＮＮモデルを代表的な分類能力５．４に対応付ける。表１には合計７グループの候補ＣＮＮモデルを示し、各グループの候補ＣＮＮモデルは該グループの代表的な分類能力に対応する。なお、表１における各グループの代表的な分類能力は均一に分布しておらず、これは、ＣＮＮモデルの分類能力も均一に分布していないからである。例えば、［６．２，６．２］の間にあるＣＮＮモデルは多い場合があり、各グループの間隔が比較的に小さい。また、各グループの候補ＣＮＮモデルの代表的な分類能力を決定する際に、複数種類の方法があり、例えば、グループにおける全ての候補ＣＮＮモデルの分類能力の中央値を取得してもよいが、本発明はこれに限定されない。
【００６２】
上述したように、決定部１３０は、複数の候補ＣＮＮモデルに対してグループ分けを行い、同一のグループに属する候補ＣＮＮモデルを該グループの代表的な分類能力に対応付ける。そして、決定部１３０は、このような対応関係をマッチング部１４０に送信する。そして、上述したように、マッチング部１４０は、決定部１２０から取得されたデータベースに適するＣＮＮモデルの分類能力ｘｋを取得し、分類能力ｘｋに対応する候補ＣＮＮモデルを最終的な該データベースに適するＣＮＮモデルとして決定する。例えば、決定部１２０から取得されたデータベースに適するＣＮＮモデルの分類能力ｘｋが５．４である場合、マッチング部１４０は、表１に示す対応関係表から、分類能力５．４に対応する候補ＣＮＮモデル、即ちＮ＝４，ｓ＝１；Ｎ＝５，ｓ＝１；Ｎ＝６，ｓ＝１；Ｎ＝７，ｓ＝０．７を抽出し、この４つの候補ＣＮＮモデルを該データベースに適するＣＮＮモデルとして決定してもよい。また、例えば、決定部１２０から取得されたデータベースに適するＣＮＮモデルの分類能力ｘｋが６．２２である場合、６．２２が表１に示す対応関係表における代表的な分類能力６．２に最も近いため、マッチング部１４０は、分類能力６．２に対応する候補ＣＮＮモデル、即ちＮ＝６，ｓ＝５；Ｎ＝４，ｓ＝６；Ｎ＝７，ｓ＝４；Ｎ＝８，ｓ＝３を抽出し、この４つの候補ＣＮＮモデルを該データベースに適するＣＮＮモデルとして決定してもよい。また、例えば、決定部１２０から取得されたデータベースに適するＣＮＮモデルの分類能力ｘｋの範囲が［６．１，６．３］である場合、マッチング部１４０は、表１に示す対応関係表から、分類能力が該範囲内の候補ＣＮＮモデルのグループ、即ち代表的な分類能力が６．２及び６．３のグループを抽出し、この２つの候補ＣＮＮモデルを該データベースに適するＣＮＮモデルとして決定してもよい。
【００６３】
上述したように、ＣＮＮモデルの決定装置１００は、データベースの複雑度に基づいて該データベースに適するＣＮＮモデルの分類能力を決定し、候補ＣＮＮモデルから、分類能力が該データベースに最も合致した候補ＣＮＮモデルを選択できる。また、計算量を低減させるために、分類能力に応じて候補ＣＮＮモデルに対してグループ分けを行い、各グループの代表的な分類能力を決定してもよい。このように、データベースに適するＣＮＮモデルの分類能力ｘｋに最も近い代表的分類能力を検索し、或いはデータベースに適するＣＮＮモデルの分類能力の範囲［ｘｋ−Δｌ，ｘｋ＋Δｒ］内の代表的分類能力を検索し、この１つ又は複数の代表的な分類能力に対応する候補ＣＮＮモデルを検索すればよいため、検索プロセスを大幅に簡易化した。
【００６４】
図３は本発明のもう１つの実施例に係るＣＮＮモデルの決定装置の構成を示すブロック図である。
【００６５】
図３に示すように、ＣＮＮモデルの決定装置１００は、決定部１１０、決定部１２０、決定部１３０、マッチング部１４０及び選択部１５０を含む。前の４つの構成部について既に説明したので、ここでその説明を省略する。
【００６６】
本発明の実施例では、選択部１５０は、複数の候補ＣＮＮモデルを選択してもよい。ここで、選択部１５０は、既に構築されたサンプルＣＮＮモデルから適切なＣＮＮモデルを候補ＣＮＮモデルとして選択してもよいし、自らサンプルＣＮＮモデルを構築してその中から適切なＣＮＮモデルを候補ＣＮＮモデルとして選択してもよい。また、選択部１５０は、選択された候補ＣＮＮモデルを決定部１３０に送信してもよい。
【００６７】
本発明の実施例では、選択部１５０は、複数のサンプルＣＮＮモデルを構築し、第２パラメータ及び第３パラメータが所定条件を満たしている複数のサンプルＣＮＮモデルを複数の候補ＣＮＮモデルとして選択してもよい。
【００６８】
本発明の実施例では、選択部１５０は、複数種類の方法を用いて複数のサンプルＣＮＮモデルを構築してもよい。上述したように、第２パラメータ及び第３パラメータはＣＮＮモデルにおける比較的に重要なパラメータであり、ＣＮＮモデルの性能の優劣をある程度決める。このため、選択部１５０は、構築されたサンプルＣＮＮモデルから、この２つのパラメータが所定条件を満たしているモデルを候補ＣＮＮモデルとして選択してもよい。これによって、マッチング部１４０は、より正確なデータベースに適するＣＮＮモデルを決定できる。
【００６９】
ここで、所定条件は、設定された第２パラメータ及び第３パラメータの数値範囲であってもよい。第２パラメータ又は第３パラメータが大き過ぎると、該ＣＮＮモデルのデータベースを訓練する時間が長くなり、第２パラメータ又は第３パラメータが小さ過ぎると、ＣＮＮモデルの分類精度に影響を及ぼすため、合理的な範囲を設定する必要があり、経験に応じて設定されてもよいし、実験により設定されてもよい。
【００７０】
本発明の実施例では、選択部１５０は、サンプルＣＮＮモデルの特徴マップの長さ及び幅が何れも前の半分になる場合に特徴マップの数が前の特徴マップの数の２倍になるように、複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築してもよい。
【００７１】
上述したように、データベースにおけるサンプルの特徴マップがＣＮＮモデルのプーリング層を通過した場合、特徴マップの長さ及び幅は何れも前の半分になる。実際には、ＣＮＮモデルでは、他の場合にも特徴マップの長さ及び幅が何れも前の半分になる可能性がある。本発明の実施例では、このような状況が発生している限り、特徴マップを倍増させる。
【００７２】
本発明の実施例では、選択部１５０は、サンプルＣＮＮモデルの１つ又は複数のプーリング層のうち各プーリング層の後の特徴マップの数がプーリング層の前の特徴マップの数の２倍であるように、複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築してもよい。即ち、プーリング層を通過する度に、特徴マップの数を倍増させる。図２に示すＣＮＮモデルでは、畳み込み層２を通過した特徴マップの数は１６×ｓであり、プーリング層１を通過した後の特徴マップの数は３２×ｓとなり、即ち特徴マップの数は倍増されている。
【００７３】
本発明の実施例では、ＣＮＮモデルの構築を簡易化させるために、選択部１５０は、ＣＮＮモデルにおけるパラメータを固定してもよい。固定されたパラメータは、ＣＮＮモデルのこれらのパラメータを採用する場合の性能が良くなるように、経験値であってもよいし、測定及び実験により取得されてもよい。
【００７４】
例えば、選択部１５０は、サンプルＣＮＮモデルの１つ又は複数の畳み込み層の各畳み込み層の畳み込みテンプレート及び前記各プーリング層のプーリングテンプレートを固定することで、複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築してもよい。また、選択部１５０は、サンプルＣＮＮモデルの活性化関数をＲｅＬＵ関数に固定してもよい。
【００７５】
本発明の実施例では、畳み込み層の畳み込みテンプレートを固定することは、畳み込み和の大きさを固定すること、畳み込みステップ長を固定すること、及びエッジの大きさを固定することの１つ又は複数を含んでもよい。例えば、畳み込み和の大きさを３（単位は画素である）×３（単位は画素である）に固定してもよいし、畳み込みステップ長を１（単位は画素である）に固定してもよいし、エッジの大きさを１（単位は画素である）に固定してもよい。
【００７６】
本発明の実施例では、プーリング層のプーリングテンプレートを固定することは、プーリングテンプレートの大きさを固定すること、プーリングのステップ長を固定すること、及びプーリングの種類を固定することの１つ又は複数を含んでもよい。例えば、プーリングテンプレートの大きさを３（単位は画素である）×３（単位は画素である）に固定してもよいし、プーリングのステップ長を２（単位は画素である）に固定してもよいし、プーリングの種類をＭＡＸ（最大）に固定してもよい。
【００７７】
以上は、単なるサンプルＣＮＮモデルの構築の例示的な方法を示している。なお、ＣＮＮモデルの性能をさらに向上させるために、選択部１５０は、他の方法を用いてＣＮＮモデルを最適化してもよい。例えば、該ＣＮＮモデルの訓練効果などを向上させるように、１つ又は複数の畳み込み層の各畳み込み層についてＢａｔｃｈＮｏｒｍ層又はｄｒｏｐｏｕｔ層を用いてもよい。
【００７８】
上述したように、選択部１５０は、複数のサンプルＣＮＮモデルを構築し、その中から候補ＣＮＮモデルを選択し、選択された候補ＣＮＮモデルを決定部１３０に送信し、決定部１３０に各候補ＣＮＮモデルの分類能力を決定させてもよい。これによって、ＣＮＮモデルのパラメータを固定しているため、ＣＮＮモデルの設計はより容易になる。さらに、選択部１５０は、サンプルＣＮＮモデルを予め選別することで、マッチング部１４０によりマッチングされた候補ＣＮＮモデルはより正確になる。
【００７９】
以上は本発明の実施例の畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置１００を詳細に説明した。次に、本発明の実施例のＣＮＮモデルの決定方法を詳細に説明する。
【００８０】
図４は本発明の実施例に係るＣＮＮモデルの決定方法を示すフローチャートである。
【００８１】
図４に示すように、ステップＳ４１０において、複数のサンプルを含むデータベースの複雑度を決定する。
【００８２】
次に、ステップＳ４２０において、該データベースの複雑度に基づいて、該データベースに適するＣＮＮモデルの分類能力を決定する。
【００８３】
次に、ステップＳ４３０において、複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得する。
【００８４】
次に、ステップＳ４４０において、各候補ＣＮＮモデルの分類能力及び該データベースに適するＣＮＮモデルの分類能力に基づいて、該データベースに適するＣＮＮモデルを決定する。
【００８５】
好ましくは、複数のサンプルを含むデータベースの複雑度を決定するステップは、パラメータ群から複数のパラメータを選択し、選択された複数のパラメータに基づいて該データベースの複雑度を決定するステップを含み、該パラメータ群は、該データベースにおける複数のサンプルの種類の数を表す種類数、該データベースにおける各種類のサンプルの平均数を表すサンプル平均数、該データベースにおける各種類のサンプル数の分散度を表すサンプル分散度、該データベースにおけるサンプルの画像背景の複雑度を表す背景複雑度、及び該データベースにおけるサンプルから対象を認識することの難易度を表す対象鮮明度を含む。
【００８６】
好ましくは、複数のサンプルを含むデータベースの複雑度を決定するステップは、複数のパラメータの各パラメータの重み及びスコアを決定するステップと、複数のパラメータの各パラメータを重み付け加算して該データベースの複雑度を決定するステップと、を含む。
【００８７】
好ましくは、複数のサンプルを含むデータベースの複雑度を決定するステップは、階層分析法を用いて、複数のパラメータのうち各２つのパラメータ間の相対的な重要度に基づいて比較行列を構築するステップと、比較行列に基づいて、複数のパラメータの各パラメータの重みを決定するステップと、を含む。
【００８８】
好ましくは、データベースの複雑度に基づいてデータベースに適用するＣＮＮモデルの分類能力を決定するステップは、データベースの複雑度に基づいて、該データベースに適するＣＮＮモデルの分類能力の数値範囲を決定するステップを含む。
【００８９】
好ましくは、各候補ＣＮＮモデルの分類能力を取得するステップは、候補ＣＮＮモデルの第１パラメータを決定するステップと、候補ＣＮＮモデルの第１パラメータに基づいて候補ＣＮＮモデルの分類能力を算出するステップと、を含む。第１パラメータは、候補ＣＮＮモデルの訓練度合いを表すためのものである。
【００９０】
好ましくは、各候補ＣＮＮモデルの分類能力を取得するステップは、候補ＣＮＮモデルの第１パラメータ、第２パラメータ及び第３パラメータに基づいて、候補ＣＮＮモデルの分類能力を算出するステップを含む。第２パラメータは候補ＣＮＮモデルの畳み込み層の層数を表し、第３パラメータは候補ＣＮＮモデルの幅パラメータであり、該幅パラメータは該候補ＣＮＮモデルの特徴マップの数の乗算因子を表す。
【００９１】
好ましくは、方法は、候補ＣＮＮモデルと分類能力との対応関係を構築するステップと、データベースに適するＣＮＮモデルの分類能力に対応する候補ＣＮＮモデルを、データベースに適するＣＮＮモデルとして決定するステップと、をさらに含む。
【００９２】
好ましくは、候補ＣＮＮモデルと分類能力との対応関係を構築するステップは、同一又は類似の分類能力を有する候補ＣＮＮモデルが同一のグループに分けられるように、複数の候補ＣＮＮモデルに対してグループ分けを行うステップと、同一のグループに属する候補ＣＮＮモデルを、該グループの同一又は類似の分類能力のうち代表的な分類能力に対応付けるステップと、を含む。
【００９３】
好ましくは、方法は、複数の候補ＣＮＮモデルを選択するステップをさらに含む。
【００９４】
好ましくは、複数の候補ＣＮＮモデルを選択するステップは、複数のサンプルＣＮＮモデルを構築するステップと、第２パラメータ及び第３パラメータが所定条件を満たしている複数のサンプルＣＮＮモデルを複数の候補ＣＮＮモデルとして選択するステップと、を含む。
【００９５】
好ましくは、複数のサンプルＣＮＮモデルを構築するステップは、サンプルＣＮＮモデルの１つ又は複数のプーリング層のうち各プーリング層の後の特徴マップの数がプーリング層の前の特徴マップの数の２倍であるように、複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築するステップを含む。
【００９６】
好ましくは、複数のサンプルＣＮＮモデルを構築するステップは、サンプルＣＮＮモデルの１つ又は複数の畳み込み層の各畳み込み層の畳み込みテンプレート及び前記各プーリング層のプーリングテンプレートを固定することで、複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築するステップを含む。
【００９７】
好ましくは、複数のサンプルＣＮＮモデルを構築するステップは、サンプルＣＮＮモデルの活性化関数をＲｅＬＵ関数に固定することで、複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築するステップを含む。
【００９８】
上述したＣＮＮモデルの決定方法はＣＮＮモデルの決定装置１００により実現されてもよいため、上述したＣＮＮモデルの決定装置１００の各態様は全て適用でき、ここでその説明を省略する。
【００９９】
以上のことから、本発明の畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置及び方法は、データベースの複雑度に基づいて該データベースに適するＣＮＮモデルの分類能力を決定し、候補ＣＮＮモデルから適切なＣＮＮモデルを選択する。これによって、決定されたＣＮＮモデルがデータベースにより合致するように、該データベースの複雑度に基づいて適切なＣＮＮモデルを決定できる。さらに、普通のユーザでもデータベースに適するＣＮＮモデルを設計できるようにＣＮＮモデルの設計プロセスを簡易化できる。
【０１００】
なお、本発明のＣＮＮモデルの決定方法の各処理は、各種の機器読み取り可能な記憶媒体に記憶されたコンピュータが実行可能なプログラムにより実現されてもよい。
【０１０１】
また、本発明の目的は、上記実行可能なプログラムコードを記憶した記憶媒体をシステム又は装置に直接的又は間接的に提供し、該システム又は装置におけるコンピュータ、中央処理装置（ＣＰＵ）又は画像処理装置（ＧＰＵ）が該プログラムコードを読み出して実行することによって実現されてもよい。この場合は、該システム又は装置はプログラムを実行可能な機能を有すればよく、本発明の実施形態はプログラムに限定されない。また、該プログラムは任意の形であってもよく、例えばオブジェクトプログラム、インタプリタによって実行されるプログラム、又はオペレーティングシステムに提供されるスクリプトプログラム等であってもよい。
【０１０２】
上記の機器が読み取り可能な記憶媒体は、各種のメモリ、記憶部、半導体装置、光ディスク、磁気ディスク及び光磁気ディスクのようなディスク、及び他の情報を記憶可能な媒体等を含むが、これらに限定されない。
【０１０３】
また、コンピュータがインターネット上の対応するウェブサイトに接続し、本発明のコンピュータプログラムコードをコンピュータにダウンロードしてインストールして実行することによって、本発明の実施形態を実現することもできる。
【０１０４】
図５は本発明に係るＣＮＮモデルの決定方法を実施するための汎用パーソナルコンピュータの例示的な構成を示すブロック図である。
【０１０５】
図５において、ＣＰＵ５０１は、読み出し専用メモリ（ＲＯＭ）５０２に記憶されているプログラム、又は記憶部５０８からランダムアクセスメモリ（ＲＡＭ）５０３にロードされたプログラムにより各種の処理を実行する。ＲＡＭ５０３には、必要に応じて、ＣＰＵ５０１が各種の処理を実行するに必要なデータが記憶されている。ＣＰＵ５０１、ＲＯＭ５０２、及びＲＡＭ５０３は、バス５０４を介して互いに接続されている。入力／出力インターフェース５０５もバス５０４に接続されている。
【０１０６】
入力部５０６（キーボード、マウスなどを含む）、出力部５０７（ディスプレイ、例えばブラウン管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）など、及びスピーカなどを含む）、記憶部５０８（例えばハードディスクなどを含む）、通信部５０９（例えばネットワークのインタフェースカード、例えばＬＡＮカード、モデムなどを含む）は、入力／出力インターフェース５０５に接続されている。通信部５０９は、ネットワーク、例えばインターネットを介して通信処理を実行する。必要に応じて、ドライブ部５１０は、入力／出力インターフェース５０５に接続されてもよい。取り外し可能な媒体５１１は、例えば磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどであり、必要に応じてドライブ部５１０にセットアップされて、その中から読みだされたコンピュータプログラムは必要に応じて記憶部５０８にインストールされている。
【０１０７】
ソフトウェアにより上記処理を実施する場合、ネットワーク、例えばインターネット、又は記憶媒体、例えば取り外し可能な媒体５１１を介してソフトウェアを構成するプログラムをインストールする。
【０１０８】
なお、これらの記憶媒体は、図５に示されている、プログラムを記憶し、機器と分離してユーザへプログラムを提供する取り外し可能な媒体５１１に限定されない。取り外し可能な媒体５１１は、例えば磁気ディスク（フロッピーディスク（登録商標）を含む）、光ディスク（光ディスク−読み出し専用メモリ（ＣＤ−ＲＯＭ）、及びデジタル多目的ディスク（ＤＶＤ）を含む）、光磁気ディスク（ミニディスク（ＭＤ）（登録商標））及び半導体メモリを含む。或いは、記憶媒体は、ＲＯＭ５０２、記憶部５０８に含まれるハードディスクなどであってもよく、プログラムを記憶し、それらを含む機器と共にユーザへ提供される。
【０１０９】
なお、本発明のシステム及び方法では、各ユニット又は各ステップを分解且つ、或いは再組み合わせてもよい。これらの分解及び／又は再組み合わせは、本発明と同等であると見なされる。また、本発明の方法は、明細書に説明された時間的順序で実行するものに限定されず、他の時間的順序で順次、並行、又は独立して実行されてもよい。このため、本明細書に説明された方法の実行順序は、本発明の技術的な範囲を限定するものではない。
【０１１０】
以上は本発明の具体的な実施例の説明を通じて本発明を開示するが、上記の全ての実施例及び例は例示的なものであり、制限的なものではない。当業者は、特許請求の範囲の主旨及び範囲内で本発明に対して各種の修正、改良、均等的なものに変更してもよい。これらの修正、改良又は均等的なものに変更することは本発明の保護範囲に含まれるものである。
【０１１１】
また、上述の各実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定装置であって、
複数のサンプルを含むデータベースの複雑度を決定する第１決定手段と、
前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定する第２決定手段と、
複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得する第３決定手段と、
前記各候補ＣＮＮモデルの分類能力及び前記データベースに適するＣＮＮモデルの分類能力に基づいて、前記データベースに適するＣＮＮモデルを決定するマッチング手段と、を含む、装置。
（付記２）
前記第１決定手段は、パラメータ群から複数のパラメータを選択し、選択された複数のパラメータに基づいて前記データベースの複雑度を決定し、
前記パラメータ群は、
前記データベースにおける複数のサンプルの種類の数を表す種類数、
前記データベースにおける各種類のサンプルの平均数を表すサンプル平均数、
前記データベースにおける各種類のサンプル数の分散度を表すサンプル分散度、
前記データベースにおけるサンプルの画像背景の複雑度を表す背景複雑度、及び
前記データベースにおけるサンプルから対象を認識することの難易度を表す対象鮮明度を含む、付記１に記載の装置。
（付記３）
前記第１決定手段は、前記複数のパラメータの各パラメータの重み及びスコアを決定し、前記複数のパラメータの各パラメータを重み付け加算して前記データベースの複雑度を決定する、付記２に記載の装置。
（付記４）
前記第１決定手段は、
階層分析法を用いて、前記複数のパラメータのうち各２つのパラメータ間の相対的な重要度に基づいて比較行列を構築し、
前記比較行列に基づいて、前記複数のパラメータの各パラメータの重みを決定する、付記３に記載の装置。
（付記５）
前記第２決定手段は、前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力の数値範囲を決定する、付記１に記載の装置。
（付記６）
前記第３決定手段は、前記候補ＣＮＮモデルの第１パラメータを決定し、前記候補ＣＮＮモデルの第１パラメータに基づいて前記候補ＣＮＮモデルの分類能力を算出し、
前記第１パラメータは、前記候補ＣＮＮモデルの訓練度合いを表すためのものである、付記１に記載の装置。
（付記７）
前記第３決定手段は、前記候補ＣＮＮモデルの第１パラメータ、第２パラメータ及び第３パラメータに基づいて、前記候補ＣＮＮモデルの分類能力を算出し、
前記第２パラメータは前記候補ＣＮＮモデルの畳み込み層の層数を表し、
前記第３パラメータは前記候補ＣＮＮモデルの幅パラメータであり、前記幅パラメータは前記候補ＣＮＮモデルの特徴マップの数の乗算因子を表す、付記６に記載の装置。
（付記８）
前記第３決定手段は、候補ＣＮＮモデルと分類能力との対応関係を構築し、
前記マッチング手段は、前記データベースに適するＣＮＮモデルの分類能力に対応する候補ＣＮＮモデルを、前記データベースに適するＣＮＮモデルとして決定する、付記１に記載の装置。
（付記９）
前記第３決定手段は、
同一又は類似の分類能力を有する候補ＣＮＮモデルが同一のグループに分けられるように、前記複数の候補ＣＮＮモデルに対してグループ分けを行い、
同一のグループに属する候補ＣＮＮモデルを、該グループの同一又は類似の分類能力のうち代表的な分類能力に対応付ける、付記８に記載の装置。
（付記１０）
複数の候補ＣＮＮモデルを選択する選択手段、をさらに含む、付記７に記載の装置。
（付記１１）
前記選択手段は、
複数のサンプルＣＮＮモデルを構築し、
第２パラメータ及び第３パラメータが所定条件を満たしている複数のサンプルＣＮＮモデルを前記複数の候補ＣＮＮモデルとして選択する、付記１０に記載の装置。
（付記１２）
前記選択手段は、前記サンプルＣＮＮモデルの１つ又は複数のプーリング層のうち各プーリング層の後の特徴マップの数が前記プーリング層の前の特徴マップの数の２倍であるように、前記複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築する、付記１１に記載の装置。
（付記１３）
前記選択手段は、前記サンプルＣＮＮモデルの１つ又は複数の畳み込み層の各畳み込み層の畳み込みテンプレート及び前記各プーリング層のプーリングテンプレートを固定することで、前記複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築する、付記１０に記載の装置。
（付記１４）
前記選択手段は、前記サンプルＣＮＮモデルの活性化関数をＲｅＬＵ関数に固定することで、前記複数のサンプルＣＮＮモデルの各サンプルＣＮＮモデルを構築する、付記１０に記載の装置。
（付記１５）
畳み込みニューラルネットワーク（ＣＮＮ）モデルの決定方法であって、
複数のサンプルを含むデータベースの複雑度を決定するステップと、
前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定するステップと、
複数の候補ＣＮＮモデルのうち各候補ＣＮＮモデルの分類能力を取得するステップと、
前記各候補ＣＮＮモデルの分類能力及び前記データベースに適するＣＮＮモデルの分類能力に基づいて、前記データベースに適するＣＮＮモデルを決定するステップと、を含む、方法。
（付記１６）
前記複数のサンプルを含むデータベースの複雑度を決定するステップは、パラメータ群から複数のパラメータを選択し、選択された複数のパラメータに基づいて前記データベースの複雑度を決定するステップを含み、
前記パラメータ群は、
前記データベースにおける複数のサンプルの種類の数を表す種類数、
前記データベースにおける各種類のサンプルの平均数を表すサンプル平均数、
前記データベースにおける各種類のサンプル数の分散度を表すサンプル分散度、
前記データベースにおけるサンプルの画像背景の複雑度を表す背景複雑度、及び
前記データベースにおけるサンプルから対象を認識することの難易度を表す対象鮮明度を含む、付記１５に記載の方法。
（付記１７）
前記複数のサンプルを含むデータベースの複雑度を決定するステップは、
前記複数のパラメータの各パラメータの重み及びスコアを決定するステップと、
前記複数のパラメータの各パラメータを重み付け加算して前記データベースの複雑度を決定するステップと、を含む、付記１６に記載の方法。
（付記１８）
前記複数のサンプルを含むデータベースの複雑度を決定するステップは、
階層分析法を用いて、前記複数のパラメータのうち各２つのパラメータ間の相対的な重要度に基づいて比較行列を構築するステップと、
前記比較行列に基づいて、前記複数のパラメータの各パラメータの重みを決定するステップと、を含む、付記１７に記載の方法。
（付記１９）
前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力を決定するステップは、
前記データベースの複雑度に基づいて、前記データベースに適するＣＮＮモデルの分類能力の数値範囲を決定するステップを含む、付記１５に記載の方法。
（付記２０）
機器が読み取り可能な命令コードを含むプログラムプロダクトを記憶する機器読み取り可能な記憶媒体であって、前記命令コードがコンピュータにより読み取られ、実行される際に、前記コンピュータに、付記１５乃至１９の何れかに記載の方法を実行させることができる、記憶媒体。
【図１】
2018092615.tif 000007
【図２】
2018092615.tif 000008
【図３】
2018092615.tif 000009
【図４】
2018092615.tif 000010
【図５】
2018092615.tif 000011