Tải bản đầy đủ (.pdf) (38 trang)

báo cáo đề tài tìm hiểu về mạng nơ tron

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.79 MB, 38 trang )

LOGO
TRƯỜNG ĐH CÔNG NGHỆ THÔNG TIN
Đặt Vấn Đề
1
Tổng quan về mạng nơ tron
2
Nhận dạng chữ viết tay
3
Giới thiệu chung
“ Làm thế nào máy tính có thể
nhận dạng chữ viết tay của một
người ?”
Dùng mạng nơ tron
Bài toán thuộc dạng phân lớp các mẫu : đưa các
mẫu đầu vào các lớp cho trước.
Giới thiệu chung
 Xây dựng cấu trúc mạng
 Phương pháp huấn luyện
 Kết quả chấp nhận được.
 Ta có thể bổ sung các lớp mà không làm ảnh hưởng đến cấu trúc mạng
 Thường được dùng cho các bài toán phân lớp

Vấn đề
Giới thiệu chung
Dựa trên nguồn dữ liệu đầu vào, chúng ta chia bài
toán thành hai dạng cơ bản :
Nhận dạng trực tiếp (Online)
Nhận dạng gián tiếp (Offline)
dựa trên nguồn dữ liệu đầu vào, chúng ta chia bài toán thành hai dạng cơ bản : nhận dạng trực tiếp (Online) và nhận dạng gián tiếp (Offline)
Giới thiệu chung
 Chọn ra những đặc điểm cơ bản, đặc trưng riêng của đối


tượng để nhận dạng.Tùy bài toán mà ta có cách chọn đặc
trưng riêng.

 Các đặc điểm đặc trưng trên sẽ là vector đầu vào cho
mạng nơ tron.

 Có ảnh hưởng đến tốc độ cũng như kết quả nhận dạng
của mạng nơ tron.
dựa trên nguồn dữ liệu đầu vào, chúng ta chia bài toán thành hai dạng cơ bản : nhận dạng trực tiếp (Online) và nhận dạng gián tiếp (Offline)
Giới thiệu
1
Nhận dạng Offline
2
Nhận dạng Online
3
NHẬN DẠNG CHỮ VIẾT OFFLINE
Là mô hình nhận dạng chữ viết với dữ liệu đầu
vào ở dạng hình ảnh của các ký tự
Hệ thống sẽ quét và nhận dạng tĩnh dựa trên
các hình ảnh của các ký tự
Thông thường, kết quả nhận được từ mô hình
này chính xác hơn 90%
NHẬN DẠNG CHỮ VIẾT OFFLINE
 Gồm có 3 lớp: một lớp đầu vào , một lớp ẩn và một lớp xuất ra.
 Lớp đầu vào được cấu thành từ 150 tế bào nơ tron tiếp nhận dữ liệu điểm
ảnh nhị phân từ một điểm ảnh biểu tượng ma trận 10x15 .
 Các lớp ẩn được cấu tạo từ 250 tế bào nơ tron có số lượng được quyết
định trên cơ sở kết quả tối ưu trên một cơ sở thử nghiệm và báo lỗi.
 Lớp xuất ra gồm có 16 tế bào nơ tron tương ứng với 16-bit của mã Unicode.
Mô hình mạng nơ tron xây dựng cho bài toán

Hàm truyền :
Trong Demo này, mạng được sử dụng là mạng MLP
NHẬN DẠNG CHỮ VIẾT OFFLINE
Đặc trưng nhận dạng :
thông tin chiều ngang,
chiều dọc, số lượng các
lỗ rỗng bên trong, xác
định số nét

NHẬN DẠNG CHỮ VIẾT OFFLINE
Trước khi đưa dữ liệu cho mạng huấn luyện hoặc nhận dạng, ta cần phải
xử lý những dữ liệu đầu vào này. Giai đoạn này được gọi là giai đoạn tiền
xử lý dữ liệu đầu vào.
Gồm các bước :
 Thu nhận ảnh ký tự : ảnh văn bản, tài liệu có thể được thu nhận
bằng máy quét scanner, webcam, hoặc các thiết bị thu nhận ảnh
thông dụng khác.
 Phân tích ảnh để lấy ký tự : gồm hai việc : tách dòng ký tự khỏi
ảnh và tách từ riêng biệt ra khỏi dòng.
 Ánh xạ ký tự thành thành ma trận. Ma trận này sẽ là dữ liệu đầu
vào cho mạng. Kích thước của ma trận tương ứng với số nơ tron
đầu vào.
NHẬN DẠNG CHỮ VIẾT OFFLINE
Tách dòng ký tự
Tách từng ký tự ra khỏi dòng
Ánh xạ ký tự thành ma trận
NHẬN DẠNG CHỮ VIẾT OFFLINE
1. Bắt đầu từ pixel đầu tiên x tại vị trí (0,0) quét chiều rộng của hình
ảnh với y tăng dần.
a. Nếu một điểm ảnh màu đen được phát hiện ,y là điểm đầu của

dòng đầu tiên. Nếu không, ta tiếp tục quét.
b. Nếu không có điểm ảnh màu đen được tìm thấy, tăng y và reset lại
x để quét dòng tiếp theo chiều ngang.
2. Bắt đầu từ điễm đầu của dòng đầu tiên và x đầu tiên(0,line_top), ta quét
theo chiều rộng của hình.
a. Nếu không tìm được điểm ảnh nào thì y-1 là đáy là dòng, tăng số
dòng lên 1.
b. Nếu một điểm ảnh màu đen được phát hiện tăng và thiết lập lại y
x để quét dòng tiếp theo.
3. Bắt đầu từ dưới đáy của dòng cuối cùng được tìm thấy, ta lặp lại các
bước trên để phát hiện dòng tiếp theo, cho đến hết hình thì dừng.

A- Tách dòng ký tự
NHẬN DẠNG CHỮ VIẾT OFFLINE
B- Tách từng ký tự
NHẬN DẠNG CHỮ VIẾT OFFLINE
1. Bắt đầu từ y dòng đầu tiên, quét hình với với y không đổi.
a) Nếu tìm thấy điểm ảnh, y là đỉnh của chữ đầu.
b) Nếu không tiếp tục quét.
2. Quét hết dòng với x không đổi.
a) Nếu tìm thấy điềm ảnh thì x là phía trái của chữ.Nếu không, tiếp tục quét.
b) Hết vẫn không thấy thì tăng x and reset y để quét dòng tiếp theo theo
chiều dọc.
3. Bắt đầu từ bên trái của ký tự được tìm thấy và hàng đầu của dòng hiện tại -
pixel(character_left, line_top) - ta quét với chiều rộng của hình ảnh trên cùng
với x.
a) Nếu không có các ký tự màu đen được tìm thấy thì x-1 là bên phải của
ký tự.
b) Ngược lại, ta tăng x và reset y
4. Bắt đầu ở dưới cùng của dòng hiện tại và trái của kí tự, pixel(character_left,

line_bottom), quét lên phía bên phải của hình ảnh trên cùng với y.
a) Nếu tìm thấy 1 điểm ảnh y là đáy của từ
b) Nếu không tăng y và reset x
NHẬN DẠNG CHỮ VIẾT OFFLINE
C- Ánh xạ ký tự thành ma trận
 Đối với chiều rộng (khởi tạo 20 điểm)
 Chuyển Điểm đầu (0,y) và cuối (width,y) thành điểm đầu (0,y) và cuối
(20,y) của ma trận
 Điểm giửa (width/2,y) -> điễm thứ 10
th
của ma trận
 Đối với chiều cao ( khởi tạo 30 điểm)
 Điểm đầu ( x,0) và cuối (x,height) thành điểm đầu(x,0) và cuối (x,30) của
ma trận
 Điểm giửa (x,height/2) -> điểm 15
th

 Có thể chia nhỏ hơn cho phù hợp
 Giảm ma trận thành 10x15 cũng như 2 phía dài và rộng của kí tự

NHẬN DẠNG CHỮ VIẾT OFFLINE
Một số vấn đề cần được giải quyết khi huấn luyện là:
 Sự lộn xộn không gian dữ liệu đầu vào
 Độ phức tạp cửa các mô hình mà chúng ta đang huấn luyện: do việc chồng
chéo lên nhau của các đặc trưng nhận dạng và do kích thước dữ liệu
quá cao.
 Các thông số :
Learning_rate (ảnh hưởng đến tốc độ học của mạng)
Độ chênh lệch Xích- ma: dùng trong hàm truyền
Ngưỡng.

Số chu kỳ : số vòng lặp

Thuật toán huấn luyện được sử dụng ở đây là Thuật toán lan truyền ngược
NHẬN DẠNG CHỮ VIẾT OFFLINE
DEMO
NHẬN DẠNG CHỮ VIẾT OFFLINE
A- Kết quả thử nghiệm với số chu kỳ khác nhau
Font Type

300

600

800

№ of wrong
characters

% Error

№ of wrong
characters

% Error

№ of wrong
characters

% Error


Latin Arial

4

4.44

3

3.33

1

1.11

Latin Tahoma

1

1.11

0

0

0

0

Latin Times Roman


0

0

0

0

1

1.11

Số ký tự học=90, Learning_rate =150, độ chênh lệch xích-ma=0.014

NHẬN DẠNG CHỮ VIẾT OFFLINE
B- Kết quả thử nghiệm với số ký tự khác nhau
Số chu kỳ =100, Learning_rate =150, độ chênh lệch xích-ma=0.014

Font Type

20

50

90

№ of wrong
characters

% Error


№ of wrong
characters

% Error

№ of wrong
characters

% Error

Latin Arial

0

0

6

12

11

12.22

Latin Tahoma

0

0


3

6

8

8.89

Latin Times Roman

0

0

2

4

9

10

NHẬN DẠNG CHỮ VIẾT OFFLINE
 Số vòng lặp tổng quát tỉ lệ thuận hiệu suất của mạng. Nhưng đến một
mức nào đó nó sẽ gây ra hiện tượng học vẹt (over learning), sẽ bỏ qua
trạng thái tối ưu.

 Kích thước đầu vào cũng là một nhân tố ảnh hưởng trực tiếp đến hiệu
suất của mạng. Thực tế số đầu vào càng nhiều mạng yêu cầu được

huấn luyện nhiều hơn để có thể nhận bắt lỗi tốt.

 Sự thay đổi tham số learning_rate cũng ảnh hưởng hiệu suất của mạng
đối với số vòng lặp xác định. Giá trị tham số này càng nhỏ thì mạng
hiệu chỉnh trọng số càng chậm. Nhưng muốn đạt đến trạng thái tối ưu
thì ta phải tăng số vòng lặp nhiều hơn.

Giới thiệu
1
Nhận dạng Offline
2
Nhận dạng Online
3
NHẬN DẠNG CHỮ VIẾT ONLINE
 Là mô hình nhận dạng chữ viết với dữ liệu đầu
vào là chữ viết do người sử dụng đang trực tiếp
thực hiện.
 Hệ thống đòi hỏi tốc độ xử lý kết quả nhanh để
đáp ứng với tốc độ viết của người dùng.
 Thông thường, kết quả nhận được từ mô hình
này chính xác hơn 70%
NHẬN DẠNG CHỮ VIẾT ONLINE
Trong Demo này, mạng được sử dụng là mạng Kohonen
 Mạng Kohonen được thiết kế chủ yếu cho việc học
không có giám sát.
 Mạng nơ tron Kohonen bao gồm một lớp dữ liệu đầu
vào và một lớp dữ liệu đầu ra của các nơ tron và nó
không chứa lớp ẩn.

NHẬN DẠNG CHỮ VIẾT ONLINE

Đặc trưng nhận dạng :
thông tin thứ tự nét chữ
được viết, thời gian,
không gian tọa độ,

×