78
LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH Đề tài: “Tìm hiểu mạng Neural Hamming và ứng dụng trong bài toán nhận dạng các chữ cái Tiếng Việt” Sinh viên: Phùng Văn Kiệm Lớp : Cao học k10b Giáo viên hướng dẫn: TS. Lê Quang Minh

LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Embed Size (px)

Citation preview

Page 1: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH

Đề tài: “Tìm hiểu mạng Neural Hamming và ứng dụng trong bài toán nhận dạng các chữ cái Tiếng Việt”

Sinh viên: Phùng Văn KiệmLớp : Cao học k10bGiáo viên hướng dẫn: TS. Lê Quang Minh

Page 2: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

PHẦN MỞ ĐẦU

Từ lâu các nhà khoa học đã nhận thấy những ưu điểm của bộ óc con

người và tìm cách bắt chước để thực hiện trên những máy tính, tạo cho nó có

khả năng học tập, nhận dạng và phân loại. Vì vậy các nhà khoa học đã

nghiên cứu và sáng tạo ra mạng Neural nhân tạo. Nó thực sự được chú ý và

nhanh chóng trở thành một hướng nghiên cứu đầy triển vọng đặc biệt là lĩnh

vực nhận dạng. Và bài toán nhận dạng ký tự là một bài toán con trong lớp

các bài toán nhận dạng, xử lý ảnh.

Hiện nay trên thế giới, các sản phẩm nhận dạng ký tự đã được triển

khai tương đối rộng rãi. Tuy nhiên đây là các sản phẩm nhận dạng ký tự

tiếng Anh, do đó đối với nhận dạng ký tự tiếng Việt thì chỉ có người Việt

Nam mới có thể phát triển được. Ở nước ta trong một vài năm gần đây cũng

đã có một số sản phẩm nhận dạng tiếng việt được triển khai trên thị trường.

Nhưng các sản phẩm này được bán trên thị trường dưới dạng đóng kín nên

việc để phát triển thành phần mềm tự động cập nhật ảnh là điều không thể.

Vì vậy nên tôi đã chọn đề tài “Tìm hiểu mạng Neural Hamming và ứng

dụng trong bài toán nhận dạng các chữ cái Tiếng Việt”.

Hệ thống chữ cái Tiếng Việt là được xây dựng dựa trên chữ cái Latinh

có thêm chữ ghép và dấu phụ. Do đó việc nhận dạng sẽ gặp khó khăn hơn so

với chữ cái Latinh thông thường và cần phải có thuật toán xử lý đem lại độ

chính xác cao.

Trong khuôn khổ, thời lượng của luận văn, tôi đưa ra một chương

trình mô phỏng mạng Neural nhận dạng 29 chữ cái Tiếng Việt từ A đến Y và

10 chữ số từ 0 đến 9.

Luận văn được sắp xếp và chia thành 3 chương chính:.

Page 3: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

- Chương 1: Tổng quan về hiện trạng các bài toán nhận dạng và thiết lập

bài toán nghiên cứu;

- Chương 2: Tìm hiểu về mạng Neural và khoảng cách Hamming;

- Chương 3: Ứng dụng mạng neural Hamming trong bài toán nhận dạng

các chữ cái Tiếng Việt.

Nhân đây, tôi xin chân thành cảm ơn TS. Lê Quang Minh người trực tiếp

hướng dẫn, chỉ bảo nhiệt tình cho tôi hoàn thành luận văn này. Tôi xin chân

thành cám ơn các thầy cô trong Trường Đại học CNTT & TT Đại học Thái

Nguyên và toàn thể các bạn đã giúp đỡ tôi hoàn thành cuốn luận văn này.

Page 4: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

CHƯƠNG I: TỔNG QUAN VỀ HIỆN TRẠNG CÁC BÀI TOÁN

NHẬN DẠNG VÀ THIẾT LẬP BÀI TOÁN NGHIÊN CỨU

1.1 Tổng quan về bài toán nhận dạng.

Nhận dạng chữ là một lĩnh vực đã được quan tâm nghiên cứu và ứng

dụng từ nhiều năm nay theo hai hướng chính:

• Nhận dạng chữ in: phục vụ cho công việc tự động hóa đọc tài liệu, tăng

tốc độ và hiệu quả nhập thông tin vào máy tính trực tiếp từ các nguồn tài

liệu.

• Nhận dạng chữ viết tay: với những mức độ ràng buộc khác nhau về

cách viết ,kiểu chữ... phục vụ cho các ứng dụng đọc và xử lý chứng từ, hóa

đơn, phiếu ghi, bản thảo viết tay... Nhận dạng chữ viết tay được tách thành

hai hướng phát triển: nhận dạng chữ viết tay trực tuyến (on-line) và nhận

dạng chữ viết tay ngoại tuyến (off-line).

Đến thời điểm này, bài toán nhận dạng chữ in đã được giải quyết gần

như trọn vẹn (sản phẩm FineReader 11 của hãng ABBYY có thể nhận dạng

chữ in theo 20 ngôn ngữ khác nhau trong đó có cả Việt Nam, phần mềm

nhận dạng chữ Việt in VnDOCR 4.0 của Viện Công nghệ Thông tin Hà Nội

có thể nhận dạng được các tài liệu chứa hình ảnh, bảng và văn bản tiếng Việt

với độ chính xác trên 99%,...). Tuy nhiên trên thế giới cũng như ở Việt Nam,

bài toán nhận dạng chữ viết tay vẫn còn là vấn đề thách thức lớn đối với các

nhà nghiên cứu. Bài toàn này chưa thể giải quyết trọn vẹn vì nó phụ thuộc

quá nhiều vào người viết và sự biến đổi quá đa dạng trong cách viết và trạng

thái tinh thần của từng người viết. Đặc biệt đối với việc nghiên cứu nhận

Page 5: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

dạng chữ viết tay tiếng Việt lại càng gặp nhiều khó khăn hơn do bộ ký tự

tiếng Việt có thêm phần dấu, rất dễ nhầm lẫn với các nhiễu.

1.2. Cụ thể về bài toán nhận dạng chữ cái Tiếng Việt.

Hiện nay cũng có rất nhiều bài báo đề cập đến bài toán nhận dạng kí

tự quang học, nhằm cải tiến các phương pháp phân đoạn ảnh, nhận dạng.

Song vẫn chưa giải quyết một cách triệt để những vấn đề khó khăn của bài

toán thường gặp phải. Đặc biệt là đối với việc nhận dạng các kí tự tiếng

Việt, gặp rất nhiều khó khăn, do tính riêng biệt của tiếng Việt: Số kí tự

nhiều, các kí tự lại có dấu…Nên bài toán vẫn còn thu hút được sự quan tâm,

nghiên cứu nhằm giải quyết những vấn đề khó khăn của bài toán một cách

triệt để. Một số hệ nhận nhận dạng văn bản đã và đang được áp dụng rất

nhiều vào ứng dụng như FineReader của hãng AABBYY, OmmiPage của

hãng Scansoft được dùng để nhận dạng các văn bản tiếng Anh,… VNDOCR

của Viện công nghệ thông tin cho các văn bản tiếng Việt

Nhìn chung, các sản phẩm phần mềm nhận dạng văn bản Tiếng Việt

chữ in của nước ta đã thu được kết quả khả quan, đặc biệt phần mềm

VNDOCR đã được sử dụng rộng rãi trong các cơ quan nhà nước. Riêng

phần nhận dạng kí tự viết tay vẫn đang được nghiên cứu và phát triển nhằm

phục vụ cho các yêu cầu khác nhau như đọc và xử lý các biểu mẫu: hóa

đơn, phiếu điều tra ...

Khó khăn lớn nhất khi nghiên cứu bài toán nhận dạng chữ cái

tiếng Việt là sự biến thiên quá đa dạng trong cách viết của từng người.

Cùng một người viết nhưng đôi khi cũng có nhiều sự khác biệt trong

Page 6: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

cách viết tuỳ thuộc vào từng ngữ cảnh, kiểu viết của một người cũng có

thể thay đổi theo thời gian hoặc theo thói quen... Điều này gây ra nhiều

trở ngại trong việc nhận dạng cũng như lựa chọn mô hình nhận dạng.

1.3. Thiết lập bài toán.

Đề tài mà tôi thực hiện là: “Ứng dụng mạng Neural Hamming trong bài

toán nhận dạng các chữ cái Tiếng Việt”, công việc chính là “Xây dựng

chương trình nhận dạng các chữ cái Tiếng Việt” ý tưởng bài toán như sau:

Phân tích ảnh cho ký tự: Chia ảnh và tách ký tự theo từng vùng giới hạn;

Chuyển đổi kí tự sang ma trận điểm ảnh; Chuyển thành ma trận tuyến tính và đưa vào mạng neural; Đưa vào mạng neural tính giá trị đầu ra.Các bước giải quyết bài toán sử dụng mạng neural Hamming nhận dạng

chữ cái Tiếng Việt mô tả theo tiến trình chung như sau:

Ảnh đầu vào Tiền xử lý Quá trình biến đổi ảnh Nhận dạng Kết quả

Hình 1. Sơ đồ hệ thống nhận dạng

1.3.1. Ảnh đầu vào

Với đầu vào là các file ảnh *.bmp có kích cỡ ảnh là 150 x 150. Sau

khi đã nạp mẫu cần nhận dạng ta tiến ảnh các thao tác xử lý ảnh để tách ra

ký tự. Ta có thể xác định được ký tự dựa vào đường biên của ký tự. Trải qua

các bươc tiền xử lý ảnh: lọc mịn ảnh, nhị phân, chỉnh nghiêng, chuẩn kích

thước, lấp khoảng trống, lấy biên, ta thu được ảnh ký tự với biên của nó.

1.3.2. Tiền sử lý

Page 7: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Giai đoạn này góp phần làm tăng độ chính xác phân lớp của hệ thống

nhận dạng, tuy nhiên nó cũng làm cho tốc độ nhận dạng của hệ thống chậm

lại. Vì vậy, tùy thuộc vào chất lượng ảnh quét vào của từng văn bản cụ thể

để chọn một hoặc một vài chức năng trong khối này. Nếu cần ưu tiên tốc độ

xử lý và chất lượng của máy quét tốt thì có thể bỏ qua giai đoạn này. Khối

tiền xử lý bao gồm một số chức năng:

Nhị phân hóa ảnh, lọc nhiễu, chuẩn hóa kích thước ảnh, làm trơn biên

chữ, làm đầy chữ, làm mảnh chữ và xoay văn bản.

1.3.2.1. Nhị phân hóa ảnh

Nhị phân hóa ảnh là một kỹ thuật chuyển ảnh đa cấp xám sang

ảnh nhị phân. Trong bất kỳ bài toán phân tích hoặc nâng cao chất

lượng ảnh nào, nó cũng cần thiết để xác định các đối tượng quan

trọng. Nhị phân hóa ảnh phân chia ảnh thành 2 phần: phần nền và

phần chữ. Hầu hết các phương pháp nhị phân hóa ảnh hiện nay đều

lựa chọn một ngưỡng thích hợp theo cường độ sáng của ảnh và sau đó

chuyển tất cả các giá trị độ sáng lớn hơn ngưỡng đó thành một giá trị

độ sáng (ví dụ “trắng”) và tất cả các giá trị bé hơn ngưỡng thành một

giá trị độ sáng khác (“đen”).

Hình 1.2. Nhị phân hóa ảnh.

1.3.2.2. Lọc nhiễu

Page 8: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Nhiễu là một tập các điểm sáng thừa trên ảnh. Khử nhiễu là một vấn

đề thường gặp trong nhận dạng, nhiễu có nhiều loại (nhiễu đốm, nhiễu vệt,

nhiễu đứt nét...). Để khử các nhiễu đốm (các nhiễu với kích thước nhỏ), có

thể sử dụng các phương pháp lọc (lọc trung bình, lọc trung vị...)- Tuy nhiên,

với các nhiễu vệt (hoặc các nhiễu có kích thước lớn) thì các phương pháp lọc

tỏ ra kém hiệu quả, trong trường họp này sử dựng phương pháp khử các

vùng liên thông nhỏ tỏ ra có hiệu quả hơn.

Hình 1.3. Nhiễu đốm và nhiễu vệt.

1.3.2.3. Chuẩn hóa kích thước ảnh

Hình 1.4.Chuẩn hóa kích thước ảnh các ký tự “A” và “P”.

Page 9: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Việc chuẩn hóa kích thước ảnh dựa trên việc xác định trọng tâm ảnh,

sau đó xác định khoảng cách lớn nhất từ tâm ảnh đến các cạnh trên, dưới,

trái, phải của hình chữ nhật bao quanh ảnh. Thông qua khoảng cách lớn

nhất đó, có thể xác định được một tỷ lệ co, giãn của ảnh gốc so với kích

thước đã xác định, từ đó hiệu chỉnh kích thước ảnh theo tỷ lệ co, giãn này.

Như vậy, thuật toán chuẩn hóa kích thước ảnh luôn luôn đảm bảo được

tính cân bằng khi co giãn ảnh, ảnh sẽ không bị biến dạng hoặc bị lệch.

1.3.2.4 Làm trơn biên chữ

Đôi khi do chất lượng quét ảnh quá xấu, các đường biên của chữ

không còn giữ được dáng điệu trơn tru ban đầu mà hình thành các đường

răng cưa giả tạo. Trong các trường họp này, phải dùng các thuật toán làm

trơn biên để khắc phục [28].

(a) (b) Hình 1.5.(a) Ảnh gốc, (b) Ảnh sau khi được làm trơn biên.

1.3.2.5. Làm đầy chữ

Chức năng này được áp dụng với các ký tự bị đứt nét một cách ngẫu

nhiên. Ảnh đứt nét gây khó khăn cho việc tách chữ, dễ bị nhầm hai phần

liên thông của ký tự thành hai ký tự riêng biệt, tạo nên sai lầm trong quá

trình nhận dạng.

1.3.2.6. Làm mảnh chữ

Page 10: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Đây là một bước quan trọng nhằm phát hiện khung xương của ký tự

bằng cách loại bỏ dần các điểm biên ngoài của các nét. Tuy nhiên, quá

trình làm mảnh chữ rất nhạy cảm với việc khử nhiễu. Hiện nay có nhiều

phương pháp làm mảnh chữ, các thuật toán tìm xương có thể tham khảo ở

[28].

Hình 1.4 . Làm mảnh chữ

1.3.2.7. Điều chỉnh độ nghiêng của văn bản

Do trang tài liệu quét vào không cẩn thận hoặc do sự cố in ấn, các

hàng chữ bị lệch so với lề chuẩn một góc α, điều này gây khó khăn cho

công đoạn tách chữ, đôi khi không thể tách được. Trong những trường

hợp như vậy, phải tính lại tọa độ điểm ảnh của các chữ bị sai lệch. Có

nhiều kỹ thuật để điều chỉnh độ nghiêng, kỹ thuật phổ biến nhất dựa trên

cơ sở biểu đồ chiếu (projection profile) của ảnh tài liệu; một số kỹ thuật

dựa trên cơ sở các phép biến đổi Hough và Fourier, một số kỹ thuật hiệu

chỉnh độ nghiêng khác có thể tìm thấy trong [28].

Page 11: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Hình 1.7.Hiệu chỉnh độ nghiêng của văn bản.

Page 12: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Quá trình biến đổi ảnh

Một số phương pháp biến đổi và khai triển chuỗi thường được áp

dụng trong lĩnh vực nhận dạng chữ:

1.3.3.1. Biến đổi Fourier

Một trong những tính chất nổi bật nhất của phép biến đổi Fourier là

khả năng nhận dạng các ký tự có sự thay đổi về các tư thế khác nhau, các

phép biến đổi này đã được áp dụng để nhận dạng ký tự theo nhiều cách

khác nhau [29,30].

1.3.3.2. Biến đổi Wavelet

Phép biến đổi này là một dãy các kỹ thuật khai triển cho phép mô tả

đặc trưng của ảnh ở các mức độ khác nhau. Các công đoạn tách chữ thành

các ký tự hoặc từ được mô tả bằng các hệ so wavelet theo các mức độ

khác nhau đối với từng giải pháp. Sau đó các hệ so wavelet được chuyển

qua một máy phân lớp để phục vụ cho việc nhận dạng [31,32].

1.3.3.3. Phương pháp mô men

Theo phương pháp này, ảnh gốc sẽ được thay thế bằng một tập các

đặc trưng vừa đủ của để nhận dạng các đối tượng bất biến đối với các

phép thay đổi tỷ lệ, tịnh tiến hoặc quay [33]. Các mô men được xét như

các dãy khai triển đặc trưng vì ảnh gốc có thể xây dựng lại một cách đầy

đủ từ các hệ số mô men.

1.3.3.4. Khai triển Karhunent-Loeve

Page 13: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Việc khai triển này nhằm phân tích các véc tơ riêng để rút gọn số

chiều của tập đặc trưng bằng cách tạo ra các đặc trưng mới là tổ hợp tuyến

tính của các đặc trưng gốc. Đây chỉ là một phép biến đổi tối ưu trong một

số giới hạn nào đó của việc nén thông tin [34], Khai triển Karhunent-

Loeve được dùng trong một số bài toán nhận dạng mẫu như nhận dạng

mặt người, nó cũng được sử dụng trong hệ thống OCR của Viện Công

nghệ và Tiêu chuẩn Quốc gia Hoa Kỳ (NIST - National Institute of

Standards and Technology of the United States). Vì việc khai triển này

đòi hỏi phải sử dụng các thuật toán có khối lượng tính toán rất lớn nên

việc sử dựng các đặc trưng Karhunent-Loeve trong các bài toán nhận

dạng chữ không được phổ biến rộng rãi. Tuy nhiên, để tăng tốc độ tính

toán cho các máy phân lớp, các đặc trưng này trở nên thiết thực hơn cho

các hệ nhận dạng chữ trong những năm gần đây.

1.3.4. Nhận dạng

Có nhiều phương pháp nhận dạng mẫu khác nhau được áp dụng rộng

rãi trong các hệ thống nhận dạng chữ viết tay. Các phương pháp này có

thể được tích hợp trong các hướng tiếp cận sau: Đối sánh mẫu, thống kê,

cấu trúc, SVM và mạng nơ ron.

1.3.4.1. Đối sánh mẫu

Kỹ thuật nhận dạng chữ đơn giản nhất dựa trên cơ sở đối sánh các

nguyên mẫu (prototype) với nhau để nhận dạng ký tự hoặc từ. Nói chung,

toán tử đối sánh xác định mức độ giống nhau giữa hai vé tơ (nhóm các

điểm, hình dạng, độ cong...) trong một không gian đặc trưng. Các kỹ thuật

đối sánh có thể nghiên cứu theo ba hướng sau:

Page 14: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Đối sánh trực tiếp: Một ký tự đầu vào là ảnh đa cấp xám hoặc ảnh nhị

phân được so sánh trực tiếp với một tập mẫu chuẩn đã được lưu trữ. Việc

so sánh dựa theo một độ đo về sự tương đồng nào đó (chẳng hạn như độ

đo Euclide) để nhận dạng. Các kỹ thuật đối sánh này có thể đơn giản như

việc so sánh một - một hoặc phức tạp hơn như phân tích cây quyết định

[50,51]. Mặc dù phương pháp đối sánh trực tiếp đơn giản và có một cơ sở

toán học vững chắc nhưng kết quả nhận dạng của nó cũng rất nhạy cảm

với nhiễu.

Các mẫu biến dạng và Đổi sánh mềm: Một phương pháp đối sánh khác

là sử dụng các mẫu biến dạng, trong đó một phép biến dạng ảnh được

dùng để đối sánh một ảnh chưa biết với một cơ sở dữ liệu ảnh đã biết

[52]. Ý tưởng cơ bản của đối sánh mềm là đối sánh một cách tối ưu mẫu

chưa biết với tất cả các mẫu có thể mà các mẫu này có thể kéo giãn ra

hoặc co lại. Chỉ một không gian đặc trưng được thành lập, các véc tơ chưa

biết được đối sánh bằng cách sử dựng quy hoạch động và một hàm biến

dạng [53,54].

Đối sánh giảm nhẹ: Đây là một kỹ thuật đối sánh ảnh ở mức độ tượng

trưng, kỹ thuật này sử dựng hình dáng đặc trưng cơ bản của ảnh ký tự.

Thứ nhất, các vùng đối sánh đã được nhận biết. Sau đó, trên cơ sở một số

vùng đối sánh được đánh giá tốt, các phần tử của ảnh được so sánh với

các vùng đối sánh này. Công việc này đòi hỏi một kỹ thuật tìm kiếm trong

một không gian đa chiều để tìm cực đại toàn cục của một số hàm [55].

Các kỹ thuật đối sánh mẫu chỉ áp dựng tốt đối với nhận dạng chữ in, còn

đối với chữ viết tay thì các kỹ thuật này tỏ ra kém hiệu quả.

Page 15: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

1.3.4.2. Phương pháp tiếp cận cấu trúc

Cách tiếp cận của phương pháp này dựa vào việc mô tả đối tượng

nhờ một số khái niệm biểu diễn đối tượng cơ sở trong ngôn ngữ tự nhiên.

Để mô tả đối tượng người ta dùng một số dạng nguyên thuỷ như đoạn

thẳng, cung,... Mỗi đối tượng được mô tả như một sự kết họp của các

dạng nguyên thuỷ.

Các quy tắc kết họp các dạng nguyên thuỷ được xây dựng giống như

việc nghiên cứu văn phạm trong một ngôn ngữ, do đó quá trình quyết

định nhận dạng là quá trình phân tích cú pháp [57,58]. Phương pháp này

đặt vấn đề để giải quyết bài toán nhận dạng chữ tổng quát. Tuy vậy, cho

đến nay còn nhiều vấn đề liên quan đến hệ nhận dạng cú pháp chưa được

giải quyết độc lập và chưa xây dựng được các thuật toán phổ dụng. Hiện

nay, nhận dạng theo cấu trúc phổ biến là trích trọn các đặc trưng của mẫu

học, phân hoạch bảng ký tự dựa trên các đặc trưng này, sau đó ảnh cần

nhận dạng sẽ được trích chọn đặc trưng, sau đó so sánh trên bảng phân

hoạch để tìm ra ký tự có các đặc trưng phù hợp.

Đối với nhận dạng chữ viết tay rời rạc dựa theo cấu trúc xương và

đường biên, công việc này đòi hỏi phải xây dựng các đặc trưng của chữ,

đặc biệt là đặc trưng về các điểm uốn, điểm gấp khúc và đặc trưng của các

nét. Sau khi tiến hành công đoạn tiền xử lý, công việc tách các nét được

tiến hành thông qua các điểm chạc. Sau đó trích chọn đặc trưng cấu trúc

xương của chữ, mỗi nét đặc trưng bởi cặp chỉ số đầu và cuối tương ứng

với thứ tự của điểm chạc đầu và điểm chạc cuối. Cuối cùng là xây dựng

cây tìm kiếm, dựa vào đặc trưng về cấu trúc xương và cấu trúc biên để

phân tập mẫu học thành các lớp. Quá trình tìm kiếm để phân lớp được tiến

Page 16: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

hành qua hai bước: Xác định lớp tương ứng với mẫu vào và tìm kiếm

trong lớp đó mẫu nào gần giống với mẫu vào nhất [62,63]. Các phương

pháp cấu trúc áp dụng cho các bài toán nhận dạng chữ được phát triển

theo hai hướng sau:

1.3.4.2.1. Phương pháp ngữ pháp (Grammatical Methods)

Giữa thập niên 1960, các nhà nghiên cứu bắt đầu xét các luật của

ngôn ngữ học để phân tích tiếng nói và chữ viết. Sau đó, các luật đa dạng

của chính tả, từ vựng và ngôn ngữ học đã được áp dụng cho các chiến

lược nhận dạng. Các phương pháp ngữ pháp khởi tạo một số luật sinh để

hình thành các ký tự từ một tập các công thức ngữ pháp nguyên thủy. Các

luật sinh này có thể kết nối bất kỳ kiểu đặc trưng thống kê và đặc trưng

hình thái nào dưới một số cú pháp hoặc các luật ngữ nghĩa [56,57,58].

Giống như lý thuyết ngôn ngữ, các luật sinh cho phép mô tả các cấu trúc

câu có thể chấp nhận được và trích chọn thông tin theo ngữ cảnh về chữ

viết bằng cách sử dụng các kiểu ngữ pháp khác nhau [59]. Trong các

phương pháp này, việc huấn luyện được thực hiện bằng cách mô tả mỗi

ký tự bằng một văn phạm Gi. Còn trong pha nhận dạng thì chuỗi, cây

hoặc đồ thị của một đơn vị viết bất kỳ (ký tự, từ hoặc câu) được phân tích

để quyết định văn phạm của mẫu đó thuộc lớp nào. Các phương pháp ngữ

pháp hầu hết được sử dụng trong giai đoạn hậu xử lý để sửa các lỗi mà

khối nhận dạng đã thực hiện sai [60,61].

1.3.4.2. Phương pháp đồ thị (Graphical Methods)

Các đơn vị chữ viết được mô tả bởi các cây hoặc các đồ thị. Các

dạng nguyên thủy của ký tự (các nét) được lựa chọn bởi một hướng tiếp

cận cấu trúc. Đối với mỗi lớp, một đồ thị hoặc cây được thành lập trong

Page 17: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

giai đoạn huấn luyện để mô tả các nét, các ký tự hoặc các từ. Giai đoạn

nhận dạng gán một đồ thị chưa biết vào một trong các lớp bằng cách sử

dụng một độ đo để so sánh các đặc điểm giống nhau giữa các đồ thị.

Có rất nhiều hướng tiếp cận khác nhau sử dụng phương pháp đồ thị,

tiêu biểu là hướng tiếp cận đồ thị phân cấp được dùng trong việc nhận

dạng chữ viết tay Trung Quốc và Hàn Quốc [62,63].

1.3.4.3. Mô hình Markov ẩn (HMM - Hidden Markov Model)

HMM là một mô hình xác suất hữu hạn trạng thái theo kiểu phát sinh

tiến trình bằng cách định nghĩa xác suất liên kết trên các chuỗi quan sát.

Mỗi chuỗi quan sát được sinh ra bởi một chuỗi các phép chuyển trạng

thái, bắt đầu từ trạng thái khởi đầu cho đến khi thu được trạng thái kết

thúc. Tại mỗi trạng thái thì một phần tử của chuỗi quan sát được phát sinh

ngẫu nhiên trước khi chuyển sang trạng thái tiếp theo. Các trạng thái của

HMM được xem là ẩn bên trong mô hình vì tại mỗi thời điểm chỉ nhìn

thấy các kí hiệu quan sát còn các trạng thái cũng như sự chuyển đổi trạng

thái được vận hành ẩn bên trong mô hình [70].

HMM đã từng được áp dụng rộng rãi đối với các bài toán nhận dạng

chữ viết tay ở mức từ [71,72,73,74,75].

1.3.4.4. Máy véc tơ tựa (SVM)

Các kết quả chủ yếu về lĩnh vực này chỉ tập trung trên các tập dữ liệu

chữ số viết tay chuẩn như USPS và MNIST [5.3,5.1,87], bên cạnh đó

cũng có một số công trình nghiên cứu trên các hệ chữ cái tiếng La tinh,

Hy Lạp, Trung Quốc, Việt Nam... tuy nhiên các kết quả đạt được cũng

còn nhiều hạn chế [88,89,5.2,5.4].

Page 18: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

SVM được áp dụng rộng rãi trong các lĩnh khai phá dữ liệu và thị

giác máy tính... SVM gốc được thiết kế để giải bài toán phân lớp nhị

phân, ý tưởng chính của phương pháp này là tìm một siêu phẳng phân

cách sao cho khoảng cách lề giữa hai lớp đạt cực đại. Khoảng cách này

được xác định bởi các véc tơ tựa (SV - Support Vector), các sv này được

lọc ra từ tập mẫu huấn luyện bằng cách giải một bài toán tối ưu lồi [5.1].

1.3.4.5. Mạng nơ ron

Một mạng nơ ron được định nghĩa như một cấu trúc tính toán bao

gồm nhiều bộ xử lý “nơ ron” được kết nối song song chằng chịt với nhau.

Do bản chất song song của các nơ ron nên nó có thể thực hiện các tính

toán với tốc độ cao hơn so với các kỹ thuật phân lớp khác. Một mạng nơ

ron chứa nhiều nút, đầu ra của một nút được sử dụng cho một nút khác ở

trong mạng và hàm quyết định cuối cùng phụ thuộc vào sự tương tác phức

tạp giữa các nút. Mặc dù nguyên lý khác nhau, nhưng hầu hết các kiến

trúc mạng nơ ron đều tương đương với các phương pháp nhận dạng mẫu

thống kê [26,27].

Các kiến trúc mạng nơ ron có thể được phân thành hai nhóm chính:

mạng truyền thẳng và mạng lan truyền ngược. Trong các hệ thống nhận

dạng chữ, các mạng nơ ron sử dụng phổ biến nhất là mạng perceptron đa

lớp thuộc nhóm mạng truyền thẳng và mạng SOM (Self Origanizing Map)

của Kohonen thuộc nhóm mạng lan truyền ngược.

Mạng perceptron đa lớp được đề xuất bởi Rosenblatt [64] được

nhiều tác giả sử dụng trong các hệ nhận dạng chữ viết tay [65,66]. Hầu hết

các nghiên cứu phát triển nhận dạng chữ viết tay hiện nay đều tập trung

vào mạng SOM [67]. SOM kết hợp trích chọn đặc trưng và nhận dạng

Page 19: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

trên một tập lớn các ký tự huấn luyện. Mạng này chứng tỏ rằng nó tương

đương với thuật toán phân cụm k-means.

Với thuật toán đơn giản nhưng rất hiệu quả, cùng với thành công

của mô hình này trong các ứng dụng thực tiễn, mạng nơ ron hiện đang là

một trong các hướng nghiên cứu của lĩnh vực học máy. Mạng nơ ron tỏ ra

phù hợp với các bài toán đối sánh, phân loại mẫu, xấp xỉ hàm, tối ưu hoá,

lượng tử hoá véc tơ và phân hoạch không gian dữ liệu, trong khi các

phương pháp truyền thống không đủ khả năng giải quyết các vấn đề nêu

trên một cách hiệu quả. Đặc biệt trong các hệ thống nhận dạng sử dụng

mạng nơ ron đã đạt được tỉ lệ nhận dạng khá chính xác, có thể so sánh

với các phương pháp nhận dạng cấu trúc, thống kê,...

1.3.5. Kết quả

Sau khi trải qua quá trình tiền xử lý mẫu ảnh cần nhận dạng được

thu gọn với kích cỡ là 60x30 và đến quá trình ánh xạ giá trị pixel ảnh vào.

Bước quan trọng cuối cùng đó là nhận dạng và cho ra kết quả .

1.4. Kết luận

Nội dung của chương 1 là trình bày về các bài toán nhận dạng nói

chung và nhận dạng chữ nói riêng trên thế giới cũng như ở Việt Nam:

Những ứng dụng đã được áp dụng trong thực tế; một số kết quả được coi là

thành công nhất. Và thiết lập được nội dung của bài toán được xây dựng

trong luận văn.

Từ những thiết lập bài toán ở trên để giải quyết bài toán nhận dạng

chữ với những ưu điểm đơn giản về thuật toán nhưng rất hiệu qủa, cùng với

những thành công trong các ứng dụng thực tiễn Tôi chọn phương pháp nhận

Page 20: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

dạng chữ sử dụng mạng nơ ron nhân tạo làm định hướng tập trung nghiên

cứu của luận án.

CHƯƠNG II: TÌM HIỂU MẠNG NEURAL VÀ MẠNG HAMMING

2.1. Mạng neural

2.1.1. Khái niệm mạng neural .

2.1.1.1. Tìm hiểu về Neural.

2.1.1.1.1. Neural sinh học: Một neural được cấu gồm những thành phần chính sau: Dendrite,

Soma, Synapse, Axon như hình 1.1.

Hình 2.1: Mô hình neural sinh học

Soma là thân của neural.

Các dendrites là các dây mảnh, dài, gắn liền với soma, chúng truyền dữ liệu (dưới dạng xung điện thế) đến cho soma xử lý. Bên trong soma các dữ liệu đó được tổng hợp lại, có thể xem gần đúng sự tổng hợp ấy như là một phép lấy tổng tất cả các dữ liệu mà neural nhận được.

Một loại dây dẫn tín hiệu khác cũng gắn với soma là các axon. Khác với dendrites, axons có khả năng phát các xung điện thế, chúng là các dây

Page 21: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

dẫn tín hiệu từ neural đi các nơi khác. Chỉ khi nào điện thế trong soma vượt quá một giá trị ngưỡng nào đó thì axon mới phát một xung điện thế, còn nếu không thì nó ở trạng thái nghỉ.

Axon nối với các dendrites của các neural khác thông qua những mối nối đặc biệt gọi là synapse. Khi điện thế của synapse tăng lên do các xung phát ra từ axon thì synapse sẽ nhả ra một số chất hoá học (neurotransmitters); các chất này mở "cửa" trên dendrites để cho các ions truyền qua. Chính dòng ions này làm thay đổi điện thế trên dendrites, tạo ra các xung dữ liệu lan truyền tới các neural khác.

Có thể tóm tắt hoạt động của một neural như sau: neural lấy tổng tất cả các điện thế vào mà nó nhận được, và phát ra một xung điện thế nếu tổng ấy lớn hơn một ngưỡng nào đó. Các neural nối với nhau ở các synapses. Synapse được gọi là mạch khi nó cho phép truyền dẫn dễ dàng tín hiệu qua các neural khác. Ngược lại, một synapse yếu sẽ truyền dẫn tín hiệu rất khó khăn.

Các synapses đóng vai trò rất quan trọng trong sự học tập. Khi chúng ta học tập thì hoạt động của các synapses được tăng cường, tạo nên nhiều liên kết mạnh giữa các neural. Có thể nói rằng người nào học càng giỏi thì càng có nhiều synapses và các synapses ấy càng mạnh mẽ, hay nói cách khác, thì liên kết giữa các neural càng nhiều, càng nhạy bén.

2.1.1.1.2. Neural nhân tạo:Neural nhân tạo là một đơn vị tính toán có nhiều đầu vào và một đầu ra,

mỗi đầu vào đến từ một liên kết. Đặc trưng của neural là một hàm kích hoạt phi tuyến chuyển đổi tổ hợp tuyến tính của tất cả các tín hiệu đầu vào thành tín hiệu đầu ra. Hàm kích hoạt này đảm bảo tính chất phi tuyến cho tính toán của mạng neural.

Page 22: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Hình 2.2: Mô hình một neural nhân tạo

Một neural được cầu tạo gồm các thành phần chính : liên kết neural, bộ cộng , hàm kích hoạt.

Liên kết neural là một thành phần của mạng neural nhận tạo để liên kết giữa các neural, nó nối đầu ra của neural lớp này với đầu vào của một neural trong lớp khác. Đặc trưng của thành phần liên kết là một trọng số mà mỗi tín hiệu đi qua đều được nhân với trọng số này. Các trọng số liên kết chính là các tham số tự do cơ bản của mạng neuron, có thể thay đổi được nhằm thích nghi với môi trường xung quanh.

Bộ cộng dùng để tính tổng các tín hiệu đầu vào của neural, đã được nhân với các trọng số liên kết tương ứng. phép toán được mô tả ở đây tạo nên một bộ hợp tuyến tính.

Hàm kích hoạt hay còn gọi hàm kích hoạt phi tuyến, chuyển đổi một tổ hợp tuyến tính của tất cả các tín hiệu đầu vào thành tín hiệu đầu ra. Hàm kích hoạt này đảm bảo tính chất phi tuyến cho tính toán mạng neural. Nó được xem như là một hàm giới hạn, nó giới hạn phạm vi biên độ cho phép của tín hiệu đầu ra trong một khoảng giá trị hữu hạn. Mô hình neural trong hình 2.2 còn bao gồm một hệ số điều chỉnh b tác động từ bên ngoài. Hệ số điều chỉnh b có tác dụng tăng lên hoặc giảm đi đầu vào thực của hàm kích hoạt, tùy theo nó dương hay âm.

Page 23: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Bảng 2.1 : Một số hàm kích hoạt cơ bản trong mạng neural:

Tên hàm Công thức

hardlim a ( 0 với n < 0

a = 1 với n ( 0

hardlims a ( -1 với n < 0

a = 1 với n ( 0

purelin a = n

Satlin a = 0 với n < 0

a = n với 0 ( n ( 1

a = 1 với n > 1

satlins a = -1 với n < 0

a = n với 0 ( n ( 1

a = 1 với n > 1

tansigne

eeann

1

poslin a ( 0 với n < 0

a = n với n ( 0

compet a = 1 với neural có n lớn nhất

a = 0 với các neural còn lại

logsigne

a

11

Page 24: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

2.1.1.2. Mạng neural nhân tạo.Là một hệ thống bao gồm nhiều phần tử xử lý đơn giản (hay còn gọi là

neural) tựa như neural thần kinh của não người, hoạt động song song và được nối với nhau bởi các liên kết neural. Mỗi liên kết kèm theo một trọng số nào đó, đặc trưng cho tính kích hoạt hoặc ức chế giữa các neural.

Có thể xem các trọng số là phương tiện để lưu trữ thông tin dài hạn trong mạng neural và nhiệm vụ của quá trình huấn luyện của mạng là cập nhật các trọng số khi có thêm thông tin về mẫu học. Hay nói một cách khác, các trọng số đều được điều chỉnh sao cho dáng điệu vào ra của mạng sẽ mô phỏng hoàn toàn phù hợp với môi trường đang xem xét.

Mô hình mạng neural.

Hình 2.3: Sơ đồ đơn giản về một mạng neural nhân tạo

Mô hình mạng neural ở trên gồm 3 lớp: lớp nhập (input), lớp ẩn(hidden) và lớp xuất (output). Mỗi nút trong lớp nhập nhận giá trị của một biến độc lập và chuyển vào mạng.

Dữ liệu từ tất cả các nút trong lớp nhập được tích hợp – ta gọi là tổng trọng số – và chuyển kết quả cho các nút trong lớp ẩn. Gọi là “ẩn” vì các nút

Page 25: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

trong lớp này chỉ liên lạc với các nút trong lớp nhập và lớp xuất, và chỉ có người thiết kế mạng mới biết lớp này (người sử dụng không biết lớp này).

Các nút trong lớp xuất nhận các tín hiệu tổng trọng hóa từ các nút trong lớp ẩn. Mỗi nút trong lớp xuất tương ứng với một biến phụ thuộc.

2.1.2. Đặc trưng của mạng neural.

2.1.2.1. Tính phi tuyến.Một neural có thể tính toán một cách tuyến tính hay phi tuyến. Một

mạng neural, cấu thành bởi sự kết nối các neural phi tuyến thì tự nó sẽ có tính phi tuyến. Hơn nữa, điều đặc biệt là tính phi tuyến này được phân tán trên toàn mạng. Tính phi tuyến là một thuộc tính rất quan trọng, nhất là khi các cơ chế vật lý sinh ra các tín hiệu đầu vào (ví dụ tín hiệu tiếng nói) vốn là phi tuyến.

2.1.2.2. Tính chất tương ướng đầu vào đầu ra.Mặc dù khái niệm “học” hay “huấn luyện” chưa được bàn đến nhưng

để hiểu được mối quan hệ đầu vào-đầu ra của mạng neural, chúng ta sẽ đề cập sơ qua về khái niệm này. Một mô hình học phổ biến được gọi là học với một người dạy hay học có giám sát liên quan đến việc thay đổi các trọng số liên kết của mạng neural bằng việc áp dụng một tập hợp các mẫu tích luỹ hay các ví dụ tích luỹ. Mỗi một ví dụ bao gồm một tín hiệu đầu vào và một đầu ra mong muốn tương ứng. Mạng neural nhận một ví dụ lấy một cách ngẫu nhiên từ tập hợp nói trên tại đầu vào của nó, và các trọng số liên kết của mạng được biến đổi sao cho có thể cực tiểu hoá sự sai khác giữa đầu ra mong muốn và đầu ra thực sự của mạng theo một tiêu chuẩn thống kê thích hợp. Sự tích luỹ của mạng được lặp lại với nhiều ví dụ trong tập hợp cho tới khi mạng đạt tới một trạng thái ổn định mà ở đó không có một sự thay đổi đáng kể nào của các trọng số liên kết. Các ví dụ tích luỹ được áp dụng trước có thể được áp dụng lại trong thời gian của phiên tích luỹ nhưng theo một thứ tự khác. Như vậy mạng neural học từ các ví dụ bằng cách xây dựng nên một tương ứng đầu vào-đầu ra cho vấn đề cần giải quyết.

Page 26: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

2.1.2.3. Tính chất thích nghi.Các mạng neural có một khả năng mặc định là biến đổi các trọng số

liên kết tuỳ theo sự thay đổi của môi trường xung quanh. Đặc biệt, một mạng neural đã được tích luỹ để hoạt động trong một môi trường xác định có thể được tích luỹ lại một cách dễ dàng khi có những thay đổi nhỏ của các điều kiện môi trường hoạt động.

2.1.2.4. Tính chất đưa ra lời giải có bằng chứng.Trong ngữ cảnh phân loại mẫu, một mạng neural có thể được thiết kế

để đưa ra thông tin không chỉ về mẫu được phân loại, mà còn về sự tin cậy của quyết định đã được thực hiện. Thông tin này có thể được sử dụng để loại bỏ các mẫu mơ hồ hay nhập nhằng.

2.1.2.5. Tính chất chấp nhận sai xót.Một mạng neural, được cài đặt dưới dạng phần cứng, vốn có khả năng

chấp nhận lỗi, hay khả năng tính toán thô, với ý nghĩa là tính năng của nó chỉ thoái hoá khi có những điều kiện hoạt động bất lợi. Ví dụ, nếu một neural hay các liên kết kết nối của nó bị hỏng, việc nhận dạng lại một mẫu được lưu trữ sẽ suy giảm về chất lượng.

2.1.2.6. Khả năng cài đặt VLSI(Very-large-scale-intergrated).Bản chất song song đồ sộ của một mạng neural làm cho nó rất nhanh

trong tính toán đối với một số công việc. Đặc tính này cũng tạo ra cho một mạng neural khả năng phù hợp cho việc cài đặt sử dụng kỹ thuật Very-large-scale-intergrated (VLSI). Kỹ thuật này cho phép xây dựng những mạch cứng tính toán song song quy mô lớn. Chính vì vậy mà ưu điểm nổi bật của VLSI là mang lại những phương tiện hữu hiệu để có thể xử lý được những hành vi có độ phức tạp cao.

2.1.2.7. Tính chất đồng dạng trong phân tích và thiết kế.Về cơ bản, các mạng neural có tính chất chung như là các bộ xử lý

thông tin. Chúng ta nêu ra điều này với cùng ý nghĩa cho tất cả các lĩnh vực

Page 27: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

có liên quan tới việc ứng dụng mạng neural. Đặc tính này thể hiện ở một số điểm như sau:

Các neural, dưới dạng này hoặc dạng khác, biểu diễn một thành phần chung cho tất cả các mạng neural.

Tính thống nhất này đem lại khả năng chia sẻ các lý thuyết và các thuật toán học trong nhiều ứng dụng khác nhau của mạng neural.

Các mạng tổ hợp (modular) có thể được xây dựng thông qua một sự tích hợp các mô hình khác nhau.

2.1.3. Phân loại mạng neural nhân tạo.

2.1.3.1. Phân loại theo kiểu liên kết neural.Ta có mạng neural truyền thẳng và neural mạng qui hồi.

Trong mạng truyền thẳng các neural đi theo một hướng nhất định tạo thành đồ thị không có chu trình, các đỉnh là các neural còn các cạnh là các liên kết giữa chúng.

Các mạng qui hồi cho phép các liên kết neural tạo thành chu trình, các thông tin ra của các neural được truyền lại cho các neural đã góp phần kích hoạt chúng, nên mạng qui hồi còn có khả năng lưu giữ trạng thái trong của nó dưới dạng các ngưỡng kích hoạt ngoài các trọng số liên kết neural.

2.1.3.2. Một số loại mạng neural.

2.1.3.2.1. Mạng dẫn tiến .Có thể nói mạng neural dẫn tiến là một kiểu mạng đơn giản trong việc

sắp đặt mạng. Trong mạng này thông tin chỉ truyền trên một hướng duy nhất. từ lớp đầu vào xuyên qua lớp ẩn (nếu có) và kết thúc tại lớp đầu ra. Không có chu trình hoặc vòng trong mạng.

a. Các mạng dẫn tiến đơn mức.

Page 28: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Trong một mạng neural phân mức, các neural được tổ chức dưới dạng các mức. Với dạng đơn giản nhất của mạng phân mức, chúng ta có một mức đầu vào gồm các nút nguồn chiếu trực tiếp tới mức đầu ra gồm các neural.

Mức đầu vào Mức đầu ra

Hình 2.4: Mạng tiến với một mức neuralNhư vậy, mạng thực sự là không có chu trình. Nó được minh hoạ trong

hình 2.4 cho trường hợp ba nút đối với cả mức đầu ra và đầu vào. Một mạng như vậy được gọi là một mạng đơn mức. “Đơn mức” tức là chỉ có một mức, chính là mức đầu ra gồm các nút tính toán (các neural). Chúng ta không tính mức đầu vào của các nút nguồn vì không có tính toán nào được thực hiện ở đây.

b. Các mạng dẫn tiến đa mức.Lớp thứ hai của một mạng neural dẫn tiến được phân biệt bởi sự có mặt

của một hay nhiều mức ẩn, mà các nút tính toán của chúng được gọi là các neural ẩn hay các đơn vị ẩn (thuật ngữ “ẩn” ở đây mang ý nghĩa là không tiếp xúc với môi trường). Chức năng của các neural ẩn là can thiệp vào giữa đầu vào và đầu ra của mạng một cách hữu hiệu. Bằng việc thêm một vài mức ẩn, mạng có khả năng rút ra được các thống kê bậc cao của tín hiệu đầu vào. Khả năng các neural ẩn rút ra được các thống kê bậc cao đặc biệt có giá trị khi mức đầu vào có kích thước lớn.

Mạng neural trong hình 2.5 được gọi là kết nối đầy đủ với ý nghĩa là tất cả các nút trong mỗi mức của mạng được nối với tất cả các nút trong mức

Page 29: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

tiếp sau. Nếu một số kết nối không tồn tại trong mạng, chúng ta nói rằng mạng là kết nối không đầy đủ.

Mức đầu vào Mức ẩn Mức đầu ra

gồm các nút gồm các gồm các

nguồn neural ẩn neural đầu ra

Hình 2.5: Mạng tiến kết nối đầy đủ với một mức ẩn và một mức đầu ra

2.1.3.2.2. Mạng quy hồi .Trái với mạng neural dẫn tiến , mạng nổn quy hồi là những mô hình

với hai luồng dữ liệu có hướng. Trong khi mạng dẫn tiến truyền dữ liệu theo một đường thẳng thì những mạng neural quy hồi có ít nhất một phản hồi từ những neural xử lý sau quay trở lại các neural xử lý trước đó.

Page 30: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Hình 2.6: Mạng hồi quy không có neural ẩn và không có vòng lặp tự phản hồi

Hình 2.7: Mạng hồi quy có các neural ẩn

2.1.4. Xây dựng mạng neural.Về cơ bản ta có thể hiểu mạng neural là một đồ thị có hướng như hình

2.8. Trong đó các đỉnh của đồ thị là các neural và các cạnh của đồ thị là các liên kết giữa các neural.

Hình 2.8: Sơ đồ đồ thị có hướng đơn giảnVì vậy để xây dựng một mạng neural ta xây dựng một đồ thị có hướng:

số đỉnh của đồ thị bằng số neural trong mạng, giá trị của các cạnh chính là trọng số liên kết neural.

x

h1

h2

h3

g2

g1

f

Page 31: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Ví dụ xây dựng một mạng neural đơn giản:

Đầu vào: Cho :

Mạng neural có sô lớp (với sô lớp>1).

Mỗi lớp có số neural trong một lớp (số neural>=1).

Trọng số w liên kiết neural ngẫu nhiên trong khoảng (-a,a).

Đầu ra: Mạng neural nhân tạo.

Kiểu dữ liệu: chọn lưu dữ kiểu mảng :

int số lớp;

int số neural[số lớp];

float w[i][j][k]; với 2<=i<=số lớp, 1<=j,k<=số neural[] ,

Thuật toán.

Bước 1: Chọn lớp i=2 là lớp bắt đầu

Bước 2: Chọn lớp i là lớp hiện thời.

Bước 3 : Tại lớp đang xét i , xét neural thứ j .

Bước 4: Thực hiện khởi tạo ngẫu nhiên trọng số kết nối với neural k của lớp i-1 trong khoảng (-a,a).

w(i,j,k)=random(-a,a)

Bước 5: Nếu k <= số neural[i-1] quay lại “Bước 4”, ngược lại thực hiện “Bước 6”.

Bước 6: Nếu j<= số neural[i] quay lại “Bước 3”, ngược lại thực hiện “Bước 7”.

Bước 7: Nếu i<=số lớp quay lại “Bước 3”. ngược lại kết thúc.

Page 32: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

2.1.5. Huấn luyện mạng neural.

2.1.5.1. Phương pháp học.Mạng neural nhân tạo phỏng theo việc xử lý thông tin của bộ não

người, do vậy đặc trưng cơ bản của mạng là có khả năng học, khả năng tái tạo các hình ảnh và dữ liệu khi đã học. Trong trạng thái học thông tin được lan truyền theo hai chiều nhiều lần để học các trọng số. Có 3 kiểu học chính, mỗi kiểu học tương ứng với một nhiệm vụ học trừu tượng. Đó là học có giám sát (có mẫu), học không giám sát và học tăng cường. Thông thường loại kiến trúc mạng nào cũng có thể dùng được cho các nhiệm vụ.

2.1.5.1.1. Học có giám sát.Một thành phần không thể thiếu của phương pháp này là sự có mặt của

một người thầy (ở bên ngoài hệ thống). Người thầy này có kiến thức về môi trường thể hiện qua một tập hợp các cặp đầu vào - đầu ra đã được biết trước. Hệ thống học (ở đây là mạng neural) sẽ phải tìm cách thay đổi các tham số bên trong của mình (các trọng số và các ngưỡng) để tạo nên một ánh xạ có khả năng ánh xạ các đầu vào thành các đầu ra mong muốn. Sự thay đổi này được tiến hành nhờ việc so sánh giữa đầu ra thực sự và đầu ra mong muốn.

2.1.5.1.2. Học không giám sát.Trong học không có giám sát, ta được cho trước một số dữ liệu x và

hàm chi phí cần được cực tiểu hóa có thể là một hàm bất kỳ của dữ liệu x và đầu ra của mạng, f – hàm chi phí được quyết định bởi phát biểu của bài toán. Phần lớn các ứng dụng nằm trong vùng của các bài toán ước lượng như mô hình hóa thống kê, nén, lọc, phân cụm.

2.1.5.1.3. Học tăng cường.Dữ liệu x thường không được tạo trước mà được tạo ra trong quá trình

một agent tương tác với môi trường. Tại mỗi thời điểm t, agent thực hiện hành động yt và môi trường tạo một quan sát xt với một chi phí tức thời Ct,

Page 33: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

theo một quy trình động nào đó (thường là không được biết). Mục tiêu là một sách lược lựa chọn hành động để cực tiểu hóa một chi phí dài hạn nào đó, nghĩa là chi phí tích lũy mong đợi. Quy trình hoạt động của môi trường và chi phí dài hạn cho mỗi sách lược thường không được biết, nhưng có thể ước lượng được. Mạng neural nhân tạo thường được dùng trong học tăng cường như một phần của thuật toán toàn cục. Các bài toán thường được giải quyết bằng học tăng cường là các bài toán điều khiển, trò chơi và các nhiệm vụ quyết định tuần tự (sequential decision making) khác.

2.1.5.2. Thuật toán học.

2.1.5.2.1. Thuật toán học của mạng neural một lớp.Xét trường hợp perceptron sử dụng hàm kích hoạt ngưỡng:

d

iii

d

iii

twv

twvoutput

1

1

,1

,1(1.1)

Nếu ta cho w0=-t và v0=1, ta có thể viết lại

d

iiid

iii

d

iii

wvsignwv

wvoutput

0

0

0

0,1

0,1(1.2)

Thuật toán:

Thuật toán học của perceptron hay mạng neural một lớp gồm 3 bước chính:

Bước 1: Khởi tạo:

Khởi tạo trọng số w (0 hoặc ngẫu nhiên).

Chọn tốc độ học µ.

Page 34: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Bước 2 : Học

Với mỗi mẫu (x,t) trong tập học.

Tính y=f(x, w).

Nếu y!=t thay đổi vectơ trọng số w với:

w(mới (cũ)+ µ(t-y)x;

Bước 3: lặp lại bước 2 cho tất cả các mẫu.

Nhận xét:

Phương trình w.v=0 là chính là siêu phẳng trong không gian d-chiều, suy ra perceptron có khả năng phân lớp tuyến tính, có khả năng giải bài toán quy hồi tuyến tính.

Hạn chế:

Không thể phân lớp phi tuyến.

Giải pháp: sử dụng mạng neural nhiều tầng MLP

2.1.5.2.2. Thuật toán học của mạng neural nhiều lớp.

Huấn luyện mạng neural nhiều lớp sử dụng thuật toán Lan truyền ngược gồm hai quá trình: Quá trình truyền tuyến tính và quá trình truyền ngược:

Quá trình truyền tuyến tính: Dữ liệu từ lớp nhập qua lớp ẩn và đến lớp xuất để:

Thay đổi giá trị của trọng số liên kết W của các neural trong mạng biểu diễn được dữ liệu học.

Tìm ra sự khác nhau giữa giá trị thật hàm mẫu mà mạng tính được và kết quả dự đoán của mạng gọi là lỗi (học có giám sát).

Quá trình truyền ngược: Giá trị lỗi sẽ được truyền ngược lại sao cho quá trình huyến luyện(học) sẽ tìm ra trọng số Wi để lỗi nhỏ nhất.

Page 35: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Thuật toán:

Xét mạng neural 3 lớp : input, hiden và output.

Hàm kích hoạt các neural : logistic (sigmoid).

g(x)= (1.3)

Bước 1: Khởi tạo trọng số w ngẫu nhiên nhỏ.

Bước 2 : Chọn lớp đầu vào x và đính nó vào lớp đầu vào .

Bước 3 : Truyền sự kích hoạt qua trọng số đến khi kich hoạt các neural đầu ra.

Bước 4: Tính đạo hàm riêng “δE” theo trọng số cho lớp xuất. sử dụng GRADIENT của hàm lỗi .

Bước 5: Tính đạo hàm riêng “δE” theo trọng số cho lớp ẩn. sử dụng GRADIENT của hàm lỗi.

Bước 6: Cập nhật tất cả trọng số theo Wi=W(i-1)-µ(δE/ δ Wi)

Bước 7: quay lai “Bước 2” cho đến “Bước 6” cho tất cả các mẫu.

Trong đó: GRADIENT hàm lỗi:

Đối với các neural lớp đầu ra:

w2

wk

w1

z=g(v)

v=b0 + g(x)=

y1

y2

b0yk

Page 36: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Hàm lỗi:

2)1(21

)( zzE(1.4)

( t là giá trị thật của mẫu huấn luyện)

Đạo hàm riêng của hàm lỗi theo trọng số b:

bv

vz

zE

bE

(1.5)

Ta có:

0,0,1

)1(

)(

1 iyi

bv

zzvg

vz

tzzE

i

Đặt:

)1()(

zztz

vz

zEp Ta được:

00

ipyip

bE

ii(1.6)

Đối với các neural lớp ẩn:

Page 37: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Đạo hàm riêng của hàm lỗi theo trọng số:

au

uy

yE

aE

(1.7)

Ta có:

0,0,1

1

)1()(

1

jcj

au

yyuy

byv

pzztzvz

zE

yv

vz

zE

yE

jj

ii

iiiiii

i

i

K

i

i

i

i

i

Đặt:

)1(1

yybpuy

yEq

K

iii

Ta được:

00

1 iqxiq

aE

i

(1.8)

Sau khi tính được đạo hàm riêng của hàm lỗi theo từng trọng số, trọng số sẽ được điều chỉnh bằng cách trừ bớt đi 1 lượng bằng tích của đạo hàm riêng và tốc độ học:

iii w

Eww

(1.9)

Page 38: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Những hạn chế của phương pháp lan truyền ngược:Ngoài những thành công của giải thuật học lan truyền ngược, vẫn còn

có một số khía cạnh làm cho giải thuật trở nên chưa được bảo đảm là mọi lúc đều tốt. Khó khăn chủ yếu là ở quá trình huấn luyện lâu. Có thể do nhịp độ học và động lực không tối ưu. Sự sai sót trong việc huấn luyện nói chung xuất hiện từ hai nguồn: mạng liệt và những cực tiểu địa phương.

Mạng liệt: xảy ra khi những trọng số được điều chỉnh tới những giá trị rất lớn. Tổng đầu vào của một đơn vị ẩn hoặc đơn vị đầu ra có thể bởi vậy mà đạt giá trị rất cao (hoặc dương hoặc âm), và qua hàm kích hoạt sigmoid, đơn vị sẽ có một giá trị kích hoạt rất gần 0 hoặc rất gần 1. Giá trị hiệu chỉnh trọng số gần 0, và quá trình huấn luyện có thể đi đến một trạng thái dừng ảo.

Cực tiểu địa phương: bề mặt sai số của mạng rất phức tạp đầy những ngọn đồi và những thung lũng. Bởi vì sự hạ độ dốc, mạng có thể bị mắc bẫy tại một cực tiểu địa phương khi có nhiều cực tiểu thấp hơn gần bên cạnh. Những phương pháp thống kê có thể giúp để tránh cái bẫy này, nhưng chúng làm chậm. Một phương án khác là tăng thêm số lượng đơn vị ẩn. Như vậy sẽ làm việc trong không gian sai số nhiều chiều, nên cơ hội gặp bẫy nhỏ hơn. Tuy nhiên việc tăng cũng có giới hạn trên, khi vượt qua giới hạn này, cơ hội mắc bẫy lại tăng lên.

2.1.6. Thu thập dữ liệu cho mạng neural.

Một khi ta quyết định giải quyết một vấn đề sử dụng những mạng neural ta cần phải thu thập dữ liệu cho mục tiêu huấn luyện. Tập hợp dữ liệu huấn luyện bao gồm một số trường hợp, mỗi trường hợp chứa những giá trị của đầu vào vả đầu ra khác nhau. Những việc đầu tiên cần làm là: những biến nào được sử dụng, bao nhiêu trường hợp cần thu thập.

Sự lựa chọn do trực giác quyết định. Công việc chuyên môn của ta trong lĩnh vực cần giải quyết sẽ cho ta những ý tưởng về các biến đầu vào

Page 39: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

phù hợp. Trong những mạng neural ta có thể chọn và loại bỏ nhiều biến và mạng neural cũng có thể xác định bằng quá trình thực nghiệm. Trong một bước ta nên tính đến bất kỳ biến nào mà ta nghĩ có ảnh hưởng đến quá trình thiết kế.

Những mạng neural xử lý dữ liệu số trong một tầm giới hạn rõ ràng. Điều này đưa ra một vấn đề, nếu dữ liệu nằm trọng một vùng đặc biệt như dữ liệu chưa biết hay không phải dữ liệu số. Thì phải có những phương pháp xử lý thích hợp, chẳng hạn. Dữ liệu số được chia nhỏ thành những khoảng thích hợp cho mạng và những giá trị thiếu có thể thay thế bằng giá trị trung bình hay giá trị thống kê của biến đó thông qua những biến khác đã được huấn luyện.

Xử lý dữ liệu không phải số thì khó hơn. Loại dữ liệu không phải là số thông thường nhất là những biến có giá trị định danh như giới tính(nam, nữ). Biến định danh có thể biểu diễn bằng số học và mạng neural có chức năng hỗi trợ điều này. Tuy nhiên, mạng neural làm việc tốt với những trường hợp biến định danh là một tập nhiều giá trị.

Số trường hợp mẫu dùng để huấn luyện mạng rất khó xác định. Đã có một vài hướng dẫn về mối liên hệ giữa số trường hợp mẫu với kích thước mạng(cách đơn giản nhất là số trường hợp mẫu gấp 10 lần số kết nối trong mạng). Thực ra số trường hợp mẫu cũng có liên quan đến độ phức tạp của hàm mà mạng phải học. Khi số biến tăng lên, số trường hợp mẫu cần huấn luyện cũng tăng phi tuyến, vì thế với số các biến nhỏ(50 hoặc nhỏ hơn) thì lại cần một số lớn các trường hợp mẫu.

Trong hầu hết các vấn đề trong thực tế, số trường hợp mẫu là khoảng hàng trăm hay hàng nghìn mẫu. Đối với những vấn đề rất phức tạp thì cần nhiều hơn, nhưng trường hợp này rất ít. Nếu dữ liệu huấn luyện ít hơn, rõ ràng không đủ thông tin để huấn luyện mạng, và cách tốt nhất là dùng mạng tuyến tính. Nhiều vấn đề trong thực tế có dữ liệu không đáng tin cậy, một vài dữ liệu bị phá hỏng do liệu do nhiễu, hoặc các giá trị không phối hợp đựợc với nhau. Mạng neural có khả năng đặc biệt xử lý dữ liệu bị mất(sử

Page 40: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

dụng giá trị trung bình hay các những giá trị thống kê khác). Mạng neural cũng chịu được nhiễu, nhưng cũng phải có giới hạn. Nếu thỉnh thoảng có giá trị nằm xa ra khỏi vùng giá trị bình thường thì mạng huấn luyện phải có ngưỡng. Cách tốt nhất đối với trường hợp này là nhận ra và loại bỏ những giá trị nằm xa đó ( có thể hủy trường hợp này hoặc xem giá trị nằm xa này là giá trị bị mất ). Nếu giá trị này khó nhận ra, mạng neural có chức năng huấn luyện chịu được giá trị nằm khỏi vùng này nhưng huấn luyện này thường kém hiệu quả hơn là huấn luyện chuẩn.

Tóm lại cách thu thập dữ liệu có thể nói gọn lại như sau:

1. Chọn những giá trị huấn luyện có tác dụng.

2. Dữ liệu số và biến có giá trị định danh có thể xử lý trực tiếp bằng mạng neural. Chuyển những loại biến khác sang một trong các dạng này.

3. Cần hàng trăm hoặc hàng ngàn trường hợp mẫu huấn luyện; càng nhiều biến thì càng nhiều mẫu huấn luyện. Mạng neural có khả năng nhận ra những biến hữu dụng để huấn luyện.

2.1.7. Biểu diễn chi thức cho mạng neural.

Chúng ta có thể đưa ra định nghĩa về tri thức như sau:

Tri thức chính là thông tin được lưu trữ hay các mô hình được con người và máy móc sử dụng để biểu diễn thế giới thực, phán đoán về thế giới và có những đáp ứng phù hợp với thế giới bên ngoài.

Các đặc tính cơ bản của diễn tri thức là:

Thông tin gì thực sự được biểu diễn.

Làm thế nào thông tin được mã hóa một cách vật lý cho việc sử dụng sau này. Trong các ứng dụng thực tế của các máy tính thông minh, có thể nói rằng một giải pháp tốt phụ thuộc vào một biến tri thức tốt. Điều đó cũng đúng với các mạng neural, một

Page 41: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

lớp đặc biệt của các máy thông minh. Tuy nhiên, các dạng biểu diễn có thể từ các đầu vào thành các tham số bên trong của mạng là rất đa dạng, và có khuynh hướng là cho việc tìm ra một giải pháp thích hợp nhằm biểu diễn tri thức bằng phương tiện mạng neural trở nên một sự thách thức về thiết kế.

Ở đây cần nhấn mạnh rằng mạng neural lưu trữ thông tin về thế giới thực bằng chính bản thân cấu trúc của nó kể cả về mặt hình dạng cũng như giá trị tham số bên trong(có thể thay đổi được để nắm bắt môi ). Một nhiệm vụ chính của mạng neural là học một mô hình của thế giới thực để đạt được một số mục đích xác định cần quan tâm. Tri thức của thế giới bao gồm hai loại thông tin sau:

Trạng thái thế giới đã biết, được biểu diễn bởi các sự kiện về những cái đã biết; dạng tri thức này được xem như là các thông tin ban đầu.

Các quan sát(đo đạc) về thế giới, thu nhập được thông qua các bộ cảm biến được thiết kế để thăm dò môi trường mà trong đó mạng hoạt động. Nói chung, các quan sát này luôn bị nhiễu và sai lệch do nhiều nguyên nhân khác nhau. Các quan sát thu nhận được như vậy cung cấp một quỹ thông tin, mà từ đó lấy ra các ví dụ được dùng để huấn luyện mạng neural.

Do cấu trúc một mạng neural là vô cùng đa dạng, nên để có thể biểu diễn tri thức một cách có hiệu quả, người ta đưa ra bốn quy tắc chung sau:

Quy tắc 1. Các đầu vào tương tự từ các lớp tương tự cần phải luôn tạo ra những biểu diễn tương tự trong mạng, và như vậy nên được phân lớp thuộc về cùng một loại. Trong tiêu chuẩn này, người ta thường sử dụng một số thước đo để xác định độ “tương tự” giữa các đầu vào (ví dụ khoảng cách euclide).

Quy tắc 2. Các phần tử mà có thể phân ra thành các lớp riêng biệt thì nên có những biểu diễn khác nhau đáng kể trong mạng.

Page 42: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Quy tắc 3. Nếu một đặc trưng nào đó đặc biệt quan trọng thì nên có một số lượng lớn neural liên quan đến việc biểu diễn đặc trưng này trong mạng. Số lượng lớn các neural bảo đảm mức độ chính xác cao trong việc thực hiện các quyết định và nâng cao khả năng chịu đựng các neuron hỏng.

Quy tắc 4. Thông tin ban đầu và các tính chất bất biến nên được đưa vào trong thiết kế ban đầu của một mạng neural, và như vậy sẽ giảm bớt gánh nặng cho quá trình học. Quy tắc 4 đặc biệt quan trọng vì nếu chúng ta áp dụng nó một cách thích hợp sẽ dẫn đến khả năng tạo ra các mạng neural với một kiến trúc chuyên biệt. Điều này thực sự được quan tâm do một số nguyên nhân sau:

1. Các mạng neural thị giác và thính giác sinh học được biết là rất chuyên biệt.

2. Một mạng neural với cấu trúc chuyên biệt thường có một số lượng nhỏ các tham số tự do phù hợp cho việc chỉnh lý hơn là một mạng kết nối đầy đủ. Như vậy mạng neural chuyên biệt cần một tập hợp dữ liệu nhỏ hơn cho việc tích luỹ; nó học sẽ nhanh hơn, và thường có khả năng tổng quát hoá tốt hơn.

3. Tốc độ chuyển thông tin qua một mạng chuyên biệt là nhanh hơn.

4. Giá của việc xây dựng một mạng chuyên biệt sẽ nhỏ hơn do kích thước nhỏ của nó so với mạng kết nối đầy đủ.

2.1.8. Một số vấn đề của mạng neural.Khi xây dựng một ứng dụng mạng neural chúng ta cần quan tâm một số

vấn đề sau:

Vấn đề về kiến trúc mạng neural : neural nào nối với neural nào? Đây chính là sự lựa chọn mô hình của mạng neural. Nó sẽ phụ thuộc vào sự trình bày dữ liệu và ứng dụng. Những mô hình phức tạp quá dẫn đến những vấn đề lựa chọn quá trình huấn luyện hay là việc lựa chọn giải thuật học.

Lựa chọn giải thuật học: ở đây có nhiều sự cân bằng giữa các giải thuật học. Gần như bất kỳ giải thuật nào sẽ làm tốt với độ chính xác của các siêu

Page 43: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

tham số cho việc huấn luyện trên tập dữ liệu cố định cho trứớc. Tuy nhiên sự lựa chọn và điều hướng của giải thuật cho việc huấn luyện trên các tập dữ liệu này cần thực hiện nhiều thí nghiệm, đó là điều rất quan trọng. Trên một mô hình nếu lựa chọn giải thuật và hàm đánh giá phù hợp thì mạng neural có thể cho kết quả rất tốt.

Trọng số của các cung nối và ngưỡng thay đổi thường xuyên. Đã có nhiều nghiên cứu về vấn đề này và cũng đã có một số kết quả :

Nếu mạng gây ra lỗi, thì có thể xác định neural nào gây ra lỗi => điều chỉnh neural đó.

Với cách tiếp cận này, mạng phải biết rằng nó gây ra lỗi.

Trong thực tế, lỗi chỉ được biết sau một thời gian dài.

Chức năng của nột neural không quá đơn giản như mô hình. Bởi vì mạng neural hoạt động như một hộp đen.

Một số hướng dẫn khi sử dụng mạng neural.

Xây dựng mạng khởi tạo(dùng một lớp ẩn có số neural= ½ tổng số neural của lớp nhập và l ớp xuất).

Huấn luyện mạng dùng các giải thuật huấn luyện. Nên thực hiện trên nhiều mạng khác nhau để tránh trường hợp cực tiểu cục bộ.

Nếu máy “Không thuộc bài” => thêm một vài neural cho tầng ẩn.

Ngược lại nếu máy “Học vẹt”=> bớt một vài neural ra khỏi tầng ẩn.

Khi đã tìm được một kiến trúc mạng tương đối tốt lấy mẫu lại tập dữ liệu và huấn luyện lại để tìm các mạng mới.

2.1.9. Ứng dụng của mạng neural.Mạng neural trong một vài năm trở lại đây đã được nhiều người quan

tâm và đã áp dụng thành công trong nhiều lĩnh vực khác nhau, như tài chính, y tế, địa chất và vật lý. Thật vậy, bất cứ ở đâu có vấn đề về dự báo, phân loại và điều khiển, mạng neural đều có thể ứng dụng được. Ví dụ như khả năng

Page 44: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

nhận dạng mặt người trong các hệ thống quản lý thông tin liên quan đến con người (quản lý nhân sự ở các công sở, doanh nghiệp; quản lý học sinh, sinh viên trong các trường trung học, đại học và cao đẳng;… ); các ngành khoa học hình sự, tội phạm; khoa học tướng số, tử vi,…

Kết hợp chặt chẽ với logic mờ, mạng neural nhân tạo đã tạo nên cuộc cách mạng thực sự trong việc thông minh hóa và vạn năng hóa các bộ điều khiển kỹ thuật cao cho cả hiện nay và trong tương lai. Ví dụ như ứng dụng tự động điều khiển hệ thống lái tàu, hệ thống dự báo sự cố,…

Mạng neural dựa trên việc mô phỏng cấp thấp hệ thống neural sinh học. Trong tương lai với sự phát triển mô phỏng neural sinh học, chúng ta có thể có loại máy tính thông minh thật sự.

2.2 Mạng Hamming và thuật toán học điển hìnhMạng Hamming ( khoảng cách Hamming) là ví dụ đơn giản nhất về

mạng cạnh tranh trong đó các neural ở tầng ra cạnh tranh nhau để xác định neural thắng và neural này chỉ ra mẫu ban đầu đại diện tốt nhất cho mẫu tín hiệu vào.

Trong việc so sánh các mẫu bit X và Y, khoảng cách Hamming được

định nghĩa là tổng của những bit không khớp (tổng của XOR giữa X và Y)

trên N, với N là tổng số bits trong mẫu bit.

HD=1/N (2.2)

2.2.1 Kiến trúc mạng Hamming

Mạng Hamming bao gồm hai tầng, tầng thứ nhất so sánh tương quan

giữa tín hiệu vào với các vectơ mẫu, tầng thứ hai thực hiện cạnh tranh để xác

định vectơ mẫu nào gần với tín hiệu vào nhất.

p W1

b1

W2 D

Page 45: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

n2(t+1) a2(t+1) a2(t) Rx1 n1 a1

SxR Sx1 Sx1 Sx1 Sx1 Sx1 1 S SxS S

R Sx1

Hình 2.6 Cấu trúc mạng hamming

Tầng 1: tính tương quan vector vào (là hàm tuyến tính): a1=pureline(W1p+b1) (1)Tầng 2: cạnh tranh (là hàm tuyến tính dương): a2(t+1) = poslin(W2a2(t))

(2)Cơ chế hoạt độngTầng 1.Giả sử có các vector mẫu { p1,...,pQ}, ta cần xác định vectơ mẫu gần với vectơ vào nào nhất. Ta lấy số nơron tầng một : S=Q và trong số càng khuynh hướng của tầng này như sau.

W1 ; b1 (3)

lưu ý ở đây pi và p có các thành phần nhận giá trị . Như vậy mỗi hàng của W1 là một vectơ mẫu tương ứng và các thành phần của b1 đều bằng R.Khi đó đầu ra tầng một là:

a1=W1p+b1 . (4)

Vectơ pi nào gần p nhất thì có đầu ra lớn nhất. Ta xét tầng sau. Tầng 2.

Page 46: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Các nơron của tầng dùng tín hiệu ra của tầng một làm tín hiệu khởi tạo và cạnh tranh nhau để xác định thành phần thắng. Sau khi cạnh tranh, chỉ còn một thành phần khác không , nó chỉ ra vectơ mẫu gần với tín hiệu vào nhất. Cụ thể như sau. Trước hết đầu ra tầng thứ nhất được dùng để khởi tạo tầng thứ hai:

a2(0)= a1 (5)Đầu ra tầng hai cập nhật theo quy tắc đệ quy sau:

a2(t+1) = poslin(W2a2(t). (6)Trong đó W2 là ma trận vuông có phần tử trên đường chéo bằng 1 và các phần tử ngoài đường chéo là - :

ở đây . (7)

Ma trận W2 như vậy tạo nên sự ức chế lẫn nhau của các nơ ron tầng ra, cụ thể như sau. Thay các giá trị từ biểu thức (7) vào biểu thức (6) ta có:

Sau mỗi lần lặp, đầu ra của mỗi nơron ra bị giảm đi một lượng lỷ lệ với tổng

đầu vào của các nơron khác. Vì vậy nơron i* ứng với lớn nhất bị

giảm ít nhất và đầu ra của các nơron khác sớn bị triệt tiêu. Do đó chỉ còn lại

khác không tức là sau một số lần lặp thì:

như vậy

Hiện tượng này gọi là thắng lấy hết

Page 47: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

TÀI LIỆU THAM KHẢO

Tiếng Việt [1] Hoàng Kiếm, Nguyễn Hồng Sơn, Đào Minh Sơn, “Ứng dụng mạng nơron nhân

tạo trong hệ thống xử lý biểu mẫu tự động”, Kỷ yếu hội nghị kỷ niệm 25 năm thành lập Viện Công nghệ Thông tin, 2001, tr. 560-567.

[2] Bùi Minh Trí, “Quy hoạch toán học”, Nhà xuất bản Khoa học và kỹ thuật, Hà nội, 2006.

[3] Lê Hoài Bắc, Lê Hoàng Thái, “Neural Network & Genetic Algorithm in Application to Handwritten Character Recognition”, Tạp chí Tin học và Điều khiển học, Tập 17, số 4, 2001, tr. 57-65.

[4] Nguyễn Thị Thanh Tân, Ngô Quốc Tạo, “Một cấu trúc mạng nơ ron thích hợp cho việc nhận dạng chữ số viết tay”, Kỷ yếu hội thảo FAIR03, NXB KH&KT Hà Nội, 2004, tr. 200-210.

[5] Nguyễn Thị Thanh Tân, Lương Chi Mai, “Phương pháp nhận dạng từ viết tay dựa trên mô hình mạng nơ ron kết hợp với thống kê từ vựng”, Tạp chí Tin học và Điều khiển học, Tập 22, số 2, 2006, tr. 141-154.

[5.1]. Phạm Anh Phương, Ngô Quốc Tạo, Lương Chi Mai, “Ứng dụng SVM cho bài toán phân lớp nhận dạng”, Kỷ yếu Hội thảo khoa học Quốc gia lần thứ ba về nghiên cứu, phát triển và ứng dụng Công nghệ thông tin và Truyền thông (ICT.rda’06), nhà xuất bản Khoa học và Kỹ thuật, Hà nội, trang 393-400, 20-21/05/2006.

[5.2]. Phạm Anh Phương, Ngô Quốc Tạo, Lương Chi Mai, “Trích chọn đặc trưng wavelet Haar kết hợp với SVM cho việc nhận dạng chữ viết tay tiếng Việt”, Tạp chí Công nghệ Thông tin và Truyền thông, ISSN 0866-7039, kỳ 3, số 20, 10-2008, tr 36-42.

[5.3]. Phạm Anh Phương, “Áp dụng một số chiến lược SVM đa lớp cho bài toán nhận dạng chữ viết tay hạn chế”, Tạp chí khoa học Đại học Huế, ISSN 1859-1388, số 45, 2008, tr. 109-118.

[5.4]. Nguyễn Thị Thanh Tân, Lương Chi Mai, “Phương pháp nhận dạng từ viết tay dựa trên mô hình mạng nơ ron kết hợp với thống kê từ vựng”, Tạp chí Tin học và Điều khiển học, Tập 22, số 2, 2006, tr. 141-154.

Tiếng Anh

[6] T.Fujisaki, H.S.M.Beigi, C.C.Tappert, M.Ukelson and C.G.Wolf, “Online Recognition of Unconstrained Handprinting: A stroke-based”, From Pixels Features III: Frontiers in Handwriting Recognition, S.Impedovo and J.C.Simon (eds.), 1992, pp. 297-312.

Page 48: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

[7] J.C.Simon and O.Baret, “Cursive Words Recognition”, From Pixels Features III: Frontiers in Handwriting Recognition, S.Impedovo and J.C.Simon (eds.), 1992, pp. 241-260.

[8] J.J.Hull, J.Favata, V.Govindaraju and S.N.Srihari, “Combination of segmentation-based and Wholistic Handwritten Word Recognition Algorithms”, From Pixels Features III: Frontiers in Handwriting Recognition, S.Impedovo and J.C.Simon (eds.), 1992, pp. 261-272.

[9] V. N. Vapnik, “The Nature of Statistical Learning Theory”, Springer Verlag, 1995.

[10] V. N. Vapnik, “Statistical Learning Theory”, N. Y.: John Wiley & Sons, 1998.

[11] J. Friedman., “Another Approach to Polychotomous Classifications”, Technical report, Stanford university, US, 1996.

[12] Christopher J. C. Burges, “A Tutorial on Support Vector Machines for Pattern Recognition”, Data Mining and Knowledge Discovery, ISSN:1384-5810, Vol. 2, No. 2, 1998, pp. 121-167.

[13] J. Platt, “Fast Training of Support Vector Machines Using Sequential Minimal Optimization”, In Advences in Kernel Methods - Support Vector Learning, pp. 185-208, Cambridge, M.A, 1999, MIT Press.

[14] Nello Cristianini and John Shawe-Taylor, “An Introduction to Support Vector Machines and other kernel-based learning methods”, Cambridge University Press, 2000.

[15] J. Platt, N. Cristianini and J. Shawe-Taylor, “Large Margin DAGs for Multiclass Classification”, In Advances in Neural Information Processing Systems, volume 2, pp. 547-553, 2000.

[16] T. Joachims, “Making large-Scale Support Vector Machine Learning Practical”, in Advances in Kernel Methods - Support Vector Learning, B. Schölkopf and C. Burges and A. Smola (ed.), MIT-Press, Cambridge, MA, 1998.

[17] R. Collobert and S. Bengio, “Svmtorch: Support Vector Machines for Large-scale Regression Problems”, The Journal of Machine Learning Research, Vol. 1, 2001, pp 143 – 160.

[18] J. X. Dong, A. Krzyzak and C. Y. Suen, “A Fast SVM Training Algorithm”, International Journal of Pattern Recognition and Artificial Intelligence, vol. 17, no. 3, 2003, pp. 367 – 384.

Page 49: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

[19] Chih-Chung Chang and Chil-Jen Lin, “LIBSVM: a Library for Support Vector Machines”, National Taiwan University, 2004.

[20] Nguyen, D.D., Ho, T.B., A Bottom-up Method for Simplifying Support Vector Solutions, IEEE Transactions on Neural Networks, Vol.17, No. 3, 2006, pp. 792-796.

[21] Viola, P., Jones, M., “Rapid object detection using a boosted cascade of simple features”, Proc. Intl. Conf. on Computer Vision and Pattern Recognition (CVPR), Volume 1, pp. 511–518 , 2001.

[22] Gorgevik D., Cakmakov D., “An Efficient Three-Stage Classifier for Handwritten Digit Recognition”, Proceedings of 17 Int. Conference on Pattern Recognition, ICPR2004th, Vol. 4, pp. 507-510, IEEE Computer Society, Cambridge, UK, 23-26 August 2004.

[23] Cakmakov D., Gorgevik D., “Handwritten Digit Recognition Using Classifier Cooperation Schemes”, Proceedings of the 2nd Balkan Conference in Informatics, BCI 2005, pp. 23-30, Ohrid, November 17-19, 2005.

[24] G. Vamvakas, B. Gatos, I. Pratikakis, N. Stamatopoulos, A. Roniotis and S.J. Perantonis, "Hybrid Off-Line OCR for Isolated Handwritten Greek Characters", The Fourth IASTED International Conference on Signal Processing, Pattern Recognition, and Applications (SPPRA 2007), ISBN: 978-0-88986-646-1, Innsbruck, Austria, February 2007, pp. 197-202.

[25] Ngo Quoc Tao, Pham Van Hung, “Online Continues Vietnamese Handwritten Character Recognition based on Microsoft Handwritten Character Recognition Library”, IEEE Asia Pacific Conference on Circuits and Systems, APCCAS 2006, Singapore, pp. 2024-2026.

[26] Sergios Theodoridis and Konstantinos Koutroumbas, “Pattern Recognition”, Academic Press, 2006.

[27] Robert A. Dunne, “A Statistical Approach to Neural Networks for Pattern”, N. Y.: John Wiley & Sons, 2007.

[28] Mohamed Cheriet, Nawwaf Kharma, Cheng-Lin Liu And Ching Y. Suen, “Character Recognition Systems: A Guide for Students and Practioners”, N. Y.: John Wiley & Sons, 2007.

[29] S. S. Wang, P. C. Chen, W. G. Lin, “Invariant Pattern Recognition by Moment Fourier Descriptor”, Pattern Recognition, vol.27, pp.1735-1742, 1994.

[30] X. Zhu, Y. Shi, S. Wang, “A New Algorithm of Connected Character Image Based on Fourier Transform”, in Proc. 5th Int. Conf. Document Analysis and Recognition, pp.788-791, Bangalore, India, 1999.

[31] S. W. Lee, Y. J. Kim, “Multiresolutional Recognition of Handwritten Numerals with Wavelet Transform and Multilayer Cluster Neural Network”,

Page 50: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

in Proc. 3rd Int. Conf. Document Analysis and Recognition, pp.1010-1014, Montreal, Canada, 1995.

[32] T. Shioyama, H. Y. Wu, T. Nojima, “Recognition Algorithm Based On Wavelet Transform For Handprinted Chinese Characters”, in Proc. 14th Int. Conf. Pattern Recognition, vol.1, pp.229-232, 1998.

[33] Y. C. Chim, A. A. Kassim, Y. Ibrahim, “Character Recognition Using Statistical Moments”, Image and Vision Computing, vol.17, pp.299-307, 1999.

[34] D. Trier, A. K. Jain, T. Taxt, “Feature Extraction Method for Character Recognition - A Survey”, Pattern Recognition, vol.29, no.4, pp.641-662, 1996.

[35] N. Arica, F. T. Yarman Vural, “One Dimensional Representation Of Two Dimensional Information For HMM Based Handwritten Recognition”, Pattern Recognition Letters, vol.21 (6-7), pp.583-592, 2000.

[36] H. Bunke, M. Roth, E. G. Schukat-Talamazzani, “Off-line Recognition of Cursive Script Produced by Cooperative Writer”, in Proc. 12th Int.Conf. Pattern Recognition, pp. 146-151, Jerusalem, Israel, 1994.

[37] H. Nishida, “Structural Feature Extraction Using Multiple Bases”, Computer Vision and Image Understanding, vol.62 no1, pp. 78-89, July 1995.

[38] M. Cote, E. Lecolinet, M. Cheriet, C. Y. Suen, “Reading of Cursive Scripts Using A Reading Model and Perceptual Concepts, The PERCEPTO System”, Int. Journal Document Analysis and Recognition, vol.1, no.1, pp.3-17, 1998.

[39] A. Kundu, Y. He, “On optimal Order in Modeling Sequence Of Letters in Words Of Common Language As a Markov Chain”, Pattern Recognition, vol.24, no.7, pp.603 - 608, 1991.

[40] M. Okamoto, K. Yamamoto, “On-line Handwriting Character Recognition Method with Directional Features and Direction Change Features”, in Proc. 4th Int. Conf. Document Analysis and Recognition, pp.926-930, Ulm, Germany, 1997.

[41] J. Rocha, T. Pavlidis, “A Shape Analysis Model”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.16, no.4, pp.394-404, 1994.

[42] D. Guillevic, C. Y. Suen, “HMM-KNN Word Recognition Engine for Bank Cheque Processing”, in Proc. 14th Int. Conf. Pattern Recognition, pp. 1526-1529, Brisbane, Australia, 1998.

[43] M. Sekita, K. Toraichi, R. Mori, K. Yamamoto, H. Yamada, “Feature Extraction of Handwritten Japanese Characters by Spline Functions for Relaxation Matching”, Pattern Recognition, vol.21, no.1, pp. 9-17, 1988.

Page 51: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

[44] W. Lu, Y. Ren, C. Y. Suen, “Hierarchical Attributed Graph Representation and ecognition of Handwritten Chinese Characters”, Pattern Recognition, vol. 24, no.7, pp. 617-632, 1991.

[45] S. Madhvanath, E. Kleinberg, V. Govindaraju, S. N. Srihari, “The HOVER System for Rapid Holistic Verification of Off-line Handwritten Phrases”, in

Proc. 4th Int. Conf. Document Analysis and Recognition, pp.855-890, Ulm, Germany,1997.

[46] S. W. Lee, Y. J. Kim, “Direct Extraction of Topographic Features for Gray Scale Character Recognition”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.17, no.7, pp.724-729, 1995.

[47] M. Bokser, “Omnifont Technologies”, Proc. of the IEEE, vol.80, no.7, pp.1066-1078, 1992.

[48] I. Guyon, F. Pereira, “Design of a Linguistic Postprocessor Using Variable Memory Length Markov Models”, in Proc. 3rd Int. Conf.Document Analysis and Recognition, pp.454-457, Montreal, Canada, 1995.

[49] A. Kornai, K. M. Mohiuddin, S. D. Connell, “Recognition of Cursive Writing on Personal Checks”, in Proc. Int. Workshop Frontiers in Handwriting Recognition, pp. 373-378, Essex, 1996.

[50] P. D. Gader, B. Forester, M. Ganzberger, A. Gillies, B. Mitchell, M.Whalen, and T. Yocum, “Recognition of Handwritten Digits Using Template and Model Matching”, Pattern Recognition, vol.24, no.5, pp.421-431, 1991.

[51] D. Tubbs, “A Note on Binary Template Matching”, Pattern Recognition, vol.22, no.4, pp.359 - 365, 1989.

[52] A. K. Jain, D. Zongker, “Representation and Recognition of Handwritten Digits Using Deformable Templates”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.19, no.12, pp.1386-1391, 1997.

[53] J. Hu, T. Pavlidis, “A Hierarchical Approach to Efficient Curvilinear Object Searching”, Computer Vision and Image Understanding, vol.63(2), pp. 208-220, 1996.

[54] C. C. Tappert, “Cursive Script Recognition by Elastic Matching”, IBM Journal of Research and Development, vol.26, no.6, pp.765-771, 1982.

[55] Keith E. Price, “Relaxation Matching Techniques Comparison”, IEEETrans. Pattern Analysis and Machine Intelligence, vol.7, no.5, pp. 617-623, 1985.

[56] M. Shridhar, A. Badreldin, “High Accuracy Syntactic Recognition Algorithm for Handwritten Numerals”, IEEE Trans. Systems Man and Cybernetics,

Page 52: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

vol.15, no.1, pp.152 - 158, 1985.

[57] M. Tayli, A I. Ai-Salamah, “Building Bilingual Microcomputer System” Communications of the ACM, vol.33, no.5, pp.495-504, 1990.

[58] T. Pavlidis, “Recognition of Printed Text under Realistic Conditions”, Pattern Recognition Letters, pp. 326, 1993.

[59] W. H. Tsai, K.S.Fu, “Attributed Grammar- A Tool for Combining Syntactic and Statistical Approaches to Pattern Recognition”, IEEE Trans. System Man and Cybernetics, vol.10, no.12, pp. 873-885, 1980.

[60] A. W. Senior, A. J. Robinson, “An Off-Line Cursive Handwriting Recognition”, IEEE Trans. Pattern Recognition and Machine Intelligence, vol.20, no.3, pp. 309-322, 1998.

[61] D. Bouchaffra, V. Govindaraju, S. N. Srihari, “Postprocessing of Recognized Strings Using Nonstationary Markovian Models”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.21, no.10, pp. 990-999, 1999.

[62] H. Y. Kim, J. H. Kim, “Handwritten Korean Character Recognition Based on Hierarchical Random Graph Modeling”, in Proc. Int. Workshop Frontiers in Handwriting Recognition, pp. 577-586, Korea, 1998.

[63] W. Lu, Y. Ren, C. Y. Suen, “Hierarchical Attributed Graph Representation and Recognition of Handwritten Chinese Characters”, Pattern Recognition, vol. 24, no.7, pp. 617-632, 1991.

[64] H. D. Block, B. W. Knight, F. Rosenblatt, “Analysis of A Four Layer Serious Coupled Perceptron”, II. Rev. Modern Physics, vol.34, pp.135-152, 1962.

[65] I. S. Oh, J. S. Lee, S. M. Choi, K. C. Hong, “Class-expert Approach to Unconstrained Handwritten Numeral Recognition”, in Proc.5th Int. Workshop Frontiers in Handwriting Recognition, pp. 95-102, Essex, England, 1996.

[66] L. F. C. Pessoa, P. Maragos, “Neural Networks with Hybrid Morphological/Rank/Linear Nodes: A Unifying Framework with Applications to Handwritten Character Recognition”, Pattern Recognition, vol.33, pp. 945-960, 2000.

[67] T. Kohonen, “Self Organizing Maps”, Springer Series in Information Sciences, vol.30, Berlin, 1995.

[68] S. Smith, M. Borgoin, K. Sims, H. Voorhees, “Handwritten Character Classification Using Nearest Neighbor in Large Databases”, IEEE Trans. Pattern Recognition and Machine Intelligence, vol.16, no.9, pp. 915-919, 1994.

[69] S. O. Belkasim, M. Shridhar, M. Ahmadi, “Pattern Recognition with Moment Invariants: A comparative Survey”, Pattern Recognition, vol.24, no.12, pp.

Page 53: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

1117-1138, 1991.

[70] Rabiner L.R - "A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition" - Proceedings of IEEE, VOL.77, NO.2, FEB 1989, pp. 257-286.

[71] M. Y. Chen, A. Kundu, J. Zhou, “Off-line Handwritten Word Recognition Using a Hidden Markov Model Type Stochastic Network”, IEEE Trans. Pattern Recognition and Machine Intelligence, vol.16, pp.481-496, 1994.

[72] M. Y. Chen, A. Kundu, S. N. Srihari, “Variable Duration Hidden Markov Model and Morphological Segmentation for Handwritten Word Recognition”, IEEE Trans. Image Processing, vol.4, pp.1675-1688, 1995.

[73] A. Kornai, K. M. Mohiuddin, S. D. Connell, “An HMM-Based Legal Amount Field OCR System For Checks”, IEEE Trans, Systems, Man and Cybernetics, pp. 2800-2805, 1995.

[74] M. A. Mohamed, P. Gader, “Generalized Hidden Markov Models – Part II: Application to Handwritten Word Recognition”, IEEE Trans. Fuzzy Systems, vol.8, no.1, pp.82-95, 2000.

[75] M. A. Mohamed, P. Gader, “Handwritten Word Recognition Using Segmentation-Free Hidden Markov Modeling and Segmentation Based Dynamic Programming Techniques”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.18, no.5, pp.548-554, 1996.

[76] M. Nakagava, T. Oguni, A. Homma, “A coarse classification of on-line handwritten characters” in Proc. 5th Int. Workshop Frontiers in Handwriting Recognition, pp. 417-420, Essex, England, 1996.

[77] S. Gopisetty, R. Lorie, J. Mao, M. Mohiuddin, A. Sorin, E. Yair, “Automated forms-processing Software and Services”, IBM Journal of Research and Development, vol. 40, no. 2, pp.211-230, 1996.

[78] J. Park, V. Govindaraju, S. N. Srihari, “OCR in A Hierarchical Feature Space”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.22, no.4, pp.400-407, 2000.

[79] H. Drucker, R. Schapire, P. Simard, “Improving Performance in Neural Networks Using a Boosting Algorithm” in Advances in NIPS, S. J. Hanson, J. Cowan, L. Giles, Eds. Morgan Kaufmann, 1993, pp.42-49.

[80] L. Lam C. Y. Suen, “Increasing Experts for Majority Vote in OCR: Theoretical Considerations and Strategies”, in Proc. Int. Workshop Frontiers in Handwriting Recognition, pp. 245-254, Taiwan, 1994.

[81] H. J. Kang, S. W. Lee, “Combining Classifiers based on Minimization of a Bayes Error Rates”, in Proc. 5th Int. Conf. Document Analysis and

Page 54: LUẬN VĂN TỐT NGHIỆP CHUYÊN NGÀNHdulieu.tailieuhoctap.vn/books/luan-van-de-tai/luan-van... · Web viewBước 1: Chọn lớp i=2 là lớp bắt đầu Bước 2: Chọn

Recognition, pp.398-401, Bangalore, India, 1999.

[82] Y. Tang, L. T. Tu, J. Liu, S. W. Lee, W. W. Lin, I. S. Shyu, “Off-line Recognition of Chinese Handwriting by Multifeature and Multilevel

Classification”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.20, no.5, pp.556-561, 1998.

[83] R. M. Bozinovic, S. N. Srihari, “Off-line Cursive Script Word Recognition”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.11, no.1, pp.68-83, 1989.

[84] C. J. C. Burges, “Simplified support vector decision rules”, Proc. 13th International Conference on Machine Learning, San Mateo, CA, 1996, pp. 71–77.

[85] Osuma E., Freund R., Girosi F., An Improved Training Algorithm for Support Vector Machines, Proc IEEE NNSP ’97, 1997, pp. 276-285.

[86] B. Schoelkopf, S. Mika, C. J. C. Burges, P. Knirsch, K. Muller, G. Ratsch and A. J. Smola, “Input space versus feature space in kernel-based methods”, IEEE Trans. Neural Networks, vol. 10, no. 5, pp. 1000-1017, 1999.

[86]. Chih-Chung Chang and Chil-Jen Lin, “LIBSVM: a Library for Support Vector Machines”, National Taiwan University, 2004.

[87]. Gorgevik D., Cakmakov D., “An Effcient Three-Stage Classifer for Handwritten Digit Recognition”, Proceedings of 17th Int. Conference on Pattern Recognition, ICPR2004, Vol. 4, pp. 507-510, IEEE Computer Society, Cambridge, UK, 23-26 August 2004.

[88]. G. Vamvakas, B. Gatos, I. Pratikakis, N. Stamatopoulos, A. Roniotis and S.J. Perantonis, "Hybrid Off-Line OCR for Isolated Handwritten Greek Characters", The Fourth IASTED International Conference on Signal Processing, Pattern Recognition, and Applications (SPPRA 2007), pp. 197-202, ISBN: 978-0-88986-646-1, Innsbruck, Austria, February 2007.

[89]. Pham Anh Phuong, Ngo Quoc Tao, Luong Chi Mai, “An Effcient Model for Isolated Vietnamese Handwritten Recognition”, The Fourth International Conference on Intelligent Information Hiding and Multimedia Signal Processing (IIH-MSP 2008), Harbin, China, August 15 - 17, 2008, pp. 358-361.

[90]. Li Minh Fu. Neural Networks in Computer Intelligence, Mc. Graw-Hill, Inc.

International Edittions,1994