JP2010287062A - ニューラルネットワーク・シミュレーション演算方法 - Google Patents

ニューラルネットワーク・シミュレーション演算方法 Download PDF

Info

Publication number
JP2010287062A
JP2010287062A JP2009140498A JP2009140498A JP2010287062A JP 2010287062 A JP2010287062 A JP 2010287062A JP 2009140498 A JP2009140498 A JP 2009140498A JP 2009140498 A JP2009140498 A JP 2009140498A JP 2010287062 A JP2010287062 A JP 2010287062A
Authority
JP
Japan
Prior art keywords
slice
node
synapse
neural network
calculation
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
Application number
JP2009140498A
Other languages
English (en)
Inventor
Yoshihiko Imamura
義彦 今村
Koji Tsujino
広司 辻野
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2009140498A priority Critical patent/JP2010287062A/ja
Publication of JP2010287062A publication Critical patent/JP2010287062A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】ニューラルネットワークのシミュレーションを、並列演算システムによって行う場合に、システムの稼働率を向上させる。
【解決手段】ニューラルネットワークのシミュレーション演算は、少なくとも一つのニューロンの演算を含む、実行順序を決められたスライスに分割されており、n+1番目に実行されるスライスの演算は、n番目に実行されるスライスの演算結果を利用するように構成されており、ノードには、実行順序を決められたスライスが割り当てられており、ノードは、他のノードによるスライスの演算結果を受け取るように構成されている。ノードがn番目のスライスの演算を実行するステップと、n+1番目のスライスのシナプス部の先行演算を実行するステップと、他のノードのn番目のスライスの演算結果を受け取った後に、実行しなおす必要があると判断した部分についてのみ、n+1番目のシナプス部の演算を実行しなおすステップとを含む。
【選択図】図10

Description

本発明は、複数のニューロンが相互に接続されているニューラルネットワークのシミュレーションを、複数のノードが並列演算を行うように構成された並列演算システムによって行うニューラルネットワーク・シミュレーション演算方法に関する。
複数のノードが並列演算を行うように構成された並列演算システムによってシミュレーション演算を行う場合、あるノードの演算結果を他のノードで使用することが必要となる。そこで、所定のタイミングごとにノード間で同期をとり、ノード間の情報のやり取りが行われる。
複数のニューロンが相互に接続されているニューラルネットワークのシミュレーションを、並列演算システムによって行う場合には、あるニューロンの演算は、該ニューロンのシナプス部に接続されたニューロンの演算結果を利用する。したがって、あるニューロンの演算が、該ニューロンのシナプス部に接続されたニューロンの演算結果を利用することができるように、複数のニューロンのシミュレーション演算を並列演算システムの複数のノードに割り当てるとともに、所定のタイミングごとにノード間で同期をとり、ノード間の情報のやり取りが行われるように並列演算システムを構成する。
ここで、ノードが実行する演算の単位は、スライスと呼称される。スライスにおいて、ノードは他のノードから情報を受け取った後、独立して演算を実行し、演算の結果を他のノードへ送る。すなわち、スライスは、ノードによって実行されるシミュレーション演算とノード間の情報のやり取りから構成される。上述のように、ノード間の情報のやり取りはノード間で同期をとって行われる。したがって、各ノードによって実行されるスライスには、実行順序が定められ、各ノードは、実行順序ごとにノード間で同期をとりながらスライスを実行する。その場合に、あるノードは、nが実行順序を示す正の整数として、n番目のスライスのシミュレーション演算を終了した後、他のノードによるn番目のスライスのシミュレーション演算の結果を待つ場合が生じる。このように、スライス内には待ち時間が生じうる。このスライス内の待ち時間のために、並列演算システムの稼働率が大幅に低下する可能性がある。
一般的に、待ち時間を減少させシステムの稼働率を向上させるために、投機的処理を行うことが知られている(たとえば、特許文献1及び2)。
しかし、複数のニューロンが相互に接続されているニューラルネットワークのシミュレーションを並列演算システムによって行う場合に、該並列演算システムの稼働率を向上させる方法は開発されていない。
特開2000−47887号公報 特開2003−323304号公報
したがって、複数のニューロンが相互に接続されているニューラルネットワークのシミュレーションを、並列演算システムによって行う場合に、該並列演算システムの稼働率を向上させるニューラルネットワーク・シミュレーション演算方法に対するニーズがある。
本発明によるニューラルネットワーク・シミュレーション演算方法において、複数のニューロンが相互に接続されているニューラルネットワークのシミュレーションが、複数のノードが並列演算を行うように構成された並列演算システムによって実行される。ニューラルネットワークのシミュレーション演算は、ニューロンの演算からなり、該ニューロンの演算は該ニューロンのシナプス部に接続されたニューロンの演算の結果を利用するものである。ニューラルネットワークのシミュレーション演算は、少なくとも一つのニューロンの演算を含む、実行順序を決められたスライスに分割されており、nは正の整数として、n+1番目に実行されるスライスの演算は、n番目に実行されるスライスの演算結果を利用するように構成されており、ノードには、実行順序を決められたスライスが割り当てられており、ノードは、他のノードによるスライスの演算結果を受け取るように構成されている。該方法は、ノードがn番目のスライスの演算を実行するステップと、ノードが他のノードのn番目のスライスの演算結果を仮定してn+1番目のスライスのシナプス部の先行演算を実行するステップと、ノードが他のノードのn番目のスライスの演算結果を受け取った後に、該演算結果に基づいてn+1番目のスライスのシナプス部の演算を実行しなおす必要があるかどうかを判断し、実行しなおす必要があると判断した部分についてのみ、n+1番目のシナプス部の演算を実行しなおすスッテップとを含む。
本発明によれば、ノードが他のノードのn番目のスライスの演算結果を仮定してn+1番目のスライスのシナプス部の先行演算を実行するので、n+1番目のスライスにおけるシナプス部の演算時間が短縮される。
本発明の実施形態によるニューラルネットワーク・シミュレーション演算方法は、ノードが他のノードのn番目のスライスの演算結果を受け取る前に、他の全てのニューロンにおいて発火イベントは発生していないと仮定してn+1番目のスライスのシナプス部の演算を実行する。
本実施形態によれば、発火イベントが発生する確率が低いので、ノードが他のノードのn番目のスライスの演算結果を受け取った後に、該演算結果に基づいてn+1番目のスライスのシナプス部の演算を実行しなおす必要がある場合が生じる確率は低い。また、発火イベントが発生しなかった場合の演算時間の平均値は、発火イベントが発生した場合の演算時間の平均値よりも大きい。したがって、n+1番目のスライスにおけるシナプス部の演算時間が大幅に短縮される。
本発明の実施形態によるニューラルネットワーク・シミュレーション演算方法において、ノードによるシナプス部の演算結果は、ノードの記憶装置に、スライスごと及びシナプスごとに格納される。
本実施形態によれば、シナプス部の演算結果が、ノードの記憶装置に、スライスごと及びシナプスごとに格納されているので、ノードが他のノードのn番目のスライスの演算結果を受け取った後に、実行しなおす必要があると判断した部分についてのみ、n+1番目のシナプス部の演算を実行しなおす際に、効率的に処理を実行することができる。
本発明の実施形態によるニューラルネットワーク・シミュレーション演算方法において、ノードが、n+1番目のスライスの先行演算を実行する前に、n+1番目のスライスの演算用のデータセットを、該ノードの記憶装置に予めコピーし、該ノードが他のノードのn番目のスライスの演算結果を受け取った後に、該コピーしたデータセットに基づいて必要であると判断した部分についてn+1番目のスライスの演算を実行しなおす。
本実施形態によれば、n+1番目のスライスの先行演算を実行する前に、n+1番目のスライスの演算用のデータセットを、該ノードの記憶装置に予めコピーしておくので、ノードが他のノードのn番目のスライスの演算結果を受け取った後に、実行しなおす必要があると判断した部分についてのみ、n+1番目のシナプス部の演算を実行しなおす際に、効率的に処理を実行することができる。
本発明の実施形態によるニューラルネットワーク・シミュレーション演算方法において、前記並列演算システムの複数のノードは、スライスの演算を実行するサーバと、スライスの管理を行うクライアントからなり、サーバはスライスの演算結果をクライアントに送信し、クライアントは、各スライスの演算結果を各サーバに送信するように構成されている。
本実施形態によれば、クライアントがスライスの管理を行うので、サーバによるスライスの演算時間短縮が、並列演算システムの全体の効率向上に反映される。
本発明の一実施形態による並列演算システムの構成を示す図である。 スライス内で実行されるサーバの動作を示す図である。 スライス内で実行されるクライアント及びサーバの動作を示す図である。 ニューラルネットワークを構成するニューロンの構成を示す図である。 ニューロンの内側の演算の構成を示す図である。 スライス内で実行されるサーバのより詳細な動作を示す図である。 連続したスライス内で実行されるサーバの動作を示す図である。 スライス内で実行されるクライアント及びサーバの動作を示す図である。 本発明の一実施形態によるニューラルネットワーク・シミュレーション演算方法において、連続したスライス内で実行されるサーバの動作を示す図である。 本発明の一実施形態によるニューラルネットワーク・シミュレーション演算方法において、連続したスライス内で実行されるクライアント及びサーバの動作を示す図である。 シナプス演算に使用されるデータセットの取り扱いを示す図である。 本実施形態による、並列演算システムの稼働率向上の効果を示す図である。
図1は、本発明の一実施形態による並列演算システム100の構成を示す図である。並列演算システム100は、ルーティング・スイッチ101とノード103から構成される。ノード103は、x86系CPUなどを搭載した汎用計算機であってもよい。ノードは、他のノードとの通信のための通信カードを備える。ノードの通信カードは、たとえば、メタルの同軸ケーブル、ツイストペアや、光ケーブルなどの通信路を介してルーティング・スイッチ101に接続される。すなわち、全てのノードは、ルーティング・スイッチ101に接続され、ノード間の通信は、ルーティング・スイッチ101を介して行われる。ルーティング・スイッチ101は、各ノードから転送されてきたデータ・パケット(データと制御コードの列)を解析して、宛先のノードへ転送する機能を有する。
シミュレーション演算を実行する際に、一例として、ノード105は、クライアントとして機能し、ノード107a、107b、・・・は、サーバとして機能する。各サーバ107a、107b、・・・には、実行順序を定めたスライスが割り当てられる。クライアント105は、サーバによるスライスの実行を管理する。
図2は、スライス内で実行されるサーバの動作を示す図である。図2においてSlice(n)は、実行順序がn番目であるスライスを示す。各サーバ107a、107b、・・・によって、1スライス内で実行される動作は、以下のとおりである。
1)スライス開始の同期信号をクライアント105から受け取る(A1)。
2)演算を実行するのに使用されるパラメータや変数をクライアント105から受け取る(A2)。
3)演算を実行する(A3)。
4)演算結果をクライアント105へ送る(A4)。
図3は、スライス内で実行されるクライアント及びサーバの動作を示す図である。スライスにおいて、サーバによって上述の動作が実行される。他方、クライアントによって以下の動作が実行される。
1)スライスの同期信号を作成し、サーバに送る(B1)。同期信号は、以下の手順で作成する。
クライアント105は、上述のとおり、各サーバから演算結果を受け取る。クライアント105は、スライス(n−1)についての全てのサーバの演算結果を受け取った後に、スライス(n)の同期信号を作成する。ここで、nは正の整数であり、n−1及びnは、スライスの実行順序を示す。
2)パラメータ及びデータを作成し、サーバに送る(B2)。パラメータ及びデータは、以下の手順で作成する。
スライス(n−1)についてのサーバの演算結果に基づいて、スライス(n)の演算に必要なパラメータ及びデータを作成する。
3)サーバから演算結果を受け取る(B3)。
このように実行順序を定めたスライスを繰り返し実行することにより、ニューラルネットワークのシミュレーション演算を実行する。
図4は、ニューラルネットワークを構成するニューロン300の構成を示す図である。ニューロン300は、複数のシナプス301a、301b、301c・・・から構成されるシナプス部301と、ソーマ部303とから構成される。各シナプスは、他のニューロンのソーマ部から信号を受け取り、この信号に基づいてシナプス部及びソーマ部が機能し、他のニューロンのシナプスへ信号を出力する。ここで、ニューラルネットワークのシミュレーション演算は、スパイキングニューロンモデルを計算するニューロンの内側の演算と、ニューロン間において発火イベントが存在するかしないかをディジタル値で表現するネットワーク(ニューロンの外側)の演算とで構成される。
図5は、ニューロンの内側の演算の構成を示す図である。ニューロンの内側の演算は、シナプス部を演算する過程S1(図5中のs1)とソーマ部を演算する過程N1(図5中のn1)とに分けられる。
シナプス部の演算は、シナプスごとに行われる。シナプス部の演算には、2個の関数が準備されている。シナプスが、接続された他のニューロンからの発火イベントを受け取ったか否かによって2個のうちいずれの関数を実行するかが決められる。シナプスが、発火イベントを受け取った場合には、関数Sleが実行される。シナプスが、発火イベントを受け取らなかった場合には、関数Slneが実行される。発火イベントについてのデータは、クライアントが同期信号を送った後にサーバに送るデータに含まれている。したがって、サーバは、クライアントからのデータを受け取る前に2個のうちいずれの関数を実行するか決めることはできない。シナプス部の演算結果は、ノードの記憶装置に、シナプスごとに格納される。
ソーマ部の演算は、そのソーマ部が属しているニューロンが保持する全てのシナプスの演算結果を使用する。ソーマ部の演算は、基本的に、そのソーマ部が属しているニューロンが保持する全てのシナプスの演算が終了しないと開始できない。
図6は、スライス内で実行されるサーバのより詳細な動作を示す図である。図6は、図2に示したサーバの動作をより詳細に示している。シミュレーション演算は、シナプス部の演算S1(図6中のs1)とソーマ部の演算N1(図6中のn1)とに分けられる。また、サーバがクライアント105へ演算結果を送信した後、サーバが次のスライスの同期信号を受け取るまでの間、サーバは演算を実行しない待機状態となる。
図7は、連続したスライスSlice(n−1)及びSlice(n)内で実行されるサーバの動作を示す図である。図7において、c1は、スライス開始の同期信号をクライアント105から受け取る動作を示す。c2は、演算を実行するのに使用されるパラメータや変数をクライアント105から受け取る動作を示す。s1は、シナプス部の演算を示す。n1は、ソーマ部の演算を示す。c4は、演算結果をクライアント105へ送る動作を示す。c5は、サーバの待機状態を示す。c1、c2、c4及びc5の時間は、並列演算システム100の通信や同期のためのオーバーヘッドであり、これらの時間が短くなるほど並列演算システム100の稼働率が向上する。
図8は、スライス内で実行されるクライアント及びサーバの動作を示す図である。クライアント105は、サーバに同期信号を送り(c1)、ついで、演算に必要なパラメータ・データを送る(c2)。その後、クライアント105は、サーバの演算終了を待ち続ける(c3)。クライアント105は、動作c4によってサーバから送られたデータを処理してスライスの更新処理を行う。
ここで、発火イベントに関するニューロンの外側の演算について説明する。ニューロンの内側の演算結果に基づいて、ニューロンに発火イベントが生じたかどうかが定まる。あるニューロンに発火イベントが生じたかどうかの情報は、該ニューロンの演算を実行したサーバ及び他のサーバに伝達される必要がある。そこで、クライアント105は、各サーバから送られる演算結果に基づいて、ニューロンの発火についての情報を収集し、整理し、各サーバに伝達する。クライアント105は、表1に示すようなイベントリストによってニューロンの発火についての情報を整理してもよい。表1において、発火イベントの欄の0は発火していないことを示し、1は発火したことを示す。なお、表のフォーマットは表1に示したものに限らず、発火の有無がわかるものであればよい。
Figure 2010287062
各ノードは、ニューラルネットワークの接続情報を記憶装置に予め保持する。このニューラルネットワークの接続情報及びクライアントから受け取ったイベントリストに基づいて、サーバは、シナプス部の演算を実行するときに、そのシナプス部の接続先(入力先)のニューロンで発火イベントが生じたかどうかを判断する。上述のように、発火イベントが生じた場合には、関数Sleが実行され、発火イベントが生じなかった場合には、関数Slneが実行される。
ここで、ニューロンが発火する頻度について検討する。仮にニューロンの平均発火頻度を400Hzとすると、2.5msecに一回発火することになる。スライス1つを100usec相当と仮定すると、スライス25個に相当する時間で1回発火することになる。このように、ニューロンが発火する平均頻度はかなり低い。
また、関数Slneの演算時間の平均値は、関数Sleの演算時間の平均値よりも大きい。
そこで、本発明によるニューラルネットワーク・シミュレーション演算方法においては、図7に示した、n−1番目のスライスの待機時間c5において、n番目のスライスの、発火イベントが生じなかった場合の関数Slne(n)の演算を実行する。この演算を先行演算と呼称する。先行演算の対象は全てのシナプス部である。n番目のスライスで発火イベントを受け取ることとなるシナプス部の演算も、一旦、発火イベントを受け取らないものとして先行演算を実行する。
図9は、本発明の一実施形態によるニューラルネットワーク・シミュレーション演算方法において、連続したスライス内で実行されるサーバの動作を示す図である。図9(b)は、本実施形態によるサーバの動作を示し、図9(a)は、従来技術によるサーバの動作を示す。サーバによって実行される動作は、以下のとおりである。
1)n−1番目のスライスにおいて、演算結果をクライアント105へ送る動作c4が終了した後、待機時間c5において、n番目のスライスの、全てのシナプス部の、発火イベントが生じなかった場合の関数Slne(n)の演算の実行を開始する。
2)クライアント105からの同期信号を受け取る動作c1が終了し、n番目のスライスが開始された後、発火イベントリストをクライアント105から受け取る動作c2の終了を待って、発火イベントリストに基づいて、発火イベントを受け取るシナプス部のみを対象として、関数Sle(n)の演算を実行する。
図9に示したように、n-1番目のスライスにおいて、待機時間c5に対応する時間において全てのシナプス部の関数Slne(n)の演算が実行される。したがって、n番目のスライスにおいて、シナプス部の関数Slne(n)の演算を実行する必要がなく、n番目のスライスにおけるシナプス部の演算時間は大幅に短縮される。このように本実施形態によれば、各サーバの各スライスにおいてシナプスの演算時間が大幅に短縮されるので、並列演算システム100の稼働率が大幅に向上する。
図10は、本発明の一実施形態によるニューラルネットワーク・シミュレーション演算方法において、連続したスライス内で実行されるクライアント及びサーバの動作を示す図である。
クライアント105は、サーバに同期信号を送り(c1)、ついで、演算に必要なパラメータ・データを送る(c2)。その後、クライアント105は、サーバの演算終了を待ち続ける(c3b)。クライアント105は、動作c4によってサーバから送られたデータを処理してスライスの更新処理を行う。
サーバは、n番目のスライスにおいて、演算に必要なパラメータ・データを受け取った(c2)後、発火が生じたシナプスについてのみ、関数Sle(n)の演算を実行する。その後、ソーマ部の演算N1を実行する。ニューロンの演算終了後、演算結果をクライアント105へ送る(c4)。その後、サーバは、(n+1)番目のスライスにおける、全てのシナプス部の関数Slne(n+1)の演算を実行する。その後、サーバは待機する(c5b)。
図11は、シナプス演算に使用されるデータセット211の取り扱いを示す図である。n−1番目のスライスにおいて、サーバの記憶装置に格納されたn番目のスライス用のデータセット211を予め、該記憶装置の別の場所にコピーし、データセット213を作成しておく(A)。データセット211を使用して、n番目のスライスの、全てのシナプス部の、発火イベントが生じなかった場合の関数Slne(n)の演算を実行し、データセット215を得る(B)。n番目のスライスにおいて、データセット213を使用して、発火イベントを受け取るシナプス部のみを対象として、関数Sle(n)の演算を実行し、その結果をデータセット215に上書きし、データセット217を得る(C)。上述の処理によってn番目のスライスにおけるシナプス部の演算が終了する。
図12は、本実施形態による、並列演算システム100の稼働率向上の効果を示す図である。10万スライスを計算するのに必要とされる時間は、従来技術の方法によれば、49.76秒であるのに対し、本実施形態の方法によれば33.58秒である。このように本実施形態による計算時間は、従来技術の計算時間の約3分の2に短縮され、稼働率が大幅に向上される。
101…ルーティング・スイッチ、103…ノード、105…クライアント、107…サーバ

Claims (5)

  1. 複数のニューロンが相互に接続されているニューラルネットワークのシミュレーションを、複数のノードが並列演算を行うように構成された並列演算システムによって実行するニューラルネットワーク・シミュレーション演算方法であって、ニューラルネットワークのシミュレーション演算は、ニューロンの演算からなり、該ニューロンの演算は該ニューロンのシナプス部に接続されたニューロンの演算の結果を利用するものであり、ニューラルネットワークのシミュレーション演算は、少なくとも一つのニューロンの演算を含む、実行順序を決められたスライスに分割されており、nは正の整数として、n+1番目に実行されるスライスの演算は、n番目に実行されるスライスの演算結果を利用するように構成されており、ノードには、実行順序を決められたスライスが割り当てられており、ノードは、他のノードによるスライスの演算結果を受け取るように構成されており、該方法は、
    ノードがn番目のスライスの演算を実行するステップと、
    ノードが他のノードのn番目のスライスの演算結果を仮定してn+1番目のスライスのシナプス部の先行演算を実行するステップと、
    ノードが他のノードのn番目のスライスの演算結果を受け取った後に、該演算結果に基づいてn+1番目のスライスのシナプス部の演算を実行しなおす必要があるかどうかを判断し、実行しなおす必要があると判断した部分についてのみ、n+1番目のシナプス部の演算を実行しなおすスッテップとを含むニューラルネットワーク・シミュレーション演算方法。
  2. ノードが他のノードのn番目のスライスの演算結果を受け取る前に、他の全てのニューロンにおいて発火イベントは発生していないと仮定してn+1番目のスライスのシナプス部の演算を実行する請求項1に記載のニューラルネットワーク・シミュレーション演算方法。
  3. 所定のスライスにおいて、ノードによるシナプス部の演算結果は、ノードの記憶装置に、シナプスごとに格納される請求項1又は2に記載のニューラルネットワーク・シミュレーション演算方法。
  4. ノードが、n+1番目のスライスの先行演算を実行する前に、n+1番目のスライスの演算用のデータセットを、該ノードの記憶装置に予めコピーし、該ノードが他のノードのn番目のスライスの演算結果を受け取った後に、該コピーしたデータセットに基づいて必要であると判断した部分についてn+1番目のスライスの演算を実行しなおす請求項1から3のいずれかに記載のニューラルネットワーク・シミュレーション演算方法。
  5. 前記並列演算システムの複数のノードは、スライスの演算を実行するサーバと、スライスの管理を行うクライアントからなり、サーバはスライスの演算結果をクライアントに送信し、クライアントは、各スライスの演算結果を各サーバに送信するように構成された請求項1から4のいずれかに記載のニューラルネットワーク・シミュレーション演算方法。
JP2009140498A 2009-06-11 2009-06-11 ニューラルネットワーク・シミュレーション演算方法 Pending JP2010287062A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009140498A JP2010287062A (ja) 2009-06-11 2009-06-11 ニューラルネットワーク・シミュレーション演算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009140498A JP2010287062A (ja) 2009-06-11 2009-06-11 ニューラルネットワーク・シミュレーション演算方法

Publications (1)

Publication Number Publication Date
JP2010287062A true JP2010287062A (ja) 2010-12-24

Family

ID=43542711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009140498A Pending JP2010287062A (ja) 2009-06-11 2009-06-11 ニューラルネットワーク・シミュレーション演算方法

Country Status (1)

Country Link
JP (1) JP2010287062A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9037524B2 (en) 2011-12-09 2015-05-19 Samsung Electronics Co., Ltd. Neural working memory device
WO2016166881A1 (ja) * 2015-04-17 2016-10-20 Cocoro Sb株式会社 処理システム及びプログラム
WO2021002215A1 (ja) * 2019-07-02 2021-01-07 富士フイルム株式会社 サーバ装置、サーバ装置の作動プログラム及び作動方法、並びにデータ解析処理システム
CN113485796A (zh) * 2021-07-30 2021-10-08 广东工业大学 一种基于集群架构的分布式可扩展模拟计算方法
JP7475150B2 (ja) 2020-02-03 2024-04-26 キヤノン株式会社 推論装置、推論方法、及びプログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9037524B2 (en) 2011-12-09 2015-05-19 Samsung Electronics Co., Ltd. Neural working memory device
WO2016166881A1 (ja) * 2015-04-17 2016-10-20 Cocoro Sb株式会社 処理システム及びプログラム
JPWO2016166881A1 (ja) * 2015-04-17 2018-02-22 Cocoro Sb株式会社 処理システム及びプログラム
WO2021002215A1 (ja) * 2019-07-02 2021-01-07 富士フイルム株式会社 サーバ装置、サーバ装置の作動プログラム及び作動方法、並びにデータ解析処理システム
JP7475150B2 (ja) 2020-02-03 2024-04-26 キヤノン株式会社 推論装置、推論方法、及びプログラム
CN113485796A (zh) * 2021-07-30 2021-10-08 广东工业大学 一种基于集群架构的分布式可扩展模拟计算方法
CN113485796B (zh) * 2021-07-30 2023-07-25 广东工业大学 一种基于集群架构的分布式可扩展模拟计算方法

Similar Documents

Publication Publication Date Title
TWI514164B (zh) 用於仿神經系統之基本網路描述
JP2010287062A (ja) ニューラルネットワーク・シミュレーション演算方法
WO2018140885A1 (en) Memory side acceleration for deep learning parameter updates
US10417558B1 (en) Methods and systems for artificial neural network optimistic event processing
US11651226B2 (en) System having multiple processing unit sets for training neural networks
CN113255885A (zh) 使卷积神经网络的训练并行化
US9723070B2 (en) System to improve cluster machine processing and associated methods
CN108681900A (zh) 轻节点验证交易的方法
US10402235B2 (en) Fine-grain synchronization in data-parallel jobs for distributed machine learning
US20170315544A1 (en) Distributed control system, control device, control method, and program
Shi et al. Exploiting simultaneous communications to accelerate data parallel distributed deep learning
CN109568948A (zh) 网络游戏中对象的运动状态同步方法及装置
US11356334B2 (en) Communication efficient sparse-reduce in distributed machine learning
CN108989052A (zh) 交易请求处理方法及系统
CN110322020A (zh) 分布式随机梯度下降的自适应学习率调度
CN111507694A (zh) 区块链跨链交互方法及系统
Mao et al. AdaLearner: An adaptive distributed mobile learning system for neural networks
CN104994179B (zh) 一种数据处理方法及服务器
Metta et al. Spiking neural P systems with cooperating rules
JP2020003860A (ja) 学習システム、処理装置、処理方法、およびプログラム
CN115391044A (zh) 拟态系统的调度判决方法及装置
CN111245909B (zh) 分布式动态调度方法、装置、电子设备及存储介质
CN106357552B (zh) 一种拥塞控制方法及网络节点
US20150256469A1 (en) Determination method, device and storage medium
JP5645675B2 (ja) 分散シミュレーションシステム