Hàm tính khoảng cách Euclid

Một phần của tài liệu BÁO cáo bài tập lớn môn học máy đề tài NHẬN DIỆN KHUÔN mặt với KNN (Trang 28)

3.5. Kết quả thực nghiệm chạy chương trìnha) Quá trình huấn luyện a) Quá trình huấn luyện

Quá trình huấn luyện được chia thành 2 cách dựa trên phương pháp đưa dữ liệu đầu vào:

 Huấn luyện bằng camera  Huấn luyện bằng hình ảnh

Hình 22. Lưu trữ dữ liệu khuơn mặt

Hình 24. Huấn luyện bằng hình ảnh

Hình 25. Kết quả huấn luyện bằng hình ảnh

b) Quá trình kiểm thử

Quá trình kiểm thử sẽ gồm các bước: đọc dữ liệu huấn luyện, kiểm thử bằng camera hoặc hình ảnh, đưa ra kết quả đã được gán nhãn.

 Đọc dữ liệu huấn luyện

Hình 26. Đọc dữ liệu huấn luyện và khởi tạo mơ hình KNN với K = 5

 Kiểm thử bằng camera hoặc hình ảnh

 Đưa ra kết quả đã được gán nhãn

Hình 28. Chương trình nhận diện khuơn mặt và gán nhãn

KẾT LUẬN

Thuật tốn KNN (K-Nearest Neighbors) là một trong những thuật tốn học cĩ giám sát đơn giản nhất được sử dụng nhiều trong khai phá dữ liệu và học máy. Ý tưởng của thuật tốn này là nĩ khơng học một điều gì từ tập dữ liệu học (nên KNN được xếp vào loại lazy learning), mọi tính tốn được thực hiện khi nĩ cần dự đốn nhãn của dữ liệu mới. Lớp (nhãn) của một đối tượng dữ liệu mới cĩ thể dự đốn từ các lớp (nhãn) của k hàng xĩm gần nĩ nhất.

Vì những đặc điểm trên nên khi phát triển chương trình “Nhận diện khuơn mặt bằng KNN” cũng cĩ những ưu điểm và nhược điểm nhất định. Thuật tốn KNN cĩ ưu điểm là dễ dàng cài đặt và sử dụng, khơng dựa trên bất kỳ giả định nào, vì thế nĩ cĩ thể được sử dụng trong các bài tốn phi tuyến tính, hoạt động tốt trong trường hợp phân loại với nhiều lớp, sử dụng được trong cả phân loại và hồi quy. Tuy nhiên cũng cĩ nhược điểm là chương trình trở nên rất chậm khi số lượng điểm dữ liệu (số lượng khuơn mặt) tăng lên vì mơ hình cần lưu trữ tất cả các điểm dữ liệu, tốn bộ nhớ và nhạy cảm với các dữ liệu bất thường (nhiễu).

Sau khi hồn thành đề tài chúng em đã thu được một số kinh nghiệm như làm quen và sử dụng ngơn ngữ lập trình Python. Nắm bắt kiến thức cơ bản về các kỹ thuật nhận dạng và những yếu tố cần thiết để xây dựng một hệ thống hiệu quả chuẩn xác. Biết đến các kỹ thuật nhận diện vật thể và các model phổ biến hiện nay như nhận diện khuơn mặt, thiết bị, vật dụng,… Ứng dụng thư viện OpenCV vào bài tốn xác định và nhận diện khuơn mặt.

Chương trình cần được cải tiến thêm về hiệu năng cũng như độ chính xác khi nhận diện khuơn mặt bằng cách thay đổi phương pháp trích chọn đặc trưng tối ưu hơn. Qua đĩ sẽ giúp chương trình hoạt động mượt mà đối với những thiết bị cĩ ít tài nguyên, tránh nhận diện sai.

TÀI LIỆU THAM KHẢO

1. Tanvi Penumudy, Face Detection and Recognition using OpenCV and KNN from Scratch, Medium.

https://medium.com/analytics-vidhya/face-detection-and-recognition-using- opencv-and-knn-from-scratch-dcba9b0fd07d

2. Vũ Hữu Tiệp, Bài 6: K-nearest neighbors, Machine Learning Cơ Bản.

https://machinelearningcoban.com/2017/01/08/knn/

3. Nguyễn Thị Hợp, KNN (K-Nearest Neighbors) #1, Viblo.

https://viblo.asia/p/knn-k-nearest-neighbors-1-djeZ14ejKWz

4. Ngoc N Tran, Haar Cascade là gì? Luận về một kỹ thuật chuyên dùng để nhận biết các khuơn mặt trong ảnh, Viblo.

https://viblo.asia/p/haar-cascade-la-gi-luan-ve-mot-ky-thuat-chuyen-dung-de- nhan-biet-cac-khuon-mat-trong-anh-E375zamdlGW

Một phần của tài liệu BÁO cáo bài tập lớn môn học máy đề tài NHẬN DIỆN KHUÔN mặt với KNN (Trang 28)

Tải bản đầy đủ (PDF)

(34 trang)