đồ án tốt nghiệp sử dụng mạng nơ ron nhận dạng ký tự - Pdf 26


ĐẠI HỌC GIAO THÔNG VẬN TẢI
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN MẠNG VÀ CÁC HỆ THỐNG THÔNG TIN
o0o ĐỒ ÁN TỐT NGHIỆP
Đề tài:

SỬ DỤNG MẠNG NƠ-RON NHẬN DẠNG KÝ TỰ Giáo viên hƣớng dẫn
:
TS. Đặng Thị Thu Hiền
Sinh viên thực hiện
:
Nguyễn Thị Quyên

Lớp
:
Hệ thống thông tin
Khóa
:
49
1.4.1. Các phương pháp học: 20
1.4.2. Học có giám sát trong mạng nơ-ron: 22
1.4.3. Thuật toán học: 22
1.4.3.1. Thuật toán học của mạng nơ-ron truyền thẳng một lớp: 22
1.4.3.2. Thuật toán học của mạng nơ-ron nhiều lớp: 24
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 3

1.4.3.3. Một số yếu tố ảnh hưởng đến quá trình học theo phương pháp lan truyền
ngược sai số: 30
1.4.3.4. Một số hạn chế của phương pháp lan truyền ngược: 31
1.5 Thu thập dữ liệu cho mạng nơ-ron: 32
1.6 Biểu diễn tri thức cho mạng nơ-ron: 33
CHƢƠNG 2: ỨNG DỤNG MẠNG NƠ-RON TRONG NHẬN DẠNG KÝ TỰ 36
2.1 Sơ lƣợc: 36
2.2 Bài toán nhận dạng ký tự: 36
2.3 Các bƣớc giải quyết bài toán nhận dạng ký tự: 37
2.3.1. Xác định đầu vào và đầu ra của bài toán: 37
2.3.2. Xác định cấu trúc mạng nơ-ron: 37
2.3.3. Thuật toán huấn luyện mạng: 39
2.3.4. Xử lý dữ liệu: 42
2.3.4.1. Tách dòng ký tự: 42
2.3.4.2. Tách ký tự: 43
2.3.4.3. Tìm giới hạn ký tự: 45
2.3.4.4. Ánh xạ vào ma trận: 47
2.3.5. Huấn luyện mạng nơ-ron: 49
2.3.6. Nhận dạng ảnh kí tự: 53
CHƢƠNG 3: CÀI ĐẶT CHƢƠNG TRÌNH THỰC NGHIỆM 55
3.1 Giao diện chính của chƣơng trình: 55
3.2 Tổng quan về các chức năng chính của chƣơng trình: 55


Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 5

LỜI NÓI ĐẦU
Mạng nơ-ron 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ậ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 nơ-ron đều
có thể ứng dụng được. Ví dụ như khả năng 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,…Với sự phát triển
mạnh mẽ của công nghệ thông tin như hiện nay, ứng dụng của mạng nơ-ron nhân tạo
ngày càng được quan tâm và phát triển.
Một trong những ứng dụng cơ bản của mạng nơ-ron là nhận dạng ký tự. 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 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. Các
mạng nơ-ron nhân tạo đã ra đời từ những nỗ lực đó. 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 trong mục đích xây dựng các
máy thông minh tiến gần tới trí tuệ con người, đặc biệt là lĩnh vực nhận dạng.
Xuất phát từ những thực tiễn nói trên, cùng với sự giúp đỡ nhiệt tình của T.S Đặng Thị
Thu Hiền em đã thực hiện đồ án tốt nghiệp với đề tài: “Sử dụng mạng nơ-ron nhận
dạng ký tự”.
Mục đích, yêu cầu của đề tài: Nhận dạng các ký tự với đầu vào là định dạng file ảnh
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 7

CHƢƠNG 1: TỔNG QUAN VỀ MẠNG NƠ-RON
NHÂN TẠO
1.1 Sơ lƣợc về mạng Nơ-ron nhân tạo:
1.1.1. Lịch sử phát triển:
Sự phát triển của mạng nơ-ron trải qua cả quá trình đưa ra các khái niệm mới lẫn thực
thi những khái niệm này. Dưới đây là các mốc đáng chú ý trong lịch sử phát triển của
mạng nơ-ron:

khả năng giải quyết các bài toán khả phân tuyến tính. Họ cố gắng cải tiến luật
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 8

học và mạng để có thể vượt qua được hạn chế này nhưng họ đã không thành
công trong việc cải tiến luật học để có thể huấn luyện được các mạng có cấu trúc
phức tạp hơn.

 Do những kết quả của Minsky-Papert nên việc nghiên cứu về mạng nơ-ron gần
như bị đình lại trong suốt một thập kỷ do nguyên nhân là không có được các
máy tính đủ mạnh để có thể thực nghiệm.
 Mặc dù vậy, cũng có một vài phát kiến quan trọng vào những năm 70. Năm
1972, Teuvo Kohonen và James Anderson độc lập nhau phát triển một loại mạng
mới có thể hoạt động như một bộ nhớ. Stephen Grossberg cũng rất tích cực trong
việc khảo sát các mạng tự tổ chức (Self organizing networks).

 Vào những năm 80, việc nghiên cứu mạng nơ-ron phát triển rất mạnh mẽ cùng
với sự ra đời của PC. Có hai khái niệm mới liên quan đến sự hồi sinh này, đó là:
 Việc sử dụng các phương pháp thống kê để giải thích hoạt động của một
lớp các mạng hồi quy (recurrent networks) có thể được dùng như bộ nhớ
liên hợp (associative memory) trong công trình nghiên cứu của nhà vật lý
học Johh Hopfield.
 Sự ra đời của thuật toán lan truyền ngược (back-propagation) để huấn
luyện các mạng nhiều lớp được một vài nhà nghiên cứu độc lập tìm ra
như: David Rumelhart, James McCelland, Đó cũng là câu trả lời cho
Minsky-Papert.

1.1.2. Nơ-ron sinh học:
 Khớp nối ức chế (inhibitory) có tác dụng làm cản tín hiệu tới nơ-ron.

Người ta ước tính mỗi nơ-ron trong bộ não của con người có khoảng 104 khớp nối
(hình 1.1)
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 10 Hình 1.1 Cấu tạo của tế bào nơ-ron sinh học

Có thể tóm tắt hoạt động của một nơ-ron như sau: nơ-ron 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 nơ-ron 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 nơ-ron 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 nơ-ron.
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 nơ-ron càng nhiều, càng nhạy
bén.

1.1.3. Nơ-ron nhân tạo:
Nơ-ron 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 nơ-ron 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 nơ-ron.

Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 11


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 nơ-ron. 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 nơ-ron trong hình 1.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
w
2

w
k

w
1


x
0

x
1

b
0

x
n

f
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 13

Hàm này đặc biệt thuận lợi khi sử dụng cho các mạng được huấn luyện (trained) bởi
thuật toán Lan truyền ngược (back-propagation), bởi vì nó dễ lấy đạo hàm, do đó có
thể giảm đáng kể tính toán trong quá trình huấn luyện. Hàm này được ứng dụng cho
các chương trình ứng dụng mà các đầu ra mong muốn rơi vào khoảng [0,1].

Hình 1.5 Hàm sigmoid

4) Hàm sigmoid lưỡng cực (Bipolar sigmoid function (tansig)) :




=
1 

1 + 


Hàm này có các thuộc tính tương tự hàm sigmoid. Nó làm việc tốt đối với các ứng
dụng có đầu ra yêu cầu trong khoảng [-1,1]. Hình 1.6 Hàm sigmoid lưỡng lực

Các hàm chuyển của các đơn vị ẩn (hidden units) là cần thiết để biểu diễn sự phi


Mô hình mạng nơ-ron ở trên gồm 3 lớp: lớp vào (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 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 số 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.
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 15

1.2 Đặc trƣng của mạng nơ-ron:
1.2.1. Tính phi tuyến:
Một nơ-ron có thể tính toán một cách tuyến tính hay phi tuyến. Một mạng nơ-ron, cấu
thành bởi sự kết nối các nơ-ron 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.
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 nơ-ron, 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 nơ-ron 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 nơ-ron 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à

nêu ra điều này với cùng ý nghĩa cho tất cả các lĩnh vực có liên quan tới việc ứng dụng
mạng nơ-ron. Đặc tính này thể hiện ở một số điểm như sau:
 Các nơ-ron, 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 nơ-ron.
 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 nơ-ron.
 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.
1.3 Phân loại mạng nơ-ron:
Cách thức kết nối các nơ-ron trong mạng xác định kiến trúc (topology) của mạng. Các
nơ-ron trong mạng có thể kết nối đầy đủ (fully connected) tức là mỗi nơ-ron đều được
kết nối với tất cả các nơ-ron khác, hoặc kết nối cục bộ (partially connected) chẳng hạn
chỉ kết nối giữa các nơ-ron trong các tầng khác nhau. Người ta chia ra hai loại kiến trúc
mạng chính:
 Tự kết hợp (autoassociative): là mạng có các nơ-ron đầu vào cũng là các nơ-ron
đầu ra. Mạng Hopfield là một kiểu mạng tự kết hợp.

Hình 1.8 Mạng tự kết hợp
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 17

 Kết hợp khác kiểu (heteroassociative): là mạng có tập nơ-ron đầu vào và đầu ra
riêng biệt. Perceptron, các mạng Perceptron nhiều tầng (MLP: MultiLayer
Perceptron), mạng Kohonen, …thuộc loại này. Hình 1.9 Mạng kết hợp khác kiểu
Ngoài ra, nếu phân loại theo kiểu liên kết nơ-ron ta có: mạng nơ-ron truyền thẳng và
nơ-ron mạng qui hồi.
Kiến trúc truyền thẳng (feedforward architechture): là kiểu kiến trúc mạng không có


. +1
. hoặc
. -1

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

Hình 1.10 Mạng nơ-ron truyền thẳng 1 lớp hay Perceptron

Đầu ra của mạng được xác định như sau: mạng lấy tổng có trọng số các thành phần của
vector đầu vào, kết quả này cùng ngưỡng b được đưa vào hàm truyền (Perceptron dùng
hàm Hard-limit làm hàm truyền) và kết quả của hàm truyền sẽ là đầu ra của mạng. Hoạt
động của Perceptron có thể được mô tả bởi cặp công thức sau :
= 




=1

và y = f(u - b) = Hardlimit(u - b).
y nhận giá trị +1 nếu u - b>0, ngược lại y nhận giá trị -1.
Perceptron cho phép phân loại chính xác trong trường hợp dữ liệu có thể phân chia
tuyến tính (các mẫu nằm trên hai mặt đối diện của một siêu phẳng). Nó cũng phân loại
đúng đầu ra các hàm AND, OR và các hàm có dạng đúng khi n trong m đầu vào của nó
đúng (n ≤ m). Nó không thể phân loại được đầu ra của hàm XOR.
1.3.1.2 Mạng nơ-ron truyền thẳng nhiều lớp (MLP):

 Đầu ra của nơ-ron tầng trước là đầu vào của nơ-ron thuộc tầng liền sau nó.
Hoạt động của mạng MLP như sau: tại tầng đầu vào các nơ-ron nhận tín hiệu vào xử lý
(tính tổng trọng số, gửi tới hàm truyền) rồi cho ra kết quả (là kết quả của hàm truyền);
kết quả này sẽ được truyền tới các nơ-ron thuộc tầng ẩn thứ nhất; các nơ-ron tại đây
tiếp nhận như là tín hiệu đầu vào, xử lý và gửi kết quả đến tầng ẩn thứ 2…; quá trình
tiếp tục cho đến khi các nơ-ron thuộc tầng ra cho kết quả.
1.3.2 Mạng nơ-ron quy hồi:
Trái với mạng nơ-ron truyền thẳng, mạng nơ-ron quy hồi là những mô hình với hai
luồng dữ liệu có hướng. Trong khi mạng truyền thẳng truyền dữ liệu theo một đường
thẳng thì những mạng nơ-ron quy hồi có ít nhất một phản hồi từ những nơ-ron xử lý
sau quay trở lại các nơ-ron xử lý trước đó.
Đồ án tốt nghiệp Sử dụng mạng nơ-ron nhận dạng ký tự
Nguyễn Thị Quyên Trang 20 Hình 1.10 Mạng hồi quy không có nơ-ron ẩn và không có vòng lặp tự phản hồi

Hình 1.11 Mạng hồi quy có các nơ-ron ẩn
1.4 Huấn luyện mạng nơ-ron:
1.4.1. Các phƣơng pháp học:
Mạng nơ-ron 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.
Khái niệm: Học là quá trình thay đổi hành vi của các vật theo một cách nào đó làm cho
chúng có thể thực hiện tốt hơn trong tương lai.

Trích đoạn Xác định cấu trúc mạng nơ-ron: Tách dòng ký tự: Tách ký tự: Ánh xạ vào ma trận: Thực nghiệm tính một vài tham số đầu vào:
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status