# 比Tensorflow還精美的人工智慧套件:PyTorch讓你愛不釋手
PyTorch 是一個低階的深度學習框架, 主要聚焦於直接操作陣列 (張量), 比高階的 Keras 較有彈性. Keras 將深度學習的內部層次細節與操作包裝起來 (抽象化), 實作深度學習演算法就像堆積木一樣, 特色是簡單易學, 缺點是缺乏彈性. 而 PyTorch 則提供較低階的實驗環境, 使用者有較多自由度撰寫客製化的階層, 參考 :
# https://www.pytorchtutorial.com
# PyTorch 基礎篇
# Keras or PyTorch as your first deep learning framework
# https://github.com/pytorch/pytorch
# 终于!大家心心念念的PyTorch Windows官方支持来了
# Deep Learning Software
# Introduction to Deep Learning
# 10分钟快速入门 PyTorch (9) - LSTM 词性判断
# PyTorch or TensorFlow?
# Quick Guide for setting up PyTorch with Window in 2 mins
# 终于!大家心心念念的PyTorch Windows官方支持来了
# Deep Learning Software
# Introduction to Deep Learning
# 10分钟快速入门 PyTorch (9) - LSTM 词性判断
# PyTorch or TensorFlow?
# Quick Guide for setting up PyTorch with Window in 2 mins
# 如何在windows10环境下安装Pytorch-0.4.1版本
安裝過程包括兩部分, 先安裝 PyTorch 本身, 然後安裝 torchvision (我的 Win10 安裝的是 Python 3.6 環境) :
D:\Python\test>pip3 install http://download.pytorch.org/whl/cu80/torch-0.4.1-cp36-cp36m-win_amd64.whl
Collecting torch==0.4.1 from http://download.pytorch.org/whl/cu80/torch-0.4.1-cp36-cp36m-win_amd64.whl
Downloading http://download.pytorch.org/whl/cu80/torch-0.4.1-cp36-cp36m-win_amd64.whl (595.0MB)
Installing collected packages: torch
Successfully installed torch-0.4.1
其次是安裝 torchvision 套件, 主要提供常用影像資料集, 模型架構, 以及影像轉換函式庫, 參考 :
# https://pytorch.org/docs/stable/torchvision/index.html
D:\Python\test>pip3 install torchvision
Collecting torchvision
Downloading https://files.pythonhosted.org/packages/ca/0d/f00b2885711e08bd71242ebe7b96561e6f6d01fdb4b9dcf4d37e2e13c5e1/torchvision-0.2.1-py2.py3-none-any.whl (54kB)
Requirement already satisfied: numpy in c:\python36\lib\site-packages (from torchvision) (1.14.1+mkl)
Requirement already satisfied: six in c:\python36\lib\site-packages (from torchvision) (1.11.0)
Requirement already satisfied: torch in c:\python36\lib\site-packages (from torchvision) (0.4.1)
Collecting pillow>=4.1.1 (from torchvision)
Downloading https://files.pythonhosted.org/packages/bd/39/c76eaf781343162bdb1cf4854cb3bd5947a87ee44363e5acd6c48d69c4a1/Pillow-5.3.0-cp36-cp36m-win_amd64.whl (1.6MB)
Installing collected packages: pillow, torchvision
Found existing installation: Pillow 4.1.0
Uninstalling Pillow-4.1.0:
Successfully uninstalled Pillow-4.1.0
Successfully installed pillow-5.3.0 torchvision-0.2.1
Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import torch
>>> print(torch.__version__)
0.4.1
>>> import numpy
>>> print(numpy.__version__)
1.14.1
>>> torch.cuda.is_available()
False
由於我電腦沒有獨立顯示卡, 因此呼叫 torch.cuda.is_available() 時傳回 False, 若有顯示卡會傳回 True. 接著按照該網頁內容測試矩陣 :
>>> x = torch.Tensor(2,3)
>>> print(x)
tensor([[0.0000, 0.0000, 0.0000],
[0.0000, 0.0000, 0.0000]])
>>> y=torch.Tensor(4,2,3)
>>> print(y)
tensor([[[1.3788e-14, 5.7453e-44, 9.3945e-05],
[4.5911e-41, 0.0000e+00, 0.0000e+00]],
[[2.1019e-44, 0.0000e+00, 2.9114e-05],
[8.4218e-43, 7.3917e-06, 8.4218e-43]],
[[0.0000e+00, 0.0000e+00, 2.1019e-44],
[0.0000e+00, 2.7358e-05, 8.4218e-43]],
[[1.0333e+20, 0.0000e+00, 0.0000e+00],
[0.0000e+00, 2.1019e-44, 0.0000e+00]]])
>>> x = x.cuda()
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
x = x.cuda()
RuntimeError: cuda runtime error (35) : CUDA driver version is insufficient for CUDA runtime version at ..\aten\src\THC\THCGeneral.cpp:74
由於沒有獨顯卡, 因此呼叫 cuda() 會報錯.
2018-12-01 補充 :
看起來, 下次換新筆電時要把獨顯卡納入考量才好, ASUS UX533FD 似乎是兼具效能與長效電池優點的機種, 而且獨顯採用輝達 GTX 1050, 效能勝過 ACER Swift 5 所用的 MX150, 參考 :
# MX150显卡和GTX1050哪个好
雖說在筆電上跑機器學習程式不用寄望效能有多好, 但至少呼叫 CUDA 函數不會抱錯, 且可以比較一下 CPU 版與 GPU 版效能差異, 偶而剪輯影片也比較順暢, 只要電池夠大, 多個顯卡也無妨. 參考 :
# 新筆電市調 (二) : ASUS ZenBook UX533FD
2019-01-29 補充 :
其實在 PyTorch 官網就有安裝指令產生網頁, 只要指定 OS, 安裝方式, Python 版本以及有無 CUDA, 底下就會自動產生所需之安裝指令 :
以 Win10, Python 3.7 無 CUDA 為例, 其 pip 指令如下 :
pip3 install https://download.pytorch.org/whl/cpu/torch-1.0.0-cp37-cp37m-win_amd64.whl
pip3 install torchvision
沒有留言:
張貼留言