【手続補正書】
【提出日】令和3年10月4日(2021.10.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の階層を有するネットワークにおけるそれぞれの階層について、該階層の複数のデータと複数のフィルタ係数との積和演算を実行する複数の積和演算手段と、
前記複数の積和演算手段による複数の積和演算結果を複数のシフトパラメータに基づいてシフトする複数のシフト演算手段と、
前記複数のシフト演算手段によりシフトされた複数の積和演算結果の総和を計算する加算手段と、
前記階層のビット幅に応じて前記シフトパラメータの値を切り替える制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記階層のビット幅に応じてフィルタ係数の転送回数を切り替えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記シフト演算手段は複数のシフトパラメータに基づいて前記複数の積和演算結果をシフトすることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
複数の階層を有するネットワークにおけるそれぞれの階層について、該階層の複数のデータを複数のシフトパラメータに基づいてシフトする複数のシフト演算手段と、
前記複数のシフト演算手段によりシフトされた複数のデータと複数のフィルタ係数との積和演算を実行する複数の積和演算手段と、
前記複数の積和演算手段により計算された複数の積和演算結果の総和を計算する加算手段と、
前記階層のビット幅に応じて前記シフトパラメータの値を切り替える制御手段と
を備えることを特徴とする情報処理装置。
【請求項５】
前記複数の積和演算手段と前記複数のシフト演算手段とは並列に動作することを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記加算手段は、ある階層に対する前記総和を該階層の次の階層のデータとしてメモリに格納することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記加算手段は、ある階層に対する前記総和に対して活性化処理、プーリング処理を行った結果を、該階層の次の階層のデータとしてメモリに格納することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項８】
更に、
前記メモリに格納されたデータに基づいて、動画像における各フレームに対する画像処理および／または画像認識を行う手段を備えることを特徴とする請求項６または７に記載の情報処理装置。
【請求項９】
前記ネットワークは、階層ごとにデータのビット幅が異なることを特徴とする請求項１乃至８の何れか１項に記載の情報処理装置。
【請求項１０】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の複数の積和演算手段が、複数の階層を有するネットワークにおけるそれぞれの階層について、該階層の複数のデータと複数のフィルタ係数との積和演算を実行する工程と、
前記情報処理装置の複数のシフト演算手段が、前記複数の積和演算手段による複数の積和演算結果を複数のシフトパラメータに基づいてシフトする工程と、
前記情報処理装置の加算手段が、前記複数のシフト演算手段によりシフトされた複数の積和演算結果の総和を計算する工程と、
前記情報処理装置の制御手段が、前記階層のビット幅に応じて前記シフトパラメータの値を切り替える工程と
を備えることを特徴とする情報処理方法。
【請求項１１】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の複数のシフト演算手段が、複数の階層を有するネットワークにおけるそれぞれの階層について、該階層の複数のデータを複数のシフトパラメータに基づいてシフトする工程と、
前記情報処理装置の複数の積和演算手段が、前記複数のシフト演算手段によりシフトされた複数のデータと複数のフィルタ係数との積和演算を実行する工程と、
前記情報処理装置の加算手段が、前記複数の積和演算手段により計算された複数の積和演算結果の総和を計算する工程と、
前記情報処理装置の制御手段が、前記階層のビット幅に応じて前記シフトパラメータの値を切り替える工程と
を備えることを特徴とする情報処理方法。
【請求項１２】
コンピュータを、請求項１乃至９の何れか１項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
非特許文献２に記載の手法では、複数種類のビット幅の特徴データを処理可能なＳＩＭＤ（シングルインストラクションマルチプルデータ）構成のＲＮＮ（Ｒｅｃｕｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）専用ハードウェアが提案されている。同じハードウェアで８ビット、１６ビット、３２ビットのデータを処理可能であるが、並行して出力されたデータの総和を計算する際に、一旦メモリに保持してからもう一回ＳＩＭＤのコマンドを実行する必要があり、処理時間が長くなる。本発明では、複数の階層を有するネットワークの中に複数種類のビット幅の特徴データがあっても効率的な処理を実現するための技術を提供する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４４
【補正方法】変更
【補正の内容】
【００４４】
ステップＳ１１３では、制御部４０５は、出力特徴画像のループの終了判定をする。全ての出力特徴画像の処理が終わった場合にはステップＳ１１４に進み、未処理の出力特徴画像が残っている場合には、ステップＳ１０５に戻り、未処理の出力特徴画像について処理を開始する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００５３
【補正方法】変更
【補正の内容】
【００５３】
フィルタサイズが１×１よりも大きい場合、積和演算部４０２はフィルタ係数と入力特徴データとの畳み込み演算結果を計算するが、フィルタサイズが１×１の場合、積和演算部４０２はＩ（ｍ）とＣ（ｍ，ｎ）の積を計算する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
処理対象の特徴データはビット幅がαビットとビット幅がβビットの２種類であるとする。図４に示した積和演算部４０２は積和演算結果を計算するαビットのデータの積和演算ユニットがＰ個あり、シフト演算部４０３はシフト演算結果を計算するαビットのデータのシフト演算ユニットがＰ個ある。α、β、Ｐは以下の条件を満たしている。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００８９
【補正方法】変更
【補正の内容】
【００８９】
＜ビット幅が異なる場合の詳細説明＞
本実施形態では、シフト演算部７０１はシフト演算結果を計算するαビットのデータのシフト演算ユニットがＰ個あり、積和演算部７０２は積和演算結果を計算するαビットのデータの積和演算ユニットがＰ個ある。積和演算部７０２の出力は（式１５）で表され、（式５）に示したシフト演算部４０３の出力と等価である。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００９７
【補正方法】変更
【補正の内容】
【００９７】
Ｏ（ｎ）はｎ枚目の出力特徴画像の積和演算結果であり、Ｉ（α），ｐ（ｍ）はαビットのデータの積和演算ユニットの入力データであり、Ｃｐ（ｍ，ｎ）はフィルタ係数であり、Ｓ（ｐ）はシフトパラメータである。変数ｍはαビットの入力特徴画像グループ（１グループ＝Ｐ枚）の番号（積和演算部４０２の処理番号）である。積和演算ユニットとシフト演算ユニットはそれぞれＰ／Ｐ’セットに分かれており、変数ｑは積和演算ユニットのセットの番号である。変数ｐはセット内の積和演算ユニット、シフト演算ユニットの番号であり、変数ｎは出力特徴画像の番号である。シフト演算は２のべき乗の処理で表現される。