Các công cụ cơ bản để bắt đầu với ML/Python
Nếu các bạn đang tìm hiểu cơ bản về Machine Learning chắc hẳn đang rất đau đầu với độ tương thích của các gói thư viện trên project mình đang làm việc. Bài viết này sẽ giúp các bạn xác định và phân biệt các công cụ hỗ trợ trong việc thực hành ML.
Phân biệt các khái niệm
ML với Python có những bộ công cụ chính sau:
- Python Package Manager: pip, conda → giúp chúng ta quản lý và tải về các gói công cụ
- Python Version Manager: pyenv → giúp chuyển đổi giữa các phiên bản Python
- Python Environment Manager: virtualenv → công cụ tạo môi trường ảo để chứa các gói cần thiết trong quá trình phát triển project, không ảnh hưởng đến môi trường chính
- Multi-Function Support Toolkit: anaconda → là bộ công cụ có tất cả các chức năng kể trên, ngoài ra Anaconda còn cung cấp những thư viện khoa học liên quan phục vụ công việc tính toán và phân tích dữ liệu
Vậy nên chọn công cụ nào?
Lúc trước mình phát triển 1 dự án sử dụng TensorFlow phiên bản 1.15 (hỗ trợ python 3.7) thay thế cho 2.0, nhưng phiên bản python hiện tại đang là 3.8 nên không thể tương thích được. Mình đã thử tìm phiên bản python 3.7 để cài và từ đó lại sinh ra một vài lỗi không tương thích với các gói khác. Những thao tác cài gói này rất nhiêu khê không cần thiết, tốn thời gian, cá nhân mình đã thử qua rất nhiều cách và cuối cùng đã “bén duyên” với Anaconda.
Khi bạn cài Anaconda, nó đồng thời cài những thứ “cơ bản” nhất để bắt đầu làm việc như Python, Jupyter Notebook, Spyder và Anaconda Prompt/Navigator.
Bắt đầu với Anaconda
Để tải anaconda bạn chỉ cần tải ở trang web https://www.anaconda.com/products/individual-d , lưu ý khi cài đặt nhớ check như hình sau:
Add vào PATH giúp bạn có thể thao tác với Anaconda mọi nơi như Windows Terminal hay CMD chứ không cần phải qua Anaconda Prompt.
Tạo môi trường mới
conda create --name ten_moi_truong python=X.X
với ten_moi_truong là tên môi trường bạn muốn tạo, X.X là phiên bản python bạn muốn thiết lập. Ví dụ mình muốn thiết lập một môi trường tên “ezdevguy” trên python 3.7 thì sử dụng lệnh sau:
conda create --name ezdevguy python=3.7
Chạy / thoát môi trường vừa khởi tạo
conda activate ten_moi_truong
Mình sẽ thử chạy môi trường ezdevguy
conda activate ezdevguy
Vậy là mình đã tạo thành công môi trường trên python 3.7.11. Khi bạn chạy môi trường dấu nhắc lệnh sẽ báo tên môi trường bạn đang thực thi (ezdevguy).
Để thoát khỏi môi trường, chỉ cần gõ:
conda deactivate
Cài đặt gói lên môi trường
conda install ten_goi
Với ten_goi là tên gói bạn muốn cài đặt, chẳng hạn như mình cài đặt gói numpy:
Xóa môi trường
conda env remove -n ten_moi_truong
Với ten_moi_truong là tên môi trường cần xóa.
Sử dụng GUI với Anaconda Navigator
Ngoài dòng lệnh thì bạn cũng có thể thao tác cơ bản với Anaconda thông qua giao diện Anaconda Navigator. Bạn có thể thêm, clone, import, xóa môi trường và quản lý các gói bên trong nó như hình dưới: