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

Nghiên cứu về mô hình thống kê học sâu và ứng dụng trong nhận dạng chữ viết tay hạn chế

70 602 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 70
Dung lượng 1,06 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Thậm chí, cùng một kí tự trong một văn bản do một người viết nhiều khi cũng có Chính vì vậy học viên đã chọn đề tài “Nghiên cứu về mô hình thống kê học sâu và ứng dụng trong nhận dạng c

Trang 1

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

MAI VĂN THỦY

NGHI£N CøU VÒ M¤ H×NH THèNG K£ HäC S¢U Vµ øNG DôNG TRONG NHËN D¹NG CH÷ VIÕT TAY H¹N CHÕ

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

TH¸I NGUY£N - 2015

Trang 2

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

MAI VĂN THỦY

NGHI£N CøU VÒ M¤ H×NH THèNG K£ HäC S¢U Vµ øNG DôNG TRONG NHËN D¹NG CH÷ VIÕT TAY H¹N CHÕ

Chuyên ngành : Khoa Học Máy Tính

Mã số : 60 48 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC

TS Vũ Tất Thắng

TH¸I NGUY£N - 2015

Trang 3

LỜI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác

Qua đây tôi xin chân thành cảm ơn toàn thể các thầy cô trong khoa đào tạo sau đại học Trường Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên, những người đã trực tiếp giảng dạy, truyền đạt cho tôi kiến thức chuyên môn và phương pháp làm việc khoa học

Đặc biệt, tôi xin chân thành cảm ơn TS Vũ Tất Thắng, đã tận tình hướng

dẫn để tôi có thể hoàn thành luận văn này

Tôi cũng xin gửi lời cảm ơn tới gia đình bạn bè đã giúp đỡ, động viên và tạo điều kiện cho tôi trong quá trình làm luận văn

Tác giả luận văn

Mai Văn Thủy

Trang 4

MỤC LỤC

LỜI CAM ĐOAN i

MỤC LỤC iv

DANH MỤC HÌNH ẢNH vi

DANH MỤC BẢNG BIỂU vii

LỜI MỞ ĐẦU 1

Chương 1: GIỚI THIỆU ĐỀ TÀI 3

1.1 Giới thiệu về bài toán nhận dạng 3

1.1.1 Các giai đoạn phát triển 3

1.1.2 Tình hình nghiên cứu trong nước 4

1.1.3 Tình hình nghiên cứu ở nước ngoài 4

1.2 Các bước xử lý cho bài toán nhận dạng hoàn chỉnh 6

1.3 Kết luận chương 8

Chương 2: MÔ HÌNH SVM VÀ MÔ HÌNH THỐNG KÊ HỌC SÂU 9

2.1 Tổng quan về mô hình SVM (Support Vector Machine) 9

2.1.1 Cơ sở lý thuyết 9

2.1.1.1 Giới thiệu bài toán phân lớp nhị phân 9

2.1.1.2 Máy SVM tuyến tính 10

2.1.1.3 Máy SVM phi tuyến 17

2.1.2 Các thuật toán huấn luyện SVM 19

2.1.2.1 Thuật toán chặt khúc 19

2.1.2.2 Thuật toán phân rã 19

2.1.2.3 Thuật toán cực tiểu tuần tự 20

2.2 Cơ sở lý thuyết mô hình thống kê học sâu 23

2.2.1 Một số lý thuyết về mạng Neuron 23

2.2.1.1 Giới thiệu về mạng Neuron 23

2.2.1.2 Cấu trúc và hoạt động của mạng Neuron 23

2.2.1.3 Quá trình huấn luyện mạng và các thuật toán học mạng 28

Trang 5

2.2.2 Hopfield Network 31

2.2.2.1 Cấu trúc mạng Hopfield 31

2.2.2.2 Mạng Hopfield rời rạc 33

2.2.2.3 Mạng Hopfield liên tục 34

2.2.3 Boltzmann Machines 36

2.2.4 Restricted Boltzmann Machines 39

2.2.3 Thuật toán lan truyền ngược 40

2.3 Kết luận chương 42

Chương 3: KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ 43

3.1 Môi trường thực nghiệm 43

3.2 Dữ liệu thực nghiệm 43

3.3 Kết quả thực nghiệm với mô hình SVM 44

3.4 Huấn luyện mô hình và kết quả thực nghiệm với mô hình thống kê học sâu 45

3.4.1 Huấn luyện mô hình 45

3.4.1.1 Cấu trúc mô hình 45

3.4.1.2 Phương pháp huấn luyện và quy trình nhận dạng 47

3.4.2 Giao diện chính của chương trình 48

3.4.3 Kết quả thực nghiệm 49

3.5 Đánh giá kết quả thực nghiệm của hai mô hình 50

3.6 Kết luận chương 51

KẾT LUẬN CHUNG 52

TÀI LIỆU THAM KHẢO 54

PHỤ LỤC: HUẤN LUYỆN MÔ HÌNH 56

Trang 6

DANH MỤC HÌNH ẢNH

Hình 1-1: Các bước trong nhận dạng chữ viết tay 6

Hình 2-1: Các siêu phẳng H1, H2 phân cách giữa hai lớp 9

Hình 2-2: Siêu phẳng tách tuyến tính 10

Hình 2-3: Không thể phân hoạch tập mẫu trên bằng một siêu phẳng 13

Hình 2-4: Một mặt phân chia phi tuyến có thể trở thành một siêu phẳng trong không gian lớn hơn 17

Hình 2-5: Cấu trúc của một neuron 24

Hình 2-6: Cấu trúc chung của mạng neuron 26

Hình 2-7: Cấu trúc của mạng Hopfield 31

Hình 2-8: Đồ thị hàm satlins 32

Hình 2-9: Mạng Hopfield liên tục sử dụng mạch điện tử 35

Hình 2-10: Một Boltzmann Machine với 3 nút ẩn 36

Hình 2-11: Một RBM đơn giản với 3 hidden units và 2 visible units 39

Hình 3-2: Giao diện chính của chương trình nhận dạng chữ viết tay hạn chế 48

Hình 3-3: Chương trình khi nhận dạng 1 ảnh bất kỳ 48

Hình 3-4: Nhận dạng và thống kê nhiều ảnh 49

Trang 7

DANH MỤC BẢNG BIỂU

Bảng 2-1: Các hàm truyền cơ bản 27

Bảng 3-1: Kết quả thực nghiệm mô hình SVM trên 2 tập dữ liệu MNIST và Tuyển Sinh 44

Bảng 3-2: Kết quả thực nghiệm mô hình SVM trên tập dữ liệu MNIST 44

Bảng 3-3: Kết quả thực nghiệm mô hình SVM trên tập dữ liệu Tuyển Sinh 45

Bảng 3-4: Kết quả thực nghiệm trên 2 tập dữ liệu MNIST và Tuyển Sinh 49

Bảng 3-5: Kết quả thực nghiệm trên tập dữ liệu Tuyển sinh 50

Bảng 3-6: Bảng so sánh kết quả giữa hai mô hình 50

Trang 8

LỜI MỞ ĐẦU

Nhận dạng chữ viết tay là bài toán khó trong lớp các bài toán nhận dạng chữ, và vẫn luôn thu hút được nhiều sự quan tâm nghiên cứu của các nhà khoa học Đặc biệt là trong vài thập niên gần đây, do sự thúc đẩy của quá trình tin học hóa trong mọi lĩnh vực, ứng dụng nhận dạng chữ càng có nhiều ý nghĩa khi được sử dụng cho các bài toán trong thực tế Cũng như nhiều bài toán nhận dạng tiếng nói, hình ảnh… khác, thì độ chính xác của hệ thống vẫn tiếp tục cần phải cải thiện nhằm vươn tới khả năng nhận dạng giống như con người

Tuy nhiên, với bài toán nhận dạng chữ viết tay thì vấn đề trở nên phức tạp hơn nhiều so với bài toán nhận dạng chữ in thông thường ở những vấn đề sau đây [3]:

 Với chữ viết tay thì không thể có các khái niệm font chữ, kích cỡ chữ Các

kí tự trong một văn bản chữ viết tay thường có kích thước khác nhau Thậm chí, cùng một kí tự trong một văn bản do một người viết nhiều khi cũng có

Chính vì vậy học viên đã chọn đề tài “Nghiên cứu về mô hình thống kê học sâu

và ứng dụng trong nhận dạng chữ viết tay hạn chế” làm luận văn tốt nghiệp với

mong muốn phần nào áp dụng vào bài toán thực tế

Bài toán đã đặt ra phải giải quyết được những yêu cầu sau:

 Nhận dạng được các ký tự từ ảnh đầu vào

Trang 9

 Tiến hành nhận dạng kí tự đơn lẻ sử dụng mạng Neuron nhân tạo theo phương pháp học sâu Restricted Boltzmann machine (RBM)

 Đánh giá kết quả và so sánh với mô hình Support Vector Machine Với nhưng yêu cầu đã đặt ra ở trên, cấu trúc của luận văn sẽ bao gồm những nội dung sau đây:

 Chương 1:Tổng quan về đề tài

Giới thiệu về bài toán nhận dạng chữ viết tay, tình hình nghiên cứu trong và ngoài nước, quy trình chung để giải quyết bài toán và các phương pháp điển hình trong việc huấn luyện nhận dạng, phạm vi của đề tài

 Chương 2: Mô hình SVM và mô hình thống kê học sâu

Trình bày về cơ sở lý thuyết của mô hình SVM (Support Vector Machine)

và huấn luyện trong bài toán nhận dạng chữ viết tay Cơ sở lý thuyết của mô hình thống kê học sâu: Hopfield network, Boltzmann Machines, Restricted Boltzmann Machines và thuật toán lan truyền ngược

 Chương 3: Kết quả thực nghiệm và đánh giá

Trình bày các kết quả thực nghiệm của hai mô hình SVM và mô hình thống

kê học sâu, đưa ra kết quả đánh giá nhận dạng chữ viết tay hạn chế giữa mô hình SVM và mô hình thống kê học sâu

Trang 10

Chương 1 GIỚI THIỆU ĐỀ TÀI

1.1 Giới thiệu về bài toán nhận dạng

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 192 ngôn ngữ khác nhau, 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 – Viện Hàn lâm Khoa học và Công nghệ Việt Nam 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 với độ chính xác trên 98%)

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 được vì nó hoàn toàn phụ thuộc 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 sức khỏe, tinh

thần của từng người viết

1.1.1 Các giai đoạn phát triển

- Mô hình nhận dạng chữ viết được đề xuất từ năm 1951 do phát minh của M Sheppard được gọi là GISMO, một robot đọc-viết

- Năm 1954, máy nhận dạng chữ đầu tiên đã được phát triển bởi J Rainbow dùng để đọc chữ in hoa nhưng rất chậm

- Năm 1967, Công ty IBM đã thương mại hóa hệ thống nhận dạng chữ

 Giai đoạn 2 (1980 - 1990)

- Với sự phát triển của các thiết bị phần cứng máy tính và các thiết bị thu nhận dữ liệu, các phương pháp luận nhận dạng đã được phát triển trong giai đoạn trước

Trang 11

đã có được môi trường lý tưởng để triển khai các ứng dụng nhận dạng chữ

- Các hướng tiếp cận theo cấu trúc và đối sánh được áp dụng trong nhiều hệ thống nhận dạng chữ

- Trong giai đoạn này, các hướng nghiên cứu chỉ tập trung vào các kỹ thuật nhận dạng hình dáng chứ chưa áp dụng cho thông tin ngữ nghĩa Điều này dẫn đến sự hạn chế về hiệu suất nhận dạng, không hiệu quả trong nhiều ứng dụng thực tế

 Giai đoạn 3 (1990 - nay)

- Các hệ thống nhận dạng thời gian thực được chú trọng trong giai đoạn này

- Các kỹ thuật nhận dạng kết hợp với các phương pháp luận trong lĩnh vực học máy (Machine Learning) được áp dụng rất hiệu quả

- Một số công cụ học máy hiệu quả như mạng Neuron, mô hình Markov ẩn, SVM (Support Vector Machines) và xử lý ngôn ngữ tự nhiên

1.1.2 Tình hình nghiên cứu trong nước

Tại Việt Nam, trong những năm gần đây có rất nhiều những nhóm nghiên cứu

về nhận dạng chữ viết tay sử dụng các mô hình phổ biến hiện nay như: SVM (Support Vector Machine), HMM (Hidden Markov Model), mạng Neuron… Nhưng nhìn chung thì chất lượng nhận dạng của các mô hình này đều chưa cao vì chữ viết tay còn nhiều các yếu tố tác động đến như: độ cao, độ nghiêng, các nét liền… của chữ viết đều ảnh hưởng rất nhiều đến quá trình nhận dạng Hiện tại, chúng ta mới chỉ có được những sản phẩm thử nghiệm như hệ thống nhận dạng chữ số và chữ cái viết tay rời rạc trên các phiếu xuất nhập cảnh của nhóm nghiên cứu ở Đại học quốc gia thành phố Hồ Chí Minh,…

1.1.3 Tình hình nghiên cứu ở nước ngoài

Nhận dạng chữ viết đã được nghiên cứu hơn 40 năm qua Ngày nay nhận dạng chữ viết đã nhận được sự quan tâm đáng kể do sự phát triển của các máy tính cầm tay và điện thoại cầm tay dựa trên các bàn phím, chuột và nhiều dạng thiết bị định

vị khác Nhận dạng chữ viết tay được thực hiện qua hai hình thức là nhận dạng online và nhận dạng offline Nhận dạng online có nghĩa là máy tính sẽ nhận dạng

Trang 12

các chữ được viết lên màn hình ngay sau khi nó được viết Đối với những hệ nhận dạng này, máy tính sẽ lưu lại các thông tin về nét chữ như thứ tự nét viết, hướng và tốc độ của nét viết trong khi nó đang được viết ra Đây chính là cơ sở để máy tính nhận dạng được chữ cái, do đó việc nhận dạng không gặp quá nhiều khó khăn Hệ thống nhận dạng chữ viết tay hạn chế trực tuyến trên một trạm làm việc của IBM [11] do nhóm nghiên cứu gồm H.S.M.Beigi, C.C.Tapert, M.Ukeison và C.G.Wolf ở phòng thực hành Watson IBM cài đặt là một trong những sản phẩm nhận dạng chữ viết tay online tiêu biểu nhất Tuy nhiên, do chưa có nhiều ứng dụng thực tế nên nhận dạng chữ viết tay trực tuyến chưa được biết đến nhiều và khi nhắc đến nhận dạng chữ viết tay chúng ta thường hiểu hình thức nhận dạng ở đây là offline

Các kết quả nhận dạng chữ viết tay offline hiện này còn rất hạn chế Các kết quả nghiên cứu chưa tìm được giải pháp đủ tốt để giải quyết hết những khó khăn tiêu biểu sau của bài toán nhận dạng chữ viết tay:

 Kích thước của chữ viết tay không đồng đều

 Kiểu dáng chữ của mỗi người viết đều rất khác nhau

 Giữa các kí tự trong cùng một từ thường có nét nối, thậm chí dính liền vào nhau

 Các kí tự có thể thiếu hoặc thừa nét

 Xuất hiện tình trạng dính dòng

Do những khó khăn trên nên khi giải quyết bài toán nhận dạng chữ viết tay đều buộc phải giới hạn trong một phạm vi nào đó với những tiêu chuẩn cụ thể cho mẫu chữ nhận dạng Chính vì vậy, các kết quả thu được cũng chỉ được áp dụng một cách hạn chế ở lĩnh vực hẹp trong một bài toán cụ thể nào đó

Một số hệ nhận dạng chữ viết tay tiêu biểu có thể kể đến như: hệ thống nhận dạng chữ viết tay trong lĩnh vực kiểm tra tài khoản ở ngân hàng của nhóm nghiên cứu Simon và O.Baret (Laoria/CNRS & ENPC, Paris) [11], hệ thống phân loại tự động địa chỉ thư ở bưu điện của M.Pfister, S.Behnke và R.Rojas ở Đại học tổng hợp Berlin, Đức [5]…

Trang 13

1.2 Các bước xử lý cho bài toán nhận dạng hoàn chỉnh

Nhận dạng chữ viết tay thường bao gồm năm giai đoạn: tiền xử lý (preprocessing), tách chữ (segmentation), trích chọn đặc trưng (representation), huấn luyện và nhận dạng (training and recognition), hậu xử lý (postprocessing)

Hình 1-1: Các bước trong nhận dạng chữ viết tay

 Tiền xử lý (preprocessing): giảm nhiễu cho các lỗi trong quá trình quét ảnh, hoạt động viết của con người, chuẩn hóa dữ liệu và nén dữ liệu

 Tách chữ (segmentation): chia nhỏ văn bản thành những thành phần nhỏ hơn, tách các từ trong câu hay các kí tự trong từ

 Trích trọn đặc trưng (representation): giai đoạn đóng vai trò quan trọng

nhất trong nhận dạng chữ viết tay Để tránh những phức tạp của chữ viết tay cũng như tăng cường độ chính xác, ta cần phải biểu diễn thông tin chữ viết dưới những dạng đặc biệt hơn và cô đọng hơn, rút trích các đặc điểm riêng nhằm phân biệt các ký tự khác nhau Trong luận văn này, tôi nghiên cứu và tìm hiểu về mô hình học thống kê học sâu, trong mô hình này thì khi huấn luyện và sử dụng dữ liệu chúng ta không cần sử dụng đặc trưng của ảnh đầu

vào nên có thể bỏ qua bước trích rút đặc trưng

 Huấn luyện và nhận dạng (training and recognition): phương pháp điển

hình so trùng mẫu, dùng thống kê, mạng neuron, mô hình markov ẩn, trí tuệ

Trang 14

nhân tạo hay dùng phương pháp kết hợp các phương pháp trên.Trong luận văn này, tôi sử dụng mô hình thống kê học sâu (deep learning) để huấn luyện và nhận dạng, nội dung này sẽ được trình bày trong các chương sau

của luận văn

 Hậu xử lý (postprocessing): sử dụng các thông tin về ngữ cảnh để giúp tăng cường độ chính xác, dùng từ điển dữ liệu

Ban đầu các văn bản chữ viết tay được scan và đưa vào hệ thống nhận dạng, với quá trình tiền xử lý thì ảnh sẽ được một ảnh mà do hệ thống yêu cầu để huấn luyện và nhận dạng (có thể là ảnh nhị phân hay ảnh đa mức xám) Trong mô hình thống kê học sâu, ảnh được sử dụng để huấn luyện và nhận dạng là ảnh đa mức xám (các pixel được biểu diễn bởi các giá trị từ 0 đến 255) Tại quá trình tiền xử lý thì ảnh cũng đã được xử lý loại bỏ nhiễu, các giá trị không cần thiết trong ảnh đầu vào

Tại bước tách chữ thì với ảnh đã được tiền xử lý, khi đi qua bước này sẽ được thực hiện tách dòng, tách chữ, tách kí tự để thực hiện nhận dạng, tùy theo quy định của một hệ thống khi huấn luyện Khi đã được tách rời các kí

tự thì việc tiếp theo ảnh để nhận dạng sẽ được lưu dưới dạng ma trận điểm, với tùy từng vị trí của điểm ảnh mà giá trị có thể khác nhau (từ 0 đến 255), trong mô hình Deep Learning thì ma trận điểm ảnh sẽ được quy về dạng chuẩn là 28 x 28

Sau khi qua các bước xử lý ở trên thì ảnh chính thức được đưa vào huấn luyện và nhận dạng, trong quá trình huấn luyện và nhận dạng sẽ sử dụng các mô hình và thuật toán cần thiết để thực hiện tính toán và xử lý, những thuật toán và quá trình xử lý sẽ được trình bày chi tiết trong các phần sau của luận văn

Cuối cùng khi các ảnh đầu vào đã được đưa vào nhận dạng và cho ra kết quả thì bước quan trọng không kém là quá trình hậu xử lý với các kết quả ở trên, và trả lại kết quả cho người dử dụng [3]

Trang 15

1.3 Kết luận chương

Luận văn “Nghiên cứu về mô hình thống kê học sâu và ứng dụng trong nhận

dạng chữ viết tay hạn chế” được thực hiện với mục đích giải quyết một lớp con các

bài toán nhận dạng chữ viết tay mà cụ thể là nhận dạng các kí tự đơn lẻ là các chữ

số từ 0 đến 9, đây là bước cần thiết trong bài toán nhận dạng chữ viết tiếng Việt

Từ đó sẽ tạo cơ sở tiếp theo để có thể xây dựng tiếp mô hình nhận dạng các kí tự tiếng Việt đơn lẻ, và sẽ tiến tới xây dựng một hệ thống nhận dạng văn bản viết tay tiếng Việt hoàn chỉnh, và cũng có thể xây dựng nên các phần mềm trên các thiết bị

di động áp dụng vào việc hỗ trợ việc học tập và sinh hoạt của người khiếm thị Luận văn sẽ tập trung vào nghiên cứu về cơ sở lý thuyết mô hình Deep Learning, các thuật toán được sử dụng, thực hiện huấn luyện bằng mô hình Deep Learning, từ đó cài đặt chương trình mô phỏng trên các ngôn ngữ như Matlab, PHP, C#

Trang 16

Chương 2

MÔ HÌNH SVM VÀ MÔ HÌNH THỐNG KÊ HỌC SÂU

2.1 Tổng quan về mô hình SVM (Support Vector Machine)

2.1.1 Cơ sở lý thuyết

2.1.1.1 Giới thiệu bài toán phân lớp nhị phân

Bài toán phân lớp nhị phân [7] này được phát biểu như sau: Cho tập dữ liệu gồm N mẫu huấn luyện {( , ), ,(x y1 1 x N,y N)} trong đó xi RD và yi  {±1} Tìm

một siêu phẳng phân cách w.x + b = 0 để tách tập dữ liệu trên thành 2 lớp, trong đó

w là véc tơ pháp tuyến của siêu phẳng, có tác dụng điều chỉnh hướng của siêu

phẳng, giá trị b có tác dụng di chuyển siêu phẳng song song với chính nó Có thể có

nhiều siêu phẳng để phân cách được hai tập dữ liệu đó (hình dưới) và cũng đã có nhiều thuật toán để giải bài toán này, chẳng hạn như thuật toán Perceptron của Rosenblatt, thuật toán biệt thức tuyến tính của Fisher Tuy nhiên vấn đề là cần tìm

ra siêu phẳng nào làm cho khoảng cách Euclid giữa hai lớp trên là lớn nhất, khi đó bài toán phân lớp mới được giải quyết triệt để và phương pháp SVM được sử dụng

để giúp tìm ra siêu phẳng này [2]

Hình 2-1: Các siêu phẳng H , H phân cách giữa hai lớp

Trang 17

2.1.1.2 Máy SVM tuyến tính

SVM trong trường hợp tập mẫu phân hoạch tuyến tính được

Ý tưởng chính của SVM là tìm một siêu phẳng phân cách H: w.x + b = 0 [8] và hai

siêu phẳng song song với nó:

H ywx b  

với điều kiện không có phần tử nào nằm giữa H1 và H2 sao cho khoảng cách

(margin) giữa H1 và H2 đạt cực đại (Hình 2.2)

Hình 2-2: Siêu phẳng tách tuyến tính

Mục đích của ta là cực đại khoảng cách giữa H1 và H2 Vì vậy, chúng ta phải xác định cho được những mẫu dương nằm trên H1 và mẫu âm nằm trên H2 Các mẫu

này được gọi là vector hỗ trợ bởi vì chỉ có chúng tham gia vào việc xác định siêu

phẳng phân cách, còn các mẫu khác thì có thể loại bỏ

Trang 18

Ta có hai khoảng cách của một điểm nằm trên tới H là | | 1

w.x + b> +1, với các mẫu dương y   i 1

w.x + b< -1, với các mẫu âm y   i 1Hai điều kiện này có thể kết nối lại thành

Trang 19

Từ (1) và (2) ta có:

1

N

i i i i

Thế vào L (w, b, α), ta có:

12

khác có thì nằm về hai phía của siêu phẳng và [4][6]

Khi đã giải được các ta có thể tính:

1

N

i i i i

SVM tuyến tính trong trường hợp tập mẫu không phân hoạch tuyến tính được

Trường hợp tập mẫu có thể phân chia tuyến tính được chỉ là một trường hợp đặc biệt Trong trường hợp tổng quát, tập mẫu là một tập không phân chia tuyến tính được bằng siêu phẳng

Trang 20

Hình 2-3: Không thể phân hoạch tập mẫu trên bằng một siêu phẳng

Tuy nhiên ta vẫn muốn dùng siêu phẳng để phân chia tập mẫu này Để có thể áp dụng được phương pháp trong phần trên, ta phải gán cho mỗi mẫu x i một sai số i

không âm để “xem như có thể phân chia tuyến tính”

N T

Trang 21

wy x



Để huấn luyện SVM, chúng ta nghiên cứu thông qua miền xác định của bài toán đối

ngẫu và cực đại hàm mục tiêu Giải pháp tối ưu này có thế được kiểm tra bằng cách

sử dụng điều kiện KKT

Định lý KKT: Điều kiện tối ưu KKT của bài toán đối ngẫu (**) là:

 Đạo hàm L (w, b, ξ; α) theo các biến w, b, ξ phải triệt tiêu (điều này buộc phải luôn luôn thỏa mãn đối với bài toán đối ngẫu)

Với 1 i N,i( (y w x i T ib)i1) (3) 0

0

i i

   (4) Phụ thuộc vào giá trị của i, ta có ba trường hợp để xem xét:

1 Nếu i  thì 0 iCiC 0

Từ phương trình (4),  0 Vì vậy ta có: y w x( Tb) 1  0

Trang 22

2 Nếu 0iC, từ phương trình (3), ta có:

y w xb    (5) Chú ý rằng iCi 0, vì vậy i 0 (phương trình 4) Thế vào phương trình (5) ta có:

Kiểm tra điều kiện tối ưu

Vì bài toán đối ngẫu không giải trực tiếp đối với ngưỡng b,bài toán này sẽ có lợi khi kiểm tra điều kiện KKT mà không sử dụng ngưỡng b

Đại lượng y w x i( T ib) 1 (buộc phải  với mọi điều kiện i nếu điều kiện 0KKT thỏa mãn) cũng có thể được viết:

Trang 23

Chú ý: Với E iF ib, ta có E E i- jF i - F j (Phương trình này rất có ích,

vì thuật toán SMO của Platt sử dụng E i - E khi tối ưu hai hệ số Lagrange j

I I I I F b j I I I F b

          Việc so sính này không

sử dụng ngưỡng b

Trang 24

2.1.1.3 Máy SVM phi tuyến

Trong trường hợp tổng quát, thực tế mặt phân hoạch có thể là một mặt phi tuyến bất kỳ (Hình 2-4) Nếu dữ liệu không khả tách tuyến tính, ta có thể ánh xạ các dữ liệu đầu vào sang một không gian đặc trưng mới có số chiều cao hơn sao cho

dữ liệu này sẽ khả tách tuyến tính Giả sử các mẫu x i thuộc không gianR , không n

gian này được gọi là không gian giả thiết (hypothesis space) Để tìm mặt phẳng phi

tuyến trong không gian này, có thể áp dụng một thủ thuật là ánh xạ vector mẫu x từ i

n

R vào một khoảng không gian R có số chiều cao lớn hơn (d > n, d có thể bằng vô d

cùng) R được gọi là không gian đặc trưng (feature space) Sau đó áp dụng phương d

pháp SVM tuyến tính để tìm ra một siêu phẳng phân hoạch trong không gian đặc trưng

d

R Siêu phẳng này sẽ là ứng với mặt phi tuyến trong không gian n

R [2]

Hình 2-4: Một mặt phân chia phi tuyến có thể trở thành một siêu phẳng trong

không gian lớn hơn

Ánh xạ từ không gian R vào không gian n R d;

Gọi ánh xạ được áp dụng là  , như vậy:

Trang 25

1 ,

1

( ) ( )2

Giả sử: ( ) (x ix j)K x x( ,i j) Nghĩa là, tích vô hướng trong không gian

đặc trưng tương đương với một hàm nhân (kernel) của không gian đầu vào Vì vậy,

ta không cần phải tính trực tiếp  ( ) (x ix j) mà chỉ cần thông qua hàm nhân ( ,i j)

K x x để tính tích vô hướng trong một không gian mới với số chiều cao hơn

Điều kiện Mercer có thể dùng để xác định một hàm có thể được sử dụng

như là một hàm nhân hay không:

Định lý Mercer: Một hàm K x y( , ) có thể được sử dụng như một hàm nhân nếu:

- K phải đối xứng: K x y( , )K y x( , ) với mọi , D

x yR

- Tồn tại một ánh xạ  và một khai triển ( , ) ( ) ( )i i

i

K x y  xy nếu và chỉ nếu với mỗi hàm g x sao cho ( ) g x dx( )2 hữu hạn thì:

( , ) ( ) ( ) 0

K x y g x g y dxdy 

Sau đây là các hàm nhân được sử dụng rộng rãi: [8]

 Hàm nhân đa thức (Polynominal):

( , ) ( )d

K x yx y dN,R

 Hàm nhân Gauss (Gaussian RBF-Radial Basic Function):

2 2

Trang 26

2.1.2 Các thuật toán huấn luyện SVM

2.1.2.1 Thuật toán chặt khúc

Thuật toán chặt khúc (Chunking) bắt đầu với một tập con bất kì (chunk) của

tập dữ liệu huấn luyện, sau đó huấn luyện SVM theo một phương án tối ưu trên chunk dữ liệu vừa chọn Tiếp đến, thuật toán giữ lại vector hỗ trợ (các mẫu có

0

i

  ) từ chunk sau khi đã loại bỏ các phần tử khác (tương ứng với i 0) và dùng các vector hỗ trợ này để kiểm tra các phần tử còn lại của tập dữ liệu Phần tử nào vi phạm điều kiện KKT thì được bổ sung vào các tập các vector hỗ trợ để tạo ra chunk mới Công việc này được lặp đi lặp lại, việc khởi tạo lại  cho mỗi bài toán con mới phụ thuộc vào các giá trị đầu ra của trạng thái trước đó và tiếp tục tối ưu bài toán con mới với các tham số tối ưu đã được chọn Thuật toán sẽ dừng lại khi thỏa mãn điều kiện tối ưu Chunk của dữ liệu tại thời điểm đang xét thường

được hiểu như tập làm việc (working set) Kích thước của tập làm việc luôn thay

đổi, nhưng cuối cùng nó bằng số lượng i khác không (bằng số lượng vector hỗ trợ) Phương pháp này được sử dụng với giả thiết rằng ma trận Gram dùng để lưu tích vô hướng của từng cặp các vector hỗ trợ phù hợp với kích thước bộ nhớ (chúng

ta có th ể tính lại ma trận Gram bất cứ lúc nào khi thấy cần thiết, nhưng điều này sẽ làm giảm tốc độ huấn luyện) Trong thực nghiệm, có thể xẩy ra trường hợp số lượng vector hỗ trợ quá lớn, làm cho ma trận Gram vượt quá khả năng lưu trữ của

máy tính

2.1.2.2 Thuật toán phân rã

Thuật toán phân rã (Decomposition) khắc phục được khó khăn của thuật toán Chunking bằng cách cố định kích thước của bài toán con (kích thước của ma trận

Gram) Vì vậy tại mọi thời điểm, một phần tử mới được bổ sung vào tập làm việc

thì một phần tử khác bị loại ra Điều này cho phép SVM có khả năng huấn luyện với tập dữ liệu lớn Tuy nhiên, thực nghiệm cho thấy phương pháp này hội tụ rất chậm [4]

Trong thực nghiệm, ta có thể chọn vài mẫu để bổ sung và loại bỏ từ bài toán

Trang 27

con để tăng tốc độ hội tụ Thuật toán này được trình bày tóm tắt như sau:

Input

- Tập S gồm N mẫu huấn luyện {( ,x y i i)}i 1, ,N

- Kích thước của Working Set là M

Output

Tập { }i i 1, ,N

1 Khởi tạo

 Đặt các i 0;

 Chọn các Working Set B với kích thước M;

2 Tìm nghiệm tối ưu

Repeat

 Giải bài toán tối ưu cục bộ trên B;

 Cập nhật lại B;

Until <thỏa mãn điều kiện tối ưu toàn cục>

2.1.2.3 Thuật toán cực tiểu tuần tự

Thuật toán cực tiểu tuần tự (SMO -Sequential Minimal Optimization) [9] là một thuật toán đơn giản để giải bài toán quy hoạch lồi SVM một cách nhanh chóng

mà không cần lưu trữ ma trận Gram SMO phân tích bài toán quy hoạch lồi tổng quát thành các bài toán quy hoạch lồi con, sử dụng định lý Osuma để đảm bảo sự hội tụ

Thuật toán này là trường hợp đặc biệt của thuật toán Decomposition, tức là

nó giải bài toán quy hoạch lồi với kích thước tập làm việc là 2 trong mỗi bước lặp

Ưu điểm của thuật toán này là có thể giải bài toán tối ưu bằng phương pháp giải tích

a Tối ưu hai i

Thuật toán SMO thực hiện hai công việc chính: Giải bài toán tối ưu cho hai nhân tử Lagrange bằng phương pháp giải tích và một phương pháp Heuristic để

Trang 28

chọn hai nhân tử cho việc tối ưu

Thuật toán SMO tìm kiếm thông qua miền xác định của bài toán đối ngẫu để cực đại hàm mục tiêu:

12

ưu Bản chất của nó là thuật toán leo đồi

b Cập nhật tham số mỗi bước tối ưu thành công

Khi  1, 2bị thay đổi bởi 1,2, ta có thể cập nhật E F w (đối với hàm i, ,inhân tuyến tính) và b Cho E x y là lỗi đánh giá trên ( , )( , ) x y :

Trang 29

N

i i i i

c Chọn hai icho việc tối ưu

Giải thuật Heuristic đối với việc chọn hai i cho vài toán tối ưu trong thuật toán SMO gốc như sau:

 Vòng lặp ngoài, ta chọn i thứ nhất; vòng lặp trong, ta chọn i thứ hai sao cho |E2 -E cực đại 1|

 Vòng lặp ngoài, ta luân phiên giữa duyệt qua tập tất cả cá mẫu và tập các vector hỗ trợ (có 0iC) (ưu tiên duyệt qua tập các vector hỗ trợ, nếu không có mới duyệt toàn bộ mẫu), chọn ra mẫu vi phậm điều kiện KKT

 Có ithứ nhất, vong lặp trong tìm kiếm một vector hỗ trợ sao cho

2 - 1

|E E cực đại Đầu tiên nó duyệt qua các vector hỗ trợ, bắt đầu tại |một vị trí ngẫu nhieeun; Nếu công việc này cũng bị lỗi, nó bắt đầu duyệt qua toàn bộ mẫu, cũng bắt đầu tại một vị trí ngẫu nhiên

Bởi vì thuật toán này sử dụng hầu hết thời hian để điều chỉnh các mẫu không xác định, nên E của cá mẫu này phải được lưu trữ lại i

Trang 30

2.2 Cơ sở lý thuyết mô hình thống kê học sâu

Định nghĩa: Học sâu là phương pháp sử dụng nhiều lớp các đơn vị xử lý phi

tuyến để trích trọn các đặc trưng và chuyển đổi Trong các lớp này thì giá trị của các lớp đầu ra của lớp trước sẽ là giá trị đầu vào cho lớp kế tiếp nó Các thuật toán được sử dụng có thể là thuật toán học có giám sát hoặc không có giám sát Học sâu thì thường được áp dụng cho các mô hình nhận dạng mẫu và các bài toán phân loại thống kê Các thuật toán học sâu khác so với các thuật toán học nông ở việc biến đổi các tín hiệu tham

số khi nó truyền từ lớp đầu vào cho lớp đầu ra, nơi một tham số biến đổi là một đơn vị

xử lý có khả năng huấn luyện cho các tham số, chẳng hạn như trọng số và ngưỡng

2.2.1 Một số lý thuyết về mạng Neuron

2.2.1.1 Giới thiệu về mạng Neuron

Định nghĩa: Mạng neuron nhân tạo, Artificial Neural Network (ANN) gọi

tắt là mạng neuron, neural network, là một mô hình xử lý thông tin phỏng theo cách

thức xử lý thông tin của các hệ neuron sinh học Nó được tạo lên từ một số lượng

lớn các phần tử (gọi là phần tử xử lý hay neuron) kết nối với nhau thông qua các liên kết (gọi là trọng số liên kết) làm việc như một thể thống nhất để giải quyết một

vấn đề cụ thể nào đó

Một mạng neuron nhân tạo được cấu hình cho một ứng dụng cụ thể (nhận dạng

mẫu, phân loại dữ liệu, ) thông qua một quá trình học từ tập các mẫu huấn luyện Về

bản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các neuron

2.2.1.2 Cấu trúc và hoạt động của mạng Neuron

a Cấu trúc của một neuron

Từ định nghĩa ta thấy đơn vị hình thành nên mạng neuron là các neuron.Chức năng của mạng neuron nhân tạo tương tự như chức năng đơn giản nhất của các neuron sinh học đó là tích lũy (ghi nhớ) những tri thức đã được học về các sự vật để biết, phân biệt chúng mỗi khi gặp lại Chức năng này được hình thành thông qua một chuỗi liên tiếp các quá trình xử lý thông tin của các neuron trong mạng

Về cơ bản, mỗi neuron sinh học thực hiện nhiệm vụ của mình thông qua các bước: nhận đầu vào, xử lý đầu vào đó, đưa dữ liệu đã được xử lý ra output và liên

Trang 31

lạc với các neuron khác để gửi output này đi Với bản chất là mô hình mô phỏng đơn của của neuron sinh học, neuron nhân tạo cũng thực hiện nhiệm vụ của mình thông qua các thao tác: nhận đầu vào từ các neuron trước nhóm xử lý đầu vào bằng cách nhân mỗi đầu vào này với trọng số liên kết tương ứng và tính tổng các tích thu được rồi đưa ra một hàm truyền, sau đó gửi kết quả cuối cùng cho các neuron tiếp theo hoặc đưa ra output Cứ như vậy các neuron này hoạt động phối hợp với nhau tạo thành hoạt động chính của mạng neuron

Chúng ta có thể hình dung rõ rang hơn quy trình xử lý thông tin của một neuron qua cấu trúc của nó được thể hiện trong hình 2-5

Hình 2-5: Cấu trúc của một neuron

Trong hình vẽ trên:

 ( ,x x1 2,,x p) với p  : là các tín hiệu đầu vào của neuron Các tín hiệu 1này có thể là đầu ra của các neuron trước đó hoặc đầu vào ban đầu của mạng và thường được đưa vào dưới dạng một vector p chiều

w k1,w k2,,w kp là tập các trọng số liên kết của neuron k với p đầu vào

tương ứng ( ,x x1 2,,x p) Thông thường, các trọng số này được khởi tạo một cách ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học của mạng

  là hàm tổng trên một neuron, dùng để tính tổng các giá trị kích hoạt lên neuron đó Thông thường, đây là tổng của các tích giữa đầu vào với

Trang 32

trọng số liên kết tương ứng của neuron

u k là tổng các giá trị kích hoạt lên neuron thứ k, giá trị này chính là đầu

ra của hàm tổng

b k là ngưỡng (còn gọi là hệ số bias) của neuron thứ k, giá trị này được dùng như một thành phần phân ngưỡng trên hàm truyền và cũng dược cập nhật liên tục trong quá trình học của mạng

f(.) là hàm truyền, còn gọi là hàm kích hoạt (activation function) Hàm truyền được dùng để giới hạn phạm vi đầu ra của nỗi neuron Đối số của hàm là giá trị hàm tổng và ngưỡng b k Thông thường, phạm vi đầu ra của mỗi neuron được giới hạn trong đoạn [0,1] hoặc [-1,1] Như vậy miền giá trị của các hàm kích hoạt cũng là một trong hai đoạn trên Có rất nhiều hàm truyền thường được dùng, việc lựa chọn hàm truyền nào cho phù hợp tùy thuộc vào từng bài toán

y k là tín hiệu đầu ra của neuron thứ k, mỗi neuron thường có một đầu ra

và tối đa là một đầu ra Giá trị y k được tính theo công thức:

b Hoạt động của mạng neuron

Một mạng neuron có thể có nhiều lớp/tầng mạng và ít nhất phải có một lớp đó

là lớp đầu ra (lớp đầu vào thường không được tính là một lớp mạng) Mỗi lớp có thể

có một hoặc nhiều neuron Cấu trúc tổng quát của mạng neuron được thể hiện trong hình 2-6 dưới đây:

Trang 33

Hình 2-6: Cấu trúc chung của mạng neuron

Mạng neuron với cấu trúc như hình vẽ trên có thể mô tả như sau:

 Đầu vào của mạng vector có kích thước p: ( ,x x1 2,,x p) và đầu ra là vector a a1, 2,,a q có kích thước q Trong vài toán phân loại mẫu, kích thước đầu vào của mạng là kích thước của mẫu đầu vào, kích thước đầu

ra của mạng chính là số lớp cần phân loại Ví dụ, trong bài toán nhận dạng chữ số, kích thước đầu ra của mạng là 10 tương ứng với 10 chữ số 0,…,9, trong vài toán nhận dạng chữ cái tiếng Anh viết thường, kích thước đầu ra của mạng là 26 tương ứng với 26 chữ cái a…z

 Lớp đầu tiên là lớp H , sau đó đến lớp ẩn thứ hai 1 H , tiếp tục như vậy 2

cho đến lớp ẩn cuối cùng rồi lớp đầu ra O

 Các neuron trong các lớp có cấu trúc như trên hình 2-4, liên kết giữa các neuron giữa các lớp có thể là liên kết đầy đủ (mỗi neuron thuộc lớp sau liên kết với tất cả các neuron ở lớp trước nó) hoặc liên kết chọn lọc (mỗi neuron thuộc lớp sau liên kết với tất cả neuron ở lớp trước đó)

 Đầu ra của lớp trước chính là đầu vào của lớp ngay sau nó

 Hàm truyền tại các neuron không nhất thiết giống nhau

Với cấu trúc như vậy, hoạt động của mạng neuron diễn ra như sau: đầu tiên

vector đầu vào được lan truyền qua lớp H Tại lớp này, mỗi neuron nhận vector 1

đầu vào rồi xử lý (tính tổng có trọng số của các đầu vào rồi cho qua hàm truyền) và

Trang 34

cho ra kết quả tương ứng Đầu ra của lớp H chính là đầu vào của lớp 1 H , do đó 2

sau khi lớp H cho kết quả ở đầu ra của mình thì lớp 1 H nhận được đầu vào và tiếp 2

tục quá trình xử lý Cứ như vậy cho tới khi thu được đầu ra sau lớp O, đầu ra này chính là đầu ra cuối cùng của mạng

Bàn về mô hình mạng neuron thường gặp, mô hình mà chúng ta hay gặp

nhất là mạng neuron nhiều tầng truyền thẳng MLP (Multi Layer Perceptrons) Mạng này có cấu trúc như mô tả trên hình 2-6 chỉ cụ thể hơn ở chỗ: liên kết giữa các neuron ở các lớp thường là liên kết đầu đủ Nhiều thực nghiệm đã chứng minh rằng: mạng MLP (chỉ cần hai lớp neuron) với thuật toán huấn luyện và thuật toán lan truyền ngược sai số và hàm truyền sigmoid là một trong những mô hình có thể sử dụng để giải quyết các bài toán nhận dạng chữ viết

c Hàm truyền

Có rất nhiều hàm truyền có thể dùng trong các mạng neuron Hàm truyền được phân loại theo hàm tuyến tính hoặc phi tuyến, hàm liên tục hay gián đoạn Việc lựa chọn hàm truyền phù hợp với bài toán thường được tiến hành qua thực nghiệm Trong bảng dưới đây, chúng ta dùng công thức yf x( ) để biểu diện hàm truyền

Sử dụng trong mạng ADALINE

Trang 35

2.2.1.3 Quá trình huấn luyện mạng và các thuật toán học mạng

a Mạng neuron và bài toán phân loại mẫu

Một cách tổng quát, có thể nói nhiệm vụ của các hệ nhận dạng trong các bài toán nhận dạng chính là phân loại mẫu Có nghĩa là từ một mẫu vào ban đầu, hệ nhận dạng cần chỉ ra nó thuộc về lớp phân loại nào Ví dụ, trong nhận dạng chữ số viết tay, tất cả các kiểu viết khác nhau của số “0” đều được quy về một lớp, lớp số

“0” và hệ nhận dạng cần được huấn luyện sao cho khi gặp một mẫu bất kỳ của số

“0” nó phải chỉ ra được đầu vào này thuộc về lớp số “0” Trong hệ nhận dạng chữ

số, số lớp phân loại là 10 lớp, tương ứng với 10 chữ số từ 0 đến 9 Một cách tương

tự, trong nhận dạng chữ cái viết tay tiếng Anh chữ thường, với đầu vào là ảnh của

ký tự, hệ nhận dạng cần phân loại mẫu đó về một trong số 26 lớp tương ứng với 26 chữ cái từ “a” tới “z” Trong hệ nhận dạng này, số lớp phân loại là 26 lớp [1][4] Bên cạnh bài toán nhận dạng chữ viết, nhiều bài toán nhận dạng khác cũng có thể coi là bài toán phân loại mẫu như nhận dạng dấu vân tay dùng làm mã khóa trong các hệ an ninh, nhận dạng khuôn mặt hay tiếng nói…

Câu hỏi đặt ra đối với chúng ta là sử dụng mô hình nào cho các hệ nhận dạng này để nó không chỉ phân loại được những mẫu đã học mà còn có thể tổng quát hóa

Ngày đăng: 12/12/2016, 16:37

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Đỗ Thanh Nghị, Phạm Nguyên Khang (2013). Nhận dạng kí tự số viết tay bằng giải thuật máy học. Tạp chí khoa học Trường Đại học Cần Thơ Sách, tạp chí
Tiêu đề: Nhận dạng kí tự số viết tay bằng giải thuật máy học
Tác giả: Đỗ Thanh Nghị, Phạm Nguyên Khang
Năm: 2013
[2] Lê Minh Hoàng, một phương pháp nhận dạng văn bản tiếng Việt. Luận văn thạc sỹ, Đại học Quốc gia Hà Nội Sách, tạp chí
Tiêu đề: một phương pháp nhận dạng văn bản tiếng Việt
[3] Nguyễn Thị Thanh Tân, Nhận dạng chữ viết tay hạn chế dựa trên mô hình mạng neuron kết hợp với thống kê ngữ cảnh. Luận văn thạc sỹ, Đại học Quốc gia Hà Nội Sách, tạp chí
Tiêu đề: Nhận dạng chữ viết tay hạn chế dựa trên mô hình mạng neuron kết hợp với thống kê ngữ cảnh
[4] Phạm ThịHoàng Nhung, Hà Quang Thụy (2007).Nghiên cứu, sử dụng mạng neuron nhân tạo trong dự báo lưu lượng nước đến hồ Hoà Bình trước 10 ngày. Hội thảo Quốc gia Một số vấn đề chọn lọc về Công nghệ thông tin và Truyền thông, lần thứ X, Đại Lải, Vĩnh Phúc, 9/2007.Tiếng Anh Sách, tạp chí
Tiêu đề: Nghiên cứu, sử dụng mạng neuron nhân tạo trong dự báo lưu lượng nước đến hồ Hoà Bình trước 10 ngày
Tác giả: Phạm ThịHoàng Nhung, Hà Quang Thụy
Năm: 2007
[5] Baret O. and Simon J.C (1992). Cursiver Words Recognition. From Pixels to Fuatures III Frontiers in Handwriting Recognition, tr.1-2 Sách, tạp chí
Tiêu đề: Cursiver Words Recognition
Tác giả: Baret O. and Simon J.C
Năm: 1992
[6] Behnk S., Pfister M. and Rojas R., (2000). Recognition of Handwitten ZIP Codes in a Real-World Non-Standard-Letter Sorting System. Kluwer Academic Publishers, tr.95-115 Sách, tạp chí
Tiêu đề: Recognition of Handwitten ZIP Codes in a Real-World Non-Standard-Letter Sorting System
Tác giả: Behnk S., Pfister M. and Rojas R
Năm: 2000
[7] Fujasaki T., Beigi H.S.M, Tappert C.C, Ukelson M. and Wolf C.G. (1992). Online recognition of unconstrained handprinting: a stroke-based system and it evaluation. From Pixels to Fuatures III Frontiers in Handwriting Recognition, tr.1-3 Sách, tạp chí
Tiêu đề: Online recognition of unconstrained handprinting: a stroke-based system and it evaluation
Tác giả: Fujasaki T., Beigi H.S.M, Tappert C.C, Ukelson M. and Wolf C.G
Năm: 1992
[8] Hoai Vu Pham (2013), Hopfield networks and Boltzmann Machines. By http://phvu.net/ Sách, tạp chí
Tiêu đề: Hopfield networks and Boltzmann Machines
Tác giả: Hoai Vu Pham
Năm: 2013
[9] Hoai Vu Pham (2013), Model definition and training of RBMs. By http://phvu.net/ Sách, tạp chí
Tiêu đề: definition and training of RBMs
Tác giả: Hoai Vu Pham
Năm: 2013
[10] Hoai Vu Pham (2013), Contrastive Divergence. By http://phvu.net/ Sách, tạp chí
Tiêu đề: Divergence
Tác giả: Hoai Vu Pham
Năm: 2013
[11] LISA lab. Deep Learning 0.1 documentation. By http://www.deeplearning.net/tutorial/contents.html Sách, tạp chí
Tiêu đề: Deep Learning 0.1 documentation
[12] Michael Nielsen (2014).Using neural nets to recognize handwritten digits. By http://neuralnetworksanddeeplearning.com/chap1.html Sách, tạp chí
Tiêu đề: Using neural nets to recognize handwritten digits
Tác giả: Michael Nielsen
Năm: 2014
[13] Ruslan Salakhutdinov and Geoff Hinton, Training a deep autoencoder or a classifier on MNIST digits Khác

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w