在本章中,作者介紹了幾種網絡加速和優化的方法:
谷歌開發了自己的神經網絡加速專用集成電路,稱為TPU。
因為TPU是專門為NN計算優化設計的,所以它沒有GPU的壹些缺陷。Google還提供Google Cloud TPU的服務,我們在運行Google Colab的時候也可以選擇TPU服務。
預算充足的話,TPU是個不錯的選擇。這裏就不演示TPU的使用了,畢竟暫時不方便使用。以後在實際應用中會用到再學習。
如果現在需要使用TPU,因為Pytorch現在不支持直接應用TPU,所以需要安裝壹個中間包PyTorc/XLA(加速線性代數)來完成它們之間的通信。更詳細的Pytorc/XLA可以在官方文檔:/pytorch/xla/
多GPU模式(單機多GPU)
好的架構是充分發揮現有硬件的價值,防止資源閑置。本節主要演示單機多GPU的使用。
多個GPU的應用通常稱為並行處理。
分布式數據處理(DDP)可以用於單臺機器上的多個進程,也可以用於多臺機器上的多個進程。
1.通過torch.distributed初始化進程組
2.通過torch.nn.to()創建本地模型
3.通過torch.nn.parallel用DDP封裝模型
4.通過torch.multiprocessing啟動流程操作
以下內容在兩三個筆記中完善,本筆記到此結束。
多機多GPU
-超參數調諧(超參數調諧)
-量化(量化)
修剪(修剪)