Tài liệu Đề tài Nhận dạng số viết tay: Trường đại học Khoa học tự nhiên
Khoa Toán – Tin học
Môn Xử lý đa chiều
Giảng viên: Thạc sĩ Phạm Thế Bảo
Đề tài: Nhận dạng chữ số viết tay bằng mạng nơ ron
Nhóm:
Dương Thanh An 0511053
Phan Bình Minh 0511156
Đoàn Nguyên Ngân 0511169
Phạm Thị Kim Phượng 0511190
Đề xuất mô hình mạng nơron cho bài toán phân loại mẫu
Vấn đề nhận dạng chữ cái thuộc nhóm các bài toán phân loại mẫu. Nhiệm vụ của
bài toán này là thiết lập cách phân loại cho các mẫu đầu vào (thường được cho dưới dạng
một vector các đặc trưng) vào một trong các lớp cho trước. Ở đây ,xin đưa ra một mô
hình mạng nơron có khả năng giải quyết các bài toán phân loại mẫu nói chung và bài toán
nhận dạng chữ số viết tay nói riêng.
Mô hình mạng nơron sử dụng ở đây là mạng lan truyền thẳng (MultiLayer Perceptron) với hai tầng gồm một tầng ẩn và một tầng đầu ra. Số nơron đầu vào bằng số
chiều của vector đặc trưng cho mẫu, số nơron tầng ẩn có thể thay đổi linh hoạt trong quá
trình luyện mạng, và số nơron tầng ...
4 trang |
Chia sẻ: hunglv | Lượt xem: 1655 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Đề tài Nhận dạng số viết tay, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Trường đại học Khoa học tự nhiên
Khoa Toán – Tin học
Môn Xử lý đa chiều
Giảng viên: Thạc sĩ Phạm Thế Bảo
Đề tài: Nhận dạng chữ số viết tay bằng mạng nơ ron
Nhóm:
Dương Thanh An 0511053
Phan Bình Minh 0511156
Đoàn Nguyên Ngân 0511169
Phạm Thị Kim Phượng 0511190
Đề xuất mô hình mạng nơron cho bài toán phân loại mẫu
Vấn đề nhận dạng chữ cái thuộc nhóm các bài toán phân loại mẫu. Nhiệm vụ của
bài toán này là thiết lập cách phân loại cho các mẫu đầu vào (thường được cho dưới dạng
một vector các đặc trưng) vào một trong các lớp cho trước. Ở đây ,xin đưa ra một mô
hình mạng nơron có khả năng giải quyết các bài toán phân loại mẫu nói chung và bài toán
nhận dạng chữ số viết tay nói riêng.
Mô hình mạng nơron sử dụng ở đây là mạng lan truyền thẳng (MultiLayer Perceptron) với hai tầng gồm một tầng ẩn và một tầng đầu ra. Số nơron đầu vào bằng số
chiều của vector đặc trưng cho mẫu, số nơron tầng ẩn có thể thay đổi linh hoạt trong quá
trình luyện mạng, và số nơron tầng ra bằng số lớp cần phân loại.
Các tham số của mạng được chọn như sau:
♦ Các nơron đều sử dụng hàm truyền sigmoid:
♦ Các trọng số được khởi tạo một cách ngẫu nhiên nhận các giá trị nhỏ
♦ Thuật toán huấn luyện mạng là thuật toán lan truyền ngược
II Chuẩn bị và Thực hiện:
- Chuẩn bị :
Nhận dạng chữ số viết tay từ 0 đến 9 ,file số viết tay có đuôi .bmp, trắng đen, có kích thước 28x28
Xây dựng mạng nơ ron gồm có một tầng ẩn và một tầng xuất, tầng ẩn gồm có 28x28=784 nơ ron ứng với số pixel trong ảnh được quét từ trên xuống dưới, tầng xuất gồm có 10 nơ ron ứng với mười đầu ra từ 0 tới 9
Nơ ron thứ i ở tầng ẩn nhận các đầu vào lần lượt ở vị trí thứ (i-1), (i) và (i+1)
Thực hiện:
cho mạng nơ ron học bằng thuật toán lan truyền ngược ( file bmp_train.m) , huấn luyện mạng nơ ron theo sơ đồ sau:
Trong đó:
• Data: là tập dữ liệu ban đầu
• Training Set: là tập dữ liệu huấn luyện
• Test Set: là tập dữ liệu kiểm tra
• ANN: là mạng nơron cần huấn luyện
• Model: là mô hình tạo ra sau khi huấn luyện mạng với tập dữ liệu
huấn luyện
• Evaluator: là phần đánh giá chất lượng của mô hình, thường lấy tỉ lệ
phân loại đúng trên tập kiểm tra làm tiêu chí đánh giá.
Các mẫu được chia thành hai tập là tập huấn luyện (training set) và tập kiểm tra
(test set). Khởi đầu với số lượng nút ẩn nhỏ, quá trình huấn luyện được tiến hành như
sau: Huấn luyện mạng với tập dữ liệu huấn luyện, kiểm tra mô hình thu được trên tập dữ
liệu kiểm tra. Chừng nào sai số trên tập kiểm tra còn giảm xuống thì tiếp tục tăng số nút
ẩn, và huấn luyện lại trên tập dữ liệu huấn luyện. Khi nào sai số trên tập kiểm tra không
giảm nữa (có thể tăng lên) thì dừng lại.
-Giao diện của chương trình sau khi cài đặt:
Trong đó:
-nút load anh: load ảnh số viết tay cần nhận dạng
-nút nhan dang: thực hiện quá trình nhận dạng ảnh dựa vào file recognizeDitgits.m
-kết quả nhận diện sẽ được xuất ra tương ứng
Khuyết điểm:
Chương trình chưa học được nhiều số còn nhận sai