Hướng dẫn add tensorflow sử dụng pycharm

Như đã nói nhiều ở Làm sao để trở thành AI/Deep Learning engineer, Sơ lược về các Deep Learning Framework, muốn phát triển các ứng dụng sử dụng deep learning một cách dễ dàng thì nên sử dụng framework phù hợp. Như đánh gia trong bài Sơ lược về các Deep Learning Framework thì tensorflow, pytorch là 2 framework đơn giản và dễ sử dụng nhất. Đặc biệt là cả hai đều có cộng đồng người dùng và model zoo rất lớn. Như vậy, khi gặp một vấn đề khó giải quyết, bạn sẽ được hỗ trợ rất nhiều từ cộng đồng sử dụng khi gặp vấn đề hoặc muốn đặt câu hỏi. Cộng đồng Tensorflow, Pytorch.

Trong post này nhóm xin giới thiệu cách cài đặt 2 framework tensorflow và pytorch. Đây là 2 framework chính được sử dụng trong những bài viết tới.

Trong bài này mình hướng dẫn cài đặt các framework lên máy tính cấu hình như sau Ubuntu 16.04, 64 bit, GPU GTX 1070. Nếu bạn không có card GPU có thể cài đặt framework phiên bản CPU.

2. Cài đặt cuda và cudnn cho GPU

Cài đặt cuda

Bạn vào đường link của Nvidia và chọn các tab như hình phía dưới để download được cuda 9.0.

Hướng dẫn add tensorflow sử dụng pycharm

Chạy 4 câu lệnh sau để cài đặt cuda sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb sudo apt-key add /var/cuda-repo-/7fa2af80.pub sudo apt-get update sudo apt-get install cuda

Cài đặt cudnn

Bạn vào đường link này để download cudnn 7.1. Bạn cần phải đăng kí một tài khoản để có thể download cudnn nhé. Unzip file vừa download vào folder Downloads. Bạn sẽ thấy folder cuda có chứa 2 folder con là include và lib64. Copy 2 folder này vào thư mục CUDA_HOME bằng các câu lệnh sau:

sudo cp cuda/include/cudnn.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

3. Cài đặt Anaconda

Vì sao nên sử dụng môi trường ảo

Tensorflow ra đời vào tháng 11 năm 2015, tính đến này được khoảng 2 năm rưỡi. Version hiện tại là 1.8. Mình bắt đầu sử dụng Tensorflow khoảng hơn 1 năm trước, lúc đó nó đang ở version 1.0. Như thế trong hơn 1 năm Tensorflow dã update version 8 lần. Tương tự, pytorch cũng có rất nhiều version khác nhau. Do tính chất là framework opensource, có sự đóng góp rất lớn từ cộng đồng, nên các API, hàm và cách sử dụng được update liên tục. Nhiều lần update các API và cách gọi đã bị thay đổi rất nhiều. Vì vậy, các bạn sẽ thấy mỗi source code bạn tìm được trên github thường mô tả cho các bạn version tensorflow/pytorch mà họ sử dụng. Khi đó, bạn phải cài đúng version tensorflow/pytorch thì mới có thể chạy được source code đó. Tuy nhiên khi cài Tensorflow/pytorch trực tiếp vào máy tính, bạn chỉ có thể cài 1 version. Như thế bạn không thể làm việc với 2 project có version tensorflow/pytorch khác nhau. Để giải quyết vấn đề này, Anaconda sẽ tạo ra các môi trường ảo khác nhau. Bạn có thể xem mỗi môi trường ảo là một máy tính, bạn có thể cài đặt các phần mềm bạn muốn sử dụng. Khi bạn vào một môi trường ảo, bạn có thể sử dụng các phần mềm đã cài trong môi trường ảo hiện tại. Như thế bạn có thể cài 1 version của tensorflow/pytorch vào 1 môi trường ảo để làm việc với 1 hoặc nhiều project sử dụng cùng version tensorflow/pytorch.

Cài đặt Anaconda

Bạn vào đường để download Anaconda cho python 2.7. Bạn chạy câu lệnh sau trên terminal để cài đặt bash Anaconda-latest-Linux-x86_64.sh

4. Cài đặt framework để làm deep learning

Cài đặt tensorflow

Tạo môi trường tên tensorflow1.8 có cài đặt sẳn python 2.7 conda create -n tensorflowGPU1.8 python=2.7 Đi vào 1 môi trường ảo source activate tensorflow1.8 Cài đặt tensorflow

  • Dành cho máy có gắn GPU.`sudo apt-key add /var/cuda-repo-/7fa2af80.pub`0
  • Dành cho máy không có GPU `sudo apt-key add /var/cuda-repo-/7fa2af80.pub`1 Nếu bạn muốn cài đặt phiên bản khác, bạn có thể vào trang Anaconda.org để tìm.

Cài đặt Pytorch

Tạo môi trường tên pytorch có cài đặt sẳn python 2.7 `sudo apt-key add /var/cuda-repo-/7fa2af80.pub`2 Đi vào 1 môi trường ảo `sudo apt-key add /var/cuda-repo-/7fa2af80.pub`3 Cài đặt pytorch

  • Dành cho máy có gắn GPU.`sudo apt-key add /var/cuda-repo-/7fa2af80.pub`4
  • Dành cho máy không có GPU. `sudo apt-key add /var/cuda-repo-/7fa2af80.pub`5 Câu lệnh trên giúp bạn cài đặt pytorch phiên bản mới nhất. Nếu bạn muốn cài đặt các version khác thì tham khảo hướng dẫn ở link này.

Kiểm tra cài đặt

Sau khi cài đặt xong, gõ lệnh python để vào màn hình chạy python. Chạy các lệnh sau để xác nhận cài đặt thành công

  • Tensorflow `sudo apt-key add /var/cuda-repo-/7fa2af80.pub`6`sudo apt-key add /var/cuda-repo-/7fa2af80.pub`7`sudo apt-key add /var/cuda-repo-/7fa2af80.pub`8`sudo apt-key add /var/cuda-repo-/7fa2af80.pub`9 Nếu bạn thấy dòng chữ ‘‘Hello, TensorFlow!’’ trên màn hình thì quá trình cài đặt tensorflow đã thành công.
  • pytorch `sudo apt-get update`0`sudo apt-get update`1`sudo apt-get update`2 Nếu bạn thấy 1 ma trận 2 hàng 4 cột và dòng chữ ‘torch.FloatTensor of size 2x4’’ trên màn hình thì quá trình cài đặt pytorch đã thành công.

Cài đặt jupyter notebook

Jupyter notebook là phần mềm giúp bạn tạo ra các tài liệu vừa chứa text, công thức, hình ảnh và cả code có thể thực thi. Đây là một công cụ rất tốt để tạo ra các bài tutorial dễ hiểu và trực quan. Nhóm sẽ sử dụng Jupyter notebook để tạo các bài học về deep learning cho các bạn.`sudo apt-get update`3

  • Chạy jupyter notebook `sudo apt-get update`4

Tổng hợp các lệnh cơ bản của Anaconda

  • Tạo 1 môi trường mới `sudo apt-get update`5 ví dụ: `sudo apt-get update`6
  • Tạo 1 môi trường mới có cài đặt sẳn 1 phần mềm `sudo apt-get update`7 Ví dụ: tạo môi trường tên tensorflow1.8 có cài đặt sẳn python 2.7 `sudo apt-get update`8 Một chú ý là bạn nên đặt tên các môi trường ảo ứng với version tensflow mà bạn cài đặt để tránh nhầm lẫn. Ví dụ như: tensorflow1.0, tensorflow1.8, pytorch0.1.12.
  • Đi vào 1 môi trường ảo `sudo apt-get update`9
  • Thoát khỏi 1 môi trường ảo `sudo apt-get install cuda`0
  • Liệt kê tất cả môi trường ảo trong máy đã tạo `sudo apt-get install cuda`1
  • Xoá một môi trường ảo `sudo apt-get install cuda`2
  • Cài đặt các gói phần mềm Sau khi vào một môi trường ảo, bạn có thể cài đặt phần mềm mới như sau: vào trang Anaconda.org và tìm theo tên phần mềm cần cài đặt. Ví dụ bạn gõ opencv. Bàn sẽ nhìn thấy nhiều version khác nhau. click vào version muốn cài đặt, bạn sẽ thấy câu lệnh bắt đầu bằng `sudo apt-get install cuda`3 . Ở đây mình chọn opencv 3.4.1 thì bạn sẽ thầy câu lệnh là `sudo apt-get install cuda`4. Copy câu này lên terminal chạy. Nó sẽ tự động cài phần mềm này.
  • Kiểm tra các phần mềm đã cài đặt `sudo apt-get install cuda`5

4. Kết bài

Vậy là trong phần này chúng ta đã cài đăt được các framework và các công cụ cần thiết để có thể bắt đầu học và làm deep learning. Mình tổng hợp ngắn gọn mục đích sử dụng của các công cụ trong bảng sau:

Công cụ Mục đích Anaconda Tạo nhiều môi trường ảo riêng biệt để chạy các phiên bản khác nhau của cùng một framework. Tensorflow Framework giúp tạo và huấn luyện mô các mô hình deep learning dễ dàng, thuận tiện. Pytorch Framework giúp tạo và huấn luyện mô các mô hình deep learning dễ dàng, thuận tiện. Jupyter notebook Tạo tài liệu vừa chứa text, công thức, hình ảnh và cả code có thể thực thi

Nhóm sẽ cố gắng giúp các bạn học Deep Learning thông qua các bài viết về lí thuyết cũng như thực hành trong tương lai thông qua hiểu biết và kinh nghiệm của các thành viên. Mong các bạn tiếp tục ủng hộ nhóm.