Slide 1

Slide 1 text

無線環境における送信レート適応化に基づく 分散機械学習の高速化 IEICE RCS研究会 2021年7月16日(金) 佐藤光哉* 杉村大輔 東京理科大学 津田塾大学 * [email protected]

Slide 2

Slide 2 text

研究背景: 完全分散型機械学習のコンセプトと課題 • 新たなデータ解析の形態の1つとして注目 • 近隣端末間でローカル学習と学習結果の共有を繰り返す Ø 対象:クラウド利用を避けたいシステム (学習対象が特異、プライバシの懸念等) Ø 応用例:環境モニタリング, 自動運転, 災害時の安全情報収集, etc. 5 G 5 G 5 G 5 G 5 G 5 G ローカル学習 モデル共有 2 データサイズが大きい (MobileNetV2: 340万ものパラメータ) →通信がボトルネックに [Xing-SPAWC20] H. Xing, O. Simeone and S. Bi, "Decentralized FL via SGD over Wireless D2D Networks," IEEE SPAWC2020. [Changxi-IoTJ21] C. Li, G. Li and P. Varshney, “Decentralized FL via Mutual Knowledge Transfer,” IEEE IoT Journal, 2021. ※Decentralized Federated Learningとも呼ばれる[Xing-SPAWC20][Changxi-IoTJ21]

Slide 3

Slide 3 text

送信レート制御と通信距離の例 例: 無線LANベースでの適応変調に基づくマルチキャスト 3 低速通信 (e.g., BPSK) 高速通信 (e.g., 256QAM) トポロジは密だが モデル共有の時間が増大 トポロジはスパースだが 高速にモデル共有可 通信距離 学習器 5 G 5 G 5 G 5 G 5 G 5 G 5 G 5 G QAM: Quadrature Amplitude Modulation BPSK: Binary Phase Shift Keying

Slide 4

Slide 4 text

ネットワーク密度と学習精度の関係 (a) 高速通信 (b) 低速通信 (a) 高速通信 (b) 低速通信 学習の繰り返し回数 精度 (正解率) 実行時間 [min] 精度 (正解率) 軸の読み替え • 十分学習させた後の学習精度と実行時間特性の間にはトレードオフ 4 研究目的 本特性を踏まえて通信ボトルネックを解消できる送信レート設計法の提示 (疎) (密) (疎) (密)

Slide 5

Slide 5 text

通信路モデル • n 台の端末が協調 • 各ノードは同サイズのi.i.d.データセットを持つ • 各ノードは同一構成の学習器を同一のシードで初期化 • 相互に位置関係を把握済み+時間同期済み+送信レートが互いに既知 (後述) モデル共有の成功条件 瞬時受信電力 減衰係数 i.i.d.: independent and identically distributed AWGN: Additive White Gaussian Noise 送信レート (最適化対象) 帯域幅 AWGN 通信路容量 フェージング利得 (i.i.d. レイリー環境) 8 ※以下は固定&既知: • 送信電力 • 帯域幅 • 平均AWGN • 距離減衰係数

Slide 6

Slide 6 text

学習および通信プロトコル ラウンドごとのローカルSGDの回数 ローカル学習後の待機時間 6 Cooperative Stochastic Gradient Descent (C-SGD)[Wang-ICMLW19]に基づく [Wang-ICMLW19] J. Wang et al., in Proc. ICML Workshop, Long Beach, CA, USA, 2019. 待機 ローカル学習 端末1 ・・・ 送信レート適応化 端末2 端末3 端末4 ローカル学習 モデル共有&合成 待機 (待機) (待機) (待機) (待機) モデル共有&合成 (待機) (待機) (待機) (待機) ローカル学習1回に要する計算時間

Slide 7

Slide 7 text

学習および通信プロトコル 7 Cooperative Stochastic Gradient Descent (C-SGD)[Wang-ICMLW19]に基づく [Wang-ICMLW19] J. Wang et al., in Proc. ICML Workshop, Long Beach, CA, USA, 2019. 待機 ローカル学習 端末1 ・・・ 送信レート適応化 端末2 端末3 端末4 ローカル学習 モデル共有&合成 待機 (待機) (待機) (待機) (待機) 時間 端末1 端末2 端末3 端末4 周波数 モデル共有&合成 (待機) (待機) (待機) (待機) 最小化対象 学習器のモデルサイズ[bits] ラウンドごとのローカルSGDの回数 1ラウンドに要する通信時間 ローカル学習1回に要する計算時間 ローカル学習後の待機時間 送信後の待機時間

Slide 8

Slide 8 text

平均化行列を用いた学習動作の表現について 8 k+1回目の学習でモデル共有を行う場合、ネットワーク全体の学習の動作は 次式のように表せる: 各端末のモデルパラメータを 格納したベクトル 学習率 損失関数に対する 勾配ベクトル n×nの平均化行列 Connected: 端末A 端末B W = 1/2 1/2 1/2 1/2 Disconnected: W= 1 0 0 1

Slide 9

Slide 9 text

平均化行列を用いた学習動作の表現について 9 各端末のモデルパラメータを 格納したベクトル 学習率 損失関数に対する 勾配ベクトル n×nの平均化行列 • 平均化行列の第二固有値λ: Ø W の非ゼロ要素多: 0に近づく Ø 非ゼロ要素少: 1に近づく • 学習精度の繰り返し回数特性:λの関数として表現可能 [Wang-ICMLW19, 他] アイディア λを制約することで、学習結果を保ちつつ通信時間を短縮できないか? (直観的には)ネットワークのスパース度を表現 k+1回目の学習でモデル共有を行う場合、ネットワーク全体の学習の動作は 次式のように表せる:

Slide 10

Slide 10 text

提案手法 ネットワークトポロジの密度と連結性を制約に通信時間を最小化する送信レート を選択: :送信レートベクトル :λのターゲット値 (ハイパーパラメータ) (topology is strongly connected) :“有向グラフにおいて全ノードが相互に行き来可” :アウテージ確率 (通信失敗起因) 10 1回のモデル共有における通信時間 ネットワークトポロジの密度に対する制約 成功確率 ※各ノードで独立に本問題を解く。位置が共有済みの場合同一の解になるため、自動的 に送信レートを相互に共有できる (=分散環境でも時分割できる)

Slide 11

Slide 11 text

提案手法 ネットワークトポロジの密度と連結性を制約に通信時間を最小化する送信レート を選択: 11 1回のモデル共有における通信時間 ネットワークトポロジの密度に対する制約 Closed-formで表現困難 Ø 2ステップに分割して考える 成功確率 ※各ノードで独立に本問題を解く。位置が共有済みの場合同一の解になるため、自動的 に送信レートを相互に共有できる (=分散環境でも時分割できる)

Slide 12

Slide 12 text

Step 1: AWGNを仮定したターゲットトポロジ探索 フェージングを無視した状態で以下を解く: Node 1 Node 2 Node 3 Node 4 (multicasting) Capacity matrix (without fading) Candidate vector 送信レートと通信結果の関係 候補ベクトルの生成例 全ての候補ベクトルに対し探索をかける →候補ベクトル数: (n-1)n 12 最適なレートベクトルから算出されたトポロジ を次ステップで用いる

Slide 13

Slide 13 text

Step 2: ターゲットトポロジを確率的に保護するレート設計 Step 1で求めたターゲットトポロジ中の全リンクのモデル共有が同時に成功 する確率を制約に通信時間を最小化: リンク間の平均SNR 通信成功確率 レイリーフェージング環境における上式の変形: →Ri >0で全て凸なので、CVXPYで解く 13

Slide 14

Slide 14 text

評価概要 評価概要 • データセット: FashionMNIST (右図) • ノード数6台 Ø 500m四方のエリアに分散配置 Ø 60000枚の学習データをシャッフルの上重複 なく分配 (10000枚/ノード) • 各ノードの正解率の平均を評価 Ø 10回独立に試行し、その結果を最終的な評価 結果とした 使用モデル • 畳み込み層×2, 全結合層×3 • 活性化関数: ReLU • 損失関数: 交差エントロピー • 総パラメータ数: 1475338 Ø 47Mbits in 32-bit float 14

Slide 15

Slide 15 text

テスト精度の例 (距離減衰係数4) • 疎にするほど同繰り返し回数における精度は落ちる • 一方で「所望精度を達成する時間」の観点では疎のトポロジが有利なケース多数 15 帯域幅: 1.4[MHz] 送信電力: 0[dBm] 学習回数τ: 1000 アウテージ確率: 0.50 計算時間: 0.01[s/loop] • 総学習回数200000回とした 平均テスト精度 実行時間 [min]

Slide 16

Slide 16 text

ターゲットのトポロジ密度λtarget の影響 評価指標: “ある所望精度z を達成する時間” (距離減衰係数4) 最小値 • トポロジがスパースであることを一定量許容することで高速な分散学習が実現可 • 高い精度を狙う場合、スパース過ぎると逆に劣化の傾向 16 高速通信, スパーストポロジ 高速化 実行時間 [min] 帯域幅: 1.4[MHz] 送信電力: 0[dBm] 学習回数τ: 1000 アウテージ確率: 0.50 計算時間: 0.01[s/loop]

Slide 17

Slide 17 text

Non-i.i.d.データの影響 17 • ノードごと、全10ラベル中一部のラベルのみランダムに選択 3ラベル 5ラベル 7ラベル • データの偏りが強い場合、ネットワークを密に取り、繰り返し回数あたりの精度を 改善することが重要

Slide 18

Slide 18 text

まとめ 18 本検討内容 • 無線環境における分散機械学習高速化のための送信レート設計法を示した Ø ネットワークの密度に関する指標を制約条件とする • トポロジの組み合わせ最適化+凸最適化による解法を示した • 画像を対象とした評価により以下の傾向であることを確認 (@減衰係数4) Ø i.i.d. setting: 疎なトポロジを許容することで高速化可 Ø Non-i.i.d. setting: サンプルの偏りが強い場合、密なトポロジを組んだ方が効率的 今後の課題 • 他の多元接続方式の活用や、送信電力以外のパラメータへの着目 • レイリーフェージング以外の環境における設計法の検討 • モデル圧縮/軽量化アルゴリズムの併用 (蒸留, プルーニングなど) 問い合わせ先 E-mail : [email protected] (佐藤光哉, 東京理科大) HP : https://sites.google.com/site/ksatoprofile/home

Slide 19

Slide 19 text

19 補足資料

Slide 20

Slide 20 text

Federated Learning 20 学習データを端末外へ公開しないことにより期待されるメリット: • ユーザのプライバシ保護 • ネットワークへの通信負荷削減 新たなデータ解析の形態として2017年にGoogleが提唱 [McMahan-AISTATS2017] • 端末でのローカル学習とその結果の回収を繰り返す [McMahan-AISTATS2017] B. McMahan et al., in Proc. AISTATS, Fort Lauderdale, Florida, USA, Apr. 2017. ローカル機械学習 モデルの配布/回収 モデルの合成 5 G 5 G 5 G 5 G グローバルモデル ローカルモデル

Slide 21

Slide 21 text

(補足)本システムモデルでの送信レートと通信距離の関係 ※上図はAWGNを仮定 ※有限符号長の影響は無視 (モデルパラメータが十分大きいため) Ø その代わり、待機時間(後述)の導入で実装上の影響に対処 通信路容量 高送信レート・狭カバレッジ 低送信レート・広カバレッジ 21

Slide 22

Slide 22 text

送信レートの影響の観察 AWGN, 全端末同一送信レートでモデル共有 2 4 6 8 0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0 λ Network Density Transmission Rate [Mbps] λ Network density ノード配置 λ&ネットワーク密度 ネットワーク密度: 接続リンク数と最大リンク数の比 22 • 学習精度の繰り返し回数特性:λの関数として表現可能 [Wang-ICMLW19] アイディア λを制約することで、学習結果を保ちつつ通信時間を短縮できないか?

Slide 23

Slide 23 text

送信レートの影響の観察 AWGN, 全ノード同一送信レートでモデル共有 • τ=1と仮定の上λの関数としてプロット [Wang+, ICMLW2019] • 低送信レートで共有することで学習特性を改善できるが費用対効果小 Ø それなら多少スパースにしてでも高レートでモデル共有した方が速そう [Wang+, ICMLW2019] J. Wang and G. Joshi, Proc. ICML Workshop, Long Beach, CA, USA, 2019. 総学習回数 高精度な学習が可能 23

Slide 24

Slide 24 text

評価概要 評価概要 • データセット: FashionMNIST (右図) • ノード数6台 Ø 500m四方のエリアに分散配置 Ø 60000枚の学習データをシャッフルの上重複 なく分配 (10000枚/ノード) • 独立に10試行した後の全ノードの平均精度 を評価 使用モデル • 畳み込み層×2, 全結合層×3 • 活性化関数: ReLU • 損失関数: 交差エントロピー • 総パラメータ数: 1475338 Ø 47Mbits in 32-bit float 使用モデル: https://www.kaggle.com/pankajj/fashion-mnist-with-pytorch-93-accuracy (Apache 2.0 open source license) 24

Slide 25

Slide 25 text

テスト精度の例 繰り返し回数特性 実行時間特性(減衰係数4) 帯域幅: 1.4[MHz] 送信電力: 0[dBm] 学習回数τ: 1000 アウテージ確率: 0.50 計算時間: 0.01[s/loop] • 疎にするほど繰り返し回数ごとの精度は落ちる • 一方で”所望精度を達成する時間”の観点では 疎のトポロジが有利なケース有り 25

Slide 26

Slide 26 text

テスト精度の例 実行時間特性(減衰係数3) 実行時間特性(減衰係数4) 帯域幅: 1.4[MHz] 送信電力: 0[dBm] 学習回数τ: 1000 アウテージ確率: 0.50 計算時間: 0.01[s/loop] • 疎にするほど繰り返し回数ごとの精度は落ちる • 一方で”所望精度を達成する時間”の観点では 疎のトポロジが有利なケース有 • 減衰係数が小さいと繰り返し回数の差が素直に 効く(=密に取った方が有利なケース有) 26

Slide 27

Slide 27 text

λtarget の影響 評価指標: ”ある所望精度を達成する時間” 0.0 0.2 0.4 0.6 0.8 1.0 0 100 200 300 400 500 Required Runtime [min] λtarget z=0.86 z=0.88 z=0.89 z=0.90 Minimum point 0.0 0.2 0.4 0.6 0.8 1.0 0 20 40 60 80 λtarget z=0.86 z=0.88 z=0.89 z=0.90 Required Runtime [min] Minimum point 実行時間特性(減衰係数3) 実行時間特性(減衰係数4) • 減衰係数小: 密に取った方が有利 • 減衰係数大: 疎に取った方が有利 Ø ただし達成可能な精度が下がるため、所望精度を高く取るとこの限りではない 27

Slide 28

Slide 28 text

通信品質改善への応用 通信品質改善関連で取り扱われる推定や最適化の例 • チャネル推定 • 変調 • チャネル選択 • 電力制御 • 電波マップ構築 • 周波数センシング • 変調方式識別 … 変調方式識別での数値例を評価したので以下その報告 28

Slide 29

Slide 29 text

学習概要 RadioML2016.10bデータセット • 全120万のラベル付けされた時系列サンプル Ø 1データ: I/Q各128サンプル Ø SNR: -20~+18 [dB] • 全10種類の変調方式を収録 (8PSK, 64QAM, WBFMなど) • CCBY NC-SA 4.0ライセンスのもと利用可 VT-CNN2 • CNNの変調方式識別応用のエポックメイキング的学習機 Ø 各データを2×128pixelsの画像とみなす • 畳み込み層×2→全結合層×2のシンプルな構成 • パラメータ数: 2830170 • T. O’Shea and J. Hoydis, “An introduction to deep learning for the physical layer,” IEEE TCCN., 2017. • T. O’Shea et al., “Convolutional radio modulation recognition networks,” in Engineering Applications of Neural Networks. Springer International Publishing, 2016, pp. 213–226. 29

Slide 30

Slide 30 text

分類精度特性 (減衰係数4, 評価SNR10dB) 学習データ: 96万枚 0 0.2 0.4 0.6 0.8 1 0 50 100 150 200 250 300 350 400 z=0.60 z=0.70 z=0.72 z=0.74 λtarget Required Runtime [min] Minimum point 50エポック学習後の平均精度 画像認識同様、だいたいスパースにしておけばよさそう ※シングルスレッドで十分学習させた場合の精度: 0.74-0.76程度 30

Slide 31

Slide 31 text

分類精度特性 (減衰係数3, 評価SNR10dB) 学習データ: 96万枚 • 目標精度が低い場合スパースにすることで高速化できるが、改善効果低 • 一方で密にすれば高精度を狙えるため、画像と同様、密に取るのがベター 0.0 0.2 0.4 0.6 0.8 1.0 10 20 30 40 50 z=0.60 z=0.70 z=0.72 z=0.74 Required Runtime [min] λtarget Minimum point 31