1. Trang chủ
  2. » Thể loại khác

Luận văn tìm hiểu phương pháp nhận diện chữ viết tay sử dụng kernel discriminant analysis

50 8 0

Đ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 50
Dung lượng 2,04 MB

Nội dung

MỤC LỤC LỜI CẢM ƠN GIỚI THIỆU CHƢƠNG I: KHÁI QUÁT VỀ NGÔN NGỮ C# 1.1 Khái niệm NET 1.2 Hoạt động NET 1.2.1 Hỗ trợ hƣớng đối tƣợng sử dụng giao diện 1.2.3 Định kiểu mạnh 1.2.4 Bắt lỗi xử dụng ngoại lệ 1.2.5 Sử dụng thuộc tính 1.2 Khái quát C# 1.2.1 Đặc điểm ngôn ngữ 10 1.2.2 Các kiểu nguyên (primitive) 11 1.2.3 Khai báo (declarations) 11 1.2.4 Cấu trúc điều kiện (Conditionals structure) 12 1.2.5 Các vòng lặp (Loops) 12 1.2.6 Các phát biểu nhảy (Jumps) 12 1.2.7 Các phƣơng thức (methods) 13 1.2.8 Các thuộc tính (properties) 13 1.2.9 Từ định truy cập (Accessbility Modifiers) 14 1.2.10 Các đối tƣợng, lớp cấu trúc 14 CHƢƠNG II NHẬN DẠNG CHỮ VIẾT TAY SỬ DỤNG HẠT NHÂN PHÂN TÍCH BIỆT THỨC 16 2.1 Phân tích biệt thức tuyến tính 16 2.2 Nhân Phân tích biệt thức 17 2.3 Chức nhân trick nhân chuẩn 17 2.4 Mơ hình lớp đƣợc sử dụng KDA 18 2.5 Nhận dạng chữ số 19 2.5.1 Dữ liệu số UCI 19 Th■ah■■ng Mang Luôn 123doc thu■n l■icam s■ tr■ h■u k■t s■ nghi■m t■im■t d■ng s■website mang kho m■i th■ m■ l■i d■n CH■P vi■n nh■ng cho ■■u kh■ng ng■■i NH■N quy■n chia dùng, l■ CÁC s■l■i v■i và■I■U t■t công h■n mua nh■t 2.000.000 ngh■ bán KHO■N cho tàihi■n ng■■i li■u TH■A tài th■ hàng li■u dùng hi■n THU■N ■■u ■ t■t Khi ■■i, Vi■t c■ khách b■n l■nh Nam Chào online hàng v■c: Tác m■ng tr■ khơng tài phong thành b■n khác chun ■■n thành tíngì d■ng, v■i so nghi■p, viên 123doc v■i cơng c■a b■n hồn ngh■ 123doc g■c h■o, thơng B■n và■■ n■p có tin, cao th■ ti■n ngo■i tính phóng vào ng■, Khách trách tài to,kho■n nhi■m thu nh■ c■a ■■i hàng tùy123doc, v■i ý cót■ng th■b■n d■ ng■■i dàng s■ dùng ■■■c tra c■u M■c h■■ng tàitiêu li■u nh■ng hàng m■t■■u quy■n cáchc■a l■i123doc.net sau xác,n■p nhanh ti■n tr■ chóng thành website th■ vi■n tài li■u online l■n nh■t Vi■t Nam, cung c■p nh■ng tài li■u ■■c không th■ tìm th■y th■ tr■■ng ngo■i tr■ 123doc.net Nhi■u event thú v■, event ki■m ti■n thi■t th■c 123doc luôn t■o c■ h■i gia t■ng thu nh■p online cho t■t c■ thành viên c■a website Mangh■n Luôn Th■a Xu■t Sau Nhi■u 123doc h■■ng phát thu■n l■i event cam s■ nh■n m■t tr■ t■ h■u k■t s■ thú nghi■m t■i ýxác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event kho m■i ■■i, t■o t■ th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia t■ng ki■m dùng, l■ CÁC s■ th■c s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N sang b■ng cho tài ■■nh hi■n ng■■i li■u ph■n tài TH■A tài v■ th■ li■u hàng t■o li■u thơng dùng tríhi■n THU■N hi■u c■ c■a ■■u ■ tin t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia b■n nh■t, minh l■nh Nam t■ng Chào online hàng uy tài v■c: l■nh thu Tác m■ng tín kho■n tr■ nh■p khơng tài phong v■c cao thành b■n email nh■t tài online khác chuyên ■■n li■u thành tínb■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n hoàn mang ngh■ 123doc ký g■c online thành v■i h■o, Chúng l■i thông B■n 123doc.netLink cho viên Tính ■■ n■p có tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác tài ■i■m D■ch xã to,kho■n th■c nhi■m h■i thutháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cóg■i t■ng th■ tài 123doc v■ mơ ngun b■n d■ ng■■i ■■a t■ dàng s■ v■■t d■■i tri dùng ■■■c ch■ tra th■c m■c ■ây) email c■u M■c h■■ng quý 100.000 cho tài b■n tiêu báu, li■u b■n, nh■ng ■ã hàng phong m■t l■■t tùy ■■ng ■■u quy■n cách truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau xác, vuingày, n■p lòng “■i■u nhanh giàu ti■n s■ ■■ng tr■ giá Kho■n chóng h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i khơng t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t Lnh■n 123doc Sau Th■a Xu■t h■■ng phát thu■n cam nh■n m■t t■k■t s■ t■i ýxác n■m t■■ng d■ng s■ nh■n website mang ■■i, t■o t■l■i c■ng ■■ng d■n 123doc CH■P nh■ng ■■u ■■ng h■ NH■N ■ã quy■n th■ng chia t■ng ki■m CÁC s■s■ l■i b■■c ti■n vàchuy■n ■I■U t■t mua online kh■ng nh■t bán KHO■N sang b■ng cho tài ■■nh ng■■i li■u ph■n tài TH■A v■ li■u hàng thơng dùng tríTHU■N hi■u c■a ■■u tin Khi qu■ Vi■t xác khách nh■t, minh Nam Chào hàng uy tài l■nh Tác m■ng tín kho■n tr■ phong v■c cao thành b■n email nh■t tàichuyên ■■n li■u thành b■n Mong v■i nghi■p, viên kinh ■ã 123doc 123doc.net! mu■n ■■ng c■a doanh hoàn mang 123doc kýonline v■i h■o, Chúng l■ivà 123doc.netLink cho Tính ■■ n■p tơi c■ng cao ■■n cung ti■n tính ■■ng th■i vào c■p trách xác tài ■i■m D■ch xãkho■n th■c nhi■m h■itháng V■ m■t s■ c■a (nh■ ■■i ■■■c ngu■n 5/2014; 123doc, v■i ■■■c g■i t■ng tài 123doc v■ mô nguyên b■n ng■■i ■■a t■s■ v■■t d■■i tri dùng ■■■c ch■ th■c m■c ■ây) email M■c h■■ng quý 100.000 cho b■n tiêu báu, b■n, nh■ng ■ã hàng phong l■■t tùy ■■ng ■■u quy■n truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau vuingày, n■p lòng “■i■u giàu ti■n s■ ■■ng tr■ giá Kho■n h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i khơng t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t Lnh■n Th■a Xu■t Sau Nhi■u 123doc Mang h■■ng phát thu■n l■i event cam s■ nh■n m■t tr■ t■ h■u k■t s■ thú nghi■m t■i ýxác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event kho m■i ■■i, t■o t■ th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia t■ng ki■m dùng, l■ CÁC s■ th■c s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N sang b■ng cho tài ■■nh hi■n ng■■i li■u ph■n tài TH■A tài v■ th■ li■u hàng t■o li■u thơng dùng tríhi■n THU■N hi■u c■ c■a ■■u ■ tin t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia b■n nh■t, minh l■nh Nam t■ng Chào online hàng uy tài v■c: l■nh thu Tác m■ng tín kho■n tr■ nh■p khơng tài phong v■c cao thành b■n email nh■t tài online khác chun ■■n li■u thành tínb■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã t■t 123doc 123doc.net! v■i mu■n cơng ■■ng c■a c■ doanh b■n hồn mang ngh■ 123doc ký g■c online thành v■i h■o, Chúng l■i thơng B■n 123doc.netLink cho viên Tính ■■ n■p có tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác tài ■i■m D■ch xã to,kho■n th■c nhi■m h■i thutháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cóg■i t■ng th■ tài 123doc v■ mô nguyên b■n d■ ng■■i ■■a t■ dàng s■ v■■t d■■i tri dùng ■■■c ch■ tra th■c m■c ■ây) email c■u M■c h■■ng quý 100.000 cho tài b■n tiêu báu, li■u b■n, nh■ng ■ã hàng phong m■t l■■t tùy ■■ng ■■u quy■n cách truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau xác, vuingày, n■p lòng “■i■u nhanh giàu ti■n s■ ■■ng tr■ giá Kho■n chóng h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i không t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t u■t phát Nhi■u Mang Luôn 123doc Th■a Xu■t Sau h■n h■■ng phát thu■n l■i event s■ cam nh■n t■ m■t tr■ t■ h■u ýk■t s■ thú nghi■m t■i ýt■■ng xác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event t■o kho m■i ■■i, t■o t■ c■ng th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■ng ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia ki■m t■ng ki■m dùng, l■ CÁC s■ th■c ti■n s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công online h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N b■ng sang b■ng cho tài ■■nh hi■n tài ng■■i li■u ph■n tài TH■A li■u tài v■ th■ li■u hàng t■o li■u thông dùng trí hi■u hi■n THU■N hi■u c■ c■a ■■u ■ tin qu■ t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia nh■t, b■n nh■t, minh l■nh Nam t■ng Chào online uy hàng uy tài v■c: l■nh thu Tác tín m■ng tín kho■n tr■ cao nh■p khơng tài phong v■c cao thành b■n nh■t email nh■t tài online khác chun ■■n li■u thành tín Mong b■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã mu■n t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n mang hoàn mang ngh■ 123doc ký g■c online thành v■i l■i h■o, Chúng l■i thông B■n cho 123doc.netLink cho viên Tính ■■ n■p có c■ng tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i ■■ng tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác xã tài ■i■m D■ch xã to,h■i kho■n th■c nhi■m h■i thum■t tháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ngu■n ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cótài g■i t■ng th■ tài 123doc nguyên v■ mô nguyên b■n d■ ng■■i ■■a t■ dàng s■ v■■t tri d■■i tri dùng ■■■c ch■ th■c tra th■c m■c ■ây) email c■u quý M■c h■■ng quý 100.000 cho tài báu, b■n tiêu báu, li■u b■n, nh■ng phong ■ã hàng phong m■t l■■t tùy ■■ng ■■u phú, quy■n cách truy thu■c phú, ky, c■a c■p ■a ■a l■i b■n vào d■ng, 123doc.net m■i d■ng, sau xác, vuingày, n■p giàu lòng “■i■u nhanh giàu ti■n giá s■ ■■ng tr■ giá Kho■n chóng h■u tr■ thành tr■ nh■p ■■ng 2.000.000 website ■■ng Th■a th■ email th■i vi■n th■i Thu■n mong c■a thành mong tài v■ li■u mu■n viên mu■n S■ online ■■ng D■ng t■o click t■o l■n ■i■u ký, D■ch ■i■u vào nh■t l■t link ki■n ki■n V■” vào Vi■t 123doc cho top sau cho Nam, cho 200 ■ây cho ■ã cung các (sau g■i users website c■p users ■âynh■ng có ■■■c cóph■ thêm thêm tài bi■n g■i thu thu li■u t■t nh■p nh■t nh■p ■■c T■it■i Chính khơng t■ng Chính Vi■tth■i vìth■ Nam, vìv■y v■y ■i■m, tìm 123doc.net t■123doc.net th■y l■chúng tìm ki■m tơi th■ racó ■■i thu■c ■■i tr■■ng th■ nh■m nh■m c■p top ngo■i ■áp 3nh■t ■áp Google ■ng tr■ ■KTTSDDV ■ng 123doc.net nhu Nh■n nhuc■u c■u ■■■c chia theo chias■ quy■t danh s■tàitài hi■u li■u li■uch■t ch■t c■ng l■■ng l■■ng ■■ng vàvàki■m bình ki■mch■n ti■n ti■nonline online website ki■m ti■n online hi■u qu■ uy tín nh■t Nhi■u Mang Ln 123doc Th■a Xu■t Sau h■n h■■ng phát thu■n l■i event s■ cam nh■n m■t tr■ t■ h■u k■t s■ thú nghi■m t■i ýxác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event kho m■i ■■i, t■o t■ th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia t■ng ki■m dùng, l■ CÁC s■ th■c s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N sang b■ng cho tài ■■nh hi■n ng■■i li■u ph■n tài TH■A tài v■ th■ li■u hàng t■o li■u thơng dùng tríhi■n THU■N hi■u c■ c■a ■■u ■ tin t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia b■n nh■t, minh l■nh Nam t■ng Chào online hàng uy tài v■c: l■nh thu Tác m■ng tín kho■n tr■ nh■p khơng tài phong v■c cao thành b■n email nh■t tài online khác chuyên ■■n li■u thành tínb■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n hoàn mang ngh■ 123doc ký g■c online thành v■i h■o, Chúng l■i thông B■n 123doc.netLink cho viên Tính ■■ n■p có tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác tài ■i■m D■ch xã to,kho■n th■c nhi■m h■i thutháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cóg■i t■ng th■ tài 123doc v■ mơ nguyên b■n d■ ng■■i ■■a t■ dàng s■ v■■t d■■i tri dùng ■■■c ch■ tra th■c m■c ■ây) email c■u M■c h■■ng quý 100.000 cho tài b■n tiêu báu, li■u b■n, nh■ng ■ã hàng phong m■t l■■t tùy ■■ng ■■u quy■n cách truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau xác, vuingày, n■p lòng “■i■u nhanh giàu ti■n s■ ■■ng tr■ giá Kho■n chóng h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i khơng t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 2.5.2 Phân lớp chữ số số KDA 21 CHƢƠNG III CHƢƠNG TRÌNH THỬ NGHIỆM 23 3.1 Kiểm tra ứng dụng 23 3.1.1 Phân tích 23 3.1.2 Kết 25 3.2 Mã lệnh chƣơng trình viết cho số class 28 3.2.1 Class Linear Discrimnant Analysis 28 3.2.2 Kernel Discrimnant Analysis 43 KẾT LUẬN 49 TÀI LIỆU THAM KHẢO 50 Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang LỜI CẢM ƠN Lời em xin đƣợc bày tỏ lòng biết ơn sâu sắc tới thầy giáo ThS Đỗ Văn Chiểu, dành nhiều thời gian quý báu để tận tình giúp đỡ, bảo hƣớng dẫn em hoàn thành tốt đồ án tốt nghiệp Em xin gửi lời cảm ơn đến ban giám hiệu nhà trƣờng thầy, cô giáo trƣờng dân lập Hải Phòng đặc biệt thầy, cô khoa công nghệ thông tin giảng dạy chúng em suốt quãng thời gian qua, cung cấp cho chúng em chuyên môn cần thiết quý báu giúp chúng em hiểu rõ lĩnh vực nghiên cứu để hoàn thành đề tài đƣơc giao Cuối em xin cảm ơn quan tâm, chăm sóc gia đình, động viên, giúp đỡ bạn bè tạo điều kiện giúp đỡ em hoàn thành tốt trình nghiên cứu thực tập thực đề tài Hải Phòng, ngày 18 tháng 10 năm 2010 Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang GIỚI THIỆU Trong thời đại ngày Cong nghệ thông tin hầu nhƣ thâm nhập vào toàn lĩnh vực đời sống xã hội Xã hội phát triển nhu cầu công nghệ thông tin ngày cao, liệu số hầu nhƣ khơng cịn xa lạ ngƣời Trong lĩnh vực ứng dụng công nghệ thông tin trợ giúp ngƣời nhiều Công nghệ thông tin đƣợc ứng dụng cách mạnh mẽ nơi, lúc Ta dƣờng nhƣ thấy máy tính xuất nơi doanh nghiệp, quan, trƣờng học…Mọi cơng việc địi hỏi liên quan tới Cơng nghệ thông tin nhƣ: quản lý học sinh, sinh viên, quản lý nhân lƣơng, thiết kế cố vấn kiến trúc xây dựng ngành nghề đòi hỏi chất lƣợng chuyên môn sâu Ngành nghề có góp mặt Cơng nghệ thơng tin, từ giáo dục, y tế, giao thông, xây dựng, viễn thơng… Trong ngành Cơng nghệ thơng tin, thơng tin hình ảnh đóng vai trị quan trọng trao đổi thông tin, phần lớn thông tin mà ngƣời thu nhận đƣợc thông qua thị giác Một loạt toán đƣợc đặt yêu cầu đƣợc giải nhƣ: nhận dạng tối tƣợng chuyển động, xử lý chọn mẫu màu, nhận dạng chữ viết tay… Bài toán nhận dạng đời từ thập niên 60 kỷ trƣớc nhƣng nhận đƣợc quan tâm, nghiên cứu nhiều nhà khoa học giới.Đặc biệt thập niên gần đây, với trình đẩy mạnh tin học hóa lĩnh vực đời sống xã hội, nhận dạng khơng cịn lĩnh vực nghiên cứu lý thuyết mà đƣợc ứng dụng rộng rãi thực tế sống Các toán nhận dạng đƣợc nghiên cứu nhiều bao gồm nhận dạng mẫu hình học (vân tay, mặt ngƣời, hình khối,…), nhận dạng tiếng nói nhận dạng chữ viết Chúng đƣợc áp dụng vào nhiều lĩnh vực nhƣ y học, dự báo thời tiết, dự báo cháy rừng, điều khiển robot, Trong toán nhận dạng này, nhận dạng chữ viết toán đƣợc ứng dụng phổ biến Nhận dạng chữ viết bao gồm hai kiểu nhận dạng chữ in nhận dạng chữ viết tay Cho đến toán nhận dạng chữ in đƣợc giải trọn vẹn với đời nhiều hệ thống nhận dạng đạt tới độ xác gần nhƣ tuyệt đối Tiêu biểu có hệ nhận dạng chữ in dựa mơ hình mạng nơron bốn lớp J Wang J.S.N Jean đạt tới tỷ lệ xác 99.75% Ở Việt Nam Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang có sản phẩm VNDOCR Viện Cơng nghệ thơng tin nhận dạng chữ in tiếng Việt với độ xác tới 99% Trong nhận dạng chữ viết tay nhận dạng chữ viết tay đƣợc chia thành hai lớp toán lớn nhận dạng chữ viết tay trực tuyến (online) nhận dạng chữ viết tay ngoại tuyến (offline) Nhận dạng chữ viết tay trực tuyến nhận dạng chữ hình đƣợc viết Trong hệ nhận dạng máy tính lƣu lại thông tin nét chữ nhƣ thứ tự nét viết, hƣớng tốc độ nét… Ngƣợc lại, nhận dạng chữ viết tay ngoại tuyến, liệu đầu vào đƣợc cho dƣới dạng ảnh đƣợc quét từ giấy tờ, văn Vấn đề nhận dạng chữ viết tay đƣợc đề cập nghiên cứu nƣớc từ lâu đạt đƣợc kết với phƣơng pháp nhƣ Support Vecto Machine (SVM) Tuy nhiên, việc ứng dụng nhân (Kernel) vào việc nhận dạng chƣa đƣợc nghiên cứu nhiều Chính mà em chọn đề tài: Tìm hiểu phương pháp nhận diện chữ viết tay sử dụng Kernel Discriminant Analysis Nội dung khóa luận bao gồm phần sau: phần mở đầu, phần kết luận, ba chƣơng nội dung, cụ thể: Chương 1: C# Chương 2: Giới thiệu phƣơng pháp Kernel Discriminant Analysis Chương 3: Chƣơng trình thử nghiệm Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang CHƢƠNG I: KHÁI QUÁT VỀ NGƠN NGỮ C# C# ngơn ngữ lập trình hƣớng đối tƣợng Cấu trúc lập luận C# có đầy đủ đặc tính ngơn ngữ lập trình hƣớng đối tƣợng trƣớc ( C++, Java ) C# đƣợc thiết kế dùng cho NET framework, công nghệ đầy triển vọng việc phát triển ứng dụng hệ thống mạng internet ngơn ngữ lập trình hồn tồn độc lập, điều có nghĩa mã C# đƣợc chạy NET nhƣng có đặc tính C# mà NET khơng hỗ trợ ( q tải tốn tử ) đặc tính NET mà C# không hỗ trợ 1.1 Khái niệm NET NET Framework thƣ viện class đƣợc sử dụng với ngôn ngữ NET để thực thi việc từ thao tác chuỗi phát sinh trang web động (ASP.NET), phân tích XML reflection .NET Framework đƣợc tổ chức thành tập hợp namespace, nhóm class có chức lại với nhau, thí dụ nhƣ System.Drawing cho đồ hoạ, System.Collections cho cấu trúc liệu System.Windows.Forms cho hệ thống Windows Forms .NET môi trƣờng quản lý, phát triển thực thi mă ngôn ngữ biết NET .NET cung cấp khả cấp phát thu hồi nhớ, quản ly nguồn tài nguyên Trọng tâm NET bao gồm thành phần CLR ( the comon language runtime ) NET framework class libary – Các thƣ viện sở 1.2 Hoạt động NET chƣơng t nh đƣợc biên dịch thành MSIL (Microsoft Intermediate Language) Dịch IL( Intermediate Language ) thành cụ thể NET CLR(Common Language Runtime) Có nhiều ngơn ngữ biết NET, bao gồm C++, VB.NET, Managed C++, J+ and J#, Sc chúng đƣợc biên dịch thành IL IL đảm bảo tƣơng thích ngôn ngữ khác thành Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phịng Trang phần ngơn ngữ sử dụng thành phần thuộc tính thành phần nằm ngơn ngữ khác Đây nói khả kì diệu C# Để đạt đƣợc điều đó, IL bao hàm thuộc tính sau: Hỗ trợ hƣớng đối tƣợng giao diện ( interface ) Phân biệt kiểu giá trị kiểu tham chiếu Định kiểu mạnh Quản lỗi thông qua ngoại lệ Sử dụng thuộc tính 1.2.1 Hỗ trợ hƣớng đối tƣợng sử dụng giao diện IL tạo nhiều thuận lợi với ngôn ngữ lập trình hƣớng đối tƣợng, khơng phải vơ tình mà thƣ viện sở NET đƣợc viế tƣởng giao diệ COM nhị phân chuẩn cho phép thành phần tƣơng tác với mà không cần quan tâm đến ngôn ngữ đă tạo lập c dịch thống tƣơng thích với COM Tuy COM khơng hỗ trợ tính thừa kế, COM đánh thuận lợi lập t nh hƣớng đối tƣợng Tương thích chéo Với khả hỗ trợ đồng thời nhiều loại ngôn ngữ, sau đƣợc biên dịch thành IL, m ngơn ngữ khác làm việc với Cụ thể lớp đƣợc tạo ngơn ngữ thừa kế từ lớp đƣợc viết ngôn ngữ khác Một lớp chứa thể lớp khác không quan tâm đến ngôn ngữ đă tạo hai lớp Một đối tƣợng gọi trực tiếp phƣơng thức đối tƣợng khác đƣợc viết ngôn ngữ khác Các đối tƣợng (hoặc tham chiếu đến đối tƣợng) đƣợc truyền qua lại hàm Bạn có khả bẫy lỗi bƣớc chƣơng t nh nguồn ngôn khác Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 1.2.2 Phân biệt kiểu giá trị kiểu tham chiếu IL có phân biệt rõ ràng kiểu giá trị kiểu tham chiếu Trên IL, kiểu giá trị đƣợc lƣu vùng Stack, kiểu tham chiếu đƣợc lƣu vùng Heap 1.2.3 Định kiểu mạnh ràng kiểu liệu trả về, kiểu liệu đƣợc đánh dấu cụ thể Điều hồn tồn phù hợp với đặc tính hỗ trợ cho nhiều loại ngôn ngữ NET Một vấn đề nảy sinh có kiểu đƣợc hỗ trợ ngôn ngữ nhƣng lại không đƣợc hỗ trợ ngôn ngữ khác lớp xuất cần phải biết tất kiểu dùng lớp CTS: Để đáp ứng đƣợc tác vụ đó, IL sử dụng tiến trình CTS – Common Type System, vốn NET, đảm bảo tất kiểu liệu khác ngôn ngữ khác đƣợc biên dịch thành kiểu chung NET CLS :CLS phối hợp với CTS để đảm bảo tƣơng thích ngơn ngữ CLS chuẩn mà tất ngôn ngữ biết NET phải tuân theo CLS hoạt động theo nguyên tắc CLS không hồn n bó buộc ngơn ngữ lập trình, điều khiến cho ngơn ngữ hồn tồn phát triển theo chiều hƣớng riêng CLS gắn chuẩn lên ngôn ngữ lập t nh biết NET, điều đảm bảo m ngơn ngữ đƣợc hỗ trợ biên dịch Garbare Collection Garbage collector thành phần quản lí nhớ NET Tốc độ hoạt động C# hoàn toàn phụ thuộc vào Garbare collection, GC ứng dụng có mục đích giải phóng nhớ NET Ngun tắc làm việc GC nhƣ sau Các m sau đƣợc biên dịch, kết đƣợc đƣa hoàn toàn vào Heap, Heap đầy, GC thực thi so sánh với m thực hiên, nhƣ kết không dùng đến, GC thực nhiệm vụ dọn dẹp lấy lại nhớ Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 1.2.4 Bắt lỗi xử dụng ngoại lệ NET đƣợc thiết kế để đơn giản hố q t nh bẫy lỗi thơng qua ngoại lệ, ƣ tƣởng vùng m đƣợc thiết kế nhƣ thủ tục quản ngoại lệ, đoạn m , không đƣợc phép thực thi số lệnh) Những điều kiện đƣợc định nghĩa kĩ sơ qua tuỳ bạn Cấu trúc ngoại lệ bảo đảm điều kiện sinh lỗi xảy ra, luồn thi hành nhảy đến thủ tục quản ngoại lệ 1.2.5 Sử dụng thuộc tính Các thuộc tính IL cho phép ngƣời dùng sử dụng dễ dàng tự thiết lập thuộc tính riêng họ Tiến trình biên dịch thành m NET – Common language runtime CLR có nh IL thành m nh biên dịch kiểu just in time ( JIT ), khác với kiểu thơng dịch Java Thay phải d nh biên dịch JIT biên dịch phần m đƣợc gọi Khi m nguồn đƣợc biên dich, m kết đƣợc lƣu lại nhớ thoát khỏi ứng dụng, lần xử l tiếp theo, máy tính khơng phải biên dịch lại lần nữa, l NET chạy nhanh lần sau Một đặc điểm NET hỗ trợ tối ƣu tuỳ vào loại vi xƣ l , tiến t mà đƣa cách thức phù hợp 1.2 Khái qt C# C# ngơn ngữ lập trình hƣớng đối tƣợng đƣợc phát triển Microsoft, phần khởi đầu cho kế hoạch NET họ Tên ngôn ngữ bao gồm ký tự thăng theo Microsoft nhƣng theo ECMA C#, bao gồm dấu số thƣờng Microsoft phát triển C# dựa C++ Java C# đƣợc miêu tả ngơn ngữ có đƣợc cân C++, Visual Basic, Delphi Java C# đƣợc thiết kế chủ yếu Anders Hejlsberg kiến trúc sƣ phần mềm tiếng với sản phẩm Turbo Pascal, Delphi, J++, WFC Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 1.2.1 Đặc điểm ngơn ngữ C#, theo hƣớng đó, ngơn ngữ lập trình phản ánh trực tiếp đến NET Framework mà tất chƣơng trình NET chạy, phụ thuộc mạnh mẽ vào Framework Mọi liệu sở đối tƣợng, đƣợc cấp phát hủy bỏ trình dọn rác Garbage-Collector (GC), nhiều kiểu trừu tƣợng khác chẳng hạn nhƣ class, delegate, interface, exception, v.v, phản ánh rõ ràng đặc trƣng NET runtime So sánh với C C++, ngôn ngữ C# bị giới hạn đƣợc nâng cao vài đặc điểm đó, nhƣng khơng bao gồm giới hạn sau đây: Các trỏ đƣợc sử dụng chế độ khơng an toàn Hầu hết đối tƣợng đƣợc tham chiếu an tồn, phép tính đƣợc kiểm tra tràn đệm Các trỏ đƣợc sử dụng để gọi loại kiểu giá trị; đối tƣợng thuộc thu rác (garbage-collector) đƣợc gọi cách tham chiếu Các đối tƣợng đƣợc giải phóng tƣờng minh Chỉ có đơn kế thừa, nhƣng cài đặt nhiều interface trừu tƣợng (abstract interfaces) Chức làm đơn giản hóa thực thi thời gian thực thi C# an-tồn-kiểu (typesafe) C++ Cú pháp khai báo mảng khác nhau("int[] a = new int[5]" thay "int a[5]") Kiểu thứ tự đƣợc thay tên miền không gian (namespace) C# tiêu Có thêm Properties, phƣơng pháp gọi Properties để truy cập liệu Có reflection Trong C# 3.0, có vài bổ sung sau: Các từ khóa "select, from, where" cho phép truy vấn từ tập, từ SQL, v.v (hay đƣợc gọi LINQ - viết tắt Language INtergrated Query) Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 10 // Cộng liệu ma trận cách chọn véctơ riêng for (int i = 0; i < rows; i++) for (int j = 0; j < discriminants; j++) for (int k = 0; k < cols; k++) r[i, j] += data[i, k] * eigenVectors[k, j]; return r; } public double[] Transform(double[] data) { return Transform(data.ToMatrix()).GetRow(0); } public double[] Transform(double[] data, int discriminants) { return Transform(data.ToMatrix(),discriminants).GetRow(0); } public int GetNumberOfDimensions(float threshold) { if (threshold < || threshold > 1.0) throw new ArgumentException("Threshold should be a value between and 1", "threshold"); for (int i = 0; i < discriminantCumulative.Length; i++) { if (discriminantCumulative[i] >= threshold) return i + 1; } return discriminantCumulative.Length; } public int Classify(double[] input) { double[] projection = Transform(input); Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 36 // Chọn lớp với hàm biệt thức cao int imax = 0; double max = discriminantFunction(0, projection); for (int i = 1; i < classCollection.Count; i++) { double fy = discriminantFunction(i, projection); if (fy > max) { max = fy; imax = i; } } return classCollection[imax].Number; } public int Classify(double[] input, out double[] responses) { double[] projection = Transform(input); responses = new double[classCollection.Count]; int imax = 0; double max = discriminantFunction(0, projection); responses[0] = max; for (int i = 1; i < classCollection.Count; i++) { double fy = discriminantFunction(i, projection); responses[i] = fy; if (fy > max) { max = fy; imax = i; } } Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 37 return classCollection[imax].Number; } public int[] Classify(double[][] inputs) { int[] output = new int[inputs.Length]; for (int i = 0; i < inputs.Length; i++) output[i] = Classify(inputs[i]); return output; } internal virtual double discriminantFunction(int c, double[] projection) { return classMeans[c].Multiply(projection) + bias[c]; } # Kết thúc phần // # Phần bảo vệ phƣơng thức protected void createDiscriminants() { int numDiscriminants = eigenValues.Length; discriminantProportions = new double[numDiscriminants]; discriminantCumulative = new double[numDiscriminants]; // Tính tốn tổng ma trận phân tán int size = Sw.GetLength(0); St = new double[size, size]; for (int i = 0; i < size; i++) for (int j = 0; j < size; j++) St[i, j] = Sw[i, j] + Sb[i, j]; // Tính tốn tỉ lệ double sum = 0.0; for (int i = 0; i < numDiscriminants; i++) Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 38 sum += System.Math.Abs(eigenValues[i]); sum = (sum == 0) ? : (1.0 / sum); for (int i = 0; i < numDiscriminants; i++) discriminantProportions[i] = System.Math.Abs(eigenValues[i]) * sum; // Tính tốn tỉ lệ dồn lại this.discriminantCumulative[0] = this.discriminantProportions[0]; for (int i = 1; i < this.discriminantCumulative.Length; i++) this.discriminantCumulative[i] = this.discriminantCumulative[i - 1] + this.discriminantProportions[i]; // Taọ cấu trúc hƣớng đối tƣợng để giữ biệt thức tuyến tính Discriminant[] discriminants = new Discriminant[numDiscriminants]; for (int i = 0; i < numDiscriminants; i++) discriminants[i] = new Discriminant(this, i); this.discriminantCollection = new DiscriminantCollection(discriminants); } #Kết thúc phần } # Phần hỗ trợ lớp public class DiscriminantAnalysisClass { private LinearDiscriminantAnalysis analysis; private int classNumber; private int index; internal DiscriminantAnalysisClass(LinearDiscriminantAnalysis analysis, int index, int classNumber) { this.analysis = analysis; this.index = index; Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 39 this.classNumber = classNumber; } public int Index { get { return index; } } public int Number { get { return classNumber; } } public double Prevalence { get { return (double)Count / analysis.Source.GetLength(0); } } /// Lấy lớp vecto trung bình public double[] Mean { get { return analysis.ClassMeans[index]; } } /// Lấy lớp vec tơ độ lệch quần phƣơng public double[] StandardDeviation { get { return analysis.ClassStandardDeviations[index]; } } /// Lấy ma trận phân tán cho lớp public double[,] Scatter { get { return analysis.ClassScatter[index]; } } public int[] Indexes { Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 40 get { return Matrix.Find(analysis.Classifications, y => y == classNumber); } } public double[,] Subset { get { return analysis.Source.Submatrix(Indexes); } } public int Count { get { return analysis.ClassCount[index]; } } /// Hàm biệt thức cho lớp public double DiscriminantFunction(double[] projection) { //return Mean.Multiply(projection) + Bias[index]; return analysis.discriminantFunction(index, projection); } } public class Discriminant { private LinearDiscriminantAnalysis analysis; private int index; internal Discriminant(LinearDiscriminantAnalysis analysis, int index) { this.analysis = analysis; this.index = index; } public int Index { get { return index; } Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 41 } public double[] Eigenvector { get { return analysis.DiscriminantMatrix.GetColumn(index); } } public double Eigenvalue { get { return analysis.Eigenvalues[index]; } } public double Proportion { get { return analysis.Proportions[index]; } } public double CumulativeProportion { get { return analysis.CumulativeProportions[index]; } } } public class DiscriminantCollection : ReadOnlyCollection { internal DiscriminantCollection(Discriminant[] components) : base(components) { } } public class DiscriminantAnalysisClassCollection : ReadOnlyCollection { internal DiscriminantAnalysisClassCollection(DiscriminantAnalysisClass[] components) : base(components) { } Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 42 } # Kết thúc phần } 3.2.2 Kernel Discrimnant Analysis using Accord.Math; using Accord.Math.Decompositions; using Accord.Statistics.Kernels; using System.Collections.Generic; namespace Accord.Statistics.Analysis { public class KernelDiscriminantAnalysis : LinearDiscriminantAnalysis { private IKernel kernel; private double regularization = 0.0001; private double threshold = 0.001; private double[][] kernelClassMeans; // - # Phần kiến thiết tạo public KernelDiscriminantAnalysis(double[,] inputs, int[] output, IKernel kernel) : base(inputs, output) { this.kernel = kernel; this.kernelClassMeans = new double[Classes.Count][]; } # Kết thúc phần Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 43 // # Phần khai báo thuộc tính public IKernel Kernel { get { return kernel; } } public double Regularization { get { return regularization; } set { regularization = value; } } public double Threshold { get { return threshold; } set { threshold = value; } } # Kết thúc phần // # Phần khai báo Phƣơng thức /// Tính tốn thuật toán KDA nhiều lớp public override void Compute() { // Lấy mốt số thông tin ban đầu int dimension = Source.GetLength(0); double[,] source = Source; double total = dimension; // Tạo ma trận Gram (Kernel) double[,] K = new double[dimension, dimension]; Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 44 for (int i = 0; i < dimension; i++) { for (int j = i; j < dimension; j++) { double s = kernel.Function(source.GetRow(i), source.GetRow(j)); K[i, j] = s; K[j, i] = s; } } // Tính tốn tồn liệu base.Means = Tools.Mean(K); base.StandardDeviations = Tools.StandardDeviation(K, Means); // Gán giá trị ban đầu cho ma trận phân tán tƣơng tự nhân double[,] Sb = new double[dimension, dimension]; double[,] Sw = new double[dimension, dimension]; // Cho lớp for (int c = 0; c < Classes.Count; c++) { // Lấy lớp ma trận nhân double[,] Kc = K.Submatrix(Classes[c].Indexes); int count = Kc.GetLength(0); // Lấy trung bình lớp ma trận Nhân double[] mean = Tools.Mean(Kc); // Đặt ma trận tƣơng đƣơng ma trận phân tán lớp double[,] Swi = Tools.Scatter(Kc, mean, (double)count); // Sw = Sw + Swi for (int i = 0; i < dimension; i++) for (int j = 0; j < dimension; j++) Sw[i, j] += Swi[i, j]; Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 45 // Đặt ma trận tƣơng đƣơng ma trận phân tán lớp double[] d = mean.Subtract(base.Means); double[,] Sbi = d.Multiply(d.Transpose()).Multiply(total); // Sb = Sb + Sbi for (int i = 0; i < dimension; i++) for (int j = 0; j < dimension; j++) Sb[i, j] += Sbi[i, j]; // Lƣu trữ liệu thêm vào base.ClassScatter[c] = Swi; base.ClassCount[c] = count; base.ClassMeans[c] = mean; base.ClassStandardDeviations[c] = Tools.StandardDeviation(Kc, mean); } // Thêm quy tắc for (int i = 0; i < dimension; i++) Sw[i, i] += regularization; // Phân tích phân tán giá trị riêng double[,] C = Matrix.Inverse(Sw).Multiply(Sb); EigenvalueDecomposition evd = new EigenvalueDecomposition(C); // Lấy giá trị riêng tƣơng ứng với vecsto riêng double[] evals = evd.RealEigenvalues; double[,] eigs = evd.Eigenvectors; // Sắp xếp giá trị riêng vecto riêng theo giá trị tăng dần eigs = Matrix.Sort(evals, eigs, new GeneralComparer(ComparerDirection.Descending, true)); Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 46 if (threshold > 0) { // Calculate proportions earlier double sum = 0.0; for (int i = 0; i < dimension; i++) sum += System.Math.Abs(evals[i]); if (sum > 0) { sum = 1.0 / sum; // Không lƣu thông tin không quan trọng int keep = 0; while (keep < dimension && System.Math.Abs(evals[keep]) * sum > threshold) keep++; eigs = eigs.Submatrix(0, dimension - 1, 0, keep - 1); evals = evals.Submatrix(0, keep - 1); } } // Lƣu trữ thông tin base.Eigenvalues = evals; base.DiscriminantMatrix = eigs; base.ScatterBetweenClass = Sb; base.ScatterWithinClass = Sw; // Tính tốn khoảng trống cho việc phân lớp cuối for (int c = 0; c < Classes.Count; c++) { double[] mean = new double[eigs.GetLength(1)]; for (int i = 0; i < eigs.GetLength(0); i++) for (int j = 0; j < eigs.GetLength(1); j++) mean[j] += ClassMeans[c][i] * eigs[i, j]; kernelClassMeans[c] = mean; Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phịng Trang 47 } // Tính tốn thơng tin đƣợc thêm việc phân tích tạo // cấu trúc hƣớng đối tƣợng để giữ biệt thức tìm thấy createDiscriminants(); } public override double[,] Transform(double[,] data, int discriminants) { // Lấy vài thông tin int rows = data.GetLength(0); int cols = data.GetLength(1); int N = Source.GetLength(0); // Tạo ma trận nhân double[,] K = new double[rows, N]; for (int i = 0; i < rows; i++) for (int j = 0; j < N; j++) K[i, j] = kernel.Function(Source.GetRow(j), data.GetRow(i)); // Xem xét khoảng trống biệt thức nhân double[,] result = new double[rows, discriminants]; for (int i = 0; i < rows; i++) for (int j = 0; j < discriminants; j++) for (int k = 0; k < N; k++) result[i, j] += K[i, k] * DiscriminantMatrix[k, j]; return result; } internal override double discriminantFunction(int i, double[] projection) { return -Distance.SquareEuclidean(projection, kernelClassMeans[i]); } # Kết thúc } } Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 48 KẾT LUẬN tìm hiểu ng KDA Tuy nhiên KDA gặp số hạn chế: không hỗ trợ Vector Machines (SVMs), giải pháp khơng trải Quy mơ khơng mở rộng với kích thƣớc mẫu đầu vào O (n ³) xử lý đƣợc vấn đề đƣa kích thƣớc lớn vào vecto Dù vậy, KDA có lợi thế, tổng quát cho trƣờng hợp đa lớp Sự lựa chọn phù hợp chức nhân (và điều chỉnh thơng số nó), chi phí hoạt động tốn kém, lƣợng xử lý liệu đào tạo sẵn có Hiệu giải pháp tìm giải pháp tốt cho giá trị tham số đƣợc học Neural Networks, ngƣời ta phải thử nhiều điểm đầu khác nhiều trƣờng hợp thử nghiệm để đảm bảo kết quán) Xây dựng cài đặt chƣơng trình riêng độc lập : Sau đồ án đƣợc hồn thành, chƣơng trình đƣợc bổ xung thêm chức việc nhận dạng chữ latinh, chữ tiếng Việt, phù hợp so với việc nhận dạng chữ số nhƣ phần nêu Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng Trang 49 TÀI LIỆU THAM KHẢO Tài liệu tham khảo tiếng Việt [1.] PGS.TS , , , [2.] TS Đỗ Năng Tồn, TS Phạm Việt Bình, Giáo trình Xử lý ảnh [3.] Đinh Mạnh Tƣờng(2002), Trí tuệ nhân tạo, NXB Khoa học Kỹ thuật [4.] Nguyễn Hữu Tình, Lê Tấn Hùng, Phạm Ngọc Yến, Nguyễn Lan Hƣơng(1999), Cơ sở ứng dụng Matlab, NXB Khoa học Kỹ thuật [5.] Trịnh Thế Tiến Nguyễn Minh, Các Cơ Sở Dữ Liệu Microsoft Visual C# 2008 - Lập Trình Căn Bản Và Nâng Cao, NXB Hồng Đức [6.] Lƣơng Mạnh Bá, Nguyễn Thanh Thủy, Nhập Môn Xử Lý Ảnh Số (Xuất Bản Lần Thứ Có Chỉnh Lý Bổ Sung), NXB KHKT Tài liệu tham khảo tiếng Anh [7.] Oh S.H., Lee Yj(1995), A modified error function to improve the error Back-Propagation algorithm for Multi-layer perceptrons, ETRI Journal Vol 17, No [8.] Ooyen A V., Nienhuis B(1992), Improving the Convergence of the BackPropagation algorithm, Neural networks, Vol 5, pp.465-471 [9.] T masters(1993), Practical neural network Recipes in C++, Academic Press, Inc [10.] Tom M Mitchell(1997), Companies, Inc Machine learning, The Sinh viên Phạm Đức Hải – Lớp CTL201 – Trường ĐH DL Hải Phòng McGraw-Hill Trang 50 ... class DiscriminantAnalysisClass { private LinearDiscriminantAnalysis analysis; private int classNumber; private int index; internal DiscriminantAnalysisClass(LinearDiscriminantAnalysis analysis, ... Discriminant { private LinearDiscriminantAnalysis analysis; private int index; internal Discriminant( LinearDiscriminantAnalysis analysis, int index) { this .analysis = analysis; this.index = index;... = new Discriminant[ numDiscriminants]; for (int i = 0; i < numDiscriminants; i++) discriminants[i] = new Discriminant( this, i); this.discriminantCollection = new DiscriminantCollection(discriminants);

Ngày đăng: 05/08/2021, 21:59

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[3.] Đinh Mạnh Tường(2002), Trí tuệ nhân tạo, NXB Khoa học và Kỹ thuật [4.] Nguyễn Hữu Tình, Lê Tấn Hùng, Phạm Ngọc Yến, Nguyễn Lan Sách, tạp chí
Tiêu đề: Trí tuệ nhân tạo
Tác giả: ] Đinh Mạnh Tường
Nhà XB: NXB Khoa học và Kỹ thuật [4.] Nguyễn Hữu Tình
Năm: 2002
[5.] Trịnh Thế Tiến. Nguyễn Minh, Các Cơ Sở Dữ Liệu Microsoft Visual C# 2008 - Lập Trình Căn Bản Và Nâng Cao, NXB Hồng Đức Sách, tạp chí
Tiêu đề: Các Cơ Sở Dữ Liệu Microsoft Visual C# "2008 - Lập Trình Căn Bản Và Nâng Cao
Nhà XB: NXB Hồng Đức
[6.] Lương Mạnh Bá, Nguyễn Thanh Thủy, Nhập Môn Xử Lý Ảnh Số (Xuất Bản Lần Thứ 4 Có Chỉnh Lý Bổ Sung), NXB KHKTTài liệu tham khảo tiếng Anh Sách, tạp chí
Tiêu đề: Nhập Môn Xử Lý Ảnh Số (Xuất Bản Lần Thứ 4 Có Chỉnh Lý Bổ Sung)
Nhà XB: NXB KHKT Tài liệu tham khảo tiếng Anh
[7.] Oh S.H., Lee Yj(1995), A modified error function to improve the error Back-Propagation algorithm for Multi-layer perceptrons, ETRI Journal Vol 17, No 1 Sách, tạp chí
Tiêu đề: A modified error function to improve the error Back-Propagation algorithm for Multi-layer perceptrons
Tác giả: ] Oh S.H., Lee Yj
Năm: 1995
[8.] Ooyen A. V., Nienhuis B(1992), Improving the Convergence of the Back- Propagation algorithm, Neural networks, Vol. 5, pp.465-471 Sách, tạp chí
Tiêu đề: Improving the Convergence of the Back-Propagation algorithm
Tác giả: ] Ooyen A. V., Nienhuis B
Năm: 1992
[2.] TS. Đỗ Năng Toàn, TS. Phạm Việt Bình, Giáo trình Xử lý ảnh Khác
[9.] T. masters(1993), Practical neural network Recipes in C++, Academic Press, Inc Khác
[10.] Tom M. Mitchell(1997), Machine learning, The McGraw-Hill Companies, Inc Khác

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

TÀI LIỆU LIÊN QUAN

w