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

Tìm hiểu mạng hopfield và cài đặt ứng dụng

17 2,9K 8

Đ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 17
Dung lượng 732 KB

Nội dung

Tìm hiểu mạng hopfield và cài đặt ứng dụng

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 ứ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 Mạng nơron Hopfield Hà Nội, tháng 6/2011 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 đề đó 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 ứ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 đ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 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 đượ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 truyền thông tin lẫn nhau. Quá trình nghiên cứu 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 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 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. + 2 Mạng nơron Hopfield 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 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 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ẫ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 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 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 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 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 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 Hopfieldmạng một lớp với thông tin quá trình xử lý có nối ngược. Trong 3 Mạng nơron Hopfield 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 trong các bài toán tối ưu. 3. Cấu trúc mạng Hopfield Về mặt cấu trúc thì mạng Hopfieldmạ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 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 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 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 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 θ ≥ = ∑ y i (t) = 0 ∆y i = -1 nếu ( ) + - 1 0 n t ij i i j j w y x θ ≤ = ∑ 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 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 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) 8 Mạng nơron Hopfield Trong đó: 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 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 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 w ij = w ij . a i (u): hàm liên tục với u ≥ 0, a i (u) > 0 với u > 0. b i (u): hàm liên tục không ngang bằng mức ngoài với u > 0. f i (u): hàm khả vi 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 + → < ∞ ( ) 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). đặt F = E (E là hàm năng 9 Mạng nơron Hopfield 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 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 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 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ú ý: 10

Ngày đăng: 30/11/2013, 14:03

HÌNH ẢNH LIÊN QUAN

Hình 2: Đồ thị hàm satlins - Tìm hiểu mạng hopfield và cài đặt ứng dụng
Hình 2 Đồ thị hàm satlins (Trang 5)
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ìm hiểu mạng hopfield và cài đặt ứng dụng
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 (Trang 8)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w