ỨNG DỤNG SVM VÀO BÀI TOÁN NHẬN DẠNG CHỮ VIẾT TAY RỜI RẠC

Một phần của tài liệu đề tài nghiên cứu khoa học toán ứng dụng (Trang 58 - 65)

RẠC

Phần này sẽ áp dụng phương pháp phân lớp SVM để xây dựng mô hình nhận dạng chữ viết tay rời rạc (hình 2.10). Mô hình huấn luyện SVM Dữ liệu huấn luyện Huấn luyện Trích chọn đặc trưng Hình 2.10. Mô hình nhận dạng chữ viết tay rời rạc. 2.7.1. Tiền xử lý

Sau khi đã khử nhiễu, ảnh được chuẩn hóa về kích thước chuẩn 16×16 theo các bước sau:

Bước 1: Nhị phân hóa ảnh. Dữ liệu nhận dạng Nhận dạng Knhết quận ả dạng Tiền xử lý

Bước 2: Tìm hình chữ nhật R bé nhất chứa các điểm đen trên ảnh. Bước 3: Lấy vùng ảnh I nằm trong hình chữ nhật R.

Bước 4: Chuẩn hóa ảnh I về kích thước chuẩn 16×16.

2.7.2. Trích chọn đặc trưng

Trong tất cả các loại đặc trưng thì đặc trưng ma trận nhị phân là đặc trưng đơn giản và dễ cài đặt nhất. Với ảnh đầu vào, sau khi tìm khung bé nhất chứa các điểm đen trên ảnh và chuẩn hóa về kích thước 16×16, chuyển sang ảnh nhị phân và biến đổi thành mảng một chiều để làm đặc trưng cho việc huấn luyện và nhận dạng (hình 2.11). Như vậy, đặc trưng được trích chọn đại diện cho mỗi ký tự là một véc tơ 256 chiều.

Hình 2.11. Chọn đặc trưng ma trận nhị phân.

2.7.3. Huấn luyện mô hình và nhận dạng

Trong quá trình cài đặt thực nghiệm, luận án xây dựng các mô hình huấn luyện và nhận dạng theo hai chiến lược OVO và OVR. Các máy phân lớp nhị phân được huấn luyện theo thuật toán SMO với nhiều loại hàm nhân và các thông số khác nhau.

2.7.4. Kết quả thực nghiệm

Phần này tiến hành cài đặt thử nghiệm trên các bộ dữ liệu chữ số viết tay USPS và MNIST. Đây là các bộ dữ liệu chuẩn được sử dụng đểđánh giá hiệu quả của các phương pháp nhận dạng chữ viết tay. Bộ dữ liệu USPS bao gồm 7291 mẫu dùng để huấn luyện và 2007 mẫu khác để nhận dạng, mỗi mẫu là một ảnh đa cấp xám kích

thước 16x16. Bộ dữ liệu MNIST bao gồm 60.000 mẫu huấn luyện và 10.000 mẫu khác để nhận dạng, mỗi mẫu là một ảnh kích thước 28×28 (hình 2.12).

(a) Các mẫu của tập USPS (b) Các mẫu của tập MNIST

Hình 2.12. Các mẫu chữ số viết tay trích từ tập các tập dữ liệu USPS và MNIST. Đầu tiên, luận án thử nghiệm mô hình SVM với các chiến lược OVR và OVO với hàm nhân Gausse trên các tập dữ liệu USPS và MNIST (bảng 2.1 và 2.2).

Bảng 2.1. Kết quả thực nghiệm trên tập USPS với C=10, hàm nhân RBF(σ =0.05).

Chiến lược Số SV Thời gian huấn luyện Thời gian Test Độ chính xác

OVR 7874 195 giây 15 giây 95,3%

OVO 13952 82 giây 25 giây 95,3%

Bảng 2.2. Kết quả thực nghiệm trên tập MNIST với C=10, hàm nhân RBF(σ =0.08).

Chiến lược Số SV Thời gian huấn luyện Thời gian Test Độ chính xác

OVR 8542 > 9 giờ ≈ 3 phút 96,1%

OVO 31280 ≈ 2 giờ ≈ 5 phút 97,2%

Các kết quả thực nghiệm ở bảng 2.1 và 2.2 cho thấy việc sử dụng chiến lược OVO có độ chính xác cao hơn chiến lược OVR. Mặc dù số máy phân lớp của OVR ít hơn nhiều so với OVO, nhưng trong quá trình huấn luyện thì mỗi máy phân lớp của OVR phải sử dụng toàn bộ tập mẫu để huấn luyện trong khi các máy của OVO

chỉ sử dụng một phần của tập mẫu, do đó thời gian huấn luyện của OVO cũng nhanh hơn nhiều so với OVR. Tuy nhiên, do số máy phân lớp của OVR ít hơn so với OVO dẫn đến số véc tơ tựa của OVR cũng ít hơn, vì vậy thời gian nhận dạng của OVR nhanh hơn so với OVO.

Tiếp tục thử nghiệm các hàm nhân khác nhau cho mô hình SVM với các tham số C=10, Cache=1000 (bảng 2.3).

Bảng 2.3. Kết quả thực nghiệm với các hàm nhân khác nhau trên tập USPS.

Huấn luyện Test

Hàm

Kernel Thời gian Số lỗi Thời gian Độ chính xác

Tuyến tính 9 phút 322/7291 5 giây 90.0% Đa thức bậc 2 2 phút 424/7291 20 giây 92.7% RBF (σ=0.05) 3 phút 1/7291 50 giây 95.3%

Kết quả thực nghiệm ở bảng 2.3 cho thấy sử dụng hàm nhân RBF cho độ chính xác phân lớp cao nhất.

Phần tiếp theo sẽ sử dụng hàm nhân Gausse để huấn luyện SVM với C=10, Cache=1000 và các giá trịσ khác nhau (bảng 2.4).

Bảng 2.4. Kết quả huấn luyện với hàm nhân Gausse.

σ Số mẫu học SV Số lỗi

0.5 7291 43767 3788/7291

0.05 7291 12454 1/7291

0.01 7291 4423 9/7291

Kết quả ở bảng 2.4 cho thấy chất lượng của mô hình huấn luyện SVM phụ thuộc vào việc lựa chọn giá trị của tham sốσ.

Tiếp tục thử nghiệm huấn luyện mô hình SVM với các kích thước Cache khác nhau với C=10, hàm nhân RBF(σ=0.05) (bảng 2.5).

Bảng 2.5 cho thấy chất lượng của thuật toán huấn luyện SVM cũng phụ thuộc vào kích thước của cache.

Bảng 2.5. Kết quả huấn luyện với kích thước cache khác nhau.

Cache Số mẫu học SV Số lỗi

1000 7291 12454 1/7291

300 7291 11151 48/7291

100 7291 4486 590/7291

Cuối cùng, so sánh các kết quả nhận dạng theo mô hình SVM so với các mô hình mạng nơ ron truyền thẳng [5] trên cùng một bộ dữ liệu MNIST (bảng 2.6).

Bảng 2.6. So sánh kết quả nhận dạng của SVM với các mô hình mạng nơ ron. Các thông số NN 3 lớp NN 4 lớp SVM Số mẫu học 60.000 60.000 60.000 Thời gian học ~ 17 giờ ~ 24 giờ ~ 2 giờ Số mẫu test 10.000 10.000 10.000 Thời gian test ~ 3 phút ~ 2 phút ~ 5 phút Tỷ lệ test lỗi (%) 8.3 4.6 2.8

Kết quảở bảng 2.6 cho thấy kết quả nhận dạng theo mô hình SVM có độ chính xác cao hơn rất nhiều so với các mô hình mạng nơ ron, tuy nhiên thời gian nhận dạng lại quá chậm.

Sau đây là một số kết quả phân lớp được thực nghiệm trên bộ dữ liệu MNIST với các phương pháp phân lớp khác nhau, số liệu thống kê ở bảng 2.7 được trích từ website của Yann LeCun: http://yann.lecun.com/exdb/mnist/.

Bảng 2.7. So sánh một số phương pháp phân lớp trên bộ dữ liệu MNIST.

Các phương pháp phân lớp Tỷ lệ test lỗi (%) Tác giả

linear classifier (1-layer NN) 12.0 LeCun et al. 1998 K-nearest-neighbors, Euclidean

(L2) 3.09

Kenneth Wilder, U. Chicago

SVM, Gaussian Kernel 1.4 Virtual SVM deg-9 poly

[distortions] 0.8 LeCun et al. 1998

2-layer NN, 300 hidden units, mean

square error 4.7 LeCun et al. 1998

2-layer NN, 300 HU, MSE,

[distortions] 3.6 LeCun et al. 1998

2-layer NN, 1000 hidden units 4.5 LeCun et al. 1998 3-layer NN, 300+100 hidden units 3.05 LeCun et al. 1998 3-layer NN, 500+150 hidden units 2.95 LeCun et al. 1998

Các kết quả ở bảng 2.7 cho thấy, so với các phương pháp học máy khác thì SVM là một trong số các phương pháp phân lớp đạt độ chính xác cao nhất. So với các kết quả phân lớp SVM ở bảng 2.7 thì các kết quả thực nghiệm của luận án ở bảng 2.6 đạt độ chính xác thấp hơn nhiều, điều này cũng dễ hiểu bởi vì trong chương này, luận án chưa chú trọng đến các khâu tiền xử lý và trích chọn đặc trưng. Vấn đề trích chọn đặc trưng sẽđược đề cập cụ thể hơn ở chương sau.

2.8. KẾT LUẬN

SVM được đánh giá là một hướng tiếp cận phân lớp đạt độ chính xác cao. Hạn chế lớn nhất của SVM là tốc độ phân lớp rất chậm, tùy thuộc vào số lượng các véc tơ tựa. Mặt khác, giai đoạn huấn luyện SVM đòi hỏi bộ nhớ rất lớn, do đó các bài toán huấn luyện với số lượng mẫu lớn sẽ gặp trở ngại trong vấn đề lưu trữ. Dù vậy, SVM vẫn được đánh giá là phương pháp học máy tiên tiến đã đóng góp nhiều thành công trong các lĩnh vực khai phá dữ liệu cũng như trong lĩnh vực nhận dạng. Bài toán huấn luyện SVM thực chất là bài toán QP trên một tập lồi, do đó SVM luôn có nghiệm toàn cục và duy nhất, đây chính là điểm khác biệt rõ nhất giữa SVM so với

phương pháp mạng nơ ron, vì mạng nơ ron vốn tồn tại nhiều điểm cực trị địa phương. Nét đặc trưng cơ bản nhất của SVM là việc phân lớp được thực hiện gián tiếp trong không gian đặc trưng với số chiều cao hơn thông qua một hàm nhân. Do đó, hiệu quả phân lớp của SVM phụ thuộc vào hai yếu tố: giải bài toán QP và lựa chọn hàm nhân. Việc giải bài toán QP luôn luôn đạt được giải pháp tối ưu nên mọi cố gắng còn lại trong việc nghiên cứu lý thuyết SVM tập trung vào việc lựa chọn hàm nhân. Lựa chọn hàm nhân và các tham số của nó như thế nào để SVM phân lớp tốt nhất vẫn là một bài toán mở.

Tốc độ phân lớp của SVM bị đánh giá là chậm so với các phương pháp phân lớp khác, tùy thuộc vào số lượng véc tơ tựa thu được sau khi huấn luyện. Vì vậy, có nhiều công trình tập trung nghiên cứu để giảm tối đa số lượng véc tơ tựa nhằm tăng tốc độ phân lớp SVM, một số công trình tiêu biểu có thể tham khảo ở [20,84,86].

Thông qua việc nghiên cứu lý thuyết SVM, luận án đã nghiên cứu và ứng dụng một số chiến lược phân lớp SVM cho bài toán nhận dạng chữ viết tay rời rạc trên các tập dữ liệu USPS và MNIST. Các kết quả so sánh cho thấy SVM đạt độ chính xác phân lớp tương đối cao, tuy nhiên tốc độ phân lớp lại quá chậm so với các phương pháp phân lớp khác. Vì vậy trong chương tiếp theo, luận án sẽ tiếp tục nghiên cứu cải thiện tốc độ phân lớp của SVM để áp dụng vào bài toán nhận dạng chữ Việt viết tay rời rạc. Một số kết quả nghiên cứu của luận án có liên quan đến chương này đã được tác giả công bốở [1,2,3].

CHƯƠNG 3: ÁP DNG MÁY VÉC TƠ TA VÀO BÀI TOÁN NHN DNG CH VIT VIT TAY RI RC

Chương này trình bày một số kết quả nghiên cứu ứng dụng SVM vào bài toán nhận dạng chữ viết tay rời rạc. Phần một đề xuất một phương pháp trích chọn đặc trưng theo phép biến đổi wavelet Haar và chứng minh tính bất biến của đặc trưng, phần tiếp theo đề xuất một mô hình hiệu quả cho việc nhận dạng chữ Việt viết tay rời rạc, đề xuất cách thu gọn số chiều của tập đặc trưng đầu vào và thu gọn số véc tơ tựa của các máy phân lớp SVM để cải tiến tốc độ nhận dạng.

Một phần của tài liệu đề tài nghiên cứu khoa học toán ứng dụng (Trang 58 - 65)

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

(100 trang)