CHƯƠNG 3: CÀI ĐẶT CHƯƠNG TRÌNH THỬ NGHIỆM
3.4. Huấn luyện mô hình và kết quả thực nghiệm với mô hình RBM
Hình 3 Trong mô hình hu
luyện, với các lớp có các thông s Lớp đầu vào (Visible Units): V đại diện cho một điểm
255).
Các lớp ẩn (Hidden Units): T với các lớp tương ứng v
ấn luyện mô hình và kết quả thực nghiệm với mô h ấn luyện
ấu trúc mô hình
Hình 3- 2: Mô hình huấn luyện mạng (RBM)
Trong mô hình huấn luyện học viên sử dụng ba lớp RBM đ p có các thông số như sau:
u vào (Visible Units): Với 784 nút đầu vào, mỗi m m ảnh, với giá trị là mức xám của điểm
n (Hidden Units): Tại các lớp này học viên sử ng với 500, 500, 2000 nút.
ết quả thực nghiệm với mô hình RBM
p RBM để huấn
i một nút đầu vào m ảnh đó (0
dụng 3 lớp ẩn
Lớp đầu ra (Visible Units): Sau khi quá trình huấn luyện và chỉnh sửa trọng số thì lớp đầu ra là 10 nút, mỗi nút tương ứng với giá trị của các chữ cái từ (A, B, C, D, H, K, L, M, N, P).
3.4.1.2. Phương pháp huấn luyện và quy trình nhận dạng
Về bản chất, nhiệm vụ của mô hình này chính là nhiệm vụ phân loại, với đầu vào là ảnh của một ký tự bất kỳ (được đưa vào dưới dạng ma trận, cụ thể ảnh đầu vào ở đây có dạng 28 x 28 pixel), mạng cần tính toán để xếp ảnh này vào một nhóm ký tự nào đó.
Những lưu ý khi huấn luyện mạng là:
Để tránh hiện tượng overfiting (hiện tượng mà khả năng học của mạng rất tốt nhưng khả năng tổng quát hóa của mạng lại kém, tức là mạng nhận dạng tốt những mẫu đã được huấn luyện nhưng lại tỏ ra kém hiệu quả với những mẫu chưa được huấn luyện). Việc chọn tập mẫu huấn luyện và tập mẫu thử phải đảm bảo: (1) chúng có đầy đủ mẫu của tất cả các kí tự với số lượng không chênh lệch nhau nhiều, (2) tập mẫu huấn luyện và tập mẫu thử nghiệm không được trùng nhau, chỉ nên giao nhau một phần và số mẫu trong tập thử nghiệm nên bằng khoảng 2/3 số mẫu trong tập huấn luyện. Cách chọn mẫu học và thử nghiệm này được gọi là Cross-Validation.
Số lần huấn luyện mạng cũng cần được chú ý: nếu số lần huấn luyện mạng quá lớn thì mạng sẽ rất “thuộc bài” tức là khả năng học của nó rất cao tuy niên nó lại nhớ một cách quá “máy móc” dẫn đến khả năng “nhạy bén” để tổng quát hóa nhằm phân loại những mẫu chưa được học lại kém hiệu quả.
Quá trình nhận dạng được thực hiện qua các bước như sau:
Ảnh của kí tự (đầu vào) được đưa qua mạng ở lớp mạng đầu tiên.
Mạng này sẽ thực hiện việc phân loại (lan truyền xuôi tín hiệu đầu
vào lần lượt qua các lớp mạng) để xác định xem đầu vào thuộc nhóm kí tự nào.
Nếu nhóm này chỉ gồm một kí tự thì kết thúc việc nhận dạng và đưa kết quả ra đầu ra.
Tương tự, nếu nhận dạng với nhiều ảnh, các ảnh đầu vào sẽ được đưa vào theo dạng ma trận các điểm ảnh, việc phân loại ảnh là việc tính toán ma trận trên các lớp mạng, sau đó đưa ra kết quả với các lớp tương ứng.
3.4.2. Giao diện chính của chương trình
Chương trình được xây dựng với mục đích nhận dạng ký tự viết tay.
Bao gồm 2 chức năng chính:
Nhận dạng từng ký tự đơn lẻ nhằm đánh giá tính chính xác của mô hình nhận dạng
Nhận dạng toàn bộ các ảnh trong một thư mục, nhằm đánh giá kết quả của mô hình nhận dạng.
Hình 3- 3: Giao diện chính của chương trình nhận dạng chữ viết tay
Hình 3- 4: Chương trình khi nhận dạng 1 ảnh bất kỳ
Hình 3- 5: Chương trình khi nhận dạng toàn bộ ảnh trong một thư mục
Hình 3- 6: Nhận dạng bằng mô hình RBM có kết quả sai chữ với M 3.4.3. Kết quả thực nghiệm
Với việc sử dụng môi trường thực nghiệm và bộ dữ liệu thực nghiệm học viên rút ra được một số kết luận như sau:
Bảng 3- 3: Kết quả thực nghiệm sử dụng mô hình RBM Các thông số Bộ dữ liệu Tuyển Sinh
Số mẫu học 60.000
Số mẫu nhận dạng 10.000
Thời gian học <30 giờ
Thời gian nhận dạng < 5 phút
Tỉ lệ nhận dạng đúng 99.69 %
Bảng 3- 4: Chi tiết kết quả thực nghiệm sử dụng mô hình RBM Chữ cái Số mẫu Số mẫu nhận dạng đúng Độ chính xác (%)
A 1000 1000 100,00
B 1000 999 99,90
C 1000 997 99,70
D 1000 997 99,70
H 1000 1000 100,00
K 1000 997 99,70
L 1000 1000 100,00
M 1000 990 99,00
N 1000 996 99,60
P 1000 993 99,30