Professional Documents
Culture Documents
1. Giới thiệu
• Kể từ khi ca bệnh đầu tiên được phát hiện tại thành phố Vũ Hán, Trung Quốc đến nay, đại dịch
COVID-19 đã lan rộng ra toàn cầu, gây ảnh hưởng nghiêm trọng đến tất cả lĩnh vực. Do vậy, WHO đã
khuyến nghị nhiều biện pháp góp phần ngăn ngừa sự lây lan của dịch bệnh, trong đó có biện pháp
đeo khẩu trang ở nơi công cộng. Đeo khẩu trang tại nơi công cộng trở thành điều bắt buộc ở nhiều
quốc gia Để kiểm soát việc đeo khẩu trang tại nơi công cộng (sân bay, bệnh viện,. . . ) hoặc nơi làm việc,
nhiều công ty, đơn vị quản lý đã sử dụng hệ thống phát hiện người đeo khẩu trang và người không
đeo để có biện pháp cảnh báo, nhắc nhở kịp thời. Ngoài ra việc kiểm soát này có thể sử dụng để truy
vết kịp thời nếu có ca bệnh liên quan. Hệ thống trên cần một công nghệ đáp ứng được hiệu suất tốt về
mặt thời gian và độ chính xác. Hệ thống sẽ phát hiện và cảnh báo nếu như bạn không đeo khẩu trang
ở nơi đông người.
• Pytorch chính là một framework hỗ trợ Deep Learning được phát triển bởi Facebook. (Bên cạnh
Amazon, Google hay Apple, Facebook được biết đến là đơn vị công nghệ đầu tư rất nhiều nguồn
lực cho việc phát triển trí tuệ nhân tạo).
• Phát triển Pytorch với mã nguồn mở Facebook đã tạo được một cộng đồng chia sẻ rất lớn. Với
nguồn tài nguyên rộng lớn trên cộng đồng này các vấn đề mà bạn đang mắc phải có thể đã có ai
đó giải quyết và được chia sẻ lên cộng đồng, hãy dành một chút thời gian để tìm kiếm.
• Việc nhiều người sử dụng Pytorch cũng như Tensorflow hay Keras để giải quyết các bài toán về
Deep Learning, đã làm chúng trở thành những framework phổ biến nhất hiện nay. Đặc biệt phải
kể đến lĩnh vực nghiên cứu, các nhà phát triển hay tác giả hầu như ưu tiên sử dụng Pytorch giúp
triển khai các bài toán của mình bởi Pytorch dễ dàng giúp chúng bạn debug và Visuallize cùng
với đó là cơ chế Dynamic Graphs cho phép giảm thời gian huấn luyện mô hình.
1
• Có TouchScript được xem là một tập hợp con của Python. Tập hợp này giúp triển khai các ứng
dụng vào quy mô sản xuất từ đó mở rộng quy mô. Đồng thời khi nói đến việc xây dựng các
nguyên mẫu với tốc độ nhanh, sử dụng Pytorch được ưu tiên hơn so với Tensorflow vì nó nhẹ
hơn.
• ...
ResNet gần như tương tự với các mạng gồm có convolution, pooling, activation và fully-connected
layer. Ảnh bên trên hiển thị khối dư được sử dụng trong mạng. Xuất hiện một mũi tên cong xuất phát
từ đầu và kết thúc tại cuối khối dư. Hay nói cách khác là sẽ bổ sung Input X vào đầu ra của layer, hay
chính là phép cộng mà ta thấy trong hình minh họa, việc này sẽ chống lại việc đạo hàm bằng 0, do vẫn
còn cộng thêm X. Với H ( x ) là giá trị dự đoán, F ( x ) là giá trị thật (nhãn), chúng ta muốn H ( x ) bằng
hoặc xấp xỉ F ( x ). Việc F(x) có được từ x như sau: x → Weight1 → ReLU → Weight2
Giá trị H(x) có được bằng cách: F ( x ) + x → ReLU
2
3. Các bước phát triển
3.1. Cấu trúc chương trình
[1] Thu thập dữ liệu: Bộ dữ liệu được sử dụng trong bài bao gồm 811 ảnh người đeo khẩu trang và 701
người không đeo khẩu trang
[2] Sử dụng bộ dữ liệu đã được thu thập ở trên. Đưa vào huấn luyện mô hình mạng neural tích chập CNN
với cấu trúc mạng dựa trên Resnet18
3
3.2. Thuật toán của chương trình
3.2.1. Thuật toán huấn luyện mô hình phát triển đeo khẩu trang
4
• Việc tiền xử lý dữ liệu nhằm đưa tất cả các ảnh về cùng kích thước, sau đó các ảnh này sẽ được
chuyển đổi để phục vụ cho quá trình xử lý ảnh ở bước sau. Cụ thể chúng ta cần tạo ta 1 class
Dataset và chuẩn hoá ảnh về dạng Tensor với size 224,224
• ...
[3] Xây dựng các lớp cho mô hình Trong bài này chúng ta sẽ implement lại mang reural Resnet18 và thay
lớp đầu ra cuối cùng theo mong muốn. Vì đầu ra của chúng ta sẽ là đeo khẩu trang hoặc không đeo
khẩu trang nên output sẽ là 2, bên cạnh đó chúng ta sẽ sử dụng CrossEntoryLoss và thuật toán tối ưu
tốt nhất hiện nay là Adam với learning rate là 10−3
5
[4] Kiểm tra
6
4. Các nguồn tài liệu tham khảo
• https://onetech.vn/blog/pytorch-la-gi-13470
• https://pyimagesearch.com/2018/02/26/face-detection-with-opencv-and-deep-learning/
5. Code colab
[1] File code colab