JP6949045B2 - 分散クラスタ型訓練方法及び装置 - Google Patents

分散クラスタ型訓練方法及び装置 Download PDF

Info

Publication number
JP6949045B2
JP6949045B2 JP2018549518A JP2018549518A JP6949045B2 JP 6949045 B2 JP6949045 B2 JP 6949045B2 JP 2018549518 A JP2018549518 A JP 2018549518A JP 2018549518 A JP2018549518 A JP 2018549518A JP 6949045 B2 JP6949045 B2 JP 6949045B2
Authority
JP
Japan
Prior art keywords
weight
sample data
training
gradient
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018549518A
Other languages
English (en)
Other versions
JP2019511054A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2019511054A publication Critical patent/JP2019511054A/ja
Application granted granted Critical
Publication of JP6949045B2 publication Critical patent/JP6949045B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3826Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
    • G06F9/3828Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage with global bypass, e.g. between pipelines, between clusters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/504Resource capping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/505Clust

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本出願は、機械訓練技術の分野に関し、特に分散クラスタ型訓練方法及び装置に関する。
本出願は、2016年3月26日に出願された“Distributed Cluster Training Method and Apparatus”と題する中国特許出願第201610180393.8号に対する優先権を主張し、その全体が参照により本明細書に組み込まれるものとする。
ビッグデータの適用に伴い、ユーザの商品の好みを予測するターゲットモデルなど、ビッグデータに基づいた数多くのターゲットモデルの全てにおいて、ターゲットモデルにおける重みは、対応するサンプルデータを用いて訓練されることを要する。重みは、ターゲットモデルのそれぞれのパラメータとして理解され得る。例えば、y=ax1+bx2+cx3という単純モデルにおいて、a、b、及びcは重みであり、x1、x2、及びx3は入力量であり、yは出力量である。上記のターゲットモデルは全て、訓練に機械学習の使用を要する。
一般に機械学習訓練には、独立型訓練及びクラスタ型訓練が含まれる。独立型訓練は全てのサンプルを使用して、F(X)の勾配:▽F(Xt−1)を計算し(Fは損失関数であり、Xは重みである)、その後、収束に達するまで重みは反復的に更新される:Xt=Xt−1−α▽F(Xt−1)。クラスタ型訓練は最初に、あるルールに従って、勾配を計算する各マシンに訓練サンプルを分配し(各マシンにおけるデータは同一ではない)、次に縮小法を用いて勾配を集約し、重みの更新を行う。上記のプロセスは、収束に達するまで反復される。事実上、大量のデータを扱うことから、クラスタ型訓練は、業界標準となっている。
一方、訓練が独立型マシン上で行われ、サンプルのデータ量がメモリにロードできないほど大きい場合、訓練を行うことができない。独立型マシン上の訓練は、通信(ネットワーク)費用が発生しないが、ビッグデータに対応することができない(過去2週間の全ユーザに関連するログデータを閲覧するなど)。
独立型訓練の上記の問題に基づいて、既存技術は、分散クラスタを用いて機械学習の実行タスクを取り入れる。クラスタ型訓練の既存の解決策には、以下が含まれる。(1)あるルールに従ってデータ集合TをN部分に分割して、T={T1、T2、・・・、Tn}を取得する。(2)各訓練サーバによりデータの一部を取得し、Txとして設定する。(3)取得したデータを用いて、各訓練サーバにより対応勾配▽FTxを計算する。(4)勾配集約を行って、総勾配を取得する:総勾配=Σ1nFi。(5)ルールに従って重みを更新し(独立型訓練の重み更新方法と同様)、全てのマシンに新たな重みを再送する。(6)訓練が完了したか否かを判定し、完了していない場合には、第3のステップへ戻る。
より良い予測結果を獲得するために、クラスタ型訓練は、より多くの訓練データを使用することができる。毎回勾配が計算された後に勾配は集約されるため、通信トラフィックは非常に多く頻繁であり、クラスタ内のネットワークトラフィックはその許容容量を上回ることがあり、よってスイッチ、さらにはクラスタ全体の使用にも悪影響が及ぶ。
上記の問題を考慮して、本出願の実施形態は、上記の問題を克服する、または上記の問題を少なくとも部分的に解決する分散クラスタ型訓練方法及び対応する分散クラスタ型訓練装置を提供する。
上記の問題を解決するために、本出願は分散クラスタ型訓練方法を開示し、当方法は、少なくとも1つのサンプルデータを含むサンプル集合を読み込むことと、クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配を取得することであって、収集命令を受信する前に訓練の複数反復が存在する場合、第1の重みは、前回の訓練で取得された第1の勾配に基づいて生成され、反復訓練の後続反復の現行の重みとして使用される、取得することと、収集命令が受信されると、第1の勾配を、各第1の勾配を収集して第2の重みを計算するアグリゲーションサーバへ送信することと、アグリゲーションサーバにより送信される第2の重みを受信して、現行の重みを更新することと、を含む。
本出願はまた、分散クラスタ型訓練装置を開示し、当装置は、少なくとも1つのサンプルデータを含むサンプル集合を読み込むために使用されるサンプル読み込みモジュールと、クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配を取得するために使用される反復訓練モジュールであって、収集命令を受信する前に訓練の複数反復が存在する場合、第1の重みは、前回の訓練で取得された第1の勾配に基づいて生成され、反復訓練の後続反復の現行の重みとして使用される、反復訓練モジュールと、収集命令が受信されると、第1の勾配を、各第1の勾配を収集して第2の重みを計算するアグリゲーションサーバへ送信するために使用される結果送信モジュールと、アグリゲーションサーバにより送信される第2の重みを受信して現行の重みを更新するために使用される更新モジュールと、を含む。
本出願の実施形態は、以下の利点を含む。
本出願の実施形態において、訓練サーバは、収集命令を受信する前に、訓練サーバが読み込んだサンプル集合を使用して、サンプル集合内のサンプルデータ及び現行の重みを用いて第1の勾配を反復的に訓練し続けることができる。同時に、スケジューリングサーバは、閾値条件が満たされるか否か、クラスタシステム環境を監視することができる。クラスタシステム環境が閾値条件を満たしたことが検出されると、システムは、各訓練サーバへ収集命令を送信することができ、各訓練サーバは、訓練から取得した第1の勾配を、アグリゲーションサーバへ送信する。アグリゲーションサーバは、第1の勾配を集約し、第2の重みを計算する。各訓練サーバが自身のサンプルデータの訓練を終える前に、第2の重みが各訓練サーバへ送信され、その現行の重みが更新される。このようにして、システムは、システム環境を監視して、収集命令が発行される時を制御し、相応して訓練サーバは、プロセス全体を通して毎回訓練終了時にサーバへ訓練結果を送信することなく、収集命令を受信した後に第1の勾配をアグリゲーションサーバへ送信し、これにより、ネットワークトラフィックは削減され、スイッチへの影響は低減され、クラスタ全体の使用への悪影響は防止される。
本出願の分散クラスタ型訓練方法の実施形態のフローチャートである。 本出願の分散クラスタ型訓練方法の別の実施形態のフローチャートである。 本出願の分散クラスタ型訓練方法の別の実施形態のフローチャートである。 本出願の分散クラスタ型訓練方法の別の実施形態のフローチャートである。 本出願の分散クラスタ型訓練装置の実施形態の構造ブロック図である。 本出願の分散クラスタ型訓練システムの実施形態の構造ブロック図である。
本出願の前記の目的、特徴、及び利点をより理解しやすくするために、本出願は、添付図面及び具体的な実施態様に関連して、本明細書に詳しく説明される。
本出願の実施形態の中核概念のうちの1つとして、クラスタ内のターゲットモデルが既存技術で訓練される場合、クラスタ内の訓練サーバにより訓練される勾配は毎回訓練後に直接収集されるため、これにより頻繁に大量のトラフィックが生み出され、クラスタ内のネットワークトラフィックはその許容容量を上回ることがあり、よってスイッチ、さらにはクラスタ全体の使用にも悪影響が及ぶことが挙げられる。本出願の実施形態において、訓練サーバは、収集命令を受信する前に、訓練サーバが読み込んだサンプル集合を使用して、サンプル集合内のサンプルデータ及び現行の重みを用いて第1の勾配を反復的に訓練し続けることができる。同時に、システムは、閾値条件が満たされるか否か、クラスタシステム環境を監視することができ、閾値条件は、ネットワークトラフィックがクラスタシステム環境内のその許容容量に到達することが起こらないようにすることができる。クラスタシステム環境が閾値条件を満たしたことが検出されると、システムは、各訓練サーバへ収集命令を送信することができ、各訓練サーバは、訓練から取得した第1の勾配を、アグリゲーションサーバへ送信する。アグリゲーションサーバは、様々な第1の勾配を集約し、第2の重みを計算する。各訓練サーバがそのサンプルデータの訓練を終える前に、第2の重みが各訓練サーバへ送信され、その現行の重みが更新される。このようにして、システムは、システム環境を監視して、収集命令が発行される時を制御する。相応して、訓練サーバは、プロセス全体を通して毎回訓練終了時にサーバへ訓練結果を送信することなく、収集命令を受信した後に第1の勾配をアグリゲーションサーバへ送信し、これにより、ネットワークトラフィックは削減され、スイッチへの影響は低減され、よってクラスタ全体の使用への悪影響は防止される。
第1の実施形態
図1を参照すると、本出願の分散クラスタ型方法の実施形態のフローチャートが示され、これは具体的に以下のステップを含み得る。
ステップ110:少なくとも1つのサンプルデータを含むサンプル集合が読み込まれる。
本出願の実施形態において、クラスタ全体は、複数の訓練サーバと、少なくとも1つスケジューリングサーバと、少なくとも1つのアグリゲーションサーバとを含み得る。訓練サーバは、反復訓練に関与するサンプル集合を取得して、第1の勾配を取得することができる。スケジューリングサーバは、システム全体のクラスタシステム環境を監視して、クラスタシステム環境に応じて、訓練サーバへ収集命令を発行するか否かを判定することができる。アグリゲーションサーバは、各訓練サーバにより送信される第1の勾配を受信し、第2の重みを計算し得る。
本出願の実施形態において、訓練サーバと、スケジューリングサーバと、アグリゲーションサーバとの間の通信データは、クラスタ内のスイッチを通して送信される。
本出願の実施形態におけるスケジューリングサーバは、各訓練サーバにより取得される必要のあるサンプル集合の取得パラメータを、訓練サーバへ送信し得ることが、理解されよう。取得パラメータを取得後、訓練サーバは、取得パラメータに従って、指定された場所から必要とされるサンプル集合を読み込み得る。例えば、パラメータにより特定されるトランザクションログデータの集合が、トランザクションログサーバから、サンプル集合として取得される。明らかに、本出願の実施形態はまた、他のサーバからも対応するサンプル集合を取得することができ、要件に従って設定され得る。本出願の実施形態には、いずれの制限も存在しない。
ステップ120:クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、サンプルデータ及び現行の重みは反復訓練のターゲットモデル訓練関数に入力され、第1の勾配が取得され、収集命令を受信する前に訓練の複数反復が存在する場合、前回の訓練に基づいて生成された第1の重みは、反復訓練の後続反復の現行の重みとして使用される。
訓練サーバAでは、サンプル集合を読み込んだ後、ターゲットモデルの様々な現行の重みは最初、事前に経験的に決定される第2の重みX0に設定される。この時点で、複数のサンプルデータがサンプル集合から順次に抽出され、訓練サーバAに属する第1の勾配を訓練するために、訓練のターゲットモデルに入力され得る。
訓練サーバAは、収集命令を受信する前に、反復訓練のためサンプルデータを読み込み続けることができる。実用において、明らかに、各訓練サーバは、それの全ての訓練サンプルを読み込み、ローカルに記憶し、次いで訓練を行うことができる。例えば、サンプルデータM1及び第1回の現行の重みX0をターゲットモデル訓練関数に入力して、第1の勾配▽F(X0)は訓練され、次いで▽F(X0)は、重みX1を計算するために用いられ、X1は、第2回訓練の現行の重みとして機能する。次に、サンプルデータM2及び現行の重みX1をターゲットモデル訓練関数に入力して、第1の勾配▽F(X1)は訓練され、収集命令が受信されるまで、同様に繰り返される。Xi(i=1、2、3、・・・・・・)は、多次元ベクトルであり、各次元は、ターゲットモデルにおけるパラメータに該当する。ターゲットモデル訓練関数は、前述に説明されるように、損失関数F(X)であり得る。
実用において、前述のプロセスは一例とみなされる。第1回目、第1のサンプルデータは、Xが現行の重みである損失関数F(X)に代入される。次いでF(X)の勾配▽F(X)が計算され、第1の勾配▽F(X1)は、式Xt=Xt-1-α▽F(Xt−1)に従って更新される。損失関数F(X)は実際の状況に応じて設定することができ、既存の技術はその詳細のプロセスを有しているため、ここでは繰り返し記載しない。同様のプロセスが第2回目に行われる。訓練サーバは、第3回目まで訓練を行い、第1の勾配▽F(X2)を取得することが想定される。この時、スケジューリングサーバにより送信される収集命令が受信されると、第1の勾配▽F(X2)は、スイッチを介してアグリゲーションサーバに直接送信され得る。
本出願の実施形態において、訓練サーバは、前回の収集後から第1の勾配の訓練回数を記録する。収集命令を送信する時、スケジューリングサーバは、何回目の第1の勾配を訓練サーバが送信したかを管理する。スケジューリングサーバは、Nがゼロより大きい整数である時、収集命令を送信する前に各訓練サーバがN回の訓練を実行するように制御し得る。例えば、訓練サーバは、収集命令を受信する前に、3回の訓練のみを実行するように通知され、3回の訓練を完了すると、スケジューリングサーバの命令を待つ。明らかに、実用において、Nは制限することができ、Nの値はまた、実要件の訓練の精度誤差に基づいて設定することができる。実要件の訓練の精度誤差は、過去の訓練結果の経験に基づいて設定することができる。
本出願の実施形態において、各訓練サーバへスケジューリングサーバにより送信される収集命令には、指定回数が含まれる。各訓練サーバは次いで、対応回数の訓練から取得される第1の勾配を、アグリゲーションサーバへ送信する。
本出願の実施形態において、各訓練サーバの反復訓練中、スケジューリングサーバは、クラスタシステム環境を監視する。クラスタシステム環境が閾値条件を満たす場合、スケジューリングサーバは、各訓練サーバへ収集命令を発行する。閾値条件は、訓練サーバの送信頻度を、ネットワーク輻輳を生じるほど高くなりすぎないように、制限し得る。閾値条件の一例としては、ネットワーク利用が30%未満であることが挙げられる。
本出願の別の望ましい実施形態において、クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバが収集命令を発行することは、クラスタ全体のクラスタネットワーク利用が第1の閾値条件を満たす時にスケジューリングサーバが収集命令を発行することを含む。
本出願の実施形態において、スケジューリングサーバは、例えば各サーバのネットワークカードが発行及び受信したパケットの量を取得して、クラスタ全体のクラスタネットワーク利用を監視することができ、ネットワークカード自体は100Mなどの最大フロー制限を有する。各ネットワークカードが発行及び受信したパケットの量は特定され、全ネットワークカードの総フロー制限により割られる。よって、クラスタネットワーク利用を取得することができる。明らかに、各サーバのネットワークカードの利用を計算することも可能であり、そこで各ネットワークカードの利用は重み付け及び平均されて、クラスタネットワーク利用が取得される。この場合、第1の閾値条件には、クラスタネットワーク利用が第1の閾値未満であることが含まれる。例えば、第1の閾値は、30%に設定される。次いで、クラスタネットワーク利用が30%未満であることをスケジューリングサーバが監視及び検出すると、収集命令が各訓練サーバへ送信され得る。
本出願の別の望ましい実施形態において、クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバが収集命令を発行することは、クラスタ全体のクラスタ障害率が第2の閾値条件を満たす時にスケジューリングサーバが収集命令を発行することを含む。
本出願の実施形態において、クラスタ全体における各サーバは落ちることがある。従って、本出願の実施形態は、各サーバの障害を監視し、次いで障害サーバの数をクラスタ全体におけるサーバの数で割ることにより、クラスタの障害率を取得し得る。明らかに、本出願の実施形態において、訓練サーバの障害の第1の数のみが監視され、次いで第1の数は、クラスタ全体に関連する数により割られて、クラスタ障害率が取得される。明らかに、第1の数は、全訓練サーバの数によっても割られて、クラスタ障害率が取得され得る。この場合、第2の閾値条件には、クラスタ障害率が第2の閾値未満であることが含まれる。例えば、第2の閾値が5%に設定された場合、クラスタ障害率が5%未満の時に、スケジューリングサーバは各訓練サーバへ収集命令を発行し得る。
前述に説明されたサーバ障害には、クラッシュによるサーバからの無応答、及びある時間を超えるサーバの応答遅延が含まれることに留意されたい。本出願の実施形態において、スケジューリングサーバは定期的に、各サーバへテスト命令を送信し得る。サーバが特定の時間より前に応答しない場合、サーバにおいて障害が発生したものとみなされ得る。
明らかに、本出願の実施形態において、スケジューリングサーバは、収集命令を発行する前に、各訓練サーバの訓練状態も監視し得る。例えば、前回の収集命令が送信されて以来、各訓練サーバが少なくとも1回の訓練を完了したことが監視された後、前述の閾値要件(複数可)が満たされると、収集命令が発行される。
ステップ130:収集命令が受信されると、第1の勾配はアグリゲーションサーバへ送信される。
ステップ140:アグリゲーションサーバは、各第1の勾配を収集し、第2の重みを計算する。
本出願の実施形態において、収集命令が受信されると、訓練サーバは、最後に更新された第1の勾配をアグリゲーションサーバへ送信し得る。
収集命令は訓練回数を有するため、各訓練サーバは、同じ回の第1の勾配をアグリゲーションサーバへ送信する。
本出願の実施形態において、複数のアグリゲーションサーバが存在する場合、各訓練サーバは、事前に設定されたアグリゲーションサーバとの対応関係に従って、各自の第1の勾配を、対応するアグリゲーションサーバへ送信し得る。各アグリゲーションサーバは、受信した第1勾配の部分を収集し、次に各アグリゲーションサーバは、収集した第1の勾配をアグリゲーションサーバへ再送し、そしてこのアグリゲーションサーバが、最終収集を行い、最終的に収集された第1の勾配に基づいて第2の重みを計算する。
全訓練サーバの第1の勾配を受信後、アグリゲーションサーバは、第1の勾配を集約し、次いで集約結果に従って第2の重みを計算し得る。
この時、アグリゲーションサーバは、各訓練サーバが訓練を完了したか否かを判定することができ、訓練が完了していない場合、第2の重みが各訓練サーバへ送信される。
実用において、各訓練サーバは、第1の勾配が送信された時に、サンプル集合の全サンプルデータの訓練が完了したか否かを示す第1の識別子を送信し得ることが理解されよう。第1の識別子がnoである場合、訓練は完了していないことを示す。第1の識別子がyesである場合、訓練は完了したことを示す。アグリゲーションサーバは、識別子に基づいて、各訓練サーバがサンプル集合の全てのサンプルデータを訓練したか否かを判定することができる。明らかに、実用において、アグリゲーションサーバは、本出願の実施形態に限定されない他の手段で、各訓練サーバがサンプル集合の全サンプルデータを訓練したか否かを判定することができる。
ステップ150:アグリゲーションサーバにより送信される第2の重みが受信され、現行の重みが更新される。
訓練サーバは、サンプルデータの訓練が完了する前に、アグリゲーションサーバにより送信される第2の重みを受信することができる。この場合、訓練サーバは、第2の重みで現行の重みを更新し、それから次の回の訓練の後続のサンプルデータを読み込み得る。明らかに、サンプルデータがローカルに読み込まれた場合、次の回の訓練でも、次の回のサンプルデータはローカルに読み込まれ得る。
本出願の実施形態において、訓練サーバは、収集命令を受信する前に、訓練サーバが読み込んだサンプル集合を使用して、サンプル集合内のサンプルデータ及び現行の重みを用いて第1の勾配を反復的に訓練し続け得る。同時に、システムは、クラスタシステム環境が閾値条件を満たすか否かを監視し得る。閾値条件は、ネットワークトラフィックが、クラスタシステム環境におけるその許容容量に達することを防ぎ得る。クラスタシステム環境が閾値条件を満たしたことをシステムが監視すると、収集命令が各訓練サーバへ送信され得、各訓練サーバは、訓練から取得した第1の勾配を、アグリゲーションサーバへ送信する。アグリゲーションサーバは、各第1の勾配を集約し、第2の重みを計算し、各訓練サーバが自身のサンプルデータの訓練を完了して自身の現行の重みを更新する前に、第2の重みを各訓練サーバへ送信する。従って、システムは、システム環境を監視し、収集命令を送信するタイミングを制御し、訓練サーバは、収集命令を受信した後にのみ、アグリゲーションサーバへ第1の勾配を送信する。よって、プロセス全体を通して毎回訓練終了時に訓練結果がサーバへ送信されることはなく、従ってネットワークトラフィックは削減され、スイッチへの影響は低減され、クラスタ全体の使用への悪影響は回避される。
第2の実施形態
図2を参照すると、本出願の分散クラスタリング方法の別の実施形態のフローチャートが示され、これは具体的に以下のステップを含み得る。
ステップ210:少なくとも1つのサンプルデータを含むサンプル集合が読み込まれ、1つのサンプルデータは時間情報を含む。
本出願の実施形態において、ユーザID、ユーザトランザクション活動、収集活動データ、及び閲覧活動データなどの従来のデータに加えて、1つのサンプルデータに追加データが加えられる。このような追加データは、例えば最も近日のトランザクションデータ、過去二日のトランザクションデータといった、1つのサンプルデータの生成時間を記録する。
ステップ220:各サンプルデータの時間情報を用いて、サンプルデータの第3の重みが計算される。
本出願の実施形態において、サンプルデータがより新しくある程、ユーザの実際の興味及び意向がより反映され、サンプルデータにより訓練されるモデルはより正確となる。本出願は、各サンプルデータの時間情報を用いて、サンプルデータの第3の重みを計算し得る。第3の重みは、各サンプルデータの時間情報が現在時刻により近い程、より大きい重みを示す。逆の場合、重みはより小さくなる。
本出願の別の望ましい実施形態において、各サンプルデータの時間情報を用いて、サンプルデータの第3の重みを計算することは、以下を含む。
サブステップ221:第3の重みを計算するために、指数関数の負の指数パラメータに、各サンプルデータの時間情報が代入される。
本出願の実施形態において、現在時刻を基にした時間情報は、デジタル情報に変換され得る。例えば、1つのサンプルデータN1の時間情報は1であり、これは現在時刻から1つのサンプルデータN1の間隔が1日であることを示し、1つのサンプルデータN2の時間情報は3であり、これは現在時刻から1つのサンプルデータN2の間隔が3日であることを示す。明らかに、時間情報をデジタル情報に変換するために、本出願の実施形態に限定されない他の方法が使用されてもよい。
本出願の実施形態において、指数関数の基数は、自然数eに設定され得る、または1より大きい他の数に設定され得る。自然数eを採用することが好ましくある。次に本出願は、xが時間情報である時、e‐xを用いて第3の重みを計算し得る。例えば、N1の場合には第3の重みはe‐1となることなどが挙げられる。明らかに、指数関数の基数として、2などの他の基数を使用することもできる。この場合、基数関数は、2‐xとなる。
ステップ230:第3の重みが第3の閾値未満である場合、対応する1つのサンプルデータが破棄される。
例えば、第3の閾値は、0.001に設定される。第3の重みが第3の閾値未満である場合、これは、関連する1つのサンプルデータが、現在時刻から離れすぎていることを示す。このような1つのサンプルデータは、ユーザの興味及び意向にほとんど影響を及ぼさないため、破棄され得る。これにより、計算量が削減され、システムのリソースが節約される。
ステップ240:クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配が取得され、収集集約命令を受信する前に複数回の反復訓練が存在する場合、前回の訓練で取得された第1の勾配に基づいて生成された第1の重みは、反復訓練の後続回の現行の重みとして使用される。
ステップ250:収集命令を受信すると、第1の勾配はアグリゲーションサーバへ送信され、各サンプルデータのそれぞれの第3の重みを集約して取得された第1の係数が、アグリゲーションサーバへ送信される。
本出願の実施形態において、サンプル集合のデータを訓練する前に、訓練サーバは、各サンプルデータの第3の重みを計算し得、次いで保持された各サンプルデータの第3の重みを集約して、第1の係数を取得し得る。
ステップ260:アグリゲーションサーバは、各第1の勾配及び各第1の勾配に対応する第1の係数に基づいて重み付け計算を行い、第2の勾配を取得する。
ステップ270:アグリゲーションサーバは、第2の勾配に基づいて第2の重みを計算する。
例えば、訓練サーバAは、第1の勾配▽F(X1)Aと共に、第1の係数0.8を送信する。訓練サーバBは、第1の勾配▽F(X1)Bと共に、第1の係数0.7を送信する。訓練サーバCは、第1の勾配▽F(X1)Cと共に、第1の係数0.5を送信する。よって、第2の勾配は、(0.8▽F(X1)A+0.7▽F(X1)B+0.5▽F(X1)C)である。
次いで、第2の勾配から第2の重みが計算される。
第1の実施形態において説明されたように、その後第2の重みは、訓練を完了していない各訓練サーバへ送信され得る。
ステップ280:アグリゲーションサーバにより送信される第2の重みが受信され、現行の重みが更新される。
本出願の実施形態において、訓練サーバは、収集命令を受信する前に、訓練サーバが読み込んだサンプル集合を使用して、サンプル集合内のサンプルデータ及び現行の重みを用いて第1の勾配を反復的に訓練し続け得る。同時に、システムは、クラスタシステム環境が閾値条件を満たすか否かを監視し得る。閾値条件は、ネットワークトラフィックが、クラスタシステム環境におけるその許容容量に達することを防ぎ得る。クラスタシステム環境が閾値条件を満たしたことをシステムが監視すると、収集命令が各訓練サーバへ送信され得、各訓練サーバは、訓練から取得した第1の勾配を、アグリゲーションサーバへ送信する。アグリゲーションサーバは、各第1の勾配を集約し、第2の重みを計算し、各訓練サーバが自身のサンプルデータの訓練を完了して自身の現行の重みを更新する前に、第2の重みを各訓練サーバへ送信する。従って、システムは、システム環境を監視し、収集命令を送信するタイミングを制御し、相応して訓練サーバは、収集命令を受信した後にのみ、アグリゲーションサーバへ第1の勾配を送信する。よって、プロセス全体を通して毎回訓練終了時に訓練結果がサーバへ送信されることはなく、従ってネットワークトラフィックは削減され、スイッチへの影響は低減され、クラスタ全体の使用への悪影響は回避される。
さらに、本出願の実施形態は、データの適時性に基づいて、1つの新しいデータの重みの増大、1つの古いデータの重みの低減、及びいくつかの古いデータの破棄を、自動で行うことができるため、ターゲットモデルは、ユーザの現在の行動により適し、計算量を削減することができる。
第3の実施形態
図3を参照すると、本出願の分散クラスタリング方法の別の実施形態のフローチャートが示され、これは具体的に以下のステップを含み得る。
ステップ310:少なくとも1つのサンプルデータを含むサンプル集合が読み込まれ、1つのサンプルデータは時間情報を含む。
ステップ312:サンプル集合内の様々なサンプルデータが統合される。
ステップ314:統合サンプルデータに関して、統合されたサンプルデータの数が記録される。
本出願の実施形態において、同じコンテンツを有する複数のサンプルデータは、同じ期間に従って、統合され得る。例えば、ユーザAは、2015年12月12日の午前10時に商品Aを買い、2015年12月31日の午後3時に商品Aを買ったとする。ユーザAが2015年12月31日に商品Aを購入したため、これらの2つのサンプルデータは統合され得、統合数は2となる。
実際には、サンプルデータに対して統合数の列も追加することができ、統合数はこの列に書き込まれる。
ステップ316:各サンプルデータの情報を用いて、重み低減係数が計算される。
本出願の実施形態において、各サンプルデータの時間情報を使用して、重み低減係数が計算され得る。現在時刻に近い程、重み低減係数はより大きい。逆の場合、重み低減係数はより小さい。
本出願の別の望ましい実施形態において、各サンプルデータの時間情報を用いて、重み低減係数を計算することは、以下を含む。
サブステップC11:重み低減係数を計算するために、指数関数の負の指数パラメータに、各サンプルデータの時間情報が代入される。
本出願の実施形態において、現在時刻を基にした時間情報は、デジタル情報に変換され得る。例えば、1つのサンプルデータN1の時間情報は1であり、これは現在時刻から1つのサンプルデータN1の間隔が1日であることを示し、1つのサンプルデータN2の時間情報は3であり、これは現在時刻から1つのサンプルデータN2の間隔が3日であることを示す。明らかに、時間情報をデジタル情報に変換するために、本出願の実施形態に限定されない他の方法が使用されてもよい。
従って本出願は、xが時間情報である時、e‐xを用いて重み低減係数を計算し得る。例えば、N1の場合には重み低減係数はe‐1となることなどが挙げられる。明らかに、指数関数の基数として、2などの他の基数を使用することもできる。この場合、基数関数は、2‐xとなる。
ステップ318:重み低減係数と統合数との積を計算して、第3の重みが取得される。
本出願の実施形態において、サンプルデータが統合された場合、サンプル集合内のサンプルデータは統合サンプルデータとなり、次いでサンプルデータの統合データは、その重み低減係数により割られ、第3の重みが取得され得る。
ステップ316〜318は、第2の実施形態におけるステップ220の望ましいステップであり得ることが理解されよう。
ステップ320:第3の重みが第3の閾値未満である場合、対応する1つのサンプルデータは破棄される。
ステップ322:クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配が取得され、収集集約命令を受信する前に複数回の反復訓練が存在する場合、前回の訓練で取得された第1の勾配に基づいて生成された第1の重みは、反復訓練の後続回の現行の重みとして使用される。
ステップ324:収集命令を受信すると、第1の勾配はアグリゲーションサーバへ送信され、各サンプルデータのそれぞれの第3の重みを集約して取得された第1の係数が、アグリゲーションサーバへ送信される。
ステップ326:アグリゲーションサーバは、各第1の勾配及び各第1の勾配に対応する第1の係数に基づいて重み付け計算を行い、第2の勾配を取得する。
ステップ328:アグリゲーションサーバは、第2の勾配に基づいて第2の重みを計算する。
本出願の実施形態において、システムは、システム環境を監視し、収集命令を送信するタイミングを制御し、相応して訓練サーバは、収集命令を受信した後にのみ、アグリゲーションサーバへ第1の勾配を送信する。よって、プロセス全体を通して毎回訓練終了時に訓練結果がサーバへ送信されることはなく、従ってネットワークトラフィックは削減され、スイッチへの影響は低減され、クラスタ全体の使用への悪影響は回避される。
さらに、本出願の実施形態は、複数のサンプルデータを統合し、訓練されるサンプルの数を削減し、従って訓練速度を向上させる。
さらに、本出願の実施形態は、データの適時性に基づいて、1つの新しいデータの重みの増大、1つの古いデータの重みの低減、及びいくつかの古いデータの破棄を、自動で行うことができるため、ターゲットモデルは、ユーザの現在の行動により適し、計算量を削減することができる。
第4の実施形態
図4を参照すると、本出願の分散クラスタリング方法の別の実施形態のフローチャートが示され、これは具体的に以下のステップを含み得る。
ステップ410:訓練サーバは、少なくとも1つのサンプルデータを含むサンプル集合を読み込み、1つのサンプルデータは時間情報を含む。
ステップ412:訓練サーバは、サンプル集合内の様々なサンプルデータを統合する。
ステップ414:訓練サーバは、統合サンプルデータに関して、サンプルデータの統合数を記録する。
ステップ416:訓練サーバは、各サンプルデータの時間情報を用いて、重み低減係数を計算する。
ステップ418:訓練サーバは、重み低減係数と統合数との積を計算して、第3の重みを取得する。
ステップ416〜418は、第2の実施形態におけるステップ220の望ましいステップであり得ることが理解されよう。
ステップ420:第3の重みが第3の閾値未満である場合、訓練サーバは、対応する1つのサンプルデータを破棄する。
ステップ422:収集命令を受信する前に、訓練サーバは、サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配を取得し、収集集約命令を受信する前に複数回の反復訓練が存在する場合、前回の訓練で取得された第1の勾配に基づいて生成された第1の重みは、反復訓練の後続回の現行の重みとして使用される。
ステップ424:クラスタシステム環境が閾値条件を満たす場合、スケジューリングサーバは、収集命令を発行し、スケジューリングサーバは、各訓練サーバへ収集命令を送信する。
ステップ426:収集命令を受信すると、訓練サーバは、第1の勾配はアグリゲーションサーバへ送信し、各サンプルデータのそれぞれの第3の重みを集約して取得された第1の係数を、アグリゲーションサーバへ送信する。
ステップ428:アグリゲーションサーバは、各第1の勾配及び各第1の勾配に対応する第1の係数に基づいて重み付け計算を行い、第2の勾配を取得する。
ステップ430:アグリゲーションサーバは、第2の勾配に基づいて第2の重みを計算する。
ステップ432:アグリゲーションサーバは、新たに取得した第2の重みのバックアップを記憶し、新たな第2の重みを各訓練サーバへ送信する。
本出願の実施形態において、新たな第2の重みが取得された後、アグリゲーションサーバは、第2の重みのバックアップを保存し得る。
本出願の別の望ましい実施形態において、アグリゲーションサーバにより、新たに取得された第2の重みのバックアップを記憶することは、以下を含む。
ステップD11:アグリゲーションサーバは、新たに取得された第2の重みと前のバックアップの第2の重みとの変化量が、変化閾値を超えるか否かを判定する。
ステップD12:変化閾値を超える場合、新たに取得された第2の重みはバックアップされる。
本出願の実施形態において、アグリゲーションサーバは、新たな第2の重みを取得し、例えば第2の重みと前のバックアップの最後の重みとの変化量が5%などの変化閾値未満であるか否か、前のバックアップのうち少なくとも1つのバックアップの第2の重みに関して変化量を計算する。5%未満である場合、新たな第2の重みは破棄される。5%以上である場合、第2の重みはバックアップされる。よって、バックアップ回数を削減することができる。ステップC13にて、外部サービスサーバのターゲットモデルは更新されなくてもよく、これにより、テストといったサービスサーバによるターゲットモデルの使用への不必要な影響が回避される。
重みはバックアップされたため、ある時点で訓練全体が失敗した場合、スケジューリングサーバはアグリゲーションサーバに、訓練が再開される時に訓練サーバへバックアップの最新の第2の重みを送信するように通知することができ、これにより、訓練サーバは、最新の第2の重みを現行の重みの初期値として使用して、前のサンプルと合わせて訓練を続けることができ、従って訓練効率は向上することが理解されよう。
明らかに、本出願の実施形態において、訓練が失敗した後、訓練はまた第1のサンプルから開始され得るが、現行の重みはバックアップの最新の第2の重みである。
アグリゲーションサーバは、最新の第2の重みを、各訓練サーバへ送信する。
ステップ434:訓練サーバは、アグリゲーションサーバにより送信される第2の重みを受信し、現行の重みを更新する。
本出願の別の望ましい実施形態において、アグリゲーションサーバが新たに取得された第2の重みをバックアップした後、方法はさらに以下を含む。
サブステップC13:アグリゲーションサーバは、第2の重みをターゲットモデルに代入し、サービスサーバへ出力する。
本出願の実施形態において、バックアップの第2の重みは、ターゲットモデルに直接代入され、サービスサーバに出力され得るため、サービス組織は、複数の用途でターゲットモデルを直接使用することができる。
本出願は、以下の利点を有する。
(1)遅延通信構造:各回の訓練で集約が行われることによりネットワークの使用が最大限に達し得ることを回避するために、全てのマシンが重み集約動作を行う必要があるか否かに関して、クラスタ環境及び反復状況に応じて、自動で判定が行われる。
(2)重みバックアップ構造:ルールに従って、重みは自動でバックアップされる。ある機構が一旦問題を有すると、前の重みをバックアップから引き戻すことができ、訓練を継続することができ、従って訓練を最初から行うことなく、訓練効率を向上させることができる。
(3)データ区分装置:データの適時性に応じて、1つの新しいデータの重みは自動で増大され、1つの古いデータの重みは自動で低減され、いくつかの古いデータは自動で破棄される。
方法の実施形態は、簡素な説明のため、一連の動作の組み合わせで全て表されることに留意されたい。しかしながら、あるステップは本出願の実施形態に従って別の順序で、または同時に行われてもよいため、本出願の実施形態は、説明される動作の順序に限定されないことが、当業者には理解されよう。さらに、明細書において説明される実施形態は、全て望ましい実施形態であり、それに関わる動作は、必ずしも本出願の実施形態において必要であるとは限らないことも、当業者には理解されよう。
図5を参照すると、本出願の分散クラスタ型訓練装置の実施形態の構造ブロック図が示され、これは具体的に以下のモジュールを含み得る。
サンプル読み込みモジュール510は、少なくとも1つのサンプルデータを含むサンプル集合を読み込むために使用される。
反復訓練モジュール520は、クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配を取得するために使用され、収集命令を受信する前に訓練の複数反復が存在する場合、第1の重みは、前回の訓練で取得された第1の勾配に基づいて生成され、反復訓練の後続反復の現行の重みとして使用される。
結果送信モジュール530は、収集命令が受信されると、第1の勾配を、各第1の勾配を収集して第2の重みを計算するアグリゲーションサーバへ送信するために使用される。
更新モジュール540は、アグリゲーションサーバにより送信される第2の重みを受信して、現行の重みを更新するために使用される。
本出願の別の望ましい実施形態において、クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバが収集命令を発行することは、クラスタ全体のクラスタネットワーク利用率が第1の閾値条件を満たす時にスケジューリングサーバが収集命令を発行すること、及び/またはクラスタ全体のクラスタ障害率が第2の閾値条件を満たす時にスケジューリングサーバが収集命令を発行することを含む。
本出願の実施形態において、第1の閾値条件には、クラスタネットワーク利用率が第1の閾値未満であることが含まれる。
第2の閾値条件には、クラスタ障害率が第2の閾値未満であることが含まれる。
本出願の別の望ましい実施形態において、サンプル読み込みモジュールの後、装置はさらに、各サンプルデータの時間情報を用いて各サンプルデータの第3の重みを計算するために使用される第3の重み計算モジュールと、関連する重みが第3の閾値未満である場合、対応する1つのサンプルデータを破棄するために使用されるサンプル破棄モジュールと、を含む。
本出願の別の望ましい実施形態において、第3の重み計算モジュールは、各サンプルデータの時間情報を指数関数の負の指数パラメータに代入して、第3の重みを計算するために使用される指数計算モジュールを含む。
本出願の別の望ましい実施形態において、第3の重み計算モジュールの前に、装置はさらに、サンプル集合内の様々なサンプルデータを統合する統合モジュールと、統合サンプルデータに関して、サンプルデータの統合数を記録するために使用される統合記録モジュールと、を含む。
本出願の別の望ましい実施形態において、第3の重み計算モジュールは、各サンプルデータの時間情報を用いて、重み低減係数を計算するために使用される重み低減係数計算モジュールと、重み低減係数と統合数との積を計算して、第3の重みを取得するために使用される第1計算モジュールと、を含む。
本出願の別の望ましい実施形態において、収集命令を受信すると、各サンプルデータの第3の重みを集約して取得される第1の係数を、アグリゲーションサーバへ送信するために、結果送信モジュールがさらに使用される。
アグリゲーションサーバは、重み付け計算を行って、各第1の勾配と各第1の勾配に対応する第1の係数に基づく第2の勾配を取得するために使用される第1の重み集約モジュールと、第2の勾配に従って第2の重みを計算するために使用される第2の重み計算モジュールと、を含む。
本出願の別の望ましい実施形態において、アグリゲーションサーバはさらに、新たに取得された第2の重みをバックアップするために使用されるバックアップモジュールを含む。
本出願の別の望ましい実施形態において、バックアップモジュールは、新たに取得された第2の重みと前のバックアップの第2の重みとの変化量が、変化閾値を超えるか否かを判定するために、アグリゲーションサーバにより使用される変化計算モジュールと、変化閾値を超える場合に、新たに取得された第2の重みをバックアップするために使用される第1バックアップモジュールと、を含む。
本出願の別の望ましい実施形態において、バックアップモジュールの後、装置はさらに、第2の重みをターゲットモデルに代入してサービスサーバへ出力するために使用される出力モジュールを含む。
本出願は、以下の利点を有する。
(1)遅延通信構造:各回の訓練で集約が行われることによりネットワークの使用が最大限に達し得ることを回避するために、全てのマシンが重み集約動作を行う必要があるか否かに関して、クラスタ環境及び反復状況に応じて、自動で判定が行われる。
(2)重みバックアップ構造:ルールに従って、重みは自動でバックアップされる。ある機構が一旦問題を有すると、前の重みをバックアップから引き戻すことができ、訓練を継続することができ、従って訓練を最初から行うことなく、訓練効率を向上させることができる。
(3)データ区分装置:データの適時性に応じて、1つの新しいデータの重みは自動で増大され、1つの古いデータの重みは自動で低減され、いくつかの古いデータは自動で破棄される。
装置の実施形態は方法の実施形態と基本的な類似点を有するため、装置の実施形態の説明は、比較的に簡潔であり、関連部分は、方法の実施形態の説明を参照することができる。
第5の実施形態
図6を参照すると、本出願の分散クラスタ型訓練装置の実施形態の構造ブロック図が示され、これは具体的に以下のモジュールを含み得る。
スケジューリングサーバ610と、アグリゲーションサーバ620と、複数の訓練サーバ630とが含まれる。
スケジューリングサーバ610は、クラスタシステム環境が閾値条件を満たすか否かを監視して、条件を満たす場合に各訓練サーバ630へ収集命令を送信するように構成されたクラスタ監視モジュール611を含む。
本出願の別の望ましい実施形態において、クラスタ監視モジュール611は具体的に、クラスタ全体のクラスタネットワーク利用率が第1の閾値条件を満たす時に収集命令を発行するように、及び/またはクラスタ全体のクラスタ障害率が第2の閾値条件を満たす時に収集命令を発行するように構成される。
本出願の実施形態において、第1の閾値条件には、クラスタネットワーク利用率が第1の閾値未満であることが含まれる。
第2の閾値条件には、クラスタ障害率が第2の閾値未満であることが含まれる。
訓練サーバ630は、少なくとも1つのサンプルデータを含むサンプル集合を読み込むように構成されたサンプル読み込みモジュール631と、収集命令を受信する前に、サンプルデータ及び現行の重みを使用してターゲットモデル訓練関数に反復訓練を行い、第1の勾配を取得するように構成された反復訓練モジュール632であって、収集集約命令を受信する前に複数回の反復訓練が存在する場合、前回の訓練で取得された第1の勾配に基づいて生成された第1の重みは、反復訓練の後続回の現行の重みとして使用される、反復訓練モジュール632と、収集命令が受信されると、第1の勾配をアグリゲーションサーバへ送信するように構成された結果送信モジュール633と、第2の重みを受信して、現行の重みを更新するように構成された更新モジュール634と、を含む。
本出願の別の望ましい実施形態において、サンプル読み込みモジュール631の後、装置はさらに、各サンプルデータの時間情報を用いてサンプルデータの第3の重みを計算するように構成された第3の重み計算モジュールと、関連する第3の重みが第3の閾値未満である場合、対応する1つのサンプルデータを破棄するように構成されたサンプル破棄モジュールと、を含む。
本出願の別の望ましい実施形態において、第3の重み計算モジュールは、各サンプルデータの時間情報を指数関数の負の指数パラメータに代入して、各第3の重みを計算するように構成された指数計算モジュールを含む。
本出願の別の望ましい実施形態において、第3の重み計算モジュールの前に、装置はさらに、サンプル集合内の様々なサンプルデータを統合する統合モジュールと、統合サンプルデータに関して、サンプルデータの統合数を記録するために使用される統合記録モジュールと、を含む。
本出願の別の望ましい実施形態において、第3の重み計算モジュールは、各サンプルデータの時間情報を用いて、重み低減係数を計算するために使用される重み低減係数計算モジュールと、重み低減係数と統合数との積を計算して、第3の重みを取得するために使用される第1計算モジュールと、を含む。
本出願の別の望ましい実施形態において、結果送信モジュール633はさらに、収集命令を受信すると、各サンプルデータの第3の重みを集約して取得される第1の係数を、アグリゲーションサーバへ送信するように構成される。
アグリゲーションサーバ620は、各第1の勾配を集約して第2の重みを計算するように構成された収集計算モジュール621と、最新の第2の重みを各訓練サーバへ送信するように構成された第2の重み送信モジュール622と、を含む。
本出願の別の望ましい実施形態において、アグリゲーションサーバは、重み付け計算を行って、各第1の勾配と各第1の勾配に対応する第1の係数に基づく第2の勾配を取得するように構成された第1の重み集約モジュールと、第2の勾配に従って第2の重みを計算するように構成された第2の重み計算モジュールと、を含む。
本出願の別の望ましい実施形態において、アグリゲーションサーバはさらに、新たに取得された第2の重みをバックアップするバックアップモジュールを含む。
本出願の別の望ましい実施形態において、バックアップモジュールは、新たに取得された第2の重みと前のバックアップの第2の重みとの変化量が、変化閾値を超えるか否かをアグリゲーションサーバにより判定するように構成された変化計算モジュールと、変化閾値を超える場合に、新たに取得された第2の重みをバックアップするように構成された第1バックアップモジュールと、を含む。
本出願の別の望ましい実施形態において、バックアップモジュールの後、装置はさらに、第2の重みをターゲットモデルに代入してサービスサーバへ出力するように構成された出力モジュールを含む。
本明細書における各実施形態は、漸進的に説明され、各実施形態は、他の実施形態の重点とは異なる重点を有する。実施形態における同一または類似部分は、互いに参照することができる。
本出願の実施形態は、方法、装置、またはコンピュータプログラム製品として提供され得ることが、当業者には理解されよう。従って、本出願の実施形態は、完全なハードウェア実施形態、完全なソフトウェア実施形態、またはソフトウェアとハードウェアの組み合わせである実施形態の形態を取り得る。さらに、本出願の実施形態は、コンピュータ使用可能プログラムコードを自身に取り入れた1つ以上のコンピュータ使用可能記憶媒体(磁気記憶デバイス、CD−ROM、光学記憶デバイスなどを含むがこれに限定されない)の形態で実装されたコンピュータプログラム製品の形態を取り得る。
典型的な構成のコンピューティングデバイスは、1つ以上のプロセッサ(CPU)と、入出力インターフェースと、ネットワークインターフェースと、メモリとを備える。メモリは、揮発性メモリ、ランダムアクセスメモリ(RAM)、及び/または不揮発性メモリ、例えば読出専用メモリ(ROM)もしくはフラッシュRAMなど、コンピュータ可読媒体の形態を含み得る。メモリは、コンピュータ可読媒体の一例である。コンピュータ可読媒体には、任意の方法または技術を利用して情報の記憶を達成し得る、揮発性もしくは不揮発性の、着脱可能もしくは着脱不可な媒体が含まれ得る。情報には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータが含まれ得る。コンピュータ記憶媒体の例には、相変化メモリ(PRAM)、静的ランダムアクセスメモリ(SRAM)、動的ランダムアクセスメモリ(DRAM)、他の種類のランダムアクセスメモリ(RAM)、読出専用メモリ(ROM)、電気的消去可能プログラマブル読出専用メモリ(EEPROM)、高速フラッシュメモリもしくは他の内部記憶技術、コンパクトディスク読出専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)もしくは他の光学記憶デバイス、磁気カセットテープ、磁気ディスク記憶デバイスもしくは他の磁気記憶デバイス、またはコンピューティングデバイスによりアクセスされ得る情報を記憶するために使用され得るその他の非伝達媒体が含まれるが、これらに限定されない。本明細書において定義されるように、コンピュータ可読媒体に、変調データ信号及び搬送波などの一時的媒体は含まれない。
本出願の実施形態による方法、端末デバイス(システム)、及びコンピュータプログラム製品のフローチャート及び/またはブロック図を参照して、本出願の実施形態は説明される。フローチャート及び/またはブロック図における各フロー及び/またはブロック、並びにフローチャート及び/またはブロック図におけるフロー及び/またはブロックの組合せは、コンピュータプログラム命令により実施され得ることを理解されたい。コンピュータプログラム命令は、汎用コンピュータのプロセッサ、専用コンピュータ、組み込みプロセッサ、またはマシンを生じる他のプログラム可能データ処理端末デバイスに提供されてもよく、よって、コンピュータのプロセッサまたは他のプログラム可能データ処理端末デバイスが命令を実行することにより、装置は、フローチャートの1つ以上のフロー及び/またはブロック図の1つ以上のブロックで特定される機能を実施するように作られる。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラム可能データ処理端末デバイスに特定の方法で作動するように命令することが可能なコンピュータ可読記憶デバイスに記憶されてもよく、よって、コンピュータ可読記憶デバイスに記憶される命令は、命令装置を含む製品を生じる。命令装置は、フローチャートの1つ以上のフロー及び/またはブロック図の1つ以上のブロックで特定される機能を実施する。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラム可能データ処理端末デバイスにロードされてもよく、よって、一連の動作ステップがコンピュータまたは他のプログラム可能端末デバイス上で実行され、コンピュータ実施プロセスが生じる。コンピュータまたは他のプログラム可能端末デバイスにおいて実行される命令は、フローチャートの1つ以上のフロー及び/またはブロック図の1つ以上のブロックで特定される機能を実施するステップを提供する。
本出願の実施形態のうちの望ましい実施形態が説明されたが、当業者は、基本的発明構想を一度理解すれば、これらの実施形態に対し、追加の変更及び修正を行うことができる。よって、添付の特許請求の範囲は、望ましい実施形態、並びに本出願の実施形態の範囲に入る全ての変更及び修正を含むように解釈されることを意図する。
最後に、第1、第2などの関係を示す用語は、提示文において1つのエンティティまたは動作を別のエンティティまたは動作と区別するためにのみ使用され、これらの動作間またはエンティティ間にいずれのそのような関係性または順序を必ずしも要求または意味するわけではないことにも留意されたい。さらに、用語「include(含む)」、「contain(含む)」、またはこれらの任意の他の変形には、非排他的包含を対象とする意図があり、よって、一連の要素を含むプロセス、方法、製品、または端末デバイスは、これらの要素を含むだけでなく、明示的に列挙されていない他の要素も含む、あるいはこのようなプロセス、方法、製品、または端末デバイスに固有の要素も含む。さらなる任意の制約なしに、記述「〜を含む」により定義される要素は、要素を含むプロセス、方法、製品、または端末デバイスが、別の同じ要素をさらに含むことを除外しない。
本出願において提供される分散クラスタ型訓練方法及び分散クラスタ型訓練装置が、前述において詳しく説明された。本文は、具体的な実施例を用いて、本出願の原理及び実施態様を例示する。上記の実施形態の説明は、単に本出願の方法及び中核概念の理解を促進するために用いられる。同時に、当業者は、本出願の概念に基づいて、特定の実施態様及び適用範囲に変更を加えることができる。要するに、本明細書の内容は、本出願に対する限定として解釈されるべきではない。

Claims (22)

  1. 少なくとも1つのサンプルデータを含むサンプル集合を読み込むことと、
    クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、前記サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配を取得することであって、前記収集命令を受信する前に前記訓練の複数反復が存在する場合、第1の重みは、前回の訓練で取得された第1の勾配に基づいて生成され、前記反復訓練の後続反復の現行の重みとして使用される、前記サンプルデータ及び前記現行の重みを使用して前記反復訓練の前記ターゲットモデル訓練関数に代入し、前記第1の勾配を取得することと、
    収集命令が受信されると、前記第1の勾配を、各第1の勾配を収集して第2の重みを計算するアグリゲーションサーバへ送信することと、
    前記アグリゲーションサーバにより送信される前記第2の重みを受信して、現行の重みを更新することと、
    を含む、分散クラスタ型訓練方法。
  2. 前記クラスタシステム環境が前記閾値条件を満たす時に前記スケジューリングサーバが前記収集命令を発行することは、クラスタ全体のクラスタネットワーク利用率が第1の閾値条件を満たす時に前記スケジューリングサーバが前記収集命令を発行すること、及び/または前記クラスタ全体のクラスタ障害率が第2の閾値条件を満たす時に前記スケジューリングサーバが前記収集命令を発行することを含む、請求項1に記載の方法。
  3. 前記第1の閾値条件には、前記クラスタネットワーク利用率が前記第1の閾値未満であることが含まれ、
    前記第2の閾値条件には、前記クラスタ障害率が前記第2の閾値未満であることが含まれる、
    請求項2に記載の方法。
  4. 前記サンプルデータは時間情報を含み、前記サンプル集合を読み込んだ後、前記方法はさらに、
    各サンプルデータの時間情報を用いて、前記サンプルデータの第3の重みを計算することと、
    関連する第3の重みが第3の閾値未満である場合、対応する1つのサンプルデータを破棄することと、
    を含む、請求項1に記載の方法。
  5. 各サンプルデータの前記時間情報を使用して前記サンプルデータの前記第3の重みを計算することは、各サンプルデータの前記時間情報を指数関数の負の指数パラメータに代入して、前記第3の重みを計算することを含む、請求項4に記載の方法。
  6. 各サンプルデータの前記時間情報を使用して前記サンプルデータの前記第3の重みを計算する前に、前記方法はさらに、
    前記サンプル集合内の様々なサンプルデータを統合することと、
    前記統合サンプルデータに関して、前記サンプルデータのそれぞれの統合数を記録することと、
    を含む、請求項4に記載の方法。
  7. 各サンプルデータの前記時間情報を使用して前記サンプルデータの前記第3の重みを計算することは、
    各サンプルデータの前記時間情報を使用して、重み低減係数を計算することと、
    前記重み低減係数と前記それぞれの統合数との積を計算して、前記第3の重みを取得することと、
    を含む、請求項6に記載の方法。
  8. 前記方法はさらに、前記収集命令を受信すると、各サンプルデータの前記第3の重みを集約して取得される第1の係数を、前記アグリゲーションサーバへ送信することを含み、
    前記アグリゲーションサーバが各第1の勾配を集約して前記第2の重みを計算することは、
    重み付け計算を行って、各第1の勾配と各第1の勾配に対応する第1の係数に基づく第2の勾配を取得することと、
    前記第2の勾配から前記第2の重みを計算することと、
    を含む、請求項4に記載の方法。
  9. 前記アグリゲーションサーバが各第1の勾配を集約して前記第2の重みを計算した後、前記方法はさらに、前記アグリゲーションサーバが、新たに取得された前記第2の重みをバックアップすることを含む、請求項1〜8のいずれか1項に記載の方法。
  10. 前記アグリゲーションサーバが、新たに取得された前記第2の重みをバックアップすることは、
    前記アグリゲーションサーバが、新たに取得された前記第2の重みと前のバックアップの第2の重みとの変化量が、変化閾値を超えるか否かを判定することと、
    前記変化閾値を超える場合、新たに取得された前記第2の重みをバックアップすることと、
    を含む、請求項9に記載の方法。
  11. 前記アグリゲーションサーバが、新たに取得された前記第2の重みをバックアップした後、前記方法はさらに、前記第2の重みをターゲットモデルに代入して、サービスサーバへ出力することを含む、請求項9に記載の方法。
  12. 少なくとも1つのサンプルデータを含むサンプル集合を読み込むために使用されるサンプル読み込みモジュールと、
    クラスタシステム環境が閾値条件を満たす時にスケジューリングサーバにより発行される収集命令を受信する前に、前記サンプルデータ及び現行の重みを使用して反復訓練のターゲットモデル訓練関数に代入し、第1の勾配を取得するために使用される反復訓練モジュールであって、前記収集命令を受信する前に前記訓練の複数反復が存在する場合、第1の重みは、前回の訓練で取得された第1の勾配に基づいて生成され、前記反復訓練の後続反復の現行の重みとして使用される、前記反復訓練モジュールと、
    収集命令が受信されると、前記第1の勾配を、各第1の勾配を収集して第2の重みを計算するアグリゲーションサーバへ送信するために使用される結果送信モジュールと、
    前記アグリゲーションサーバにより送信される前記第2の重みを受信して現行の重みを更新するために使用される更新モジュールと、
    を備える、分散クラスタ型訓練装置。
  13. 前記クラスタシステム環境が前記閾値条件を満たす時に前記スケジューリングサーバが前記収集命令を発行することは、クラスタ全体のクラスタネットワーク利用率が第1の閾値条件を満たす時に前記スケジューリングサーバが前記収集命令を発行すること、及び/または前記クラスタ全体のクラスタ障害率が第2の閾値条件を満たす時に前記スケジューリングサーバが前記収集命令を発行することを含む、請求項12に記載の装置。
  14. 前記第1の閾値条件には、前記クラスタネットワーク利用率が前記第1の閾値未満であることが含まれ、
    前記第2の閾値条件には、前記クラスタ障害率が前記第2の閾値未満であることが含まれる、
    請求項13に記載の装置。
  15. 前記サンプル読み込みモジュールの後、前記装置はさらに、
    各サンプルデータの時間情報を用いて前記サンプルデータの第3の重みを計算するために使用される第3の重み計算モジュールと、
    関連する第3の重みが第3の閾値未満である場合、対応する1つのサンプルデータを破棄するために使用されるサンプル破棄モジュールと、
    を備える、請求項12に記載の装置。
  16. 前記第3の重み計算モジュールは、各サンプルデータの前記時間情報を指数関数の負の指数パラメータに代入して、前記第3の重みを計算するために使用される指数計算モジュールを備える、請求項15に記載の装置。
  17. 前記第3の重み計算モジュールの前に、前記装置はさらに、
    前記サンプル集合内の様々なサンプルデータを統合するために使用される統合モジュールと、
    前記統合サンプルデータに関して、前記サンプルデータのそれぞれの統合数を記録するために使用される統合記録モジュールと、
    を備える、請求項15に記載の装置。
  18. 前記第3の重み計算モジュールは、
    各サンプルデータの前記時間情報を使用して、重み低減係数を計算するために使用される低減係数計算モジュールと、
    前記重み低減係数と前記それぞれの統合数との積を計算して、前記第3の重みを取得するために使用される第1計算モジュールと、
    を備える、請求項17に記載の装置。
  19. 前記収集命令を受信すると、各サンプルデータの前記第3の重みを集約して取得される第1の係数を、前記アグリゲーションサーバへ送信するために、前記結果送信モジュールがさらに使用され、前記アグリゲーションサーバは、
    重み付け計算を行って、各第1の勾配と各第1の勾配に対応する第1の係数に基づく第2の勾配を取得するために使用される第1の重み集約モジュールと、
    前記第2の勾配から前記第2の重みを計算するために使用される第2の重み計算モジュールと、
    を備える、請求項15に記載の装置。
  20. 前記アグリゲーションサーバはさらに、新たに取得された前記第2の重みをバックアップするために使用されるバックアップモジュールを備える、請求項12〜19のいずれか1項に記載の装置。
  21. 前記バックアップモジュールは、
    前記アグリゲーションサーバが、新たに取得された前記第2の重みと前のバックアップの第2の重みとの変化量が、変化閾値を超えるか否かを判定するために使用される変化計算モジュールと、
    前記変化閾値を超える場合、新たに取得された前記第2の重みをバックアップするために使用される第1バックアップモジュールと、
    を備える、請求項20に記載の装置。
  22. 前記バックアップモジュールの後、前記装置はさらに、前記第2の重みをターゲットモデルに代入してサービスサーバへ出力するために使用される出力モジュールを備える、請求項20に記載の装置。
JP2018549518A 2016-03-26 2017-03-20 分散クラスタ型訓練方法及び装置 Active JP6949045B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610180393.8 2016-03-26
CN201610180393.8A CN107229518B (zh) 2016-03-26 2016-03-26 一种分布式集群训练方法和装置
PCT/CN2017/077246 WO2017167044A1 (zh) 2016-03-26 2017-03-20 一种分布式集群训练方法和装置

Publications (2)

Publication Number Publication Date
JP2019511054A JP2019511054A (ja) 2019-04-18
JP6949045B2 true JP6949045B2 (ja) 2021-10-13

Family

ID=59932603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018549518A Active JP6949045B2 (ja) 2016-03-26 2017-03-20 分散クラスタ型訓練方法及び装置

Country Status (5)

Country Link
US (1) US11636379B2 (ja)
JP (1) JP6949045B2 (ja)
CN (1) CN107229518B (ja)
TW (1) TWI712900B (ja)
WO (1) WO2017167044A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202017007517U1 (de) * 2016-08-11 2022-05-03 Twitter, Inc. Aggregatmerkmale für maschinelles Lernen
CN107423883B (zh) * 2017-06-15 2020-04-07 创新先进技术有限公司 待处理业务的风险识别方法及装置、电子设备
CN109754105B (zh) * 2017-11-07 2024-01-05 华为技术有限公司 一种预测方法及终端、服务器
JP7010153B2 (ja) * 2018-06-15 2022-01-26 日本電信電話株式会社 分散処理システムおよび分散処理方法
US11610110B2 (en) 2018-12-05 2023-03-21 Bank Of America Corporation De-conflicting data labeling in real time deep learning systems
CN112955909A (zh) * 2019-02-01 2021-06-11 华为技术有限公司 神经网络的分布式训练方法及装置
CN109871702A (zh) * 2019-02-18 2019-06-11 深圳前海微众银行股份有限公司 联邦模型训练方法、系统、设备及计算机可读存储介质
CN110084380A (zh) * 2019-05-10 2019-08-02 深圳市网心科技有限公司 一种迭代训练方法、设备、系统及介质
CN110222779B (zh) * 2019-06-11 2023-08-01 腾讯科技(深圳)有限公司 分布式数据处理方法及系统
US11321207B2 (en) * 2019-07-09 2022-05-03 Cisco Technology, Inc. Seamless multi-cloud SDWAN distaster recovery using orchestration plane
CN111144584B (zh) * 2019-12-31 2024-01-19 深圳Tcl新技术有限公司 参数调优方法、装置及计算机存储介质
CN113469206A (zh) * 2020-03-31 2021-10-01 华为技术有限公司 获取人工智能模型的方法、装置、设备及存储介质
CN112016699B (zh) * 2020-08-31 2024-02-02 北京灵汐科技有限公司 一种深度学习模型训练方法、工作节点和参数服务器
CN112235384B (zh) * 2020-10-09 2023-10-31 腾讯科技(深圳)有限公司 分布式系统中的数据传输方法、装置、设备及存储介质
CN111931947B (zh) * 2020-10-12 2021-02-05 支付宝(杭州)信息技术有限公司 一种用于分布式模型训练的训练样本重组方法及系统
CN112863175B (zh) * 2020-12-31 2022-11-22 平安科技(深圳)有限公司 汽车道路监测数据处理方法、装置、设备及存储介质
CN116964516A (zh) * 2021-03-12 2023-10-27 株式会社日本显示器 液晶设备
CN112862111B (zh) * 2021-04-26 2021-08-24 之江实验室 一种加速分布式机器学习梯度汇聚的方法和装置
CN114900482B (zh) * 2022-03-28 2023-05-30 中国科学技术大学苏州高等研究院 Ps架构下基于可编程交换机的梯度调度方法和装置
CN114723071B (zh) * 2022-04-26 2023-04-07 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 一种基于客户端分类和信息熵的联邦学习方法及装置
CN116980420B (zh) * 2023-09-22 2023-12-15 新华三技术有限公司 一种集群通信方法、系统、装置、设备及介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2261527T3 (es) * 2001-01-09 2006-11-16 Metabyte Networks, Inc. Sistema, procedimiento y aplicacion de software para publicidad dirigida mediante una agrupacion de modelos de comportamiento, y preferencias de programacion basadas en grupos de modelos de comportamiento.
US20060123421A1 (en) * 2002-12-27 2006-06-08 Loboz Charles Z Streamlining cpu utilization by delaying transactions
US20050289089A1 (en) * 2004-06-28 2005-12-29 Naoki Abe Methods for multi-class cost-sensitive learning
US8150723B2 (en) * 2009-01-09 2012-04-03 Yahoo! Inc. Large-scale behavioral targeting for advertising over a network
JP5557590B2 (ja) * 2010-05-06 2014-07-23 株式会社日立製作所 負荷分散装置及びシステム
JP5584914B2 (ja) * 2010-07-15 2014-09-10 株式会社日立製作所 分散計算システム
US8924314B2 (en) * 2010-09-28 2014-12-30 Ebay Inc. Search result ranking using machine learning
US9569401B2 (en) 2011-12-06 2017-02-14 Akamai Technologies, Inc. Parallel training of a support vector machine (SVM) with distributed block minimization
US9633315B2 (en) * 2012-04-27 2017-04-25 Excalibur Ip, Llc Method and system for distributed machine learning
US9390370B2 (en) 2012-08-28 2016-07-12 International Business Machines Corporation Training deep neural network acoustic models using distributed hessian-free optimization
CN103559504B (zh) * 2013-11-04 2016-08-31 北京京东尚科信息技术有限公司 图像目标类别识别方法及装置
CN103544528A (zh) * 2013-11-15 2014-01-29 南京大学 一种基于Hadoop的BP神经网络分类方法
US9858534B2 (en) * 2013-11-22 2018-01-02 California Institute Of Technology Weight generation in machine learning
TWI524307B (zh) * 2013-11-22 2016-03-01 Univ Nat Yunlin Sci & Tech Two - dimensional image depth value estimation method and its system
US20150324690A1 (en) * 2014-05-08 2015-11-12 Microsoft Corporation Deep Learning Training System
US9984337B2 (en) 2014-10-08 2018-05-29 Nec Corporation Parallelized machine learning with distributed lockless training
CN104463324A (zh) * 2014-11-21 2015-03-25 长沙马沙电子科技有限公司 一种基于大规模高性能集群的卷积神经网络并行处理方法
CN104714852B (zh) * 2015-03-17 2018-05-22 华中科技大学 一种适用于分布式机器学习的参数同步优化方法及其系统
CN105005911B (zh) * 2015-06-26 2017-09-19 深圳市腾讯计算机系统有限公司 深度神经网络的运算系统及运算方法
US10229357B2 (en) * 2015-09-11 2019-03-12 Facebook, Inc. High-capacity machine learning system
US11087234B2 (en) 2016-01-29 2021-08-10 Verizon Media Inc. Method and system for distributed deep machine learning

Also Published As

Publication number Publication date
JP2019511054A (ja) 2019-04-18
US11636379B2 (en) 2023-04-25
TWI712900B (zh) 2020-12-11
CN107229518A (zh) 2017-10-03
WO2017167044A1 (zh) 2017-10-05
US20190026657A1 (en) 2019-01-24
CN107229518B (zh) 2020-06-30
TW201734863A (zh) 2017-10-01

Similar Documents

Publication Publication Date Title
JP6949045B2 (ja) 分散クラスタ型訓練方法及び装置
JP6731201B2 (ja) 時間ベースのノード選出方法及び装置
US20180157438A1 (en) Slow-disk detection method and apparatus
CN106815254B (zh) 一种数据处理方法和装置
CN109120463B (zh) 流量预测方法及装置
US20120221730A1 (en) Resource control system and resource control method
CN111200526B (zh) 网络设备的监控系统及方法
US8904144B1 (en) Methods and systems for determining at risk index for storage capacity
US7716431B2 (en) Analysis technique of execution states in computer system
CN111966289A (zh) 基于Kafka集群的分区优化方法和系统
CN109728981A (zh) 一种云平台故障监测方法及装置
CN103108020A (zh) 服务协作设备、服务协作方法和计算机可读记录介质
US20160094392A1 (en) Evaluating Configuration Changes Based on Aggregate Activity Level
US11436123B2 (en) Application execution path tracing for inline performance analysis
WO2021257263A1 (en) Techniques for generating a consistent view of an eventually consistent database
CN113254256B (zh) 数据重构方法、存储设备及存储介质
CN112416568A (zh) 音视频转码任务的时长预估方法和时长预估装置
CN115080215B (zh) 由状态监控芯片在计算节点间进行任务调度的方法及系统
US10802943B2 (en) Performance management system, management device, and performance management method
US20160253591A1 (en) Method and apparatus for managing performance of database
JP7420228B2 (ja) 分散処理システムおよび分散処理方法
CN110058810B (zh) 分布式系统的磁盘清理方法和装置、分布式系统
US20180285168A1 (en) Information processing apparatus and information processing system
WO2020211719A1 (zh) 一种数据获取方法、装置及设备
US20230132786A1 (en) Artificial intelligence based power consumption optimization

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210628

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210921

R150 Certificate of patent or registration of utility model

Ref document number: 6949045

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150