Đăng ký Đăng nhập
Trang chủ Nghiên cứu mạng nơron và ứng dụng trong nhận dạng chữ viết tay trực tuyến...

Tài liệu Nghiên cứu mạng nơron và ứng dụng trong nhận dạng chữ viết tay trực tuyến

.DOC
73
1496
134

Mô tả:

i BẢN CAM KẾT Tên tôi là: Chu Hoàng Hà Lớp: Cao học Công nghệ thông tin K10A Khoá học: 2011 - 2013 Chuyên ngành:Khoa học máy tính Mã số chuyên ngành: 60 48 01 Cơ sở đào tạo: Trường Đại học Công nghệ thông tin và Truyền thông Thái Nguyên Giáo viên hướng dẫn: PGS-TS Ngô Quốc Tạo Cơ quan công tác: Trường Đại học Sư phạm Kỹ Thuật Nam Định Tôi xin cam đoan toàn bộ nội dung được trình bày trong bản luận văn này là kết quả tìm hiểu và nghiên cứu của riêng tôi, trong quá trình nghiên cứu luận văn “Nghiên cứu mạng nơron và ứng dụng trong nhận dạng chữ viết tay trực tuyến” các kết quả và dữ liệu được nêu ra là hoàn toàn trung thực. Mọi thông tin trích dẫn đều được tuân theo luật sở hữu trí tuệ, có liệt kê rõ ràng các tài liệu tham khảo. Tôi xin chịu hoàn toàn trách nhiệm với những nội dung được viết trong luận văn này. Thái Nguyên, ngày 08 tháng 06 năm 2013 HỌC VIÊN CHU HOÀNG HÀ ii LỜI CẢM ƠN Luận văn được thực hiện tại Trường Đại học Công nghệ Thông tin và Truyền Thông - Đại học Thái Nguyên dưới sự hướng dẫn của thầy PGS-TS Ngô Quốc Tạo. Trước hết em xin bày tỏ lòng biết ơn sâu sắc tới thầy PGS-TS Ngô Quốc Tạo - Viện Công nghệ thông tin, người đã tận tình hướng dẫn giúp đỡ để em hoàn thành tốt luận văn của mình. Em xin gửi lời cảm ơn chân thành đến các thầy cô giáo Trường Đại học Công nghệ Thông tin và Truyền Thông - Đại học Thái Nguyên, cùng các thầy cô giáo đã nhiệt tình giảng dạy, truyền đạt kiến thức cho em trong suốt quá trình học tập tại trường cũng như quá trình làm luận văn này. Cuối cùng em xin gửi lời cảm ơn đến gia đình, bạn bè, các đồng nghiệp những người đã động viên, giúp đỡ và tạo điều kiện cho em trong quá trình học tập và hoàn thành luận văn. Thái Nguyên, ngày 08 tháng 06 năm 2013 HỌC VIÊN CHU HOÀNG HÀ iii MỤC LỤC LỜI MỞ ĐẦU.....................................................................................................1 Chương 1 KHÁI QUÁT VỀ MẠNG NƠRON 1.1. Khái niệm mạng nơron................................................................................4 1.1.1. Giới thiệu...................................................................................................4 1.1.1.1. Nơron.....................................................................................................7 1.1.1.2. Chức năng, tổ chức và hoạt động của bộ não con người.......................8 1.1.1.3. So sánh mạng nơron với máy tính truyền thống..................................10 1.1.2. Nơron nhân tạo.........................................................................................11 1.1.3. Mạng nơron nhân tạo...............................................................................14 1.2. Đặc trưng của mạng nơron[5]....................................................................15 1.2.1. Tính phi tuyến..........................................................................................15 1.2.2. Tính chất tương ứng đầu vào, đầu ra.........................................................16 1.2.3. Tính chất thích nghi..................................................................................16 1.2.4. Tính chất đưa ra lời giải có bằng chứng....................................................16 1.2.5. Tính chất chấp nhận sai sót.......................................................................16 1.2.6. Khả năng tích hợp VLSI (Very-Large-Scale-Intergrated)..........................17 1.2.7. Tính chất tương tự trong phân tích và thiết kế...........................................17 1.3. Phân loại mạng nơron nhân tạo..................................................................17 1.3.1. Phân loại theo kiểu liên kết nơron.............................................................17 1.3.2. Một số loại mạng nơron điển hình[20]......................................................18 1.3.2.1. Mạng dẫn tiến (feedforward)...............................................................18 1.3.2.1. Mạng quy hồi (recurrent network).......................................................20 1.4. Xây dựng mạng nơron[8]...........................................................................21 1.5. Huấn luyện mạng nơron.............................................................................22 1.5.1. Phương pháp học......................................................................................22 1.5.1.1. Học có giám sát....................................................................................22 iv 1.5.1.2. Học không giám sát.............................................................................23 1.5.1.3. Học tăng cường....................................................................................23 1.5.2. Thuật toán học..........................................................................................23 1.6. Thu thập dữ liệu cho mạng nơron..............................................................24 1.7. Biểu diễn tri thức cho mạng nơron............................................................26 1.8. Ứng dụng của mạng nơron.........................................................................28 Chương 2 ỨNG DỤNG MẠNG NƠRON TRONG NHẬN DẠNG CHỮ VIẾT TAY TRỰC TUYẾN 2.1. Giới thiệu bài toán nhận dạng kí tự............................................................30 2.1.1. Giới thiệu sơ lược về nhận dạng...............................................................30 2.1.2. Giới thiệu về nhận dạng chữ viết tay.........................................................31 2.1.3. Nhận dạng chữ viết tay bằng mạng nơron[5]............................................35 2.1.4. Phát biểu bài toán.....................................................................................36 2.1.5. Các bước giải quyết bài toán sử dụng mạng nơron trong nhận dạng ký tự 36 2.2. Mạng Perceptron nhận dạng ký tự.............................................................36 2.2.1. Giới thiệu về mạng nơron Perceptron.......................................................36 2.2.2. Cấu trúc của mạng nơron Perceptron........................................................37 2.2.3. Thực thi của mạng nơron Perceptron........................................................38 2.2.3.1. Thuật toán học của mạng nơron một lớp.............................................38 2.2.3.2. Thuật toán học của mạng nơron nhiều lớp...........................................40 2.2.4. Nhận xét...................................................................................................44 2.3. Mạng Kohonen nhận dạng ký tự................................................................45 2.3.1. Giới thiệu về mạng nơron Kohonen..........................................................45 2.3.2. Cấu trúc của mạng nơron Kohonen[16]....................................................46 2.3.3. Thực thi của mạng nơron Kohonen[15]....................................................46 2.3.2.1. Chuẩn hóa đầu vào...............................................................................46 2.3.2.2. Tính toán đầu ra cho mỗi nơron...........................................................47 v 2.3.2.3. Chọn nơron chiến thắng.......................................................................47 2.3.2.4. Quá trình học của mạng nơron Kohonen.............................................48 2.3.3. Nhận xét...................................................................................................51 Chương 3 XÂY DỰNG CHƯƠNG TRÌNH NHẬN DẠNG CHỮ VIẾT TAY TRỰC TUYẾN 3.1. Giới thiệu...................................................................................................52 3.2. Xây dựng giao diện vẽ...............................................................................53 3.3. Xử lý dữ liệu (phân tích ảnh).....................................................................54 3.4. Xây dựng mạng nơron...............................................................................54 3.4 .1. Xây dựng mạng nơron Perceptron...........................................................54 3.4.2. Xây dựng mạng nơron Kohonen..............................................................56 3.5. Chương trình minh họa..............................................................................59 3.5.1. Các chức năng của chương trình...............................................................59 3.5.2. Kết quả nhận dạng....................................................................................60 3.6. Đánh giá, nhận xét.....................................................................................62 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 1. Những kết quả mà luận văn đã đạt được.......................................................64 2. Hướng phát triển tiếp theo............................................................................64 TÀI LIỆU THAM KHẢO vi DANH MỤC CÁC HÌNH Hình 1.1 Sơ đồ nơron sinh học...........................................................................7 Hình 1.2 Mạng nơron sinh học..........................................................................10 Hình 1.3 Mô hình một nơron nhân tạo..............................................................11 Hình 1.4 Sự tương đương giữa nơron sinh học và nơron nhân tạo[16].............12 Hình 1.5 Mô hình phi tuyến thứ hai của một mạng nơron................................14 Hình 1.6 Sơ đồ đơn giản về một mạng nơron nhân tạo[8]................................15 Hình 1.7 Mạng truyền thẳng..............................................................................18 Hình 1.8 Mạng quy hồi......................................................................................18 Hình 1.9 Mạng tiến với một mức nơron............................................................19 Hình 1.10 Mạng tiến kết nối đầy đủ với một mức ẩn và một mức đầu ra.........20 Hình 1.11 Mạng hồi quy không có nơron ẩn và không có vòng lặp tự phản hồi ...........................................................................................................................20 Hình 1.12 Mạng hồi quy có các nơron ẩn.........................................................21 Hình 1.13 Sơ đồ đồ thị có hướng đơn giản.......................................................21 Hình 2.1 Mô hình chung trong nhận dạng chữ viết...........................................34 Hình 2.2 Mô hình tổng quát của mạng nơron Perceptron.................................37 Hình 2.3 Bài toán XOR.....................................................................................39 Hình 2.4 Cấu trúc của mạng Kohonen..............................................................46 Hình 2.5 Quá trình huấn luyện mạng nơron Kohonen......................................48 Hình 3.1 Quá trình tìm giới hạn ký tự...............................................................53 Hình 3.2 Quá trình lấy mẫu xuống....................................................................53 Hình 3.3 Quá trình ánh xạ từ ma trận điểm sang ma trận giá trị.......................54 Hình 3.4 Quá trình huấn luyện mạng................................................................58 Hình 3.5 Giao diện chương trình minh họa.......................................................59 Hình 3.6 Tải mẫu...............................................................................................60 Hình 3.7 Nhận dạng ký tự e bằng mạng Kohonen............................................61 Hình 3.8 Nhận dạng ký tự e bằng mạng Perceptron..........................................61 vii Hình 3.9 Thêm mẫu mới....................................................................................62 1 LỜI MỞ ĐẦU Mạng nơron nhân tạo ANN (Artificial Neural Networks) là một mô phỏng xử lý thông tin, được nghiên cứu ra từ hệ thống thần kinh của sinh vật, giống như bộ não để xử lý thông tin. Nó bao gồm số lượng lớn các mối gắn kết cấp cao để xử lý các yếu tố làm việc trong mối liên hệ giải quyết vấn đề rõ ràng. ANN giống như con người, được học bởi kinh nghiệm, lưu những kinh nghiệm hiểu biết và sử dụng trong những tình huống phù hợp và quan trọng hơn hết, con người có khả năng sáng tạo. Đầu tiên ANN được giới thiệu năm 1943 bởi nhà thần kinh học Warren McCulloch và nhà logic học Walter Pits. Nhưng với những kỹ thuật trong thời gian này chưa cho phép họ nghiên cứu được nhiều. Những năm gần đây mô phỏng ANN xuất hiện và phát triển. Các nghiên cứu ứng dụng đã được thực hiện trong các ngành: điện, điện tử, kỹ thuật chế tạo, y học, quân sự, kinh tế... Một trong những ứng dụng kinh điển của mạng nơron là bài toán nhận dạng mẫu, ở đó mỗi một mẫu là một tập hợp (hay một vector) các tham số biểu thị các thuộc tính của quá trình vật lý nào đó. Ngoài sức mạnh vốn có, mạng nơron còn thể hiện ưu điểm của mình trong việc nhận dạng thông qua khả năng mềm dẻo, dễ thích nghi với môi trường. Chính vì vậy, có thể coi mạng nơron trước tiên là một công cụ để nhận dạng. Các bài toán nhận dạng được nghiên cứu nhiều nhất hiện nay bao gồm nhận dạng các 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 và nhận dạng ký tự viết. Nhận dạng ký tự viết bao gồm hai kiểu chính là nhận dạng ký tự in và nhận dạng ký tự viết tay. Cho đến nay bài toán nhận dạng ký tự in đã được giải quyết khá trọn vẹn với sự ra đời của nhiều hệ thống nhận dạng đạt tới độ chính xác gần như tuyệt đối. Nhận dạng ký tự viết tay đang 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ó phụ thuộc quá nhiều vào người viết và sự biến đổi quá đa dạng trong cách viết và trạng thái tinh thần của từng người viết. Đặc biệt đối với việc nhận dạng ký tự viết tay tiếng Việt lại càng gặp nhiều khó khăn hơn do bộ ký tự tiếng Việt có nhiều ký tự có hình dáng rất giống nhau, chỉ khác nhau chút ít về phần dấu. 2 Chính vì các lý do nêu trên cùng với sự gợi ý của thầy giáo tôi nhận thấy nghiên cứu về mạng nơron là một hướng nghiên cứu quan trọng, mới mẻ và có nhiều triển vọng. Đồng thời áp dụng mạng nơron để giải quyết bài toán nhận dạng chữ viết tay tiếng Việt là một hướng tiếp cận khoa học có hiệu quả, góp phần giải quyết bài toán nhận dạng chữ viết tay tiếng Việt hiện còn chưa được giải quyết trọn vẹn. Do đó tôi chọn đề tài: “Nghiên cứu mạng nơron và ứng dụng trong nhận dạng chữ viết tay trực tuyến”. Tuy nhiên do hạn chế về mặt thời gian cũng như độ phức tạp của bài toán, do đó tôi chỉ đi sâu nghiên cứu và mô phỏng nhận dạng ký tự viết tay tiếng Việt rời rạc trực tuyến. Nội dung luận văn gồm: Chương 1: Khái quát về mạng nơron Trình bày những lý thuyết cơ bản về mô hình mạng nơron như: lịch sử ra đời và phát triển của mạng nơron, khái niệm mạng nơron, các loại mô hình mạng nơron, các đặc trưng của mạng, các phương pháp huấn luyện mạng nơron, phương pháp học có giám sát. Các vấn đề và ứng dụng của mạng nơron. Chương 2: Ứng dụng mạng nơron trong nhận dạng chữ viết tay trực tuyến Giới thiệu về nhận dạng, các bài toán nhận dạng, nhận dạng chữ viết tay tiếng Việt. Phương pháp nhận dạng chữ viết tay bằng mạng nơron, phát biểu bài toán, các bước giải quyết bài toán. Trình bày lý thuyết cơ bản về mạng nơron Perceptron, Kohonen như: giới thiệu về mạng, cấu trúc mạng, các bước thực thi trong mạng: chuẩn hóa đầu vào, tính toán đầu ra, quá trình huấn luyện mạng,… Chương 3: Xây dựng chương trình nhận dạng chữ viết tay trực tuyến Trình bày phạm vi chương trình minh họa, các bước thực hiện chương trình minh họa: Thực hiện chương trình nhận dạng ký tự, xác định các tham số cho mạng, vẽ hình ảnh, lấy mẫu xuống hình ảnh, các tập huấn luyện, lớp mạng cơ bản, …. Chương trình minh họa: Các chức năng của chương trình, kết quả nhận dạng, đánh giá, nhận xét. Kết luận và hướng phát triển 3 Trình bày các kết quả đã đạt được, hướng phát triển tiếp theo và một số suy nghĩ khi nghiên cứu. Do thời gian và trình độ còn hạn chế nên luận văn khó tránh khỏi những thiếu sót, kính mong nhận được sự đóng góp, chỉ bảo của các thầy giáo, cô giáo và các bạn đồng nghiệp. Cuối cùng, tác giả xin chân thành bày tỏ lòng biết ơn sâu sắc đến thầy giáo PGS-TS Ngô Quốc Tạo - Viện Công nghệ thông tin, Viện Khoa học và Công nghệ Việt Nam đã tận tình hướng dẫn, chỉ bảo, giúp đỡ, khích lệ tác giả trong suốt quá trình làm luận văn. Đồng thời, tác giả xin chân thành cảm ơn các thầy cô trong trường ĐH CNTT & TT Thái Nguyên đã tạo điều kiện thuận lợi, giúp đỡ tác giả hoàn thành luận văn này. Học viên Chu Hoàng Hà 4 Chương 1 KHÁI QUAN VỀ MẠNG NƠRON 1.1. Khái niệm mạng nơron 1.1.1. Giới thiệu Các nghiên cứu về bộ não con người đã được tiến hành từ hàng nghìn năm nay. Cùng với sự phát triển của khoa học kĩ thuật đặc biệt là những tiến bộ trong ngành điện tử hiện đại, việc con người bắt đầu nghiên cứu các nơron nhân tạo là hoàn toàn tự nhiên. Có thể tính từ nghiên cứu của William (1890) về tâm lý học với sự liên kết các noron thần kinh. Sự kiện đầu tiên đánh dấu sự ra đời của mạng nơron nhân tạo diễn ra vào năm 1943 khi nhà thần kinh học Warren McCulloch và nhà toán học Walter Pitts viết bài báo mô tả cách thức các nơron hoạt động. Họ cũng đã tiến hành xây dựng một mạng nơron đơn giản bằng các mạch điện. Các nơron của họ được xem như là các thiết bị nhị phân với ngưỡng cố định. Kết quả của các mô hình này là các hàm logic đơn giản chẳng hạn như “ a OR b” hay “a AND b”[12] Tiếp bước các nghiên cứu này, năm 1949 Donald Hebb cho xuất bản cuốn sách Organization of Behavior. Cuốn sách đã chỉ ra rằng các nơron nhân tạo sẽ trở nên hiệu quả hơn sau mỗi lần chúng được sử dụng. Những tiến bộ của máy tính đầu những năm 1950 giúp cho việc mô hình hóa các nguyên lý của những lý thuyết liên quan tới cách thức con người suy nghĩ đã trở thành hiện thực. Nathanial Rochester sau nhiều năm làm việc tại các phòng thí nghiệm nghiên cứu của IBM đã có những nỗ lực đầu tiên để mô phỏng một mạng nơron. Trong thời kì này tính toán truyền thống đã đạt được những thành công rực rỡ trong khi đó những nghiên cứu về nơron còn ở giai đoạn sơ khai. Mặc dù vậy những người ủng hộ triết lý “thinking machines” (các máy biết suy nghĩ) vẫn tiếp tục bảo vệ cho lập trường của mình. Năm 1956 dự án Dartmouth nghiên cứu về trí tuệ nhân tạo (Artificial Intelligence) đã mở ra thời kỳ phát triển mới cả trong lĩnh vực trí tuệ nhân tạo lẫn mạng nơron. Tác động tích cực của nó là thúc đẩy hơn nữa sự quan tâm của các nhà khoa học về trí tuệ nhân tạo và quá trình xử lý ở mức đơn giản của mạng nơron trong bộ não con người. 5 Những năm tiếp theo của dự án Dartmouth, John von Neumann đã đề xuất việc mô phỏng các nơron đơn giản bằng cách sử dụng rơle điện áp hoặc đèn chân không. Nhà sinh học chuyên nghiên cứu về nơron Frank Rosenblatt cũng bắt đầu nghiên cứu về Perceptron năm 1958. Sau thời gian nghiên cứu này Perceptron đã được cài đặt trong phần cứng máy tính và được xem như là mạng nơron lâu đời nhất còn được sử dụng đến ngày nay. Perceptron một tầng rất hữu ích trong việc phân loại một tập các đầu vào có giá trị liên tục vào một trong hai lớp. Perceptron tính tổng có trọng số các đầu vào, rồi trừ tổng này cho một ngưỡng và cho ra một trong hai giá trị mong muốn có thể. Tuy nhiên Perceptron còn rất nhiều hạn chế, những hạn chế này đã được chỉ ra trong cuốn sách về Perceptron của Marvin Minsky và Seymour Papert của MIT (Massachurehs Insritute of Technology) viết năm 1969 đã chứng minh nó không dùng được cho các hàm logic phức. Năm 1959, Bernard Widrow và Marcian Hoff thuộc trường đại học Stanford đã xây dựng mô hình ADALINE ( ADAptive LINear Elements) và MADALINE. (Multiple ADAptive LINear Elements). Các mô hình này sử dụng quy tắc học Least-Mean-Squares ( LMS : Tối thiểu bình phương trung bình). MADALINE là mạng nơron đầu tiên được áp dụng để giải quyết một bài toán thực tế. Nó là một bộ lọc thích ứng có khả năng loại bỏ tín hiệu dội lại trên đường dây điện thoại. Ngày nay mạng nơron này vẫn được sử dụng trong các ứng dụng thương mại. Năm 1973 Von der Marlsburg: đưa ra quá trình học cạnh tranh và self – organization. Năm 1974 Paul Werbos đã phát triển và ứng dụng phương pháp học lan truyền ngược ( back-propagation). Tuy nhiên phải mất một vài năm thì phương pháp này mới trở lên phổ biến. Các mạng lan truyền ngược được biết đến nhiều nhất và được áp dụng rộng dãi nhất nhất cho đến ngày nay. Sợ rằng đã đến lúc máy móc có thể làm mọi việc của con người. Những lo lắng này khiến người ta bắt đầu phản đối các nghiên cứu về mạng neuron. Thời kì tạm lắng này kéo dài đến năm 1981. Có thể tính vào khoảng đầu thập niên 80. Những đóng góp lớn cho mạng noron trong giai đoạn này phải kể đến Grossberg, Kohonen, Rumelhart và Hopfield. Kohonen là mạng SOM (Self 6 Organizing Map), Grossberg là mạng ART (Adaptive Resonance Theory). Trong đó đóng góp lớn của Hopfield gồm hai mạng phản hồi: Mạng rời rạc năm 1982 và mạng liên tục năm 1984. Đặc biệt, ông đã dự kiến nhiều khả năng tính toán lớn của mạng mà một nơron không có khả năng đó. Năm 1982 trong bài báo gửi tới viện khoa học quốc gia, John Hopfield bằng sự phân tích toán học rõ ràng, mạch lạc, ông đã chỉ ra cách thức các mạng nơron làm việc và những công việc chúng có thể thực hiện được. Cống hiến của Hopfield không chỉ ở giá trị của những nghiên cứu khoa học mà còn ở sự thúc đẩy trở lại các nghiên cứu về mạng neuron. Cảm nhận của Hopfield đã được Rumelhart, Hinton và Williams đề xuất thuật toán sai số truyền ngược nổi tiếng để huấn luyện mạng noron nhiều lớp nhằm giải bài toán mà mạng khác không thực hiện được. Nhiều ứng dụng mạnh mẽ của mạng noron ra đời cùng với các mạng theo kiểu máy Boltzmann và mạng Neocognition của Fukushima. Cũng trong thời gian này, một hội nghị với sự tham gia của Hoa Kỳ và Nhật Bản bàn về việc hợp tác/cạnh tranh trong lĩnh vực mạng nơron đã được tổ chức tại Kyoto, Nhật Bản. Sau hội nghị, Nhật Bản đã công bố những nỗ lực của họ trong việc tạo ra máy tính thế hệ thứ 5. Tiếp nhận điều đó, các tạp chí định kỳ của Hoa Kỳ bày tỏ sự lo lắng rằng nước nhà có thể bị tụt hậu trong lĩnh vực này. Vì thế, ngay sau đó, Hoa Kỳ nhanh chóng huy động quĩ tài trợ cho các nghiên cứu và ứng dụng mạng nơron. Năm 1985, viện vật lý Hoa Kỳ bắt đầu tổ chức các cuộc họp hàng năm về mạng neuron ứng dụng trong tin học (Nơron Networks for Computing). Năm 1987, hội thảo quốc tế đầu tiên về mạng neuron của Viện các kỹ sư điện và điện tử IEEE (Institute of Electrical and Electronic Engineer) đã thu hút hơn 1800 người tham gia. Tính từ năm 1987 đến nay, hàng năm thế giới đều mở hội nghị toàn cầu chuyên ngành nơron IJCNN (International Joit Conference on Neural Networks). Ngày nay, không chỉ dừng lại ở mức nghiên cứu lý thuyết, các nghiên cứu ứng dụng mạng nơron để giải quyết các bài toán thực tế được diễn ra ở khắp mọi nơi. Các ứng dụng mạng nơron ra đời ngày càng nhiều và ngày càng hoàn thiện hơn. Điển hình là các ứng dụng: xử lý ngôn ngữ (Language 7 Processing), nhận dạng ký tự (Character Recognition), nhận dạng tiếng nói (Voice Recognition), nhận dạng mẫu (Pattern Recognition), xử lý tín hiệu (Signal Processing), Lọc dữ liệu (Data Filtering),… 1.1.1.1. Nơron Nơron là phần tử cơ bản tạo nên bộ não. Cấu tạo và hoạt động của nơron như sau: a) Cấu tạo Một nơron điển hình có 3 phần chính: - Phần thứ nhất: Thân phần tử hay soma (hoặc cell body). Nhân của nơron được đặt ở đây. - Phần thứ hai: Các 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. - Phần thứ ba: axon. Đây là một nối kết, hình trụ dài và mang các tín hiệu từ đó ra ngoài. Phần cuối của axon được chia thành nhiều nhánh nhỏ. Mỗi nhánh nhỏ (cả của dendrite và axon) kết thúc trong một cơ quan nhỏ hình củ hành được gọi là synapte mà tại đây các nơron đưa các tín hiệu của nó vào các nơron khác. Những điểm tiếp nhận với các synapte trên các nơron khác có thể ở các dendrite hay chính soma. Hình 1.1 Sơ đồ nơron sinh học 8 b) Hoạt động Các tín hiệu được đư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ều này làm tăng hoặc 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ẽ được kích hoạt (fire) nếu điện thế vượt khỏi một ngưỡng nào đó. Một xung (hoặc điện thế hoạt động) với cường độ mạnh và thời gian tồn tại cố định sẽ được gửi ra ngoài thông qua axon tới phần nhánh của nơron đó, rồi tới các chỗ nối synapte của các nơron khác. Sau khi kích hoạt, nơron sẽ chờ một khoảng thời gian được gọi là chu kỳ refractory, trước khi nó có thể kích hoạt lại. Synapses là excitatory nếu chúng cho phép các kích thích truyền qua gây ra tình trạng kích hoạt đối với nơron nhận. Ngược lại, chúng là inhibitory nếu chúng cho phép các kích thích truyền qua làm ngăn chở trạng thái kích hoạt của nơron nhận. Các synapses đóng vai trò rất quan trọng trong sự học tập. Khi chúng ta học tập thì hoạt động của các synapses được tăng cường, tạo nên nhiều liên kết mạnh giữa các nơron. Có thể nói rằng người nào học càng giỏi thì càng có nhiều synapses và các synapses ấy càng mạnh mẽ, hay nói cách khác, thì liên kết giữa các nơron càng nhiều, càng nhạy bén. 1.1.1.2. Chức năng, tổ chức và hoạt động của bộ não con người a) Chức năng Bộ não của con người có chức năng hết sức quan trọng trong đời sống của con người. Bộ não gần như kiểm soát hầu hết mọi hành vi của con người, từ các hoạt động cơ bắp đơn giản đến những hành động phức tạp như học tập, nhớ, suy luận, tư duy, sáng tạo,… b) Tổ chức Bộ não của con người được hình thành từ sự liên kết của khoảng 10 11 phân tử (tế bào), trong đó có khoảng 1010 phần tử là nơron, số còn lại khoảng 9*1010 phần tử là các tế bào thần kinh đệm. Các tế bào thần kinh đệm có nhiệm vụ phục vụ cũng như hỗ trợ cho các nơron. Cấu tạo chi tiết của bộ não thì đến nay người ta vẫn chưa thực sự biết rõ. Tuy vậy, não bộ có thể được phân chia 9 thành nhiều vùng khác nhau. Mỗi vùng có thể kiểm soát một hay nhiều hoạt động của con người. Bộ não có cấu trúc nhiều lớp. Lớp bên ngoài thường thấy là các nếp nhăn, là lớp có cấu tạo phúc tạp nhất. Đây có thể là nơi kiểm soát và phát sinh các hành động phức tạp như nghe, nhìn, tư duy,… c) Hoạt động Mặc dù mỗi nơron (có thể xem như phần tử xử lý hay phần tử tính) có tốc độ rất chậm so với tốc độ các cổng logic silicon trong các vi chip 10-3 giây so với 10-10 giây, nhưng do mỗi nơron liên kết với khoảng 104 nơron khác, cho nên, khi hoạt động thì bộ não hoạt động một cách tổng lực và đạt hiệu quả cao. Nói một cách khác là phần tử của não hoạt động một cách song song và tương tác hết sức tinh vi phức tạp. Hiệu quả hoạt động thường rất cao, nhất là trong các vấn đề phức tạp. Tóm lại, bộ não có chức năng hết sức quan trọng đối với đời sống của con người. Cấu tạo của bộ não rất phức tạp, tinh vi bởi được tạo thành từ mạng nơron có hàng chục tỉ tế bào với mức độ liên kết giữa các nơron là rất cao. Hơn nữa, bộ não còn được chia thành các vùng và các lớp khác nhau. Bộ não hoạt động dựa trên cơ chế hoạt động song song của các nơron tạo nên bộ não đó. Lý thuyết về mạng nơron nhân tạo, hay gọi tắt là “mạng nơron”, được xây dựng xuất phát từ một thực tế là bộ não con người luôn luôn thực hiện các tính toán một cách hoàn toàn khác so với các máy tính số. Có thể coi bộ não là một máy tính hay một hệ thống xử lý thông tin song song, phi tuyến và cực kỳ phức tạp. Nó có khả năng tự tổ chức các bộ phận cấu thành của nó, như là các tế bào thần kinh (neuron) hay các khớp nối thần kinh (synapse), nhằm thực hiện một số tính toán như nhận dạng mẫu và điều khiển vận động nhanh hơn nhiều lần các máy tính nhanh nhất hiện nay. Sự mô phỏng bộ não con người của mạng nơron là dựa trên cơ sở một số tính chất đặc thù rút ra từ các nghiên cứu về thần kinh sinh học. 10 Hình 1.2 Mạng nơron sinh học 1.1.1.3. So sánh mạng nơron với máy tính truyền thống Các mạng nơron có cách tiếp cận khác trong giải quyết vấn đề so với máy tính truyền thống. Các máy tính truyền thống sử dụng cách tiếp cận theo hướng giải thuật, tức là máy tính thực hiện một tập các chỉ lệnh để giải quyết một vấn đề. Vấn đề được giải quyết phải được biết và phát biểu dưới dạng một tập chỉ lệnh không nhập nhằng. Những chỉ lệnh này sau đó phải được chuyển sang một chương trình ngôn ngữ bậc cao và chuyển sang mã máy để máy tính có thể hiểu được. Trừ khi các bước cụ thể mà máy tính cần tuân theo được chỉ ra rõ ràng, máy tính sẽ không làm được gì cả. Điều đó giới hạn khả năng của các máy tính truyền thống ở phạm vi giải quyết các vấn đề mà chúng ta đã hiểu và biết chính xác cách thực hiện. Các máy tính sẽ trở lên hữu ích hơn nếu chúng có thể thực hiện được những việc mà bản thân con người không biết chính xác là phải làm như thế nào. Các mạng nơron xử lý thông tin theo cách thức giống như bộ não con người. Mạng được tạo nên từ một số lượng lớn các phần tử xử lý được kết nối với nhau làm việc song song để giải quyết một vấn đề cụ thể. Các mạng nơron học theo mô hình, chúng không được lập trình để thực hiện một nhiệm vụ cụ 11 thể. Các mẫu phải được chọn lựa cẩn thận nếu không sẽ rất mất thời gian, thậm chí mạng sẽ hoạt động không đúng. Hạn chế này là bởi vì mạng tự tìm ra cách giải quyết vấn đề, thao tác của nó không thể dự đoán được[12]. Các mạng nơron và các máy tính truyền thống không cạnh tranh nhau mà bổ sung cho nhau. Có những nhiệm vụ thích hợp hơn với máy tính truyền thống, ngược lại có những nhiệm vụ lại thích hợp hơn với các mạng nơron. Thậm chí rất nhiều nhiệm vụ đòi hỏi các hệ thống sử dụng tổ hợp cả hai cách tiếp cận để thực hiện được hiệu quả cao nhất. Thông thường một máy tính truyền thống được sử dụng để giám sát mạng nơron. 1.1.2. Nơron nhân tạo Nơron nhân tạo là một đơn vị tính toán có nhiều đầu vào và một đầu ra. Mỗi đầu vào đến từ một liên kết. Đặc trưng của nơron là một hàm kích hoạt phi tuyến chuyển đổi tổ hợp tuyến tính của tất cả các tín hiệu đầu vào thành tín hiệu đầu ra. Hàm kích hoạt này đảm bảo tính chất phi tuyến cho tính toán của mạng nơron. Hình 1.3 Mô hình một nơron nhân tạo 12 Hình 1.4 Sự tương đương giữa nơron sinh học và nơron nhân tạo[16] Các thành phần cơ bản của một nơron nhân tạo bao gồm: ♦ Tập các đầu vào: Là các tín hiệu vào (input signals) của nơron, các tín hiệu này thường được đưa vào dưới dạng một vector N chiều. ♦ Tập các liên kết: Mỗi liên kết được thể hiện bởi một trọng số (gọi là trọng số liên kết – Synaptic weight). Trọng số liên kết giữa tín hiệu vào thứ j với nơron k thường được kí hiệu là wkj. 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 mạng. Các trọng số liên kết chính là các tham số tự do cơ bản của mạng nơron. Các trọng số này có thể được thay đổi nhằm thích nghi với môi trường xung quanh. ♦ Bộ tổng (Summing function): Thường dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó. ♦ Ngưỡng (còn gọi là một độ lệch -bias): Ngưỡng này thường được đưa vào như một thành phần của hàm truyền. Hệ số điều chỉnh b có tác dụng tăng lên hoặc giảm đi đầu vào thực của hàm truyền tùy theo hàm truyền dương hay âm. ♦ Hàm truyền (Transfer function): Hay còn được gọi là hàm kích hoạt, hàm này được dùng để giới hạn phạm vi đầu ra của mỗi nơron. Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho. Thông thường, phạm vi đầu ra 13 của mỗi nơron được giới hạn trong đoạn [0,1] hoặc [-1, 1]. Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến. Việc lựa chọn hàm truyền nào là tuỳ thuộc vào từng bài toán và kinh nghiệm của người thiết kế mạng. Một số hàm truyền thường sử dụng trong các mô hình mạng nơron được đưa ra trong bảng 1.2 . ♦ Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa là một đầu ra. Dưới dạng công thức toán học, chúng ta có thể mô tả một nơron k bằng cặp công thức sau: m u k   wkj x j j 1 (1.1) Và yk=(uk+b) (1.2) Ở đó x1,x2,...,xm là các tín hiệu đầu vào; w k1,wk2,...,wkm là các trọng số synapse của neuron k; uk là đầu ra bộ tổ hợp tuyến tính tương ứng; b k là hệ số hiệu chỉnh. Hệ số hiệu chỉnh bk là một tham số ngoài của neuron nhân tạo k. Chúng ta có thể thấy được sự có mặt của nó trong công thức (1.2). Một cách tương đương, chúng ta có thể tổ hợp các công thức (1.1) và (1.2) như sau: m v k   wkj x j j 0 (1.3) và y k   (vk ) (1.4) Trong công thức (1.3), chúng ta đã thêm một synapse mới. Đầu vào của nó là: x0=+1 (1.5) wk0=bk (1.6) và trọng số của nó là: Như vậy chúng ta vẽ lại mô hình của neuron k như trong hình 1.5. Trong hình này, nhiệm vụ của hệ số hiệu chỉnh là thực hiện hai việc: (1) thêm một tín hiệu đầu vào cố định là (1), và (2) thêm một trọng số synapse mới bằng giá trị
- Xem thêm -

Tài liệu liên quan