báo cáo tìm hiểu mạng nơ tron ứng dụng trong nhận dạng chữ viết

40 490 0
báo cáo tìm hiểu mạng nơ tron ứng dụng trong nhận dạng chữ viết

Đ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

1 BỘ MÔN MÁY HỌC NÂNG CAO BÁO CÁO TÌM HI ỂU ĐỀ TÀI : Đ Ạ I H Ọ C QU Ố C GIA TP H Ồ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP HỒ CHÍ MINH KHOA KHOA HỌC MÁY TÍNH Nhóm sinh viên thực hiện : Nguyễn Thế Luân 08520216 Nguyễn Anh Hùng 08520549 Nguyễn Huỳnh Trường Khang 08520172 H Ọ C KÌ I NĂM HỌC 2011-2012 ____________________________ 2 Việc viết chữ trên giấy là một hành động bình thường đối với mỗi người chúng ta, và mỗi một người đều sở hữu một nét chữ khác nhau, không ai giống ai. Những chữ viết tay của một người thường khiến người khác khó khăn khi đọc chúng, vì chúng không theo một khuôn dạng rõ ràng và khác nhau giữa người này với người khác. Cũng có trường hợp đôi khi chính người viết cũng không đọc được chữ của mình. Vì vậy, nếu ngay cả con người chúng ta không đọc được những chữ viết đó thì liệu máy tính có đọc được không?Từ đây, một câu hỏi được đặt ra là : có cách nào để máy tính của chúng ta có thể “giải mã” những chữ viết tay của một người nào đó và giúp cho mọi người hiểu được ý nghĩa mà chúng hiển thị. Việc phân tích những chữ viết tay của máy tính nhằm tìm ra lời giải cho vấn đề thú vị này là một trong những tiền đề của kỹ thuật nhận dạng chữ viết tay hiện nay. Nhận dạng chữ viết tay là một lĩnh vực nghiên cứu sôi nổi và là một phần quan trọng và thú vị trong các ứng dụng khoa học máy tính hiện nay. Nhận dạng chữ viết ngày càng trở nên quan trọng vì rất nhiều lý do, trong đó có việc bất tiện hoặc không thể sử dụng bàn phím máy tính để nhập liệu. Một tình huống đưa ra: chúng ta sở hữu một số lượng lớn đầu sách, tài liệu cổ lâu năm được viết bằng tay. Những quyển sách này đã bị hư hại do thời gian, do môi trường ảnh hưởng,… và là chữ viết tay của một người nào đó nên không thể hoặc cực kỳ khó đọc. Làm thể nào để máy tính đọc và ta có thể số hóa những trang này? Đây chỉ là một tình huống cụ thể mà ta có thể gặp trong thời đại thế giới số hiện nay. Ngoài ra, chúng ta có rất nhiều tình huống nan giải khác. Ngày nay, máy tính ngày càng được sử dụng một cách rộng rãi. Dựa trên kỹ thuật xử lý hình ảnh trên máy tính, công nghệ nhận dạng chữ viết tay có thể giúp ta giải quyết vấn đề này. Với chương trình nhận dạng chữ viết tay, ta có thể chuyển hàng ngàn đầu sách được viết bằng tay trên thành những văn bản điện tử trong thời gian ngắn.Ngoài ra,việc nhận dạng chữ viết của con người có ứng dụng trong khoa học hình sự, bảo mật thông tin và các lĩnh vực khác … Để giải quyết các bài toán nhận dạng, người ta đã đưa vào các cách tiếp cận khác nhau. Mỗi phương pháp tiếp cận trong những bài toán cụ thể đều có những ưu, nhược điểm riêng… và những phương pháp này có một tỉ lệ nhận biết thành công nhất định. Một trong những phương pháp cơ bản trong nhận dạng chữ viết được sử dụng rộng rãi hiện nay là sử dụng mô hình mạng nơ tron nhân tạo. Nội dung của báo cáo này sẽ đi vào tìm hiểu tổng quan về mạng nơ tron, xem xét và nghiên cứu cấu trúc các mạng nơ tron, giới thiệu về phương pháp huấn luyện mạng nơ tron và cuối cùng là tìm hiểu về vấn đề nhận dạng ký tự viết tay- một trong những ứng dụng phổ biến của mạng nơ tron. 3 I. GIỚI THIỆU VỀ MẠNG NƠ TRON NHÂN TẠO 1. Mạng nơ tron sinh học: Những nghiên cứu y học đã phát hiện ra rằng: Bộ não chúng ta được hình thành từ hơn 10 tỉ tế bào được gọi là nơ tron. Loại tế bào này khác các tế bào khác ở chỗ nó có khả năng nhận, xử lý và truyền các tín hiệu điện hóa trên các đường kết nối giữa các tế bào, các con đường này tạo nên hệ thống giao tiếp của bộ não. Từ đó, các nơ tron liên kết với nhau, tạo thành mạng nơ tron. Mạng nơ tron sinh học là một mạng (plexus) các nơ tron có kết nối hoặc có liên quan về mặt chức năng trực thuộc hệ thần kinh ngoại biên (peripheral nervous system) hay hệ thần kinh trung ương (central nervous system). Thông thường, một mạng nơ tron bao gồm một hoặc nhiều nhóm các nơ tron được kết nối vật lý với nhau hoặc có liên quan với nhau về chức năng. Một nơ tron đơn có thể được nối với nhiều nơ tron khác và tổng số nơ tron và kết nối trong một mạng có thể là một giá trị cực kỳ lớn. Các kết nối, gọi là các khớp thần kinh (synapses), thường nối từ các axon tới các tế bào tua gai thần kinh (dendrite), tuy có thể có các vi mạch dendrodentritic và các kết nối khác. Ngoài tín hiệu điện, còn có các dạng tín hiệu khác phát sinh từ việc khuyếch tán các chất dẫn truyền xung động thần kinh (neurotransmitter). Chúng có ảnh hưởng đối với tín hiệu điện. Do vậy, cũng như các mạng sinh học khác, mạng nơ tron vô cùng phức tạp. Trong khi hiện nay, dù chưa đạt được một mô tả chi tiết nào về hệ thần kinh , người ta vẫn ngày càng hiểu rõ hơn về các cơ chế cơ bản. M ạng nơ tron trong bộ não con ng ườ i 4 Với mục đích xây dựng một mô hình có khả năng xử lý dữ liệu mạnh mẽ như não bộ của con người, dựa trên mô hình mạng nơ tron sinh học, ngày nay con người đã xây dựng và đề ra mô hình mạng nơ tron nhân tạo. 2. Mạng nơ tron nhân tạo : Mạng nơ tron nhân tạo là mô hình được xây dựng dựa trên việc bắt chước cấu trúc và chức năng của mạng nơ tron sinh học. Thành phần cấu tạo cơ bản của mạng là tế bào nơ tron nhân tạo. Các nơ tron này, về bản chất, cũng dựa trên mô hình tế bào nơ tron sinh học. Một mô hình tế bào nơ tron nhân tạo gồm có ba quy tắc cơ bản : nhân, tổng hợp và kích hoạt. tại lối vào (input) của mô hình, các giá trị đầu vào sẽ được nhân với trọng số cá nhân (weight). Các lối vào đều có trọng số riêng của mình. 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. Lối vào nào có trọng số càng lớn thì đồng nghĩa với tín hiệu truyền qua đó càng lớn. Bên trong thân của tế bào sẽ tổng hợp các giá trị đầu vào này và ngưỡng (bias). Ở lối ra (output) của tế bào, hàm truyền (Transfer function) có tác dụng giới hạn phạm vi output của tế bào, sẽ nhận vào giá trị tổng hợp, xử lý và quyết định giá trị đầu ra của tế bào, thường là 0 hoặc 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 cụ thể. Có thể viết mô hình trên dưới dạng toán học như sau :  Tổng hợp các input với trọng số u =   N i ii xw 0 với x,w là giá trị đầu vào và trọng số tại đường truyền input thứ I (trong tổng số N đường input)  Output y = f(u-t) = f          txw N i ii 0 với f là hàm truyền, y là giá trị đầu ra (output) và t là ngưỡng. Mô hình c ủ a t ế bào nơ tron Với cấu trúc và cách thức hoạt động trên, khả năng xử lý của một tế bào nơ tron nhân tạo chỉ có giới hạn. Tuy nhiên, sức mạnh tính toán và xử lý của chúng sẽ được phát huy khi ta kết nối các tế bào này lại với nhau thành một kiến trúc đồng nhất, tạo thành một mạng nơ tron. Mô hình mạng nơ tron có khả năng xử lý những tình huống vấn đề, bài toán phức tạp hơn, nhất là trong các bài toán 5 phi tuyến như phân tích, dự doán, nhận dạng tiếng nói, vân tay hay các ứng dụng nhận dạng khác, … Khả năng này được dựa trên ba tham số: kiểu của tế bào, kiến trúc kết nối và thuật toán học cho mạng. Về mặt toán học, một mạng nơ tron được xem như là một hàm ánh xạ F: X->Y, trong đó X là không gian trạng thái đầu vào (input state space) và Y là không gian trạng thái đầu ra (output state space) của mạng. Các mạng chỉ đơn giản là làm nhiệm vụ ánh xạ các vector đầu vào x ∈ X sang các vector đầu ra y ∈ Y thông qua “bộ lọc” (filter) các trọng số. Tức là y = F(x) = s(W, x), trong đó W là ma trận trọng số liên kết. Khác với các ứng dụng trên máy tính truyền thống, thường chỉ thực hiện theo một giải thuật- một tập luật có thứ tự được đề ra một cách rõ ràng, mô hình mạng nơ tron có cách xử lý thông tin giống với hoạt động của bộ não con người hơn. Một mô hình mạng nơ tron gần giống như một đối tượng có thể tư duy .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ể. Mạng nơ tron có thể mô phỏng gần như bất cứ hàm mục tiêu nào với số biến nhập và xuất tuỳ ý. Ngoài ra, mạng nơ tron còn có một ưu điểm tuyệt vời khác, đó là khả năng học. Khả năng học của mạng chủ yếu dựa trên kỹ thuật lan truyền ngược. mạng nơ tron lan truyền là một hàm phi tuyến có thể xấp xỉ gần đúng, nhưng một hàm đích được cho qua một số mẫu trong tập mẫu có sẵn Mỗi khi có kiến thức mới ta lại đưa cho mạng nơ tron. Khả năng này của mạng nơ tron là rất cần thiết cho các vấn đề có dữ liệu luôn thay đổi. 3. Lịch sử phát triển của mạng nơ tron nhân tạo Sự kiện đầu tiên đánh dấu sự ra đời của mạng nơ tron 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ơ tron hoạt động. Họ cũng đã tiến hành xây dựng một mạng nơ tron đơn giản bằng các mạch điện. Các nơ tron 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”. 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ơ tron nhân tạo sẽ trở lê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ơ tron. 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ơ tron 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ơ tron. 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ơ tron trong bộ não con người. 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ơ tron đơ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ơ tron Frank Rosenblatt cũng bắt đầu nghiên cứu về Perceptron. 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ơ 6 tron 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 viết năm 1969. 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ơ tron đầ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ơ tron này vẫn được sử dụng trong các ứng dụng thương mại. 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. 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ơ tron 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 nơ tron. 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ơ tron đã đượ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ắngrằ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ơ tron. 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 nơ tron ứng dụng trong tin học (Neural Networks for Computing). Năm 1987, hội thảo quốc tế đầu tiên về mạng nơ tron 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. 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ơ tron để 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ơ tron ra đời ngày càng nhiều và ngày càng hoàn thiện hơn. 4. Hàm truyền (Transfer Function) Một trong các yếu tố xây dựng mạng nơ tron là hàm truyền. Hàm truyền định nghĩa các thuộc tính của mạng nơ tron và nó có thể là một hàm toán học. Có nhiều loại hàm truyền. Việc lựa chọn các hàm này dựa trên cơ sở vấn đề của bài toán cần giải quyết và thường nằm trong ba loại hàm căn bản sau:  Step Function : là hàm nhị phân chỉ có 2 giá trị output (0,1). Nếu giá trị đầu vào đáp ứng giá trị của ngưỡng cụ thể (lớn hơn) thì output sẽ là 1 vào ngược lại sẽ là 0. 7  Linear function : là hàm tuyến tính, có tác dụng làm biến đổi đơn giản trọng số đầu vào và ngưỡng.  Non-linear (Sigmoid) function : là hàm không tuyến tính. Hàm này thường được sử dụng thông dụng nhất. Với cách tính đạo hàm, hàm này được dùng khi ta cần cập nhật lại trọng số trong các mạng nơ tron. 8 5. Các mô hình mạng nơ tron Khi kết hợp hai hoặc nhiều tế bào nơ tron nhân tạo lại, chúng ta sẽ nhận được một mạng nơ tron nhân tạo. Nếu tế bào thần kinh nhân tạo duy nhất hầu như không có tính hữu dụng trong việc giải quyết các vấn đề thực tế thì ngược lại, mạng thần kinh nhân tạo có thể làm được nhiều điều. Trong thực tế, các mạng nơ tron nhân tạo có khả năng giải quyết những phức tạp thực tế của vấn đề xử lý thông tin trong khối dữ liệu phức tạp một cách phi tuyến tính, phân phối, song song hoặc cục bộ. Cách thức mà các tế bào nơ tron kết nối với nhau được gọi là cấu trúc liên kết, là kiến trúc của mạng nơ tron nhân tạo.Cấu trúc này đóng vai trò quyết định khả năng thực hiện của mạng. Trong thực tế là có nhiều cách kết nối, và các cách này có thể được thực hiện trong cùng một mạng và mang lại kết quả khác nhau. Nhìn chung, cấu trúc liên kết có thể được chia thành hai loại cơ bản: Truyền thẳng (Feed forward) : là cấu trúc mà các luồng thông tin từ đầu vào đến đầu ra theo hướng duy nhất. Mạng nơ tron nhân tạo như vậy chỉ có một điều kiện duy nhất : thông tin phải chảy từ đầu vào đến đầu ra chỉ có một hướng không có vòng trở lại. Không có giới hạn về số lượng các lớp, loại chức năng chuyển giao sử dụng trong tế bào thần kinh nhân tạo cá nhân, số lượng kết nối giữa các tế bào thần kinh nhân tạo cá nhân. Các nguồn cung cấp dữ liệu chuyển tiếp mạng nơ tron nhân tạo đơn giản nhất là một perceptron duy nhất chỉ có khả năng học tập các vấn đề tuyến tính tách riêng. M ạng nơ tron truyề n th ẳ ng (m ạ ng MLP) Hồi quy (recurrent) : là cấu trúc liên kết hồi quy đường truyền (vòng bán đồ thị), nơi một số dòng chảy thông tin không chỉ theo một hướng từ đầu vào đến đầu ra mà còn ở chiều ngược lại. Nó tương tự như mạng truyền thẳng là không có giới hạn về phía sau vòng lặp. Những trường hợp thông tin không còn chỉ truyền theo một hướng, nhưng nó cũng là truyền ngược trở lại. Điều này tạo ra một trạng thái nội bộ của mạng cho phép nó năng động, hành vi thể hiện tạm thời. Các mạng nơ tron nhân tạo này có thể sử dụng bộ nhớ trong của chúng để xử lý bất kỳ chuỗi dữ liệu, yếu tố đầu vào. Mạng lưu lại các trạng thái trước đó, và trạng thái tiếp theo không chỉ phụ thuộc vào các tín hiệu đầu vào mà còn phụ thuộc vào các trạng thái trước đó của mạng. Các mạng thần kinh nhân tạo thường xuyên như Hopfield, Elman, Jordan và các mạng khác chỉ là trường hợp đặc biệt của mạng thần kinh nơ tron nhân tạo lặp lại. 9 M ạng nơ tron h ồ i quy (M ạ ng Hopfield) a) Khả năng thể hiện của mạng (được thể hiện ở cấu trúc của mạng)  Các mạng không có các lớp ẩn chỉ có khả năng giải quyết các bài toán khả phân tuyến tính.  Các mạng nơ tron với một lớp ẩn có thể xấp xỉ khá tốt bất kỳ một ánh xạ hàm nào từ không gian hữu hạn một chiều sang một không gian khác.  Các mạng nơ tron với 2 lớp ẩn có khả năng thể hiện một đường phân chia hay xấp xỉ một ánh xạ mịn bất kỳ tới một độ chính xác bất kỳ. M ạng nơ tron g ồ m 3 l ớp :đầ u vào (input), ẩn(hidden) và đầ u ra (output) 10 b) Mạng Perceptron Perceptron là mạng nơ tron truyền thẳng đơn giản nhất, nó chỉ gồm một tế bào nơ tron, nhận đầu vào là dữ liệu đầu vào và đầu ra là một trong hai giá trị +1 hoặc -1. Đầu ra của mạng được xác định như sau: mạng lấy tổng có trọng số các giá trị đầu vào, kết quả này cùng ngưỡng được đưa vào hàm truyền và kết quả của hàm truyền sẽ là đầu ra của mạng. Perceptron cho phép phân loại chính xác trong trường hợp dữ liệu có thể phân chia tuyến tính (các mẫu nằm trên hai mặt đối diện của một siêu phẳng). Nó cũng phân loại đúng đầu ra các hàm AND, OR và các hàm có dạng đúng khi n trong m đầu vào của nó đúng (n ≤ m). Nó không thể phân loại được đầu ra của hàm XOR. c) Mạng Perceptron nhiều tầng (MLP: Multi Layer Perceptron) Đây là mô hình mạng nơ tron được sử dụng rộng rãi nhất. Một mạng MLP tổng quát là mạng có n (n≥2) tầng (thông thường tầng đầu vào không được tính đến): trong đó gồm một tầng đầu ra (tầng thứ n) và (n-1) tầng ẩn. Kiến trúc của một mạng MLP tổng quát có thể mô tả như sau:  Đầu vào là các vector (x1, x2, , xp) trong không gian p chiều, đầu ra là các vector (y1,y2, , yq) trong không gian q chiều. Đối với các bài toán phân loại, p chính là kích thước của mẫu đầu vào, q chính là số lớp cần phân loại.  Mỗi nơ tron thuộc tầng sau liên kết với tất cả các nơ tron thuộc tầng liền trước nó.  Đầu ra của nơ tron tầng trước là đầu vào của nơ tron thuộc tầng liền sau nó. Hoạt động của mạng MLP như sau: tại tầng đầu vào các nơ tron nhận tín hiệu vào xử lý (tính tổng trọng số, gửi tới hàm truyền) rồi cho ra kết quả (là kết quả của hàm truyền); kết quả này sẽ được truyền tới các nơ tron thuộc tầng ẩn thứ nhất; các nơ tron tại đây tiếp nhận như là tín hiệu đầu vào, xử lý và gửi kết quả đến tầng ẩn thứ 2;…; quá trình tiếp tục cho đến khi các nơ tron thuộc tầng ra cho kết quả. Một số kết quả đã được chứng minh:  Bất kì một hàm Boolean nào cũng có thể biểu diễn được bởi một mạng MLP 2 tầng trong đó các nơ tron sử dụng hàm truyền sigmoid.  Tất cả các hàm liên tục đều có thể xấp xỉ bởi một mạng MLP 2 tầng sử dụng hàm truyền sigmoid cho các nơ tron tầng ẩn và hàm truyền tuyến tính cho các nơ tron tầng ra với sai số nhỏ tùy ý.  Mọi hàm bất kỳ đều có thể xấp xỉ bởi một mạng MLP 3 tầng sử dụng hàm truyền sigmoid cho các nơ tron tầng ẩn và hàm truyền tuyến tính cho các nơ tron tầng ra. d) Mạng Hopfield Một Hopfield mạng nơ tron nhân tạo là một loại mạng thần kinh nhân tạo hồi quy, được sử dụng để lưu trữ một hoặc nhiều target vector. Các vetor này được cung cấp để lưu trữ các vector dữ liệu đầu vào mà mạng được nhận được. Mạng sử dụng hai giá trị nhị phân (0,1) xác định trạng thái của nó khi tổng hợp giá trị đầu vào có vượt quá ngưỡng cho phép không. Các yêu cầu các trọng số cần phải được đối xứng khi sử dụng, vì nó sẽ phải đảm bảo rằng các hàm cần giảm đơn điệu khi theo các quy tắc kích hoạt. Nếu trọng số không đối xứng khi được sử dụng thì các mạng có thể thể hiện một số hành vi tuần hoàn hoặc hỗn loạn. Việc huấn luyện một mạng Hopfield có liên quan đến việc giảm thiểu các trạng thái mà các mạng nơ tron nhân tạo nên nhớ. [...]... mạng nơ tron truyền thẳng Đối với mạng truyền thẳng, nếu chúng ta có một mạng nơ tron với 5 nơ tron đầu ra, chúng sẽ có thể cho kết quả bao gồm 5 giá trị Còn trong mạng nơ tron Kohonen chỉ có một nơ tron đầu ra cho ra một giá trị Giá trị duy nhất này có thể là đúng hoặc sai Dữ liệu đầu ra từ mạng nơ tron Kohonen thường là các chỉ số của nơ tron (Ví dụ nơ tron số 5,…) Một mô hình mạng Kohonen Trong Demo... các nơ tron và nó không chứa lớp ẩn Lớp dữ liệu đầu vào đối với mạng nơ tron Kohonen là các nơ tron đầu vào Các nơ tron đầu vào này tạo thành mẫu dữ liệu đầu vào của mạng Đối với mạng nơ tron Kohonen, ta nên chọn dữ liệu đầu vào chuẩn hóa trong khoảng giữa -1 và 1 Khi thực thi mẫu dữ liệu đầu vào, mạng sẽ tạo ra các nơ tron đầu ra Lớp đầu ra của mạng nơ tron Kohonen rất khác với lớp đầu ra của mạng nơ. .. cho Java và Net trong việc lập trình mạng nơ tron Nền tảng này cung cấp các công cụ để tạo ra và sử dụng nhiều loại mạng nơ tron khác nhau ( các mạng truyền thẳng, mạng hồi quy) ở dạng code cấp thấp Ở dạng này, Encog có thể kết hợp, mở rộng thêm nhiều kiến trúc mạng khác nhau, tùy ý người sử dụng Trong Encog, các mạng nơ tron được xây dựng và các dữ liệu liên quan của chúng, được lưu trữ trong các tập... chia bài toán thành hai dạng cơ bản : nhận dạng trực tiếp (Online) và nhận dạng gián tiếp (Offline), nghĩa là giữa chữ viết trực tiếp và chữ viết dưới dạng hình ảnh 19 Thông thường, nhận dạng Online có ưu điểm hơn nhận dạng Offline Ví dụ khi viết một chữ viết mà nét sau đè lên nét trước, các nét viết được biết đến và ta không cần phân tích hình ảnh của chúng thì nhận dạng chữ viết kiểu online hoàn toàn... thì mạng hiệu chỉnh trọng số càng chậm Nhưng muốn đạt đến trạng thái tối ưu thì ta phải tăng số vòng lặp nhiều hơn 29 III MÔ HÌNH NHẬN DẠNG CHỮ VIẾT ONLINE 1 Mô hình Nhận dạng chữ viết tay trực tiếp (On-line handwritten character recognition) là mô hình nhận dạng chữ viết với dữ liệu đầu vào là chữ viết trực tiếp của người sử dụng Mô hình nhận dạng này được sử dụng phổ biến trong công nghệ cảm ứng, ... 2 Mạng MLP Mô hình mạng nơ tron sử dụng ở đây là mạng lan truyền thẳng ( MultiLayer Perceptron ) với ba tầng gồm một tầng vào, một tầng ẩn và một tầng đầu ra Số nơ tron đầu vào bằng số chiều của vector đặc trưng cho mẫu, số nơ tron tầng ẩn có thể thay đổi linh hoạt trong quá trình luyện mạng, và số nơ tron tầng ra bằng số lớp cần phân loại Các mạng nơ tron Multi-Layer Perceptron có lẽ là kiến trúc mạng. .. độ trong không gian và thời gian, sẽ quét và ghi nhận lại các đặc trưng để làm cơ sở cho việc nhận dạng Trong mô hình này, chúng ta sẽ nhận dạng trực tiếp chữ viết tay của người sử dụng Đây là điểm đặc biệt của mô hình Việc này đã dẫn tới các vấn đề khó khăn nhận dạng chữ viết thời gian thực: áp đặp hạn chế về thời gian cho phép để hoàn thành công việc nhận dạng cũng như tốc độ viết của người sử dụng. .. cập đến mô hình nhận dạng chữ viết offline sử dụng mạng MLP dựa trên Demo Mục tiêu chính của Demo này là chứng minh khả năng của việc triển khai mạng Nơ tron nhân tạo trong việc nhận ký tự offline: sử dụng kỉ thuật phân tích ảnh dể nhận diện chữ viết tay Cách thức thực hiện trong bài này là ta sẽ input hình ảnh đầu vào, phân tích, phát hiện các kí tự, lập ma trận các ký hiệu và đào tạo mạng với một tập... output thay vì từ lớp ẩn 6 Ứng dụng của mạng nơ tron Mạng nơ tron nhân tạo có khả năng được sử dụng trong các công việc phân loại, bài toán gần đúng, xử lý dữ liệu, lọc, phân nhóm, nén, robot, các quy định, ra quyết định, … Việc chọn cấu trúc liên kết mạng nơ tron nhân tạo phụ thuộc vào kiểu của ứng dụng và dữ liệu đại diện của một vấn đề nhất định Khi chọn và sử dụng các mạng nơ tron nhân tạo, chúng ta... chính xác và giảm thời gian nhận dạng của toàn bộ hệ thống Trong nhận dạng kí tự offline, các đặc trưng có thể bao gồm thông tin theo chiều ngang và chiều dọc, số lượng các lỗ rỗng bên trong, xác định số nét (stroke detection) và nhiều yếu tố khác Các thông tin này dựa trên việc xử lý hình ảnh đầu vào Không giống như trong nhận dạng chữ viết offline, trong nhận dạng chữ viết tay online mẫu đầu vào . Một trong những phương pháp cơ bản trong nhận dạng chữ viết được sử dụng rộng rãi hiện nay là sử dụng mô hình mạng nơ tron nhân tạo. Nội dung của báo cáo này sẽ đi vào tìm hiểu tổng quan về mạng. mạng nơ tron, xem xét và nghiên cứu cấu trúc các mạng nơ tron, giới thiệu về phương pháp huấn luyện mạng nơ tron và cuối cùng là tìm hiểu về vấn đề nhận dạng ký tự viết tay- một trong những ứng. lại trọng số trong các mạng nơ tron. 8 5. Các mô hình mạng nơ tron Khi kết hợp hai hoặc nhiều tế bào nơ tron nhân tạo lại, chúng ta sẽ nhận được một mạng nơ tron nhân tạo.

Ngày đăng: 10/10/2014, 13:38

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan