[Deep Learning] Giới thiệu và cài đặt Pytorch

  Jan 30, 2018      2m
   

Giới thiệu Pytorch.

[Deep Learning] Giới thiệu và cài đặt Pytorch

Giới thiệu Pytorch

  • Pytorch là 1 framework dành cho Deep Learning đang nổi (xu hướng) ở thời điểm của bài viết này (11/2017)
  • Lập trình bằng Python
  • Có thể convert sang Caffe 2 (thường dùng cho Production, hiệu quả dùng được trên mobile)
  • Hỗ trợ chạy trên GPU
  • Pytorch có thể tự tính đạo hàm lúc backward bằng gói autograd của nó - http://pytorch.org/tutorials/beginner/blitz/autograd_tutorial.html
  • Lưu / load model Neural Network đã train (file .pth)
  • Hỗ trợ bởi cộng đồng lớn
  • Dễ sử dụng cho người mới bắt đầu

1 số Deep Learning Framework phổ biến

Cài đặt Pytorch

Đã có hướng dẫn đầy đủ trên trang chủ. Mình sẽ hướng dẫn các bạn cách cài đặt được cho là gọn nhất theo mình. Đó là dùng Conda.

Conda có đặc điểm:

  • Cô lập hóa các package của Python vào 1 môi trường độc lập –> nếu có lỗi hay vấn đề gì cũng không sợ ảnh hưởng đến các Python package trên hệ thống.
  • Gần giống môi trường ảo, khi cần dùng chỉ cần chạy 1 lệnh để kích hoạt môi trường mong muốn. Không dùng thì deactivate.
  • Giải quyết triệt để vấn đề nhiều phiên bản Python trên cùng 1 OS (Python 2.7 vs Python 3).
  • Vai trò như 1 package manager, chạy lệnh conda install sẽ giải quyết ta giải quyết dependencies 1 cách tự động. Nó có thể downgrade các gói đã cài (chỉ trong môi trường của Conda) để đảm bảo cài đặt thành công.

Tiến hành cài đặt Pytorch trên Conda thôi:

  1. Vào trang Anaconda Download, tải Anaconda Python 3.6 sẽ được file có dạng Anaconda3-5.0.1-Linux-x86_64.sh (>500 MB)
  2. Cài đặt Conda bằng lệnh sau và làm theo hướng dẫn của nó
     bash Anaconda3-5.0.1-Linux-x86_64.sh
    
  3. Sau khi cài đặt hoàn thành, tắt và mở lại Terminal
  4. Kiểm tra xem conda đã được cài đặt thành công:
     conda list
    
  5. Tạo mới 1 môi trường trong Conda
     conda create -n py35 python=3.5
    

    Lưu ý: py35 là tên môi trường, có thể đặt tên khác

  6. Kích hoạt môi trường vừa tạo
     source activate py35
     (py35) minh@minh-X550CC:~$ |   <-- vậy là OK
    
  7. Cài đặt Pytorch và Torchvision bản mới nhất (hướng dẫn trên trang chủ) trong môi trường py35 vừa tạo
     conda install pytorch torchvision -c pytorch
    
  8. Kiểm tra torchtorchvision
     (py35) minh@minh-X550CC:~$ python --version
     Python 3.5.4 :: Anaconda custom (64-bit)
     (py35) minh@minh-X550CC:~$ python
     >>> import torch
     >>> torch.__version__
     >>> import torchvision
     >>> torchvision.__version__
    

    Vậy là đã hoàn tất quá trình cài Pytorch. Các phần hướng dẫn bên dưới là cài đặt driver Nvidia để chạy bằng GPU trong quá trình train (nhanh hơn nhiều so với CPU).

  9. Cài đặt Nvidia driver
     sudo apt-get purge nvidia*
     sudo apt-get install nvidia-384
    
  10. Cài nvidia-cuda-toolkit
    sudo apt install nvidia-cuda-toolkit
    
  11. Tắt Secure Boot
    sudo mokutil --disable-validation
    input password:
    input password again:
    

    Khởi động lại máy. Có thể bạn sẽ cần phải vào BIOS tắt chế độ Secure Boot.
    Khi khởi động lại máy sẽ hỏi password bạn vừa nhập ở trên. Sau khi điền đúng ký tự thứ x trong password (3 lần) như nó hỏi. Bạn chỉ cần lựa chọn option change boot state.

  12. Kiểm tra cài đặt Nvidia driver thành công hay không
    nvidia-smi
    Wed Dec  6 18:46:12 2017       
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 384.90                 Driver Version: 384.90                    |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |===============================+======================+======================|
    |   0  GeForce GT 720M     Off  | 00000000:01:00.0 N/A |                  N/A |
    | N/A   58C    P0    N/A /  N/A |     77MiB /  1985MiB |     N/A      Default |
    +-------------------------------+----------------------+----------------------+
                                                                                    
    +-----------------------------------------------------------------------------+
    | Processes:                                                       GPU Memory |
    |  GPU       PID   Type   Process name                             Usage      |
    |=============================================================================|
    |    0                    Not Supported                                       |
    +-----------------------------------------------------------------------------+
    

    Done. Vậy là đã cài đặt xong mọi công cụ cần thiết để bắt đầu cho hành trình!


Tham khảo thêm: