1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo nghiên cứu khoa học nhận dạng ký tự quang học

74 592 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 74
Dung lượng 2,25 MB

Nội dung

Mục đích chọn đề tài: Mục đích của đề tài nghiên cứu này là tạo ra một nguồn tài liệu cơ sở trong lĩnh vựcnhận dạng ký tự, từ đó có cái nhìn tổng quan về phương thức thực hiện hay các v

Trang 1

Mặc dù đã rất cố gắng, song đề tài nghiên cứu vẫn còn nhiều thiết sót, nhóm nghiên cứu đề tài rất mong được nhận được những ý kiến của các thầy cô để đề tài nghiên cứu được hoàn thiện hơn nữa.

Em xin chân thành cảm ơn !

Trang 2

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Giáo viên hướng dẫn

Nguyễn Văn Thắng

Trang 3

MỤC LỤC

PHẦN MỞ ĐẦU 5

I Lý do chọn đề tài: 5

II Mục đích chọn đề tài: 5

III Nhiệm vụ nghiên cứu: 6

IV Phương pháp nghiên cứu: 6

V Bố cục bài báo cáo 6

Chương 1: TỔNG QUAN CƠ SỞ LÝ THUYẾT 7

I XỬ LÝ ẢNH VÀ CÁC KHÁI NIỆM CƠ BẢN TRONG XỬ LÝ ẢNH 7

1.1 Xử lý ảnh 7

1.2 Các khái niệm cơ bản trong xử lý ảnh 7

II TỔNG QUAN VỀ MẠNG NƠ RON NHÂN TẠO 11

2.1 TỔNG QUAN 11

2.2 CÁC TÍNH CHẤT CỦA MẠNG NƠ RON NHÂN TẠO 12

2.3 MÔ HÌNH NƠ RON 12

2.3.1.Mô hình nơ ron sinh học 12

2.3.2 Mạng nơ ron nhân tạo 13

2.3.3 Mô hình toán học mạng nơ ron truyền thẳng và mạng nơ ron hồi quy 21

2.4.QUÁ TRÌNH HUẤN LUYỆN MẠNG NHIỀU LỚP 26

2.4.1.Quá trình thực hiện 27

2.4.2.Qui tắc chuỗi 28

2.4.3 Độ chính xác của thuật toán lan truyền ngược 29

2.4.4 Một số biến thể của thuật toán lan truyền ngược 30

2.4.5 Nhận xét 35

2.4.6 Các thuật toán tối ưu khác 37

Chương 2: MÔ HÌNH NHẬN DẠNG KÝ TỰ QUANG HỌC 39

Một mô hình OCR tiêu biểu: 39

1.THU NHẬN ẢNH KÝ TỰ 39

2.TIỀN XỬ LÝ 39

2.1 Các loại nhiễu phổ biến và phương pháp lọc nhiễu 39

2.1.1 Các loại nhiễu phổ biến 39

Trang 4

2.1.2 Phương pháp lọc nhiễu 40

2.2.Nhị phân ảnh 40

2.3.PHÁT HIỆN GÓC NGHIÊNG VĂN BẢN 42

2.3.1 Tổng quan 42

2.3.2 Giới thiệu 43

3.PHÂN TÍCH ẢNH TÌM KÝ TỰ 45

3.1.Tách dòng văn bản 45

3.2.Tách từ văn bản 47

3.3.Tách ký tự văn bản 49

3.4.Tách thành phần ký tự 54

4.MẠNG NORON NHẬN DẠNG ẢNH KÝ TỰ 55

Chương 3: CHƯƠNG TRÌNH DEMO VÀ KẾT LUẬN 58

I.CHƯƠNG TRÌNH DEMO 58

II KẾT LUẬN 58

Chương 4: HƯỚNG PHÁT TRIỂN ĐỀ TÀI 60

1 NHẬN DẠNG CÔNG VĂN TIẾNG VIỆT 60

1.1 MÔ TẢ PHƯƠNG PHÁP 60

1.2 Tách khối theo chiều ngang 60

1.3 Tách khối theo chiều dọc 64

1.4.Tách khối theo chiều ngang lần 2 65

2 NHẬN DẠNG BIỂN SỐ XE 67

2.1.Mở đầu 67

2.2 Các giai đoạn nhân dạng biển số xe 67

3 NHẬN DẠNG CHỮ VIẾT TAY 69

3.1 Chuẩn hóa ảnh theo vùng liên thông 69

3.2 Phân nhóm sơ bộ 70

3.3 Trích chọn đặc trưng 71

2.4.Xây dựng các máy phân lớp SVM 72

TÀI LIỆU THAM KHẢO 73

Trang 5

PHẦN MỞ ĐẦU

I Lý do chọn đề tài:

Nhận dạng ký tự quang học - Optical Character Recognition (OCR) là một trongnhững đề tài nghiên cứu vô cùng hấp dẫn, có nhiều ứng dụng thực tiễn trong cuộcsống, đặc biệt nhận dạng ký tự quang học là một trong những ứng dụng thực tiễn đógiúp giảm thiểu thời gian công sức cho con người trong việc chuyển đổi ảnh scan, ảnhchụp tài liệu thành dạng văn bản

Trên thế giới, một số sản phẩm nổi tiếng về nhận dạng chữ Latin đã được thương mạihoá trên thị trường như : OMNIPAGE 8.0, 9.0 (phiên bản gần nhất) của hãng CaereCorporation, Mỹ, RECOGNITA 5.0 của Recognita Corporation of Hunggary,CURNEIFORM 3.0, của Cognitive Technology Corporation, Mỹ, TexBridge Pro 96của Xerox Corporation, IMAG-IN 4.0 (Pháp), và ABBYY - một hãng công nghệ hàngđầu trên thế giới về lĩnh vực nhận dạng ký tự quang học đã tiến hành nghiên cứu vàtriển khai công nghệ nhận dạng Tiếng Việt vào tháng 4 năm 2009

Trong nước, tiêu biểu có phần mềm nhận dạng chữ Việt in – VnDOCR phần mềmthương mại của Phòng nhận dạng và Công nghệ tri thức của Viện công nghệ thông tinViệt Nam đã đoạt giải nhất cuộc thi Giải thưởng thi sản phẩm CNTT 98, đã đượcnhiều tổ chức, cơ quan, cá nhân sử dụng Hiện tại, phiên bản mới nhất của phần mềm

Ngoài ra, còn có một dự án OCR Tiếng Việt có tên VietOCR, được phát triển dựa trênnền tảng mã nguồn mở tesseract-ocr do Google tài trợ VietOCR có khả năng nhậndạng chữ Việt khá tốt Đây là một chương trình nguồn mở Java/.NET, hỗ trợ nhậndạng cho nhiều định dạng ảnh

Từ những sản phẩm trên có thể thấy vấn đề xử lý chữ in nói chung hay chữ in Tiếngviệt nói riêng được giải quyết Nhưng, đề tài này đối với sinh viên chuyên ngành Côngnghệ thông tin còn chưa được nghiên cứu rộng khắp, chưa thực sự quan tâm tới lĩnhvực nhận dạng, một trong những lĩnh vực có vô vàn ứng dụng thực tiễn trong đời sống

II Mục đích chọn đề tài:

Mục đích của đề tài nghiên cứu này là tạo ra một nguồn tài liệu cơ sở trong lĩnh vựcnhận dạng ký tự, từ đó có cái nhìn tổng quan về phương thức thực hiện hay các vấn đềgặp phải trong bài toán nhận dạng ký tự, kích thích sự đam mê và khả năng nghiên cứukhoa học của sinh viên nhằm phát triển được nhiều ứng dụng thực tiễn hơn nữa liênquan tới ký tự chữ in như: Nhận dạng CMTND, hộ chiếu, biển số xe

Trang 6

III Nhiệm vụ nghiên cứu:

 Nghiên cứu những khái niệm, những vấn đề gặp phải và đưa ra giải phápcủa quá trình xử lý ảnh ký tự, một trong những bước quan trọng của quátrình nhận dạng

 Nghiên cứu những vấn đề xoay quanh một phương pháp nhận dạng đượcđánh giá cao - mạng noron Trên cơ sở đó tiến hành xây dựng mạng noronphù hợp với nhận dạng ký tự

 Thực hiện cài đặt chương trình nhận dạng ký tự quang học

IV Phương pháp nghiên cứu:

 Phương pháp nghiên cứu chủ yếu là tham khảo tài liệu, bài viết liên quan tớinhận dạng ký tự quang học

 Tìm nguồn tài liệu trên Internet, sách báo liên quan

 Nghiên cứu ngôn ngữ c# để tiến hành cài đặt chương trình nhận dạng ký tự

V Bố cục bài báo cáo

Báo cáo được chia thành 3 chương:

Chương 1: Tổng quan cơ sở lý thuyết.

Chương này giới thiệu những kiến thức cơ bản về xử lý ảnh có liên quan

và lý thuyết về mạng mạng noron nhân tạo

Chương 2: Mô hình nhận dạng ký tự quang học.

Chương này trình bày về mô hình nhận dạng ký tự quang học tiêu biểu, các bước thực hiện được trình bày chi tiết về cách thức tiếp cận, vấn đề gặp phải và ý tưởng thực hiện

Chương 3: Hướng phát triển đề tài và kết luận.

Trang 7

XỬ LÝ ẢNH Ảnh

Ảnh

“Tốt hơn”

Kết luận

Chương 1: TỔNG QUAN CƠ SỞ LÝ THUYẾT

I XỬ LÝ ẢNH VÀ CÁC KHÁI NIỆM CƠ BẢN TRONG XỬ LÝ ẢNH 1.1 Xử lý ảnh

Con người thu nhận thông tin qua các giác quan, trong đó thị giác đóng vai tròquan trọng nhất Những năm trở lại đây với sự phát triển của phần cứng máy tính, xử

lý ảnh và đồ hoạ đó phát triển một cách mạnh mẽ và có nhiều ứng dụng trong cuộcsống Xử lý ảnh và đồ hoạ đóng một vai trò quan trọng trong tương tác người máy.Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho rakết quả mong muốn Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh “tốthơn” hoặc một kết luận

Hình 1.2: Quá trình xử lý ảnh

Ảnh có thể xem là tập hợp các điểm ảnh và mỗi điểm ảnh được xem như là đặctrưng cường độ sáng hay một dấu hiệu nào đó tại một vị trí nào đó của đối tượng trongkhông gian và nó có thể xem như một hàm n biến P(c1, c2, , cn) Do đó, ảnh trong xử

lý ảnh có thể xem như ảnh n chiều

1.2 Các khái niệm cơ bản trong xử lý ảnh

1.2.1 Một số khái niệm cơ bản

Có 2 loại nhiễu cơ bản trong quá trình thu nhận ảnh

 Nhiều hệ thống: là nhiễu có quy luật có thể khử bằng các phép biến đổi

 Nhiễu ngẫu nhiên: vết bẩn không rõ nguyên nhân  khắc phục bằng các phéplọc

Trang 8

 Tăng số mức xám: Thực hiện nội suy ra các mức xám trung gian bằng kỹthuật nội suy Kỹ thuật này nhằm tăng cường độ mịn cho ảnh.

1.2.4 Phân tích ảnh:

Là khâu quan trọng trong quá trình xử lý ảnh để tiến tới hiểu ảnh Trong phântích ảnh việc trích chọn đặc điểm là một bước quan trọng Các đặc điểm của đối tượngđược trích chọn tuỳ theo mục đích nhận dạng trong quá trình xử lý ảnh Có thể nêu ramột số đặc điểm của ảnh sau đây:

Đặc điểm không gian: Phân bố mức xám, phân bố xác suất, biên độ, điểm uốn

v.v

Đặc điểm biến đổi: Các đặc điểm loại này được trích chọn bằng việc thực hiện

lọc vùng (zonal filtering) Các bộ vùng được gọi là “mặt nạ đặc điểm” (feature mask)thường là các khe hẹp với hình dạng khác nhau (chữ nhật, tam giác, cung tròn v.v )

Đặc điểm biên và đường biên: Đặc trưng cho đường biên của đối tượng và do

vậy rất hữu ích trong việc trích trọn các thuộc tính bất biến được dùng khi nhận dạngđối tượng Các đặc điểm này có thể được trích chọn nhờ toán tử gradient, toán tử labàn, toán tử Laplace, toán tử “chéo không” (zero crossing) v.v

Việc trích chọn hiệu quả các đặc điểm giúp cho việc nhận dạng các đối tượngảnh chính xác, với tốc độ tính toán cao và dung lượng nhớ lưu trữ giảm xuống

1.2.5 Nhận dạng

Nhận dạng tự động (automatic recognition), mô tả đối tượng, phân loại và phânnhóm các mẫu là những vấn đề quan trọng trong thị giác máy, được ứng dụng trongnhiều ngành khoa học khác nhau Tuy nhiên, một câu hỏi đặt ra là: mẫu (pattern) là gì?Watanabe, một trong những người đi đầu trong lĩnh vực này đã định nghĩa: “Ngược lạivới hỗn loạn (chaos), mẫu là một thực thể (entity), được xác định một cách ang áng(vaguely defined) và có thể gán cho nó một tên gọi nào đó” Ví dụ mẫu có thể là ảnhcủa vân tay, ảnh của một vật nào đó được chụp, một chữ viết, khuôn mặt người hoặcmột ký đồ tín hiệu tiếng nói Khi biết một mẫu nào đó, để nhận dạng hoặc phân loạimẫu đó có thể:

Hoặc phân loại có mẫu (supervised classification), chẳng hạn phân tích phân

biệt (discriminant analyis), trong đó mẫu đầu vào được định danh như một thành phầncủa một lớp đã xác định

Trang 9

Hoặc phân loại không có mẫu (unsupervised classification hay clustering) trong

đó các mẫu được gán vào các lớp khác nhau dựa trên một tiêu chuẩn đồng dạng nào

đó Các lớp này cho đến thời điểm phân loại vẫn chưa biết hay chưa được định danh

Hệ thống nhận dạng tự động bao gồm ba khâu tương ứng với ba giai đoạn chủ yếusau đây:

1o Thu nhận dữ liệu và tiền xử lý

2o Biểu diễn dữ liệu

3o Nhận dạng, ra quyết định

Bốn cách tiếp cận khác nhau trong lý thuyết nhận dạng là:

1o Đối sánh mẫu dựa trên các đặc trưng được trích chọn

2o Phân loại thống kê

3o Đối sánh cấu trúc

4o Phân loại dựa trên mạng nơ-ron nhân tạo

Trong các ứng dụng rõ ràng là không thể chỉ dùng có một cách tiếp cận đơn lẻ đểphân loại “tối ưu” do vậy cần sử dụng cùng một lúc nhiều phương pháp và cách tiếpcận khác nhau Do vậy, các phương thức phân loại tổ hợp hay được sử dụng khi nhậndạng và nay đã có những kết quả có triển vọng dựa trên thiết kế các hệ thống lai(hybrid system) bao gồm nhiều mô hình kết hợp

Việc giải quyết bài toán nhận dạng trong những ứng dụng mới, nảy sinh trongcuộc sống không chỉ tạo ra những thách thức về thuật giải, mà còn đặt ra những yêucầu về tốc độ tính toán Đặc điểm chung của tất cả những ứng dụng đó là những đặcđiểm đặc trưng cần thiết thường là nhiều, không thể do chuyên gia đề xuất, mà phảiđược trích chọn dựa trên các thủ tục phân tích dữ liệu

1.2.6 BIẾN ĐỔI HOUGH

1.2.6.1 Biến đổi Hongh cho đường thẳng

Bằng cách nào đó ta thu được một số điểm ảnh quan trong, vấn đề đặt ra là cầnphải kiểm tra xem các điểm có là đường thẳng hay không

Vì (xi, yi) i = 1, n thuộc đường thẳng nên y1 = ax1 + b, i = 1, n

 b = - xia + y1; i = 1, n

Như vậy, mỗi điểm (xi; yi) trong mặt phẳng sẽ tương ứng với một số đường thẳng

b = - xia + yi trong mặt phẳng tham số a, b n điểm (xi; yi) i = 1, n thuộc đường thẳng

Trang 10

trong mặt phẳng tương ứng với n đường thẳng trong mặt phẳng tham số a, b giao nhautại 1 điểm và điểm giao chính là a, b Chính là hệ số xác định phương trình của đườngthẳng mà các điểm nằm vào

* Phương pháp:

- Xây dựng mảng chỉ số a, b và gán giá trị 0 ban đầu cho tất cả các phân tử củamảng

- Với mỗi (xi; yi) và a, b là chỉ số của phần tử mảng thoả mãn

b = - xia + yi tăng giá trị của phân tử mảng tương ứng lên 1

- Tìm phần tử mảng có giá trị lớn nhất nếu giá trị lớn nhất tìm được so với sốphân tử lớn hơn hoặc bằng ngưìng  cho trước thì ta có thể kết luận các điểm nằm trêncùng 1 đường thẳng và đường thẳng có phương trình

y = ax + b trong đó a, b tương ứng là chỉ số của phần tử mảng có giá trị lớn nhất tìmđược:

Ví dụ:

Cho 5 điểm (0, 1); (1, 3); (2, 5); (3, 5); (4, 9) và  = 80% Hãy kiểm tra xem 5điểm đã cho có nằm trên cùng một đường thẳng hay không? Hãy cho biết phương trìnhđường thẳng nếu có?

Trang 11

y 0

1.2.6.2 Biến đổi Hough cho đường thẳng trong tọa độ cực

Mỗi điểm (x,y) trong mặt phẳng được biểu diễn bởi cặp (r,) trong tọa độ cực.Tương tự mỗi đường thẳng trong mặt phẳng cũng có thể biểu diễn bởi một cặp(r,) trong tọa độ cực với r là khoảng cách từ gốc tọa độ tới đường thẳng đó và  làgóc tạo bởi trục 0X với đường thẳng vuông góc với nó, hình 5.9 biểu diễn đường thẳnghough trong tọa độ Decard

Ngược lại, mỗi một cặp (r,) trong toạ độ cực cũng tương ứng biểu diễm mộtđường thẳng trong mặt phẳng

Giả sử M(x,y) là mộ điểm thuộc đường thẳng được biểu diễn bởi (r,), gọiH(X,Y) là hình chiếu của gốc toạ độ O trên đường thẳng ta có:

X= r cos và Y= r.sin

Mặt khác, ta có:

Từ đó ta có mối liên hệ giữa (x,y) và (r,) như sau: x*cos+y*sin= r

Xét n điểm thẳng hàng trong tọa độ Đề các có phương trình x*cos0+y*sin0=r0 Biến đổi Hough ánh xạ n điểm này thành n đường sin trong tọa độ cực mà cácđường này đều đi qua (r0,0) Giao điểm (r0,0) của n đường sin sẽ xác định một đườngthẳng trong hệ tọa độ đề các Như vậy, những đường thẳng đi qua điểm (x,y) sẽ choduy nhất một cặp (r,) và có bao nhiêu đường qua (x,y) sẽ có bấy nhiêu cặp giá trị(r,)

II TỔNG QUAN VỀ MẠNG NƠ RON NHÂN TẠO

2.1 TỔNG QUAN

Mạng nơ ron nhân tạo (Artificial Neural Networks) là hệ thống được xây dựng dựatrên nguyên tắc cấu tạo của bộ não người Nó cho chúng ta một hướng mới trongnghiên cứu hệ thống thông tin Mạng nơ ron nhân tạo có thể thực hiện các bài toán:

Trang 12

Tính toán gần đúng các hàm số, thực hiện các bài toán tối ưu, nhận mẫu, nhận dạng

và điều khiển đối tượng hiệu quả hơn so với các phương pháp truyền thống

Mạng nơ ron nhân tạo có một số lượng lớn mối liên kết của các phần tử biến đổi cóliên kết song song Nó có hành vi tương tự như bộ não người với khả năng học( Learning ), gọi lại (Recall) và tổng hợp thông tin từ sự luyện tập của các tập mẫu dữliệu Các phần tử biến đổi của mạng nơ ron nhân tạo được gọi là các nơ ron nhân tạohoặc gọi tắt là nơ ron

2.2 CÁC TÍNH CHẤT CỦA MẠNG NƠ RON NHÂN TẠO

Là hệ phi tuyến: Mạng nơ ron có khả năng to lớn trong lĩnh vực nhận dạng và điềukhiển các đối tượng phi tuyến

Là hệ xử lý song song: Mạng nơ ron có cấu trúc song song, do đó có độ tính toán rấtcao rất phù hợp với lĩnh vực nhận dạng và điều khiển

Là hệ học và thích nghi: Mạng được luyện từ các số liệu quá khứ và có khả năng tựchỉnh khi số liệu đầu vào bị mất, có thể điều khiển on- line

Là hệ nhiều biến, nhiều đầu vào, nhiều đầu ra (MIMO), rất tiện dùng khi đối tượngđiều khiển có nhiều biến số

2.3 MÔ HÌNH NƠ RON

2.3.1.Mô hình nơ ron sinh học

a Cấu tạo Nơ ron là phần tử cơ bản tạo nên bộ não con người Sơ đồ cấu tạo của

một nơ ron sinh học được chỉ ra như trong hình 1.4 Một nơ ron điển hình có 3 phầnchính:

Hình1.4 Mô hình 2 nơ ron sinh học

- Thân nơ ron (soma): Nhân của nơ ron được đặt ở đây

- Các nhánh (dendrite): Đây chính là các mạng dạng cây của các dây thần kinh đểnối các soma với nhau

- Sợi trục (Axon): Đây là một nối kết, hình trụ dài và mang các tín hiệu từ đó rangoài Phần cuối của axon được chia thành nhiều nhánh nhỏ Mỗi nhánh nhỏ (cả củadendrite và axon) kết thúc trong một cơ quan nhỏ hình củ hành được gọi là synapte

Trang 13

mà tại đây các nơ ron đưa các tín hiệu của nó vào các nơr on khác Những điểm tiếpnhận với các synapte trên các nơ ron khác có thể ở các dendrite hay chính soma.

b Hoạt động

Các tín hiệu đưa ra bởi một synapte và được nhận bởi các dendrite là các kích thíchđiện tử Việc truyền tín hiệu như trên liên quan đến một quá trình hóa học phức tạp màtrong đó các chất truyền đặc trưng được giải phóng từ phía gửi của nơi tiếp nối Điềunày làm tăng hay giảm điện thế bên trong thân của nơ ron nhận Nơ ron nhận tín hiệu

sẽ kích hoạt (fire) nếu điện thế vượt khỏi một ngưỡng nào đó và một xung (hoặc điệnthế hoạt động) với độ mạnh (cường độ) và thời gian tồn tại cố định được gửi ra ngoàithông qua axon tới phần nhánh của nó rồi tới các chỗ nối synapte với các nơ ron khác.Sau khi kích hoạt, nơ ron sẽ chờ trong một khoảng thời gian được gọi là chu kỳ, trướckhi nó có thể được kích hoạt lại Synapses là hưng phấn (excitatory) nếu chúng chophép các kích thích truyền qua gây ra tình trạng kích hoạt (fire) đối với nơ ron nhận.Ngược lại, chúng là ức chế (inhibitory) nếu các kích thích truyền qua làm ngăn trởtrạng thái kích hoạt (fire) của nơ ron nhận

2.3.2 Mạng nơ ron nhân tạo

2.3.2.1 Khái niệm

Nơ ron nhân tạo là sự sao chép nơ ron sinh học của não người, nó có những đặc tínhsau:

- Mỗi nơ ron có một số đầu vào, những kết nối (Synaptic) và một đầu ra (axon)

- Một nơ ron có thể hoạt động (+35mV) hoặc không hoạt động (-0,75mV)

- Chỉ có một đầu ra duy nhất của một nơ ron được nối với các đầu vào khác nhau của

nơ ron khác Điều kiện để nơ ron được kích hoạt hay không kích hoạt chỉ phụ thuộcnhững đầu vào hiện thời của chính nó.Thông thường một nơ ron có 3 phần như hình1.5:

Trang 14

Hình 1.5 Mô hình nơ ron nhân tạoTrên mỗi đầu vào của nơ ron có gắn một trọng số để liên kết giữa nơ ron thứ i và nơron thứ j Các trọng số này tương tự như các tế bào cảm giác của mạng nơ ron sinhhọc

Tổng trọng:

Với Vi(t) là tổng trọng của nơ ron thứ i; yj(t) là các đầu ra của nơ ron thứ jvà uk(t) làcác đầu vào từ bên ngoài tương ứng với các trọng số Wij và W*ik; là hằng số gọi làngưỡng của nơ ron thứ i

Hệ động học tuyến tính SISO: Đầu vào là vi đầu ra là xi Ở dạng toán tử Laplace tacó:

Xi(s)= H(s).Vi(s) (1.2)

Dạng thời gian của (1.2) có dạng (1.3)

(1.3)

Trang 15

Quan hệ của H(s) và h(t) và quan hệ vào – ra tương ứng của nơ ron được cho trong bảng 1.1 :

Bảng 1.1

Hàm động học phi tuyến: Mô tả mối quan hệ của đầu ra yi với đầu vào xi:

yi=ăxi) với ặ) là hàm chuyển đổị

Hàm chuyển đổi: Để tìm được đầu ra của nơ ron ta phải tiến hành qua hai bước nhưsau:

- Tìm các giá trị tổng trọng lượng đầu vào neti(t)

- Căn cứ vào neti(t) để tìm ra yi bằng các hàm chuyển đổi vào rạ

Hàm chuyển đổi ặ) thực hiện coi nơ ron như một hộp đen, chuyển đổi một tín hiệuvào thành tín hiệu rạCác dạng hàm chuyển đổi thường được sử dụng có dạng như sau: + Hàm Rump (Rump Function) là hàm có biểu diễn toán học như (1.4):

(1.4)

Biểu diễn hình học của hàm Rump như hình vẽ 1.6.a

+ Hàm bước nhảy (Step Function) là hàm có biểu diễn toán học như (1.5):

(1.5) Biểu diễn hình học của hàm như hình vẽ 1.6.b

Trang 16

+ Hàm giới hạn cứng (Threshold Function) là hàm có biểu diễn toán học như (1.6):

(1.6)Biểu diễn hình học của hàm như hình vẽ 1.6.c

+ Hàm sigmoid hai cực (Bipolar Sigmoid Function) là hàm có biểu diễn toán học như (1.7):

Biểu diễn hình học của hàm như hình vẽ 1.6d

Hình 1.6a Hàm Rump Hình 1.6b Hàm bước nhảy Hình 1.6c Hàm giới hạn cứng

Hình 1.6.d Hàm Sigmoid hai cực

2.3.2.2 Phân loại mạng nơ ron

Nelson và IIlingworth (1991) đã đưa ra mộy số loại cấu trúc của mạng nơ ron nhưhình 1.7 Nơron được vẽ là các vòng tròn xem như một tế bào thần kinh, chúng có cácmối liên hệ đến các nơ ron khác nhờ các trọng số, lập thành các ma trận trọng sốtương ứng

Trang 17

Mỗi một nơ ron có thể phối hợp với các nơ ron khác tạo thành một lớp các trọng số.Mạng một lớp truyền thẳng (Single- Layer Feedforward Network) như hình 1.7 a Cóthể nối vài lớp nơ ron với nhau tạo thành mạng nhiều lớp truyền thẳng (Multi- LayerFeedforward Network) như hình 1.7.b

Hai loại mạng nơ ron một lớp và nhiều lớp được gọi là truyền thẳng nếu đầu ra củamỗi nơ ron được nối với các đầu vào của các nơ ron của lớp trước đó

Mạng nơ ron phản hồi là mạng mà đầu ra của mỗi nơ ron được quay trở lại nối vớiđầu vào của các nơ ron cùng lớp được gọi là mạng Laeral như hình 1.7.c

Mạng nơ ron phản hồi có thể thực hiện đóng vòng được gọi là mạng nơ ron hồi quy(Recurrent Network) như hình 1.7.d

Các nơ ron lớp vào trực tiếp nhận tín hiệu ở đầu vào, ở đó mỗi nơ ron chỉ có một tínhiệu vào Mỗi nơ ron ở lớp ẩn được nối với tất cả các nơ ron lớp vào và lớp ra Các nơron ở lớp ra có đầu vào được nối với tất cả các nơ ron ở lớp ẩn, chúng là đầu ra củamạng Cần chú ý rằng một mạng nơ ron cũng có thể có nhiều lớp ẩn Các mạng nơ rontrong mỗi nơ ron chỉ được liên hệ với tất cả các nơ ron ở lớp kế tiếp và tất cả các mốiliên kết chỉ được xây dựng từ trái sang phải được gọi là mạng nhiều lớp truyền thẳng(perceptrons)

Trang 18

2.3.2.3 Các luật học

Thông thường mạng nơ ron được điều chỉnh hoặc được huấn luyện để hướng các đầuvào riêng biệt đến đích ở đầu ra Cấu trúc huấn luyện mạng được chỉ ra trên hình 1.5 Ởđây, hàm trọng của mạng được điều chỉnh trên cơ sở so sánh đầu ra với đích mongmuốn (taget) cho tới khi đầu ra mạng phù hợp với đích Những cặp vào/đích(input/taget) được dùng để giám sát cho sự huấn luyện mạng

Hình 1.8 Cấu trúc huấn luyện mạng nơ ron

Để có được một số cặp vào/ra, ở đó mỗi giá trị vào được gửi đến mạng và giá trị ratương ứng được thực hiện bằng mạng là sự xem xét và so sánh với giá trị mong muốn.Bình thường tồn tại một sai số bởi lẽ giá trị mong muốn không hoàn toàn phù hợp vớigiá trị thực Sau mỗi lần chạy, ta có tổng bình phương của tất cả các sai số Sai số nàyđược sử dụng để xác định các hàm trọng mới

Sau mỗi lần chạy, hàm trọng của mạng được sửa đổi với đặc tính tốt hơn tương ứngvới đặc tính mong muốn Từng cặp giá trị vào/ra phải được kiểm tra và trọng lượngđược điều chỉnh một vài lần Sự thay đổi các hàm trọng của mạng được dừng lại nếutổng các bình phương sai số nhỏ hơn một giá trị đặt trước hoặc đã chạy đủ một số lầnchạy xác định (trong trường hợp này mạng có thể không thoả mãn yêu cầu đặt ra dosai lệch còn cao) Có hai kiểu học:

- Học thông số (Paramater Learning): Tìm ra biểu thức cập nhật các thông số về trọng

số, cập nhật kết nối giữa các nơ ron

- Học cấu trúc (Structure Learning): Trọng tâm là sự biến đổi cấu trúc của mạng nơron gồm số lượng nút (node) và các mẫu liên kết

Nhiệm vụ của việc học thông số là bằng cách nào đó, tìm được ma trận chính xácmong muốn từ ma trận giả thiết ban đầu với cấu trúc của mạng nơ ron có sẵn

Trang 19

Để làm được việc đó, mạng nơ ron sử dụng các trọng số điều chỉnh, với nhiềuphương pháp học khác nhau có thể tính toán gần đúng ma trận W cần tìm đặc trưngcho mạng.Có ba phương pháp học:

- Học có giám sát ( Supervised Learning)

Là quá trình học ở mỗi thời điểm thứ i khi đưa tín hiệu xi vào mạng nơ ron, tươngứng sẽ có các đáp ứng mong muốn di của đầu ra cho trước ở thời điểm đó

Hay nói cách khác, trong quá trình học có giám sát, mạng nơ ron được cung cấp liêntục các cặp số liệu mong muốn vào – ra ở từng thời điểm (x1,d1),(x2,d2) (xk,dk), khicho tín hiệu vào thực là xk sẽ tương ứng có tín hiệu đầu ra cũng được lặp lại là dk giốngnhư mong muốn Kết quả của quá trình học có giám sát là tạo được một hộp đen cóđầu vào là véc tơ tín hiệu vào X sẽ đưa ra được câu trả lời đúng d.Để đạt được kết quảmong muốn trên, khi đưa vào tín hiệu xk, thông thường sẽ có sai lệch ek giữa tín hiệuđầu ra thực yk với tín hiệu đầu ra mong muốn dk Sai lệch đó sẽ được truyền ngược tớiđầu vào để điều chỉnh thông số mạng nơ ron là ma trận trọng số W…Quá trình cứ thếtiếp diễn sao cho sai lệch giữa tín hiệu ra mong muốn và tín hiệu ra thực tế nằm trongphạm vi cho phép, kết quả nhận được ma trận trọng số với các phần tử wij đã đượcđiều chỉnh phù hợp với đặc điểm của đối tượng hay hàm số mạng nơ ron cần học Môhình học có giám sát được minh hoạ như hình 1.9

Hình 1.9.Mô hình học có giám sát và học củng cố

- Học củng cố:(Reinforcement Learning)

Là phương pháp học trong đó tín hiệu d được đưa từ bên ngoài nhưng không đượcđầy đủ mà có thể chỉ đưa đại diện 1 bít để có tính chất kiểm tra quá trình đúng haysai Tín hiệu đó được gọi là tín hiệu củng cố (Reinforcement Signal)

Phương pháp học củng cố chỉ là một phương pháp học riêng của phương pháp học cógiám sát, bởi vì nó cũng nhận tín hiệu chỉ đạo từ bên ngoài Chỉ khác là tín hiệu củng

cố có tính ước lượng hơn là để dạy Tín hiệu giám sát bên ngoài d thường được tiếnhành bởi các tín hiệu ước lượng để tạo thông tin ước lượng cho mạng nơ ron điều

Trang 20

chỉnh trọng số với hy vọng sự ước lượng đó mang lại sự chính xác trong quá trình tínhtoán Mô hình học củng cố được minh hoạ như hình 1.9

- Học không có giám sát (Unsupervied Learning)

Trong trường hợp này, hoàn toàn không có tín hiệu ở bên ngoài Giá trị mục tiêu điềukhiển không được cung cấp và không được tăng cường Mạng phải khám phá các mẫu,các nét đặc trưng, tính cân đối, tính tương quan… Trong khi khám phá các đặc trưngkhác, mạng nơ ron đã chải qua việc tự thay đổi thông số, vấn đề đó được gọi tự tổchức (Self- Organizing)

Mô hình học không có giám sát được minh hoạ như hình 1.10:

Hình 1.10: Mô hình học không giám sát

Cấu trúc chung của quá trình học được mô tả như hình 1.20

Hình 1.11 Sơ đồ cấu trúc chung của quá trình họcTrong đó tín hiệu vào xj, j=1,2,3…,m, có thể được lấy từ đầu ra của các nơ ron kháchoặc có thể được lấy từ bên ngoài Tín hiệu mong muốn di có sẵn chỉ có trong phươngpháp học có giám sát hoặc củng cố Từ hai phương pháp học trên, trọng số của nơ ronthứ i được thay đổi tuỳ theo tín hiệu ở đầu vào mà nó thu nhận và giá trị đầu ra của nó

Trang 21

Trong phương pháp học không có giám sát sự thay đổi của trọng số chỉ dựa trên cơ sởcác giá trị đầu vào và đầu ra Dạng tổng quát của luật học trọng số của mạng nơ ron làcho biết gia số của véc tơ ∆wi là wi tỷ lệ với tín hiệu học r và tín hiệu đầu vào x(t): ∆wi(t) =η.r.x(t) (1.8)

∆: Là hằng số học, xác định tốc độ học và là một số dương

r: Là tín hiệu học r = fr(wi,x,di) (1.9) Biểu thức (1.8) là biểu thức chung để tính số gia của trọng số, ta thấy trọng số

wi = (wi1, wi2, …, wim)T

có gia số tỷ lệ với tín hiệu vào x và tín hiệu học r Từ các

biểu thức trên ta có véc tơ trọng số ở thời điểm (t+1) được tính là:

w i(t+1) = wi(t) + η.fr{wi (t), x(t), di(t)}.x(t) (1.10)

Vấn đề quan trọng trong việc phân biệt luật học cập nhật trọng số có giám sát haykhông có giám sát là tín hiệu học r như thế nào để thay đổi hoặc cập nhật trọng số cótrong mạng nơ ron

Có 2 phương pháp cơ bản để huấn luyện mạng nơ ron: Huấn luyện gia tăng (tiến dần)

và huấn luyện theo gói Sự huấn luyện theo gói của mạng nhận được bằng việc thayđổi hàm trọng và độ dốc trong một tập (batch) của véc tơ đầu vào Huấn luyện tiến dần

là thay đổi hàm trọng và độ dốc của mạng sau mỗi lần xuất hiện của một phần tử véc

tơ đầu vào Huấn luyện tiến dần đôi khi được xem như huấn luyện trực tuyến hay huấnluyện thích nghi

Mạng nơ ron đã được huấn luyện để thực hiện những hàm phức tạp trong nhiều lĩnhvực ứng dụng khác nhau như trong nhận dạng, phân loại sản phẩm, xử lý tiếng nói,chữ viết và điều khiển hệ thống

Thông thường để huấn luyện mạng nơron, người ta sử dụng phương pháp huấn luyện

có giám sát, nhưng cũng có mạng thu được từ sự huấn luyện không có giám sát Mạnghuấn luỵện không giám sát có thể được sử dụng trong trường hợp riêng để xác địnhnhóm dữ liệu

2.3.3 Mô hình toán h c m ng n ron truy n th ng và m ng n ron h i quy ọc mạng nơ ron truyền thẳng và mạng nơ ron hồi quy ạng nơ ron truyền thẳng và mạng nơ ron hồi quy ơ ron truyền thẳng và mạng nơ ron hồi quy ền thẳng và mạng nơ ron hồi quy ẳng và mạng nơ ron hồi quy ạng nơ ron truyền thẳng và mạng nơ ron hồi quy ơ ron truyền thẳng và mạng nơ ron hồi quy ồi quy

Trang 22

2.3.3.1.Mạng nơ ron truyền thẳng

a/ Mạng nơ ron một lớp

Một cấu trúc toán học mạng 1 lớp với

R đầu vào và S nơ ron được chỉ ra trên hình 1.12

Trong mạng này mỗi phần tử của véc tơ vào P liên hệ với đầu vào mỗi nơ ron thôngqua ma trận trọng lượng liên kết W Bộ cộng của nơ ron thứ i thu thập các trọng liênkết đầu vào và độ dốc để tạo thành một đầu ra vô hướng ni Các ni tập hợp với nhautạo thành s phần tử của véc tơ vào n Cuối cùng ở lớp ra nơ ron ta thu được véc tơ agồm s phần tử

Ta có thể thiết lập lớp đơn của các nơ ron có các hàm chuyển khác nhau một cách dễdàng bởi lẽ hai mạng được đặt song song Tất cả các mạng có thể có chung đầu vào vàmỗi mạng có thể thiết lập một vài đầu ra

Các phần tử của véc tơ đầu vào được đưa vào mạng thông qua ma trận trọng W, với:

Trong đó: Chỉ số hàng trong các phần tử của ma trận W cho biết nơ ron nơi đến cònchỉ số cột cho biết nơi xuất phát của trọng liên kết Ví dụ: w12 nói lên sự có mặt của tínhiệu vào từ phần tử thứ hai đến nơ ron thứ nhất với trong liên kết là w12

Để đơn giản ta ký hiệu mạng một lớp gồm S nơ ron, R đầu vào như hình vẽ 1.13

Trang 23

Trong đó: véc tơ vào P có kích thước R, ma trận trọng liên kết W có kích thước S x

R còn a và b là các véc tơ có kích thước S Như chúng ta đã biết, một lớp mạng baogồm ma trận trọng liên kết, toán tử nhân, véc tơ độ dốc b, bộ tổng và hàm truyền

Ta gọi ma trận trọng lượng liên kết nối với đầu vào là các trọng vào (inputweights) và các ma trận đến từ lớp ra là trọng liên kết lớp (layer weights) Ta sẽ dùngcác chỉ số viết bên trên để phân biệt nguồn (chỉ số thứ hai) và đích (chỉ số thứ nhất)cho các trọng liên kết và các phần tử khác của mạng

Hình 1.14: Ký hiệu một lớp mạng

Để minh hoạ, ta xét một lớp mạng có nhiều đầu vào như hình 1.14 Trong đó R là sốphần tử lớp vào và S1 là số nơron của lớp 1 Ta thấy ma trận trọng liên kết với véc tơvào P là ma trận trọng vào (IW1,1) có nguồn là 1 (chỉ số thứ 2) và đích là1 (chỉ số thứ

Trang 24

nhất) Đồng thời các phần tử của 1 lớp như độ dốc, tín hiệu vào hàm chuyển, đầu ra

có chỉ số viết trên là 1 để nói rằng chúng được liên kết với lớp thứ nhất (b1, n1, a1) Một mạng nơ ron có thể có một vài lớp Mỗi lớp có ma trận trọng liên kết W, véc tơ

độ dốc b và đầu ra a Để phân biệt các ma trận trọng liên kết véc tơ vào cho mỗi lớpmạng trong sơ đồ, ta thêm con số chỉ lớp viết ở phía trên cho biến số quan tâm

Hình 1.15 là ký hiệu sơ đồ mạng 3 lớp Trong đó có R1 đầu vào, S1 nơ ron ở lớp 1, S2nơron ở lớp 2 … Thông thường, các lớp khác nhau có số nơ ron khác nhau

Chú ý rằng đầu ra của mỗi lớp trung gian là đầu vào của lớp tiếp theo Như vậy lớp 2

có thể được xem như mạng 1 lớp với S1 đầu vào, S2 nơ ron và S2 x S1 trọng liên kếtcủa ma trận W2 Đầu vào của lớp 2 là véc tơ a1, đầu ra là véc tơ a2

Các lớp của mạng nhiều lớp đóng vai trò khác nhau Lớp cuối cùng là kết quả ở đầu racủa mạng, được gọi là lớp ra Lớp đầu tiên thu thập tín hiệu vào được gọi là lớp vào,các lớp khác được gọi là lớp ẩn Mạng 3 lớp ở trên có 1 lớp ra (lớp3) có 1lớp vào(lớp1) và 1lớp ẩn (lớp 2)

Đối với mạng 3 lớp ta cũng có thể sử dụng ký hiệu tắt để biểu diễn (hình 1.16) Mạngnhiều lớp rất mạnh, ví dụ có mạng 2 lớp, trong đó lớp 1 có hàm chuyển sigmoid, lớp 2

có hàm chuyển linear có thể được huấn luyện để làm xấp xỉ một hàm bất kỳ (với sốđiểm gián đoạn có hạn chế)

Trong đó a3 là đầu ra của mạng, ta ký hiệu đầu ra này là y Ta sẽ sử dụng ký hiệu này

để định rõ đầu ra của mạng nhiều lớp

a1 = f1(W1,1P+b1) (1.14)

a1 = f1(W1,1P+b1) a2 = f2(W2,1a1+b2) a3 = f3(W3,2a2+b3) (1.15)

Hình 1.15 Cấu trúc mạng nơ ron 3 lớp

Trang 25

a1 = f1(IW1,1P+b1) a2 = f2(LW2,1a1+b2) a3 = f3(LW3,2a2+b3)

a3 = f3[LW3,2f2(LW2,1f1(IW1,1P+b1)+b2]+b3 = y (1.16)

Hình 1.16 Ký hiệu tắt của mạng nơ ron 3 lớp

2.3.3.2.Mạng nơ ron hồi quy

Mạng hồi quy còn được gọi là mạng phản hồi là loại mạng tự liên kết thành cácvòng và liên kết hồi quy giữa các nơ ron Mạng nơ ron hồi quy có trọng số liên kết đốixứng như mạng Hopfield luôn hội tụ về trạng thái ổn định Mạng liên kết hai chiều(BAM) là mạng thuộc nhóm mạng nơ ron hồi quy hai lớp nơ ron liên kết tay đôi, trong

đó đảm bảo nơ ron của cùng một lớp không liên kết với nhau, cũng hội tụ về trạng thái

ổn định Nghiên cứu mạng nơ ron hồi quy có trọng số liên kết khôngđối xứng sẽ gặpnhiều phức tạp hơn so với mạng truyền thẳng và mạng hồi quy đối xứng Mạng nơron hồi quy có khả năng về nhận mẫu, nhận dạng các hàm phi tuyến, dự báo … Một

ưu điểm khác của mạng nơ ron hồi quy là chỉ cần mạng nhỏ hơn về cấu trúc cũng cókhả năng như mạng truyền thẳng có cấu trúc lớp hơn

a/ Mạng nơ ron hồi quy không hoàn toàn (Partially Recrrent Networks)

Là mạng đó dựa trên cơ sở mạng lan truyền ngược vì cấu trúc hồi quy Cấu trúccủa mạng hồi quy không hoàn toàn phần lớn là cấu trúc truyền thẳng nhưng có cả sựlựa chọn cho một bộ phận có cấu trúc hồi quy.Trong nhiều trường hợp, trọng số củacấu trúc hồi quy được duy trì không đổi, như vậy luật học truyền ngược có thể dễdàng được sử dụng Trong các mạng loại này, sự truyền thẳng được xảy ra rất nhanhhoặc không phụ thuộc vào thời gian, trong khi đó tín hiệu hồi quy được thực hiện cótính thời gian Mạng có thể nhận mẫu dãy dựa vào tình trạng cuối cùng của dãy và cóthể dự báo tiếp theo cho tín hiệu của dãy theo thời gian Như vậy, mạng hồi quy khônghoàn toàn về cơ bản là mạng tryền thẳng , liên kết hồi quy có thể đi từ các nút ở cáclớp ra hoặc lớp ẩn

b/ Mạng nơ ron hồi quy hoàn toàn (Fully Recrrent Networks).

Trang 26

Là một trong những loại mạng nơ ron hồi quy đầu tiên được Gossberg xây dựng đểhọc và biểu diễn các mẫu bất kỳ

loại mạng này được xây dựng theo

mẫu Instar- Outstar Loại mạng

hồi quy hoàn toàn có tác dụng nhận

số lượng mẫu nhiều nhơn Với

mạng hồi quy hoàn toàn đã hình

thành quan điểm thực hiện và

luyện mạng hồi quy từ mạng

truyền thẳng nhiều lớp được xây

dựng từ một lớp cho mỗi bước

Khái niệm này được gọi là lan truyền ngược theo thời gian phù hợp khi quan tâm đếncác dãy với độ lớn T là nhỏ Nó đã được sử dụng họccho máy ghi cho nhiệm vụ thựchiện các dãy Nó có khả năng áp dụng cho điều khiển thích nghi Hình 1.17 là mạng nơron một lớp hồi quy Hình 1.18 là mạng nơ ron hiều lớp hồi quy

Hình 1.18 Ký hiệu tắt của mạng nơron 3 lớp hồi quy2.4.QUÁ TRÌNH HUẤN LUYỆN MẠNG NHIỀU LỚP

Chúng ta đã biết, mạng nơ ron nhiều lớp có thể xấp xỉ gần đúng một hàm bất kỳ,tiếp đó là thủ tục tính chọn các thông số của mạng (các hàm trọng lượng và độ dốc)cho một đối tượng cụ thể được gọi là quá trình huấn luyện mạng Trong phần nàychúng ta sẽ chỉ ra một phương pháp huấn luyện là phương pháp lan truyền ngược Kỹthuật cơ bản của phương pháp lan truyền ngược là cập nhật trọng số theo hướng giảm

độ dốc

Như đã nêu, mạng nhiều lớp có đầu ra của lớp trước là đầu vào của lớp tiếp theo

Sơ đồ cấu trúc được cho như hình vẽ 1.13

Trang 27

Biểu thức toán học mô tả sự hoạt động như (1.17):

am+1 = f m+1(wm+1.am + bm+1 ) Với m = 0,1,2,…M-1 1.17) Trong đó M là số lớp nơ ron trong mạng Các nơ ron của lớp thứ nhất nhận tín hiệuđầu vào từ bên ngoài: a0 = p (1.18) Đầu ra của các nơ ron ở lớp cuối cùng của mạng được coi là đầu ra của mạng:

(1.21) Trong đó x là véc tơ bao gồm cả trọng số liên kết và độ dốc của mạng Nếu mạng

có nhiều đầu ra thì biểu thức tổng quát được tính như (1.22):

(1.22)

Sử dụng phương pháp xấp xỉ quen thuộc, chúng ta sẽ thay thế tổng bình phươngsai lệch bằng sai lệch của đáp ứng hiện tại:

(1.23) Trong đó bình phương sai lệch mong muốn đã được thay thế bằng bình phươngsai lệch tại thời điểm k

Thuật toán giảm độ dốc theo phương pháp xấp xỉ bình phương sai lệch là:

Trang 28

(1.25)Trong đó α là tốc độ học

2.4.2.Qui tắc chuỗi

Với mạng một lớp tuyến tính thì các thành phần đạo hàm trong công thức (1.24) và(1.25) được tính dễ dàng và tiện lợi, từ đó sai lệch có thể được viết như một hàm tuyếntính của các trọng số

Với mạng nhiều lớp, sai lệch là hàm ẩn của các hàm trọng lượng ở các lớp ẩn, vìthế các phép đạo hàm sẽ tính khó khăn Bởi vì sai lệch là hàm ẩn của các trọng số ởcác lớp ẩn nên chúng ta sẽ sử dụng qui tắc chuỗi toán học để tính đạo hàm riêng trongcác biểu thức (1.24) và (1.25)

(1.26)

(1.27)

Số hạng thứ hai trong mỗi công thức có thể được tính dễ dàng vì đầu vào lớp mạng thứ

m là hàm hiện của trọng số và độ dốc của lớp ấy:

(1.28)

Nếu chúng ta định nghĩa: (1.30)

Trang 29

thì công thức (1.26) và (1.27) có thể được đơn giản hoá như (1.31), (1.32):

(1.31)

(1.32)Đến đây chúng ta có thể biểu diễn thuật toán xấp xỉ để giảm độ dốc như

(1.33), (1.34):

(1.33)

(1.34)Khi đó ta có ma trận dạng (1.35), (1.36):

(1.35)

(1.36)Trong đó các phần tử riêng của S được tính theo công thức (1.32)

2.4.3 Độ chính xác của thuật toán lan truyền ngược

Việc còn lại bây giờ là chúng ta tính toán độ chính xác Sm, nó cần đến các ứngdụng khác của qui tắc chuỗi Đó là quá trình chúng ta cho số hạng lan truyền ngược,bởi vì nó diễn tả mối liên hệ phản hồi và độ chính xác ở lớp m được tính từ độ chínhxác của lớp m+1:

(1.37)

(1.38)

Trong đó có dạng như (1.39)

Trang 30

2.4.4 Một số biến thể của thuật toán lan truyền ngược

Ta đã xem xét một số đặc điểm của thuật toán lan truyền ngược sử dụng kỹ thuật giảmtheo hướng Mạng sử dụng thuật toán này tồn tại nhược điểm: rơi vào điểm cực tiểuđịa phương đối với mạng nơron truyền thẳng nhiều lớp sử dụng các hàm chuyển phituyến Hơn nữa, khi thực hiện luyện mạng bằng cách đưa từng mẫu vào, sau đó thựchiện cập nhật tham số, sẽ làm ảnh hưởng đến quá trình học các mẫu khác Do đó, mộtphương pháp để tăng tốc độ hội tụ là sử dụng phương pháp học cả gói (batch training),nghĩa là tất cả các mẫu được đưa vào mạng, sau đó mới thực hiện cập nhật các tham

số Bây giờ ta sẽ xem xét một số biến thể của thuật toán lan truyền ngược sử dụngphương pháp học cả gói nhằm vượt qua các nhược điểm này

2.4.4.1 Sử dụng tham số bước đà (Momentum)

Đây là một phương pháp heuristic dựa trên quan sát kết quả luyện mạng nhằm làmtăng tốc độ hội tụ của thuật toán lan truyền ngược dựa trên kỹ thuật giảm nhanh nhất.Thuật toán lan truyền ngược cập nhật các tham số của mạng bằng cách cộng thêm vàomột lượng thay đổi là:

Khi áp dụng thuật toán lan truyền ngược có sử dụng bước đà, phương trình trên thayđổi như sau:

Người đa đã chứng tỏ rằng khi sử dụng tham số bước đà thì hệ số học có thể lớn hơnrất nhiều so với thuật toán lan truyền ngược chuẩn không sử dụng tham số bước đàtrong khi vẫn giữ được độ tin cậy của thuật toán Một điểm khác nữa là khi sử dụngtham số bước đà thì sự hội tụ của thuật toán sẽ được tăng tốc nếu như thuật toán đang

đi theo một hướng bền vững (chỉ đi xuống trong một khoảng dài)

Trang 31

2.4.4.2 Sử dụng hệ số học biến đổi

Trong thực tế, các hàm hiệu năng có dạng biểu diễn hình học là không đồng đều, cólúc có dạng phẳng (hàm không thay đổi giá trị hoặc thay đổi rất ít) hoặc có dạng phễu(giá trị của hàm thay đổi rất nhanh khi thay đổi tham số đầu vào) Nếu ta chỉ sử dụng

hệ số học cố định thì có thể sẽ tốn thời gian tại các vùng phẳng Vì vậy, tư tưởng củathuật toán lan truyền ngược sử dụng hệ số học biến đổi là khi gặp vùng phẳng thì tăng

hệ số học lên và ngược lại khi gặp vùng dạng phễu thì giảm hệ số học đi

Người ta đã đưa ra rất nhiều phương pháp để thực hiện điều trên, ở đây chỉ nêu ra mộtcách biến đổi hệ số học dựa trên hiệu năng của mạng (có thể tham khảo ở )

Bước 1: Nếu bình phương lỗi trên toàn bộ tập huấn luyện tăng một số phần trăm cho

trước

ξ (thông thường là từ 1% cho đến 5%) sau một lần cập nhật trọng số, thì bỏ qua việccập nhật này, hệ số học được nhân với một số hạng ρ nào đó (với 0 < ρ < 1) và tham sốbước đà (nếu có sử dụng) được đặt bằng 0

Bước 2: Nếu bình phương lỗi giảm sau một lần cập nhật trọng số, thì cập nhật đó là

chấp nhận được và hệ số học được nhân với một số hạng nào đó > 1, nếu tham số bước

đà đã bị đặt bằng 0 thì đặt lại giá trị lúc đầu

Bước 3: Nếu bình phương lỗi tăng một lượng < ξ, thì cập nhật trọng số là chấp nhận

được, nhưng hệ số học không thay đổi và nếu tham số bước đà đã bị đặt bằng 0 thì đặtlại giá trị lúc đầu

Các thuật toán heuristic luôn cho ta sự hội tụ nhanh hơn trong một số bài toán, tuynhiên chúng có hai nhược điểm chính sau đây:

Thứ nhất, việc sửa đổi thuật toán lan truyền ngược cần có thêm một số tham số, trongkhi trong thuật toán lan truyền ngược chuẩn chỉ yêu cầu có một tham số đó là hệ sốhọc Một số thuật toán sửa đổi cần đến năm hoặc sáu tham số, trong khi hiệu năng củathuật toán khá nhạy cảm đối với những thay đổi của các tham số này Hơn nữa việcchọn lựa các tham số lại độc lập với bài toán đặt ra

Thứ hai, các thuật toán sửa đổi có thể không hội tụ trong một số bài toán mà thuật toánlan truyền ngược chuẩn có thể hội tụ được

Người ta đã thấy rằng cả hai nhược điểm nêu trên thường xảy ra khi sử dụng các thuậttoán sửa đổi phức tạp hơn (yêu cầu nhiều tham số hơn)

2.4.4.3 Sử dụng phương pháp Gradient kết hợp

Nhắc lại phương pháp gradient kết hợp bao gồm các bước sau:

1 Chọn hướng bắt đầu ngược với gradient (p0 = -g0)

Trang 32

2 Thực hiện một bước (∆xk = (xk+1 - xk) = αkpk) Chọn αk để tối thiểu hàm theo hướng tìm kiếm đã chọn Có thể chọn như sau:

(phương trình trên được suy ra bằng cách chọn αk để tối thiểu hóa hàm F(xk + αkpk) Đểthực hiện, ta lấy đạo hàm của F theo αk, đặt bằng 0 ta sẽ thu được phương trình trên.)

3 Chọn hướng tiếp theo dựa vào một trong ba phương trình tính βk

4 Nếu thuật toán chưa hội tụ thì quay lại bước 2

Phương pháp này không thể áp dụng trực tiếp trong việc luyện mạng nơron, bởi lẽ hàmchỉ số hiệu năng trong nhiều trường hợp không ở dạng bậc hai Điều này ảnh hưởngđến thuật toán này như sau:

Thứ nhất, ta không thể sử dụng phương trình:

để tối thiểu hóa hàm theo đường thẳng (xk + αkpk) như trong bước thứ 2

Thứ hai, điểm cực tiểu chính xác sẽ không thể đạt tới được một cách bình thường saumột số hữu hạn bước và do vậy thuật toán sẽ phải được thiết lập lại sau một số hữu hạnbước

Vấn đề tìm kiếm điểm cực tiểu:

Ta cần có một thuật toán tổng quát để tìm điểm cực tiểu của một hàm số theo mộthướng cụ thể nào đó Việc này liên quan đến hai thao tác: một là xác định tần số(interval location) và giảm tần số Mục đích của bước xác định tần số là tìm kiếm tần

số khởi đầu có chứa điểm cực tiểu Bước giảm tần số sau đó giảm kích thước của tần

số cho đến khi tìm ra điểm cực tiểu với một độ chính xác nào đó

Ta sẽ sử dụng phương pháp so sánh hàm để thực hiện bước xác định tần số Thủ tụcnày được mô tả trong hình vẽ 13 Ta bắt đầu bằng cách tính chỉ số hiệu năng tại một

Trang 33

điểm khởi đầu nào đó (điểm a1 trong hình vẽ), điểm này chính là giá trị của chỉ số hiệunăng với các tham số hiện tại của mạng

Bước tiếp theo là tính giá trị hàm chỉ số hiệu năng tại điểm thứ 2, thể hiện bởi điểm b1trong hình vẽ cách điểm khởi đầu một đoạn là ε theo hướng tìm kiếm p0

Hình 1.20: Xác định tần số

Sau đó, ta tiếp tục tính giá trị của hàm hiệu năng tại các điểm bi có khoảng cách đếnđiểm khởi đầu gấp đôi điểm trước Quá trình này sẽ dừng lại nếu như giá trị của hàmtăng lên so với điểm trước đó (trong hình vẽ là điểm b3 và b4) Đến đây, ta biết rằngđiểm cực tiểu sẽ rơi vào khoảng giữa [a5, b5] Ta không thể thu hẹp thêm tần số nữabởi lẽ điểm cực tiểu có thể rơi vào vùng [a3, b3] hoặc [a4, b4]

Bây giờ ta tiếp tục bước thực hiện giảm tần số, ta sẽ lấy ít nhất là hai điểm c, d trong khoảng [a5, b5] để có thể thực hiện việc này (nếu chỉ lấy 1 điểm thì ta khó có thể xácđịnh được liệu điểm cực tiểu sẽ nằm trong vùng nào!) Có nhiều cách để chọn cácđiểm trên, ở đây ta sẽ sử dụng phương pháp gọi là: Golden Section search Phươngpháp này cố gắng thực hiện tìm kiếm sao cho số lần phải tính giá trị của hàm là ít nhất(tại mỗi một bước ta đều cần phải tính giá trị của hàm)

Trang 34

Hình 1.21: Giảm kích thước của tần số không chắc chắn.

Trong hình vẽ trên, điểm a sẽ được bỏ qua và điểm c sẽ trở thành cận bên trái Sau đó,một điểm c mới sẽ được đặt vào vùng của điểm c và d cũ Mẹo mực ở đây là chọnđiểm c sao cho tần số của sự không chắc chắn sẽ được giảm đi càng nhanh càng tốt Thuật toán Golden Section search như sau:

Golden Section search

Trang 35

Thiết lập lại thuật toán

Thuật toán gradient kết hợp còn cần phải sửa đổi thêm một chút nữa trước khi áp dụng

để luyện cho mạng nơron Đối với hàm bậc 2, thuật toán sẽ hội tụ đến điểm cực tiểusau nhiều nhất n bước, trong đó n là số các tham số cần tối thiểu hóa Chỉ số hiệu năngtrung bình bình phương lỗi của mạng nơron truyền thẳng nhiều lớp không phải ở dạngbậc 2, do vậy thuật toán sẽ không hội tụ sau n bước lặp Những phát triển ở phía trênkhông chỉ ra hướng tìm kiếm tiếp theo sau khi n bước lặp hoàn thành Có nhiều cách

để thực hiện, nhưng ta chỉ cần áp dụng một cách đơn giản nhất đó là đặt lại hướng tìmkiếm trở lại hướng ban đầu của thuật toán giảm nhanh nhất sau khi n bước lặp đã hoànthành

2.4.5 Nhận xét

Lan truyền ngược thực chất là là một kỹ thuật toán học sử dụng để tính toán lỗi trongcác hệ thống toán học phức tạp, chẳng hạn như một mạng nơron Nó là một trong cácthuật toán gradient tương tự như là các thuật toán theo gradient theo các cách tiếp cậncủa Trí tuệ nhân tạo Các thuật toán đó ánh xạ hàm vào bề mặt ba chiều, với các mặtlồi, lõm Phụ thuộc vào bài toán cụ thể, điểm lõm (cực tiểu) của một bề mặt thể hiệnhiệu năng tốt hơn cho đầu ra

Việc luyện mạng theo phương pháp học có thầy liên quan đến cách thức đưa các mẫuhọc từ miền của bài toán vào mạng, các mẫu này sẽ được phân chia thành các tập huấnluyện và tập kiểm định Mạng được khởi tạo các trọng số là các số ngẫu nhiên, sau đó,các trọng số này sẽ được điều chỉnh cho phù hợp với tập huấn luyện Tập kiểm định sẽđược dùng để xác định xem liệu mạng có thành công trong việc xác định đầu ra từ đầuvào mà nó chưa được luyện Mạng sẽ được đưa vào một tập con các mẫu, mỗi mẫumột lần, sau khi nó đã được “nhìn” tất cả các mẫu, nó sẽ phải thực hiện điều chỉnh cáctrọng số bằng cách tính toán các lỗi xảy ra Quá trình này được lặp lại cho đến khimạng được luyện đủ Kích thước của tập con được giới hạn bởi số lần lặp, có thể làtrùng với kích thước của tập mẫu học, nếu không như vậy thì cần phải xác định thứ tựđưa các mẫu vào cho mạng học một cách ngẩu nhiên

Giá trị của lỗi được tính bởi phương pháp trung bình bình phương của giá trị kích hoạt;nghĩa là nó được tính bằng cách bình phương hiệu của giá trị đầu ra mong muốn vàđầu ra thực sự, sau đó tính trung bình trong tất cả các nơron đầu ra Có thể xác địnhcách điều chỉnh các trọng số để có thể giảm được lỗi bằng cách tính các đạo hàm từngphần (đạo hàm theo hướng) của lỗi Số các bước cần thực hiện theo hướng đó được gọi

là mức độ học (tham số học-learning rate), nếu quá lớn, giá trị cực trị có thể bị bỏ qua,nếu quá nhỏ thì phải mất nhiều thời gian để đạt tới điểm cực trị

Trang 36

Nhược điểm lớn nhất của thuật toán lan truyền ngược truyền thống đó là nó bị ảnhhưởng rất lớn của gradient địa phương, không cần thiết phải đi đường thẳng Ví dụ,nếu như cực trị toàn cục nằm ở cuối vùng lõm và điểm hiện tại là bên cạnh, phía trênđiểm lõm, khi đó thuật toán lan truyền ngược sẽ thực hiện một bước theo hướng màgradient lớn nhất, vượt qua vùng lõm Một khi nó phát hiện các cạnh khác của củavùng lõm, nó sẽ chạy theo đường zic zắc tiến, lùi tạo ra các bước nhỏ tới đích Đườngnày sẽ lớn gấp hàng nghìn lần so với đường ngắn nhất, và do đó, thời gian học cũng sẽlớn gấp rất nhiều lần Thuật toán lan truyền ngược chuẩn có thể được tăng cường bằngcách thêm tham số bước đà (momentum) vào phương trình Hiệu ứng này sẽ lọc rangoài các cực trị địa phương và cho phép khả năng tìm ra cực trị toàn cục lớn lên Khoảng bước, hay mức độ học, của thuật toán lan truyền ngược chuẩn là cố định, điềunày dẫn đến việc thuật toán tìm xung quanh điểm cực tiểu trong khi đó, thuật toánkhông thể tìm chính xác điểm thấp nhất trong hai gradient Nghĩa là nó đi xuống mộtbước, vượt qua điểm cực tiểu và đứng ở nửa trên phía bên kia Phương pháp gradientkết hợp (Conjugate Gradient) cho phép thuật toán học thực hiện các bước nhỏ tăng dầnkhi nó tiếp cận điểm cực tiểu, như vậy, nó có thể đạt tới điểm gần với điểm cực tiểuthực sự rất nhanh chóng

Mặc dù phương pháp tối ưu gradient giảm (gradient descent) dùng trong thuật toánlan truyền ngược chuẩn được sử dụng rộng rãi và được thực tế chứng minh là thànhcông trong rất nhiều ứng dụng, nó cũng còn tồn tại các nhược điểm:

1) Hội tụ rất chậm

2) Không đảm bảo là sẽ hội tụ tại điểm cực trị toàn cục

Rất nhiều các nhà nghiên cứu đã đưa ra các cải tiến cho phương pháp gradient như là:sửa đổi động các tham số học hay điều chỉnh độ dốc của hàm sigmoid,

Trong các hoàn cảnh thích hợp, các phương pháp tối ưu khác có thể là tốt hơn thuậttoán gradient Nhiều thuật toán hội tụ nhanh hơn là thuật toán gradient trong một sốtrường hợp trong khi một số khác hứa hẹn xác suất hội tụ đến điểm cực trị toàn cục lớnhơn

Một trong số các phương pháp tối ưu có thể thay thế cho phương pháp gradient đó làPhương pháp gradient kết hợp (Conjugate Gradient), đó là phương pháp cực tiểu theohướng Tối thiểu hóa theo một hướng d đặt hàm E tới chỗ mà gradient của nó là vuônggóc với d Thay vì theo hướng gradient tại từng bước, một tập gồm n hướng được xâydựng theo cách kết hợp với các hướng khác, tối thiểu hóa theo một trong số các hướnglàm hỏng giá trị tối thiểu hóa theo một trong các hướng trước đó

Phương pháp Gradient sử dụng đạo hàm bậc hai (Ma trận Hessian), như trong phươngpháp Newton, có thể rất hiệu quả trong một số trường hợp Nếu sử dụng đạo hàm bậcnhất, các phương pháp đó sử dụng một xấp xỉ tuyến tính địa phương của bề mặt lỗi

Trang 37

(error surface), Các phương pháp bậc hai, sử dụng xấp xỉ bậc hai Do các phương phápnhư vậy đều sử dụng thông tin đạo hàm bậc nhất và bậc hai theo đúng công thức, cácthuộc tính hội tụ địa phương là rất tốt Tuy vậy, chúng đều không thực tế bởi lẽ việctính toàn bộ ma trận Hessian có thể là rất tốn kém trong các bài toán có phạm vi rộng

2.4.6 Các thuật toán tối ưu khác

Cực trị địa phương có thể xảy ra trong trường hợp mạng không được huấn luyện mộtcách tối ưu, trong nhiều trường hợp, các cực trị này là chấp nhận được Nếu ngược lại,mạng cần được huấn luyện lại cho đến khi hiệu năng tốt nhất có thể được tìm ra Mặc

dù vậy, có các kỹ thuật đã được thiết kế nhằm làm tăng hiệu quả của quá trình học củamạng, trong đó bao gồm Thuật toán giả luyện kim hoặc thuật giải di truyền (Masters1993) Các phương pháp này có thể giúp vượt qua được cực trị địa phương đã đượcứng dụng thành công trong một số vấn đề

2.4.5.1 Thuật toán giả luyện kim (Simulated annealing)

Kỹ thuật tôi là một quá trình luyện kim, trong đó sự sắp xếp ngẫu nhiên của các phân

tử cácbon trong thép được chuyển đổi thành một kim loại có cấu trúc lớp ít giòn hơn.Quá trình này bao gồm việc nung kim loại ở một nhiệt độ rất cao và sau đó làm lạnh từ

từ Các phân tử ở nhiệt độ cao có mức năng lượng cao, là cho các phân tử này chuyểnđộng Khi mà nhiệt độ giảm đi, các chuyển động cũng giảm đi và chúng được sắp xếpthành các lớp

Ý tưởng này được áp dụng vào các thuật toán huấn luyện cho mạng nơron Nhiệt độđược coi như là hệ số học được giảm dần Ý tưởng ở đây là nếu mạng gặp phải mộtđiểm cực trị địa phương thì nó sẽ được “rung” (shake) để có thể thoát khỏi cực trị địaphương Nếu như “nhiệt độ” được giữ không đổi thì hệ sẽ chỉ chuyển từ một điểm cựctrị địa phương này sang một điểm cực trị địa phương khác và khó có thể ổn định Nếukhả năng nhảy được giảm đều thì mạng sẽ có xu hướng đạt đến được điểm cực trị toàncục Và một khi mạng đạt đến điểm cực trị toàn cục thì mức rung sẽ không đủ để cóthể khiến cho mạng bỏ qua nó

Rõ ràng thuật toán giả luyện kim có dáng dấp của một thuật toán huấn luyện với hệ sốhọc biến đổi, tuy nhiên, hệ số học trong thuật toán này được giảm dần trong khi, thuậttoán huấn luyện sử dụng hệ số học biến đổi sẽ làm tăng hay giảm hệ số học tùy thuộcvào tình huống cụ thể khi sai số khi học là tăng hay giảm

2.4.5.2 Thuật giải di truyền (Genetic Algorithm)

Đây thực chất là một thuật toán tìm kiếm điểm tối ưu trong không gian của các tham

số

Ngày đăng: 25/01/2016, 11:22

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[5] Báo cáo “Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6 Đại học Đà Nẵng - 2008 - Tự động nhận dạng biển số đăng ký xe trong ảnh chụp từ camera,tr2-5 Sách, tạp chí
Tiêu đề: Hội nghị Sinh viên Nghiên cứu Khoa học
[7] Tolga Birdal - Famous Otsu Thresholding - http://www.codeproject.com/KB/graphics/OtsuSharp.aspx Link
[1] PGS. TS. Đỗ Năng Toàn, TS. Phạm Việt Bình – Giáo trình xử lý ảnh – Khoa Công Nghệ Thông Tin trường đại học Thái Nguyên, tr 09-13, tr 31-39, tr82-84, tr 85- 106 Khác
[2] Đỗ Năng Toàn, Phạm Việt Bình - Một thuật toán cắt chữ in dính ở mức từ dựa vào chu tuyến, tr1-7 Khác
[3] Tạp chí khoa học và công nghệ,Đại học Đà Nẵng – Số 4(27).2008 – Nhận dạng ký tự quang học bằng mạng noron, tr1-5 Khác
[4] Trần Đức Minh – luận văn tốt nghiệp cao học – Mạng noron, thuật toán lan truyền ngược, tr 36-40 Khác
[6] 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, tr1-7 Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w