ハイパーパラメータ探索とGPU/TPU

学習率・バッチサイズなどのハイパーパラメータ調整手法と、GPU/TPUのハードウェア事情をG検定観点で整理します。

DLの実務で避けて通れないのがハイパーパラメータ調整とGPU活用。G検定ではハイパラ探索手法とGPU/TPUの特徴が問われます。

雷門 あかり(普段) 雷門 あかり

ハイパーパラメータって、ただのパラメータと違うの?

六角 いずみ 先生(笑顔) 六角 いずみ 先生

ハイパーパラメータは、学習前に人間が設定する値のこと。
モデルのパラメータ (重み) は学習で決まるけど、学習率や層数は事前に決める必要があるの。

白銀 エマ(普段) 白銀 エマ

代表例は学習率、バッチサイズ、エポック数、層数、ニューロン数、活性化関数の選択、正則化係数など。

紫藤 ゆら(びっくり) 紫藤 ゆら

これ全部、手で調整するんですかぁ?

六角 いずみ 先生(普段) 六角 いずみ 先生

最適値を探す手法がハイパーパラメータ探索。
グリッドサーチ、ランダムサーチ、ベイズ最適化の3つが代表ね。

白銀 エマ(普段) 白銀 エマ

グリッドサーチは全組合せを試す愚直な方法。
網羅性は高いけど組合せが膨大になるから遅い。
ランダムサーチはランダム抽出で、効率が良いことが多いわ。

雷門 あかり(びっくり) 雷門 あかり

えっ、ランダムの方が強いの!?

六角 いずみ 先生(笑顔) 六角 いずみ 先生

2012年のベンジオらの論文で、『重要なパラメータが少数の場合、ランダムサーチの方が効率的』と示されたの。
全網羅は無駄が多いのね。

白銀 エマ(普段) 白銀 エマ

ベイズ最適化は過去の試行結果から次に試すべき値を推定する賢い手法。
OptunaというPythonライブラリが有名ね。

紫藤 ゆら(笑顔) 紫藤 ゆら

賢いAIにおまかせって感じですねぇ♪

六角 いずみ 先生(普段) 六角 いずみ 先生

DLを支えるハードウェアの話もしましょう。
CPU(Central Processing Unit) は汎用処理が得意、GPU(Graphics Processing Unit) は並列計算が得意で、行列演算の多いDLに最適よ。

白銀 エマ(普段) 白銀 エマ

特にNVIDIAのGPUとCUDAライブラリがDL業界を支配している。
PyTorchやTensorFlowはGPUで効率的に動作するように設計されているわ。

雷門 あかり(笑い) 雷門 あかり

Googleが作ったTPUってのもあるんでしょ?

六角 いずみ 先生(笑顔) 六角 いずみ 先生

TPU(Tensor Processing Unit) はGoogleが開発したDL専用チップ。
行列乗算に特化していて、特に大規模言語モデルの学習で威力を発揮するわ。

白銀 エマ(普段) 白銀 エマ

他にはNPU(Neural Processing Unit) など、スマホ向けの小型AIチップもあるわ。
用途によって使い分けるの。

雷門 あかり(笑い) 雷門 あかり

ハードもどんどん進化してるんだね!

六角 いずみ 先生(普段) 六角 いずみ 先生

G検定では『ハイパーパラメータ』『グリッドサーチ・ランダムサーチ・ベイズ最適化』『CPU・GPU・TPU』を押さえて!

確認クイズ

Google が開発したディープラーニング専用のプロセッサはどれか。

  1. GPU
  2. TPU
  3. NPU
  4. FPGA
こたえを見る

正解: 2. TPU

TPU (Tensor Processing Unit)はGoogleが開発したDL専用プロセッサで、行列乗算に特化しています。GPUはNVIDIA等の並列計算プロセッサ、NPUは小型AIチップ、FPGAはプログラマブル回路です。

六角いずみ先生、白銀エマ、紫藤ゆら、雷門あかりが夏祭りで輪投げを楽しむ様子

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。