BÀI TẬP LỚN MÔN LÝ THUYẾT NHẬN DẠNG Mạng nơron Hopfield và ứng dụng

17 2.2K 15
BÀI TẬP LỚN MÔN LÝ THUYẾT NHẬN DẠNG Mạng nơron Hopfield và ứng dụng

Đ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

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN  BÀI TẬP LỚN MÔN: LÝ THUYẾT NHẬN DẠNG Đề tài: Mạng nơron Hopfield và ứng dụng Lớp : ĐH KHMT2 – K3 Gio viên hướng d"n: Trần Hùng Cường Sinh viên thực hiện: Nhóm 6 Trần Văn Huy Phạm Hằng Nga Nguyễn Thị Tân Nguyễn Khnh Linh Hà Nội, tháng 6/2011 Mạng nơron Hopfield MẠNG HOPFIELD LỜI MỞ ĐẦU Những năm gần đây trên thế giới đưa ra mô hình mạng nơ-ron nhân tạo là mô hình tính toán được áp dụng rộng rãi trong lĩnh vực công nghệ thông tin, đặc biệt là mạng Hopfield rất thích hợp cho các bài toán: Bài toán tìm đường đi ngắn nhất, bài toán tô màu bản đồ, bài toán xếp hậu . Khi ứng dụng mạng nơ-ron Hopfield để giải bài toán thì thu được kết quả khá khả quan về mặt chương trình gọn, đơn giản. Nhận thức được vấn đề đó và có sự gợi ý định hướng của thầy Trần Hùng Cường chúng em đã mạnh dạn nghiên cứu đề tài “Mạng nơ-ron Hopfield và ứng dụng”. I. Giới thiệu 1. Giới thiệu về mạng nơ-ron 1. Lịch sử phát triển Theo Wiener: trí não, thông tin và điều khiển là ba lĩnh vực dưới ngọn cờ chung là điều khiển học (Cybernetics). Nghiên cứu và mô phỏng trí não, cụ thể là mô tế bào thần kinh (nơ-ron) là một ước muốn từ lâu của nhân loại. Từ ước mơ đó nhiều nhà khoa học đã không ngừng nghiên cứu, tìm hiểu về mạng nơ-ron. Với khoảng 15 tỷ nơ-ron ở não người, mỗi nơ-ron có thể nhận hàng vạn tín hiệu từ các khớp thần kinh và được coi là cơ chết sinh vật phức tạp nhất. Não người có khả năng giải quyết các vấn đề: nghe, nhìn, nói, hồi ức thông tin, phân biệt các mẫu mặc dù sự kiện bị méo mó, thiếu hụt. Não thực hiện các nhiệm vụ như vậy nhờ các phần tử tính toán (nơ-ron). Não phân bố việc thực hiện cho hàng tỷ nơ-ron có liên quan, điều khiển mối liên hệ giữa các nơ-ron đó. Nơ-ron không ngừng nhận và truyền thông tin lẫn nhau. Quá trình nghiên cứu và phát triển mạng nơ-ron nhân tạo có thể chia thành bốn giai đoạn như sau: + Giai đoạn một: Có thể tính từ nghiên cứu của William (1980) về tâm lý học với sự liên kết các nơ-ron thần kinh. Năm 1940, Mc Culloch và Pitts đã cho biết: nơ-ron có thể được mô hình hóa như thiết bị ngưỡng (giới hạn) để thực hiện các phép tính lôgic và mô hình mạng nơ-ron của Mc Culloch-Pitts cùng với giảithuật huấn luyện mạng của Hebb ra đời năm 1943. + Giai đoạn hai: Vào khoảng gần những năm 1960, một số mô hình nơ-ron hoàn thiện hơn đã được đưa ra như: mô hình Perceptron của Rosenblatt (1958), Adaline 2 Mạng nơron Hopfield của Widrow (1962). Trong đó mô hình Perceptron rất được quan tâm vì nguyên lý đơn giản, nhưng nó cũng có hạn chế vì như Marvin Minsky và Seymour papert của MIT (Massachurchs Insritute of Technology) đã chứng minh nó không dùng được cho các hàm lôgic phức (1969). Còn Adaline là mô hình tuyến tính, tự chỉnh, được dùng rộng rãi trong điều khiển thích nghi, tách nhiễu và vẫn phát triển cho đến nay. + Giai đoạn ba: Có thể tính vào đầu thập niên 80. Những đóng góp lớn cho mạng nơ-ron giai đoạn này phải kể đến Grossberg, Kohonen, Rumelhart và Hopfield. 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 1992 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 đó. Cảm nhận của Hopfield đã được Rumelhart, Hillton và William đề xuất thuật toán sai số truyền ngược nổi tiếng để huấn luyện mạng nơ-ron nhiều lớp nhằm giải bài toán mà mạng khách không thực hiện được. Nhiều ứng dụng mạnh mẽ của mạng nơ-ron ra đời cùng với các mạng theo kiểu máy Boltzmann và mạng Neocognition của Fukushima. + Giai đoạn bốn: 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 Joint Conference on Neural Networks). Rất nhiều công trình được nghiên cứu để ứng dụng mạng nơ-ron vào các lĩnh vực, ví dụ như: kỹ thuật tính, tối ưu, sinh học, y học, thống kê, giao thông, hóa học… cho đến nay, mạng nơ-ron đã tìm được và khẳng định được vị trí của mình trong rất nhiều ứng dụng khách nhau. II. Mạng Hopfield 2. Sơ lược về mạng Hopfield Mạng Hopfield là một mạng nơ-ron nhân tạo học định k• do John Hopfield sáng chế. Mạng Hopfield đóng vai trò như các hệ thống bộ nhớ có thể đánh địa chỉ nội dung với các nút ngưỡng dạng nhị phân. Chúng được đảm bảo sẽ hội tụ về một trong các mẫu được lưu trữ. Mạng hồi quy tín hiệu ra của một nơ-ron có thể được truyền ngược lại làm tín hiệu đầu vào cho các nơ-ron ở các lớp trước, hoặc các nơ-ron trong cùng một lớp. Mạng Hopfield là một mô hình mạng tiêu biểu thuộc lớp mạng hồi qui. Mạng Hopfield là mạng một lớp với thông tin và quá trình xử lý có nối ngược. Trong công trình nghiên cứu về mạng Hopfield người ta đã tìm ra được rất nhiều ứng dụng, đặc biệt là bộ nhớ liên kết và trong các bài toán tối ưu. 3 Mạng nơron Hopfield 3. Cấu trúc mạng Hopfield Về mặt cấu trúc thì mạng Hopfield là mạng chỉ có một lớp nơron, trong đó mỗi nơron đều nối với tất cả các nơron còn lại. Mạng Hopfield được xây dựng dưới dạng mạng một lớp, mỗi nơ-ron được truyền ngược lại làm tín hiệu đầu vào cho các nơ-ron khác nhưng bản thân các nơ-ron không tự liên kết với chính nó. Hình 1: Cấu trúc mạng Hopfield Chắc các bạn cũng nhận xét ngay là mạng trên không có lớp input và output như các mạng đã tìm hiểu trước đây. Lớp nơron duy nhất của mạng cũng chính là nơi nhận input và và phát output. Như vậy số nơron trong mạng phải bằng số thành phần input cũng như số thành phần output. Ngoài ra mạng Hopfield chỉ nhận các inputs là -1 hay 1. Hàm truyền vào của mạng là hàm satlins: 4 Mạng nơron Hopfield Hình 2: Đồ thị hàm satlins 1 nÕu 1 nÕu 1 1 1 nÕu 1 i n n n n a ì > ï ï ï ï = - < < í ï ï - <- ï ï î với n = (w ij x i + b) Tín hiệu ra của nơ-ron thứ j nào đó được truyền ngược lại làm tín hiệu vào cho các nơ-ron khác trong mạng một các đầy đủ thông qua các trọng số tương ứng: 1 1 sgn + - , n k k i i i j j ij w y y x θ + =   =  ÷   ∑ i = 1, 2, , n (2.1) Trong đó: •W ij là độ lớn trọng số kết nối từ nút j đến nút i (trọng số của liên kết). •x i là tín hiệu vào tại nơ-ron i. • y j là trạng thái của nút j. • θ i là ngưỡng của nút i. • b là độ lệch. 5 Mạng nơron Hopfield Các liên kết trong mạng Hopfield thường có các ràng buộc sau: • W ii = 0, ∀i (không có nút nào liên kết với chính nó) • W ij = W ji ∀i, j (các liên kết là đối xứng) Ràng buộc rằng các trọng số phải đối xứng thường được sử dụng, vì nó đảm bảo rằng hàm năng lượng sẽ giảm một cách đơn điệu trong khi làm theo các luật kích hoạt, và mạng có thể xuất hiện hành vi tuần hoàn hoặc hỗn loạn nếu dùng các trọng số không đối xứng. Tuy nhiên, Hopfield nhận thấy rằng hành vi hỗn loạn này chỉ hạn chế ở những phần tương đối nhỏ của không gian pha, và không làm giảm đi khả năng thực hiện vai trò làm hệ thống bộ nhớ có thể đánh địa chỉ nội dung của mạng. Ta định nghĩa hàm năng lượng của mạng là: ( ) 1 1 1 1 1 , , y = - - + 2 n n n n i n ij i j i i i i i j i i E E y w y y x y y θ = = = = = ∑ ∑ ∑ ∑ (2.2) Tùy theo phương thức hoạt động của mạng mà người ta phân mạng Hopfield ra thành mạng Hopfield rời rạc và mạng Hopfield liên tục. 3.1.1. Mạng Hopfield rời rạc Mạng Hopfield rời rạc là mạng được tính rời rạc (đầu ra rời rạc) làm việc ở chế độ không đồng bộ. Trường hợp mạng nhận các giá trị nhị phân {0,1}: Hàm kích hoạt được xác định như sau: ( ) 1 net > 0 = 0 net 0 f net     ≤  (2.3) Việc cho hàm kích hoạt (2.3) tương đương với qui tắc chuyển trạng thái của mạng: y i (t + 1)= y i (t) +∆y i (2.4) 6 Mạng nơron Hopfield Trong đó: ∆y i = y i k+1 – y i k (2.5) Định lý: Giả sử với w ii = 0. Khi đó với qui tắc chuyển trạng thái như trên và cập nhật không đồng bộ thì năng lượng của mạng không tăng (tức là giảm hoặc giữ nguyên). Chứng minh: Giả sử nơ-ron k thay đổi trạng thái từ thời điểm t đến t+1. Khi đó mạng sẽ thay đổi năng lượng và: ∆E = E(t+1) – E(t) 1 + - - =- + - 1 1 n n k k k k ij ij i i i i i i k j j j j w y w y y y y x x θ θ     +    ÷  ÷ = −  ÷  ÷  ÷   = =     ∆ ∑ ∑ Với: ∆y i = 1 nếu ( ) + - 1 0 n t ij i i j j w y x θ ≥ = ∑ và y i (t) = 0 ∆y i = -1 nếu ( ) + - 1 0 n t ij i i j j w y x θ ≤ = ∑ và y i (t) = 1 ∆y i = -1 trong các trường hợp khác. Vì thế ta luôn có ∆E ≤ 0, tức là năng lượng của mạng không tăng, Vì thế hàm năng lượng sẽ đạt tới giá trị cực tiểu. Do hàm giới nội. 3.1.2. Mạng Hopfield liên tục 7 Mạng nơron Hopfield Một mạng Hopfield riêng biệt có thể bổ biến đối với một mô hình liên tục trong đó thời gian giả thiết là một biến liên tục và những nút có đầu ra liên tục, bị chia độ ( phân bậc) hơn là hai đầu ra nhị phân trạng thái. Từ đây, năng lượng của mạng bị giảm bớt liên tục. Hơn nữa, có một mạch điện tử để thực thi mạng Hopfield liên tục nó sử dụng những máy khuyếch đại và những điện trở phi tuyến( hình vẽ 2.0). Nó gợi ý khả năng của việc xây dựng một mạng bước nhảy ngắn xử dụng công nghệ tương tự VLSI. Hình 3: Mạng Hopfield liên tục sử dụng mạch điện tử. Mạng Hopfield liên tục là mạng mà trạng thái của nó được mô tả theo phương trình. ( ) 1 1 n n i i ij i i i i i ij i i i i j j du C w y u g u x w y G u x dt = = = − − + = − + ∑ ∑ (2.5) Với: 1 n i ij i j G w g = = + ∑ (2.6) Trong đó: 8 Mạng nơron Hopfield a(u i ): đầu ra kích hoạt. w ij : độ dẫn điện của đầu ra thứ i với đầu vào thứ j (trong số giữa 2 nơron i và j). C j : điện trở phi tuyến. u i: điện áp vào. g i : độ dẫn điện. Định lý: Cho một mạng nơ-ron liên kết với n nút có đầu ra tín hiệu ui và một qui tắc được phát triển theo dạng: ( ) ( ) ( ) 1 n i i i i i ij j i j u a u b u w f u =   = −     ∑ Sao cho: W ij : ma trận cân với w ij ≥ 0 và w ij = w ij . a i (u): hàm liên tục với u ≥ 0, và a i (u) > 0 với u > 0. b i (u): hàm liên tục và không ngang bằng mức ngoài với u > 0. f i (u): hàm khả vi và f’ i (u) > 0 với u ≥ 0. [b i (u)-w ij f j (u)] < 0 như u→∞. ( ) 0 lim i u b u + → = ∞ hoặc ( ) 0 lim i u b u + → < ∞ và ( ) 0 1/ u i a s ds = ∞    ∫ với u > 0. 4. Mạng Hopfield với bài toán tối ưu Như đã biết, mạng Hopfield sẽ đạt tới trạng thái cân bằng khi hàm năng lượng của nó đạt tới giá trị cực tiểu. Vì vậy, từ bài toán cho trước ta xây dựng một hàm mục tiêu F nào đó (đã được xử lý các rằng buộc). và đặt F = E (E là hàm năng lượng), sau đó tìm mối liên hệ giữa các biến của chúng. Chính vì vậy mà mạng Hopfield rất phù hợp với các bài toán tối ưu tổ hợp, đặc biệt là đối với một số bài 9 Mạng nơron Hopfield toán thuộc lớp bài toán NP – đầy đủ như bài toán người bán hàng, bài toán sánh cặp có trọng …. Tuy nhiên, khi sử dụng mạng Hopfield vào việc giải các bài toán tối ưu trong thực tế còn gặp một số hạn chế sau: • Mạng Hopfield không đảm bảo cho hội tụ toàn cục. Để khắc phục , người ta đã kết hợp mạng Hopfield với một số giải thuật khác, ví dụ như giải thuật di truyền …, hoặc đưa vào phương trình động học một số hạng đặc biệt gọi là số hạng leo đồi. Từ đó hàm năng lượng của mạng có thể thay đổi đến một trạng thái cao hơn, tránh được hội tụ địa phương và tiến tới hội tụ toàn cục. • Việc chọn hệ số của hàm mục tiêu và hệ số của hàm rằng buộc để nhận một lời giải tố là hết sức khó khăn. Cho đến nay, việc chọn nó vẫn chủ yếu dựa vào kinh nghiệm. Một các tổng quát, có thể xây dựng một số bước cần phai thực hiện khi sử dụng mạng Hopfield vào việc giải bài toán tối ưu như sau (ánh xạ bài toán tối ưu lên mạng nơ-ron). 1. Lập sơ đồ biểu diễn các đầu ra của mạng sao cho nó có thể giải mã thành nghiệm của bài toán tối ưu. 2. Tạo hàm năng lượng sao cho giá trị cực tiểu của nó ứng với nghiệm tốt nhất của bài toán cần ánh xạ. 3. Gán giá trị cho các tham số của hàm năng luợng, điều này xác định các trọng số tương đối gán cho các thành phần khác nhau của hàm năng lượng. 4. Đưa ra phương trình động học cho các nơ-ron. 5. Khởi tạo các giá trị đầu vào. Chú ý: Không có phương pháp ánh xạ trực tiếp các bài toán tối ưu có rằng buộc lên mạng nơ-ron. Cho nên phải thêm vào hàm mục tiêu các thành phần phạt khi các 10 [...]... trọng lên mạng nơ-ron nhân tạo Nhận xét: Mạng truyền thẳng một lớp dễ phân tích nhưng không mô tả được mọi hàm Mạng nhiều lớp khắc phục được điều này, nhưng lại rất khó phân tích và gặp khó khăn trong quá trình xây dựng mạng (số lớp ẩn và số phần tử trong lớp) Hơn nữa, mạng truyền thẳng nhiều lớp có thể gây sai số tích lũy qua các lớp 12 Mạng nơron Hopfield Mạng phản hồi một lớp (nổi bật là mạng Hopfield) ... của mạng như vậy, chỉ nên lưu trữ khoảng 0.15x35, tức là 5 ảnh mà thôi Mặt khác chúng ta cũng có thể tăng số nơron lên bằng cách tăng kích thước của các ảnh lên Nếu ảnh có 10x10 pixels thay vì 7x5 pixels thì số nơron sẽ tăng từ 35 lên 100, do đó mạng có thể lưu trữ được 15 ảnh và khôi phục ảnh bị nhiễu của chúng III Ứng dụng mạng Hopfield TRONG BÀI TOÁN 4 MÀU Mạng Hopfield có thể sử dụng để giải bài. .. bài toán thỏa mãn các ràng buộc Chương này trình bày ứng dụng của mạng Hopfield giải bài toán bốn màu, và được áp dụng để tô màu bản cho một bản đồ bất kỳ 1 Giới thiệu bài toán bốn màu Chúng ta đã biết rằng một đồ thị phẳng bất kỳ có thể tô bởi bốn màu sao cho hai đỉnh kề nhau có hai màu khác nhau Áp dụng vào mạng Hopfield để thực hiện bài toán này Bài toán đặt ra là: Cho một bản đồ trong đó có N vùng... (a) Lời giải tốt (b) Lời giải không tốt Hình 1.8 Ánh xạ bài toán lên mạng nơ-ron: Ta gán cho mỗi cặp điểm (i,j ) với i < j một nơ-ron ij với đầu ra là X ij Như vậy cần tất cả n ( n − 1) nơron Mỗi phương án của bài toán ứng dụng với một trạng thái của 2 mạng với: 1  X ij =  0  nÕu i nèi víi j nÕu kh¸c Ta cần phải giải bài toán: 11 Mạng nơron Hopfield n f = ∑ dij X ij → min i< j Trong đó: dij là khoảng... mạng Hopfield chỉ có thể khôi phục thành công các ảnh nếu số ví dụ mà bạn lưu trữ trong mạng không vượt quá 0.15N, với N là số nơron Ngoài ra nên nhớ rằng N cũng chính là số thành phần của một input Chẳng hạn, nếu bạn lưu trữ ảnh của 10 con số từ 0 tới 9 trong phần trước, thì việc khôi 13 Mạng nơron Hopfield phục ảnh bị nhiễu của chúng sẽ không thành công lắm, vì mạng sẽ chỉ có N = 35 nơron thôi (ứng. .. Vmin sẽ là nghiệm của bài toán không rằng buộc Trong đó Ci là các hệ số dương 15 Mạng nơron Hopfield Trở lại bài toán ta thấy vế trái của rằng buộc (1.3) không âm do Vxi, Vyi, d xy >= 0 và giá trị nhỏ nhất của nó là 0 nên theo bổ đề 1 bài toán thỏa mãn rằng buộc trên có thể phát biểu dưới dạng bài toán tối ưu hóa 4 n n ∑ ∑ ∑d i =1 x =1 y =1 xy V xiV yi = 0, => min Theo bổ đề 2 bài toán tối ưu có thỏa... với dữ liệu vào nhất Cái này gọi là bộ nhớ kết hợp vì nó phục hồi bộ nhớ dựa vào nền tảng tương tự Ví dụ, nếu chúng ta huấn luyện một mạng Hopfield với năm nút sao cho trạng thái (1, 0, 1, 0, 1) là một cực tiểu năng lượng, và chúng ta đưa vào mạng trạng thái (1, 0, 0, 0, 1) nó sẽ hội tụ về (1, 0, 1, 0, 1) Do đó, một mạng sẽ được huấn luyện đúng đắn khi năng lượng của các trạng thái mà mạng sẽ ghi nhớ... trình động học cuối cùng của mạng nowrron xi có dạng như sau: 16 Mạng nơron Hopfield n  4   4  dU xi = − A ∑ v xi − 1 − B ∑ d xy v yi + Ch ∑ v xj  (2.16)     dt y =1  j =1   j =1  Trong đó C là hằng số và hàm h(x) được định nghĩa như sau: 3.2 Thử nghiệm và đánh giá Phương trình động học chính là phương trình vi phân Để giải nó, ta phải sử dụng phương pháp số Dựa vào phương pháp này, giá... số tích lũy Mạng được nghiên cứu và thực hiện với phần động học tuyến tính vì vậy nó rất thích hợp với các loại mô hình bài toán tói ưu tổ hợp, điều khiển, vv… Mạng nơ-ron truyền thẳng chỉ đơn thuần tính toán các tín hiệu ra dựa trên các tín hiệu vào và trọng số liên kết nơ-ron đã xác định sẵn ở trong mạng Do đó chúng không có trạng thái bên trong nào khác ngoài vectơ trọng số W Đối với mạng hồi quy,... thể phân biệt được các vùng dễ dàng Thực hiện: Trước hết ta sẽ mô hình hóa bài toán này như một bài toán thỏa mãn rằng buộc Ký hiệu: x : là chỉ số miền cần tô màu (x = 1, 2, …, n) i :là chỉ số mầu (i;1, 2, 3, 4) dxy : là biến đặc trưng cho sự cận kề của hai miền x và y 14 Mạng nơron Hopfield 1.1 Ta đưa vào các biến như sau: 1.2 Bài toán tô màu được đặt ra là tìm V xi( x = 1, 2, ,; i = 1, 2, 3, 4;) thỏa . chúng. III. Ứng dụng mạng Hopfield TRONG BÀI TOÁN 4 MÀU Mạng Hopfield có thể sử dụng để giải bài toán thỏa mãn các ràng buộc. Chương này trình bày ứng dụng của mạng Hopfield giải bài toán bốn màu, và. THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN  BÀI TẬP LỚN MÔN: LÝ THUYẾT NHẬN DẠNG Đề tài: Mạng nơron Hopfield và ứng dụng Lớp : ĐH KHMT2 – K3 Gio viên hướng d"n: Trần Hùng. phương thức hoạt động của mạng mà người ta phân mạng Hopfield ra thành mạng Hopfield rời rạc và mạng Hopfield liên tục. 3.1.1. Mạng Hopfield rời rạc Mạng Hopfield rời rạc là mạng được tính rời rạc

Ngày đăng: 23/05/2015, 17:04

Từ khóa liên quan

Mục lục

  • Thay lời kết

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

Tài liệu liên quan