TOP
|
特許
|
意匠
|
商標
特許ウォッチ
Twitter
他の特許を見る
10個以上の画像は省略されています。
公開番号
2025173060
公報種別
公開特許公報(A)
公開日
2025-11-27
出願番号
2024078400
出願日
2024-05-14
発明の名称
ニューラルネットワーク処理装置及びニューラルネットワーク処理方法
出願人
株式会社日立製作所
代理人
弁理士法人サンネクスト国際特許事務所
主分類
G06N
3/0464 20230101AFI20251119BHJP(計算;計数)
要約
【課題】畳み込み処理を整数で実行するニューラルネットワーク処理装置において、演算器と演算器の外部に接続されたメモリとの間のデータ転送量を削減することで処理時間を短縮すること。
【解決手段】ニューラルネットワーク処理装置は、ニューラルネットワークにおける複数のレイヤの各々において、入力された整数と重みデータの間の積和演算を行う畳み込み処理を行い、畳み込み処理の出力としての整数を浮動小数点数に変換し、当該浮動小数点数を基に活性化関数処理を行い、活性化関数処理の出力としての浮動小数点数を整数に変換する整数化処理を行い、当該整数をメモリに書き込む。
【選択図】図9
特許請求の範囲
【請求項1】
インタフェース装置と、メモリと、前記インタフェース装置及び前記メモリに接続されたプロセッサとを備え、前記インタフェース装置を介して入力されたデータのニューラルネットワーク処理のソフトウェアを前記プロセッサが実行することで前記ニューラルネットワーク処理を行うニューラルネットワーク処理装置において、
前記ニューラルネットワーク処理は、ニューラルネットワークにおける複数のレイヤの各々において、
当該レイヤに入力された整数と重みデータの間の積和演算を行う畳み込み処理と、
前記畳み込み処理の出力としての整数を浮動小数点数に変換する浮動小数点化処理と、
前記浮動小数点化処理の出力としての浮動小数点数を用いて所定の関数を計算する活性化関数処理と、
前記活性化関数処理の出力としての浮動小数点数を整数に変換する整数化処理と、
前記整数化処理により得られた整数をメモリに書き込む書込み処理と
を含む、
ことを特徴とするニューラルネットワーク処理装置。
続きを表示(約 1,500 文字)
【請求項2】
前記複数のレイヤの各々について、当該レイヤでの処理結果として前記メモリに格納される整数は、処理結果のログとして前記メモリに蓄積される、
ことを特徴とする請求項1に記載のニューラルネットワーク処理装置。
【請求項3】
前記ニューラルネットワークは、前記複数のレイヤである複数の畳み込みレイヤの他に、一つ以上の加算レイヤを含み、
前記一つ以上の加算レイヤの各々は、前記複数の畳み込みレイヤのうちの一部のレイヤの出力を加算して前記複数の畳み込みレイヤのうちの1つに出力する処理のレイヤであり、
前記ニューラルネットワーク処理は、前記一つ以上の加算レイヤの各々において、
当該加算レイヤに入力された複数の整数をそれぞれ浮動小数点数に変換し、複数の浮動小数点数の加算を行った後、加算結果としての浮動小数点数を整数に変換し、変換された整数を前記メモリに書き込むこと、
を含む、
ことを特徴とする請求項1に記載のニューラルネットワーク処理装置。
【請求項4】
前記複数のレイヤの各々において、
前記ニューラルネットワーク処理は、前記浮動小数点化処理の出力にバイアス値を加算するバイアス加算処理を含み、
前記活性化関数処理における前記所定の関数は、前記バイアス加算処理の出力から計算される関数であり、
前記ニューラルネットワーク処理は、前記浮動小数点化処理に含まれる加算処理と前記バイアス加算処理を同時に行うことを含む、
ことを特徴とする請求項1に記載のニューラルネットワーク処理装置。
【請求項5】
前記複数のレイヤの各々において、
当該レイヤは、ループ処理を含み、
当該ループ処理は、前記畳み込み処理、前記浮動小数点化処理、前記活性化関数処理、及び、前記整数化処理を含み、
前記ニューラルネットワーク処理は、当該ループ処理の開始前に、バイアス値に浮動小数点化の係数を加算するバイアス値補正を行うことで、当該ループ処理において、前記浮動小数点化処理に含まれる加算処理と前記バイアス加算処理を同時に行うことを含む、
ことを特徴とする請求項4に記載のニューラルネットワーク処理装置。
【請求項6】
前記ソフトウェアは、前記複数のレイヤについての前記畳み込み処理のパラメータと前記活性化関数処理のパラメータとを含んだパラメータセットのリストの中から重複を除いたパラメータセットに基づき記述された第1のソフトウェアである、
ことを特徴とする請求項1に記載のニューラルネットワーク処理装置。
【請求項7】
前記ニューラルネットワークの学習処理と前記ニューラルネットワークの推論処理とのうち、前記推論処理のソフトウェアが、前記第1のソフトウェアである、
ことを特徴とする請求項6に記載のニューラルネットワーク処理装置。
【請求項8】
ニューラルネットワークにおける複数のレイヤの各々において、
当該レイヤに入力された整数と重みデータの間の積和演算を行う畳み込み処理と、
前記畳み込み処理の出力としての整数を浮動小数点数に変換する浮動小数点化処理と、
前記浮動小数点化処理の出力としての浮動小数点数を用いて所定の関数を計算する活性化関数処理と、
前記活性化関数処理の出力としての浮動小数点数を整数に変換する整数化処理と、
前記整数化処理により得られた整数をメモリに書き込む書込み処理と
をコンピュータにより行うことを特徴とするニューラルネットワーク処理方法。
発明の詳細な説明
【技術分野】
【0001】
本発明は、概して、ニューラルネットワークの処理に関する。
続きを表示(約 3,000 文字)
【背景技術】
【0002】
ニューラルネットワーク処理装置として、例えば、特許文献1及び特許文献2に記載された装置が知られている。
【先行技術文献】
【特許文献】
【0003】
特開2022-116266号公報
特開2023-159945号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本願発明者の検討によれば、ニューラルネットワーク処理装置の第1の比較例として、図1に記載の装置が考えられる。図1において、「I」は、整数化を意味し、「C」は、畳み込みを意味し、「F」は、FP化(=浮動小数点化)を意味する。このニューラルネットワーク処理装置は、浮動小数点型の入力データを取得し、浮動小数点型の入力データを量子化(整数化)して量子化された後の入力データを得て、量子化された後の入力データを演算ユニットに提供する。また、このニューラルネットワーク処理装置は、演算ユニットによって出力された演算結果に対して逆量子化(FP化)を行って逆量子化結果を得るための量子化ユニットを備える。演算ユニットが、量子化(整数化)された後の入力データに対して行列ベクトル操作及び/又は畳み込み演算を行って、入力データの演算結果を得る。この第1の比較例によれば、畳み込み演算を整数で行うことにより、浮動小数点数で畳み込みを行った場合に比べて高速に処理を行うことができる。
【0005】
本願発明者の検討によれば、ニューラルネットワーク処理装置の第2の比較例として、図2に記載の装置が考えられる。図2において、「R」は、メモリからの読出しを意味し、「C」は、畳み込みを意味し、「A」は、活性化関数処理を意味し、「W」は、メモリへの書込みを意味する。このニューラルネットワーク処理装置は、複数の入力データと複数の重みデータの間の積和演算を行って複数の中間データを生成する畳み込み処理と、複数の中間データを入力とする所定の関数の値を計算して複数の出力データを生成する活性化関数処理と、を含むニューラルネットワーク処理を実行する。このニューラルネットワーク処理装置は、活性化関数処理を、畳み込み処理のループ処理内で実行する。この第2の比較例によれば、畳み込みの処理結果をメモリに格納する必要がなくなるため、畳み込み処理と活性化関数処理を異なる関数で処理する場合に比べてメモリの読み書きに必要な処理時間を削減し高速に処理を行うことができる。
【0006】
本願発明者の検討によれば、上記第1の比較例と上記第2の比較例を組み合わせることで、より処理時間の短いニューラルネットワーク処理装置を構成できる可能性がある。その際、活性化関数の処理内容を考慮する必要がある。図3はmishという活性化関数の処理内容を示す。mishは指数関数(e
x
)を使用しているため、整数で畳み込み処理を行った場合、畳み込み処理の処理結果(整数)を用いて活性化関数を計算することができず、畳み込み処理の処理結果を浮動小数点数に変換してから活性化関数を計算する必要がある。従って、上記第1の比較例と上記第2の比較例を組み合わせるためには図4に示した処理内容とする必要がある。レイヤn-1、レイヤn、レイヤn+1の処理はそれぞれ、一つ前のレイヤの出力をメモリから読み出し、整数化処理、畳み込み、FP化(=浮動小数点化)、活性化関数処理を順次行って、結果をメモリに書き込む。ここで、メモリに格納されるデータ(レイヤn-1出力(FP)、レイヤn出力(FP))は浮動小数点数となる。ニューラルネットワークの処理において、畳み込み演算を整数で行うことにより浮動小数点数で畳み込みを行った場合に比べて畳み込み演算の処理時間を削減した場合、メモリの読み書きの処理時間の比率が相対的に大きくなる場合が多い。図4の処理内容の場合、メモリに格納されるデータは浮動小数点数であるため、メモリに読み書きされるデータのデータ量は第2の比較例と変わらず、この点で、第1の比較例と組み合わせたことによる高速化の効果は限定的である。
【0007】
本発明はこの問題に対応するため、メモリに格納されるデータのデータ量を削減することによりニューラルネットワーク処理装置の処理時間を削減することを目的とする。
【課題を解決するための手段】
【0008】
上記の目的を達成するため、ニューラルネットワーク処理装置は、ニューラルネットワークにおける複数のレイヤの各々において、入力された整数と重みデータの間の積和演算を行う畳み込み処理を行い、畳み込み処理の出力としての整数を浮動小数点数に変換する浮動小数点化処理を行い、浮動小数点化処理の出力から予め定められた関数を計算する活性化関数処理を行い、活性化関数処理の計算結果としての浮動小数点数を整数に変換する整数化処理を行い、整数化処理により得られた整数を出力としてメモリに書き込む。
【発明の効果】
【0009】
本発明によれば、メモリに格納されるデータが整数となりデータ量が削減されるため、ニューラルネットワーク処理装置の処理時間を削減することができる。
【図面の簡単な説明】
【0010】
第1の比較例の処理内容を示す図である。
第2の比較例の処理内容を示す図である。
mish活性化関数の処理内容を示す図である。
第1の比較例と第2の比較例を組み合わせた場合の処理内容を示す図である。
ニューラルネットワーク処理装置のハードウェア構成図である。
図5のニューラルネットワーク処理装置で実行するニューラルネットワーク処理の構成の第1の例を示す図である。
図6のニューラルネットワーク処理の1つのレイヤの処理の例を示す図である。
図7の整数化処理の処理内容を示す図である。
図7のソフトウェアを実行した時の処理の流れと、メモリとの間のデータのやり取りを示す図である。
図5のニューラルネットワーク処理装置で実行するニューラルネットワーク処理の構成の第2の例を示す図である。
図10のニューラルネットワーク処理の加算処理1003を実行するソフトウェアの実施例を示す図である。
図5のニューラルネットワーク処理装置で実行するニューラルネットワーク処理の構成の第3の例を示す図である。
図12のニューラルネットワーク処理の1つのレイヤを処理するソフトウェアの実施例を示す図である。
積和演算処理を行うソフトウェアのバリエーションと対応するパラメータの例を示す図である。
活性化関数処理を行うソフトウェアのバリエーションを示す図である。
図6のニューラルネットワーク処理の各レイヤに対する積和演算処理のパラメータと活性化関数処理の組み合わせの例を示す図である。
図16のパラメータと活性化関数の組み合わせの中から重複を除いたものを選択した結果を示す図である。
【発明を実施するための形態】
(【0011】以降は省略されています)
この特許をJ-PlatPat(特許庁公式サイト)で参照する
関連特許
株式会社日立製作所
鉄道車両
1か月前
株式会社日立製作所
回転電機
今日
株式会社日立製作所
演算装置
今日
株式会社日立製作所
放射線モニタ
1か月前
株式会社日立製作所
ガス分離システム
1か月前
株式会社日立製作所
電力変換システム
8日前
株式会社日立製作所
システム検証方法
23日前
株式会社日立製作所
調停案提示システム
1か月前
株式会社日立製作所
鉄道車両用空調装置
22日前
株式会社日立製作所
部品管理装置及び方法
1か月前
株式会社日立製作所
乗降床及び乗客コンベア
21日前
株式会社日立製作所
店舗管理装置および方法
23日前
株式会社日立製作所
生産ライン設計システム
16日前
株式会社日立製作所
施設管理装置および方法
8日前
株式会社日立製作所
検索システム及び検索方法
23日前
株式会社日立製作所
飲食店提案装置および方法
23日前
株式会社日立製作所
乗りかご及びエレベーター
23日前
株式会社日立製作所
乗りかご及びエレベーター
24日前
株式会社日立製作所
署名照合システム及び方法
29日前
株式会社日立製作所
データ変換装置および方法
1か月前
株式会社日立製作所
ソフトウェア生成システム
1か月前
株式会社日立製作所
膜分離設備設計支援システム
8日前
株式会社日立製作所
宇宙機、地上局及びアンテナ
8日前
株式会社日立製作所
情報処理装置、情報処理方法
1か月前
株式会社日立製作所
生体認証装置、生体認証方法
22日前
株式会社日立製作所
モータ、及びロータ固定構造
今日
株式会社日立製作所
検証システムおよび検証方法
今日
株式会社日立製作所
ソースコードを生成する方法
16日前
株式会社日立製作所
ソフトエラー率評価システム
9日前
株式会社日立製作所
IT運用管理装置および方法
1日前
株式会社日立製作所
設計支援装置及び設計支援方法
今日
株式会社日立製作所
スカートモール及び乗客コンベア
8日前
株式会社日立製作所
立体構造宇宙機及びその制御方法
21日前
株式会社日立製作所
蒸発乾固装置および蒸発乾固方法
1か月前
株式会社日立製作所
水素製造制御システムおよび方法
2日前
株式会社日立製作所
購入関連行動分析装置および方法
22日前
続きを見る
他の特許を見る