Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7372221B2 - AI processing distribution method and system - Google Patents
[go: Go Back, main page]

JP7372221B2 - AI processing distribution method and system - Google Patents

AI processing distribution method and system Download PDF

Info

Publication number
JP7372221B2
JP7372221B2 JP2020165675A JP2020165675A JP7372221B2 JP 7372221 B2 JP7372221 B2 JP 7372221B2 JP 2020165675 A JP2020165675 A JP 2020165675A JP 2020165675 A JP2020165675 A JP 2020165675A JP 7372221 B2 JP7372221 B2 JP 7372221B2
Authority
JP
Japan
Prior art keywords
processing
server
distributed
entrusted
outsourced
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
JP2020165675A
Other languages
Japanese (ja)
Other versions
JP2022057428A (en
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2020165675A priority Critical patent/JP7372221B2/en
Publication of JP2022057428A publication Critical patent/JP2022057428A/en
Application granted granted Critical
Publication of JP7372221B2 publication Critical patent/JP7372221B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、AI処理を複数のノードで分散処理するAI処理分散方法およびシステムに係り、特に、AI処理のトラヒックが発生した場所にかかわらず、分散配置された各ノードの処理負荷を平準化できるAI処理分散方法およびシステムに関する。
The present invention relates to an AI processing distribution method and system for distributing AI processing among multiple nodes, and in particular, it is possible to level out the processing load on each distributed node regardless of where AI processing traffic occurs. Regarding AI processing distribution method and system .

近年、AI処理として多層構造のニューラルネットワーク(Neural Network)を用いたディープラーニング(深層学習)が注目されている。ディープラーニングではニューラルネットワークの多階層化が進み、画像認識や音声認識等の分野で高い認識精度を発揮している。 In recent years, deep learning that uses multilayer neural networks has been attracting attention as an AI processing method. In deep learning, neural networks are becoming more multi-layered, and are demonstrating high recognition accuracy in fields such as image recognition and speech recognition.

ニューラルネットワークは、「入力層」、「中間層」および「出力層」を有し、「中間層」が複数の深い隠れ層を持つものはDNN(Deep Neural Network)と呼ばれる。DNNのうち、「中間層」において畳込み層(Convolution Layer)とプーリング層(Pooling Layer)とが交互に繰り返す多層の積層構造を有するものはCNN(Convolutional Neural Network)と呼ばれる。 A neural network has an "input layer," a "middle layer," and an "output layer," and a network in which the "middle layer" has multiple deep hidden layers is called a DNN (Deep Neural Network). Among DNNs, those having a multilayer stacked structure in which convolution layers and pooling layers are alternately repeated in the "middle layer" are called CNNs (Convolutional Neural Networks).

Zhuoran Zhao, Kamyar Mirzazad Barijough, Andreas Gerstlauer, "DeepThings: Distributed Adaptive Deep Learning Inference on Resource-Constrained IoT Edge Clusters," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems ( Volume: 37 , Issue: 11 , Nov. 2018 )Zhuoran Zhao, Kamyar Mirzazad Barijough, Andreas Gerstlauer, "DeepThings: Distributed Adaptive Deep Learning Inference on Resource-Constrained IoT Edge Clusters," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems ( Volume: 37 , Issue: 11 , Nov. 2018)

ニューラルネットワークはコンピュータ上で仮想的に構築され、ソフトウェアによって層単位で演算処理が実行されるが、その演算量は膨大なものとなるため、汎用のCPUのみならずGPU(Graphics Processing Unit)を用いて演算処理を実行することも行われている。しかしながら、例えばCNNでは畳込み層が20層ないし30層にも及ぶため、更なる負荷軽減が要請されている。 A neural network is virtually constructed on a computer, and software executes calculation processing layer by layer, but since the amount of calculation is enormous, it is necessary to use not only a general-purpose CPU but also a GPU (Graphics Processing Unit). It is also used to perform arithmetic processing. However, for example, CNN has 20 to 30 convolutional layers, so further load reduction is required.

負荷軽減は一般的に負荷分散で実現することができ、非特許文献1には複数のノードで多数のタスクを分散処理する技術が開示されている。 Load reduction can generally be achieved by load distribution, and Non-Patent Document 1 discloses a technique for distributing processing of a large number of tasks across multiple nodes.

しかしながら、AI処理では複数の層やステップが所定の順序で進行し、前の層の処理結果を次の層で利用することが要求される。このような一連の処理を分散処理する場合、分散の単位が不適切であると処理の一貫性が損なわれてしまう場合がある。 However, AI processing requires multiple layers or steps to proceed in a predetermined order, and the processing results of the previous layer to be used in the next layer. When performing distributed processing on such a series of processes, if the unit of distribution is inappropriate, the consistency of the processing may be impaired.

また、分散先の選択が適切に行われないと一部のノードに負荷が集中し、更には一部のネットワークにトラヒックが集中するなどの弊害が生じうる。 Furthermore, if the distribution destination is not selected appropriately, problems such as load concentration on some nodes and traffic concentration on some networks may occur.

本発明の目的は、上記の技術課題を解決し、AI処理をその一貫性が損われず、一部のノードへの負荷集中や一部のネットワークへのトラヒック集中を防止しながら分散処理できるAI処理分散方法およびシステムを提供することにある。 The purpose of the present invention is to solve the above-mentioned technical problems, and to provide an AI that can perform distributed processing without compromising the consistency of AI processing and preventing load concentration on some nodes or traffic concentration on some networks. An object of the present invention is to provide a processing distribution method and system .

上記の目的を達成するために、本発明は、AI情報に対するAI処理を分散処理するAI処理ノードが、以下の構成を具備した点に特徴がある。 In order to achieve the above object, the present invention is characterized in that an AI processing node that performs distributed AI processing on AI information has the following configuration.

(1) AI情報を取得するAI情報取得手段と、取得したAI情報の一部をAI処理するAI処理実行手段と、AI処理の委託先ノードを決定する委託先ノード決定手段と、前記委託先ノードへ委託するAI処理の処理量を決定する処理量決定手段と、前記決定した処理量のAI処理を前記委託先ノードへ委託する分散処理委託手段とを具備した。 (1) AI information acquisition means that acquires AI information, AI processing execution means that performs AI processing on a portion of the acquired AI information, outsource node determination means that determines an outsourced node for AI processing, and said outsourced node. The apparatus includes processing amount determining means for determining the processing amount of AI processing to be entrusted to a node, and distributed processing entrusting means for entrusting the determined processing amount of AI processing to the outsourcing node.

(2) AI情報の分散処理をその分散処理量の指定と共に受託する分散処理受託手段を更に具備し、前記AI処理実行手段は、指定された分散処理量のAI処理を実行するようにした。 (2) The system further includes distributed processing entrusting means for entrusting the distributed processing of AI information together with the specification of the amount of distributed processing, and the AI processing execution means executes the AI processing of the specified amount of distributed processing.

(3) 他のAI処理ノードの空き容量を監視する手段を具備し、前記委託先ノード決定手段は空き容量に基づいて委託先ノードを決定するようにした。 (3) Means for monitoring the free capacity of other AI processing nodes is provided, and the outsource node determining means determines the outsource node based on the free capacity.

(4) 他のAI処理ノードとの距離を管理する距離管理手段を具備し、前記委託先ノード決定手段は空き容量および距離に基づいて委託先ノードを決定するようにした。 (4) Distance management means for managing distances to other AI processing nodes is provided, and the entrusted node determining means determines the entrusted node based on free capacity and distance.

(1) 一のAI処理ノードにAI処理のトラヒックが発生すると他のAI処理ノードへAI処理の一部が委託され、これが他のAI処理ノードから更に他のAI処理ノードへ繰り返されて複数のAI処理ノードにAI処理が分散されるので、AI処理の発生個所近傍のAI処理ノードにAI処理の負荷が集中することを防止できるようになる。 (1) When AI processing traffic occurs in one AI processing node, a part of the AI processing is delegated to another AI processing node, and this is repeated from the other AI processing node to another AI processing node, resulting in multiple AI processing Since the AI processing is distributed to the AI processing nodes, it is possible to prevent the AI processing load from concentrating on the AI processing nodes near the point where the AI processing occurs.

(2) 各AI処理ノードには空き容量に見合った量の分散処理が委託され、それ以上のAI処理は他のAI処理ノードへ委託され、これが繰り返されるので、各AI処理ノードの負荷が過大となることを防止できる。 (2) Each AI processing node is entrusted with an amount of distributed processing commensurate with its free capacity, and any further AI processing is entrusted to other AI processing nodes, and this process is repeated, resulting in an excessive load on each AI processing node. This can be prevented.

(3) AI処理の委託先が空き容量および委託元からの距離に基づいて決定されるので、分散処理に伴う新たなトラヒックの発生を最小限に抑えることが可能となり、トラヒックの集中も防止できるようになる。 (3) Since the outsourcing company for AI processing is determined based on free capacity and distance from the outsourcing source, it is possible to minimize the generation of new traffic associated with distributed processing, and also prevent traffic concentration. It becomes like this.

(4) AI処理が階層やステップといった区切りとなる処理単位で各AI処理ノードへ分散されるので、分散により処理の一貫性が損なわれることがなく、効率的な分散処理が可能になる。 (4) Since AI processing is distributed to each AI processing node in processing units such as layers and steps, the consistency of processing is not compromised due to distribution, and efficient distributed processing is possible.

本発明の一実施形態に係るAI処理分散システムの構成を示した図である。1 is a diagram showing the configuration of an AI processing distribution system according to an embodiment of the present invention. 本発明が分散処理の対象とするニューラルネットワークを用いたAI処理の例を示した図である。FIG. 2 is a diagram illustrating an example of AI processing using a neural network that is subject to distributed processing according to the present invention. 委託元サーバES(m)の主要部の構成を示した機能ブロック図である。FIG. 2 is a functional block diagram showing the configuration of the main parts of the outsourcing server ES(m). 委託先サーバES(s)の主要部の構成を示した機能ブロック図である。FIG. 2 is a functional block diagram showing the configuration of the main parts of the entrusted server ES(s). 本発明が分散処理の対象とするDNNの例を示した図である。FIG. 2 is a diagram showing an example of a DNN targeted for distributed processing by the present invention.

以下、図面を参照して本発明の実施の形態について詳細に説明する。ただし、本発明は以下に説明する実施形態の記載内容に限定して解釈されるものではなく、本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解されるであろう。 Embodiments of the present invention will be described in detail below with reference to the drawings. However, the present invention is not to be construed as being limited to the contents described in the embodiments described below, and those skilled in the art will be able to change the specific configuration without departing from the idea or gist of the present invention. It would be easily understood.

図1は、本発明の一実施形態に係るAI処理分散システムの構成を示した図であり、ここでは本発明の説明に不要な構成は図示が省略されている。本発明のAI処理分散システムは、複数のエッジサーバESを無線基地局BSおよびネットワークNW経由で相互に接続して構成される。 FIG. 1 is a diagram showing the configuration of an AI processing distribution system according to an embodiment of the present invention, and illustration of configurations unnecessary for explanation of the present invention is omitted here. The AI processing distributed system of the present invention is configured by interconnecting a plurality of edge servers ES via a wireless base station BS and a network NW.

各エッジサーバESは、AI処理の対象となる大量の情報(AI情報)を、ユーザのスマートフォンやタブレットなどのモバイル端末1、監視カメラ2、あるいは走行中または駐車中の車両3から無線基地局BSおよびネットワークNW経由で取得する。 Each edge server ES receives a large amount of information (AI information) that is subject to AI processing from a mobile terminal 1 such as a user's smartphone or tablet, a surveillance camera 2, or a moving or parked vehicle 3 from a wireless base station BS. and obtained via network NW.

本実施形態では、図2に示したように「入力層」、「中間層」および「出力層」を含むニューラルネットワークを用いたAI処理に注目し、各エッジサーバESにはAI処理に必要となるアプリケーションやモデルが予め実装されている。 In this embodiment, we focus on AI processing using a neural network including an "input layer", "middle layer", and "output layer" as shown in Figure 2, and each edge server ES has the necessary information for AI processing. Applications and models are pre-implemented.

このような構成において、一のエッジサーバESにモバイル端末1等からAI情報を取得するための大量のトラヒックが発生すると、当該一のエッジサーバESはAI処理の委託元サーバとして機能し、当該AI情報の分散処理を、委託先となる他のエッジサーバESへ委託して実行させる。 In such a configuration, when a large amount of traffic occurs to one edge server ES for acquiring AI information from mobile terminal 1, etc., that one edge server ES functions as the outsourcing server for AI processing, and the said AI Distributed processing of information is entrusted to another edge server ES to be executed.

当該他のエッジサーバESは委託されたAI処理の一部を実行し、残りのAI処理の分散処理を更に他のエッジサーバESへ委託して実行させる。当該更に他のエッジサーバESは、委託されたAI処理の一部を実行し、残りのAI処理の分散処理を依頼することを繰り返すことで、複数のエッジサーバESによるAI処理の分散処理が実現される。 The other edge server ES executes a part of the entrusted AI processing, and entrusts the remaining distributed processing of the AI processing to another edge server ES for execution. The other edge server ES executes a part of the entrusted AI processing and requests the remaining AI processing to be distributed, thereby realizing distributed processing of AI processing by multiple edge servers ES. be done.

このように、本実施形態ではAI情報をモバイル端末1等から直接取得したエッジサーバESは委託元サーバとして機能し、当該AI情報の全部または一部は自ら処理して残り全部の分散処理を、委託先となる他のエッジサーバESへ委託する。 In this way, in this embodiment, the edge server ES that directly acquires AI information from the mobile terminal 1, etc. functions as the outsourcing server, processes all or part of the AI information itself, and handles all the remaining distributed processing. Delegating to another edge server ES.

図3,4は、各エッジサーバESの主要部の構成を示した機能ブロック図であり、発明の説明に不要な構成は図示が省略されている。各エッジサーバESは同一の構成で実現できるが、ここでは委託元サーバES(m)に固有の機能を図3で説明し、委託先サーバES(s)に固有の機能を図4で説明する。 3 and 4 are functional block diagrams showing the configuration of the main parts of each edge server ES, and illustrations of configurations unnecessary for explaining the invention are omitted. Although each edge server ES can be realized with the same configuration, the functions specific to the outsourcing server ES(m) are explained in Figure 3, and the functions specific to the outsourcing server ES(s) are explained in Figure 4. .

図3の委託元サーバES(m)において、AI情報取得部101は、モバイル端末1、監視カメラ2および/または車両3からカメラ画像、位置情報、車両情報、環境情報等のAI情報をネットワーク経由で取得する。 In the entrusted server ES(m) in FIG. 3, the AI information acquisition unit 101 receives AI information such as camera images, location information, vehicle information, and environmental information from the mobile terminal 1, surveillance camera 2, and/or vehicle 3 via the network. Get it with.

空き容量監視部102は、AI処理の委託先候補として予め登録されている他のエッジサーバESの空き容量Cを監視する。空き容量CはエッジサーバESでのCPUあるいはGPUの空きの処理容量であっても良い。距離管理部103は、委託先候補の各エッジサーバESまでの距離Dを管理する。距離DはエッジサーバES間での物理的な距離以外でもネットワーク上における距離(ホップ数やラウンドトリップタイム等)であっても良い。 The free capacity monitoring unit 102 monitors the free capacity C of other edge servers ES that are registered in advance as candidates for AI processing. The free capacity C may be the free processing capacity of the CPU or GPU in the edge server ES. The distance management unit 103 manages the distance D to each edge server ES of the entrustee candidate. The distance D may be a distance on the network (hop count, round trip time, etc.) other than the physical distance between the edge servers ES.

委託先決定部104は、空き容量Cおよび距離Dを所定の関数またはマッピングテーブルに適用し、空き容量Cがより多く、距離Dがより短い委託先候補が優先されるように委託先サーバES(s)を決定する。 The entrustee determining unit 104 applies the free capacity C and the distance D to a predetermined function or mapping table, and selects the entrustee server ES ( s).

委託量決定部105は、前記決定した委託先サーバES(s)に委託する分散処理の処理量を当該委託先サーバES(s)の空き容量Cに基づいて決定する。本実施形態では、入力層の処理のみ、または入力および中間層の処理のみ、または中間層内の特定の隠れ層の処理のみというように、委託処理量が層単位で決定される。分散処理委託部106は、前記決定した委託先サーバES(s)へ前記決定した委託処理量の分散処理を委託する。 The entrustment amount determination unit 105 determines the amount of distributed processing to be entrusted to the determined outsource server ES(s) based on the free capacity C of the outsource server ES(s). In this embodiment, the amount of entrusted processing is determined for each layer, such as processing only the input layer, processing only the input and intermediate layer, or processing only a specific hidden layer within the intermediate layer. The distributed processing entrustment unit 106 entrusts distributed processing of the determined entrusted processing amount to the determined entrusted server ES(s).

図4の委託先エッジサーバES(s)において、分散処理受託部107は前記AI処理の分散処理の委託を受け付ける。AI処理部108は、委託された処理量のAI処理を実行する。委託先エッジサーバES(s)は更に、前記空き容量監視部102、距離管理部103、委託先決定部104、委託量決定部105および分散処理委託部106と同一または同様の機能を具備し、委託元サーバES(m)としても機能することで残りのAI処理を他のエッジサーバESへ委託する。 In the entrusted edge server ES(s) in FIG. 4, the distributed processing entrustment unit 107 accepts entrustment of the distributed processing of the AI processing. The AI processing unit 108 executes the AI processing of the entrusted amount of processing. The outsourced edge server ES(s) further includes the same or similar functions as the free capacity monitoring unit 102, distance management unit 103, outsource determination unit 104, outsource amount determination unit 105, and distributed processing outsourcing unit 106, By also functioning as the outsourcing server ES(m), the remaining AI processing is outsourced to other edge servers ES.

次いで、本実施形態の動作について詳細に説明する。ここでは、図5に一例を示したように、入力層、中間層および出力層で構成され、中間層が複数の隠れ層を含み、AI処理が層単位で進行するDNNへの適用を例にして説明する。DNNでは、一般的に入力データ(例えば、画像データ)に対して、ある階層の処理結果を、その後段の階層の処理の入力とする階層的な演算処理が行われる。 Next, the operation of this embodiment will be explained in detail. Here, as an example shown in Figure 5, we will take as an example the application to a DNN, which is composed of an input layer, a hidden layer, and an output layer, where the hidden layer includes multiple hidden layers, and the AI processing proceeds layer by layer. I will explain. In a DNN, hierarchical arithmetic processing is generally performed on input data (for example, image data) in which the processing result of a certain layer is used as input for the processing of the subsequent layer.

また、本実施形態ではエッジサーバES1が委託元サーバES(m)として動作し、他のエッジサーバES2,ES3,ES4,ES5が委託先サーバES(s)として動作するものとする。 Further, in this embodiment, it is assumed that the edge server ES1 operates as the entrusted server ES(m), and the other edge servers ES2, ES3, ES4, and ES5 operate as the entrusted servers ES(s).

委託元サーバES(m)としてのエッジサーバES1は、ユーザのモバイル端末1、監視カメラ2あるいは車両3からDNNによる画像認識の対象となる大量のカメラ画像を取得すると、その委託先決定部104が、他のエッジサーバES2,ES3,ES4,ES5の空き容量Cの監視結果および他のエッジサーバES2,ES3,ES4,ES5までの距離Dに基づいて、空き容量Cがより多く、距離Dがより近い委託先候補を委託先サーバES(s)に決定する。本実施形態では、エッジサーバES2が最初の委託先サーバES(s)に決定される。 When the edge server ES1 as the outsource server ES(m) acquires a large number of camera images to be subjected to DNN image recognition from the user's mobile terminal 1, surveillance camera 2, or vehicle 3, the outsource determination unit 104 , based on the monitoring results of the free capacity C of other edge servers ES2, ES3, ES4, ES5 and the distance D to other edge servers ES2, ES3, ES4, ES5, the free capacity C is larger and the distance D is smaller. A nearby outsourcing candidate is determined as the outsourcing server ES(s). In this embodiment, the edge server ES2 is determined as the first entrusted server ES(s).

委託量決定部105は、エッジサーバES2に関する前記空き容量監視部102による空き容量Cの監視結果に基づいて、エッジサーバES2への委託処理量を決定する。本実施形態では委託処理量として1層分の処理が決定されたものとして説明する。エッジサーバES1の分散処理委託部106は、エッジサーバES2へ前記決定した委託処理量(入力層のみ)のAI処理を委託する。 The entrustment amount determining unit 105 determines the amount of processing to be entrusted to the edge server ES2 based on the result of monitoring the free capacity C by the free capacity monitoring unit 102 regarding the edge server ES2. The present embodiment will be described assuming that the processing for one layer is determined as the entrusted processing amount. The distributed processing entrustment unit 106 of the edge server ES1 entrusts the AI processing of the determined entrusted processing amount (input layer only) to the edge server ES2.

エッジサーバES2は、入力層の分散処理を委託受付部107で受け付けると、AI処理部108が委託された入力層のAI処理を実行する。委託先決定部104は、他のエッジサーバES3,ES4,ES5の空き容量Cおよび距離Dに基づいて次の委託先サーバES(s)を決定する。 In the edge server ES2, when the entrustment receiving unit 107 receives distributed processing for the input layer, the AI processing unit 108 executes the entrusted AI processing for the input layer. The entrustee determining unit 104 determines the next entrustee server ES(s) based on the free capacity C and distance D of the other edge servers ES3, ES4, and ES5.

なお、入力層の分散処理を完了したエッジサーバES1は空き容量Cが増加するので、エッジサーバES2の委託先決定部104はエッジサーバES1,ES3,ES4,ES5の中から次の委託先サーバES(s)を決定するようにしても良い。本実施形態では、エッジサーバES3が次の委託先に決定されたものとして説明を続ける。 Note that the edge server ES1 that has completed the distributed processing of the input layer has an increased free capacity C, so the entrustee determination unit 104 of the edge server ES2 selects the next entrustee server ES from among the edge servers ES1, ES3, ES4, and ES5. (s) may be determined. In this embodiment, the explanation will be continued assuming that the edge server ES3 has been determined to be the next entrustee.

エッジサーバES2の委託量決定部105は、空き容量監視部102による空き容量Cの監視結果に基づいて、委託先のエッジサーバES3への委託処理量を決定する。本実施形態では入力層の処理が終了しているので、エッジサーバES3の空き容量Cに応じて、例えば中間層の一部の隠れ層の分散処理が委託処理量として決定される。分散処理委託部106は、エッジサーバES3へ前記決定した委託処理量のAI処理を、前記入力層の処理結果を添えて委託する。 The entrusted amount determination unit 105 of the edge server ES2 determines the entrusted processing amount to the outsourced edge server ES3 based on the monitoring result of the free capacity C by the free capacity monitoring unit 102. In this embodiment, since the processing of the input layer has been completed, depending on the free capacity C of the edge server ES3, for example, distributed processing of a part of the hidden layer of the intermediate layer is determined as the entrusted processing amount. The distributed processing entrustment unit 106 entrusts the AI processing of the determined entrusted processing amount to the edge server ES3, together with the processing results of the input layer.

以下同様に、各委託先エッジサーバES(s)は委託処理量のAI処理を実行する一方、委託先候補の空き容量Cおよび当該他の委託先候補までの距離Dに基づいて次の委託先および委託処理量を決定し、決定した委託先サーバES(s)へ分散処理の結果を提供し、さらに決定した委託処理量の分散処理を委託することを当該AIが完了するまで繰り返す。 Similarly, each outsourced edge server ES(s) executes AI processing of the outsourced processing amount, and selects the next outsourced edge server based on the available capacity C of the outsourced candidate and the distance D to the other outsourced candidate. and determining the outsourced processing amount, providing the results of distributed processing to the determined outsourced server ES(s), and further entrusting distributed processing of the determined outsourced processing amount until the AI completes.

なお、出力層の分散処理を委託されたエッジサーバES5は、もはや委託先や委託処理量を決定することなく、処理結果を例えばヒストグラム形式で出力する。 Note that the edge server ES5 entrusted with the distributed processing of the output layer outputs the processing results in, for example, a histogram format, without determining the entrusted party or the amount of entrusted processing.

本実施形態によれば、一のエッジサーバにAI処理のトラヒックが発生すると他のエッジサーバへAI処理の一部が委託され、これが他のエッジサーバへも繰り返されて複数のエッジサーバにAI処理が分散されるので、AI処理の発生個所近傍のエッジサーバにAI処理の負荷が集中することを防止できるようになる。 According to this embodiment, when AI processing traffic occurs on one edge server, a part of the AI processing is entrusted to another edge server, and this is repeated to the other edge servers so that AI processing is performed on multiple edge servers. Since the processing is distributed, it is possible to prevent the AI processing load from concentrating on edge servers near the point where the AI processing occurs.

また、本実施形態によればAI処理の委託先が、空き容量Cおよび委託元からの距離Dに基づいて決定されるので、分散処理に伴う新たなトラヒックの発生を最小限に抑えることが可能となり、トラヒックの集中も防止できるようになる。 In addition, according to this embodiment, the outsourcing company for AI processing is determined based on the free capacity C and the distance D from the outsourcing source, so it is possible to minimize the generation of new traffic associated with distributed processing. This makes it possible to prevent traffic concentration.

さらに、本実施形態によればAI処理が階層単位で分散されるので、AI処理が多重することを回避できるのみならず、ある階層のAI処理を終えたエッジサーバは次の階層のAI処理を他のエッジサーバへ依頼するので、他のAIのある階層のAI処理を行うことが可能になり、分散処理によりAI処理の一貫性が損なわれることがなく、効率的な分散処理が可能になる。 Furthermore, according to this embodiment, AI processing is distributed on a layer-by-layer basis, which not only makes it possible to avoid multiple AI processing, but also enables an edge server that finishes AI processing on a certain layer to start AI processing on the next layer. Since requests are made to other edge servers, it becomes possible to perform AI processing for a certain layer of other AI, and distributed processing prevents the consistency of AI processing from being compromised, enabling efficient distributed processing. .

なお、上記の実施形態ではAI処理としてDNNを例にして説明したが、本発明はこれのみに限定されるものではなく、入力層、中間層および出力層から構成され、中間層が複数の畳込み層およびプーリング層の繰り返しで構成されるCNNにも同様に適用できる。この場合、各畳込み層および各プーリング層を分散処理の単位とできる。 In addition, in the above embodiment, DNN was explained as an example of AI processing, but the present invention is not limited to this. It can be similarly applied to CNNs consisting of repeated embedding layers and pooling layers. In this case, each convolutional layer and each pooling layer can be a unit of distributed processing.

また、上記の実施形態では分散処理が全てエッジサーバへ委託されるものとして説明したが、本発明はこれのみに限定されるものではなく、駐車中や走行中の車両3がAI処理用のCPUやGPUを実装したシステムを搭載していれば、当該システムに分散処理を委託するようにしても良い。 Further, in the above embodiment, all distributed processing is entrusted to the edge server, but the present invention is not limited to this, and when the vehicle 3 is parked or running, the CPU for AI processing If the computer is equipped with a system equipped with a computer or GPU, distributed processing may be entrusted to that system.

ただし、走行中の車両3はAI処理中に委託元や委託先との距離が変化する。したがって、車両の移動速度や移動方向を推定できないのであれば、エッジサーバESを委託先として評価する場合よりも距離の条件を厳しくしておくことが望ましい。例えば、固定のエッジサーバESを分散処理の委託先として採用できる距離上限がDmaxであれば、車両移動に相当するマージンDmを見込んで距離上限をDmax-Dmと補正し、委託先として採用できる距離上限をエッジサーバESの場合よりも短くしておくことが望ましい。 However, the distance of the moving vehicle 3 from the outsourcing source or outsourcing company changes during the AI processing. Therefore, if it is not possible to estimate the moving speed and direction of the vehicle, it is desirable to make the distance conditions stricter than when evaluating the edge server ES as a consignee. For example, if the upper limit of the distance at which a fixed edge server ES can be used as a consignee for distributed processing is Dmax, the upper limit of distance is corrected to Dmax - Dm, taking into account the margin Dm equivalent to vehicle movement, and the distance at which it can be adopted as a consignee is Dmax. It is desirable to keep the upper limit shorter than in the case of edge server ES.

さらに、上記の実施形態ではCNN、DNNといったニューラルネットワークを利用するAI処理を例にして説明したが、本発明はこれのみに限定されるものではなく、一連の処理を時系列で層やステップに分割できるAI処理であれば、ニューラルネットワークを利用しないAI処理にも同様に適用できる。 Furthermore, in the above embodiment, AI processing using neural networks such as CNN and DNN was explained as an example, but the present invention is not limited to this, and a series of processing is divided into layers and steps in chronological order. Any AI processing that can be divided can be similarly applied to AI processing that does not use neural networks.

1…モバイル端末,2…監視カメラ,3…車両,101…AI情報取得部,102…空き容量監視部,103…距離管理部,104…委託先決定部,105…委託量決定部,106…分散処理委託部,107…分散処理受託部,108…AI処理部 1...Mobile terminal, 2...Surveillance camera, 3...Vehicle, 101...AI information acquisition unit, 102...Free space monitoring unit, 103...Distance management unit, 104...Consignee determination unit, 105...Consignment amount determination unit, 106... Distributed processing entrustment department, 107...Distributed processing entrustment department, 108...AI processing department

Claims (8)

多層構造のニューラルネットワークに入力されたデータをAI情報としてソフトウェアにより層単位で演算処理するAI処理を複数のサーバで分散処理するシステムにおいて、
前記複数のサーバが、
入力されたAI情報の分散処理を他のサーバへ委託する委託元サーバと、
委託された分散処理の少なくとも一部をAI処理して残りの分散処理を他のサーバへ委託する複数の委託先サーバとを含み、
各委託先サーバは、
AI情報を取得するAI情報取得手段と、
取得したAI情報の一部をAI処理するAI処理実行手段と、
AI処理の委託先サーバを決定する委託先決定手段と、
前記委託先サーバへ委託するAI処理の処理量を決定する処理量決定手段と、
前記決定した処理量のAI処理を前記決定した委託先サーバへ委託する分散処理委託手段とを具備し、
前記決定した委託先サーバが他の委託先サーバを更に決定してAI処理を委託することを繰り返すことを特徴とするAI処理分散システム。
In a system that distributes AI processing using multiple servers , in which data input into a multilayer neural network is processed layer by layer using software as AI information.
The plurality of servers are
A source server that entrusts distributed processing of input AI information to other servers,
including a plurality of outsourced servers that perform AI processing on at least part of the outsourced distributed processing and outsource the remaining distributed processing to other servers;
Each outsourced server is
an AI information acquisition means for acquiring AI information;
an AI processing execution means for performing AI processing on part of the acquired AI information;
A consignee determining means for determining a consignee server for AI processing;
processing amount determining means for determining the processing amount of AI processing to be entrusted to the outsourced server ;
and distributed processing entrustment means for entrusting the AI processing of the determined processing amount to the determined outsourcing server ,
An AI processing distributed system characterized in that the determined entrusted server repeats the process of further determining another entrusted server and entrusting the AI processing to the other entrusted server.
前記各委託先サーバが、AI情報の分散処理をその分散処理量の指定と共に受託する分散処理受託手段を更に具備し、
前記AI処理実行手段は、指定された分散処理量のAI処理を実行することを特徴とする請求項に記載のAI処理分散システム。
Each of the outsourced servers further comprises distributed processing entrustment means for entrusting distributed processing of AI information together with specification of the amount of distributed processing,
2. The AI processing distributed system according to claim 1 , wherein the AI processing execution means executes AI processing with a specified amount of distributed processing.
前記各委託先サーバが他の委託先サーバのメモリ空き容量及び空き処理容量の少なくとも一方を監視する空き容量監視手段を具備し、
前記委託先決定手段は前記メモリ空き容量及び空き処理容量の少なくとも一方に基づいて委託先サーバを決定することを特徴とする請求項1または2に記載のAI処理分散システム。
Each of the outsourced servers is equipped with free capacity monitoring means for monitoring at least one of free memory capacity and free processing capacity of other outsourced servers ,
3. The AI processing distribution system according to claim 1, wherein the entrustee determining means determines the entrustee server based on at least one of the free memory capacity and free processing capacity .
前記各サーバが、他のサーバとの距離を管理する距離管理手段を具備し、
前記委託先決定手段は前記メモリ空き容量及び空き処理容量の少なくとも一方ならびに距離に基づいて委託先サーバを決定することを特徴とする請求項に記載のAI処理分散システム。
Each of the servers includes distance management means for managing distances from other servers ,
4. The AI processing distribution system according to claim 3 , wherein the entrustee determining means determines the entrustee server based on at least one of the free memory capacity and free processing capacity and distance.
前記処理量決定手段は委託先サーバのメモリ空き容量及び空き処理容量の少なくとも一方に基づいて当該委託先サーバへ委託するAI処理の処理量を決定することを特徴とする請求項3または4に記載のAI処理分散システム。 5. The processing amount determining means determines the processing amount of the AI processing to be entrusted to the entrusted server based on at least one of the free memory capacity and free processing capacity of the entrusted server. AI processing distributed system. 前記AI処理がニューラルネットワークを利用したAI処理であり、入力層、中間層および出力層の各層単位で分散処理されることを特徴とする請求項1ないし5のいずれかに記載のAI処理分散システム。 The AI processing distributed system according to any one of claims 1 to 5 , wherein the AI processing is an AI processing using a neural network, and distributed processing is performed in each layer unit of an input layer, an intermediate layer, and an output layer. . 前記AI処理がDNN(Deep Neural Network)であり、前記中間層が隠れ層単位で分散処理されることを特徴とする請求項に記載のAI処理分散システム。 7. The AI processing distributed system according to claim 6 , wherein the AI processing is DNN (Deep Neural Network), and the intermediate layer is distributedly processed in units of hidden layers. 多層構造のニューラルネットワークに入力されたデータをAI情報としてソフトウェアにより層単位で演算処理するAI処理を委託元サーバ及び委託先サーバを含む複数のサーバで分散処理する方法において、
委託元サーバは入力されたAI情報の分散処理を一の委託先サーバへ委託し、
各委託先サーバは
AI情報を取得し、
取得したAI情報の一部をAI処理し、
AI処理の委託先サーバを決定し、
前記委託先サーバへ委託するAI処理の処理量を決定し、
前記決定した処理量のAI処理を前記決定した委託先サーバへ委託し、
前記決定した委託先サーバが他の委託先サーバを更に決定してAI処理を委託することを繰り返すことを特徴とするAI処理分散方法。
In a method of distributing AI processing in which data input into a multi-layered neural network is processed layer by layer by software as AI information, using multiple servers including the outsourcing source server and the outsourcing server ,
The outsource server entrusts the distributed processing of the input AI information to the first outsource server,
Each outsourced server is
Obtain AI information,
AI processes some of the acquired AI information,
Determine the outsourced server for AI processing,
Determine the amount of AI processing to be entrusted to the outsourced server ,
Outsourcing the AI processing of the determined processing amount to the determined outsourcing server ,
An AI processing distribution method characterized in that the determined entrusted server repeats the process of further determining another entrusted server and entrusting the AI processing to the other entrusted server.
JP2020165675A 2020-09-30 2020-09-30 AI processing distribution method and system Active JP7372221B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020165675A JP7372221B2 (en) 2020-09-30 2020-09-30 AI processing distribution method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020165675A JP7372221B2 (en) 2020-09-30 2020-09-30 AI processing distribution method and system

Publications (2)

Publication Number Publication Date
JP2022057428A JP2022057428A (en) 2022-04-11
JP7372221B2 true JP7372221B2 (en) 2023-10-31

Family

ID=81110294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020165675A Active JP7372221B2 (en) 2020-09-30 2020-09-30 AI processing distribution method and system

Country Status (1)

Country Link
JP (1) JP7372221B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119865831A (en) * 2023-10-20 2025-04-22 大唐移动通信设备有限公司 Processing method and device for artificial intelligent service
CN120872513A (en) * 2024-04-29 2025-10-31 华为技术有限公司 Task notification method and device
CN118921373B (en) * 2024-07-18 2025-11-28 中国移动通信集团广东有限公司 Distributed virtual robot AI system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003208414A (en) 2002-01-11 2003-07-25 Hitachi Ltd Server and client with load balancing function
JP2006260400A (en) 2005-03-18 2006-09-28 Fujitsu Ltd Computer device status monitoring method
WO2018011842A1 (en) 2016-07-11 2018-01-18 株式会社Uei Computation system using hierarchical network
JP2018147301A (en) 2017-03-07 2018-09-20 株式会社日立製作所 Computer system and process allocation method
JP2019053581A (en) 2017-09-15 2019-04-04 沖電気工業株式会社 Information processing system, information processing device, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003208414A (en) 2002-01-11 2003-07-25 Hitachi Ltd Server and client with load balancing function
JP2006260400A (en) 2005-03-18 2006-09-28 Fujitsu Ltd Computer device status monitoring method
WO2018011842A1 (en) 2016-07-11 2018-01-18 株式会社Uei Computation system using hierarchical network
JP2018147301A (en) 2017-03-07 2018-09-20 株式会社日立製作所 Computer system and process allocation method
JP2019053581A (en) 2017-09-15 2019-04-04 沖電気工業株式会社 Information processing system, information processing device, and program

Also Published As

Publication number Publication date
JP2022057428A (en) 2022-04-11

Similar Documents

Publication Publication Date Title
JP7372221B2 (en) AI processing distribution method and system
EP3255586A1 (en) Method, program, and apparatus for comparing data graphs
GB2538847A (en) Joint Depth estimation and semantic segmentation from a single image
Guruprasad et al. Heterogeneous locational optimisation using a generalised Voronoi partition
Kim et al. Prediction based sub-task offloading in mobile edge computing
US12299800B2 (en) Collision detection for object rearrangement using a 3D scene representation
CN112560962A (en) Skeleton animation posture matching method and device, electronic equipment and storage medium
CN114742466B (en) Scheduling method, device, equipment, system and storage medium of robot
Plappert et al. Multi-agent systems in mechanical engineering: a review
CN117014963A (en) Methods, devices, computing devices and storage media for joint task offloading
Deepthi et al. Optimized data storage algorithm of IoT based on cloud computing in distributed system
CN106572185A (en) Method and apparatus for cooperative work of nodes in mobile Internet system
CN113190339A (en) Task processing method and device
CN113254200B (en) Resource Orchestration Method and Agent
Sato et al. Multi-Agent Task Allocation Based on Reciprocal Trust in Distributed Environments
Shi et al. Research on scheduling of cloud manufacturing resources based on bat algorithm and cellular automata
JP2022182286A (en) Route derivation system and route derivation method
Zhou et al. Waste not, want not: service migration-assisted federated intelligence for multi-modality mobile edge computing
Nagarajan et al. An algorithm for cooperative task allocation in scalable, constrained multiple robot systems
Yadav et al. Two-phase real-time task offloading framework for edge-IoT systems using spiking neuromorphic coordination and holographic memory reuse
Mishra Artificial intelligence-based load balancing in cloud computing environment: a study
Ovalle et al. Distributed Cache Strategies for Machine Learning Classification Tasks over Cluster Computing Resources
Liu et al. Decision-focused graph neural networks for combinatorial optimization
Mazloomi et al. Trust-based knowledge sharing among federated learning servers in vehicular edge computing
Zeng et al. Fork and join queueing networks with heavy tails: Scaling dimension and throughput limit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230706

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: 20231011

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231019

R150 Certificate of patent or registration of utility model

Ref document number: 7372221

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150