a) Giới thiệu chung về Google colab
Google Colaboratory (gọi tắt là Google Colab hay Colab) là một sản phẩm của Google Research. Colab dựa trên Jupyter Notebook, người dùng có thể viết và thực thi đoạn mã python thông qua trình duyệt và đặc biệt rất phù hợp với data analysis, machine learning và giáo dục.
Nhìn chung, khi máy tính chúng ta không có đủ tốc độ xử lý do thiếu GPU thì ta sẽ sử dụng Google Colab của Google cung cấp miễn phí để ta đào tạo mô hình yolo trên cloud.
Ưu điểm của Colab:
➢ Cấu hình chip mạnh và nhanh. ➢ Dung lượng RAM lớn.
➢ Được cung cấp miễn phí. Nhược điểm của Colab:
➢ Thời gian sử dụng google colab bị giới hạn (10 - 12 tiếng) do đó không phù hợp với những dự án lớn cần nhiều thời gian.
b) Thu thập dữ liệu hình ảnh cần thiết để đào tạo model yolo trên google colab
Hệ thống sử dụng model Yolov3_tiny nhằm nhận diện biển báo, đèn giao thông, con người và phương tiện giao thông khác (xe hơi). Để mô hình có thể phát hiện được các đối tượng đó, chúng ta cần thu thập một lượng lớn dữ liệu hình ảnh phong phú về các đối tượng cần được nhận diện.
Hình 3.17 Hình ảnh cần gán nhãn.
Khi đã chuẩn bị đủ dữ liệu hình ảnh, ta tiến hành gán nhãn bằng tay cho từng bức ảnh bằng cách sử dụng chương trình labelImg.py:
Nén file dữ liệu hình ảnh đã gán nhãn, đưa lên google drive để tiến hành đào tạo mô hình.
c) Tiến hành đào tạo mô hình trên colab
Bước 1: Kết nối Colab với Google drive, sử dụng code block:
from google.colab import
drive drive.mount('/content/drive')
Bước 2: Lấy mã nguồn file dữ liệu hình ảnh đã upload trên google drive sang Colab:
%cd /content !unzip /content/drive/'My Drive'/ML/darknet.zip %cd /content/darknet
Trong đó, ‘ML’ là thư mục chứa file hình ảnh ‘data.zip’. Bước 3: Biên dịch mã nguồn darknet trên colab.
%cd /content/darknet !make clean
!make
!chmod +x ./darknet
Bước 4: Lưu thư mục chứa model yolov3-tiny đã được đào tạo vào thư mục ‘ML” trên driver.
!rm /content/darknet/backup -r
!ln -s /content/drive/'My Drive'/ML/backup /content/darknet
Bước 5: Chạy lệnh đào tạo mô hình.
%cd /content/darknet
!./darknet detector train yolo.data cfg/yolov3.cfg darknet53.conv.74