CHƯƠNG 1. MẠNG NƠ-RON VÀ ỨNG DỤNG 1.1 Lịch sử phát triển mạng nơ-ron Từ những năm 1890, nghiên cứu của nhà tâm lý học William đã phát hiện ra hệ nơ-ron thần kinh của con người. Đến năm 1943, nhà thần kinh học Warren Mcculloch và nhà toán học Walter Piits đã có công trình nghiên cứu về mạng nơ- ron nhân tạo tính bằng một hàm đại số hoặc logic, họ xây dựng một mạng nơ-ron đơn giản bằng mạch điện. Đây có thể coi là nguồn gốc của lĩnh vực mạng nơ-ron.
Đầu những năm 1950, Nathanial Rochester đã có những mô phỏng đầu tiên của một mạng nơ-ron tại phòng thí nghiệm nghiên cứu của IBM. 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 nơ-ron. Sau đó, John von Neumann đã sử dụng role điện áp hoặc đèn chân không mô phỏng các nơ-ron đơn giản. Năm 1958, nhà sinh học Frank Rosenblatt nghiên cứu về perception và luật học.
Mạng perception chỉ có khả năng nhận dạng mẫu, tuy nhiên chỉ có thể giải quyết được một số bài toán mà thôi, nó không dùng cho các hàm logic phức. Năm 1959, Bernard Windrow và Ted Hoff thuộc trường đại học Stanford đã đưa ra luật học mới và dùng nó để huấn luyện mạng nơ-ron tuyến thích nghi đầu tiên là MADALINE, mạng này có cấu trúc và khả năng tương tự như mạng mạng perceptron của Rosenblatt. Luật học của Windrow và Hoff hiện nay vẫn được sử dụng. Tuy nhiên sự nghiên cứu này đã bị dừng lại trong nhiều thập kỷ sau đó.
Một mạng nơ-ron đã được phát triển độc lập, có thể thực hiện như các bộ nhớ được Kohonen và Anderson nghiên cứu vào năm 1972. Năm 1973 Von Der Marlsburg đưa ra quá trình học cạnh tranh và mạng tự tổ chức Self-organization. Năm 1974 Paul Werbos đã phát triển và ứng dụng phương pháp Back- propagation (lan truyền ngược). Các mạng này được biết đến nhiều nhất và áp dụng rộng rãi cho đến ngày nay.
Đầu những năm 80, John Hopfield đã đưa ra mạng nơ-ron hồi quy. David Rumelhart và James Mcclelland là những tác giả đầu tiên đã đưa ra thuật toán lan Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển truyền ngược để huấn luyện mạng Perceptron nhiều lớp. 1 Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển Vào đầu những năm 1990, thuật toán Leven-berg Marquart đã được Martin Hagan đề xuất để huấn luyện mạng. Bên cạnh còn có phương pháp Bayes cũng được sử dụng rất nhiều trong việc huấn luyện mạng nhiều lớp.
Cũng trong thời gian này, Lecun và đồng tác giả đã nghiên cứu và ứng dụng mạng nơ-ron nhiều lớp để xử lý ảnh, mạng nơ-ron này được gọi là mạng tích chập (Convolutional Networks) và được ứng dụng rất nhiều trong lĩnh vực xử lý ảnh, giọng nói và tín hiệu. Từ sau năm 1987 đến nay, mạng nơ-ron trở thành một vấn đề được quan tâm của các nước, các cuộc hội thảo quốc tế liên tục được diễn ra để phát triển nơ-ron một cách triệt để nhất: viện vật lý Hoa Kỳ tổ chức cuộc họp hàng năm về mạng nơ-ron ứng dụng trong tin học năm 1985, hội thảo quốc tế đầu tiên về mạng nơ- ron của Viện các kỹ sư điện và điện tử IEEE (Institute of Electrical and Electronic Engineer). Hàng năm thế giới đều mở hội nghị toàn cầu chuyên về Neural IJCNN (International Joint Conference on Neural Networks).2 Mạng nơ-ron nhân tạo Mạng nơ-ron nhân tạo (anns) hay hệ thống kết nối là hệ thống tính toán được lấy cảm hứng từ mạng thần kinh sinh học cấu thành bộ não. Một ANN dựa trên một tập hợp các đơn vị được kết nối được gọi là tế bào thần kinh nhân tạo (artificial Nơ-rons) tương tự như tế bào thần kinh sinh học trong não.
Mỗi khớp (synapse) giữa các nơ-ron có thể truyền tín hiệu đến một nơ-ron khác. Tế bào thần kinh nhân tạo (post - synaptic) có thể xử lý các tín hiệu và sau đó truyền xuống tín hiếu tới các nơ-ron được kết nối với nó. Các nơ-ron có thể có trạng thái, thường được biểu thị bằng số thực, thường nằm trong khoảng từ 0 đến 1. Các nơ-ron và khớp thần kinh cũng có thể có trọng số thay đổi khi tiến hành học tập, có thể tăng hoặc giảm cường độ tín hiệu mà nó truyền xuống.
Thông thường, nơ-ron được tổ chức theo lớp. Các lớp khác nhau có thể thực hiện các loại biến đổi khác nhau trên đầu vào của chúng. Tín hiệu truyền từ lớp đầu tiên (đầu vào), đến lớp (đầu ra) cuối cùng, có thể sau khi đi qua các lớp nhiều lần. Mục tiêu ban đầu của mạng nơ-ron là giải quyết các vấn đề theo cách tương tự như bộ não của con người.
Theo thời gian, sự chú ý tập trung vào việc Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển phù hợp 2 Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển với khả năng cụ thể, dẫn đến những sai lệch so với sinh học như truyền ngược, hoặc truyền thông tin theo hướng ngược lại và điều chỉnh mạng để phản ánh thông tin đó.1 Mạng nơ-ron sinh học [8]. Neural Networks đã được sử dụng trên nhiều nhiệm vụ, bao gồm thị giác máy tính, nhận dạng giọng nói, dịch máy, lọc mạng xã hội và chẩn đoán y tế. Tính đến năm 2017, các Neural Networks thường có vài nghìn đến vài triệu đơn vị và hàng triệu kết nối. Mặc dù con số này nhỏ hơn số lượng tế bào thần kinh trên não người, nhưng các mạng này có thể thực hiện nhiều nhiệm vụ ở cấp độ vượt xa con người (ví dụ: nhận diện khuôn mặt, chơi “Go” …).3 Ứng dụng của mạng nơ-ron Mạng nơ-ron được ứng dụng rất nhiều để giải quyết các bài toán trong thực tế như phân loại (ảnh, giọng nói, tín hiệu), xấp xỉ, dự báo, nhận dạng hệ thống và thiết kế bộ điều khiển.
Sau đây là một số ứng dụng của mạng nơ-ron : • Điện tử: sự bố trí chíp IC, điều khiển quá trình, phân tích lỗi chip, thị lực máy, tổng hợp tiếng nói, mô hình hóa phi tuyến. • Robot: điều khiển quỹ đạo, xe nâng hàng, các bộ điều khiển tay máy, các hệ thống thị giác, xe tự hành. Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển 3 Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển • Ô tô: các hệ thống dẫn hướng tự động, điều khiển bơm nhiên liệu, các hệ thống phanh tự động, dò động cơ không nổ, các cảm biến dò sự phát khí ảo. • Sản xuất: điều khiển quá trình sản xuất, phân tích và thiết kế sản phẩm, chuẩn đoán máy và quá trình, nhận dạng hạt thời gian thực, các hệ thống kiểm tra chất lượng, thử bia, phân tích chất lượng hàn, dự đoán chất lượng giấy, phân tích chất lượng chip máy tính, phân tích các hoạt động nghiền, phân tích thiết kế sản phẩm hóa học, phân tích bảo dưỡng máy, đấu thầu dự án, quản lí và kế hoạch hóa, mô hình động của các quá trình hóa học.
• Vũ trụ, ngân hàng, quốc phòng, giải trí, tài chính, bảo hiểm, y tế, dầu khí, an ninh, giao thông và truyền thông.4 Mô hình nơ-ron nhân tạo 1.1 Mô hình nơ-ron a) Mô hình nơ-ron một đầu vào Hình 1.2 Sơ đồ mô hình nơ-ron một đầu vào Hình 1.2 biểu thị sơ đồ cấu trúc của một nơ-ron nhân tạo có một đầu vào. Quan hệ vào ra của nơ-ron như sau: n = wp + ( b b n = wp + b i Trong đó: a p : đầu vào của nơ-ron s w : trọng số đầu vào ) b : ngưỡng Σ Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển : là bộ tổng số (1.2) 4 Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển n : là đầu vào net f : là hàm truyền a : đầu ra của nơ-ron Một số hàm truyền cơ bản: [3]. Hàm giới hạn cứng Hardlim: a = hardlim(n) (1.3) 0, n < 0 = 1, n ≥ 0 Hàm tuyến tính Purellin: (1.4) a=n Hàm Logsig: a = logsig(n) (1.5) 1 = 1+ e−n Hàm tuyến tính dương: a = posline(n) (1.6) 0, n<0 = 1, n ≥ 0 Hàm khuếch đại bão hòa: a = satlins (n) −1, n < −1 (1.7) = n, −1 ≤ n ≤ 1 1, n>1 Hàm tansig: a = tansig (n) n (1.8) e − −n e = en + e−n Vì bài toán này chỉ sử dụng đến hàm tansig nên chỉ nghiên cứu về hàm tansig. Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển 5 Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển Đồ thị hàm tansig(n) được biểu diễn như sau: Hình 1.3 Đồ thị hàm a=tansig(n) [7].
Hàm này có giá trị biến dương trong khoảng -1 tới 1, có đạo hàm liên tục với mọi n và thường được sử dụng trong các lớp ẩn. b) Mô hình nơ-ron với nhiều đầu vào:[3].4 Mô hình nơ-ron với R đầu vào Hình 1.5 Sơ đồ rút gọn nơ-ron với R đầu vào Nơ-ron có nhiều đầu vào được mô tả như hình 1.4, trong đó đầu vào là một véc-tơ p có R thành phần: Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển 6 Luận văn Thạc sĩ Kỹ thuật Điều khiển Ứng dụng mạng nơron trong nhận dạng và đi ều khi ển T p =[ p , p, , p] (1.9) 1 2 R và véc-tơ trọng số như sau: w =[w1,1 , w1,2 , w1, R (1.10) , ] Mỗi đầu vào p sẽ được đưa vào bộ tổng thông qua một trọng số w. Đầu i 1,i vào net được tính theo công thức sau: n =w1,1 +w1,2 + + w1,R pR + (1.11) p1 p2 b Đầu ra của nơ-ron là: a = f (n) (1.12) Với f là hàm truyền nơ-ron.11) có thể được viết gọn như sau: R n = ∑ w1,i p1,i + b i=1 (1.2 Cấu trúc mạng Lớp nơ-ron Khi nhiều nơ-ron có cùng chung đầu vào thì được gọi là một lớp nơ-ron (gọi tắt là lớp). Một lớp có số đầu ra bằng số nơ-ron có chung đầu vào.
Trong một lớp các hàm truyền thường được chọn là giống nhau, chẳng hạn cùng là hàm tuyến tính. Sơ đồ cấu trúc một lớp nơ-ron như hình 1.