JP2019032729A - 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム - Google Patents
演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム Download PDFInfo
- Publication number
- JP2019032729A JP2019032729A JP2017153948A JP2017153948A JP2019032729A JP 2019032729 A JP2019032729 A JP 2019032729A JP 2017153948 A JP2017153948 A JP 2017153948A JP 2017153948 A JP2017153948 A JP 2017153948A JP 2019032729 A JP2019032729 A JP 2019032729A
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- information
- input data
- neural network
- amount
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
【解決手段】ニューラルネットワークを構成する1以上の層の配置を示す情報と、1以上の層のそれぞれにおいて用いられるパラメータ値と、ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得し、取得した配置を示す情報と、パラメータ値と、入力データのサイズとに基づいて、入力データの入力に応じてニューラルネットワークにおいて行われる演算の演算量を算出し、算出した演算量と、取得した処理性能とに基づいて、所定のコンピュータにおいて演算が行われる場合の演算時間を算出する。
【選択図】図5
Description
図1は、情報処理システム10の全体構成を示す図である。図1に示す情報処理システム10は、1台以上の物理マシンから構成される情報処理装置1と、記憶装置2と、操作端末3とを含む。図1に示す操作端末3は、操作端末3a、3b及び3cが含まれている。
次に、情報処理装置1のハードウエア構成について説明する。図2は、情報処理装置1のハードウエア構成を説明する図である。
次に、情報処理装置1のソフトウエア構成について説明する。図3は、情報処理装置1の機能のブロック図である。図4は、情報格納領域130に記憶された情報のブロック図である。
次に、第1の実施の形態の概略について説明する。図5は、第1の実施の形態の概略について説明するフローチャートである。また、図6は、第1の実施の形態の概略を説明する図である。図6を参照しながら、図5に示す第1の実施の形態の概略について説明を行う。
次に、第1の実施の形態の詳細について説明する。図7から図10は、第1の実施の形態における演算時間算出処理の詳細を説明するフローチャートである。また、図11から図16は、第1の実施の形態の詳細を説明する図である。図11から図16を参照しながら、図7から図10に示す第1の実施の形態の詳細について説明を行う。
初めに、入力データを学習させるニューラルネットワークの具体例について説明を行う。図11は、ニューラルネットワークの具体例について説明する図である。なお、図11は、ニューラルネットワークにおいて入力データの認識が行われる場合を説明する図である。
次に、第1の実施の形態における演算時間算出処理の詳細のフローチャートについて説明を行う。図7から図10は、第1の実施の形態における演算時間算出処理の詳細を説明するフローチャートである。
初めに、演算時間算出処理のうち、入力データの演算を行うために必要な情報を情報格納領域130に記憶する処理(以下、情報記憶処理)について説明を行う。図7は、情報記憶処理を説明するフローチャートである。
初めに、ネットワーク情報131の具体例について説明を行う。図12は、ネットワーク情報131の具体例を説明する図である。
次に、パラメータ情報132の具体例について説明を行う。図13は、パラメータ情報132の具体例を説明する図である。
次に、バッチサイズ情報133の具体例について説明を行う。図14は、バッチサイズ情報133の具体例を説明する図である。
次に、入力サイズ情報134の具体例について説明を行う。図15は、入力サイズ情報134の具体例を説明する図である。
次に、演算時間算出処理の詳細について説明を行う。図8から図10は、演算時間算出処理の詳細を説明するフローチャートである。
例えば、S23の処理において特定された層がConvolution layerであって、S31の処理において特定された演算の種類が加算である場合、演算量算出部114は、S32の処理において、以下の式(1)及び(2)を用いて演算量の算出を行う。
図16は、演算量情報137の具体例を説明する図である。図16に示す演算量情報137は、演算量情報137に含まれる各情報を識別する「No」と、各層の識別情報が設定される「layer」と、加算を行う演算の演算量が設定される「add」と、乗算を行う演算の演算量が設定される「mul」と、比較を行う演算の演算量が設定される「cmp」とを項目として有する。
続いて、例えば、S23の処理において特定された層がConvolution layerであって、S31の処理において特定された演算の種類が乗算である場合、演算量算出部114は、S32の処理において、以下の式(3)を用いて演算量の算出を行う。
続いて、例えば、S23の処理において特定された層がPooling layerであって、S31の処理において特定された演算の種類が比較である場合、演算量算出部114は、S32の処理において、以下の式(4)を用いて演算量の算出を行う。なお、以下、Pooling layerにおいてMAXPoolingが行われるものとして説明を行う。
続いて、例えば、S23の処理において特定された層がFully−connect layerであって、S31の処理において特定された演算の種類が加算である場合、演算量算出部114は、S32の処理において、以下の式(5)を用いて演算量の算出を行う。
続いて、例えば、S23の処理において特定された層がFully−connect layerであって、S31の処理において特定された演算の種類が乗算である場合、演算量算出部114は、S32の処理において、以下の式(6)を用いて演算量の算出を行う。
ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得し、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出し、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する、
ことを特徴とする演算時間算出方法。
付記1において、
前記取得する工程では、前記1以上の層ごとに、各層において行われる演算量の算出に用いられる式を取得し、
前記演算量を算出する工程では、
前記配置を示す情報を参照し、前記1以上の層ごとに、各層の直前に演算が行われる特定の層を特定し、
前記1以上の層ごとに、前記入力データのサイズまたは前記特定の層によって演算が行われた後の前記入力データのサイズと、各層に対応する前記パラメータとを、取得した前記式に代入することにより、前記1以上の層ごとの前記演算量を算出する、
ことを特徴とする演算時間算出方法。
付記2において、
前記1以上の層ごとの演算量を算出する工程では、前記1以上の層ごとであって演算の種類ごとに、前記演算量を算出する、
ことを特徴とする演算時間算出方法。
付記1において、
前記演算時間を算出する工程では、算出した前記演算量を前記処理性能で除算することにより、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間の算出を行う、
ことを特徴とする演算時間算出方法。
付記1において、
前記取得する工程では、前記演算を行う際に所定のライブラリを用いた場合における前記演算の実行効率を取得し、
前記演算時間を算出する工程では、前記演算量を前記処理性能で除算することにより算出した値を、取得した前記実行効率で除算することにより、前記演算時間の算出を行う、
ことを特徴とする演算時間算出方法。
付記1において、
前記入力データは、画像データである、
ことを特徴とする演算時間算出方法。
付記1において、
前記演算量を算出する工程では、前記ニューラルネットワークにおいて前記入力データの認識が行われる際の演算量の算出を行う、
ことを特徴とする演算時間算出方法。
付記1において、
前記演算量を算出する工程では、前記ニューラルネットワークに対する前記入力データの学習が行われる際の演算量の算出を行う、
ことを特徴とする演算時間算出方法。
ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得する情報取得部と、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出する演算量算出部と、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する演算時間算出部と、を有する、
ことを特徴とする演算時間算出装置。
付記9において、
前記情報取得部は、前記1以上の層ごとに、各層において行われる演算量の算出に用いられる式を取得し、
前記演算量算出部は、
前記配置を示す情報を参照し、前記1以上の層ごとに、各層の直前に演算が行われる特定の層を特定し、
前記1以上の層ごとに、前記入力データのサイズまたは前記特定の層によって演算が行われた後の前記入力データのサイズと、各層に対応する前記パラメータとを、取得した前記式に代入することにより、前記1以上の層ごとの前記演算量を算出する、
ことを特徴とする演算時間算出装置。
付記10において、
前記演算量算出部は、前記1以上の層ごとであって演算の種類ごとに、前記演算量を算出する、
ことを特徴とする演算時間算出装置。
ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得し、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出し、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する、
処理をコンピュータに実行させることを特徴とする演算時間算出プログラム。
付記12において、
前記取得する処理では、前記1以上の層ごとに、各層において行われる演算量の算出に用いられる式を取得し、
前記演算量を算出する処理では、
前記配置を示す情報を参照し、前記1以上の層ごとに、各層の直前に演算が行われる特定の層を特定し、
前記1以上の層ごとに、前記入力データのサイズまたは前記特定の層によって演算が行われた後の前記入力データのサイズと、各層に対応する前記パラメータとを、取得した前記式に代入することにより、前記1以上の層ごとの前記演算量を算出する、
ことを特徴とする演算時間算出プログラム。
付記12において、
前記1以上の層ごとの前記演算量を算出する処理では、前記1以上の層ごとであって演算の種類ごとに、前記演算量を算出する、
ことを特徴とする演算時間算出プログラム。
ニューラルネットワークを学習する複数の物理マシンを有し、
前記複数の物理マシンのうちの少なくとも1つは、
前記ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得する情報取得部と、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出する演算量算出部と、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する演算時間算出部と、を有する、
ことを特徴とする演算時間算出システム。
付記15において、
前記情報取得部は、前記1以上の層ごとに、各層において行われる演算量の算出に用いられる式を取得し、
前記演算量算出部は、
前記配置を示す情報を参照し、前記1以上の層ごとに、各層の直前に演算が行われる特定の層を特定し、
前記1以上の層ごとに、前記入力データのサイズまたは前記特定の層によって演算が行われた後の前記入力データのサイズと、各層に対応する前記パラメータとを、取得した前記式に代入することにより、前記1以上の層ごとの前記演算量を算出する、
ことを特徴とする演算時間算出システム。
付記15において、
前記演算量算出部は、
前記1以上の層ごとであって演算の種類ごとに、前記演算量を算出する、
ことを特徴とする演算時間算出システム。
3:操作端末 101:CPU
102:メモリ 103:I/Oユニット
104:記憶媒体 130:情報格納領域
Claims (10)
- ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得し、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出し、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する、
ことを特徴とする演算時間算出方法。 - 請求項1において、
前記取得する工程では、前記1以上の層ごとに、各層において行われる演算量の算出に用いられる式を取得し、
前記演算量を算出する工程では、
前記配置を示す情報を参照し、前記1以上の層ごとに、各層の直前に演算が行われる特定の層を特定し、
前記1以上の層ごとに、前記入力データのサイズまたは前記特定の層によって演算が行われた後の前記入力データのサイズと、各層に対応する前記パラメータとを、取得した前記式に代入することにより、前記1以上の層ごとの前記演算量を算出する、
ことを特徴とする演算時間算出方法。 - 請求項2において、
前記1以上の層ごとの演算量を算出する工程では、前記1以上の層ごとであって演算の種類ごとに、前記演算量を算出する、
ことを特徴とする演算時間算出方法。 - 請求項1において、
前記演算時間を算出する工程では、算出した前記演算量を前記処理性能で除算することにより、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間の算出を行う、
ことを特徴とする演算時間算出方法。 - 請求項1において、
前記取得する工程では、前記演算を行う際に所定のライブラリを用いた場合における前記演算の実行効率を取得し、
前記演算時間を算出する工程では、前記演算量を前記処理性能で除算することにより算出した値を、取得した前記実行効率で除算することにより、前記演算時間の算出を行う、
ことを特徴とする演算時間算出方法。 - 請求項1において、
前記演算量を算出する工程では、前記ニューラルネットワークにおいて前記入力データの認識が行われる際の演算量の算出を行う、
ことを特徴とする演算時間算出方法。 - 請求項1において、
前記演算量を算出する工程では、前記ニューラルネットワークに対する前記入力データの学習が行われる際の演算量の算出を行う、
ことを特徴とする演算時間算出方法。 - ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得する情報取得部と、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出する演算量算出部と、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する演算時間算出部と、を有する、
ことを特徴とする演算時間算出装置。 - ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得し、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出し、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する、
処理をコンピュータに実行させることを特徴とする演算時間算出プログラム。 - ニューラルネットワークを学習する複数の物理マシンを有し、
前記複数の物理マシンのうちの少なくとも1つは、
前記ニューラルネットワークを構成する1以上の層の配置を示す情報と、前記1以上の層のそれぞれにおいて用いられるパラメータ値と、前記ニューラルネットワークに対する入力データのサイズと、所定のコンピュータの処理性能とを取得する情報取得部と、
取得した前記配置を示す情報と、前記パラメータ値と、前記入力データのサイズとに基づいて、前記入力データの入力に応じて前記ニューラルネットワークにおいて行われる演算の演算量を算出する演算量算出部と、
算出した前記演算量と、取得した前記処理性能とに基づいて、前記所定のコンピュータにおいて前記演算が行われる場合の演算時間を算出する演算時間算出部と、を有する、
ことを特徴とする演算時間算出システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017153948A JP2019032729A (ja) | 2017-08-09 | 2017-08-09 | 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017153948A JP2019032729A (ja) | 2017-08-09 | 2017-08-09 | 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019032729A true JP2019032729A (ja) | 2019-02-28 |
Family
ID=65524365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017153948A Pending JP2019032729A (ja) | 2017-08-09 | 2017-08-09 | 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019032729A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522837A (zh) * | 2020-04-23 | 2020-08-11 | 北京百度网讯科技有限公司 | 用于确定深度神经网络的耗时的方法和装置 |
JP6749530B1 (ja) * | 2020-02-04 | 2020-09-02 | 三菱電機株式会社 | 構造変換装置、構造変換方法及び構造変換プログラム |
KR102506622B1 (ko) * | 2022-04-01 | 2023-03-07 | 리벨리온 주식회사 | 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치 |
US11734577B2 (en) | 2019-06-05 | 2023-08-22 | Samsung Electronics Co., Ltd | Electronic apparatus and method of performing operations thereof |
-
2017
- 2017-08-09 JP JP2017153948A patent/JP2019032729A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11734577B2 (en) | 2019-06-05 | 2023-08-22 | Samsung Electronics Co., Ltd | Electronic apparatus and method of performing operations thereof |
JP6749530B1 (ja) * | 2020-02-04 | 2020-09-02 | 三菱電機株式会社 | 構造変換装置、構造変換方法及び構造変換プログラム |
WO2021156941A1 (ja) * | 2020-02-04 | 2021-08-12 | 三菱電機株式会社 | 構造変換装置、構造変換方法及び構造変換プログラム |
CN111522837A (zh) * | 2020-04-23 | 2020-08-11 | 北京百度网讯科技有限公司 | 用于确定深度神经网络的耗时的方法和装置 |
KR102506622B1 (ko) * | 2022-04-01 | 2023-03-07 | 리벨리온 주식회사 | 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2019032729A (ja) | 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム | |
US20170116530A1 (en) | Generating prediction models in accordance with any specific data sets | |
CN104364805A (zh) | 信息处理器、信息处理方法和程序 | |
JP6052278B2 (ja) | 動作判定装置、動作判定システムおよび動作判定方法 | |
JP6718500B2 (ja) | 生産システムにおける出力効率の最適化 | |
CN103885968B (zh) | 一种用于提供推荐信息的方法和装置 | |
CN104010029B (zh) | 基于横向纵向信息集成的分布式计算环境性能预测方法 | |
CN103077184A (zh) | 用于基于规则的情景获取的方法 | |
CN103646670B (zh) | 一种评估存储***性能的方法和设备 | |
CN109643087B (zh) | 用于选择用于设备操作安全的可控参数的***和方法 | |
CN103034866B (zh) | 一种目标识别方法、装置及*** | |
CN112910890B (zh) | 基于时间卷积网络的匿名网络流量指纹识别方法及设备 | |
JP2020027644A (ja) | モータ励起信号検索方法及び電子機器 | |
CN112131274B (zh) | 时间序列异常点的检测方法、装置、设备及可读存储介质 | |
CN109542093A (zh) | 一种处理数据的方法和装置 | |
CN114003306B (zh) | 一种显存优化方法、装置、设备及存储介质 | |
US20190275672A1 (en) | Information processing apparatus and information processing method | |
JP4997179B2 (ja) | 画像処理装置、方法およびプログラム | |
CN112948763B (zh) | 件量预测方法、装置、电子设备及存储介质 | |
CN113225435A (zh) | 预估电话接通概率的方法、装置和可读存储介质 | |
CN113361381A (zh) | 人体关键点检测模型训练方法、检测方法及装置 | |
CN109472349A (zh) | 神经网络级间激活值量化方法及装置 | |
US20200160888A1 (en) | System and method for generating a compression invariant motion timeline | |
JP2020038485A (ja) | 学習装置、判定装置、学習方法、判定方法、学習プログラムおよび判定プログラム | |
CN111242309A (zh) | 形成机器学习应用***的方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200514 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210518 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210707 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20210803 |