Cấu trúc mô hình Neural Network dùng để huấn luyện 3.. Vì dung lượng ảnh quá lớn nên khi load lên bị tràn bộ nhớ với máy có ram 2G trở xuống nên khi thực hiện nhóm em đã sử dụng một má
Trang 1BÁO CÁO ĐỒ ÁN CUỐI KỲ NHẬN DẠNG CHỮ VIẾT TAY BẰNG MÔ HÌNH NEURAL NETWORK
Môn học: Trí Tuệ Nhân Tạo
Trang 2CẤU TRÚC BÁO CÁO
I Phát biểu bài toán
II Xây dựng mô hình Neural
Network
III Kết quả thực nghiệm
IV Nhận xét – Đánh giá
Trang 3PHÁT BIỂU BÀI TOÁN
Sử dụng mô hình máy học neural network với
giải thuật huấn luyện Back propagation và hàm
kích hoạt logistic sigmoid
x
e
x
g
1
1 )
(
để nhận dạng chữ viết tay ( giới hạn trong
chữ số từ 0 đến 9) trên nền matlab
Trang 4XÂY DỰNG MÔ HÌNH
NEURAL NETWORK
1 Dữ liệu huấn luyện
2 Cấu trúc mô hình Neural Network dùng để huấn
luyện
3 Giải thuật cho quá trình học
Trang 5DỮ LIỆU HUẤN LUYỆN
Dữ liệu huấn luyện theo dữ liệu chuẩn của MINST
gồm các phần sau:
Trang 6DỮ LIỆU HUẤN LUYỆN
Bộ ảnh huấn luyện gồm 60.000 ảnh cở 28x28
Vì dung lượng ảnh quá lớn nên khi load lên bị tràn
bộ nhớ ( với máy có ram 2G trở xuống) nên khi thực
hiện nhóm em đã sử dụng một máy có bộ nhớ RAM lớn load bộ dữ liệu
train-images-idx3-ubyte.gz
bằng hàm loadMNISTImages(‘train-images-idx3-ubyte’)
[1]
Trang 7DỮ LIỆU HUẤN LUYỆN
Sau đó chia bộ dữ liệu thành 6 bộ mỗi bộ 10.000 ảnh là: data1.mat, data2.mat, data3.mat, data4.mat,
data5.mat, data6.mat, để phù hợp cho các máy có bộ nhớ yếu và chương trình được xây dựng đặc thù để huấn
luyện trên bộ data đó [2]
Trang 8CẤU TRÚC MÔ HÌNH NEURAL NETWORK DÙNG
ĐỂ HUẤN LUYỆN
Trang 9GIẢI THUẬT CHO QUÁ TRÌNH HỌC
Bước 1: Load tập nhãn ( giá trị 0-9)
Bước 2: Chuyển tập nhãn sang giá trị tương ứng với output của mạng
Trang 10GIẢI THUẬT CHO QUÁ TRÌNH HỌC
Bước 3: Phát sinh tốc độ học trong (0,1) và bộ trọng số Whi, Woh với
giá trị nhỏ
Đây là kết quả do thực nghiệm vì để tránh 2 trường hợp lỗi nhưng vẫn
không cập nhật trọng số của mạng:
•Khi hàm sigmoid tiến quá gần, hầu như bằng 1.
•Khi tất cả trọng số đều bằng 0.
7000
) 1 , 1 , 99 (
randi
Trang 11GIẢI THUẬT CHO QUÁ TRÌNH HỌC
Bước 4: Với mỗi mẫu huấn luyện,
ta tính các giá trị theo công thức đã cho:
Trang 12GIẢI THUẬT CHO QUÁ TRÌNH HỌC
Bước 5: Lặp bước 4 đến khi tổng lỗi hoặc sau k
lần ( trong bài sử dụng lặp sau k lần ) Sau đó được đồng bộ trọng số Whi và Woh để nhận dạng
Trang 13KẾT QUẢ THỰC NGHIỆM
Sau khi train mạng với bộ dữ liệu 60.000 ảnh với thuật toán học Back-propagation, hàm kích hoạt logistic sigmoid, tốc độ học = 0,2 ; lặp 10 lần, sử dụng ngôn ngữ matlab với thời gian 6 giờ 40 phút Sau đó sử dụng ma trận Whi, Woh để dự đoán trên tập test ta có:
Trang 14KẾT QUẢ THỰC NGHIỆM
Trang 15KẾT QUẢ THỰC NGHIỆM
Ta thấy:
Recall và precision đều cao cho thấy mô hình học khá tốt
Accuracy và precison đều cao cho thấy mô hình hội tụ cao về giá trị đúng
Trang 16NHẬN XÉT – ĐÁNH GIÁ
Ưu điểm:
Dễ cài đặt, và khả năng tổng quát cao, thuật toán đơn giản nhưng hiệu quả
Tỉ lệ nhận dạng khá chính xác
Nhược điểm:
Tính toán chậm
Không có quy tắc tổng quát để xác định số nút lớp ẩn
Trang 17CHÚ THÍCH – LINK DOWNLOAD DATA
[1] Bộ dữ diệu train-images-idx3-ubyte.gz do đại học
Stanford xây dựng chạy trên nền matlab, có thể
download tại
http://ufldl.stanford.edu/wiki/index.php/Using_the_MNI ST_Dataset
[2] Link download data
http
://www.mediafire.com/download/d4595k07 er5cu4c/data.rar
Trang 18Cảm ơn thầy và các bạn đã theo dõi.