Skip to content

HuNguyen51/image-classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multilabel Image Classification using AlexNet, VGG, and ResNet

Tổng quan về đề tài

Dự án này nhằm mục đích phát triển một hệ thống phân loại hình ảnh đa nhãn, sử dụng các kiến trúc học sâu phổ biến như AlexNet, VGG và ResNet để trích xuất đặc trưng của hình ảnh. Mục tiêu là phân loại một hình ảnh thành nhiều nhãn cùng một lúc.
Khác với phân loại nhãn đơn, trong bài toán này, mỗi hình ảnh sẽ có nhiều hơn 1 nhãn được gán cho nó. Trong những ứng dụng thực tế thường gặp như gắn thẻ hình ảnh, phát hiện đối tượng và truy xuất hình ảnh. Có thể nói phân loại đa nhãn cũng là một nhiệm vụ quan trọng trong thị giác máy tính.

Phương pháp

Trong phạm vi dự án này, các mô hình được áp dụng là AlexNet, VGG, ResNet. Các mô hình này đã được sử dụng rộng rãi cho các tác vụ phân loại hình ảnh và đã cho thấy hiệu suất tuyệt vời. Và nó cũng được tinh chỉnh một chút để phù hợp cho việc huấn luyện trên tập dữ liệu của mình.

  • AlexNet: được giới thiệu vào năm 2012, nó bao gồm 5 lớp tích chập và 3 lớp fully connected.
  • VGG: được giới thiệu vào năm 2014, nó bao gồm 16 lớp tích chập và 3 lớp fully connected.
  • ResNet: được giới thiệu vào năm 2015, dự án này dùng mô hình nhỏ là ResNet18 với 18 lớp tích chập và 1 lớp fully connected.

Dataset

Dự án sử dụng bộ dữ liệu MIML, bao gồm 2000 hình ảnh được gán ít nhất 1 nhãn với mỗi hình. Các nhãn lần lượt sẽ là: desert, mountains, sea, sunset, trees

Triển khai

Code được tổ chức thành các thư mục sau:

  • models: chứa triển khai các mô hình (AlexNet, VGG16 và ResNet18)
  • datasets: chứa triển khai tập dữ liệu (MIML)
  • training: chứa triển khai vòng lặp đào tạo
  • evaluation: chứa triển khai các số liệu đánh giá
  • utils: Chứa các hàm tiện ích dùng chung
  • pretrained_models: Chứa các mô hình đã train xong để sử dụng ngay
  • train.py, test.py, inference.py: Các script chính để huấn luyện, đánh giá và chạy mô hình và suy luận ra nhãn của hình ảnh

Kết quả

Model batchsize time(s)/epoch accuracy Loss
AlexNet 32 11 93.3929% 0.2032
VGG16 2 247 94.0000% 0.4254
Resnet18 32 11 90.8929% 0.2297

Do giới hạn sức mạnh GPU nên việc huấn luyện VGG16 sẽ khó khăn hơn các mô hình khác vì kích thước mô hình quá lớn dẫn đến phải dùng batchsize nhỏ kéo theo thời gian huấn luyện dài.

Kết luận

Dự án này đã phát triển một hệ thống phân loại hình ảnh đa nhãn sử dụng ba kiến ​​trúc học sâu phổ biến: AlexNet, VGG16 và ResNet18. Kết quả cho thấy cả ba mô hình đều hoạt động tốt trên tập dữ liệu MIML, với VGG16 đạt được độ chính xác cao nhất. Dự án này cũng chứng minh tính hiệu quả của việc sử dụng các mô hình được đào tạo trước cho các tác vụ phân loại hình ảnh đa nhãn.

Công việc trong tương lai

Có một số hướng cho công việc trong tương lai:

  • Tăng cường dữ liệu: áp dụng các kỹ thuật tăng cường dữ liệu để tăng kích thước tập dữ liệu
  • Điều chỉnh siêu tham số: điều chỉnh siêu tham số của các mô hình để cải thiện hiệu suất của chúng
  • Tập hợp mô hình: kết hợp các dự đoán của nhiều mô hình để cải thiện hiệu suất tổng thể
  • Áp dụng mô hình: sử dụng thêm nhiều mô hình để so sánh và đánh giá với các mô hình còn lại từ đó chọn ra mô hình có hiệu suất cao nhất.

Note

Phạm vi bài này sử dụng card NVIDIA GTX 1050 để huấn luyện, các công cụ tương thích là CUDA 10.1 , CuDNN 10.1, và để sử dụng được hai công cụ trên, ta cần cài các phiên bản pytorch như sau:

  • torch == 1.7.1+cu101
  • torchvision == 0.8.2+cu101
  • torchaudio == 0.7.2

References

  • Krizhevsky, A., Sutskever, I., & Hinton, G. E. (2012). ImageNet classification with deep convolutional neural networks. In Advances in neural information processing systems (pp. 1097-1105).
  • Simonyan, K., & Zisserman, A. (2014). Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556.
  • He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 770-778).

About

Dự án phát triển hệ thống Multilabel Image Classification trên bộ dữ liệu MIML, sử dụng các kiến trúc Deep Learning: AlexNet, VGG16 và ResNet18. Hệ thống cho phép gán đồng thời nhiều nhãn (biển, núi, cây...) cho một ảnh.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors