JP2022526333A - Data processing methods and equipment, computer devices, recording media, and computer programs - Google Patents

Data processing methods and equipment, computer devices, recording media, and computer programs Download PDF

Info

Publication number
JP2022526333A
JP2022526333A JP2021557139A JP2021557139A JP2022526333A JP 2022526333 A JP2022526333 A JP 2022526333A JP 2021557139 A JP2021557139 A JP 2021557139A JP 2021557139 A JP2021557139 A JP 2021557139A JP 2022526333 A JP2022526333 A JP 2022526333A
Authority
JP
Japan
Prior art keywords
prefetch
sample data
target
step size
adjustment step
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
JP2021557139A
Other languages
Japanese (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.)
Shanghai Sensetime Intelligent Technology Co Ltd
Original Assignee
Shanghai Sensetime Intelligent Technology 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 Shanghai Sensetime Intelligent Technology Co Ltd filed Critical Shanghai Sensetime Intelligent Technology Co Ltd
Publication of JP2022526333A publication Critical patent/JP2022526333A/en
Pending legal-status Critical Current

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本発明は、深層学習モデルのトレーニングに用いられる、データ処理方法と装置、コンピュータデバイス、記録媒体、及びコンピュータプログラムを提供し、当該方法は、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることと、プリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納することと、を含む。【選択図】図1The present invention provides a data processing method and apparatus, a computer device, a recording medium, and a computer program used for training a deep learning model, the method performing a first update process on a prefetch quantity of sample data. In response to obtaining the target prefetch quantity and responding that the quantity of sample data currently contained in the prefetch sample data queue has not reached the target prefetch quantity, the new sample data is read and read. Includes storing the prefetch sample data cune with new sample data. [Selection diagram] Fig. 1

Description

<関連出願の相互引用>
本発明は、出願番号が201911403669.4であり、出願日が2019年12月30日である中国特許出願の優先権を主張し、当該中国特許出願の全ての内容が援用により本願に組み入れられる。
本発明は、機械学習技術分野に関し、具体的には、データ処理方法と装置、コンピュータデバイス、記録媒体、及びコンピュータプログラムに関する。
<Mutual citation of related applications>
The present invention claims priority for a Chinese patent application with application number 200911403669.4 and filing date December 30, 2019, the entire contents of which are incorporated herein by reference.
The present invention relates to the field of machine learning technology, specifically to data processing methods and devices, computer devices, recording media, and computer programs.

深層学習モデルは、大量のサンプルデータに基づく複数回の反復トレーニングを必要とする。機械学習モデルのトレーニング過程での収束速度を向上させるために、通常、マルチプロセス並列トレーニングの方法を採用して実現している。マルチプロセス並列トレーニングの方法を採用して深層学習モデルに対してトレーニングを実行するときに、今回のトレーニングの計算タスクを実行する同時に、各々の並列プロセスで次回のトレーニングに必要なトレーニングデータを事前に読み取ることになる。各々の並列プロセスは、当該回のトレーニングを実行した後に、すべてのプロセス間で通信およびデータ同期化を実行する必要があり、あるプロセスで次回のトレーニングに利用するトレーニングデータを読み取る速度が遅すぎると、トレーニングプロセス全体が遅延され、トレーニング効率の低下につながる。 Deep learning models require multiple iterative trainings based on large amounts of sample data. In order to improve the convergence speed in the training process of the machine learning model, it is usually realized by adopting the method of multi-process parallel training. When training is performed on a deep learning model by adopting the method of multi-process parallel training, the calculation task of this training is executed, and at the same time, the training data required for the next training is prepared in advance in each parallel process. It will be read. Each parallel process must perform communication and data synchronization between all processes after performing that round of training, and if one process reads the training data used for the next training too slowly. , The entire training process is delayed, leading to reduced training efficiency.

本発明の実施例は、データ処理方法および装置を少なくとも提供する。 The embodiments of the present invention provide at least a data processing method and apparatus.

第1の態様によると、本発明の実施例は、1つまたは複数のプロセスを含む、深層学習モデルのトレーニングに、適用されるデータ処理方法を提供し、当該方法は、前記1つまたは複数のプロセスの中の1つの目標プロセスに対して、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることと、前記目標プロセスに対応するプリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納することと、を含む。 According to a first aspect, embodiments of the invention provide a data processing method that is applied to training a deep learning model that includes one or more processes, the method of which is said one or more. For one target process in the process, the first update process is executed for the prefetch quantity of sample data to obtain the target prefetch quantity, and it is currently included in the prefetch sample data queue corresponding to the target process. In response to the quantity of the sample data being read not reaching the target prefetch quantity, the new sample data is read and the read new sample data is stored in the prefetch sample data queue.

このようにして、メインプロセスは、プリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、データキューに現在含まれているサンプルデータ量が目標プリフェッチ数量に達してないときに、サンプルデータプールから新たなサンプルデータを読み取るため、メインプロセスは、1回の反復トレーニングを実行した後に、次の1回の反復トレーニングに必要なサンプルデータの読み取りがすでに完了されることになる。実際のほとんどの場合、メインプロセスがデータを読み取るのにかかる時間は、1つの反復トレーニングを実行するのにかかる時間よりも短いことが多いため、データキュー中に十分な数量のサンプルデータが常に格納されて後続のいくつかの反復トレーニングの使用を満たすように確保することができ、メインプロセスが特定のサンプルデータの読み取るのにかかる時間が長すぎても、サンプル数量が時間内に読み取られなくて反復トレーニングに遅延が発生されることを回避することができ、トレーニング効率を向上させた。 In this way, the main process performs the first update process on the prefetch quantity to obtain the target prefetch quantity, and when the sample data amount currently contained in the data queue has not reached the target prefetch quantity. To read new sample data from the sample data pool, the main process will perform one iterative training and then complete the reading of the sample data required for the next one iterative training. In most cases in practice, the time it takes for the main process to read the data is often shorter than the time it takes to perform one iterative training, so a sufficient amount of sample data is always stored in the data queue. It can be ensured to meet the use of some subsequent iterative training, and if the main process takes too long to read certain sample data, the sample quantity will not be read in time. It was possible to avoid delays in repetitive training and improve training efficiency.

可能な1実施形態において、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることを含む。 In one possible embodiment, performing the first update process on the prefetch quantity of the sample data to obtain the target prefetch quantity is currently occupied by the prefetch sample data queue corresponding to the one or more processes. It includes executing the first update process for the prefetch quantity of the sample data to obtain the target prefetch quantity based on the total memory space and the memory usage upper limit threshold.

このようにして、プリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量を動的に更新することができ、プリフェッチサンプルデータの量を柔軟に割り当てることができて、トレーニングの要件を満たすことができる。 In this way, the prefetch quantity of the sample data can be dynamically updated based on the total memory space currently occupied by the prefetch sample data queue and the upper limit of memory usage, and the amount of prefetch sample data can be flexibly updated. Can be assigned to meet training requirements.

可能な1実施形態において、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して前記目標プリフェッチ数量を得ることを含む。 In one possible embodiment, the first update to the prefetch quantity of the sample data is based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the upper memory usage threshold. Performing processing to obtain the target prefetch quantity is the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes, the memory usage limit, and the deep layer of the target process. It includes performing a first update process on the prefetch quantity of the sample data to obtain the target prefetch quantity based on the data throughput for performing training on the training model.

このようにして、プリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、前記深層学習モデルをトレーニングするときのデータスループットに基づいて、プリフェッチ数量を動的に更新し、データスループットが増加されるときに、プリフェッチサンプルデータキュー中のデータ量がサンプルデータの消費に追いつくことができるようにし、データスループットが減少されるときに、プリフェッチサンプルデータキューによって占有されるメモリの量を可能な限り減少し、余剰のメモリを他の作業に使用することができ、調整がより柔軟になる。 In this way, the prefetch quantity is dynamically updated based on the total memory space currently occupied by the prefetch sample data queue, the upper memory usage threshold, and the data throughput when training the deep learning model. Allows the amount of data in the prefetch sample data queue to keep up with the consumption of sample data when the data throughput increases, and the amount of memory occupied by the prefetch sample data queue when the data throughput decreases. Can be reduced as much as possible and excess memory can be used for other tasks, making adjustments more flexible.

可能な1実施形態において、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ること、および/または、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達した場合、前記プリフェッチ数量を第2調節ステップサイズだけ減少して前記目標プリフェッチ数量を得ることを含む。 In one possible embodiment, the first update to the prefetch quantity of the sample data is based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the upper limit memory usage threshold. Performing processing to obtain the target prefetch quantity is the prefetch if the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold. The quantity is increased by the first adjustment step size to obtain the target prefetch quantity, and / or the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes is the memory usage. When the upper limit threshold is reached, the prefetch quantity is reduced by the second adjustment step size to obtain the target prefetch quantity.

このようにして、プリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合には、可能な限りプリフェッチサンプルデータを増加し、プリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達した場合には、サンプルデータのプリフェッチ数量を減少することによって、プリフェッチサンプルデータキューの長さを柔軟に調整することができる。 In this way, if the total memory space currently occupied by the prefetch sample data queue does not reach the memory usage upper limit threshold, the prefetch sample data is increased as much as possible and the prefetch sample data queue is currently occupied. When the total memory space is reached the upper limit of memory usage, the length of the prefetch sample data queue can be flexibly adjusted by reducing the prefetch quantity of the sample data.

可能な1実施形態において、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ることは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットが所定のデータスループット条件を満たす場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ることを含む。 In one possible embodiment, if the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes has not reached the memory usage upper bound threshold, the prefetch quantity is adjusted in the first adjustment step. Increasing by size to obtain the target prefetch quantity means that the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes has not reached the memory usage upper limit threshold and When the data throughput for executing training for the deep learning model of the target process satisfies a predetermined data throughput condition, the prefetch quantity may be increased by the first adjustment step size to obtain the target prefetch quantity. include.

可能な1実施形態において、前記方法は、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記データスループットが前記所定のデータスループット条件を満たさない場合、前記プリフェッチ数量を第3調節ステップサイズだけ減少して前記目標プリフェッチ数量を得ることをさらに含む。 In one possible embodiment, the method is such that the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit and the data throughput. Further includes reducing the prefetch quantity by a third adjustment step size to obtain the target prefetch quantity if does not meet the predetermined data throughput condition.

可能な1実施形態において、前記所定のデータスループット条件は、前記データスループットの現在数値が履歴数値よりも大きいことと、前記データスループットの現在数値がデータスループット閾値よりも大きいことと、の中の少なくとも1つを含み、ここで、前記履歴数値は、現在の反復トレーニングの前の複数の履歴反復トレーニングのときの前記データスループットの平均値、または、現在の反復トレーニングの前の1回の反復トレーニングのときの前記データスループットの数値である。 In one possible embodiment, the predetermined data throughput condition is such that the current value of the data throughput is larger than the historical value and the current value of the data throughput is larger than the data throughput threshold. Including one, where the historical figures are the average value of the data throughput at the time of multiple historical iterative trainings prior to the current iterative training, or the one-time iterative training prior to the current iterative training. It is a numerical value of the said data throughput at the time.

可能な1実施形態において、前記方法は、前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得ることをさらに含み、ここで、前記目標調節ステップサイズは、前記プリフェッチ数量の次の1回の更新処理に使用される。 In one possible embodiment, the method further comprises performing a second update process on the prefetch quantity adjustment step size to obtain a target adjustment step size, wherein the target adjustment step size is: It is used for the next one-time update process of the prefetch quantity.

可能な1実施形態において、前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得ることは、前記第1更新処理中に前記プリフェッチ数量を増加する場合、前記プリフェッチ数量の調節ステップサイズを増加すること、および/または、前記第1更新処理中に前記プリフェッチ数量を減少する場合、前記プリフェッチ数量の調節ステップサイズを減少することを含む。 In one possible embodiment, performing the second update process for the adjustment step size of the prefetch quantity to obtain the target adjustment step size is the case where the prefetch quantity is increased during the first update process. Increasing the prefetch quantity adjustment step size and / or decreasing the prefetch quantity adjustment step size during the first update process includes decreasing the prefetch quantity adjustment step size.

このようにして、プリフェッチ数量を増加する必要があるときに、プリフェッチ数量をより速く増加することによって、プリフェッチサンプルデータキューに格納したサンプルデータがより多い数量により速く達するようにより速く保証し、後続のトレーニング反復サイクルの使用の要件を満たすことができ、プリフェッチ数量が少なすぎてモデルトレーニング過程が遅延されることを回避する同時に、プリフェッチ数量を減少する必要があるときに、プリフェッチ数量をより緩やかに減少して、プリフェッチサンプルデータキューの長さの変化がよりスムーズになるように保証することができ、プリフェッチサンプルデータの数量の急激な減少によるトレーニング過程のショックを回避することができる。 In this way, when the prefetch quantity needs to be increased, increasing the prefetch quantity faster ensures that the sample data stored in the prefetch sample data queue reaches the larger quantity faster and subsequent. Decrease the prefetch quantity more slowly when the requirements for using the training iteration cycle can be met and the prefetch quantity is not too small to delay the model training process, while at the same time the prefetch quantity needs to be reduced. Therefore, it is possible to guarantee that the change in the length of the prefetch sample data queue becomes smoother, and it is possible to avoid the shock of the training process due to the sudden decrease in the quantity of the prefetch sample data.

第2の態様によると、本発明の実施例は、1つまたは複数のプロセスを含む、深層学習モデルのトレーニングに、適用されるデータ処理装置をさらに提供し、当該装置は、前記1つまたは複数のプロセスの中の1つの目標プロセスに対して、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るための第1更新モジュールと、前記目標プロセスに対応するプリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納するための読取りモジュールと、を備える。 According to a second aspect, embodiments of the invention further provide a data processing apparatus applicable to training a deep learning model, comprising one or more processes, the apparatus being said one or more. For one target process in the process, the first update module for executing the first update process for the prefetch quantity of sample data to obtain the target prefetch quantity, and the prefetch sample corresponding to the target process. In response to the quantity of sample data currently contained in the data queue not reaching the target prefetch quantity, new sample data is read and the read new sample data is stored in the prefetch sample data queue. It is equipped with a read module for.

第3の態様によると、本発明の実施例は、コンピュータデバイスをさらに提供し、当該コンピュータデバイスは、プロセッサと、記録媒体と、バスと、を備え、前記記録媒体には、前記プロセッサによって実行可能な機械可読命令が記録されており、コンピュータデバイスが運行されるときに、前記プロセッサと前記記録媒体との間はバスを介して通信し、前記機械可読命令が前記プロセッサによって実行されると、上述した第1の態様または第1の態様の任意の可能な1実施形態のステップが実行される。 According to a third aspect, an embodiment of the present invention further provides a computer device, wherein the computer device comprises a processor, a recording medium, and a bus, the recording medium being feasible by the processor. A machine-readable instruction is recorded, and when the computer device is operated, the processor and the recording medium communicate with each other via a bus, and the machine-readable instruction is executed by the processor. The steps of the first aspect or any possible embodiment of the first aspect are carried out.

第4の態様によると、本発明の実施例は、コンピュータ可読記録媒体をさらに提供し、当該コンピュータ可読記録媒体には、コンピュータプログラムが記録されており、当該コンピュータプログラムがプロセッサによって運行されるときに、上述した第1の態様または第1の態様の任意の可能な1実施形態のステップが実行される。 According to a fourth aspect, an embodiment of the present invention further provides a computer-readable recording medium, in which a computer program is recorded and the computer program is operated by a processor. , The steps of the first aspect described above or any possible embodiment of the first aspect are performed.

以下、本発明の上記の目的、特徴、および、利点をより明白かつ理解可能にするために、好ましい実施例を挙げて、図面を参照して詳細に説明する。 Hereinafter, in order to make the above-mentioned object, features, and advantages of the present invention more clear and understandable, preferred embodiments will be given and described in detail with reference to the drawings.

以下、本発明の実施例の技術的解決策をより明確に説明するために、実施例に必要な図面を簡単に紹介する。ここでの図面は、明細書に組み込まれて本明細書の一部を構成し、これら図面は本発明に合致する実施例を示し、明細書と一緒に本発明の技術的解決策を説明する。以下の図面は、本発明のいくつかの実施例を示すだけであり、範囲を限定するものと見なされるべきではないと理解すべきである。当業者は、創造的な作業なしで、これら図面に基づいて他の関連する図面を得ることができる。
本発明の実施例によって提供されるデータ処理方法を示すフローチャートである。 本発明の実施例によって提供されるデータ処理装置を示す模式図である。 本発明の実施例によって提供されるコンピュータデバイスを示す模式図である。
Hereinafter, in order to more clearly explain the technical solution of the embodiment of the present invention, the drawings required for the embodiment will be briefly introduced. The drawings herein are incorporated herein to form a portion of the specification, which drawings show examples in line with the invention and together with the specification describe technical solutions of the invention. .. It should be understood that the drawings below show only some embodiments of the present invention and should not be considered as limiting the scope. One of ordinary skill in the art can obtain other related drawings based on these drawings without any creative work.
It is a flowchart which shows the data processing method provided by the Example of this invention. It is a schematic diagram which shows the data processing apparatus provided by the Example of this invention. It is a schematic diagram which shows the computer device provided by the Example of this invention.

以下、本発明の実施例の目的、技術的解決策、および、利点をより明確にするために、本発明の実施例の図面を参照して、本発明の実施例の技術的解決策を明確かつ完全に説明する。勿論ながら、説明する実施例は、全部の実施例ではなく、本発明の一部の実施例に過ぎない。通常、ここでの図面で記載および表示する本発明の実施例のコンポーネントは、さまざまな異なる構成で配置および設計することができる。したがって、以下の図面に提供される本発明の実施例の詳細な説明は、請求された本開示の範囲を限定することを意図するものではなく、単に本開示の選択された実施形態を表す。本発明の実施例に基づいて、創造的な作業なしに当業者によって得られた他のすべての実施形態は、本開示の保護範囲に含まれるものとする。 Hereinafter, in order to further clarify the purpose, technical solution, and advantage of the embodiment of the present invention, the technical solution of the embodiment of the present invention is clarified with reference to the drawings of the embodiment of the present invention. And I will explain it completely. Of course, the examples described are not all examples, but only a part of the present invention. Typically, the components of the embodiments of the invention described and displayed in the drawings herein can be arranged and designed in a variety of different configurations. Accordingly, the detailed description of the embodiments of the invention provided in the following drawings is not intended to limit the scope of the claimed disclosure, but merely represents a selected embodiment of the present disclosure. All other embodiments obtained by one of ordinary skill in the art based on the embodiments of the present invention without creative work shall be included in the scope of protection of the present disclosure.

調査の結果、マルチプロセス並列トレーニングの方法を採用して深層学習モデルをトレーニングするときに、今回のトレーニングの計算を実行する同時に、各々のプロセスはいずれも次回のトレーニングに必要なトレーニングデータを事前に読み取ることになる。各々の並列プロセスは、今回のトレーニングを実行した後に、他のプロセスと通信およびデータ同期化を実行し、すべてのプロセスの通信およびデータ同期化が完了された後に、次回のトレーニングタスクを開始する必要がある。ここで任意のプロセスのトレーニングタスクに時間の遅延が発生されると、たとえば次回のトレーニングに使用するトレーニングデータを事前に読み取るときに、読み取る時間が今回のトレーニングタスクの実行時間を超えると、すべてのプロセスのトレーニングタスクにいずれも時間の遅延が発生されることになり、トレーニング効率の低下につながる。 As a result of the research, when training the deep learning model by adopting the method of multi-process parallel training, the calculation of this training is performed, and at the same time, each process has the training data necessary for the next training in advance. It will be read. Each parallel process should perform communication and data synchronization with other processes after performing this training, and start the next training task after all processes have completed communication and data synchronization. There is. If there is a time delay in the training task of any process here, for example, when pre-reading the training data to be used for the next training, if the reading time exceeds the execution time of this training task, all All training tasks in the process will be delayed in time, leading to reduced training efficiency.

上述した調査に鑑みて、本発明は、深層学習モデルトレーニングに適用されるデータ処理方法および装置を提供する。当該データ処理方法は、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、プリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納することによって、メインプロセスが1回の反復トレーニングを実行した後に、次の1回の反復トレーニングに必要なサンプルデータの読み取りがすでに完了されるようにすることができる。メインプロセスは、プリフェッチ数量を動的に更新して、目標プリフェッチ数量を得、データキューに現在含まれているサンプルデータ量が目標プリフェッチ数量に達してないときに、サンプルデータプールから新たなサンプルデータを読み取る。ほとんどの場合、メインプロセスが新たなサンプルデータを読み取るのみかかる時間が1つの反復トレーニングを実行するのにかかる時間よりも短いことが多いため、データキュー中に十分な数量のサンプルデータが常に格納されて後続のいくつかの反復トレーニングの使用を満たすように確保することができ、メインプロセスが特定のサンプルデータの読み取るのにかかる時間がながすぎても、サンプル数量が足りないで反復トレーニングに遅延が発生することがなく、トレーニング効率を向上させた。 In view of the investigations described above, the present invention provides data processing methods and devices applicable to deep learning model training. In the data processing method, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity, and the quantity of the sample data currently contained in the prefetch sample data queue reaches the target prefetch quantity. In response to the absence, the new sample data is read and the read new sample data is stored in the prefetch sample data queue so that the main process performs one iterative training and then the next one. It is possible to ensure that the reading of the sample data required for the iterative training of is already completed. The main process dynamically updates the prefetch quantity to get the target prefetch quantity, and when the amount of sample data currently contained in the data queue does not reach the target prefetch quantity, new sample data from the sample data pool. To read. In most cases, the data queue always stores a sufficient amount of sample data because the main process only takes less time to read new sample data than it takes to perform one iterative training. Can be ensured to meet the use of several subsequent iterative trainings, and if the main process takes too long to read certain sample data, the sample quantity is insufficient and the iterative training is delayed. The training efficiency was improved without the occurrence of.

従来の解決策に存在する欠陥は、発明者の実践と注意深い研究後の結果であり、したがって、上記の問題の発見過程および本発明で提案された解決策は、すべて本開示のプロセス中の本開示への発明者の貢献であるべきである。 The deficiencies present in conventional solutions are the result of the inventor's practice and careful study, and therefore the process of finding the above problems and the solutions proposed in the present invention are all books in the process of this disclosure. It should be the inventor's contribution to the disclosure.

以下、本発明の図面を参照して、本発明中の技術的解決策を明確かつ完全に説明する。勿論ながら、説明する実施例は、全部の実施例ではなく、本発明の一部の実施例に過ぎない。通常、ここでの図面で記載および表示する本発明の実施例のコンポーネントは、さまざまな異なる構成で配置および設計することができる。したがって、以下の図面に提供される本発明の実施例の詳細な説明は、請求された本開示の範囲を限定することを意図するものではなく、単に本開示の選択された実施形態を表す。本発明の実施例に基づいて、創造的な作業なしに当業者によって得られた他のすべての実施形態は、本開示の保護範囲に含まれるものとする。 Hereinafter, the technical solutions in the present invention will be described clearly and completely with reference to the drawings of the present invention. Of course, the examples described are not all examples, but only a part of the present invention. Typically, the components of the embodiments of the invention described and displayed in the drawings herein can be arranged and designed in a variety of different configurations. Accordingly, the detailed description of the embodiments of the invention provided in the following drawings is not intended to limit the scope of the claimed disclosure, but merely represents a selected embodiment of the present disclosure. All other embodiments obtained by one of ordinary skill in the art based on the embodiments of the present invention without creative work shall be included in the scope of protection of the present disclosure.

以下の図面では、類似の符号と文字が類似の項目を示していることに注意すべきである。したがって、1つの図面で項目を定義すると、後続の図面でさらに定義および解析する必要はない。 It should be noted that in the drawings below, similar signs and letters indicate similar items. Therefore, defining an item in one drawing does not require further definition and analysis in subsequent drawings.

本実施例に対する理解を容易にするために、まず、本発明の実施例によって開示されるデータ処理方法を詳細に説明する。本発明の実施例によって提供されるデータ処理方法は、深層学習モデルのトレーニングに適用される。その実行主体は、一般的に、深層学習モデルをトレーニングするメインプロセスまたはサブプロセスである。可能な一部の実現形態において、当該データ処理方法は、プロセッサによりメモリに格納されているコンピュータ可読命令を呼び出す方式によって実現され得る。 In order to facilitate understanding of the present embodiment, first, the data processing method disclosed by the embodiment of the present invention will be described in detail. The data processing methods provided by the embodiments of the present invention apply to training deep learning models. Its execution subject is generally the main process or subprocess that trains the deep learning model. In some possible implementations, the data processing method may be implemented by a method of calling a computer-readable instruction stored in memory by a processor.

以下、実行主体が少なくとも1つのメインプロセスの中の任意のメインプロセスである例をとって、本発明の実施例によって提供されるデータ処理方法を説明する。 Hereinafter, the data processing method provided by the embodiment of the present invention will be described by taking an example in which the execution subject is an arbitrary main process in at least one main process.

図1は、本発明の実施例によって提供されるデータ処理方法のフローチャートであり、当該方法は、ステップS101~S102を含み、ここで、
S101において、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
S102において、プリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った新たなサンプルデータをプリフェッチサンプルデータキュー中に格納する。
FIG. 1 is a flowchart of a data processing method provided by an embodiment of the present invention, which method comprises steps S101 to S102, wherein the method comprises steps S101 to S102.
In S101, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
In S102, in response to the fact that the quantity of sample data currently contained in the prefetch sample data queue has not reached the target prefetch quantity, new sample data is read and the read new sample data is used in the prefetch sample data queue. Store inside.

以下、上述したS101~S102をそれぞれ詳細に説明する。 Hereinafter, the above-mentioned S101 to S102 will be described in detail.

I:上述したS101において、1つのメインプロセスがある場合、1つのメインプロセスは、深層学習モデルをトレーニングし、かつ、当該メインプロセスは、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることができる。 I: In S101 described above, when there is one main process, one main process trains the deep learning model, and the main process executes the first update process for the prefetch quantity of the sample data. The target prefetch quantity can be obtained.

複数のメインプロセスがある場合、複数のメインプロセスは、深層学習モデルに対して並列トレーニングを実行し、各々のメインプロセスは、それぞれサンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることができる。ここで、異なるメインプロセスに対応するプリフェッチ数量は、異なることができ、異なるメインプロセスに対応する目標プリフェッチ数量も、異なることができる。 If there are multiple main processes, the multiple main processes perform parallel training on the deep learning model, and each main process performs the first update process on the prefetch quantity of the sample data. You can get the prefetch quantity. Here, the prefetch quantities corresponding to different main processes can be different, and the target prefetch quantities corresponding to different main processes can also be different.

各メインプロセスは、1つのプリフェッチサンプルデータキューに対応し、任意のメインプロセスに対応するプリフェッチサンプルデータキューには、複数のサンプルデータが格納されており、かつ、各メインプロセスは、対応するプリフェッチサンプルデータキューに格納されているサンプルデータに基づいて深層学習モデルをトレーニングする。 Each main process corresponds to one prefetch sample data queue, and the prefetch sample data queue corresponding to any main process contains a plurality of sample data, and each main process has a corresponding prefetch sample. Train a deep learning model based on the sample data stored in the data queue.

当該プリフェッチサンプルデータキューは、たとえば、先入れ先出しキューである。メインプロセスは、1つの新たな反復トレーニングを開始するときに、まず当該メインプロセスに対応するプリフェッチサンプルデータキューから1組のサンプルデータを読み取る。当該組のサンプルデータは、読み取られた後に、プリフェッチサンプルデータキューから削除されて、新たなサンプルデータのために格納位置を確保する。 The prefetch sample data queue is, for example, a first-in first-out queue. When starting a new iterative training, the main process first reads a set of sample data from the prefetch sample data queue corresponding to the main process. After being read, the set of sample data is deleted from the prefetch sample data queue to reserve a storage position for new sample data.

ここで、1つの反復トレーニングで、メインプロセスは1組のサンプルデータに基づいて深層学習モデルをトレーニングすることになり、1組のサンプルデータには少なくとも1つのサンプルデータが含まれることに注意すべきである。本発明の実施例において、プリフェッチ数量とは、サンプルデータ組の数量であり得る。 Note that in one iterative training, the main process will train the deep learning model based on a set of sample data, and one set of sample data will contain at least one sample data. Is. In the embodiment of the present invention, the prefetch quantity can be the quantity of the sample data set.

事前に決定されたプリフェッチ数量更新条件に達してない場合、メインプロセスは、プリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が現在のプリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取る。 If the predetermined prefetch quantity update condition is not reached, the main process responds that the quantity of sample data currently contained in the prefetch sample data queue has not reached the current prefetch quantity. Read the sample data.

事前に決定されたプリフェッチ数量更新条件に達した場合、メインプロセスは、サンプルデータの現在のプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、メインプロセスは、プリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取る。ここで、サンプルデータのプリフェッチ数量と目標プリフェッチ数量は、同じでも異なっていてもよい。 When the predetermined prefetch quantity update condition is reached, the main process performs the first update process on the current prefetch quantity of the sample data to obtain the target prefetch quantity, and the main process receives the prefetch sample data queue. Read new sample data in response to the fact that the quantity of sample data currently contained in is not reaching the target prefetch quantity. Here, the prefetch quantity and the target prefetch quantity of the sample data may be the same or different.

具体的に、プリフェッチ数量更新条件は、たとえば以下のa1~a3の中の1つまたは複数を含む。 Specifically, the prefetch quantity update condition includes, for example, one or more of the following a1 to a3.

a1は、所定の更新サイクルに達したことである a1 means that a predetermined update cycle has been reached.

ここで、更新サイクルは、プリフェッチ数量を更新するサイクルである。 Here, the update cycle is a cycle for updating the prefetch quantity.

当該更新サイクルは、たとえば時間サイクルであり、たとえば、更新サイクルが1時間であると、1時間ごとに、1回のプリフェッチ数量に対する第1更新処理をトリガーすることができる。 The update cycle is, for example, a time cycle. For example, if the update cycle is one hour, the first update process for one prefetch quantity can be triggered every hour.

当該更新サイクルは、たとえば所定の数量の反復トレーニングであり、たとえば、メインプロセスは、深層学習モデルに対して5回の反復トレーニングを実行するたびに、1回のプリフェッチ数量に対する第1更新処理をトリガーすることができる。ここで、異なる回の反復トレーニングにかかる時間が互いに異なる可能性があるため、異なる更新サイクルの持続時間も異なることになる。 The update cycle is, for example, a predetermined quantity of iterative training, for example, the main process triggers the first update process for one prefetch quantity for every five iterative trainings performed on the deep learning model. can do. Here, the duration of different update cycles will also be different, as the time required for different repetitive trainings may differ from each other.

a2は、サンプルデータに基づいて深層学習モデルに対してトレーニングするときのデータスループットが第1閾値よりも大きいことである。 A2 is that the data throughput when training the deep learning model based on the sample data is larger than the first threshold value.

ここで、データスループットは、メインプロセスが深層学習モデルに対してトレーニングを実行するときのサンプルデータ処理速度を示すために使用される。メインプロセスが深層学習モデルに対してトレーニングを実行するときのデータスループットが第1閾値よりも大きいと、プリフェッチサンプルデータキューに格納されているサンプルデータに対する消費速度がより速いと見なされる。ここで、より小さいプリフェッチ数量を維持すると、プリフェッチサンプルデータキューに格納されているサンプルデータの数量が、時間内のトレーニングの消費に追いつかない可能性がある。したがって、プリフェッチサンプルデータキューにプリフェッチされたサンプルデータの数量を増加し、サンプルデータのプリフェッチ数量に対する第1更新処理をトリガーすることが考えられる。 Here, the data throughput is used to indicate the speed of sample data processing as the main process trains on the deep learning model. If the data throughput when the main process trains on the deep learning model is greater than the first threshold, it is considered to consume faster for the sample data stored in the prefetch sample data queue. Here, if a smaller prefetch quantity is maintained, the quantity of sample data stored in the prefetch sample data queue may not keep up with the consumption of training in time. Therefore, it is conceivable to increase the quantity of sample data prefetched in the prefetch sample data queue and trigger the first update process for the prefetch quantity of the sample data.

a2.1:ここで、たとえば、以下の方法を採用してデータスループットを得る。
プリフェッチ数量更新条件に達したことに応答して、プリフェッチ数量更新条件に達したときの深層学習モデルに対するトレーニング進行状況に基づいて、複数の履歴反復トレーニングから、少なくとも1つの目標反復トレーニングを確定し、また、各々の目標反復トレーニングに使用するサンプルデータ組に含まれているサンプルデータの数量、および、各々の目標反復トレーニングにかかる時間に基づいて、サンプルデータに基づいて深層学習モデルに対してトレーニングを実行するときのデータスループットを確定する。
a2.1: Here, for example, the following method is adopted to obtain the data throughput.
In response to reaching the prefetch quantity update condition, at least one target iterative training is determined from multiple historical iterative trainings based on the training progress for the deep training model when the prefetch quantity update condition is reached. Also, based on the quantity of sample data contained in the sample data set used for each target iterative training and the time taken for each target iterative training, the deep learning model is trained based on the sample data. Determine the data throughput when running.

ここで、目標反復トレーニングは、たとえば、プリフェッチ数量更新条件に達したタイミングに一番近い少なくとも1つの反復トレーニングである。 Here, the target iterative training is, for example, at least one iterative training closest to the timing when the prefetch quantity update condition is reached.

たとえば、あるメインプロセスは、すでに深層学習モデルに対して5回の反復トレーニングを実行し、かつ、プリフェッチ数量更新条件に達したときに、深層学習モデルに対して6回目の反復トレーニングを実行している。ここで、1つの目標反復トレーニングがある場合、5番目の反復トレーニングを目標反復トレーニングとして確定することができる。当該5番目の反復トレーニングにかかる時間が15分であると、使用するサンプルデータの数量は64個であり、データスループットはたとえば64÷15である。 For example, one main process has already performed 5 iterative trainings on a deep learning model, and when the prefetch quantity update condition is reached, it has performed a 6th iterative training on the deep learning model. There is. Here, if there is one target repetitive training, the fifth repetitive training can be determined as the target repetitive training. If the time required for the fifth iterative training is 15 minutes, the quantity of sample data used is 64, and the data throughput is, for example, 64/15.

3つの目標反復トレーニングがある場合、3番目、4番目、及び5番目の反復トレーニングを目標反復トレーニングとして確定することができる。3番目、4番目、及び5番目の反復トレーニングにそれぞれかかる時間が12分、14分、及び15分であり、各反復トレーニングに使用するサンプルデータの数量がいずれも64個であると、データスループットはたとえば64×3÷(12+14+15)であり、単位は個/分である。 If there are three target repetitive trainings, the third, fourth, and fifth repetitive trainings can be defined as target repetitive trainings. Data throughput when the third, fourth, and fifth iterative trainings take 12 minutes, 14 minutes, and 15 minutes, respectively, and the quantity of sample data used for each iterative training is 64, respectively. Is, for example, 64 × 3 ÷ (12 + 14 + 15), and the unit is pieces / minute.

a2.2:もう1実施例において、さらに、現在実行している反復トレーニングを目標反復トレーニングとして確定し、現在実行している反復トレーニング中のすでにトレーニングが完了したサンプルの数量および通じた持続時間に基づいて、データスループットを確定することができる。 a2.2: In another embodiment, further, the repetitive training currently being performed is determined as the target repetitive training, and the quantity and duration of the samples already completed during the repetitive training currently being performed are used. Based on this, the data throughput can be determined.

たとえば、あるメインプロセスがすでに深層学習モデルに対して5回の反復トレーニングを実行し、かつ、プリフェッチ数量更新条件に達したときに、深層学習モデルに対して6番目の反復トレーニングを実行している。6番目の反復トレーニングを目標反復トレーニングとして確定することができる。6番目の反復トレーニングで、1つのサンプルデータ組中の64個のサンプルを使用して深層学習モデルに対してトレーニングを実行する必要がある。現在すでにトレーニングが完了したサンプルデータの数量は30個であり、現在トレーニング反復が通じた持続時間は4分であると、データスループットはたとえば30÷4である。 For example, a main process has already performed 5 iterative trainings on a deep learning model, and when the prefetch quantity update condition is reached, it is performing a 6th iterative training on the deep learning model. .. The sixth repetitive training can be established as the target repetitive training. In the sixth iterative training, it is necessary to train the deep learning model using 64 samples in one sample data set. If the quantity of sample data that has already been trained is 30 and the duration of the training iteration is currently 4 minutes, the data throughput is, for example, 30/4.

a3は、サンプルデータに基づいて深層学習モデルに対してトレーニングを実行するときのデータスループットが第2閾値未満であることである。 A3 is that the data throughput when training the deep learning model based on the sample data is less than the second threshold value.

ここで、第2閾値は、第1閾値未満である。 Here, the second threshold value is less than the first threshold value.

メインプロセスが深層学習モデルに対して実行トレーニングときのデータスループットが第2閾値未満であると、プリフェッチサンプルデータキューに格納されているサンプルデータに対する消費速度が遅すぎると見なされる。ここで、より大きいプリフェッチ数量を維持すると、プリフェッチサンプルデータキューに格納されているサンプルデータが常に蓄積され、より大きなメモリを占有する可能性がある。したがって、プリフェッチサンプルデータキューにプリフェッチされたサンプルデータの数量を減少し、サンプルデータのプリフェッチ数量に対する第1更新処理をトリガーすることが考えられる。 If the data throughput during execution training of the main process for the deep learning model is less than the second threshold, it is considered too slow to consume the sample data stored in the prefetch sample data queue. Here, if a larger prefetch quantity is maintained, the sample data stored in the prefetch sample data queue is always accumulated and may occupy a larger memory. Therefore, it is conceivable to reduce the quantity of sample data prefetched in the prefetch sample data queue and trigger the first update process for the prefetch quantity of the sample data.

ここで、データスループットの確定方法は、上記のa2と類似であり、繰り返して説明しない。 Here, the method of determining the data throughput is similar to the above-mentioned a2, and will not be described repeatedly.

プリフェッチ数量更新条件を満たした後に、たとえば、以下の方法を採用してサンプルデータのプリフェッチ数量に対して第1更新処理を実行することができ、すなわち、
プリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得る。
After satisfying the prefetch quantity update condition, for example, the first update process can be executed for the prefetch quantity of the sample data by adopting the following method, that is,
Based on the total memory space currently occupied by the prefetch sample data queue and the upper limit threshold for memory usage, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.

例示的に、たとえば、プリフェッチサンプルデータキューが占有している合計メモリスペースがメモリ使用上限閾値に達したか否かを検出し、検出結果に基づいてサンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることができる。 Illustratively, for example, it is detected whether or not the total memory space occupied by the prefetch sample data queue has reached the memory usage upper limit threshold value, and the first update process is performed for the prefetch quantity of the sample data based on the detection result. Can be executed to obtain the target prefetch quantity.

ここで、プリフェッチサンプルデータキューが占有している合計メモリスペースとは、すべてのメインプロセスに対応するサンプルデータキューが占有している合計メモリスペースを表す。 Here, the total memory space occupied by the prefetch sample data queue represents the total memory space occupied by the sample data queue corresponding to all the main processes.

具体的に、プリフェッチサンプルデータキューが現在占有している合計メモリスペースがメモリ使用上限閾値に達してない場合、プリフェッチ数量を第1調節ステップサイズだけ増加して、目標プリフェッチ数量を得るし、および/または、
プリフェッチサンプルデータキューが現在占有している合計メモリスペースがメモリ使用上限閾値を達した場合、プリフェッチ数量を第2調節ステップサイズだけ減少して、目標プリフェッチ数量を得る。
Specifically, if the total memory space currently occupied by the prefetch sample data queue has not reached the upper memory usage threshold, the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity, and / or,
When the total memory space currently occupied by the prefetch sample data queue reaches the upper memory usage threshold, the prefetch quantity is reduced by the second adjustment step size to obtain the target prefetch quantity.

ここで、第1調節ステップサイズとは、サンプルデータのプリフェッチ数量を増加するときの調節ステップサイズを表し、第2調節ステップサイズとは、サンプルデータのプリフェッチ数量を減少するときの調節ステップサイズを表す。 Here, the first adjustment step size represents the adjustment step size when the prefetch quantity of the sample data is increased, and the second adjustment step size represents the adjustment step size when the prefetch quantity of the sample data is decreased. ..

ここで、第1調節ステップサイズと第2調節ステップサイズは、同じサイズまたは異なるサイズを有し得る。 Here, the first adjustment step size and the second adjustment step size may have the same size or different sizes.

例示的に、第1調節ステップサイズは、たとえば第2調節ステップサイズよりも大きいし、このような場合、プリフェッチ数量を増加する必要があるときに、プリフェッチ数量をより速く増加することによって、プリフェッチサンプルデータキューに格納したサンプルデータがより多い数量により速く達するようにより速く保証し、後続のトレーニング反復サイクルの使用の要件を満たすことができ、プリフェッチ数量が少なすぎてモデルトレーニング過程が遅延されることを回避することができる。同時に、プリフェッチ数量を減少する必要があるときに、プリフェッチ数量をより緩やかに減少して、プリフェッチサンプルデータキューの長さの変化がよりスムーズになるように保証することができ、プリフェッチサンプルデータの数量の急激な減少によるトレーニング過程のショックを回避することができる。 Illustratively, the first adjustment step size is larger than, for example, the second adjustment step size, and in such cases, when the prefetch quantity needs to be increased, the prefetch sample is increased by increasing the prefetch quantity faster. It guarantees that the sample data stored in the data queue reaches a larger quantity faster, can meet the requirements for use in subsequent training iteration cycles, and the prefetch quantity is too small to delay the model training process. It can be avoided. At the same time, when the prefetch quantity needs to be reduced, the prefetch quantity can be reduced more slowly to ensure smoother changes in the length of the prefetch sample data queue, and the quantity of prefetch sample data. It is possible to avoid the shock of the training process due to the sudden decrease of.

さらに、もう1実施例において、さらに、プリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、深層学習モデルをトレーニングするためのデータスループットに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることができる。 Furthermore, in another embodiment, the prefetch quantity of the sample data is further based on the total memory space currently occupied by the prefetch sample data queue, the upper limit of memory usage, and the data throughput for training the deep learning model. The target prefetch quantity can be obtained by executing the first update process for the data.

ここで、上記の実施例に基づいて、たとえば、プリフェッチサンプルデータキューが現在占有している合計メモリスペースがメモリ使用上限閾値に達してない場合、
深層学習モデルをトレーニングするためのデータスループットが所定のデータスループット条件を満たす場合、プリフェッチ数量を第1調節ステップサイズだけ増加して、目標プリフェッチ数量を得る。
Here, based on the above embodiment, for example, if the total memory space currently occupied by the prefetch sample data queue has not reached the memory usage upper threshold.
If the data throughput for training the deep learning model satisfies a predetermined data throughput condition, the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity.

もう1実施例において、プリフェッチサンプルデータキューが現在占有している合計メモリスペースがメモリ使用上限閾値に達してないし、かつ、データスループット未が所定のデータスループット条件を満たす場合、プリフェッチ数量を第3調節ステップサイズだけ減少して目標プリフェッチ数量を得ることをさらに含む。 In another embodiment, if the total memory space currently occupied by the prefetch sample data queue does not reach the memory usage upper limit threshold and the data throughput not yet meets the predetermined data throughput condition, the prefetch quantity is adjusted to the third adjustment. It further includes reducing the step size by the step size to get the target prefetch quantity.

具体的に、第1調節ステップサイズと第3調節ステップサイズは、同じサイズまたは異なるサイズを有し得る。類似に、第2調節ステップサイズと第3調節ステップサイズは、同じサイズまたは異なるサイズを有し得る。 Specifically, the first adjustment step size and the third adjustment step size may have the same size or different sizes. Similarly, the second adjustment step size and the third adjustment step size may have the same size or different sizes.

もう1実施例において、プリフェッチサンプルデータキューが現在占有している合計メモリスペースがメモリ使用上限閾値に達していると、深層学習モデルをトレーニングするためのデータスループットが所定のデータスループット条件を満たすか否かに関わらず、プリフェッチ数量を第2調節ステップサイズだけ減少して、目標プリフェッチ数量を得る。 In another embodiment, if the total memory space currently occupied by the prefetch sample data queue has reached the upper memory usage threshold, whether the data throughput for training the deep learning model meets a predetermined data throughput condition. Regardless, the prefetch quantity is reduced by the second adjustment step size to get the target prefetch quantity.

上記の所定のデータスループット条件は、以下のb1~b2の中の少なくとも1つを含む。
b1は、データスループットの現在数値が履歴数値よりも大きいことであり、ここで、履歴数値は、現在の反復トレーニングの前の複数の履歴反復トレーニングに対応するデータスループットの平均値、または、現在の反復トレーニングの前の1回の反復トレーニングのデータスループットの数値である。
The above predetermined data throughput condition includes at least one of the following b1 to b2.
b1 is that the current value of the data throughput is larger than the historical value, where the historical value is the average value of the data throughput corresponding to the plurality of historical iterative trainings before the current iterative training, or the current value. It is a numerical value of the data throughput of one iterative training before the iterative training.

具体的な確定方法は、たとえば、上記のa2.1を参照すればよく、ここでは繰り返して説明しない。 For a specific determination method, for example, a2.1 above may be referred to, and the description will not be repeated here.

b2は、データスループットの現在数値がデータスループット閾値よりも大きいことである。 b2 is that the current value of the data throughput is larger than the data throughput threshold.

ここで、データスループットの現在数値は、たとえば、上記のa2.2を参照すればよく、ここでは繰り返して説明しない。 Here, the current numerical value of the data throughput may be referred to, for example, a2.2 above, and will not be repeatedly described here.

また、本発明の実施例によって提供されるデータ処理方法は、上記の実施例に基づいて、
プリフェッチ数量に対する調節ステップサイズ第2更新処理を実行して目標調節ステップサイズを得ることをさらに含み、ここで、目標調節ステップサイズは、プリフェッチ数量の次の1回の更新処理に使用される。
Further, the data processing method provided by the embodiment of the present invention is based on the above embodiment.
It further includes performing an adjustment step size second update process for the prefetch quantity to obtain the target adjustment step size, where the target adjustment step size is used for the next one update process of the prefetch quantity.

ここで、たとえば、第1更新処理でプリフェッチ数量を増加する場合、プリフェッチ数量の調節ステップサイズを増加して目標調節ステップサイズを得るし、および/または、
在第1更新処理中減少プリフェッチ数量の場合、減少プリフェッチ数量の調節ステップサイズ以目標調節ステップサイズを得る。
Here, for example, when the prefetch quantity is increased in the first update process, the adjustment step size of the prefetch quantity is increased to obtain the target adjustment step size, and / or.
In the case of the reduced prefetch quantity during the first update process, the target adjustment step size after the adjustment step size of the reduced prefetch quantity is obtained.

具体的な例は、以下のとおりである。 Specific examples are as follows.

M1、M2、M3、M4、及びM5のような合計5個のプロセスが同一の深層学習モデルのトレーニングタスクを並列に実行している。 A total of five processes, such as M1, M2, M3, M4, and M5, are executing training tasks of the same deep learning model in parallel.

ここで、M1、M2、M3、M4、及びM5は、それぞれ本発明の実施例によって提供されるデータ処理方法を実行する。 Here, M1, M2, M3, M4, and M5 each execute the data processing method provided by the embodiment of the present invention.

M1が当該データ処理方法を実行する例をとる。 Take an example in which M1 executes the data processing method.

例1:メモリ使用上限閾値に基づいてサンプルデータのプリフェッチ数量に対して第1更新処理を実行する。 Example 1: The first update process is executed for the prefetch quantity of the sample data based on the memory usage upper limit threshold.

1.1:M1により、M1に対応するプリフェッチサンプルデータキューL1、M2に対応するプリフェッチサンプルデータキューL2、M3に対応するプリフェッチサンプルデータキューL3、M4に対応するプリフェッチサンプルデータキューL4、および、M5に対応するプリフェッチサンプルデータキューL5が占有している合計メモリスペースがメモリ使用上限閾値に達したか否かを検出し、達してない場合には、1.2(a)と1.2(b)に遷移し、達した場合またはM1が操作システムのメインプロセスにメモリを申し込むときに申し込み失敗になった場合には、1.3に遷移する。 1.1 By M1, the prefetch sample data queue L1 corresponding to M1, the prefetch sample data queue L2 corresponding to M2, the prefetch sample data queue L3 corresponding to M3, the prefetch sample data queue L4 corresponding to M4, and M5 Detects whether or not the total memory space occupied by the prefetch sample data queue L5 corresponding to the above has reached the upper limit of memory usage, and if not, 1.2 (a) and 1.2 (b). ), And if the application fails when M1 applies for memory to the main process of the operation system, the transition to 1.3 occurs.

1.2(a):M1により、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量+第1調節ステップサイズ」であり、ここで、第1調節ステップサイズは、前の1回の調節ステップサイズに対して第2更新処理を実行して得た目標調節ステップサイズである。
1.2 (a): By M1, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
"Target prefetch quantity = prefetch quantity + first adjustment step size", where the first adjustment step size is the target adjustment obtained by executing the second update process for the previous one adjustment step size. The step size.

1.2(b):M1により、第1調節ステップサイズに対して第2更新処理を実行する。
「今回の第2更新処理の後に得られた目標調節ステップサイズ=第1調節ステップサイズ*2」であり、すなわち、次の1回の第1更新処理に使用する第1調節ステップサイズは、今回の第1更新処理に使用する調節ステップサイズの2倍である。
1.2 (b): The second update process is executed for the first adjustment step size by M1.
"Target adjustment step size obtained after this second update process = first adjustment step size * 2", that is, the first adjustment step size used for the next one first update process is this time. It is twice the adjustment step size used for the first update process of.

1.3:M1により、第2調節ステップサイズが1よりも大きいか否かを検出し、第2調節ステップサイズが1よりも大きいと、1.4(a)と1.4(b)に遷移し、大きくないと、1.5に遷移する。 1.3: M1 detects whether the second adjustment step size is larger than 1, and if the second adjustment step size is larger than 1, it becomes 1.4 (a) and 1.4 (b). It transitions, and if it is not large, it transitions to 1.5.

1.4(a):M1により、第2調節ステップサイズに対して第2更新処理を実行し、
「調整後の第2調節ステップサイズ=調整前の第2調節ステップサイズ/2」である。
1.4 (a): The second update process is executed for the second adjustment step size by M1.
"Second adjustment step size after adjustment = second adjustment step size before adjustment / 2".

1.4(b):M1により、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量-第2調節ステップサイズ」である。ここで、第2調節ステップサイズは、1.4(a)中の調整後の調節ステップサイズである。
1.4 (b): By M1, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
"Target prefetch quantity = prefetch quantity-second adjustment step size". Here, the second adjustment step size is the adjusted adjustment step size in 1.4 (a).

1.5:M1により、第2調節ステップサイズをそのまま維持し、そのまま維持された第2調節ステップサイズに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量-そのまま維持された第2調節ステップサイズ」である。
1.5: By M1, the second adjustment step size is maintained as it is, and based on the maintained second adjustment step size, the first update process is executed for the prefetch quantity of the sample data to set the target prefetch quantity. Get,
"Target prefetch quantity = prefetch quantity-second adjustment step size maintained as it is".

例2:M1により、メモリ使用上限閾値、および、深層学習モデルをトレーニングするためのデータスループットに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行する。 Example 2: According to M1, the first update process is executed for the prefetch quantity of the sample data based on the memory usage upper limit threshold value and the data throughput for training the deep learning model.

2.1:M1により、M1に対応するプリフェッチサンプルデータキューL1、M2に対応するプリフェッチサンプルデータキューL2、M3に対応するプリフェッチサンプルデータキューL3、M4に対応するプリフェッチサンプルデータキューL4、および、M5に対応するプリフェッチサンプルデータキューL5が占有している合計メモリスペースがメモリ使用上限閾値に達したか否かを検出し、達してない場合には、2.2に遷移し、達した場合またはM1が操作システムのメインプロセスにメモリを申し込むときに申し込み失敗になった場合には、2.7に遷移する。 2.1 According to M1, the prefetch sample data queue L1 corresponding to M1, the prefetch sample data queue L2 corresponding to M2, the prefetch sample data queue L3 corresponding to M3, the prefetch sample data queue L4 corresponding to M4, and M5 Detects whether or not the total memory space occupied by the prefetch sample data queue L5 corresponding to the above has reached the memory usage upper limit threshold, and if not, transitions to 2.2, and if it is reached or M1. If the application fails when applying for memory to the main process of the operation system, the transition to 2.7 occurs.

2.2:M1により、深層学習モデルをトレーニングするときのデータスループットが所定のデータスループット条件を満たすか否かを検出し、満たすと、2.3(a)と2.3(b)に遷移し、満たさないと、2.4(a)と2.4(b)に遷移する。 2.2: M1 detects whether or not the data throughput when training a deep learning model satisfies a predetermined data throughput condition, and if it is satisfied, it transitions to 2.3 (a) and 2.3 (b). However, if it is not satisfied, it transitions to 2.4 (a) and 2.4 (b).

2.3(a):M1により、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量+第1調節ステップサイズ」であり、ここで、第1調節ステップサイズは、前の1回の調節ステップサイズに対して第2更新処理を実行して得た目標調節ステップサイズである。
2.3 (a): By M1, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
"Target prefetch quantity = prefetch quantity + first adjustment step size", where the first adjustment step size is the target adjustment obtained by executing the second update process for the previous one adjustment step size. The step size.

2.3(b):M1により、第1調節ステップサイズに対して第2更新処理を実行し、
「今回の第2更新処理の後に得られた目標調節ステップサイズ=第1調節ステップサイズ*2」である。
2.3 (b): The second update process is executed for the first adjustment step size by M1.
"Target adjustment step size obtained after this second update process = first adjustment step size * 2".

2.4(a):M1により、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量-第3調節ステップサイズ」である。
2.4 (a): By M1, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
"Target prefetch quantity = prefetch quantity-third adjustment step size".

2.4(b):M1により、第3調節ステップサイズが1よりも大きいか否かを検出し、第3調節ステップサイズが1よりも大きいと、2.5に遷移し、大きくないと、2.6に遷移する。 2.4 (b): M1 detects whether or not the third adjustment step size is larger than 1, and if the third adjustment step size is larger than 1, it transitions to 2.5, and if it is not large, it transitions to 2.5. Transition to 2.6.

2.5:M1により、第3調節ステップサイズに対して第2更新処理を実行し、
「調整後の第3調節ステップサイズ=調整前の第3調節ステップサイズ/2」である。
2.5: By M1, the second update process is executed for the third adjustment step size.
"Third adjustment step size after adjustment = third adjustment step size before adjustment / 2".

2.6:M1により、第3調節ステップサイズをそのまま維持する。当該第3調節ステップサイズは、次の1回のプリフェッチ数量に対して第1更新処理を実行するときに使用される。 2.6: By M1, the third adjustment step size is maintained as it is. The third adjustment step size is used when the first update process is executed for the next one prefetch quantity.

2.7:M1により、第2調節ステップサイズが1よりも大きいか否かを検出し、第2調節ステップサイズが1よりも大きいと、2.8(a)と2.8(b)に遷移し、大きくないと、2.9に遷移する。 2.7: M1 detects whether the second adjustment step size is larger than 1, and if the second adjustment step size is larger than 1, it becomes 2.8 (a) and 2.8 (b). It transitions, and if it is not large, it transitions to 2.9.

2.8(a):M1により、第2調節ステップサイズに対して第2更新処理を実行し、
「調整後の第2調節ステップサイズ=調整前の第2調節ステップサイズ/2」である。
2.8 (a): The second update process is executed for the second adjustment step size by M1.
"Second adjustment step size after adjustment = second adjustment step size before adjustment / 2".

2.8(b):M1により、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量-第2調節ステップサイズ」である。ここで、第2調節ステップサイズは、2.8(a)中の調整後の調節ステップサイズである。
2.8 (b): By M1, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
"Target prefetch quantity = prefetch quantity-second adjustment step size". Here, the second adjustment step size is the adjusted adjustment step size in 2.8 (a).

2.9:M1により、第2調節ステップサイズをそのまま維持し、そのまま維持された第2調節ステップサイズに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
「目標プリフェッチ数量=プリフェッチ数量- そのまま維持された第2調節ステップサイズ」である。
2.9: By M1, the second adjustment step size is maintained as it is, and based on the maintained second adjustment step size, the first update process is executed for the prefetch quantity of the sample data to set the target prefetch quantity. Get,
"Target prefetch quantity = prefetch quantity-second adjustment step size maintained as it is".

上記の例中の各々のステップを通じて、サンプルデータのプリフェッチ数量に対する第1更新処理の実行を実行する。 Through each step in the above example, the first update process is executed for the prefetch quantity of the sample data.

II:上記のS102において、メインプロセスは、プリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が目標プリフェッチ数量に達してないときに、直接サンプルデータベースから新たなサンプルデータを読み取ってもよいし、サブプロセスと通信してサブプロセスを制御することによってサンプルデータベースから新たなサンプルデータを読み取ってもよい。 II: In S102 above, the main process may read new sample data directly from the sample database when the quantity of sample data currently contained in the prefetch sample data queue has not reached the target prefetch quantity. , You may read new sample data from the sample database by communicating with the subprocess and controlling the subprocess.

メインプロセスが直接サンプルデータベースから新たなサンプルデータを読み取る場合、メインプロセスは、プリフェッチサンプルデータキューから抽出したサンプルデータの数量、および、読み取ったプリフェッチサンプルデータキュー中のサンプルデータの数量に基づいて、プリフェッチサンプルデータキューに現在格納されているサンプルデータの数量を確定してから、当該数量と目標プリフェッチ数量とを比較し、当該数量が目標プリフェッチ数量未満である場合、直接サンプルデータベースから新たなサンプルデータを読み取って、プリフェッチサンプルデータキューに格納することができる。 If the main process reads new sample data directly from the sample database, the main process prefetches based on the quantity of sample data extracted from the prefetch sample data queue and the quantity of sample data in the read prefetch sample data queue. Determine the quantity of sample data currently stored in the sample data queue, then compare the quantity with the target prefetch quantity, and if the quantity is less than the target prefetch quantity, pull the new sample data directly from the sample database. It can be read and stored in the prefetch sample data queue.

メインプロセスがサブプロセスを制御してサンプルデータベースから新たなサンプルデータを読み取る場合、メインプロセスは、サブプロセスとの通信によって、プリフェッチサンプルデータキューに現在格納されているサンプルデータの数量を確定してから、当該数量と目標プリフェッチ数量とを比較し、当該数量が目標プリフェッチ数量未満である場合、サブプロセスにサンプルデータ読み取り命令を送信し、ここで、当該サンプルデータ読み取る命令には、読み取る必要があるサンプルデータの数量情報が含まれている。サブプロセスは、メインプロセスが送信したサンプルデータ読み取り命令を受信した後、サンプルデータ読み取り命令に含まれている数量情報に基づいて、新たなサンプルデータを読み取ってプリフェッチサンプルデータキューに格納することができる。 If the main process controls the subprocess to read new sample data from the sample database, the main process communicates with the subprocess to determine the quantity of sample data currently stored in the prefetch sample data queue. , Compare the quantity with the target prefetch quantity, and if the quantity is less than the target prefetch quantity, send a sample data read instruction to the subprocess, where the instruction to read the sample data is a sample that needs to be read. Contains quantity information for the data. After receiving the sample data read instruction sent by the main process, the subprocess can read new sample data and store it in the prefetch sample data queue based on the quantity information contained in the sample data read instruction. ..

本発明の実施例において、メインプロセスは、プリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、データキューに現在含まれているサンプルデータ量が目標プリフェッチ数量に達してないときに、サンプルデータプールから新たなサンプルデータを読み取るため、メインプロセスは、1回の反復トレーニングを実行した後に、次の1回の反復トレーニングに必要なサンプルデータの読み取りがすでに完了されることになる。実際のほとんどの場合、メインプロセスがデータを読み取るのにかかる時間は、1つの反復トレーニングを実行するのにかかる時間よりも短いことが多いため、データキュー中に十分な数量のサンプルデータが常に格納されて後続のいくつかの反復トレーニングの使用を満たすように確保することができ、メインプロセスが特定のサンプルデータの読み取るのにかかる時間がながすぎても、サンプル数量が時間内に読み取られなくて反復トレーニングに遅延が発生されることを回避することができ、トレーニング効率を向上させた。 In the embodiment of the present invention, the main process executes the first update process on the prefetch quantity to obtain the target prefetch quantity, and when the sample data amount currently contained in the data queue has not reached the target prefetch quantity. In addition, to read new sample data from the sample data pool, the main process will have already completed the reading of the sample data required for the next one iterative training after performing one iterative training. .. In most cases in practice, the time it takes for the main process to read the data is often shorter than the time it takes to perform one iterative training, so a sufficient amount of sample data is always stored in the data queue. Can be ensured to meet the use of several subsequent iterative trainings, and the sample quantity will not be read in time even if the main process takes too long to read certain sample data. It was possible to avoid delays in repetitive training and improve training efficiency.

当業者は、具体的な実施形態に説明した方法で、各ステップの書き込み順序は、厳密な実行順序を意味して実施過程に対する制限を構成するのではなく、各ステップの具体的な実行順序はその機能および可能の内部ロジックによって決定されることを理解すべきである。 Those skilled in the art will appreciate that, in the manner described in the specific embodiments, the writing order of each step does not constitute a restriction on the implementation process, meaning a strict execution order, but the specific execution order of each step. It should be understood that it is determined by its function and possible internal logic.

同じ発明概念に基づいて、本発明の実施例は、データ処理方法に対応するデータ処理装置をさらに提供し、本発明の実施例における装置が解決しようとする問題の原理は、本発明の実施例の上記のデータ処理方法と同様であるため、装置の実施が方法の実施を参照することができ、繰り返された部分は繰り返して説明しない。 Based on the same concept of the invention, the embodiments of the present invention further provide a data processing apparatus corresponding to the data processing method, and the principle of the problem to be solved by the apparatus in the embodiments of the present invention is the embodiment of the present invention. Since it is the same as the above-mentioned data processing method in the above, the implementation of the device can refer to the implementation of the method, and the repeated part is not described repeatedly.

図2は、本発明の実施例によって提供されるデータ処理装置の模式図であり、前記装置は、1つまたは複数のプロセスを含む、深層学習モデルのトレーニングに適用され、前記装置は、第1更新モジュール21と、読取りモジュール22と、を備え、ここで、
第1更新モジュール21は、前記1つまたは複数のプロセスの中の1つの目標プロセスに対して、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、
読取りモジュール22は、前記目標プロセスに対応するプリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納する。
FIG. 2 is a schematic diagram of a data processing apparatus provided by an embodiment of the present invention, wherein the apparatus is applied to training a deep learning model including one or more processes, and the apparatus is the first. The update module 21 and the read module 22 are provided here.
The first update module 21 executes the first update process on the prefetch quantity of the sample data for one target process in the one or more processes to obtain the target prefetch quantity.
The read module 22 reads and reads new sample data in response to the fact that the quantity of sample data currently contained in the prefetch sample data queue corresponding to the target process has not reached the target prefetch quantity. The new sample data is stored in the prefetch sample data queue.

本発明の実施例において、メインプロセスは、プリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得、プリフェッチサンプルデータキューに現在含まれているサンプルデータ量が目標プリフェッチ数量に達してないときに、サンプルデータプールから新たなサンプルデータを読み取るため、メインプロセスは、1回の反復トレーニングを実行した後に、次の1回の反復トレーニングに必要なサンプルデータの読み取りがすでに完了されることになる。実際のほとんどの場合、メインプロセスがデータを読み取るのにかかる時間は、1つの反復トレーニングを実行するのにかかる時間よりも短いことが多いため、データキュー中に十分な数量のサンプルデータが常に格納されて後続のいくつかの反復トレーニングの使用を満たすように確保することができ、メインプロセスが特定のサンプルデータの読み取るのにかかる時間がながすぎても、サンプル数量が時間内に読み取られなくて反復トレーニングに遅延が発生されることを回避することができ、トレーニング効率を向上させた。 In the embodiment of the present invention, the main process performs the first update process on the prefetch quantity to obtain the target prefetch quantity, and the sample data amount currently contained in the prefetch sample data queue reaches the target prefetch quantity. In order to read new sample data from the sample data pool when it is not available, the main process should have performed one iterative training and then already read the sample data required for the next one iterative training. become. In most cases in practice, the time it takes for the main process to read the data is often shorter than the time it takes to perform one iterative training, so a sufficient amount of sample data is always stored in the data queue. Can be ensured to meet the use of several subsequent iterative trainings, and the sample quantity will not be read in time even if the main process takes too long to read certain sample data. It was possible to avoid delays in repetitive training and improve training efficiency.

可能な1実施形態において、前記第1更新モジュール21は、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得る。
In one possible embodiment, when the first update module 21 executes the first update process on the prefetch quantity of the sample data to obtain the target prefetch quantity,
Based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the upper memory usage threshold, the target prefetch is performed by performing the first update process on the prefetch quantity of the sample data. Get the quantity.

可能な1実施形態において、前記第1更新モジュール21は、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して前記目標プリフェッチ数量を得る。
In one possible embodiment, the first update module 21 is based on the total memory space and memory usage limit threshold currently occupied by the prefetch sample data queue corresponding to the one or more processes. When the first update process is executed for the prefetch quantity to obtain the target prefetch quantity,
The total memory space currently occupied by the prefetch sample data queue for the one or more processes, the upper memory usage threshold, and the data throughput to perform training on the deep learning model of the target process. The first update process is executed for the prefetch quantity of the sample data based on the above, and the target prefetch quantity is obtained.

可能な1実施形態において、前記第1更新モジュール21は、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得るし、および/または、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達した場合、前記プリフェッチ数量を第2調節ステップサイズだけ減少して前記目標プリフェッチ数量を得る。
In one possible embodiment, the first update module 21 is based on the total memory space and memory usage limit threshold currently occupied by the prefetch sample data queue corresponding to the one or more processes. When the first update process is executed for the prefetch quantity to obtain the target prefetch quantity,
If the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper threshold, the prefetch quantity is increased by the first adjustment step size to the target. Get the prefetch quantity and / or
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes reaches the upper memory usage threshold, the prefetch quantity is reduced by the second adjustment step size to achieve the target prefetch. Get the quantity.

可能な1実施形態において、前記第1更新モジュール21は、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットが所定のデータスループット条件を満たす場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得る。
In one possible embodiment, if the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold. When the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity,
The total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes has not reached the upper memory usage threshold and training is performed on the deep learning model of the target process. When the data throughput for this is satisfied with a predetermined data throughput condition, the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity.

可能な1実施形態において、前記第1更新モジュール21は、さらに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記データスループットが前記所定のデータスループット条件を満たさない場合、前記プリフェッチ数量を第3調節ステップサイズだけ減少して前記目標プリフェッチ数量を得る。
In one possible embodiment, the first update module 21 further
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold, and the data throughput does not meet the predetermined data throughput condition. , The prefetch quantity is reduced by the third adjustment step size to obtain the target prefetch quantity.

可能な1実施形態において、前記所定のデータスループット条件は、
前記データスループットの現在数値が履歴数値よりも大きいことと、
前記データスループットの現在数値がデータスループット閾値よりも大きいことと、の中の少なくとも1つを含み、ここで、前記履歴数値は、現在の反復トレーニングの前の複数の履歴反復トレーニングのときの前記データスループットの平均値、または、現在の反復トレーニングの前の1回の反復トレーニングのときの前記データスループットの数値である。
In one possible embodiment, the predetermined data throughput condition is
The current value of the data throughput is larger than the historical value, and
The current value of the data throughput is greater than the data throughput threshold and includes at least one of, where the historical value is the data from a plurality of historical iterative training prior to the current iterative training. It is the average value of the throughput, or the numerical value of the data throughput at the time of one repetitive training before the current repetitive training.

可能な1実施形態において、前記装置は、前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得るための第2更新モジュール23をさらに備え、ここで、前記目標調節ステップサイズは、前記プリフェッチ数量の次の1回の更新処理に使用される。 In one possible embodiment, the apparatus further comprises a second update module 23 for performing a second update process on the prefetch quantity adjustment step size to obtain a target adjustment step size, wherein said. The target adjustment step size is used for the next one-time update process of the prefetch quantity.

可能な1実施形態において、前記第2更新モジュール23は、前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得るときに、
前記第1更新処理中に前記プリフェッチ数量を増加する場合、前記プリフェッチ数量の調節ステップサイズを増加し、および/または、
前記第1更新処理中に前記プリフェッチ数量を減少する場合、前記プリフェッチ数量の調節ステップサイズを減少する。
In one possible embodiment, the second update module 23 performs a second update process on the adjustment step size of the prefetch quantity to obtain a target adjustment step size.
When the prefetch quantity is increased during the first update process, the adjustment step size of the prefetch quantity is increased and / or.
When the prefetch quantity is reduced during the first update process, the adjustment step size of the prefetch quantity is reduced.

装置の各モジュールの処理フローおよび各モジュール間の相互作用フローの記載は、上述した方法の実施例の関連する説明を参照することができ、ここでは繰り返して説明しない。 The description of the processing flow of each module of the apparatus and the interaction flow between each module can refer to the relevant description of the embodiments of the above method and will not be repeated herein.

本発明の実施例は、コンピュータデバイス30をさらに提供する。図3は、本発明の実施例によって提供されるコンピュータデバイス30の構成を示す模式図であり、当該デバイスは、
プロセッサ31と、メモリ32と、バス33と、を備える。メモリ32は、命令を格納し、当該メモリ32は、内部メモリ321と外部メモリ322とを備え、ここでの内部メモリ321はメモリとも呼ばれ、プロセッサ31の演算データおよびハードディスクなどの外部メモリ322と交換するデータを一時的に格納する。プロセッサ31は、内部メモリ321を介して外部メモリ322とデータ交換を実行し、前記コンピュータデバイス300が運行されると、前記プロセッサ31と前記メモリ32との間はバス33を介して通信することによって、前記プロセッサ31が以下の命令を実行するようにし、当該命令は、
前記1つまたは複数のプロセスの中の1つの目標プロセスに対して、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることと、
前記目標プロセスに対応するプリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納することと、を含む。
The embodiments of the present invention further provide the computer device 30. FIG. 3 is a schematic view showing the configuration of the computer device 30 provided by the embodiment of the present invention.
It includes a processor 31, a memory 32, and a bus 33. The memory 32 stores instructions, and the memory 32 includes an internal memory 321 and an external memory 322. The internal memory 321 here is also referred to as a memory, and includes arithmetic data of the processor 31 and an external memory 322 such as a hard disk. Temporarily store the data to be exchanged. The processor 31 executes data exchange with the external memory 322 via the internal memory 321, and when the computer device 300 is operated, the processor 31 and the memory 32 communicate with each other via the bus 33. , The processor 31 executes the following instruction, and the instruction is
For one target process in the one or more processes, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
The new sample data is read and read in response to the fact that the quantity of sample data currently contained in the prefetch sample data queue corresponding to the target process has not reached the target prefetch quantity. To store the prefetch sample data queue.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることを含む。
In one possible embodiment, in the instruction executed by the processor 31, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
Based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the upper memory usage threshold, the target prefetch is performed by performing the first update process on the prefetch quantity of the sample data. Includes getting quantity.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットに基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して前記目標プリフェッチ数量を得ることを含む。
In one possible embodiment, in an instruction executed by processor 31, based on the total memory space and memory usage upper bound threshold currently occupied by the prefetch sample data queue corresponding to the one or more processes. To obtain the target prefetch quantity by executing the first update process for the prefetch quantity of the sample data,
The total memory space currently occupied by the prefetch sample data queue for the one or more processes, the upper memory usage threshold, and the data throughput to perform training on the deep learning model of the target process. The first update process is executed for the prefetch quantity of the sample data based on the above, and the target prefetch quantity is obtained.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ること、および/または、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達した場合、前記プリフェッチ数量を第2調節ステップサイズだけ減少して前記目標プリフェッチ数量を得ることを含む。
In one possible embodiment, in an instruction executed by processor 31, based on the total memory space and memory usage upper bound threshold currently occupied by the prefetch sample data queue corresponding to the one or more processes. To obtain the target prefetch quantity by executing the first update process for the prefetch quantity of the sample data,
If the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper threshold, the prefetch quantity is increased by the first adjustment step size to the target. Get the prefetch quantity and / or
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes reaches the upper memory usage threshold, the prefetch quantity is reduced by the second adjustment step size to achieve the target prefetch. Includes getting quantity.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットが所定のデータスループット条件を満たす場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ることを含む。
In one possible embodiment, among the instructions executed by the processor 31, the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes reaches the memory usage upper limit threshold. If not, increasing the prefetch quantity by the first adjustment step size to obtain the target prefetch quantity
The total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes has not reached the upper memory usage threshold and training is performed on the deep learning model of the target process. When the data throughput for the purpose satisfies a predetermined data throughput condition, the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記方法は、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記データスループットが前記所定のデータスループット条件を満たさない場合、前記プリフェッチ数量を第3調節ステップサイズだけ減少して前記目標プリフェッチ数量を得ることをさらに含む。
In one possible embodiment, among the instructions executed by the processor 31, the method is:
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold, and the data throughput does not meet the predetermined data throughput condition. Further includes reducing the prefetch quantity by a third adjustment step size to obtain the target prefetch quantity.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記所定のデータスループット条件は、
前記データスループットの現在数値が履歴数値よりも大きいことと、
前記データスループットの現在数値がデータスループット閾値よりも大きいことと、の中の少なくとも1つを含み、ここで、前記履歴数値は、現在の反復トレーニングの前の複数の履歴反復トレーニングのときの前記データスループットの平均値、または、現在の反復トレーニングの前の1回の反復トレーニングのときの前記データスループットの数値である。
In one possible embodiment, in the instruction executed by the processor 31, the predetermined data throughput condition is
The current value of the data throughput is larger than the historical value, and
The current value of the data throughput is greater than the data throughput threshold and includes at least one of, where the historical value is the data from a plurality of historical iterative training prior to the current iterative training. It is the average value of the throughput, or the numerical value of the data throughput at the time of one repetitive training before the current repetitive training.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記方法は、
前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得ることをさらに含み、ここで、前記目標調節ステップサイズは、前記プリフェッチ数量の次の1回の更新処理に使用される。
In one possible embodiment, among the instructions executed by the processor 31, the method is:
Further including executing a second update process for the adjustment step size of the prefetch quantity to obtain a target adjustment step size, where the target adjustment step size is the next one update process of the prefetch quantity. Used for.

可能な1実施形態において、プロセッサ31によって実行される命令の中で、前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得ることは、
前記第1更新処理中に前記プリフェッチ数量を増加する場合、前記プリフェッチ数量の調節ステップサイズを増加すること、および/または、
前記第1更新処理中に前記プリフェッチ数量を減少する場合、前記プリフェッチ数量の調節ステップサイズを減少することを含む。
In one possible embodiment, in the instruction executed by the processor 31, the second update process is executed for the adjustment step size of the prefetch quantity to obtain the target adjustment step size.
When the prefetch quantity is increased during the first update process, the adjustment step size of the prefetch quantity is increased and / or.
When the prefetch quantity is reduced during the first update process, it includes reducing the adjustment step size of the prefetch quantity.

本発明の実施例は、コンピュータ可読記録媒体をさらに提供し、当該コンピュータ可読記録媒体には、コンピュータプログラムが記録されており、当該コンピュータプログラムがプロセッサによって運行されるときに、上述した方法の実施例に記載のデータ処理方法のステップが実行される。ここで、当該記録媒体は、揮発性または不揮発性のコンピュータ可読記録媒体であり得る。 Embodiments of the present invention further provide a computer-readable recording medium, wherein a computer program is recorded in the computer-readable recording medium, and when the computer program is operated by a processor, an embodiment of the above-mentioned method is performed. The steps of the data processing method described in are performed. Here, the recording medium can be a volatile or non-volatile computer-readable recording medium.

本発明の実施例によって提供されるデータ処理方法のコンピュータプログラム製品は、プログラムコードを格納したコンピュータ可読記録媒体を含み、前記プログラムコードに含まれている命令は、上述した方法の実施例に記載のデータ処理方法のステップを実行し、具体的には、上述した方法の実施例を参照することができ、ここでは繰り返して説明しない。 The computer program product of the data processing method provided by the embodiment of the present invention includes a computer-readable recording medium containing the program code, and the instructions contained in the program code are described in the above-described embodiment of the method. The steps of the data processing method can be performed, specifically, examples of the above-mentioned method can be referred to, which are not repeated here.

本発明の実施例は、コンピュータプログラムをさらに提供し、当該コンピュータプログラムがプロセッサによって実行されるときに、前述した実施例の任意の方法が実現される。当該コンピュータプログラム製品は、具体的に、ハードウェア、ソフトウェア、または、その組み合わせの方式で実現され得る。オプションの1つの実施例において、前記コンピュータプログラム製品は、具体的に、コンピュータ記録媒体によって具体化される。オプションのもう1つの実施例において、コンピュータプログラム製品は、具体的に、ソフトウェア開発キット(Software Development Kit、SDK)などのソフトウェア製品によって具体化される。 The embodiments of the present invention further provide a computer program, and when the computer program is executed by a processor, any method of the above-described embodiment is realized. The computer program product can be specifically realized by a method of hardware, software, or a combination thereof. In one example of the option, the computer program product is specifically embodied by a computer recording medium. In another embodiment of the option, the computer program product is specifically embodied by a software product such as a Software Development Kit (SDK).

当業者は、説明の便宜および簡素化のために、上述に記載のシステムおよび装置の具体的な作業過程は、前述した方法の実施例の対応する過程を参照することができ、ここでは繰り返して説明しないことを明確に了解すべきである。本発明によって提供されるいくつかの実施例において、開示したシステム、装置、および、方法は、他の方式によって実現され得ることを理解すべきである。上記に記載の装置の実施例は、単に例示的なものである。たとえば、前記ユニットの分割は、論理機能分割のみであり、実際の実装において他の分割方法があり得る。また、たとえば、複数のユニットまたはコンポーネントを、組み合わせることができるか、または、もう1つのシステムに統合することができるか、または、一部の特徴を無視するかまたは実行しないでもよい。さらに、表示または議論された相互間の結合または直接結合または通信接続は、いくつかの通信インターフェース、デバイスまたはユニットの間接結合または通信接続を介することができ、電気的、機械的または他の形態であり得る。 For convenience and simplification of description, those skilled in the art can refer to the corresponding processes of the embodiments of the above-mentioned methods for the specific working processes of the systems and devices described above, which are repeated herein. It should be clearly understood that it will not be explained. It should be understood that in some of the embodiments provided by the present invention, the disclosed systems, devices, and methods may be implemented by other methods. The embodiments of the device described above are merely exemplary. For example, the division of the unit is only a logical function division, and there may be other division methods in the actual implementation. Also, for example, multiple units or components may be combined, integrated into another system, or some features may be ignored or not performed. In addition, the coupling or direct coupling or communication connection between the displayed or discussed interactions can be via an indirect coupling or communication connection of several communication interfaces, devices or units, in electrical, mechanical or other forms. possible.

分離された部品として説明されたユニットは、物理的に分離されている場合とされていない場合があり、ユニットとして表示される部品物理ユニットである場合とそうでない場合がある。つまり、1つの場所に配置することも、複数のネットワークユニットに分散させることもできる。実際の必要に応じてここでの一部または全部のユニットを選択して本実施例の解決策の目的を達成することができる。 A unit described as a separated part may or may not be physically separated, and may or may not be a physical part physical unit displayed as a unit. That is, it can be located in one location or distributed across multiple network units. The objectives of the solution of this embodiment may be achieved by selecting some or all of the units here as needed in practice.

また、本発明の各々の実施例における各機能ユニットは、1つの処理ユニットに統合され得るか、または各ユニットが物理的に単独で存在し得るか、2つまたは2つ以上のユニットが1つのユニットに統合され得る。 Also, each functional unit in each embodiment of the invention may be integrated into one processing unit, or each unit may physically exist independently, or two or more units may be one. Can be integrated into a unit.

前記機能がソフトウェア機能ユニットの形で実装され、独立した製品として販売または使用される場合、プロセッサによって実行可能な不揮発性のコンピュータ可読記憶媒体に格納することができる。このような理解に基づいて、本発明の技術的解決策の本質、または先行技術に寄与する部分または技術的解決策の一部は、ソフトウェア製品の形で具体化することができる。当該コンピュータソフトウェア製品は、1つの記録媒体に格納され、コンピュータデバイス(パーソナルコンピュータ、サーバ、または、ネットワークデバイスなど)が本発明の各々の実施例に記載の方法の全部または一部のステップを実行できるようにするためのいくつかの命令を含む。前述した記録媒体は、Uディスク、モバイルハードディスク、読み取り専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、磁気ディスク、または、光ディスクなどの、プログラムコードを格納できるさまざまな媒体を含み得る。 When the function is implemented in the form of a software functional unit and sold or used as a stand-alone product, it can be stored in a non-volatile computer-readable storage medium run by the processor. Based on this understanding, the essence of the technical solution of the invention, or any part of the prior art or part of the technical solution, can be embodied in the form of a software product. The computer software product is housed in one recording medium and the computer device (such as a personal computer, server, or network device) can perform all or part of the steps of the methods described in each embodiment of the invention. Includes some instructions to make it so. The recording media described above include U disks, mobile hard disks, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disks, optical disks, and various other recording media that can store program codes. Can include various media.

最後に、上記の実施例は、本発明の具体的な実施形態に過ぎず、それらを限定するのではなく、本発明の技術的解決策を説明するために使用されるものであり、本発明の保護範囲はこれに限定されない。前述した実施例を参照して本発明を詳細に説明したが、当業者は、本発明に開示した技術範囲内で当業者は前述した実施例に記載の技術的解決策を修正するか、または容易に変更を思い付くことができ、またはここでの一部の技術特徴を同等に置き換えられることができることを理解すべきである。これら修正、変更、または、置き換えは、該当する技術的解決策の本質が本発明の実施例の技術的解決策の精神および範囲から逸脱することを引き起こさず、いずれも本発明の保護範囲内にカバーされるべきである。したがって、本発明の保護範囲は、特許請求の範囲の保護範囲に従うべきである。 Finally, the above embodiments are merely specific embodiments of the invention and are used to illustrate the technical solutions of the invention rather than limiting them. The scope of protection is not limited to this. Although the invention has been described in detail with reference to the embodiments described above, those skilled in the art will modify or modify the technical solutions described in the embodiments described above within the technical scope disclosed in the present invention. It should be understood that changes can be easily conceived or some technical features here can be replaced equally. These modifications, changes, or replacements do not cause the essence of the applicable technical solution to deviate from the spirit and scope of the technical solution of the embodiments of the invention, and are all within the scope of the invention. Should be covered. Therefore, the scope of protection of the present invention should be in accordance with the scope of claims.

Claims (21)

1つまたは複数のプロセスを含む、深層学習モデルのトレーニングに、適用されるデータ処理方法であって、
前記1つまたは複数のプロセスの中の1つの目標プロセスに対して、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることと、
前記目標プロセスに対応するプリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納することと、を含む
ことを特徴とするデータ処理方法。
A data processing method that applies to training deep learning models, including one or more processes.
For one target process in the one or more processes, the first update process is executed for the prefetch quantity of the sample data to obtain the target prefetch quantity.
The new sample data is read and read in response to the fact that the quantity of sample data currently contained in the prefetch sample data queue corresponding to the target process has not reached the target prefetch quantity. A data processing method comprising storing the prefetch sample data queue.
前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることを含む
ことを特徴とする請求項1に記載のデータ処理方法。
To obtain the target prefetch quantity by executing the first update process for the prefetch quantity of the sample data.
Based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the upper limit memory usage threshold, the target is to execute the first update process for the prefetch quantity of the sample data. The data processing method according to claim 1, wherein the prefetch quantity is obtained.
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットに基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して前記目標プリフェッチ数量を得ることを含む
ことを特徴とする請求項2に記載のデータ処理方法。
Based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the memory usage upper limit threshold, the target is to execute the first update process for the prefetch quantity of the sample data. Getting the prefetch quantity is
The total memory space currently occupied by the prefetch sample data queue for the one or more processes, the upper memory usage threshold, and the data throughput to perform training on the deep learning model of the target process. The data processing method according to claim 2, further comprising performing a first update process on the prefetch quantity of the sample data to obtain the target prefetch quantity.
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ること、および/または、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達した場合、前記プリフェッチ数量を第2調節ステップサイズだけ減少して前記目標プリフェッチ数量を得ることを含む
ことを特徴とする請求項2または3に記載のデータ処理方法。
Based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the memory usage upper limit threshold, the target is to execute the first update process for the prefetch quantity of the sample data. Getting the prefetch quantity is
If the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper threshold, the prefetch quantity is increased by the first adjustment step size to the target. Get the prefetch quantity and / or
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes reaches the memory usage upper limit threshold, the prefetch quantity is reduced by the second adjustment step size to achieve the target prefetch. The data processing method according to claim 2 or 3, wherein the data processing method comprises obtaining a quantity.
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ることは、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットが所定のデータスループット条件を満たす場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得ることを含む
ことを特徴とする請求項4に記載のデータ処理方法。
If the total memory space currently occupied by the prefetch sample data queue for the one or more processes does not reach the memory usage upper threshold, the prefetch quantity is increased by the first adjustment step size to the target. Getting the prefetch quantity is
The total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes has not reached the upper memory usage threshold and training is performed on the deep learning model of the target process. The data processing according to claim 4, wherein when the data throughput for performing the data throughput satisfies a predetermined data throughput condition, the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity. Method.
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記データスループットが前記所定のデータスループット条件を満たさない場合、前記プリフェッチ数量を第3調節ステップサイズだけ減少して前記目標プリフェッチ数量を得ることをさらに含む
ことを特徴とする請求項5に記載のデータ処理方法。
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold, and the data throughput does not meet the predetermined data throughput condition. The data processing method according to claim 5, further comprising reducing the prefetch quantity by a third adjustment step size to obtain the target prefetch quantity.
前記所定のデータスループット条件は、
前記データスループットの現在数値が履歴数値よりも大きいことと、
前記データスループットの現在数値がデータスループット閾値よりも大きいことと、の中の少なくとも1つを含み、
ここで、前記履歴数値は、現在の反復トレーニングの前の複数の履歴反復トレーニングのときの前記データスループットの平均値、または、現在の反復トレーニングの前の1回の反復トレーニングのときの前記データスループットの数値である
ことを特徴とする請求項5または6に記載のデータ処理方法。
The predetermined data throughput condition is
The current value of the data throughput is larger than the historical value, and
The current value of the data throughput is greater than the data throughput threshold and includes at least one of them.
Here, the historical numerical value is the average value of the data throughput at the time of a plurality of historical iterative trainings before the current iterative training, or the data throughput at the time of one iterative training before the current iterative training. The data processing method according to claim 5 or 6, wherein the data is a numerical value of.
前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得ることをさらに含み、
ここで、前記目標調節ステップサイズは、前記プリフェッチ数量の次の1回の更新処理に使用される
ことを特徴とする請求項1から7の中のいずれか1項に記載のデータ処理方法。
Further including executing a second update process for the adjustment step size of the prefetch quantity to obtain the target adjustment step size.
Here, the data processing method according to any one of claims 1 to 7, wherein the target adjustment step size is used for the next one-time update processing of the prefetch quantity.
前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得ることは、
前記第1更新処理中に前記プリフェッチ数量を増加する場合、前記プリフェッチ数量の調節ステップサイズを増加すること、および/または、
前記第1更新処理中に前記プリフェッチ数量を減少する場合、前記プリフェッチ数量の調節ステップサイズを減少することを含む
ことを特徴とする請求項8に記載のデータ処理方法。
To obtain the target adjustment step size by executing the second update process for the adjustment step size of the prefetch quantity.
When the prefetch quantity is increased during the first update process, the adjustment step size of the prefetch quantity is increased and / or.
The data processing method according to claim 8, wherein when the prefetch quantity is reduced during the first update process, the adjustment step size of the prefetch quantity is reduced.
1つまたは複数のプロセスを含む、深層学習モデルのトレーニングに、適用されるデータ処理装置であって、
前記1つまたは複数のプロセスの中の1つの目標プロセスに対して、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るための第1更新モジュールと、
前記目標プロセスに対応するプリフェッチサンプルデータキューに現在含まれているサンプルデータの数量が前記目標プリフェッチ数量に達してないことに応答して、新たなサンプルデータを読み取って、読み取った前記新たなサンプルデータを前記プリフェッチサンプルデータキューン格納するための読取りモジュールと、を備える
ことを特徴とするデータ処理装置。
A data processing device that is applied to the training of deep learning models, including one or more processes.
For one target process in the one or more processes, a first update module for executing a first update process for a prefetch quantity of sample data to obtain a target prefetch quantity, and
The new sample data is read and read in response to the fact that the quantity of sample data currently contained in the prefetch sample data queue corresponding to the target process has not reached the target prefetch quantity. A data processing device comprising a read module for storing the prefetch sample data queue.
前記第1更新モジュールは、サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得る
ことを特徴とする請求項10に記載のデータ処理装置。
When the first update module executes the first update process on the prefetch quantity of the sample data to obtain the target prefetch quantity,
Based on the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes and the upper limit memory usage threshold, the target is to execute the first update process for the prefetch quantity of the sample data. The data processing apparatus according to claim 10, wherein a prefetch quantity is obtained.
前記第1更新モジュールは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペース、メモリ使用上限閾値、および、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットに基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して前記目標プリフェッチ数量を得る
ことを特徴とする請求項11に記載のデータ処理装置。
The first update module is first with respect to the prefetch quantity of the sample data based on the total memory space and memory usage upper bound threshold currently occupied by the prefetch sample data queue corresponding to the one or more processes. When performing the update process to get the target prefetch quantity
The total memory space currently occupied by the prefetch sample data queue for the one or more processes, the upper memory usage threshold, and the data throughput to perform training on the deep learning model of the target process. The data processing apparatus according to claim 11, wherein the first update process is performed on the prefetch quantity of the sample data to obtain the target prefetch quantity.
前記第1更新モジュールは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースおよびメモリ使用上限閾値に基づいて、前記サンプルデータのプリフェッチ数量に対して第1更新処理を実行して目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得るし、および/または、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達した場合、前記プリフェッチ数量を第2調節ステップサイズだけ減少して前記目標プリフェッチ数量を得る
ことを特徴とする請求項11または12に記載のデータ処理装置。
The first update module is first with respect to the prefetch quantity of the sample data based on the total memory space and memory usage upper bound threshold currently occupied by the prefetch sample data queue corresponding to the one or more processes. When performing the update process to get the target prefetch quantity
If the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper threshold, the prefetch quantity is increased by the first adjustment step size to the target. Get the prefetch quantity and / or
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes reaches the memory usage upper limit threshold, the prefetch quantity is reduced by the second adjustment step size to achieve the target prefetch. The data processing apparatus according to claim 11 or 12, wherein the quantity is obtained.
前記第1更新モジュールは、前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してない場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得るときに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記目標プロセスの前記深層学習モデルに対してトレーニングを実行するためのデータスループットが所定のデータスループット条件を満たす場合、前記プリフェッチ数量を第1調節ステップサイズだけ増加して前記目標プリフェッチ数量を得る
ことを特徴とする請求項13に記載のデータ処理装置。
The first update module adjusts the prefetch quantity to the first adjustment step when the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold. When increasing by size to get the target prefetch quantity
The total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes has not reached the upper memory usage threshold and training is performed on the deep learning model of the target process. The data processing apparatus according to claim 13, wherein the prefetch quantity is increased by the first adjustment step size to obtain the target prefetch quantity when the data throughput for performing the data throughput satisfies a predetermined data throughput condition.
前記第1更新モジュールは、さらに、
前記1つまたは複数のプロセスに対応するプリフェッチサンプルデータキューが現在占有している合計メモリスペースが前記メモリ使用上限閾値に達してないし、かつ、前記データスループットが前記所定のデータスループット条件を満たさない場合、前記プリフェッチ数量を第3調節ステップサイズだけ減少して前記目標プリフェッチ数量を得る
ことを特徴とする請求項14に記載のデータ処理装置。
The first update module further
When the total memory space currently occupied by the prefetch sample data queue corresponding to the one or more processes does not reach the memory usage upper limit threshold, and the data throughput does not meet the predetermined data throughput condition. The data processing apparatus according to claim 14, wherein the prefetch quantity is reduced by a third adjustment step size to obtain the target prefetch quantity.
前記所定のデータスループット条件は、
前記データスループットの現在数値が履歴数値よりも大きいことと、
前記データスループットの現在数値がデータスループット閾値よりも大きいことと、の中の少なくとも1つを含み、
ここで、前記履歴数値は、現在の反復トレーニングの前の複数の履歴反復トレーニングのときの前記データスループットの平均値、または、現在の反復トレーニングの前の1回の反復トレーニングのときの前記データスループットの数値である
ことを特徴とする請求項14または15に記載のデータ処理装置。
The predetermined data throughput condition is
The current value of the data throughput is larger than the historical value, and
The current value of the data throughput is greater than the data throughput threshold and includes at least one of them.
Here, the historical numerical value is the average value of the data throughput at the time of a plurality of historical iterative trainings before the current iterative training, or the data throughput at the time of one iterative training before the current iterative training. The data processing apparatus according to claim 14 or 15, characterized in that the numerical value of the above.
前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得るための第2更新モジュールをさらに備え、
ここで、前記目標調節ステップサイズは、前記プリフェッチ数量の次の1回の更新処理に使用される
ことを特徴とする請求項10から16の中のいずれか1項に記載のデータ処理装置。
Further, a second update module for executing a second update process for the adjustment step size of the prefetch quantity to obtain a target adjustment step size is provided.
The data processing apparatus according to any one of claims 10 to 16, wherein the target adjustment step size is used for the next one-time update process of the prefetch quantity.
前記第2更新モジュールは、前記プリフェッチ数量の調節ステップサイズに対して第2更新処理を実行して目標調節ステップサイズを得るときに、
前記第1更新処理中に前記プリフェッチ数量を増加する場合、前記プリフェッチ数量の調節ステップサイズを増加し、および/または、
前記第1更新処理中に前記プリフェッチ数量を減少する場合、前記プリフェッチ数量の調節ステップサイズを減少する
ことを特徴とする請求項17に記載のデータ処理装置。
When the second update module executes the second update process for the adjustment step size of the prefetch quantity to obtain the target adjustment step size,
When the prefetch quantity is increased during the first update process, the adjustment step size of the prefetch quantity is increased and / or.
The data processing apparatus according to claim 17, wherein when the prefetch quantity is reduced during the first update process, the adjustment step size of the prefetch quantity is reduced.
コンピュータデバイスであって、
プロセッサと、記録媒体と、バスと、を備え、
前記記録媒体には、前記プロセッサによって実行可能な機械可読命令が記録されており、
コンピュータデバイスが運行されるときに、前記プロセッサと前記記録媒体との間はバスを介して通信し、前記機械可読命令は前記プロセッサによって実行されて請求項1から9の中のいずれか1項に記載のデータ処理方法が実行される
ことを特徴とするコンピュータデバイス。
It ’s a computer device,
Equipped with a processor, a recording medium, a bus,
Machine-readable instructions that can be executed by the processor are recorded on the recording medium.
When the computer device is operated, the processor and the recording medium communicate with each other via a bus, and the machine-readable instruction is executed by the processor according to any one of claims 1 to 9. A computer device characterized by performing the described data processing method.
コンピュータ可読記録媒体であって、
当該コンピュータ可読記録媒体には、コンピュータプログラムが記録されており、当該コンピュータプログラムがプロセッサによって運行されるときに、請求項1から9の中のいずれか1項に記載のデータ処理方法が実行される
ことを特徴とするコンピュータ可読記録媒体。
A computer-readable recording medium
A computer program is recorded in the computer-readable recording medium, and when the computer program is operated by a processor, the data processing method according to any one of claims 1 to 9 is executed. A computer-readable recording medium characterized by that.
コンピュータプログラムであって、
前記コンピュータプログラムがプロセッサによって実行されるときに、請求項1から9の中のいずれか1項に記載のデータ処理方法が実行される
ことを特徴とするコンピュータプログラム。
It ’s a computer program,
A computer program according to any one of claims 1 to 9, wherein when the computer program is executed by a processor, the data processing method according to any one of claims 1 to 9 is executed.
JP2021557139A 2019-12-30 2020-12-03 Data processing methods and equipment, computer devices, recording media, and computer programs Pending JP2022526333A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201911403669.4 2019-12-30
CN201911403669.4A CN113128531B (en) 2019-12-30 2019-12-30 Data processing method and device
PCT/CN2020/133647 WO2021135810A1 (en) 2019-12-30 2020-12-03 Data processing method and apparatus, computer device, storage medium, and computer program

Publications (1)

Publication Number Publication Date
JP2022526333A true JP2022526333A (en) 2022-05-24

Family

ID=76686451

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021557139A Pending JP2022526333A (en) 2019-12-30 2020-12-03 Data processing methods and equipment, computer devices, recording media, and computer programs

Country Status (6)

Country Link
JP (1) JP2022526333A (en)
KR (1) KR20210130796A (en)
CN (1) CN113128531B (en)
SG (1) SG11202110625XA (en)
TW (1) TWI763168B (en)
WO (1) WO2021135810A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612773B (en) * 2021-08-03 2023-06-16 厦门至恒融兴信息技术股份有限公司 Intelligent message identification and analysis system and method realized by artificial intelligence

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018163554A (en) * 2017-03-27 2018-10-18 富士通株式会社 Image processing device, image processing method, image processing program, and teacher data generating method

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508638B (en) * 2011-09-27 2014-09-17 华为技术有限公司 Data pre-fetching method and device for non-uniform memory access
US9098418B2 (en) * 2012-03-20 2015-08-04 Apple Inc. Coordinated prefetching based on training in hierarchically cached processors
CN103902260B (en) * 2012-12-25 2016-08-31 华中科技大学 A kind of forecasting method of object-based file system
CN103530111A (en) * 2013-08-20 2014-01-22 山东中创软件工程股份有限公司 Process definition acquiring method and device
CN105337896A (en) * 2014-07-25 2016-02-17 华为技术有限公司 Message processing method and device
CN104463324A (en) * 2014-11-21 2015-03-25 长沙马沙电子科技有限公司 Convolution neural network parallel processing method based on large-scale high-performance cluster
CN104765760B (en) * 2015-01-04 2018-02-06 深圳微迅信息科技有限公司 A kind of page generation and display methods based on JSON forms
CN104572205B (en) * 2015-01-12 2018-02-23 安一恒通(北京)科技有限公司 A kind of method and apparatus for software acceleration
US10389839B2 (en) * 2016-06-01 2019-08-20 Intel Corporation Method and apparatus for generating data prefetches specifying various sizes to prefetch data from a remote computing node
US10909038B2 (en) * 2018-12-30 2021-02-02 Chengdu Haiguang Integrated Circuit Design Co. Ltd. Cache management method, cache and storage medium
CN110287010B (en) * 2019-06-12 2021-09-14 北京工业大学 Cache data prefetching method oriented to Spark time window data analysis
CN110245094B (en) * 2019-06-18 2020-12-29 华中科技大学 Block-level cache prefetching optimization method and system based on deep learning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018163554A (en) * 2017-03-27 2018-10-18 富士通株式会社 Image processing device, image processing method, image processing program, and teacher data generating method

Also Published As

Publication number Publication date
CN113128531B (en) 2024-03-26
KR20210130796A (en) 2021-11-01
CN113128531A (en) 2021-07-16
WO2021135810A1 (en) 2021-07-08
TWI763168B (en) 2022-05-01
TW202125271A (en) 2021-07-01
SG11202110625XA (en) 2021-10-28

Similar Documents

Publication Publication Date Title
CN107229475B (en) Page display method, electronic equipment and computer storage media
US9563369B2 (en) Fine-grained bandwidth provisioning in a memory controller
TWI289747B (en) Method and apparatus and computer system for controlling memory accesses
EP2793175A2 (en) Optimization utilizing machine learning
CN103870327A (en) Real-time multitask scheduling method and device
KR20200122364A (en) Resource scheduling method and terminal device
CN103946820B (en) Response time is read to improve from internal diameter and the external diameter periodically degradation of dish
CN108153505A (en) Display methods, electronic equipment and the computer storage media of handwriting input content
CN109471843A (en) A kind of metadata cache method, system and relevant apparatus
JP2022526333A (en) Data processing methods and equipment, computer devices, recording media, and computer programs
US9804903B2 (en) Data processing apparatus for pipeline execution acceleration and method thereof
CN101957729B (en) Logical block transformation method and method and device compatible with reading and writing of user based on same
KR102205899B1 (en) Method and apparatus for avoiding bank conflict in memory
WO2013035246A1 (en) Virtual computer control apparatus, virtual computer control method, virtual computer control program, and integrated circuit
CN109656479B (en) Method and device for constructing memory command sequence
CN108446096B (en) Data computing system
JP2007280253A (en) Information processor and information processing method
US11481250B2 (en) Cooperative workgroup scheduling and context prefetching based on predicted modification of signal values
WO2015199734A1 (en) Buffer-based update of state data
JP2010061620A (en) Dma device and dma transfer method
CN104516827B (en) A kind of method and device of read buffer
KR102407781B1 (en) Graphics context scheduling based on flip queue management
CN117806837B (en) Method, device, storage medium and system for managing hard disk tasks
CN107577439A (en) Distribute method, apparatus, equipment and the computer-readable recording medium of process resource
US20210389985A1 (en) Data processing method, electronic device, and storage medium

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210924

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220930

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230418