JP6749530B1 - 構造変換装置、構造変換方法及び構造変換プログラム - Google Patents

構造変換装置、構造変換方法及び構造変換プログラム Download PDF

Info

Publication number
JP6749530B1
JP6749530B1 JP2020533169A JP2020533169A JP6749530B1 JP 6749530 B1 JP6749530 B1 JP 6749530B1 JP 2020533169 A JP2020533169 A JP 2020533169A JP 2020533169 A JP2020533169 A JP 2020533169A JP 6749530 B1 JP6749530 B1 JP 6749530B1
Authority
JP
Japan
Prior art keywords
neural network
evaluation value
processing time
structure conversion
unit
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.)
Active
Application number
JP2020533169A
Other languages
English (en)
Other versions
JPWO2021156941A1 (ja
Inventor
駿介 立見
駿介 立見
山本 亮
亮 山本
秀知 岩河
秀知 岩河
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6749530B1 publication Critical patent/JP6749530B1/ja
Publication of JPWO2021156941A1 publication Critical patent/JPWO2021156941A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

処理時間計算部(221)は、ニューラルネットワークが実装される演算器の性能情報(32)に基づき、ニューラルネットワークを演算器に実装した場合におけるニューラルネットワークの処理にかかる処理時間を計算する。達成判定部(23)は、計算された処理時間が要求時間よりも長いか否かを判定する。構造変換部(225)は、処理時間が要求時間よりも長いと判定された場合に、ニューラルネットワークの構造を変換し、処理時間が要求時間以下と判定された場合に、ニューラルネットワークの構造を変換しない。

Description

本開示は、ニューラルネットワークの構造を変換する技術に関する。
ニューラルネットワークの処理速度を向上させるために、ニューラルネットワークの構造を変換することが行われている。
特許文献1には、処理速度向上目標に基づきパラメータについての全層合計の列次元削減量を決定し、入力層に近い層ほど削減量が少なくなるように各層の列次元削減量を決定することが記載されている。また、特許文献2には、ネットワークのパラメータをランダムに削減して再学習し、認識精度から決まるコストが削減前から改善したときに削減後のネットワークに変換することが記載されている。
特開2018−109947号公報 特開2015−11510号公報
特許文献1及び特許文献2に記載された技術では、ニューラルネットワークの実装先の演算器の性能を考慮せずにパラメータを削減する。そのため、変換後のニューラルネットワークを演算器に実装した際に要求性能を達成できない可能性がある。また、要求性能を達成しているにも関わらずパラメータを削減してしまい、認識精度が低くなりすぎてしまう可能性がある。
本開示は、ニューラルネットワークの認識精度を必要以上に低下させずに、要求性能を達成できるようすることを目的とする。
本開示に係る構造変換装置は、
ニューラルネットワークが実装される演算器の性能情報に基づき、前記ニューラルネットワークを前記演算器に実装した場合における前記ニューラルネットワークの処理にかかる処理時間を計算する処理時間計算部と、
前記処理時間計算部によって計算された前記処理時間が要求時間よりも長いか否かを判定する達成判定部と、
前記達成判定部によって前記処理時間が前記要求時間よりも長いと判定された場合に、前記ニューラルネットワークの構造を変換し、前記達成判定部によって前記処理時間が前記要求時間以下と判定された場合に、前記ニューラルネットワークの構造を変換しない構造変換部と
を備える。
本開示では、ニューラルネットワークを演算器に実装した場合における処理時間を計算し、処理時間が要求時間よりも長い場合にニューラルネットワークの構造を変換する。これにより、必要以上にニューラルネットワークの構造を変換することがない。その結果、ニューラルネットワークの認識精度を必要以上に低下させずに、要求性能を達成できるようになる。
実施の形態1に係る構造変換装置10のハードウェア構成図。 実施の形態1に係る構造変換装置10の機能構成図。 実施の形態1に係る構造変換装置10の全体的な動作を示すフローチャート。 実施の形態1に係る評価値の計算処理のフローチャート。
実施の形態1.
***構成の説明***
図1を参照して、実施の形態1に係る構造変換装置10のハードウェア構成の一例を説明する。
構造変換装置10は、ニューラルネットワークの構造を変換するコンピュータである。
構造変換装置10は、プロセッサ11と、記憶装置12と、学習用演算器13とのハードウェアを備える。プロセッサ11は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
プロセッサ11は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ11は、具体例としては、CPU(Central Processing Unit)である。
記憶装置12は、データを記憶する装置である。記憶装置12は、具体例としては、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)である。
また、記憶装置12は、SD(登録商標,Secure Digital)メモリカード、CF(CompactFlash,登録商標)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disk)といった可搬記録媒体であってもよい。
学習用演算器13は、ニューラルネットワークの学習処理を高速に行うためのICである。学習用演算器13は、具体例としては、GPU(Graphics Processing Unit)である。
図2を参照して、実施の形態1に係る構造変換装置10の機能構成を説明する。
構造変換装置10は、機能構成要素として、情報取得部21と、解析部22と、達成判定部23と、再学習部24と、情報出力部25とを備える。解析部22は、処理時間計算部221と、削減率計算部222と、短縮効率計算部223と、評価値計算部224と、構造変換部225とを備える。構造変換装置10の各機能構成要素の機能はソフトウェアにより実現される。
記憶装置12には、構造変換装置10の各機能構成要素の機能を実現するプログラムが格納されている。情報取得部21と解析部22と達成判定部23と情報出力部25とを実現するプログラムは、プロセッサ11により読み込まれ、実行される。また、再学習部24を実現するプログラムは、学習用演算器13により読み込まれ、実行される。これにより、構造変換装置10の各機能構成要素の機能が実現される。
構造変換装置10は、構造情報31と、性能情報32と、要求情報33と、学習用データセット34とを入力として、構造情報31を変換した新しい構造情報35を出力する。
***動作の説明***
図3及び図4を参照して、実施の形態1に係る構造変換装置10の動作を説明する。
実施の形態1に係る構造変換装置10の動作手順は、実施の形態1に係る構造変換方法に相当する。また、実施の形態1に係る構造変換装置10の動作を実現するプログラムは、実施の形態1に係る構造変換プログラムに相当する。
図3を参照して、実施の形態1に係る構造変換装置10の全体的な動作を説明する。
構造変換装置10は、図3に示す処理を実行することにより、ニューラルネットワークの構造を変換して、新しいニューラルネットワークを生成する。
(ステップS11:情報取得処理)
情報取得部21は、構造情報31と、性能情報32と、要求情報33とを取得する。
具体的には、構造変換装置10の使用者等によって設定された構造情報31と性能情報32と要求情報33とを記憶装置12から読み出す。
構造情報31は、ニューラルネットワークにおける変換部分を決定するために必要となる情報である。構造情報31は、ニューラルネットワークの構造を示す情報である。具体的には、構造情報31は、ニューラルネットワークを構成する複数の層それぞれにおける、層の種類と、重み情報と、ニューロンと、特徴マップと、フィルタのサイズといった推論処理の内容を明らかにするために必要な情報である。層の種類とは、全結合層及び畳み込み層等である。
性能情報32及び要求情報33は、ニューラルネットワークを演算器に実装した際に、要求性能を達成できるか判定するために必要な情報である。性能情報32は、ニューラルネットワークが実装される演算器(以下、実装先演算器と呼ぶ)の演算性能及びバス帯域といった処理時間の見積りに必要な情報である。要求情報33は、ニューラルネットワークの実行時に満たす必要がある処理時間を示す情報である。要求情報33が示す処理時間を要求時間と呼ぶ。
(ステップS12:第1処理時間計算処理)
解析部22の処理時間計算部221は、構造情報31及び性能情報32を参照して、ニューラルネットワークを実装先演算器に実装した場合におけるニューラルネットワークの認識処理にかかる処理時間を計算する。
処理時間の計算方法について詳しくは後述する。
(ステップS13:第1達成判定処理)
達成判定部23は、ニューラルネットワークの性能が要求を満たすか否かを判定する。具体的には、達成判定部23は、ステップS12で計算された処理時間が要求情報33が示す要求時間よりも長いか否かを判定する。
達成判定部23は、処理時間が要求時間よりも長い場合には、処理をステップS14に進める。一方、達成判定部23は、処理時間が要求時間以下の場合には、処理をステップS19に進める。
(ステップS14:評価値計算処理)
解析部22の評価値計算部224は、ニューラルネットワークを構成する複数の層それぞれを対象の層として、対象の層におけるパラメータの削減優先度を表す評価値を計算する。パラメータは、1層分のニューラルネットワークの構造を決定する特徴である。具体例としては、全結合層であれば、パラメータはニューロンであり、畳み込み層であれば、パラメータはチャネルである。
評価値の計算方法について詳しくは後述する。
(ステップS15:構造変換処理)
解析部22の構造変換部225は、ステップS14で計算された評価値が最も高い層を削減層として特定する。つまり、構造変換部225は、最も削減優先度が高い層を削減層として特定する。
そして、構造変換部225は、削減層における削減数のパラメータを削減する。削減数は、1以上の整数である。実施の形態1では、削減数を1個とする。構造変換部225は、パラメータを削減することにより、ニューラルネットワークの構造を変換して新しいニューラルネットワークを生成する。なお、削減するパラメータは、既存技術を用いて選択されればよい。
(ステップS16:第2処理時間計算処理)
解析部22の処理時間計算部221は、構造情報31及び性能情報32を参照して、ステップS15で生成された新しいニューラルネットワークを実装先演算器に実装した場合におけるニューラルネットワークの認識処理にかかる処理時間を計算する。
処理時間の計算方法について詳しくは後述する。
(ステップS17:第2達成判定処理)
達成判定部23は、新しいニューラルネットワークの性能が要求を満たすか否かを判定する。具体的には、達成判定部23は、ステップS16で計算された処理時間が要求情報33が示す要求時間よりも長いか否かを判定する。
達成判定部23は、処理時間が要求時間よりも長い場合には、処理をステップS14に戻す。一方、達成判定部23は、処理時間が要求時間以下の場合には、処理をステップS18に進める。
処理がステップS14に戻されると、ステップS14では、直近のステップS15の処理で生成された新しいニューラルネットワークを構成する各層の評価値が計算される。そして、ステップS15では、さらに新しいニューラルネットワークが生成される。
つまり、ステップS14からステップS18の処理が繰り返し実行されることにより、ニューラルネットワークの性能が要求を満たすまでニューラルネットワークの構造が少しずつ変更される。つまり、ニューラルネットワークの処理時間が要求時間以下になるまでニューラルネットワークの構造が少しずつ変更される。
(ステップS18:再学習処理)
再学習部24は、学習用データセット34を入力として、直近のステップS15の処理で生成された新しいニューラルネットワークに対する再学習を行う。これにより、新しいニューラルネットワークの認識精度を高くする。
そして、再学習部24は、再学習後のニューラルネットワークについての構造を示す新しい構造情報35を生成する。新しい構造情報35は、構造情報31と同様に、ニューラルネットワークを構成する複数の層それぞれにおける、層の種類と、重み情報と、ニューロンと、特徴マップと、フィルタのサイズといった推論処理の内容を明らかにするために必要な情報である。
(ステップS19:出力処理)
情報出力部25は、ステップS13で処理時間が要求時間よりも長いと判定された場合には、ステップS18で生成された新しい構造情報35を出力する。一方、情報出力部25は、ステップS13で処理時間が要求時間以下と判定された場合には、ステップS11で取得された構造情報31を出力する。
ステップS12及びステップS16での処理時間の計算方法を説明する。
処理時間計算部221は、式1に示すように、ニューラルネットワークを構成する各層の処理にかかる処理時間を合計することにより、ニューラルネットワーク全体の処理時間を計算する。
(式1)
処理時間=Σ(1層分の処理時間)
処理時間計算部221は、式2に示すように、ニューラルネットワークを構成する複数の層それぞれを対象の層として、対象の層の演算量を、実装先演算器の演算性能で除すことによって、対象の層の処理時間を計算する。
(式2)
1層分の処理時間=(1層分の演算量)/(実装先演算器の演算性能)
対象の層の演算量は、構造情報31が示すニューラルネットワークの構造から特定される。実装先演算器の演算性能は、性能情報32が示す情報であり、実装先演算器の仕様又は実測値から特定される。
なお、処理時間の計算方法はここで説明した方法に限らない。例えば、処理時間計算部221は、シミュレーションを行い処理時間を計算してもよい。
図4を参照して、ステップS14での評価値の計算方法を説明する。
(ステップS141:削減率計算処理)
削減率計算部222は、対象の層についての当初パラメータ削減率と現パラメータ削減率とを計算する。当初パラメータ削減率は、当初のニューラルネットワークの対象の層におけるパラメータ数に対するパラメータの削減数yの割合である。現パラメータ削減率は、現在のニューラルネットワークの対象の層におけるパラメータ数に対するパラメータの削減数yの割合である。当初のニューラルネットワークとは、ステップS11で取得された構造情報31が示すニューラルネットワークである。現在のニューラルネットワークとは、既にステップS15で新しいニューラルネットワークが生成されている場合には、ステップS15で生成された最新のニューラルネットワークである。まだステップS15で新しいニューラルネットワークが生成されていない場合には、現在のニューラルネットワークは、当初のニューラルネットワークと同じである。
具体的には、削減率計算部222は、式3により、対象の層Lについての当初パラメータ削減率Δαx1と現パラメータ削減率Δαx2とを計算する。ここで、yは、削減数である。Nは、当初のニューラルネットワークの層Lにおけるパラメータ数である。nは、現在のニューラルネットワークの層Lにおけるパラメータ数である。
(式3)
Δαx1=1−(n−y)/N
Δαx2=1−(n−y)/n=y/n
上述した通り、実施の形態1では、削減数yは1個である。したがって、実施の形態1では、削減率計算部222は、式4により、対象の層Lについての当初パラメータ削減率Δαx1と現パラメータ削減率Δαx2とを計算する。
(式4)
Δαx1=1−(n−1)/N
Δαx2=1−(n−1)/n=1/n
(ステップS142:短縮効率計算処理)
短縮効率計算部223は、対象の層についての短縮効率を計算する。短縮効率は、現パラメータ削減率Δαx2に対する、削減数yのパラメータを削減した場合における処理時間の短縮量の割合である。
具体的には、短縮効率計算部223は、式5により、対象の層Lについての短縮効率Δpを計算する。ここで、dは、y個のパラメータを削減した場合における処理時間の短縮量である。
(式5)
Δp=d/(y/n
上述した通り、実施の形態1では、削減数yは1個である。したがって、実施の形態1では、短縮効率計算部223は、式6により、対象の層Lについての短縮効率Δpを計算する。
(式6)
Δp=d/(1/n
処理時間は、演算量に比例すると考えられる。そのため、現パラメータ削減率Δαx2に対する、削減数yのパラメータを削減した場合における演算量の減少量である演算効率Δp’を式7のように表すことが可能である。ここで、qは、実装先演算器の演算性能である。
(式7)
Δp’=Δp×q
また、演算効率Δp’は、現パラメータ削減率Δαx2に対する、削減数yのパラメータを削減した場合における演算量の減少量であるため、式8のように表すことも可能である。ここで、eは、y個のパラメータを削減した場合における演算量の減少量である。
(式8)
Δp’=e/(1/n
したがって、削減数yが1個の場合には、演算効率Δp’は、式9のように表される。
(式9)
Δp’=e/(1/n
ここで、1個のパラメータを削減した場合における演算効率Δp’は、層Lのパラメータを1個削減した場合の層Lの演算削減量と、層Lのパラメータを1個削減した場合の層Lx+1の演算削減量との和を、パラメータを1個削減した場合の層Lの現パラメータ削減率Δαx2で除して計算される。したがって、1個のパラメータを削減した場合における演算効率Δp’は、式10によって計算される。
(式10)
Δp’=(−nx−1−nx+1)/(1/n
したがって、短縮効率計算部223は、式11により、対象の層Lについての短縮効率Δpを計算できる。
(式11)
Δp=Δp’/q=((−nx−1−nx+1)/(1/n))/q
(ステップS143:重み付け処理)
評価値計算部224は、ステップS141で計算された当初パラメータ削減率Δαx1から重み付け関数gにより得られる重みを、ステップS142で計算された短縮効率Δpに乗じて、評価値を計算する。つまり、評価値計算部224は、式12により、対象の層Lについての評価値sを計算する。
(式12)
=Δp×g(Δαx1
具体的には、評価値計算部224は、重み付け関数gを用いて、当初パラメータ削減率Δαx1から重みwを計算する。重み付け関数gは、具体例としては、1から入力値を減算した値を返す関数である。例えば、重み付け関数gは式13に示す関数である。ここで、zは入力値である。
(式13)
g(z)=(1−z)・q
式13で演算性能qを乗じているのは、演算性能qは定数であり、評価値の大小に影響を与えないため、後述する評価値sの計算時に演算性能qが用いないようにするためである。
以上のことから、評価値計算部224は、式14により、対象の層Lについての評価値sを計算する。
(式14)
=(((−nx−1−nx+1)/(1/n))/q)×(1−(1−(n−1)/N))・q=((−nx−1−nx+1)/(1/n))×(1−(1−(n−1)/N))
***実施の形態1の効果***
以上のように、実施の形態1に係る構造変換装置10は、ニューラルネットワークを実装先演算器に実装した場合における処理時間を計算し、処理時間が要求時間よりも長い場合にニューラルネットワークの構造を変換する。これにより、必要以上にニューラルネットワークの構造を変換することがない。その結果、ニューラルネットワークの認識精度をできるだけ低下させることなく、要求性能を達成できるようになる。
また、実施の形態1に係る構造変換装置10は、短縮効率を用いて、パラメータを削減する層を特定する。
これにより、要求性能を達成するために必要なパラメータの削減数を少なくすることができる。その結果、構造を変換した後のニューラルネットワークの認識精度の低下を少なくすることができる。また、パラメータ数が少ない層は、短縮効率が低くなり易いため、パラメータを削除する層として選ばれ難い。その結果、一部の層のパラメータが多く削除されてしまい、構造を変換した後のニューラルネットワークの認識精度が低下してしまうといったことを防止できる。
また、実施の形態1に係る構造変換装置10は、当初パラメータ削減率を用いて、パラメータを削減する層を特定する。
これにより、パラメータ数が少ない層は、パラメータを削除する層として選ばれ難い。その結果、一部の層のパラメータが多く削除されてしまい、構造を変換した後のニューラルネットワークの認識精度が低下してしまうといったことを防止できる。
例えば、特許文献1では、ニューラルネットワークの構造を考慮せずに、入力層に近い層ほど削減量が少なくなるようにパラメータ削減量を決める。そのため、出力層に近い隠れ層のパラメータ数が少ない場合、元々のパラメータ数が少ない層から多数のパラメータを削減してしまい、認識精度が大きく低下する可能性があった。しかし、実施の形態1に係る構造変換装置10は、元々のパラメータ数が少ない層から多数のパラメータを削減してしまうことがない。
***他の構成***
<変形例1>
実施の形態1では、削減数は1個であるとした。これは、1つパラメータを削除する度に要求性能を達成できたか確認するためである。これにより、不要に多くのパラメータが削除されることを防止している。
しかし、一度に2個以上のパラメータを削除するようにしてもよい。一度に2個以上のパラメータを削除することにより、要求性能を達成する構成に到達するまでの時間を短くすることができる。
<変形例2>
実施の形態1では、要求性能を達成した構成のニューラルネットワークについて図3のステップS18で再学習が行われた。しかし、多くのパラメータが削除される等して、ニューラルネットワークの構成が大きく変換された場合には、途中段階で再学習を行うようにしてもよい。
例えば、基準回数だけニューラルネットワークの構成が変換された場合には、再学習を行うようにしてもよい。
<変形例3>
実施の形態1では、各機能構成要素がソフトウェアで実現された。しかし、変形例3として、各機能構成要素はハードウェアで実現されてもよい。この変形例3について、実施の形態1と異なる点を説明する。
変形例3に係る構造変換装置10の構成を説明する。
各機能構成要素がハードウェアで実現される場合には、構造変換装置10は、プロセッサ11と記憶装置12と学習用演算器13とに代えて、電子回路を備える。電子回路は、各機能構成要素と、記憶装置12との機能とを実現する専用の回路である。
電子回路としては、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field−Programmable Gate Array)が想定される。
各機能構成要素を1つの電子回路で実現してもよいし、各機能構成要素を複数の電子回路に分散させて実現してもよい。
<変形例4>
変形例4として、一部の各機能構成要素がハードウェアで実現され、他の各機能構成要素がソフトウェアで実現されてもよい。
プロセッサ11と記憶装置12と学習用演算器13と電子回路とを処理回路という。つまり、各機能構成要素の機能は、処理回路により実現される。
10 構造変換装置、11 プロセッサ、12 記憶装置、13 学習用演算器、21 情報取得部、22 解析部、221 処理時間計算部、222 削減率計算部、223 短縮効率計算部、224 評価値計算部、225 構造変換部、31 構造情報、32 性能情報、33 要求情報、34 学習用データセット、35 新しい構造情報。

Claims (8)

  1. ニューラルネットワークが実装される演算器の性能情報に基づき、前記ニューラルネットワークを前記演算器に実装した場合における前記ニューラルネットワークの処理にかかる処理時間を計算する処理時間計算部と、
    前記処理時間計算部によって計算された前記処理時間が要求時間よりも長いか否かを判定する達成判定部と、
    前記ニューラルネットワークを構成する複数の層それぞれを対象の層として、前記対象の層におけるパラメータの削減優先度を表す評価値を計算する評価値計算部と、
    前記達成判定部によって前記処理時間が前記要求時間よりも長いと判定された場合に、前記評価値計算部によって計算された前記評価値が高い層のパラメータを削減することにより、前記ニューラルネットワークの構造を変換して新しいニューラルネットワークを生成し、前記達成判定部によって前記処理時間が前記要求時間以下と判定された場合に、前記ニューラルネットワークの構造を変換しない構造変換部と
    を備え
    前記評価値計算部は、当初のニューラルネットワークと前記構造変換部によって変換される前の現ニューラルネットワークとのそれぞれに対する、パラメータ数の削減率と、パラメータ削減時の処理時間の短縮量との少なくともいずれかに基づいて前記評価値を計算する構造変換装置。
  2. 前記処理時間計算部は、前記構造変換部によって生成された前記新しいニューラルネットワークの処理時間を計算し、
    前記評価値計算部は、前記新しいニューラルネットワークの前記処理時間が前記要求時間よりも長いと判定された場合に、前記ニューラルネットワークを構成する複数の層それぞれを対象の層として、前記評価値を計算し、
    前記構造変換部は、前記ニューラルネットワークを構成する複数の層それぞれを対象の層として計算された前記評価値が高い層のパラメータを削減して、前記ニューラルネットワークの構造を変換する
    請求項1に記載の構造変換装置。
  3. 前記評価値計算部は、当初のニューラルネットワークの前記対象の層におけるパラメー
    タ数に対するパラメータの削減数の割合である当初パラメータ削減率から、前記評価値を計算する
    請求項1又は2に記載の構造変換装置。
  4. 前記評価値計算部は、削減数のパラメータを削減した場合における処理時間の短縮量から、前記評価値を計算する
    請求項1から3までのいずれか1項に記載の構造変換装置。
  5. 前記評価値計算部は、現在のニューラルネットワークの前記対象の層におけるパラメータ数に対するパラメータの削減数の割合である現パラメータ削減率に対する、前記削減数のパラメータを削減した場合における処理時間の短縮量の割合である短縮効率から、前記評価値を計算する
    請求項1から3までのいずれか1項に記載の構造変換装置。
  6. 前記評価値計算部は、当初のニューラルネットワークの前記対象の層におけるパラメータ数に対するパラメータの削減数の割合である当初パラメータ削減率から得られた重みを、前記短縮効率に乗じて、前記評価値を計算する
    請求項5に記載の構造変換装置。
  7. 処理時間計算部が、ニューラルネットワークが実装される演算器の性能情報に基づき、前記ニューラルネットワークを前記演算器に実装した場合における前記ニューラルネットワークの処理にかかる処理時間を計算し、
    達成判定部が、前記処理時間が要求時間よりも長いか否かを判定し、
    評価値計算部が、前記ニューラルネットワークを構成する複数の層それぞれを対象の層として、前記対象の層におけるパラメータの削減優先度を表す評価値を計算し、
    構造変換部が、前記処理時間が前記要求時間よりも長いと判定された場合に、前記評価値が高い層のパラメータを削減することにより、前記ニューラルネットワークの構造を変換して新しいニューラルネットワークを生成し、前記処理時間が前記要求時間以下と判定された場合に、前記ニューラルネットワークの構造を変換せず、
    前記評価値計算部は、当初のニューラルネットワークと前記構造変換部によって変換される前の現ニューラルネットワークとのそれぞれに対する、パラメータ数の削減率と、パラメータ削減時の処理時間の短縮量との少なくともいずれかに基づいて前記評価値を計算する構造変換方法。
  8. ニューラルネットワークが実装される演算器の性能情報に基づき、前記ニューラルネットワークを前記演算器に実装した場合における前記ニューラルネットワークの処理にかかる処理時間を計算する処理時間計算処理と、
    前記処理時間計算処理によって計算された前記処理時間が要求時間よりも長いか否かを判定する達成判定処理と、
    前記ニューラルネットワークを構成する複数の層それぞれを対象の層として、前記対象の層におけるパラメータの削減優先度を表す評価値を計算する評価値計算処理と、
    前記達成判定処理によって前記処理時間が前記要求時間よりも長いと判定された場合に、前記評価値計算処理によって計算された前記評価値が高い層のパラメータを削減することにより、前記ニューラルネットワークの構造を変換して新しいニューラルネットワークを生成し、前記達成判定処理によって前記処理時間が前記要求時間以下と判定された場合に、前記ニューラルネットワークの構造を変換しない構造変換処理と
    を行う構造変換装置としてコンピュータを機能させ、
    前記評価値計算処理では、当初のニューラルネットワークと前記構造変換処理によって変換される前の現ニューラルネットワークとのそれぞれに対する、パラメータ数の削減率と、パラメータ削減時の処理時間の短縮量との少なくともいずれかに基づいて前記評価値
    を計算する構造変換プログラム。
JP2020533169A 2020-02-04 2020-02-04 構造変換装置、構造変換方法及び構造変換プログラム Active JP6749530B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/004151 WO2021156941A1 (ja) 2020-02-04 2020-02-04 構造変換装置、構造変換方法及び構造変換プログラム

Publications (2)

Publication Number Publication Date
JP6749530B1 true JP6749530B1 (ja) 2020-09-02
JPWO2021156941A1 JPWO2021156941A1 (ja) 2021-08-12

Family

ID=72240842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020533169A Active JP6749530B1 (ja) 2020-02-04 2020-02-04 構造変換装置、構造変換方法及び構造変換プログラム

Country Status (4)

Country Link
US (1) US20220309351A1 (ja)
JP (1) JP6749530B1 (ja)
TW (1) TW202131237A (ja)
WO (1) WO2021156941A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018109947A (ja) * 2016-12-30 2018-07-12 富士通株式会社 ニューラルネットワークの処理速度を向上させるための装置及び方法、並びにその応用
US20180341851A1 (en) * 2017-05-24 2018-11-29 International Business Machines Corporation Tuning of a machine learning system
US20190005377A1 (en) * 2017-06-30 2019-01-03 Advanced Micro Devices, Inc. Artificial neural network reduction to reduce inference computation time
JP2019032729A (ja) * 2017-08-09 2019-02-28 富士通株式会社 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム
JP2019185275A (ja) * 2018-04-05 2019-10-24 日本電信電話株式会社 学習装置、学習方法および学習プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018109947A (ja) * 2016-12-30 2018-07-12 富士通株式会社 ニューラルネットワークの処理速度を向上させるための装置及び方法、並びにその応用
US20180341851A1 (en) * 2017-05-24 2018-11-29 International Business Machines Corporation Tuning of a machine learning system
US20190005377A1 (en) * 2017-06-30 2019-01-03 Advanced Micro Devices, Inc. Artificial neural network reduction to reduce inference computation time
JP2019032729A (ja) * 2017-08-09 2019-02-28 富士通株式会社 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム
JP2019185275A (ja) * 2018-04-05 2019-10-24 日本電信電話株式会社 学習装置、学習方法および学習プログラム

Also Published As

Publication number Publication date
JPWO2021156941A1 (ja) 2021-08-12
US20220309351A1 (en) 2022-09-29
WO2021156941A1 (ja) 2021-08-12
TW202131237A (zh) 2021-08-16

Similar Documents

Publication Publication Date Title
CN111652368B (zh) 一种数据处理方法及相关产品
TW201915839A (zh) 對人工神經網路及浮點神經網路進行量化的方法及裝置
JP6965690B2 (ja) ニューラルネットワークの処理速度を向上させるための装置及び方法、並びにその応用
CN113609815B (zh) 一种电路仿真优化方法、装置、计算机设备及存储介质
TWI796286B (zh) 一種機器學習系統的訓練方法和訓練系統
JP2019028829A (ja) 並列処理装置、並列処理方法、及びプログラム
CN104598659B (zh) 对数字电路进行仿真的方法和设备
US12086711B2 (en) Data dividing method and processor for convolution operation
CN112085175B (zh) 基于神经网络计算的数据处理方法和装置
CN112561050B (zh) 一种神经网络模型训练方法及装置
CN118410849A (zh) 确定量化截断值的方法、设备和介质
CN110337636A (zh) 数据转换方法和装置
CN114819159A (zh) 深度学习模型的推理方法、装置、设备及存储介质
JP6749530B1 (ja) 構造変換装置、構造変換方法及び構造変換プログラム
TW202001701A (zh) 影像的量化方法及神經網路的訓練方法
EP3751565B1 (en) Parameter determination device, method, program and recording medium
CN111798263A (zh) 一种交易趋势的预测方法和装置
US20230161555A1 (en) System and method performing floating-point operations
CN112236749B (zh) 一种浮点精度检测方法与装置
JP7539959B2 (ja) 深層学習ネットワーク用の最適化方法及びコンピュータ装置、及びコンピュータ可読記憶媒体
CN114492649B (zh) 深度学习模型的模型训练方法、装置、设备及存储介质
JP2022164392A (ja) 推移予測装置、推移予測方法、および、推移予測プログラム
WO2020059074A1 (ja) データ構造、情報処理装置、方法及びプログラム
CN117634566A (zh) 一种模型的量化感知训练方法及装置
CN118211617A (zh) 一种数据量化方法、装置、电子设备及可读存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200616

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200616

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200616

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200702

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200714

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200811

R150 Certificate of patent or registration of utility model

Ref document number: 6749530

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250