Quản Lý Data Version Cho Dự Án Machine Learning

Quản Lý Data Version Cho Dự Án Machine Learning

Như chúng ta đã biết, github là nơi lưu trữ source code tuyệt vời của anh em developer. Nhưng với dự án Machine Learning thì chúng ta bắt gặp một vấn đề là lượng data quá lớn. Mà kho lưu trữ github của chúng ta thì có giới hạn.

Vậy giờ ta phải làm sao?

Một vài giải pháp hiện tại:

Cách 1: Upload data lên clould rồi share link cho các member download

Cách 2: Tương tự như cách 1, giờ chúng ta viết một câu lệnh. Cho user chạy câu lệnh đó rồi tải về.

Nhưng khi có thay đổi gì ở data thì phải thay đổi link download, thay đổi hàm… DVC sinh ra để giúp ta làm những điều này và hơn thế nữa

2. DVC là gì?

DVC là viết tắt của Data Version Control. Nghe chắc mọi người đã hiểu nó là gì rồi. Đúng thế DVC là công cụ giúp chúng ta quản lý từng version của data. Nó là bộ đôi đi kèm với Git.

No server licenses for DVC. It is 100% free and open source [1]

3. Cài đặt DVC và kho lưu trữ data

3.1 Cài đặt DVC

Trên trang chủ DVC đã viết khá rõ [2], DVC hỗ trợ Windows, Mac, Linux.

Và đây là link hướng dẫn cách cài đặt nhé.

https://dvc.org/doc/install [2]

Cùng nhau kiểm tra sau khi install nhé. Bật command line

dvc --version

3.2 Tạo Kho lưu trữ

Điều này khá dễ hiểu, để quản lý data thì trước tiên chúng ta phải chọn một nơi lưu trữ data. Vậy chúng ta chọn nơi nào làm lưu trữ data. Câu trả lời thì không còn phụ thuộc vào DVC mà phụ thuộc vào chúng ta. Hiện tại DVC đã hỗ trợ khá nhiều kho lưu trữ

Để biết cách setup nơi lưu trữ data như thế nào? Bạn đi sâu vào link này nhé  https://dvc.org/doc/command-reference/remote/add [3]

4. Sử dụng DVC vào dự án machine learning

4.1 Khởi tạo dvc

dvc init

Mọi người dùng qua git thì chắc hiểu câu lệnh huyền thoại này. DVC tương tự vậy. Khởi tạo án với DVC. HẾT

4.2  Push các file init của dvc lên git

Git commit -m “Inittialize DVC”

Khi chúng ta khởi tạo DVC thì sẽ tạo ra các file init từ DVC, bước này dùng để upload các file này lên git.

4.3 Add file data vào kho lưu trữ đã khởi tạo ở phần 3.2

DVC add data.xml
git add data.xml.dvc
git commit -m "Add raw data"

Giờ thì mình giải thích các dòng lệnh này nhé.

 Khi chúng ta gọi lệnh (1) thì dvc sẽ add file data.xml hệ thống theo dõi cũa DVC. Cùng lúc đó khởi tạo file tracking data.xml.dvc (File này lưu trữ địa chỉ và version của data).

Chúng ta để cho git quản lý file data.xml.dvc này nên cần dòng lệnh (2), (3)

4.4 Upload data lên kho lưu trữ như thế nào?

DVC push

4.5 Pull data từ kho lưu trữ về thì làm sao?

DVC pull

4.6 Đổi version của data thì làm sao

git checkout HEAD^1 data/data.xml.dvc
dvc checkout

Giải thích: Dùng git checkout file tracking version data sau đó dùng dvc checkout thôi

4.7 Còn nhiều thứ hay ho khác về DVC

Tham khảo tại đây nhé

https://dvc.org/doc [4]

Tham khảo

 [1] https://dvc.org/

 [2] https://dvc.org/doc/install

 [3] https://dvc.org/doc/command-reference/remote/add

 [4] https://dvc.org/doc