(57)【特許請求の範囲】
【請求項１】
コンボリューションニューラルネットワーク（ＣＮＮ）モデルの訓練方法であって、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得することと、
複数の訓練画像を取得することと、
前記各レベルのコンボリューションレイヤーにおいて、前記各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、前記各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理して、各訓練画像のタイプ確率ベクトルを得ることと、
前記各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することと、
前記タイプ誤差に基づいて、前記訓練すべきＣＮＮモデルのモデルパラメータを調整することと、
調整されたモデルパラメータと前記複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、モデルパラメータの調整プロセスを継続することと、
反復回数が予め設定された回数に達するときに得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとすることとを含み、
前記初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、前記各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び前記完全接続レイヤーの初期バイアスベクトルを含む、前記方法。
【請求項２】
前記複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、前記初期訓練画像のアスペクト比を保持し、前記初期訓練画像を、指定高度を有する第１画像として処理することと、
前記第１画像を、指定幅を有する第２画像として処理し、前記指定高度と前記指定幅を有する画像を前記初期訓練画像に対応する訓練画像とすることとを含む
請求項１に記載の方法。
【請求項３】
前記複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、前記初期訓練画像のアスペクト比を保持し、前記初期訓練画像を指定高度を有する画像として処理し、前記指定高度に対応する幅を前記初期訓練画像の幅とすることとを含む
請求項１に記載の方法。
【請求項４】
前記第１画像を指定幅を有する第２画像として処理することは、
前記第１画像の幅が指定幅より小さい場合、前記第１画像の左右両端において指定階調値の画素を使用して均一に充填して、前記第１画像の幅が指定幅に達するときに、第２画像を得ることと、
前記第１画像の幅が指定幅より大きい場合、前記第１画像の左右両端の画素を均一にクロッピングして、前記第１画像の幅が指定幅に達するときに、第２画像を得ることとを含む
請求項２に記載の方法。
【請求項５】
前記各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることは、
任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーの第１特徴画像を現在のコンボリューションレイヤーに入力し、前記現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、前記１つ前のレベルのコンボリューションレイヤーの第１特徴画像に対してコンボリューション操作を行い、前記現在のコンボリューションレイヤーのコンボリューション画像を得、ここで、前記現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、前記１つ前のレベルのコンボリューションレイヤーの第１特徴画像が前記訓練画像であることと、
前記現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行って前記現在のコンボリューションレイヤーでの前記訓練画像の第１特徴画像を得た後、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って前記最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、前記現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し、前記次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うこととを含む
請求項１に記載の方法。
【請求項６】
前記各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
任意の１つの訓練画像の任意の１つレベルのコンボリューションレイヤーでの第１特徴画像について、前記コンボリューションレイヤーでの第１特徴画像の各画像の各行の要素のうちの最大値を抽出し、前記第１特徴画像は予め設定された数の画像を含み、前記予め設定された数は前記コンボリューションレイヤーのコンボリューションカーネルの数およびバイアス行列の数と同じであることと、
前記各画像の画素配列に応じて、各画像のすべての行から抽出された最大値を１つの1次元ベクトルに配列することと、
前記コンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せ、前記コンボリューションレイヤーでの第２特徴画像を得ることとを含む
請求項１に記載の方法。
【請求項７】
前記各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、各レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像のすべての行の要素をエンドツーエンドして、前記訓練画像の特徴ベクトルを得ることを含む
請求項６に記載の方法。
【請求項８】
前記各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することは、
各訓練画像の初期タイプを取得することと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算し、
【数１】
0006257848.tif 000149
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、ylabelは初期タイプ対応するタイプ確率を示すことと、
すべての訓練画像のタイプ誤差の平均値を計算し、前記タイプ誤差の平均値をタイプ誤差とすることとを含む
請求項１に記載の方法。
【請求項９】
前記訓練画像は自然のシーンの画像であり、前記自然のシーンの画像は異なる言語の文字を含み、前記訓練すべきＣＮＮモデルは言語認識分類器である
請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記訓練すべきＣＮＮモデルは、４つのレベルのコンボリューションレイヤーと２つの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは、同じ又は異なる数のコンボリューションカーネルとバイアス行列を含み、
前記各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、及び第４レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、及び第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることを含み、
前記各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像、及び第４レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像に応じて、前記訓練画像の特徴ベクトルを決定することを含む
請求項１〜８のいずれか１項に記載の方法。
【請求項１１】
コンボリューションニューラルネットワーク（ＣＮＮ）モデルの訓練装置であって、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得するように構成される第１取得モジュールと、
複数の訓練画像を取得するように構成される第２取得モジュールと、
前記各レベルのコンボリューションレイヤーにおいて、前記各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得るように構成される特徴抽出モジュールと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得るように構成される水平プーリングモジュールと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定するように構成される第１決定モジュールと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理して、各訓練画像のタイプ確率ベクトルを得るように構成される処理モジュールと、
前記各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算するように構成される計算モジュールと、
前記タイプ誤差に基づいて、前記訓練すべきＣＮＮモデルのモデルパラメータを調整するように構成される調整モジュールと、
調整されたモデルパラメータと前記複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、モデルパラメータの調整プロセスを継続するように構成される反復モジュールと、
反復回数が予め設定された回数に達するときに得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとするように構成される第２決定モジュールとを含み、
前記初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、前記各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び前記完全接続レイヤーの初期バイアスベクトルを含む、前記装置。
【請求項１２】
前記第１取得モジュールは、
複数の初期訓練画像を取得するように構成される第１取得ユニットと、
任意の１つの初期訓練画像について、前記初期訓練画像のアスペクト比を保持し、前記初期訓練画像を、指定高度を有する第１画像として処理するように構成される第１処理ユニットと、
前記第１画像を、指定幅を有する第２画像として処理するように構成される第２処理ユニットと、
前記指定高度と前記指定幅を有する画像を前記初期訓練画像に対応する訓練画像とするように構成される第１決定ユニットとを含む
請求項１１に記載の装置。
【請求項１３】
前記第１取得モジュールは、
複数の初期訓練画像を取得するように構成される第２取得ユニットと、
任意の１つの初期訓練画像について、前記初期訓練画像のアスペクト比を保持し、前記初期訓練画像を、指定高度を有する画像として処理し、前記指定高度に対応する幅を前記初期訓練画像の幅とするように構成される第３処理ユニットとを含む
請求項１１に記載の装置。
【請求項１４】
前記第２処理ユニットは、
前記第１画像の幅が指定幅より小さい場合、前記第１画像の左右両端において指定階調値の画素を使用して均一に充填して、前記第１画像の幅が指定幅に達するときに、第２画像を得るように構成される充填サブユニットと、
前記第１画像の幅が指定幅より大きい場合、前記第１画像の左右両端の画素を均一にクロッピングして、前記第１画像の幅が指定幅に達するときに、第２画像を得るように構成されるクロッピングサブユニットとを含む
請求項１２に記載の装置。
【請求項１５】
前記特徴抽出モジュールは、
任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、前記現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、前記１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行い、前記現在のコンボリューションレイヤーでのコンボリューション画像を得、ここで、前記現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、前記１つ前のレベルのコンボリューションレイヤーの第１特徴画像が前記訓練画像であるように構成されるコンボリューションユニットと、
前記現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行い、前記現在のコンボリューションレイヤーでの前記訓練画像の第１特徴画像を得るように構成される最大プーリングユニットと、
最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って前記最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、前記現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し、前記次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うように構成される伝送ユニットとを含む
請求項１１に記載の装置。
【請求項１６】
前記水平プーリングモジュールは、
任意の１つの訓練画像の任意の１つレベルのコンボリューションレイヤーの第１特徴画像について、前記コンボリューションレイヤーの第１特徴画像の各画像の各行の要素のうちの最大値を抽出し、前記第１特徴画像は予め設定された数の画像を含み、前記予め設定された数は前記コンボリューションレイヤーのコンボリューションカーネルの数およびバイアス行列の数と同じであるように構成される抽出ユニットと、
前記各画像の画素配列に応じて、各画像のすべての行から抽出された最大値を１つの1次元ベクトルに配列するように構成される配列ユニットと、
前記コンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せて、前記コンボリューションレイヤーでの第２特徴画像を得るように構成される組合せユニットとを含む
請求項１１に記載の装置。
【請求項１７】
前記第１決定モジュールは、任意の１つの訓練画像について、各レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像のすべての行の要素をエンドツーエンドして、前記訓練画像の特徴ベクトルを得るように構成される
請求項１６に記載の装置。
【請求項１８】
前記計算モジュールは、取得ユニット、第１計算ユニット、及び第２計算ユニットを含み、
前記取得ユニットは、各訓練画像の初期タイプを取得するように構成され、
前記第１計算ユニットは、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算するように構成され、
【数２】
0006257848.tif 000150
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、ylabelは初期タイプ対応するタイプ確率を示し、
第２計算ユニットは、すべての訓練画像のタイプ誤差の平均値を計算し、前記タイプ誤差の平均値をタイプ誤差とするように構成される
請求項１１に記載の装置。
【請求項１９】
前記訓練画像は自然のシーンの画像であり、前記自然のシーンの画像は異なる言語の文字を含み、前記訓練すべきＣＮＮモデルは言語認識分類器である
請求項１１〜１８のいずれか１項に記載の装置。
【請求項２０】
前記訓練すべきＣＮＮモデルは、４つのレベルのコンボリューションレイヤーと２つの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは、同じ又は異なる数のコンボリューションカーネルとバイアス行列を含み、
前記水平プーリング操作は、第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、及び第４レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、及び第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得るように構成され、
前記第１決定モジュールは、任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像、及び第４レベルのコンボリューションレイヤーでの前記訓練画像の第２特徴画像に応じて、前記訓練画像の特徴ベクトルを決定するように構成される
請求項１１〜１８のいずれか１項に記載の装置。
【請求項２１】
サーバーであって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサと接続され、前記１つ以上のプロセッサによって実行される命令が記憶されるように構成されるメモリとを含み、
前記１つ以上のプロセッサは、前記メモリに記憶された命令を実行することで、請求項１〜１０のいずれか１項に記載のＣＮＮモデルの訓練方法を実行するように構成される、前記サーバー。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、出願日２０１５年４月２日、出願番号２０１５１０１５４０２７０、発明の名称「コンボリューションニューラルネットワークモデルの訓練方法及び装置」である中国特許出願の優先権を主張し、その全ての内容がここに参照として本明細書に組み込まれる。
【０００２】
本発明は画像識別分野に関し、特にコンボリューションニューラルネットワークモデルの訓練方法及び装置に関する。
【背景技術】
【０００３】
画像識別分野において、コンボリューションニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ:ＣＮＮ）モデルをよく使用して識別すべき画像のタイプを決定する。ＣＮＮモデルを使用して識別すべき画像のタイプを識別する前に、ＣＮＮモデルを訓練（ｔｒａｉｎｉｎｇ）する必要がある。
【０００４】
ＣＮＮモデルを訓練する場合、通常、以下のように実現される。まず、訓練すべきＣＮＮモデルのモデルパラメータを初期化し、当該モデルパラメータは、各コンボリューションレイヤーの初期コンボリューションカーネル、各コンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。次に、予め選定された各訓練画像から固定高度と固定幅を有する処理すべき領域を取得し、当該固定高度と固定幅は、訓練すべきＣＮＮモデルにより予め設定された、処理可能な識別すべき画像のタイプとマッチングする。各訓練画像に対応する処理すべき領域を当該訓練すべきＣＮＮモデルに入力する。次に、各コンボリューションレイヤーにおいて、各コンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各処理すべき領域に対してコンボリューション操作（ｃｏｎｖｏｌｕｔｉｏｎ  ｏｐｅｒａｔｉｏｎ）と最大プーリング操作（ｍａｘｉｍａｌ  ｐｏｏｌｉｎｇ  ｏｐｅｒａｔｉｏｎ）を行い、各コンボリューションレイヤーの各処理すべき領域の特徴画像を得る。次に、完全接続レイヤーの初期重み行列と初期バイアスベクトルを使用して各特徴画像を処理し、各処理すべき領域のタイプ確率を得る。そして、各訓練画像の初期タイプ及びタイプ確率に応じて、タイプ誤差を計算する。すべての訓練画像のタイプ誤差に応じて、タイプ誤差の平均値を計算する。次に、当該タイプ誤差の平均値を使用して、訓練すべきＣＮＮのモデルパラメータを調整する。そして、調整されたモデルパラメータ及び各訓練画像を使用して、上記各ステップを指定回数に繰り返す。最後に、反復回数（ｉｔｅｒａｔｉｏｎｓ）が指定回数に達したときに得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとする。
【０００５】
本発明者は、本発明を実施する過程において、従来技術に以下の課題があることを見出した。
【０００６】
ＣＮＮモデルの訓練プロセスにおいて、予め選定された訓練画像から固定高度と固定幅を有する処理すべき領域を取得する必要があるため、訓練されたＣＮＮモデルは、固定高度と固定幅を有する画像のみを識別することができ、画像識別に限界があり、応用範囲も限られている。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来技術の課題を解決するために、本発明の実施例は、ＣＮＮモデルの訓練方法及び装置を提供する。前記技術案は以下の通りである。
【課題を解決するための手段】
【０００８】
本発明の第１形態として、ＣＮＮモデルの訓練方法を提供し、前記方法は、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得することと、
複数の訓練画像を取得することと、
前記各レベルのコンボリューションレイヤーにおいて、前記各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、前記各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理して、各訓練画像のタイプ確率ベクトルを得ることと、
前記各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することと、
前記タイプ誤差に基づいて、前記訓練すべきＣＮＮモデルのモデルパラメータを調整することと、
調整されたモデルパラメータと前記複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、モデルパラメータの調整プロセスを継続することと、
反復回数が予め設定された回数に達するときに得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとすることとを含み、
前記初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、前記各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び前記完全接続レイヤーの初期バイアスベクトルを含む。
【０００９】
本発明の第２形態として、ＣＮＮモデルの訓練装置を提供し、前記装置は、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得するように構成される第１取得モジュールと、
複数の訓練画像を取得するように構成される第２取得モジュールと、
前記各レベルのコンボリューションレイヤーにおいて、前記各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、前記各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得るように構成される特徴抽出モジュールと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得るように構成される水平プーリングモジュールと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定するように構成される第１決定モジュールと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理して、各訓練画像のタイプ確率ベクトルを得るように構成される処理モジュールと、
前記各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算するように構成される計算モジュールと、
前記タイプ誤差に基づいて、前記訓練すべきＣＮＮモデルのモデルパラメータを調整するように構成される調整モジュールと、
調整されたモデルパラメータと前記複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、モデルパラメータの調整プロセスを継続するように構成される反復モジュールと、
反復回数が予め設定された回数に達する場合に得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとするように構成される第２決定モジュールとを含み、
前記初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、前記各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び前記完全接続レイヤーの初期バイアスベクトルを含む。
【００１０】
本発明の第３形態として、サーバーを提供し、前記サーバーは、
１つ以上のプロセッサと、
前記１つ以上のプロセッサと接続され、前記１つ以上のプロセッサによって実行される命令が記憶されるように構成されるメモリとを含み、
前記１つ以上のプロセッサは、前記メモリに記憶されている命令を実行することで、上記第１形態に記載のＣＮＮモデルの訓練方法を実行するように構成される。
本発明の実施例に係る技術案は、以下の効果を奏する。
【００１１】
各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作（ｈｏｒｉｚｏｎｔａｌ  ｐｏｏｌｉｎｇ  ｏｐｅｒａｔｉｏｎ）を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例におけるＣＮＮモデルの訓練方法のフローチャートである。
【図２】本発明の他の実施例におけるＣＮＮモデルの訓練方法のフローチャートである
【図３】本発明の他の実施例における訓練すべきＣＮＮモデルの模式図である。
【図４】本発明の他の実施例における水平プーリング操作のプロセスの模式図である。
【図５】本発明の他の実施例におけるＣＮＮモデルの訓練方法のフローチャートである。
【図６】本発明の他の実施例におけるＣＮＮモデルの訓練装置の構造の概略図である。
【図７】本発明の他の実施例における端末の構造の概略図である。
【図８】本発明の他の実施例におけるサーバーの構造の概略図である。
【発明を実施するための形態】
【００１３】
本発明の実施例における技術案をより明確に説明するために、実施例の説明によって要求される図面を簡単に説明する。記載される図面は本発明のいくつか実施例に過ぎず、当業者であれば、創造的な労働をしていなくても、これらの図面に基づいて他の図面を取得できることは明らかである。
【００１４】
本発明の目的、技術案や利点をより明確になるために、以下、図面に基づいて本発明の実施例を詳しく説明する。
【００１５】
図１は本発明の実施例におけるＣＮＮモデルの訓練方法フローチャートである。図１に示すように、本発明の実施例は以下のステップを含む。
【００１６】
ステップ１０１において、訓練すべきＣＮＮモデルの初期モデルパラメータを取得し、ここで、初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【００１７】
ステップ１０２において、複数の訓練画像を取得する。
【００１８】
他の実施例において、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する第１画像として処理することと、
第１画像を指定幅を有する第２画像として処理し、指定高度と指定幅を有する画像を初期訓練画像に対応する訓練画像とすることとを含む。
【００１９】
他の実施例において、第１画像を指定幅を有する第２画像として処理することは、
第１画像の幅が指定幅より小さい場合、第１画像の左右両端において指定階調値の画素を使用して均一に充填して、第１画像の幅が指定幅に達するときに、第２画像を得ることと、
第１画像の幅が指定幅より大きい場合、第１画像の左右両端の画素を均一にクロッピングして、第１画像の幅が指定幅に達するときに、第２画像を得ることとを含む。
【００２０】
他の実施例において、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する画像として処理し、指定高度に対応する幅を初期訓練画像の幅とすることとを含む。
【００２１】
他の実施例において、訓練画像は自然のシーンの画像であり、自然のシーンの画像は異なる言語の文字を含み、訓練すべきＣＮＮモデルは言語認識分類器である。
【００２２】
ステップ１０３において、各レベルのコンボリューションレイヤー上で、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得る。
【００２３】
他の実施例において、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることは、
任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作（Ｃｏｎｖｏｌｕｔｉｏｎ  ｏｐｅｒａｔｉｏｎ）を行い、現在のコンボリューションレイヤーでのコンボリューション画像を得、ここで、前記現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像が訓練画像であることと、
現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行って訓練画像の現在のコンボリューションレイヤーの第１特徴画像を得た後、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、現在のコンボリューションレイヤーの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うこととを含む。
【００２４】
ステップ１０４において、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得る。
【００２５】
他の実施例において、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
任意の１つの訓練画像の任意の１つレベルのコンボリューションレイヤーでの第１特徴画像について、コンボリューションレイヤーでの第１特徴画像の各画像の各行の要素のうちの最大値を抽出し、第１特徴画像は予め設定された数の画像を含み、予め設定された数はコンボリューションレイヤーのコンボリューションカーネルの数およびバイアス行列の数と同じであることと、
各画像の画素配列に応じて、各画像のすべての行から抽出された最大値を１つの1次元ベクトルに配列することと、
コンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せ、コンボリューションレイヤーでの第２特徴画像を得ることとを含む。
【００２６】
ステップ１０５において、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定する。
【００２７】
他の実施例において、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、訓練画像の各レベルのコンボリューションレイヤーでの第２特徴画像におけるすべての行の要素をエンドツーエンド（ｅｎｄ  ｔｏ  ｅｎｄ）して、訓練画像の特徴ベクトルを得ることを含む。
【００２８】
ステップ１０６において、初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理して、各訓練画像のタイプ確率ベクトルを得る。
【００２９】
ステップ１０７において、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算する。
【００３０】
他の実施例において、前記各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することは、
各訓練画像の初期タイプを取得することと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算し、
【数１】
0006257848.tif 000002
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、
【数２】
0006257848.tif 000003
は初期タイプ対応するタイプ確率を示すことと、
すべての訓練画像のタイプ誤差の平均値を計算し、タイプ誤差の平均値をタイプ誤差とすることとを含む。
【００３１】
ステップ１０８において、タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整する。
【００３２】
ステップ１０９において、調整されたモデルパラメータと複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、モデルパラメータの調整プロセスを継続する。
【００３３】
ステップ１１０において、反復回数が予め設定された回数に達するときに得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとする。
【００３４】
本発明の実施例における方法によれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作後に得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行っている場合に、特徴画像から特徴画像の水平方向特徴を識別するための特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【００３５】
他の実施例において、訓練すべきＣＮＮモデルは、４つレベルのコンボリューションレイヤーと２つの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは同じ又は異なる数のコンボリューションカーネルとバイアス行列を含む。
【００３６】
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることを含む。
【００３７】
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像に応じて、訓練画像の特徴ベクトルを決定することを含む。
【００３８】
上記の技術案において、任意の形態で結合して本発明の実施例を形成することができ、ここでは説明を省略する。
【００３９】
図１に対応する実施例を参照し、図２は本発明の他の実施例におけるＣＮＮモデルの訓練方法のフローチャートである。図２に示すように、本発明の実施例における方法は、以下のステップを含む。
【００４０】
ステップ２０１において、訓練すべきＣＮＮモデルの初期モデルパラメータを取得し、ここで、初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【００４１】
具体的には、ＣＮＮモデルを訓練するプロセスは、訓練すべきＣＮＮのモデルパラメータを決定するプロセスである。モデルパラメータを決定する場合、まず、訓練すべきＣＮＮモデルにおいて１つの初期モデルパラメータを初期化して、以降の訓練プロセスにおいて、当該初期モデルパラメータを続けて最適化し、最適化されたモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとする。そして、訓練すべきＣＮＮモデルを訓練する場合、訓練すべきＣＮＮモデルの初期モデルパラメータを取得する必要がある。
【００４２】
ここで、通常、訓練すべきＣＮＮモデルは、少なくとも２つレベルのコンボリューションレイヤーと少なくとも１つレベルの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは、複数のコンボリューションカーネルと複数のバイアス行列を含み、各レベルの完全接続レイヤーは、複数の重み行列と複数のバイアスベクトルを含む。そして、取得されたモデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【００４３】
訓練すべきＣＮＮモデルに含まれるコンボリューションレイヤーの数と完全接続レイヤーの数は、本発明の実施例において限定されない。具体的に実施する場合、要求に応じて設定されても良い。例えば、図３に示すように、訓練すべきＣＮＮモデルの模式図を示す。図３に示す訓練すべきＣＮＮモデルは、４つレベルのコンボリューションレイヤーと２つレベルの完全接続レイヤーを含む。
【００４４】
さらに、各レベルのコンボリューションレイヤーに含まれているコンボリューションカーネルの数、バイアス行列の数、各レベルの完全接続レイヤーに含まれている重み行列の数、及びバイアスベクトルの数は、本発明の実施例において限定されない。また、同様に、各コンボリューションカーネルとバイアス行列の次元、並びに各重み行列と各バイアスベクトルの次元は、本発明の実施例において限定されない。具体的に実施する場合、各レベルのコンボリューションレイヤーに含まれているコンボリューションカーネルとバイアス行列の数や次元、各レベルの完全接続レイヤーに含まれている重み行列とバイアスベクトルの数や次元は、いずれも経験値を採用しても良い。
【００４５】
例えば、第１レベルのコンボリューションレイヤーは、大きさが５×５である９６個のコンボリューションカーネル
【数３】
0006257848.tif 000004
および大きさが５×５である９６個のバイアス行列
【数４】
0006257848.tif 000005
を含んでもよい。
【００４６】
以上の内容を参照すれば、訓練すべきＣＮＮモデルの初期モデルパラメータを取得する場合、指定された数値範囲において１つの値を初期モデルパラメータのうちの各要素の値としてランダムに選択しても良い。例えば、各初期コンボリューションカーネル、各初期重み行列、各初期バイアス行列、各初期バイアスベクトルのうちの各要素について、[−r、r]範囲において１つの乱数を選択する。ここで、rは初期化されたモデルパラメータの閾値であり、経験値であっても良い。例えば、rは０．００１である。
【００４７】
ステップ２０２において、複数の訓練画像を取得する。
【００４８】
ここで、訓練画像のタイプは、訓練すべきＣＮＮモデルの識別タイプと関連がある。例えば、訓練すべきＣＮＮモデルは異なる言語を識別可能なモデルである場合、訓練画像は異なる言語の文字又は文字列が含まれている画像であっても良い。訓練すべきＣＮＮモデルは色を識別するためのモデルである場合、訓練画像は異なる色が含まれている画像などであっても良い。
【００４９】
随意的には、グローバル経済の発展に伴い、国家、企業、個人の国際的な交流と協力がますます多くなる。この場合、人々が多言語情報を使用する又は理解することが多い。例えば、外国レストランの注文、国際会議の参加、海外サイトの閲覧などである。多言語文字情報の処理や理解に関する技術は既に重要で切実な技術となった。具体的には、このような技術において、複雑な自然のシーンから取得された文字の言語タイプを自動に識別することが要求される。ここで、自然のシーンにおける文字の言語タイプを識別するのは困難であり、以下の課題がある。第１課題として、自然のシーンの文字情報のフォント、色及びレイアウトが無秩序であり、その背景も複雑であり、多いノイズ情報が含まれる可能性がある。第２課題として、異なる言語について、それらのアルファベットにいくつかの完全に同じ又は非常に似ている文字が含まれ、例えば、英語とロシア語において、ある文字の形が同じであるため、文字の形によって言語タイプを識別するのは難しい。第３課題として、自然のシーンにおいて、固定アスペクト比のピクチャに対する分類器は、アスペクト比が全く一致しない文字ピクチャに適用されない。
【００５０】
これを鑑みて、自然のシーンにおいて異なる言語文字が含まれている画像を識別可能なＣＮＮモデルを提供し、自然のシーンにおいて画像中の文字言語タイプを迅速に識別することができる。そして、本発明の実施例において、訓練画像は自然のシーンの画像であっても良く、当該自然のシーンの画像は、異なる言語の文字を含む。この場合、訓練すべきＣＮＮモデルは、言語識別の分類器であっても良い。
【００５１】
また、訓練画像のサイズは、本発明の実施例において限定されない。具体的に実施する場合、訓練画像のタイプによって設定されても良い。例えば、自然のシーンにおいて異なる言語の文字が含まれている画像に対して、その水平方向が大きく異なり、垂直方向が比較的に似ている。つまり、当該画像の特徴は、通常、水平方向に反映される。したがって、本発明の実施例において、任意の１つの訓練画像について、その高度を具体的な値に限定し、その幅を限定しない。
【００５２】
具体的には、本発明の実施例において、すべての訓練画像は、同じ高度と幅を有し、即ち、すべての訓練画像は、指定高度と指定幅を有する。また、すべての訓練画像の高度が同じ、それらの幅が異なっても良い。例えば、すべての訓練画像は、指定高度を有するが、それらの幅は異なる。ここで、指定高度が第１値の画素であり、指定幅が第２値の画素である。具体的には、第１値が経験値であってもよく、例えば、第１値が３２などである。第２値は、予め設定された範囲において選択された乱数であっても良い。また、第２値は、画像タイプと関連し得る。例えば、自然のシーンにおいて異なる言語文字が含まれている画像に対して、その文字が通常に水平方向に分布されるため、その幅が高度より大きい。この場合、第１値が第２値より小さい。これを参照すると、当該予め設定された範囲は、４８〜２５６の間に設定されても良い。
【００５３】
上記訓練画像のサイズを参照し、複数の訓練画像を取得する場合、以下の２つの方式を含むが、これらに限定されない。
【００５４】
第１方式において、すべての訓練画像は指定高度と指定幅を有する。
【００５５】
当該方式において、まず、複数の初期訓練画像を取得し、複数の初期訓練画像のうちの１つの初期訓練画像について、当該初期訓練画像のアスペクト比を保持し、当該初期訓練画像を、指定高度を有する第１画像として処理する。次に、第１画像を、指定幅を有する第２画像として処理する。この時、当該初期訓練画像に対応する指定高度と指定幅を有する訓練画像を得る。すべての初期訓練画像に対してこの処理を行い、複数の訓練画像を得る。
【００５６】
例えば、サイズが６４画素＊１２０画素である初期訓練画像について、指定高度が３２画素を含む場合、当該初期訓練画像を３２画素＊６０画素である訓練画像として処理することができる。
【００５７】
ここで、当該方式において、第１画像を指定幅を有する第２画像として処理する場合、第１画像の幅が指定幅より大きく、又は指定幅より小さい可能性がある。そして、このような２つの状況に対して、指定幅を有している画像を取得するために、以下の２つの異なる処理の場合がある。
【００５８】
第１の場合において、第１画像の幅が指定幅より小さい場合、第１画像の幅が指定幅に達するまで、第１画像の左右両端において指定階調値の画素を使用して均一に充填する。
【００５９】
指定階調値について、具体的な値は、要求又は経験に応じて設定されても良い。例えば、当該指定階調値が０である。
【００６０】
例えば、指定幅が１２０画素であり、ある第１画像の幅が１１６画素である場合、当該第１画像の左側において２画素の、指定階調値である画素を充填し、当該第１画像右側において２画素の、指定階調値である画素を充填しても良い。
【００６１】
第２の場合において、第１画像の幅が指定幅より大きい場合、第１画像の幅が指定幅に達するまで、第１画像の左右両端の画素を均一に切り抜く。
【００６２】
例えば、指定幅が１２０画素であり、ある第１画像の幅が１２４画素である場合、当該第１画像の左側において２画素をクロッピング（Ｃｒｏｐｐｉｎｇ）し、当該第１画像の右側において２画素をクロッピングする。
【００６３】
当該方式によって取得された複数の訓練画像でＣＮＮモデルを訓練する場合、すべての訓練画像が同じ高度と幅を有することを確保することができる。この時、訓練すべきＣＮＮモデルを訓練する場合、コンピュータに複数のプロセスを設定し、各プロセスを制御して１つの訓練画像を処理することで、ＣＮＮモデルの訓練速度を向上させることができる。
【００６４】
第２方式において、すべての訓練画像は指定高度を有するが、各訓練画像の幅を限定しない。
【００６５】
この場合、まず、複数の初期訓練画像を取得し、複数の初期訓練画像のうちの任意の１つの初期訓練画像について、当該初期訓練画像のアスペクト比を保持し、当該初期訓練画像を指定高度を有する画像として処理し、該当指定高度に対応する当該指定幅を当該初期訓練画像の幅とする。複数の初期訓練画像に対してこの処理を行い、複数の訓練画像を得る。
【００６６】
例えば、ある初期訓練画像を指定高度を有する画像として処理する場合、当該指定高度に対応する幅が１２０画素であり、当該方式によって取得された訓練画像の高度が指定高度であり、幅が１２０画素である。
【００６７】
当該方式によって取得された複数の訓練画像でＣＮＮモデルを訓練する場合、各訓練画像が指定高度を有するが、それらの幅が異なる。この時、訓練すべきＣＮＮモデルを訓練する場合、訓練されたＣＮＮモデルが高い識別精度を有することを確保することができる。
【００６８】
なお、取得された複数の訓練画像によって訓練すべきＣＮＮモデルを具体的に訓練する場合、上記第１方式で取得した複数の訓練画像のみを使用することによって、訓練されたＣＮＮモデルを迅速に取得することを実現しても良いし、上記第２方式で取得した複数の訓練画像のみを使用することによって、訓練されたＣＮＮモデルが高い識別精度を有することを確保しても良い。なお、第１方式と第２方式で取得した訓練画像を共に使用してＣＮＮモデルを訓練することで、ＣＮＮモデルの訓練速度を向上させると共に、訓練されたＣＮＮモデルが高い識別精度を有することを確保することもできる。
【００６９】
ステップ２０３において、各レベルのコンボリューションレイヤーにおいて、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得る。
【００７０】
コンボリューション操作と最大プーリング操作を行うことで、画像の異なる層の特徴を段々に抽出することができる。そして、訓練すべきＣＮＮモデルを訓練する場合、訓練画像の特徴を取得するために、各レベルのコンボリューションレイヤー上で、訓練画像に対してコンボリューション操作と最大プーリング操作を行うことができる。
【００７１】
ここで、コンボリューション操作を行う場合、各レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用する必要がある。最大プーリング操作を行う場合、コンボリューションにより得られたコンボリューション画像に基づいて決定する必要がある。異なるコンボリューションレイヤーでコンボリューション操作を行って１つのコンボリューション画像をそれぞれ得る。さらに、各コンボリューション画像に対して最大プーリング操作を行って1つの特徴画像をそれぞれ得る。そして、本発明の実施例において、各レベルのコンボリューションレイヤーでコンボリューション操作を行って得た画像を各レベルのコンボリューションレイヤーでのコンボリューション画像と呼び、各レベルのコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行って得た画像を各レベルのコンボリューションレイヤーでの第１特徴画像と呼ぶ。
【００７２】
以上の内容を参照すれば、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることは、以下のステップ２０３１〜ステップ２０３３を含むが、これらに限定されない。
【００７３】
ステップ２０３１において、任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行い、現在のコンボリューションレイヤーでのコンボリューション画像を得る。ここで、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像が訓練画像である。
【００７４】
具体的には、任意の１つの訓練画像について、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、まず、当該訓練画像を第１レベルのコンボリューションレイヤーに伝送し、第１レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して当該訓練画像に対してコンボリューション操作を行い、第１レベルのコンボリューションレイヤーでのコンボリューション画像を得る。さらに、第１レベルのコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行い、第１レベルのコンボリューションレイヤーでの第１特徴画像を得る。当該第１レベルのコンボリューションレイヤーでの第１特徴画像を第２レベルのコンボリューションレイヤーに伝送し、第２レベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を続ける。
【００７５】
ここで、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行う場合、当該現在のコンボリューションレイヤー内における各コンボリューションカーネルを使用して１つ前のレベルのコンボリューションレイヤーでの第１特徴画像をコンボリューションし、且つ現在のコンボリューションレイヤー内におけるコンボリューションカーネルが１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対するスライドステップ長さが１であると制御する。
【００７６】
具体的には、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーであることを例とし、第１レベルのコンボリューションレイヤー内のあるコンボリューションカーネルを使用して訓練画像に対してコンボリューション操作を行う場合、以下の式で示す。
【００７７】
【数５】
0006257848.tif 000006
【００７８】
随意的には、コンボリューション操作の性質を参照すれば、コンボリューション操作を行う場合、画像エッジにある画素に対してコンボリューション操作を行うことができない可能性があるため、コンボリューション操作を行ったコンボリューション画像のサイズが変更される。この状況を回避するために、各レベルのコンボリューションレイヤーでコンボリューション操作を行う前に、コンボリューションされた画像に画素を充填することで、コンボリューション操作後に、コンボリューションすべき画像のサイズが変更されないことを確保することができる。
【００７９】
具体的には、コンボリューションすべき画像を充填する場合、コンボリューションすべき画像の周囲において、予め設定された階調値、例えば「０」を使用して充填することができる。ここで、充填したステップ長さはコンボリューションカーネルの次元と関連がある。コンボリューションカーネルの次元がｎである場合、充填したステップ長さが（ｎ−１）／２である。例えば、コンボリューションカーネルが３＊３である場合、充填したステップ長さが１つの画素である。
【００８０】
ここで、当該ステップにおいて、前記コンボリューションすべき画像は、各コンボリューションレイヤーに入力された画像である。例えば、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、コンボリューションすべき画像は訓練画像である。現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーではない場合、コンボリューションすべき画像が１つ前のレベルのコンボリューションレイヤーでの第１特徴画像である。
【００８１】
ステップ２０３２において、現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行い、訓練画像の現在のコンボリューションレイヤーでの第１特徴画像を得た後、現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに継続して伝送する。
【００８２】
具体的には、現在コンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行う場合、１つの指定サイズの滑り枠、例えば３×３の滑り枠を使用し、現在のコンボリューションレイヤーでのコンボリューション画像のうちの各コンボリューション画像において、左から右に、上から下に滑り、且つスライドステップ長さが予め設定された画素であり、例えば、予め設定された画素が２画素である。各コンボリューション画像上で滑り枠が滑る場合、滑り枠に含まれているすべての要素のうちの、０より小さい要素を０とする。次に、すべての要素のうちの最大要素を取出し、滑る際の順番に従って１つの新規画像を再構成する。操作が終わってから、現在のコンボリューションレイヤーでの第１特徴画像を得る。
【００８３】
ここで、現在のコンボリューションレイヤーの第１特徴画像の長さと幅は、最大プーリング操作の性質に従って計算して得ることができ、以下の式で示す。
【００８４】
【数６】
0006257848.tif 000007
ここで、ｆｌｏｏｒは切り下げる関数（ｆｌｏｏｒ  ｆｕｎｃｔｉｏｎ）を示す。例えば、ｆｌｏｏｒ（２．５）＝２である。ｗは現在のコンボリューションレイヤーでの第１特徴画像の長さ又は幅を示し、ｍは滑り枠の長さ又は幅に含まれている画素の数であり、lがスライドステップ長さであり、
【数７】
0006257848.tif 000008
が現在のコンボリューションレイヤーでのコンボリューション画像の高度又は幅である。現在のコンボリューションレイヤーでのコンボリューション画像のサイズが３２×ｗ０、滑り枠が３＊３、スライドステップ長さが２である場合、最大プーリング操作を行った後、得られた現在のコンボリューションレイヤーでの第１特徴画像のサイズが１５×ｗ１である。
【数８】
0006257848.tif 000009
【００８５】
ステップ２０３３において、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行う
【００８６】
ここで、各レベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うことは、上記ステップ２０３１及びステップ２０３２の原理と同じであり、上記ステップ２０３１及びステップ２０３２を参照することができ、ここでは説明を省略する。
【００８７】
ステップ２０４において、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得る。
【００８８】
ここで、水平プーリング操作を行う場合、すべてのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行っても良いし、一部のコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行っても良い。例えば、訓練すべきＣＮＮモデルが４つレベルのコンボリューションレイヤーを含む場合、各レベルのコンボリューションレイヤー上で水平プーリング操作を行っても良いし、第２レベルのコンボリューションレイヤー、第３レベルのコンボリューションレイヤー、及び第４レベルのコンボリューションレイヤー上で水平プーリング操作を行っても良い。
【００８９】
具体的には、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、以下のステップ２０４１〜２０４３を含むが、これらに限定されない。
【００９０】
ステップ２０４１において、任意のレベルのコンボリューションレイヤーでの任意の１つの訓練画像の第１特徴画像について、当該レベルのコンボリューションレイヤーでの第１特徴画像の各画像の各行の要素のうちの最大値を抽出する。ここで、第１特徴画像は予め設定された数の画像を含み、当該予め設定された数は当該レベルのコンボリューションレイヤーのコンボリューションカーネルの数およびバイアス行列の数と同じである。
【００９１】
例えば、第２レベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、第２レベルのコンボリューションレイヤーでの第１特徴画像が
【数９】
0006257848.tif 000010
であり、
【数１０】
0006257848.tif 000011
に対して水平プーリング操作を行い、第２レベルのコンボリューションレイヤーでの第２特徴画像
【数１１】
0006257848.tif 000012
を取得する。
【００９２】
このプロセスにおいて、
【数１２】
0006257848.tif 000013
のうちの第ｉの特徴画像
【数１３】
0006257848.tif 000014
は、高度７、幅ｗ２の画像である場合、
【数１４】
0006257848.tif 000015
の各行のすべての要素のうちの最大値を抽出する。
【００９３】
ステップ２０４２において、各画像の画素配列に応じて、各画像における全ての行から抽出した最大値を１つの1次元ベクトルに配列する。
【００９４】
上記ステップ２０４１の例を参照すれば、各画像における画素が上から下に配列されたことに応じて、各行の最大値を長さが７である１つの1次元ベクトルに配列する。図４に示すように、第２コンボリューションレイヤーでの第１特徴画像のうちの任意の一つの画像に対して水平プーリング操作を行うプロセスの模式図を示す。
【００９５】
ステップ２０４３において、当該レベルのコンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せ、当該レベルのコンボリューションレイヤーでの第２特徴画像を得る。
【００９６】
上記ステップ２０４１の例を参照すれば、
【数１５】
0006257848.tif 000016
に２５６個の画像があり、
【数１６】
0006257848.tif 000017
のうちのすべての２５６個の画像に対して上記操作を繰り返した後、長さが７である２５６個の1次元ベクトルを得る。各1次元ベクトルを１つの列ベクトルとし、順番に従って高度が７、幅が２５６である画像
【数１７】
0006257848.tif 000018
を合成する。
【数１８】
0006257848.tif 000019
は、
【数１９】
0006257848.tif 000020
に対して水平プーリング操作を行って得られた第２レベルのコンボリューションレイヤーでの第２特徴画像である。
【００９７】
図３に示す訓練すべきＣＮＮモデルを参照すると、当該訓練すべきＣＮＮモデルは、４つレベルのコンボリューションレイヤーと２つレベルの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは同じ又は異なる数のコンボリューションカーネルとバイアス行列を含む。この場合、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得る場合、第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第１画像特徴に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得る。
【００９８】
ステップ２０５において、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定する。
【００９９】
具体的には、任意の１つの訓練画像について、各レベルのコンボリューションレイヤーでの当該訓練画像の第２特徴画像をカスケード接続した後、第２特徴画像におけるすべての行の要素をエンドツーエンドして、当該訓練画像の特徴ベクトルを得る。
【０１００】
図３に示す訓練すべきＣＮＮモデルを参照すると、任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの当該訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの当該訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの当該訓練画像の第２特徴画像に応じて、当該訓練画像の特徴ベクトルを決定する。
【０１０１】
具体的には、任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの第２特徴画像、第３レベルのコンボリューションレイヤーでの第２特徴画像、第４レベルのコンボリューションレイヤーでの第２特徴画像をカスケード接続し、第２レベルのコンボリューションレイヤーでの第２特徴画像、第３レベルのコンボリューションレイヤーでの第２特徴画像、及び第４レベルのコンボリューションレイヤーでの第２特徴画像におけるすべて行の要素をエンドツーエンドして、当該訓練画像の特徴ベクトルを得る。
【０１０２】
例えば、第２レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像が
【数２０】
0006257848.tif 000021
であり、第３レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像が
【数２１】
0006257848.tif 000022
であり、第４レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像が
【数２２】
0006257848.tif 000023
である場合、
【数２３】
0006257848.tif 000024
におけるすべての行の要素をエンドツーエンドして、第１の1次元ベクトルを得、
【数２４】
0006257848.tif 000025
におけるすべて行の要素をエンドツーエンドして、第２の1次元ベクトルを得、
【数２５】
0006257848.tif 000026
におけるすべて行の要素をエンドツーエンドして、第３の1次元ベクトルを得る。さらに、第１の1次元ベクトル、第２の1次元ベクトル、及び第３の1次元ベクトルをエンドツーエンドして、当該訓練画像の特徴ベクトルを得る。
【０１０３】
ステップ２０６において、初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理し、各訓練画像のタイプ確率ベクトルを得る。
【０１０４】
具体的には、１つの訓練画像の特徴ベクトルについて、これを完全接続レイヤーに入力し、当該特徴ベクトルを完全接続レイヤーの重み行列に乗算し、乗算された結果を当該完全接続レイヤーのバイアスベクトルに加算し、当該訓練画像のタイプ確率ベクトルを得る。
【０１０５】
ここで、タイプ確率ベクトルが1次元ベクトルであり、タイプ確率ベクトルにおける要素の数は、訓練すべきＣＮＮモデルが識別可能な画像タイプの数と関連がある。例えば、訓練すべき画像が１０つのタイプの画像を区別する場合、タイプ確率ベクトルに１０つの要素が含まれる。各要素は、当該訓練画像が、あるタイプに属している確率を示す。
【０１０６】
ステップ２０７において、各訓練画像のタイプ確率ベクトルおよび各訓練画像の初期タイプに応じて、タイプ誤差を計算する。
【０１０７】
ここで、各訓練画像のタイプ確率ベクトルおよび各訓練画像の初期タイプに応じてタイプ誤差を計算することは、以下のステップ２０７１〜ステップ２０７３を含むが、これらに限定されない。
【０１０８】
ステップ２０７１において、各訓練画像の初期タイプを取得する。
【０１０９】
各訓練画像の初期タイプは既知である。ここで、手動で初期タイプを抽出して記録しても良い。この場合、各訓練画像の初期タイプを取得する時、記録されたデータに応じて取得しても良い。
【０１１０】
ステップ２０７２において、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式で各訓練画像のタイプ誤差を計算する。
【０１１１】
【数２６】
0006257848.tif 000027
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、
【数２７】
0006257848.tif 000028
は初期タイプ対応するタイプ確率を示す。例えば、初期訓練画像が第１タイプである場合、
【数２８】
0006257848.tif 000029
であり、即ち、タイプ確率ベクトルにおける第１の要素である。
【０１１２】
ステップ２０７３において、すべての訓練画像のタイプ誤差の平均値を計算し、タイプ誤差の平均値をタイプ誤差とする。
【０１１３】
もちろん、ここでは、すべての訓練画像の誤差の平均値のみを例として、タイプ誤差の計算を説明する。具体的に実施する場合、タイプ誤差を計算するとき、他の方式を使用してもよく、本発明の実施例において限定されない。
【０１１４】
ステップ２０８において、タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整する。
【０１１５】
具体的には、訓練すべきＣＮＮモデルのモデルパラメータを調整する場合、確率的勾配降下（Ｓｔｏｃｈａｓｔｉｃ  ｇｒａｄｉｅｎｔ  ｄｅｓｃｅｎｔ：ＳＧＤ）アルゴリズム（ＳＧＤ法に限定されない）を使用して、タイプ誤差を当該訓練すべきＣＮＮモデルに逆方向に伝送することで、当該訓練すべきＣＮＮモデルのモデルパラメータのうちのすべての要素を更新する。
【０１１６】
ＳＧＤアルゴリズムを使用してタイプ誤差を当該訓練すべきＣＮＮモデルに逆方向に伝送することで当該訓練すべきＣＮＮモデルのモデルパラメータのうちのすべての要素を更新することについて、本発明の実施例において限定されない。
【０１１７】
ステップ２０９において、調整されたモデルパラメータと複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、タイプ誤差の調整プロセスを続ける。
【０１１８】
具体的には、反復回数、即ち繰り返し回数が予め設定された回数に達するまで、ステップ２０２により取得された複数の訓練画像とステップ２０８により得られた、調整されたモデルパラメータを使用してステップ２０３〜ステップ２０８を繰り返す。
【０１１９】
予め設定された回数について、具体的な数値範囲は、本発明の実施例において限定されない。訓練されたＣＮＮモデルが正確であるようにするために、当該予め設定された回数が大きく設定されても良い。具体的に実施する場合、予め設定された回数が経験値であってもよく、例えば、３０００００である。
【０１２０】
ステップ２１０において、反復回数が予め設定された回数に達するときに得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとする。
【０１２１】
例えば、予め設定された回数が３０００００である場合、反復回数が３０００００達する際に得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとする。
【０１２２】
ステップ２１１において、識別すべき画像を訓練されたＣＮＮモデルに入力し、識別すべき画像のタイプ確率ベクトルを計算し、タイプ確率ベクトルの各要素のうちの１に最も近い要素に対応するタイプを識別すべき画像のタイプとする。
【０１２３】
具体的には、タイプ確率ベクトルに１０つの要素が含まれ、各要素が１つのタイプに対応する。当該タイプ確率ベクトルにおける第２の要素が１に最も近い場合、当該識別すべき画像が第２タイプに属する。
【０１２４】
本発明の実施例における方法によれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作後の特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０１２５】
図１又は図２に対応する実施例および図３に示す訓練すべきＣＮＮモデルの模式図を参照すれば、本発明の実施例において、訓練すべきＣＮＮモデルが４つレベルのコンボリューションレイヤーと２つレベルの完全接続レイヤー含むことを例として、本発明の実施例における方法を説明する。また、本発明の実施例において、第２レベルのコンボリューションレイヤーでの第１特徴画像、第３レベルのコンボリューションレイヤーでの第１特徴画像、第４レベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作を行うことを例として説明する。図５に示すように、本発明の実施例における方法は、以下のステップを含む。
【０１２６】
ステップ５０１において、訓練すべきＣＮＮモデルの初期モデルパラメータを取得し、ここで、初期モデルパラメータは、第１レベルのコンボリューションレイヤーの初期コンボリューションカーネル及び初期バイアス行列、第２レベルのコンボリューションレイヤーの初期コンボリューションカーネル及び初期バイアス行列、第３レベルのコンボリューションレイヤーの初期コンボリューションカーネル及び初期バイアス行列、第４レベルのコンボリューションレイヤーの初期コンボリューションカーネル及び初期バイアス行列、第１レベルの完全接続レイヤーの初期重み行列及び初期バイアスベクトル、及び第２レベルの完全接続レイヤーの初期重み行列及び初期バイアスベクトルを含む。
【０１２７】
ここで、各レベルのコンボリューションレイヤーは、同じ又は異なる数のコンボリューションカーネルとバイアス行列を含んでも良く、各レベルの完全接続レイヤーは、同じ又は異なる数の重み行列とバイアスベクトルを含んでも良い。各レベルのコンボリューションレイヤーに含まれているコンボリューションカーネルの数とバイアス行列の数、並びに各レベルの完全接続レイヤーに含まれている重み行列の数とバイアスベクトルの数について、本発明の実施例において限定されない。また、同様に、各コンボリューションカーネルとバイアス行列の次元、各重み行列と各バイアスベクトルの次元について、本発明の実施例において限定されない。具体的に実施する場合、各レベルのコンボリューションレイヤーに含まれているコンボリューションカーネルとバイアス行列の数および次元、並びに各レベルの重み行列とバイアスベクトルの数および次元は、いずれも経験値であっても良い。
【０１２８】
また、本発明の実施例において、初期モデルパラメータにおける各レベルのコンボリューションレイヤーのコンボリューションカーネル、バイアス行列、重み行列、及びバイアスベクトルを、初期コンボリューションカーネル、初期バイアス行列、初期重み行列、及び初期バイアスベクトルと呼ぶ。そして、訓練すべきＣＮＮモデルを訓練する場合、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを取得する必要がある。
【０１２９】
本発明の実施例を説明するために、本発明の実施例において、第１レベルのコンボリューションレイヤーは、大きさが５×５である９６個のコンボリューションカーネル
【数２９】
0006257848.tif 000030
及び大きさが５×５である９６個のバイアス行列
【数３０】
0006257848.tif 000031
を含み、第２レベルのコンボリューションレイヤーは、大きさが５×５である２５６個のコンボリューションカーネル
【数３１】
0006257848.tif 000032
及び大きさが５×５である２５６個のバイアス行列
【数３２】
0006257848.tif 000033
を含み、第３レベルのコンボリューションレイヤーは、大きさが３×３である３８４個のコンボリューションカーネル
【数３３】
0006257848.tif 000034
び大きさが３×３である３８４個のバイアス行列
【数３４】
0006257848.tif 000035
を含み、第４レベルのコンボリューションレイヤーは、大きさが３×３である５１２個のコンボリューションカーネル
【数３５】
0006257848.tif 000036
及び大きさが３×３である５１２つのバイアス行列
【数３６】
0006257848.tif 000037
を含み、第１レベルの完全接続レイヤーは、大きさが３４５６×１０２４である１つの重み行列
【数３７】
0006257848.tif 000038
及び長さが１０２４である１つのバイアスベクトル
【数３８】
0006257848.tif 000039
を含み、第２レベルの完全接続レイヤーは、大きさが１０２４×１０である１つの重み行列
【数３９】
0006257848.tif 000040
及び長さが１０である１つのバイアスベクトル
【数４０】
0006257848.tif 000041
を含むことを例として、本発明の実施例における方法を説明する。
【０１３０】
ここで、訓練すべきＣＮＮモデルの初期モデルパラメータを取得する場合、指定数値範囲内において、初期モデルパラメータにおける各要素の値として、１つの値をランダムに選択する。例えば、各初期コンボリューションカーネル、初期重み行列、初期バイアス行列、及び初期バイアスベクトルにおける各要素について、[−r、r]範囲において乱数を選択する。ここで、ｒは初期モデルパラメータの閾値であり、これは経験値であっても良い。例えば、rが０．００１であることができる。
【０１３１】
ステップ５０２において、訓練画像Iを取得し、ここで、訓練画像Iは指定高度を有する。
【０１３２】
ここで、当該訓練画像Iは、複数の訓練画像のうちの１つの訓練画像である。説明を分かりやすくなるために、本発明の以降の実施例において、当該訓練画像Iを処理することを例として、訓練すべきＣＮＮモデルの訓練プロセスを説明する。
【０１３３】
また、訓練画像Iは指定高度と指定幅を有する。具体的には、当該指定高度は、第１値の画素であり、当該指定幅は、第２値の画素である。具体的には、第１値は経験値であってもよく、例えば、第１値は３２などであっても良い。第２値は、予め設定された範囲内において選択された乱数である。ここで、当該予め設定された範囲は、４８〜２５６の間である。説明を分かりやすくなるために、本発明の以降の実施例において、訓練画像のサイズが３２＊ｗであることを例とし、ここで、３２が第１値であり、ｗoが第２値である。
【０１３４】
ステップ５０３において、第１レベルのコンボリューションレイヤー上で、第１レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、訓練画像Iに対してコンボリューション操作と最大プーリング操作を行い、第１レベルのコンボリューションレイヤーでの訓練画像Iの第１特徴画像Ｒ１を得る。
【０１３５】
以下、ステップ５０２における各初期モデルパラメータを参照して、第１レベルのコンボリューションレイヤー上で、第１レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、訓練画像Iに対してコンボリューション操作と最大プーリング操作を行うことを具体的に説明する。具体的には、第１レベルのコンボリューションレイヤーでの訓練画像Iの第１特徴画像Ｒ１を取得することは、以下のステップを含む。
【０１３６】
ステップ５０３１において、訓練画像Iを充填して、充填された訓練画像Itrを得る。
【０１３７】
当該ステップはオプションである。当該ステップを通って、第１レベルのコンボリューションレイヤー上でコンボリューション操作を行って得られた第１レベルのコンボリューションレイヤーでのコンボリューション画像と訓練画像Iが同じサイズを有することを確保することができる。ここで、充填については、ステップ２０３で説明したので、ステップ２０３を参照してよく、ここでは説明を省略する。
【０１３８】
例えば、訓練画像Iが３２×ｗoであることを例とし、まず、訓練画像I周囲において、「０」要素を使用して均一に充填する。ここで、充填される長さが２であるため、高度３６、幅ｗo＋４である充填された訓練画像Itrを得る。
【０１３９】
ステップ５０３２において、第１レベルのコンボリューションレイヤーにおいて、第１レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、充填された訓練画像Itrに対してコンボリューション操作を行い、第１レベルのコンボリューションレイヤーでのコンボリューション画像
【数４１】
0006257848.tif 000042
を得る。
【０１４０】
具体的には、ステップ５０２の例を参照して、
【数４２】
0006257848.tif 000043
における各コンボリューションカーネルを使用して、充填された訓練画像Itrをコンボリューションし、コンボリューションカーネルが充填された訓練画像Itrに対するスライドステップ長さが１である。即ち、
【数４３】
0006257848.tif 000044
である。
【０１４１】
【数４４】
0006257848.tif 000045
【０１４２】
ステップ５０３３において、第１レベルのコンボリューションレイヤーでのコンボリューション画像
【数４５】
0006257848.tif 000046
に対して最大プーリング操作を行い、第１レベルのコンボリューションレイヤーでの第１特徴画像Ｒ１を得る。
【０１４３】
ここで、最大プーリング操作はステップ２０３で説明したので、ステップ２０３を参照してよく、ここでは説明を省略する。
【０１４４】
例えば、ステップ５０２の例を参照し、３×３である１つの滑り枠を使用して、第１レベルのコンボリューションレイヤーでのコンボリューション画像
【数４６】
0006257848.tif 000047
における各コンボリューション画像において、左から右に、上から下に滑り、スライドステップ長さが２である。滑り枠が画像上で滑る場合、枠に含まれている９つの要素のうちの０より小さい要素を０とし、次に、９つの要素のうちの最大要素を取出し、滑り順番に従って１つの新規画像を再構成する。操作が終わってから、第１レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ１を得て、
【数４７】
0006257848.tif 000048
である。最大プーリング操作の性質に応じて、Ｒ１の大きさが１５×ｗ１である。ここで、
【数４８】
0006257848.tif 000049
である。ここで、ｆｌｏｏｒは切り下げる関数（ｆｌｏｏｒ  ｆｕｎｃｔｉｏｎ）を示す。例えば、ｆｌｏｏｒ（２．５）＝２である。また、当該式における分子のうちの「３」は、滑り枠の１つの次元の大きさを示し、分母のうちの「２」は滑りのステップ長さを示す。
【０１４５】
なお、ここで、３×３が例示的なものであり、具体的に実施する場合、滑り枠のサイズは他の値であっても良い。滑り枠のサイズは、本発明の実施例において限定されない。
ステップ５０４において、第２レベルのコンボリューションレイヤー上で、第２レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用し、第１レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ１に対してコンボリューション操作と最大プーリング操作を行い、第２レベルのコンボリューションレイヤーでの第１特徴画像Ｒ２を得る。
【０１４６】
以下、上記各初期モデルパラメータを参照して、第２レベルのコンボリューションレイヤー上で、第２レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、第１レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ１に対してコンボリューション操作と最大プーリング操作を行うことを具体的に説明する。具体的には、第２レベルのコンボリューションレイヤーでの第１特徴画像Ｒ２を取得することは、以下のステップを含む。
【０１４７】
ステップ５０４１において、第１レベルのコンボリューションレイヤーでの第１特徴画像Ｒ１を充填して、充填された画像
【数４９】
0006257848.tif 000050
を得る。
【０１４８】
当該ステップの原理はステップ５０３１と一致し、上記ステップ５０３１を参照しても良い。当該ステップはオプションである。当該ステップを通じて、コンボリューション操作を行った画像と第１レベルのコンボリューションレイヤーでの第１特徴画像Ｒ１は同じサイズを有することを確保する。
【０１４９】
例えば、ステップ５０２の例を参照し、充填される長さが２を含むが、これに限定されない。
【数５０】
0006257848.tif 000051
【０１５０】
ステップ５０４２について、第２レベルのコンボリューションレイヤー上で、第２レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、充填された画像
【数５１】
0006257848.tif 000052
に対してコンボリューション操作を行い、第２レベルのコンボリューションレイヤーでのコンボリューション画像
【数５２】
0006257848.tif 000053
を得る。
【０１５１】
当該ステップの原理はステップ５０３２と一致し、上記ステップ５０３２を参照してよく、ここで説明を省略する。
具体的には、上記ステップの例を参照すれば、
【数５３】
0006257848.tif 000054
のうちの各コンボリューションカーネルを使用して、
【数５４】
0006257848.tif 000055
の内の各画像をコンボリューションして、コンボリューションカーネルの画像に対するスライドステップ長さが１であり、コンボリューションされた結果を加算して、第２レベルのコンボリューションレイヤーでの各コンボリューション画像
【数５５】
0006257848.tif 000056
を得る。即ち、
【数５６】
0006257848.tif 000057
である。
【０１５２】
【数５７】
0006257848.tif 000058
【０１５３】
ステップ５０４３において、第２レベルのコンボリューションレイヤーでのコンボリューション画像
【数５８】
0006257848.tif 000059
に対して、最大プーリング操作を行い、第２レベルのコンボリューションレイヤーでの第１特徴画像Ｒ２を得る。
【０１５４】
当該ステップの原理は５０３３と一致し、上記ステップ５０３３を参照しても良い。具体的には、
【数５９】
0006257848.tif 000060
であり、且つ
【数６０】
0006257848.tif 000061
大きさが７×ｗ２である。
【数６１】
0006257848.tif 000062
である。
ステップ５０４４において、第２レベルのコンボリューションレイヤーでの第１特徴画像
【数６２】
0006257848.tif 000063
に対して水平プーリング操作を行い、第２レベルのコンボリューションレイヤーでの第２特徴画像
【数６３】
0006257848.tif 000064
を得る。
【０１５５】
具体的には、
【数６４】
0006257848.tif 000065
における第ｉの特徴画像
【数６５】
0006257848.tif 000066
について、高度が７であり、幅がｗ２である。
【数６６】
0006257848.tif 000067
の各行のすべての要素のうちの最大値を抽出し、順に接続して長さが７である１つの1次元ベクトルを形成する。
【０１５６】
【数６７】
0006257848.tif 000068
におけるすべての２５６個の特徴画像に対して以上の操作を行い、長さが７である２５６個の1次元ベクトルを得る。各1次元ベクトルを列ベクトルとし、順に接続して高度が７、幅が２５６である１つの画像
【数６８】
0006257848.tif 000069
を形成する。
【数６９】
0006257848.tif 000070
は
【数７０】
0006257848.tif 000071
に対して水平プーリング操作を行った第２コンボリューションレイヤーでの第２特徴画像である。
【０１５７】
ステップ５０５において、第３レベルのコンボリューションレイヤー上で、第３レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、第２レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ２に対してコンボリューション操作と最大プーリング操作を行い、第３レベルのコンボリューションレイヤーでの第１特徴画像Ｒ３を得る。
【０１５８】
以下、ステップ５０２における各モデルパラメータを参照して、第３レベルのコンボリューションレイヤー上で、第３レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、第２レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ２に対してコンボリューション操作と最大プーリング操作を行うことを説明する。具体的には、第３レベルのコンボリューションレイヤーでの第１特徴画像Ｒ３を取得することは、以下のステップを含む。
【０１５９】
ステップ５０５１において、第２レベルのコンボリューションレイヤーでの第１特徴画像
【数７１】
0006257848.tif 000072
を充填して、充填された画像
【数７２】
0006257848.tif 000073
を得る。
【０１６０】
当該ステップの原理はステップ５０３１と一致し、上記ステップ５０３１を参照しても良い。当該ステップはオプションである。当該ステップを通じで、コンボリューション操作を行った画像と第２レベルのコンボリューションレイヤーでの第１特徴画像Ｒ２が同じサイズを有することを確保する。
【０１６１】
具体的には、充填された長さが１を含むが、これに限定されない。充填した後、新規画像
【数７３】
0006257848.tif 000074
を取得する。ここで、
【数７４】
0006257848.tif 000075
であり、且つ
【数７５】
0006257848.tif 000076
の高度が９であり、幅がｗ２＋２である。
【０１６２】
ステップ５０５２において、第３レベルのコンボリューションレイヤー上で、第３レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、充填された画像
【数７６】
0006257848.tif 000077
に対してコンボリューション操作を行い、第３レベルのコンボリューションレイヤーでのコンボリューション画像
【数７７】
0006257848.tif 000078
を得る。
【０１６３】
当該ステップの原理は上記ステップ５０３２と一致し、上記ステップ５０３２を参照してよく、ここで説明を省略する。
【０１６４】
ここで、コンボリューションカーネルが充填された画像
【数７８】
0006257848.tif 000079
に対するスライドステップ長さが１である。即ち、
【数７９】
0006257848.tif 000080
である。
【０１６５】
【数８０】
0006257848.tif 000081
【０１６６】
ステップ５０５３において、第３レベルのコンボリューションレイヤーのコンボリューション画像
【数８１】
0006257848.tif 000082
に対して最大プーリング操作を行い、第３レベルのコンボリューションレイヤーでの第１特徴画像Ｒ３を取得する。
当該ステップの原理は５０３３と一致し、上記ステップ５０３３を参照してよい。具体的には、
【数８２】
0006257848.tif 000083
であり、且つ
【数８３】
0006257848.tif 000084
大きさが３×ｗ３である。ここで、
【数８４】
0006257848.tif 000085
である。
【０１６７】
ステップ５０５４において、第３レベルのコンボリューションレイヤーでの第１特徴画像
【数８５】
0006257848.tif 000086
に対して水平プーリング操作を行い、第３レベルのコンボリューションレイヤーでの第２特徴画像
【数８６】
0006257848.tif 000087
を取得する。
【０１６８】
当該ステップの原理は上記ステップ５０４４と一致し、上記ステップ５０４４を参照しても良い。
【０１６９】
具体的には、第３レベルのコンボリューションレイヤーでの第１特徴画像
【数８７】
0006257848.tif 000088
に対して水平プーリング操作を行うことで、高度が３であり、幅が３８４である１つの画像
【数８８】
0006257848.tif 000089
を得る。
【数８９】
0006257848.tif 000090
は、
【数９０】
0006257848.tif 000091
に対して水平プーリング操作を行った後の出力である。
【０１７０】
ステップ５０６において、第４レベルのコンボリューションレイヤーで、第４レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、第３レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ３に対してコンボリューション操作と最大プーリング操作を行い、第４レベルのコンボリューションレイヤーでの第１特徴画像Ｒ４を得る。
【０１７１】
以下、ステップ５０２における各モデルパラメータを参照して、第４レベルのコンボリューションレイヤーで、第４レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、第３レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ３に対してコンボリューション操作と最大プーリング操作を行うことを説明する。具体的には、第４レベルのコンボリューションレイヤーでの第１特徴画像Ｒ４を取得することは、以下のステップを含む。
【０１７２】
ステップ５０６１において、第４レベルのコンボリューションレイヤー上で、第４レベルのコンボリューションレイヤーのコンボリューションカーネルとバイアス行列を使用して、第３レベルのコンボリューションレイヤーでの第１レベル特徴画像Ｒ３に対してコンボリューション操作を行い、第４レベルのコンボリューションレイヤーでのコンボリューション画像
【数９１】
0006257848.tif 000092
を得る。
【０１７３】
ここで、コンボリューションカーネルがＲ３に対するスライドステップ長さが１である。即ち、
【数９２】
0006257848.tif 000093
である。
【０１７４】
【数９３】
0006257848.tif 000094
【０１７５】
ステップ５０６２において、第４レベルのコンボリューションレイヤーでの第１特徴画像
【数９４】
0006257848.tif 000095
に対して水平プーリング操作を行い、第４レベルのコンボリューションレイヤーでの第２特徴画像
【数９５】
0006257848.tif 000096
を得る。
【０１７６】
当該ステップの原理は上記ステップ５０４４と一致し、上記ステップ５０４４を参照しても良い。
具体的には、
【数９６】
0006257848.tif 000097
のうちの第ｉの特徴画像
【数９７】
0006257848.tif 000098
は、長さがｗ３−２である１つのベクトルであり、
【数９８】
0006257848.tif 000099
のすべての要素のうちの最大値を抽出する。
【数９９】
0006257848.tif 000100
のすべての５１２個の特徴画像に対して上記操作を行って、５１２個の数を取得し、これらの数を順に接続して長さが５１２である１つのベクトル
【数１００】
0006257848.tif 000101
を形成する。
【数１０１】
0006257848.tif 000102
は、
【数１０２】
0006257848.tif 000103
に対して水平プーリング操作を行った後の出力である。
【０１７７】
ステップ５０７において、第２レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像
【数１０３】
0006257848.tif 000104
第３レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像
【数１０４】
0006257848.tif 000105
第４レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像
【数１０５】
0006257848.tif 000106
に応じて、訓練画像Iの特徴ベクトル
【数１０６】
0006257848.tif 000107
を決定する。
【０１７８】
具体的には、
【数１０７】
0006257848.tif 000108
という列ベクトルをエンドツーエンドしてカスケード接続し、次に、ベクトル
【数１０８】
0006257848.tif 000109
をカスケード接続して、１つの1次元ベクトル
【数１０９】
0006257848.tif 000110
を得、
【数１１０】
0006257848.tif 000111
を訓練画像Iの特徴ベクトルとする。
【０１７９】
上記各ステップの例を参照すると、
【数１１１】
0006257848.tif 000112
の大きさが７×２５６であり、
【数１１２】
0006257848.tif 000113
の大きさが３×３８４であり、
【数１１３】
0006257848.tif 000114
の長さが５１２であるため、
【数１１４】
0006257848.tif 000115
の長さが３４５６である。
【０１８０】
ステップ５０８において、特徴ベクトル
【数１１５】
0006257848.tif 000116
を第１レベルの完全接続レイヤーの入力とし、第１レベルの完全接続レイヤーの重み行列とバイアスベクトルを使用して
【数１１６】
0006257848.tif 000117
処理し、第１レベルの完全接続レイヤーの出力
【数１１７】
0006257848.tif 000118
を算出する。
【０１８１】
上記ステップ５０２を参照して、第１レベルの完全接続レイヤーの重み行列が
【数１１８】
0006257848.tif 000119
であり、バイアスベクトルが
【数１１９】
0006257848.tif 000120
であり、以下の式で第１レベルの完全接続レイヤーの出力
【数１２０】
0006257848.tif 000121
を算出することができる。
【０１８２】
【数１２１】
0006257848.tif 000122
【０１８３】
上記ステップ５０８を参照すると、
【数１２２】
0006257848.tif 000123
の長さが１０２４である。上記各ステップで得られた結果は、図３における具体的な値を参照することができる。もちろん、図３における値は例示的なものであり、本発明の実施例において限定されない。
【０１８４】
ステップ５０９において、第１レベルの完全接続レイヤーの出力を第２レベルの完全接続レイヤーに入力し、第２レベルの完全接続レイヤーの重み行列とバイアス行列を使用して訓練画像Iのタイプ確率ベクトル
【数１２３】
0006257848.tif 000124
を計算し、訓練画像Iのタイプ確率ベクトル
【数１２４】
0006257848.tif 000125
と初期タイプlabelに応じて、タイプ誤差Lossを計算する。
【０１８５】
当該ステップの原理はステップ２０６とステップ２０７で説明したので、ステップ２０６とステップ２０７を参照してよく、ここで説明を省略する。
【０１８６】
具体的には、上記例を参照すると、第１レベルの完全接続レイヤーの出力
【数１２５】
0006257848.tif 000126
を第２レベルの完全接続レイヤーの入力とする。ステップ５０２からわかるように、第２レベルの完全接続レイヤーの重み行列が
【数１２６】
0006257848.tif 000127
であり、バイアスベクトルが
【数１２７】
0006257848.tif 000128
であり、訓練画像Iのタイプ確率ベクトル
【数１２８】
0006257848.tif 000129
を算出する。ここで、
【数１２９】
0006257848.tif 000130
であり、且つ
【数１３０】
0006257848.tif 000131
である。ここで、
【数１３１】
0006257848.tif 000132
は、入力画像Iが第iのタイプに属する確率を示し、ｎは、訓練すべきＣＮＮモデルが識別可能な画像タイプの数を示す。ここで、図３において、訓練すべきＣＮＮモデルが識別可能な１０つの画像タイプを例として説明する。
【０１８７】
さらに、訓練画像Iのタイプ確率ベクトル
【数１３２】
0006257848.tif 000133
と初期タイプlabelに応じてタイプ誤差Lossを計算する場合、以下の式を使用することによって実現することができる。
【０１８８】
【数１３３】
0006257848.tif 000134
【０１８９】
例えば、訓練画像Iの初期タイプが第１タイプに属している場合、label＝１である。
ステップ５１０において、すべての訓練画像の各訓練画像に対して、ステップ５０２〜ステップ５０９を繰り返し、すべての訓練画像のタイプ誤差の平均値
【数１３４】
0006257848.tif 000135
を算出し、当該タイプ誤差の平均値をタイプ誤差とする。
【０１９０】
ステップ５１１において、タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整する。
【０１９１】
当該ステップの原理は、ステップ２０８で説明したので、ステップ２０８を参照してよく、ここで説明を省略する。
【０１９２】
具体的には、ＳＧＤアルゴリズムを使用してタイプ誤差を訓練すべきＣＮＮモデルに逆方向に伝送する場合、ＳＧＤアルゴリズムにおける学習率を０．０１とし、ステップ５１０で算出したタイプ誤差
【数１３５】
0006257848.tif 000136
を訓練すべきＣＮＮモデルに逆方向に伝送して、コンボリューションカーネル
【数１３６】
0006257848.tif 000137
バイアス行列
【数１３７】
0006257848.tif 000138
重み行列
【数１３８】
0006257848.tif 000139
及びバイアスベクトル
【数１３９】
0006257848.tif 000140
のうちのすべての要素を更新する。
【０１９３】
ステップ５１２において、ステップ５０３〜ステップ５１１の反復操作に回数Ｎを予め設定し、反復回数が予め設定された回数Ｎに達する際に得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとする。
【０１９４】
Ｎの具体的な数値範囲について、本発明の実施例において限定されない。訓練されたＣＮＮモデルが正確であるようにするために、当該Ｎの値が大きく設定されても良い。具体的に実施する場合、Ｎが経験値であっても良い。例えば、Ｎが３０００００である。反復回数が３０００００に達する際に得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとする。
【０１９５】
試験によれば、訓練すべきＣＮＮモデルが４つレベルのコンボリューションレイヤーを含み、第２レベルのコンボリューションレイヤー、第３レベルのコンボリューションレイヤー、第４レベルのコンボリューションレイヤー上で水平プーリング操作を行う場合、上記ステップ５０１〜ステップ５１２により訓練されたＣＮＮモデルは、高い正確率を有するため、訓練ＣＮＮモデルの正確率を向上させる。
【０１９６】
本発明の実施例における方法によれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０１９７】
図６は本発明の他の実施例におけるＣＮＮモデルの訓練装置の構造の概略図である。当該ＣＮＮの訓練装置は、上記の図１、図２又は図５のいずれか一つの図に対応する実施例によって提供されるＣＮＮモデルの訓練方法を実行するように構成される。図６に示すように、当該装置において、第１取得モジュール６０１、第２取得モジュール６０２、特徴抽出モジュール６０３、水平プーリングモジュール６０４、第１決定モジュール６０５、処理モジュール６０６、計算モジュール６０７、調整モジュール６０８、反復モジュール６０９、及び第２決定モジュール６１０を含む。
【０１９８】
第１取得モジュール６０１は、訓練すべきＣＮＮモデルの初期モデルパラメータを取得するように構成され、ここで、初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【０１９９】
第２取得モジュール６０２は、複数の訓練画像を取得するように構成される。
【０２００】
特徴抽出モジュール６０３は、各レベルのコンボリューションレイヤー上で、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得るように構成される。
【０２０１】
水平プーリングモジュール６０４は、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得るように構成される。
【０２０２】
第１決定モジュール６０５は、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定するように構成される。
【０２０３】
処理モジュール６０６は、初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理し、各訓練画像のタイプ確率ベクトルを得るように構成される。
【０２０４】
計算モジュール６０７は、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算するように構成される。
【０２０５】
調整モジュール６０８は、タイプ誤差に応じて、訓練すべきＣＮＮモデルのモデルパラメータを調整するように構成される。
【０２０６】
反復モジュール６０９は、反復回数が予め設定された回数に達するまで、調整されたモデルパラメータと複数の訓練画像に応じて、モデルパラメータの調整を続けるように構成される。
【０２０７】
第２決定モジュール６１０は、反復回数が予め設定された回数に達するときに得たモデルパラメータを、訓練されたＣＮＮモデルのモデルパラメータとするように構成される。
【０２０８】
本発明の実施例における装置によれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０２０９】
他の実施例において、第１取得モジュール６０１は、第１取得ユニット、第１処理ユニット、第２処理ユニット、及び第１決定ユニットを含む。
【０２１０】
第１取得ユニットは、複数の初期訓練画像を取得するように構成される。
【０２１１】
第１処理ユニットは、任意の１つの初期訓練画像について、前記初期訓練画像のアスペクト比を保持し、各初期訓練画像を指定高度を有する第１画像として処理するように構成される。
【０２１２】
第２処理ユニットは、前記第１画像を指定幅を有する画像として処理するように構成される。
【０２１３】
第１決定ユニットは、指定高度と指定幅を有する画像を初期訓練画像に対する訓練画像とするように構成される。
【０２１４】
他の実施例において、第１取得モジュール６０１は、第２取得ユニット、及び第３処理ユニットを含む。
【０２１５】
第２取得ユニットは、複数の初期訓練画像を取得するように構成される。
【０２１６】
第３処理ユニットは、任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する画像として処理し、指定高度に対応する幅を各初期訓練画像の幅とするように構成される。
【０２１７】
他の実施例において、第１処理ユニットは、処理サブユニット、及び充填サブユニット、及びクロッピングサブユニットを含む。
【０２１８】
処理サブユニットは、各初期訓練画像を指定高度を有する画像として処理し、初期幅を得るように構成される。
【０２１９】
充填サブユニットは、初期幅が指定幅より小さい場合、指定幅に達するまで、処理された初期訓練画像の左右両端に指定階調値の画素を使用して均一に充填するように構成される。
【０２２０】
クロッピングサブユニットは、初期幅が指定幅より大きい場合、指定幅に達するまで、処理された初期訓練画像の左右両端に画素を均一にクロッピングするように構成される。
【０２２１】
他の実施例において、特徴抽出モジュール６０３は、コンボリューションユニット、最大プーリングユニット、及び伝送ユニットを含む。
【０２２２】
コンボリューションユニットは、任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行い、現在のコンボリューションレイヤーでのコンボリューション画像を得るように構成され、ここで、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、１つ前のレベルのコンボリューションレイヤーの第１特徴画像が訓練画像である。
【０２２３】
最大プーリングユニットは、現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行い、訓練画像の現在のコンボリューションレイヤーでの第１特徴画像を得るように構成される。
【０２２４】
伝送ユニットは、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行い、最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し、次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うように構成される。
【０２２５】
他の実施例において、水平プーリングモジュール６０４は、抽出ユニット、配列ユニット、及び組合せユニットを含む。
【０２２６】
抽出ユニットは、任意の１つの訓練画像の任意のレベルのコンボリューションレイヤーでの第１特徴画像について、コンボリューションレイヤーでの第１特徴画像の各画像の各行の要素のうちの最大値を抽出するように構成され、ここで、第１特徴画像は予め設定された数の画像を含み、予め設定された数はコンボリューションレイヤーのコンボリューションカーネルの数及びバイアス行列の数と同じである。
【０２２７】
配列ユニットは、各画像の画素配列に応じて、各画像のすべての行から抽出した最大値を１つの1次元ベクトルに配列するように構成される。
【０２２８】
組合せユニットは、コンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せ、コンボリューションレイヤーでの第２特徴画像を得るように構成される。
【０２２９】
他の実施例において、第１決定モジュール６０５は、任意の１つの訓練画像について、各レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像のすべての行の要素をエンドツーエンドして、訓練画像の特徴ベクトルを得るように構成される。
【０２３０】
他の実施例において、計算モジュール６０７は、取得ユニット、第１計算ユニット、及び第２計算ユニットを含む。
【０２３１】
取得ユニットは、各訓練画像の初期タイプを取得するように構成される。
【０２３２】
第１計算ユニットは、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算するように構成され、
【数１４０】
0006257848.tif 000141
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、
【数１４１】
0006257848.tif 000142
は初期タイプ対応するタイプ確率を示す。
【０２３３】
第２計算ユニットは、すべての訓練画像のタイプ誤差の平均値を計算し、タイプ誤差の平均値をタイプ誤差とするように構成される。
【０２３４】
他の実施例において、訓練画像は自然のシーンの画像であり、自然のシーンの画像は異なる言語の文字を含み、訓練すべきＣＮＮモデルは言語認識分類器である。
【０２３５】
他の実施例において、訓練すべきＣＮＮモデルは４つレベルのコンボリューションレイヤーと２つの完全接続レイヤー、各レベルのコンボリューションレイヤーは同じ又は異なる数のコンボリューションカーネルとバイアス行列を含み、
【０２３６】
水平プーリング操作は、第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得るように構成される。
【０２３７】
第１決定モジュールは、任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像に応じて、訓練画像の特徴ベクトルを決定するように構成される。
【０２３８】
上記すべてのオプションの技術案は、任意の結合方式で本発明の実施例を形成することができ、ここでは説明を省略する。
【０２３９】
図７を参照して、本発明の実施例に係る端末の構造の概略図を示す。当該端末は、上記の図１、図２又は図４に対応する実施例におけるＣＮＮモデルの訓練方法を実行するように構成される。
【０２４０】
端末７００は、無線周波数（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ：ＲＦ）回路１１０、１つ以上のコンピュータ読み取り可能な記憶媒体を含むメモリ１２０、入力ユニット１３０、表示ユニット１４０、センサー１５０、オーディオ回路１６０、ワイファイ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ：ＷｉＦｉ）モジュール１７０、１つ以上の処理コアを含むプロセッサ１８０及び電源１９０等の部品を含む。当業者は、端末が図７に示す端末の構造に限定されず、例示的な部品より多い又は少ない部品を含んでも良いし、いくつかの部品を組み合わせても良いし、異なる部品を含んでも良いことを理解すべきである。
【０２４１】
ＲＦ回路１１０は、情報を送受信し又は通話中で信号を送受信し、特に、基地局からの下り情報を受信してから１つ以上のプロセッサ１８０に送信して処理する。また、上り情報を基地局に送信する。通常、ＲＦ回路１１０は、アンテナ、少なくとも１つの増幅器、チューナー、１つ以上の発振器、加入者識別モジュール（ＳＩＭ）カード、送受信装置、カプラ、ローノイズアンプ（Ｌｏｗ  Ｎｏｉｓｅ  Ａｍｐｌｉｆｉｅｒ：ＬＮＡ）、デュプレクサなどを含むが、これらに限定されない。なお、ＲＦ回路１１０は、無線通信ネットワークを介して他の装置と通信することができる。前記無線通信は、ＧＳＭ（登録商標）(Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｏｆ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎ：国際移動通信システム)、ＧＰＲＳ(Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｅｒｖｉｃｅ：汎用パケット無線サービス)、ＣＤＭＡ(Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ：符号分割多元アクセス)、ＷＣＤＭＡ（登録商標）(Ｗｉｄｅｂａｎｄ  Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ：広帯域符号分割多重アクセス)、ＬＴＥ(Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ：ロングタームエボリューション)、電子メール、ＳＭＳ(Ｓｈｏｒｔ  Ｍｅｓｓａｇｉｎｇ  Ｓｅｒｖｉｃｅ：ショートメッセージサービス)等の通信基準やプロトコルを採用してもよいが、これらに限定されない。
【０２４２】
メモリ１２０は、ソフトウェアプログラム及びモジュールを記憶するように構成され、プロセッサ１８０は、メモリ１２０に記憶されているソフトウェアプログラム及びモジュールを動作させることで、各種のアプリケーション及びデータ処理を実行する。メモリ１２０は、プログラム記憶領域とデータ記憶領域を含み、ここで、プログラム記憶領域には、オペレーティングシステム、少なくとも１つの機能に対応するアプリケーションプログラム（例えば、音声再生機能、画像再生機能など）等が記憶され、データ記憶領域には、端末７００の使用によって生成されたデータ（例えば、オーディオデータ、電話帳など）等が記憶される。なお、メモリ１２０は、高速ランダムアクセスメモリ、非揮発性メモリ、例えば少なくとも１つの磁気ディスクメモリ、フラッシュメモリ、又は揮発性メモリを含んでも良い。これに対応して、プロセッサ１８０と入力ユニット１３０がメモリ１２０へアクセスするように、メモリ１２０がメモリコントローラを含んでもよい。
【０２４３】
入力ユニット１３０は、入力された数字や文字情報を受信し、ユーザー設定や機能制御に関するキーボード、マウス、操作ハンドル、光学やトラックボールの信号入力を生成するように構成される。具体的には、入力ユニット１３０は、タッチセンシティブ表面１３１及び他の入力装置１３２を含む。タッチセンシティブ表面１３１は、タッチセンシティブディスプレイ又はタッチパネルと呼ばれ、ユーザーからのタッチ操作（例えば、ユーザーが指、スタイラス等の任意の適当なもの又は部品を使用してタッチセンシティブ表面１３１上で又はタッチセンシティブ表面１３１の近くに操作を行う）を取得し、予め設定されたプログラムに基づいて対応する接続装置を動作させる。オプションで、タッチセンシティブ表面１３１はタッチ検出装置とタッチ制御器を含む。ここで、タッチ検出装置は、ユーザーのタッチ位置を検出し、タッチ操作による信号を検出し、信号をタッチ制御器に送信する。タッチ制御器は、タッチ検出装置からタッチ情報を受信し、これらを接触した位置の座標に転換し、プロセッサ１８０を送信しプロセッサ１８０から送信された命令を受信して実行することができる。なお、抵抗式、電気容量式、赤外線、表面音波等の形態でタッチセンシティブ表面１３１を実現することができる。タッチセンシティブ表面１３１の以外、入力ユニット１３０は、他の入力装置１３２をさらに含む。具体的には、他の入力装置１３２は、物理的キーボード、ファンクションキー（例えば、音量制御キー、オンオフキー等）、トラックボール、マウス、操作ハンドル等のうちの１つ又は複数を含むが、これらに限定されない。
【０２４４】
表示ユニット１４０は、ユーザーからの情報、ユーザーにより送信された情報及び端末７００における各グラフィカルユーザインタフェースを表示するように構成される。これらのグラフィカルユーザインタフェースは、グラフィカル、テクスト、アイコン、ビデオ、これらの組合せによって構成されても良い。表示ユニット１４０は、表示パネル１４１を含み、液晶表示器 (Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：ＬＣＤ)、ＯＬＥＤ(Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ：有機発光ダイオード)などを使用して表示パネル１４１を構成しても良い。さらに、タッチセンシティブ表面１３１が表示パネル１４１を配置してもよい。タッチセンシティブ表面１３１はその上又は近くのタッチ操作を検出した後、プロセッサ１８０に送信してタッチイベントのタイプを決定し、プロセッサ１８０は、タッチイベントのタイプに応じて、表示パネル１４１上で対応する視覚出力を行う。図７において、タッチセンシティブ表面１３１と表示パネル１４１は、２つの独立な部品として入力と入力機能を実現するが、ある実施例において、タッチセンシティブ表面１３１と表示パネル１４１を集積して入力と出力機能を実現しても良い。
【０２４５】
端末７００は、少なくも１つのセンサー１５０例えば光センサー、モーションセンサー及び他のセンサーをさらに含む。具体的には、光センサーは環境光センサー及び近接センサーを含む。ここで、環境光センサーは、環境光のシェーディングによって表示パネル１４１の輝度を調整する。近接センサーは、端末７００が耳の近くに近接する場合、表示パネル１４１をオフ及び／又はバックライトする。１つ種のモーションセンサーとして、重力加速度センサーは、各方向（一般的には３つの軸である）の加速度の大きさを検出し、静止する場合、重力の大きさ及び方向を検出し、端末の姿勢を識別するアプリケーション（例えば、横縦画面の切替、相関ゲーム、磁力計姿勢の補正）、振動識別相関機能（例えば、歩数計、クリック）等に用いられる。端末７００において、回転儀、バロメーター、アトモメーター、温度計、赤外線センサー等の他のセンサーが設けられても良く、ここでは説明を省略する。
【０２４６】
オーディオ回路１６０、スピーカー１６１、マイクロフォン１６２をユーザーと端末７００との間のオーディオインターフェースとすることができる。オーディオ回路１６０は、受信されたオーディオデータを電気信号に転換し、スピーカー１６１に送信し、スピーカー１６１は音声信号に転換して出力する。一方、マイクロフォン１６２は、収集された音声信号を電気信号に転換し、オーディオ回路１６０によって受信してからオーディオデータに転換し、オーディオデータをプロセッサ１８０に出力して処理し、ＲＦ回路１１０を介して例えば他の端末に送信し、又はオーディオデータをメモリ１２０に出力して処理する。オーディオ回路１６０は、ヘッドフォンジャックをさらに含んでも良く、外部ヘッドフォンと端末７００との通信を提供する。
【０２４７】
ＷｉＦｉは近距離無線通信技術であり、端末７００は、ＷｉＦｉモジュール１７０を通じて、ユーザーの電子メール送受信、サイトの閲覧、ストリーミングのアクセスを行い、ユーザーに無線広帯域のネットワークへのアクセスを提供する。図７にＷｉＦｉモジュール１７０を示すが、これが端末７００の必要な構成でなく、発明の本質を変更しない範囲に省略しても良いことを理解すべきである。
【０２４８】
プロセッサ１８０は、端末７００のコントロールセンターであり、各種のインターフェースと線路を使用して端末整体の各部分を接続し、メモリ１２０内に記憶されるソフトウェアプログラム及び／又はモジュールを動作又は実行し、メモリ１２０内に記憶されたデータを呼び出し、端末７００の各機能と処理データを実行することで、端末整体を監視して制御する。オプションで、プロセッサ１８０は１つ以上の処理コアを含む。好ましくは、プロセッサ１８０にはアプリケーションプロセッサと変復調プロセッサが集積される。ここで、アプリケーションプロセッサは、主に、オペレーティングシステム、ユーザインタフェース、プログラム等を実行する。変復調プロセッサは、主に無線通信を行う。上記変復調プロセッサがプロセッサ１８０に集積されなくても良いことを理解すべきである。
【０２４９】
端末７００は、各部品に給電するための電源１９０（例えばバッテリである）をさらに含む。好ましくは、電源は、電源管理システムでプロセッサ１８０と論理的に接続することで、電源管理システムで充電、放電、消費電力の管理などの機能を実現する。電源１９０は、１つ以上の直流又は交流電源、再充電システム、電源故障検出回路、電源転換器又はインバーター、電源状態指示器等をさらに含む。
【０２５０】
例示していないが、端末７００は、カメラ、ブルートゥース（登録商標）モジュール等を含んでもよく、ここでは説明を省略する。本実施例において、端末の表示ユニットがタッチセンシティブディスプレイである。端末は、メモリ、１つ以上のプログラムを含み、ここで、メモリに１つ以上のプログラムが含まれ、１つ以上のプロセッサでプログラムを実行する。前記１つ以上のプログラムは、以下の操作を実行するための命令を含む。すなわち、
【０２５１】
訓練すべきＣＮＮモデルの初期モデルパラメータを取得することと、
複数の訓練画像を取得することと、
各レベルのコンボリューションレイヤー上で、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれに行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理し、各訓練画像のタイプ確率ベクトルを得ることと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することと、
タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整することと、
調整されたモデルパラメータと複数の訓練画像に基づいて、反復回数が予め設定された回数に達するまで、モデルパラメータの調整を続けることと、
反復回数が予め設定された回数に達する場合に得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとすることとを実行するための命令を含み、
ここで、初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【０２５２】
上記操作が第１の可能な実施形態である場合、第１の可能な実施形態に基づいて構成された第２の可能な実施形態において、端末のメモリは以下の操作を実行するための命令をさらに含む。すなわち、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する第１画像として処理することと、
第１画像を指定幅を有する第２画像として処理し、前記指定高度と前記指定幅を有する画像を初期訓練画像に対応する訓練画像とすることとを実行するための命令を含む。
【０２５３】
第１の可能な実施形態に基づいて構成する第３の可能な実施形態において、端末のメモリは以下の操作を実行するための命令をさらに含む。すなわち、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する画像として処理し、指定高度に対応する幅を初期訓練画像の幅とすることとを実行するための命令を含む。
【０２５４】
第２の可能な実施形態に基づいて構成された第４の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令を含む。すなわち、第１画像を指定幅を有する第２画像として処理することは、
第１画像の幅が指定幅より小さい場合、第１画像の左右両端に指定階調値の画素を使用して均一に充填して、第１画像の幅が指定幅に達するときに、第２画像を得ることと、
第１画像の幅が指定幅より大きい場合、第１画像の左右両端の画素を均一にクロッピングして、第１画像の幅が指定幅に達するときに、第２画像を得ることとを実行するための命令を含む。
【０２５５】
第１の可能な実施形態に基づいて構成された第５の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含む。すなわち、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることは、
任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行い、現在のコンボリューションレイヤーでのコンボリューション画像を得、ここで、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像が訓練画像であることと、
現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行って訓練画像の現在のコンボリューションレイヤーの第１特徴画像を得た後、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し、次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うこととを実行するための命令を含む。
【０２５６】
第１の可能な実施形態に基づいて構成された第６の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含む。すなわち、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
任意の１つの訓練画像のいずれのレベルのコンボリューションレイヤーでの第１特徴画像について、コンボリューションレイヤーでの第１特徴画像の各画像の各行の要素のうちの最大値を抽出し、ここで、第１特徴画像は予め設定された数の画像を含み、予め設定された数はコンボリューションレイヤーのコンボリューションカーネルの数及びバイアス行列の数と同じであることと、
各画像の画素配列に従って、各画像のすべての行から抽出された最大値を１つの1次元ベクトルに配列することと、
コンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せ、コンボリューションレイヤーの第２特徴画像を得ることとを実行するための命令を含む。
【０２５７】
第６の可能な実施形態に基づいて構成された第７の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含む。すなわち、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、各レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像のすべての行の要素をエンドツーエンドして、訓練画像の特徴ベクトルを得ることを実行するための命令を含む。
【０２５８】
第１の可能な実施形態に基づいて構成された第８の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含む。すなわち、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することは、
各訓練画像の初期タイプを取得することと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算し、
【数１４２】
0006257848.tif 000143
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、
【数１４３】
0006257848.tif 000144
は初期タイプ対応するタイプ確率を示すことと、
すべての訓練画像のタイプ誤差の平均値を計算し、タイプ誤差の平均値をタイプ誤差とすることとを実行するための命令を含む。
【０２５９】
第１〜第８のいずれか一つの可能な実施形態に基づいて構成された第９の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含む。すなわち、訓練画像は自然のシーンの画像であり、自然のシーンの画像は異なる言語の文字を含み、訓練すべきＣＮＮモデルは言語認識分類器である。
【０２６０】
第１〜第８のいずれか一つの可能な実施形態に基づいて構成された第１０の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含む。すなわち、訓練すべきＣＮＮモデルは４つレベルのコンボリューションレイヤーと２つの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは同じ又は異なる数のコンボリューションカーネルとバイアス行列を含み、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることを含み、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像に応じて、訓練画像の特徴ベクトルを決定することを含む。
【０２６１】
本発明の実施例における端末によれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０２６２】
本発明の実施例はコンピュータ読み取り可能な記憶媒体を提供する。当該コンピュータ読み取り可能な記憶媒体は、上記実施例におけるメモリに含まれているコンピュータ読み取り可能な記憶媒体であっても良いし、独立的に存在する、端末にセットされないコンピュータ読み取り可能な記憶媒体であっても良い。当該コンピュータ読み取り可能な記憶媒体には１つ以上のプログラムが記憶され、１つ以上のプロセッサは、当該１つ以上のプログラムによってＣＮＮモデルの訓練方法を実行するように構成され、当該方法は、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得することと、
複数の訓練画像を取得することと、
各レベルのコンボリューションレイヤー上で、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理し、各訓練画像のタイプ確率ベクトルを得ることと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することと、
タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整することと、
反復回数が予め設定された回数に達するまで、調整されたモデルパラメータと複数の訓練画像に基づいてモデルパラメータの調整を続けることと、
反復回数が予め設定された回数に達するときに得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとすることとを含み、
ここで、初期モデルパラメータが各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【０２６３】
上記方法が第１の可能な実施形態である場合、第１の可能な実施形態に基づいて構成された第２の可能な実施形態において、端末のメモリは以下の操作を実行するための命令をさらに含み、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する第１画像として処理することと、
第１画像を指定幅を有する第２画像として処理し、指定高度と指定幅を有する画像を初期訓練画像に対する訓練画像とすることとを含む。
【０２６４】
第１の可能な実施形態に基づいて構成された第３の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する画像として処理し、指定高度に対応する幅を初期訓練画像の幅とすることとを含む。
【０２６５】
第２の可能な実施形態に基づいて構成された第４の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、第１画像を指定幅を有する第２画像として処理することは、
第１画像の幅が指定幅より小さい場合、第１画像の左右両端に指定階調値の画素を使用して均一に充填して、第１画像の幅が指定幅に達するときに、第２画像を得ることと、
第１画像の幅が指定幅より大きい場合、第１画像の左右両端の画素を均一にクロッピングして、第１画像の幅が指定幅に達するときに、第２画像を得ることとを含む。
【０２６６】
第１の可能な実施形態に基づいて構成された第５の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることは、
任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行い、現在のコンボリューションレイヤーでのコンボリューション画像を得、ここで、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、１つ前のレベルのコンボリューションレイヤーの第１特徴画像が訓練画像であることと、
現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行って訓練画像の現在のコンボリューションレイヤーでの第１特徴画像を得た後、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し、次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うこととを含む。
【０２６７】
第１の可能な実施形態に基づいて構成された第６の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
任意の１つの訓練画像の任意のレベルのコンボリューションレイヤーでの第１特徴画像について、コンボリューションレイヤーでの第１特徴画像の各画像の各行の要素のうちの最大値を抽出し、ここで、第１特徴画像は予め設定された数の画像を含み、予め設定された数はコンボリューションレイヤーのコンボリューションカーネルの数及びバイアス行列の数と同じであることと、
各画像の画素配列に従って、各画像のすべての行から抽出された最大値を１つの1次元ベクトルに配列することと、
コンボリューションレイヤーでの第１特徴画像のすべての画像の1次元ベクトルを組合せ、コンボリューションレイヤーでの第２特徴画像を得ることとを含む。
【０２６８】
第６の可能な実施形態に基づいて構成された第７の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、訓練画像の各レベルのコンボリューションレイヤーでの第２特徴画像のすべての行の要素をエンドツーエンドして、訓練画像の特徴ベクトルを得ることを含む。
【０２６９】
第１の可能な実施形態に基づいて構成された第８の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することは、
各訓練画像の初期タイプを取得することと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算し、
【数１４４】
0006257848.tif 000145
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、
【数１４５】
0006257848.tif 000146
は初期タイプ対応するタイプ確率を示すことと、
すべての訓練画像のタイプ誤差の平均値を計算し、タイプ誤差の平均値をタイプ誤差とすることとを含む。
【０２７０】
第１〜第８のいずれか一つの可能な実施形態に基づいて構成された第９の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、訓練画像は自然のシーンの画像であり、自然のシーンの画像は異なる言語の文字を含み、訓練すべきＣＮＮモデルは言語認識分類器である。
【０２７１】
第１〜第８のいずれか一つの可能な実施形態に基づいて構成された第１０の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、訓練すべきＣＮＮモデルは４つレベルのコンボリューションレイヤーと２つの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは同じ又は異なる数のコンボリューションカーネルとバイアス行列を含み、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
第２レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像に対して水平プーリング操作をそれぞれ行い、第２レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることを含み、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、第２レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第３レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像、第４レベルのコンボリューションレイヤーでの訓練画像の第２特徴画像に応じて、訓練画像の特徴ベクトルを決定することを含む。
【０２７２】
本発明の実施例におけるコンピュータ読み取り可能な記憶媒体によれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０２７３】
本発明の実施例はグラフィカルユーザインタフェースを提供する。当該グラフィカルユーザインタフェースは端末上に用いられる。当該端末は、タッチセンシティブディスプレイ、メモリ、及び１つ以上のプログラムを実行するための１つ以上のプロセッサを含む。
【０２７４】
当該グラフィカルユーザインタフェースは、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得することと、
複数の訓練画像を取得することと、
各レベルのコンボリューションレイヤー上で、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理し、各訓練画像のタイプ確率ベクトルを得ることと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することと、
タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整することと、
反復回数が予め設定された回数に達するまで、調整されたモデルパラメータと複数の訓練画像に基づいてモデルパラメータの調整を続けることと、
反復回数が予め設定された回数に達する場合に得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとすることとを含み、
ここで、初期モデルパラメータは、各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【０２７５】
上記操作が第１の可能な実施形態である場合、第１の可能な実施形態に基づいて構成された第２の可能な実施形態において、端末のメモリは以下の操作を実行するための命令をさらに含み、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
各初期訓練画像のアスペクト比を保持し、各初期訓練画像を指定高度と指定幅を有する画像として処理し、複数の訓練画像を得ることとを含む。
【０２７６】
第１の可能な実施形態に基づいて構成された第３の可能な実施形態において、端末のメモリは、以下の操作を実行するための命令をさらに含み、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
各初期訓練画像のアスペクト比を保持し、各初期訓練画像を指定高度を有する画像として処理し、指定高度に対応する幅を各初期訓練画像の幅とし、複数の訓練画像を得ることとを含む。
【０２７７】
本発明の実施例におけるグラフィカルユーザインタフェースによれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０２７８】
上記の図１、図２又は図５いずれか一つの図に対応する実施例におけるＣＮＮモデルの訓練方法は、１つのサーバーによって実行されることができる。図８は１つの例示的な実施例でサーバーの構造構成を示す図である。当該サーバーは、上記の図１、図２又は図５いずれか一つの図面に対応するＣＮＮモデルの訓練方法を実行することができる。図８を参照すると、サーバー８００は、１つ以上のプロセッサが含まれている処理部品８２２、メモリ８３２であるメモリ部品を含み、メモリ８３２には、メモリに処理部品８２２で実行可能な命令、例えばアプリケーションプログラムが記憶される。メモリ８３２に記憶されているアプリケーションプログラムは、１セット命令に対応する１つ以上のモジュールを含む。なお、処理部品８２２は、命令を実行して、上記の図１、図２又は図５いずれか一つの図面に対応する実施例におけるＣＮＮモデルの訓練方法を実行するように構成される。
【０２７９】
サーバー８００は、サーバー８００の電源管理を実行するように構成される１つの電源部品８２６、サーバー８００をネットワークに接続するように構成される１つの有線又は無線のネットワークインターフェース８５０、及び１つの入力出力（Ｉ／Ｏ）インターフェース８５８をさらに含む。サーバー８００は、メモリ８３２に記憶されているオペレーティングシステム、例えばＷｉｎｄｏｗｓ  ＳｅｒｖｅｒＴＭ、Ｍａｃ  ＯＳ  ＸＴＭ、ＵｎｉｘＴＭ、ＬｉｎｕｘＴＭ、ＦｒｅｅＢＳＤＴＭ等を動作させることができる。
【０２８０】
ここで、１つ以上のプログラムは、メモリに記憶され、１つ以上のプロセッサによって実行される。前記１つ以上のプログラムは、以下の操作を実行するための命令を含む。すなわち、
訓練すべきＣＮＮモデルの初期モデルパラメータを取得することと、
複数の訓練画像を取得することと、
各レベルのコンボリューションレイヤー上で、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作をそれぞれ行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることと、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることと、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することと、
初期重み行列と初期バイアスベクトルに応じて、各特徴ベクトルを処理し、各訓練画像のタイプ確率ベクトルを得ることと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することと、
タイプ誤差に基づいて、訓練すべきＣＮＮモデルのモデルパラメータを調整することと、
反復回数が予め設定された回数に達するまで、調整されたモデルパラメータと複数の訓練画像に基づいてモデルパラメータの調整を続けることと、
反復回数が予め設定された回数に達する場合に得たモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとすることとを実行するための命令を含み、
ここで、初期モデルパラメータは各レベルのコンボリューションレイヤーの初期コンボリューションカーネル、各レベルのコンボリューションレイヤーの初期バイアス行列、完全接続レイヤーの初期重み行列、及び完全接続レイヤーの初期バイアスベクトルを含む。
【０２８１】
上記操作が第１の可能な実施形態である場合、第１の可能な実施形態に基づいて構成された第２の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令を更に含み、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する第１画像として処理することと、
第１画像を指定幅を有する第２画像として処理し、前記指定高度と前記指定幅を有する画像を初期訓練画像に対応する訓練画像をとすることとを含む。
【０２８２】
第１の可能な実施形態に基づいて構成された第３の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令を更に含み、複数の訓練画像を取得することは、
複数の初期訓練画像を取得することと、
任意の１つの初期訓練画像について、初期訓練画像のアスペクト比を保持し、初期訓練画像を指定高度を有する画像として処理し、指定高度に対応する幅を初期訓練画像の幅とすることとを含む。
【０２８３】
第２の可能な実施形態に基づいて構成された第４の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令を更に含み、第１画像を指定幅を有する第２画像として処理することは、
第１画像の幅が指定幅より小さい場合、第１画像の左右両端に指定階調値の画素を使用して均一に充填して、第１画像の幅が指定幅に達するときに、第２画像を得ることと、
第１画像の幅が指定幅より大きい場合、第１画像の左右両端の画素を均一にクロッピングして、第１画像の幅が指定幅に達するときに、第２画像を得ることとを含む。
【０２８４】
第１の可能な実施形態に基づいて構成された第５の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令を更に含み、各レベルのコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、各訓練画像に対してコンボリューション操作と最大プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第１特徴画像を得ることは、
任意の１つの訓練画像について、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像を現在のコンボリューションレイヤーに入力し、現在のコンボリューションレイヤーにおける初期コンボリューションカーネルと初期バイアス行列を使用して、１つ前のレベルのコンボリューションレイヤーでの第１特徴画像に対してコンボリューション操作を行い、現在のコンボリューションレイヤーでのコンボリューション画像を得、ここで、現在のコンボリューションレイヤーが第１レベルのコンボリューションレイヤーである場合、１つ前のレベルのコンボリューションレイヤーの第１特徴画像が訓練画像であることと、
現在のコンボリューションレイヤーでのコンボリューション画像に対して最大プーリング操作を行って訓練画像の現在のコンボリューションレイヤーでの第１特徴画像を得た後、最後のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行って最後のレベルのコンボリューションレイヤーでの第１特徴画像を得るまで、現在のコンボリューションレイヤーでの第１特徴画像を次のレベルのコンボリューションレイヤーに伝送し、次のレベルのコンボリューションレイヤーでコンボリューション操作と最大プーリング操作を行うこととを含む。
【０２８５】
第１の可能な実施形態に基づいて構成された第６の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令をさらに含み、各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
任意の１つの訓練画像のいずれのレベルのコンボリューションレイヤーの第１特徴画像について、コンボリューションレイヤーの第１特徴画像の各画像の各行の要素のうちの最大値を抽出し、ここで、第１特徴画像は予め設定された数の画像を含み、予め設定された数はコンボリューションレイヤーのコンボリューションカーネルの数及びバイアス行列の数と同じであることと、
各画像の画素配列に従って、各画像のすべての行から抽出された最大値を１つの1次元ベクトルに配列することと、
コンボリューションレイヤーの第１特徴画像のすべての画像の1次元ベクトルを組合せ、コンボリューションレイヤーの第２特徴画像を得ることとを含む。
【０２８６】
第６の可能な実施形態に基づいて構成された第７の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令をさらに含み、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、訓練画像の各レベルのコンボリューションレイヤーでの第２特徴画像のすべての行の要素をエンドツーエンドして、訓練画像の特徴ベクトルを得ることを含む。
【０２８７】
第１の可能な実施形態に基づいて構成された第８の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令をさらに含み、各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、タイプ誤差を計算することは、
各訓練画像の初期タイプを取得することと、
各訓練画像のタイプ確率ベクトル及び各訓練画像の初期タイプに応じて、以下の式に従って各訓練画像のタイプ誤差を計算し、
【数１４６】
0006257848.tif 000147
ここで、Lossは各訓練画像のタイプ誤差を示し、labelは各訓練画像の初期タイプを示し、yiは各訓練画像のタイプ確率ベクトルのいずれか要素を示し、
【数１４７】
0006257848.tif 000148
は初期タイプ対応するタイプ確率を示すことと、
すべての訓練画像のタイプ誤差の平均値を計算し、タイプ誤差の平均値をタイプ誤差とすることとを含む。
【０２８８】
第１〜第８のいずれか一つの可能な実施形態に基づいて構成された第９の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令を更に含み、訓練画像は自然のシーンの画像であり、自然のシーンの画像は異なる言語の文字を含み、訓練すべきＣＮＮモデルが言語認識分類器である。
【０２８９】
第１〜第８のいずれか一つの可能な実施形態に基づいて構成された第１０の可能な実施形態において、サーバーのメモリは、以下の操作を実行するための命令をさらに含み、訓練すべきＣＮＮモデルは４つレベルのコンボリューションレイヤーと２つの完全接続レイヤーを含み、各レベルのコンボリューションレイヤーは同じ又は異なる数のコンボリューションカーネルとバイアス行列を含み、
各訓練画像の少なくとも１つのレベルのコンボリューションレイヤーの第１特徴画像に対して水平プーリング操作を行い、各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像を得ることは、
各訓練画像の第２レベルのコンボリューションレイヤーでの第１特徴画像、各訓練画像の第３レベルのコンボリューションレイヤーでの第１特徴画像、各訓練画像の第４レベルのコンボリューションレイヤーでの第１特徴画像に対して水平プーリング操作をそれぞれ行い、各訓練画像の第２レベルのコンボリューションレイヤーでの第２特徴画像、各訓練画像の第３レベルのコンボリューションレイヤーでの第２特徴画像、各訓練画像の第４レベルのコンボリューションレイヤーでの第２特徴画像を得ることを含み、
各レベルのコンボリューションレイヤーでの各訓練画像の第２特徴画像に応じて、各訓練画像の特徴ベクトルを決定することは、
任意の１つの訓練画像について、訓練画像の第２レベルのコンボリューションレイヤーでの第２特徴画像、訓練画像の第３レベルのコンボリューションレイヤーでの第２特徴画像、訓練画像の第４レベルのコンボリューションレイヤーでの第２特徴画像に応じて、訓練画像の特徴ベクトルを決定することを含む。
【０２９０】
本発明の実施例におけるサーバーによれば、各レベルのコンボリューションレイヤーで訓練画像に対してコンボリューション操作と最大プーリング操作を行った後、さらに、最大プーリング操作で得られた特徴画像に対して水平プーリング操作を行う。水平プーリング操作を行って、特徴画像から特徴画像の水平方向特徴を識別する特徴画像をさらに抽出することができるため、訓練されたＣＮＮモデルは、画像タイプを識別する際に、識別すべき画像の水平方向サイズの表示に限定されず、任意のサイズの識別すべき画像を識別することができ、当該方式により訓練されたＣＮＮモデルについて、画像を識別するための応用範囲は相対的に広くなる。
【０２９１】
なお、上記実施例において、ＣＮＮモデルの訓練装置がＣＮＮモデルを訓練する場合、上記各機能モジュールの分割を例として説明した。実際の応用において、要求に応じて上記機能を異なる機能モジュールで実行しても良い。装置の内部構成を異なる機能モジュールに分け、上記の全部または一部の機能を実行する。また、上記実施例において、ＣＮＮモデルの訓練装置、端末、およびサーバーは、ＣＮＮモデルの訓練方法と同一の概念に属し、実施プロセスについて、方法の実施例を参照してよく、ここでは説明を省略する。
【０２９２】
当業者は、ハードウェアで上記実施例の全部又は一部のプロセスを実現しても良いし、プログラムによって関連ハードウェアを指示して実現しても良い。前記プログラムが１つのコンピュータ読み取り可能な記憶媒体に記憶されてもよく、上記記憶媒体は、読み出し専用のメモリ、光ディスク等であっても良い。
【０２９３】
以上は、本発明の好適な実施例に過ぎず、本発明を限定するものではない。本発明の趣旨及び原則を逸脱することなく実施されたあらゆる改修、均等的置換、改良等は、本発明の保護範囲に含まれる。
【符号の説明】
【０２９４】
１１０  ＲＦ回路
１２０  メモリ
１３０  入力ユニット
１３１  タッチセンシティブ表面
１３２  及び他の入力装置
１３２  他の入力装置
１４０  表示ユニット
１４１  表示パネル
１５０  センサー
１６０  オーディオ回路
１６１  スピーカー
１６２  マイクロフォン
１７０  ＷｉＦｉモジュール
１８０  プロセッサ
１９０  電源
６０１  取得モジュール
６０２  取得モジュール
６０３  特徴抽出モジュール
６０４  水平プーリングモジュール
６０５  決定モジュール
６０６  処理モジュール
６０７  計算モジュール
６０８  調整モジュール
６０９  反復モジュール
６１０  決定モジュール
７００  端末
８００  サーバー
８２２  処理部品
８２６  電源部品
８３２  メモリ
８５０  ネットワークインターフェース
８５８  入力出力インターフェース
【要約】
本発明は画像識別分野に関し、ＣＮＮモデルの訓練方法及び装置を開示する。前記方法は、訓練画像に対してコンボリューション操作、最大プーリング操作及び水平プーリング操作をそれぞれ行って第２特徴画像を得ることと、第２特徴画像に応じて特徴ベクトルを決定することと、特徴ベクトルを処理してタイプ確率ベクトルを得ることと、タイプ確率ベクトル及び初期タイプに応じてタイプ誤差を計算することと、タイプ誤差に応じてモデルパラメータを調整することと、調整されたモデルパラメータに基づいて、モデルパラメータ調整のプロセスを継続し、反復回数が予め設定された回数に達する時のモデルパラメータを訓練されたＣＮＮモデルのモデルパラメータとすることとを含む。各レベルのコンボリューションレイヤー上で訓練画像に対してコンボリューション操作と最大プーリング操作を行ってから水平プーリング操作を行う。【図１】
0006257848.tif 000151
【図２】
0006257848.tif 000152
【図３】
0006257848.tif 000153
【図４】
0006257848.tif 000154
【図５】
0006257848.tif 000155
【図６】
0006257848.tif 000156
【図７】
0006257848.tif 000157
【図８】
0006257848.tif 000158