So sánh giữa 2 thuật toán SVM và Neural Network

Một phần của tài liệu Tìm hiểu thuật toán Neural Network và Support Vector Machine Áp dụng nhận dạng chữ số viết tay (Trang 29)

- Quá trình phát triển của NN bắt đầu từ một thuật toán heuristic, trải qua thực nghiệm và áp dụng, và cuối cùng tiến đến lý thuyết. Ngược lại, quá trình phát triển của SVM bắt nguồn từ lý thuyết, sau đó áp dụng lý thuyết trên vào thực nghiệm.

- Trong Neural Network, việc tìm kiếm tối ưu có thể chỉ tìm được lời giải cục bộ địa phương thay vì lời giải tối ưu toàn cục. Trong khi đó, lời giải của SVM là toàn cục và là duy nhất do bài toán tối ưu là bài toán lồi.

- Lý thuyết của SVM dựa trên một diễn giải hình học. Độ phức tạp của SVM không phụ thuộc vào số chiều của không gian đầu vào (input space).

- Neural Network áp dụng nguyên tắc tối thiểu rủi ro thực nghiệm (empirical risk minimization). Trong khi, SVM dựa trên nguyên tắc tối thiểu rủi ro cấu trúc (structural risk minimization).

- SVM thường hoạt động tốt hơn NN do SVM ít bị ảnh hưỡng bởi overfitting (hiện tượng hàm phân lớp thể hiện rất tốt trên tập dữ liệu huấn luyện như rất tồi trên dữ liệu thực tế). Độ phức tạp phân lớp trong việc dự đoán của SVM tuyến tính với số lượng support vector, vì thế thời gian dự đoán rất nhanh.

17. Tổng kết

- Báo cáo đã trình bày và phân tích 2 thuật toán máy học kinh điển hiện nay là Neural Network và Support Vector Machine.

- Xây dựng thành công chương trình demo nhận dạng chữ số qua hình ảnh, sử dụng ngôn ngữ lập trình C++ và thư viện OpenCV 2.4.

- Trong tương lai, nhóm sẽ phát triển chương trình demo để nhận dạng tốt hơn các kí tự số, nâng cấp các kĩ thuật xử lý ảnh để thu được dữ liệu nhị phân tốt nhất cho việc xử lý nhận dạng bằng 2 thuật toán trên.

Một phần của tài liệu Tìm hiểu thuật toán Neural Network và Support Vector Machine Áp dụng nhận dạng chữ số viết tay (Trang 29)