Mở đầu Chương 2: Cơ sở lý thuyết và mô hình nghiên cứu Chương 3: Phương pháp nghiên cứu Chương 4: Kết quả nghiên cứu Chương 5: Kết luận LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 4 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT VÀ MÔ HÌNH NGHIÊN CỨU 2. Khái niệm về mạng neural 2. Mạng neural sinh học Theo bài nghiên cứu Li, W.
(2006), mạng neural nhân tạo (ANN - Artificial neural Networks) là mạng được xây dựng bằng cách sao chép lại các nguyên lý tổ chức của hệ neural của con người. Bộ óc của con người là một hệ neural gồm có 1010 đến 1012 neurals được tổ chức có cấu trúc vào khoảng 200 mô hình khác nhau dưới dạng nhiều lớp. Mô hình mạng neural sinh học “Nguồn: Li, W. Mỗi neural có nhiều đầu vào và chỉ một đầu ra.
Thân neural là phần tử xử lý có chức năng thu nhận tất cả các thông tin đến từ các đầu vào, tính toán và đưa ra quyết định ở ngõ ra để gởi thông tin đến các neural khác. Synap (terminal buttons) là khớp nối giữa đầu vào của neural này với đầu ra của neural khác. Tín hiệu điện áp được truyền từ neural này sang neural khác. Tín hiệu điện áp dương được coi như là tín hiệu kích động (excitory) để kích động neural gởi tín hiệu đến nhiều neural khác và điện áp âm được xem như là tín hiệu ức LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 5 chế (inhibitory) để ức chế neural gởi tín hiệu đến nhiều neural khác.
Điện áp không thì không có tín hiệu kết nối giữa hai neural. Đối với hệ neural con người có cấu trúc cơ bản gồm: Lớp neural đầu vào (lớp này được kết nối với các phần tử cảm biến như miệng, mắt, tai, mũi và da), các lớp neural ẩn và lớp neural đầu ra (lớp này được kết nối với các phần tử cơ như tay, chân). Cường độ kết nối synap xác định lượng tín hiệu truyền đến đầu vào và giá trị cường độ synap được gọi là trọng số. Để xây dựng một mạng neural nhân tạo giống như hệ neural con người, McCulloch, W.
(1943) đã đề ra cấu trúc cơ bản của một neural thứ i trong mô hình của mạng neural nhân tạo như sau: X1 Wi1 X2 Wi2 ∑ a (.) yi Xm Wim θi Hình 2. Mô hình neural của Mc. Culloch và Pitts (1943) xj(k): tín hiệu vào thứ j ở thời điểm k yi(k): tín hiệu ra của neural i ở thời điểm k wij : trọng số trên tín hiệu vào thứ j θt : ngưỡng tác động của neural i f : hàm tích hợp (integration function) a(.): hàm chuyển hay hàm tác động (activation function) Khi đó đầu ra sẽ là: yi(k)=a( wij biểu diễn cường độ kết nối giữa neural thứ j với neural thứ i. wij > 0 tương ứng với tín hiệu kích động, wij < 0 tương ứng với tín hiệu ức chế và wij = 0 thì không có sự kết nối giữa hai neural.
LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Một số dạng thông dụng của hàm tác động (Activation function) Hàm bước nhảy đơn vị: a(f) = Hàm dấu: a(f) = Hàm dốc: a(f) = Hàm tuyến tính: a(f) = net =f Hàm sigmod đơn cực: a(f)= , λ>0 Hàm sigmod lưỡng cực: a(f)= - 1, λ>0 Hình 2. Đồ thị một số hàm tác động A) Hàm bước nhảy, B) Hàm dấu, C)Hàm dốc, D) Hàm tuyến tính E) Hàm sigmod đơn cực, F) Hàm sigmod lưỡng cực “Nguồn: Mc. Culloch và Pitts (1943)” LUAN VAN CHAT LUONG download : add luanvanchat@agmail.
Tiến trình học Tiến trình học là tiến trình quan trọng của con người, nhờ học mà bộ não ngày càng tích lũy những kinh nghiệm để thích nghi với môi trường và xử lý tình huống tốt hơn. Mạng neural xây dựng lại cấu trúc bộ não thì cần phải có khả năng nhận biết dữ liệu thông qua tiến trình học, với các thông số tự do của mạng có thể thay đổi liên tục bởi những thay đổi của môi trường và mạng neural ghi nhớ giá trị đó. Tiến trình học trong mạng neural “Nguồn: Mc. Culloch và Pitts (1943)” Trong quá trình học, giá trị đầu vào được đưa vào mạng và theo dòng chảy trong mạng tạo thành giá trị ở đầu ra.
Tiếp đến là quá trình so sánh giá trị tạo ra bởi mạng neural với giá trị thực đã có. Nếu hai giá trị này giống nhau thì không thay đổi gì cả. Tuy nhiên, nếu sai lệch giữa hai giá trị này vượt quá giá trị sai số mong muốn thì quá trình sẽ đi ngược mạng từ đầu ra về đầu vào để thay đổi một số kết nối. Đây là một quá trình lặp liên tục và có thể không dừng khi không tìm các giá trị trọng số kết nối sao cho đầu ra tạo bởi mạng neural bằng đúng đầu ra mong muốn.
Do đó trong thực tế người ta phải thiết lập tiêu chuẩn dựa trên một giá trị sai LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 8 số nào đó của hai giá trị này, hay dựa trên một số lần lặp xác định. Để tiện cho việc trình bày, ta ký hiệu y là giá trị kết xuất của mạng neural, t là giá trị ra mong muốn, e là sai lệch giữa hai giá trị này: e = t – y 2. Phân loại mạng neural 2. Phân loại mạng neural Trong nghiên cứu của Ravi, S.M (2002), mạng neural được phân loại theo 2 dạng chính: Phân loại theo cấu trúc liên kết gồm có mạng truyền thẳng và mạng hồi tiếp.
Phân loại theo số lớp gồm có mạng đơn lớp và mạng đa lớp. Một số loại mạng neural a. Mạng dẫn tiến Có thể nói mạng neural dẫn tiến là một kiểu mạng đơn giản trong việc sắp đặt mạng. Trong mạng này thông tin chỉ truyền trên một hướng duy nhất, từ lớp đầu vào, qua lớp ẩn (nếu có) và kết thúc tại lớp đầu ra.
Mạng dẫn tiến một lớp (Single layer perceptron) Trong một mạng neural một lớp, các neural được tổ chức dưới dạng chỉ có lớp đầu vào và lớp đầu ra. x1 y1 x2 y2 xm yn Lớp đầu vào Lớp đầu ra Hình 2. Mạng dẫn tiến một lớp “Nguồn: Ravi, S.M (2002)” LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 Mạng dẫn tiến nhiều lớp (Multilayer perceptron) Là mạng dẫn tiến kết nối các dữ liệu đầu vào với dữ liệu đầu ra tương ứng. Nó bao gồm từ ba (hoặc nhiều hơn) lớp mạng neural với các hàm tác động phi tuyến tính.
Mỗi nút trong một lớp kết nối với mọi nút của mạng tiếp theo khác thông qua trọng số (weight). Lớp neural đầu vào của mạng có m đầu vào, đó là x1, …, xi, …, xm. Lớp neural ẩn có r phần tử xử lý với các đầu ra, đó là z1, …, zq,…, zr và lớp neural đầu ra của mạng có n phần tử xử lý với n đầu ra, đó là y1,…, yi…, yn. Trọng số kết nối giữa đầu vào thứ j của lớp neural đầu vào với phần tử xử lý thứ q của lớp neural ẩn là vqj và trọng số kết nối giữa phần tử xử lý thứ q của lớp neural ẩn với phần tử xử lý thứ i của lớp neural đầu ra là wiq như ở hình 2.r) wjq x1 y1 x2 y2 xm yn Lớp đầu vào Lớp ẩn Lớp đầu ra Hình 2.
Mạng dẫn tiến nhiều lớp “Nguồn: Ravi, S.M (2002)” Dữ liệu huấn luyện : {x(k), d(k), k =1, 2, … p} LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 Lớp ẩn netq = Zq = f(netq) = f( Lớp ra neti = = (hàm tích hợp ở neural thứ i) yi = f(neti) = f( (hàm tác động ở neural thứ i) Hàm mục tiêu: E(w) = Quá trình huấn luyện (luật học lan truyền ngược) Bước 1: Chọn tốc độ học 0 , chọn sai số cực đại Emax Bước 2: Đặt giá trị đầu E = 0, k = 1 Gán giá trị ngẫu nhiên cho các trọng số. Bước 3: Tính ngõ ra của mạng với tín hiệu vào là x(k): yi(k) = f(neti) = f( ) = f( Cập nhật trọng số cho lớp ẩn và lớp ra của mạng: Tính sai số tích lũy: E= E + Thưc hiện vòng lặp ở bước 3 với k chạy từ 1 đến p Bước 4: Kết thúc một chu trình huấn luyện Nếu E < Emax thì kết thúc quá trình học Nếu E > Emax thì gán E = 0, k = 1 và trở lại bước 3. Chú ý: Trong mạng dẫn tiến nhiều lớp, việc huấn luyện mạng dùng giải thuật LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 11 lan truyền ngược chịu tác động bởi các yếu tố: Trị khởi động của các trọng số: các trọng số nên khởi động với các giá trị bé và ngẫu nhiên. Các giá trị lớn của vector trọng số có thể làm hàm tác động bão hòa khi bắt đầu học.
Hằng số học: lớn sẽ hội tụ nhanh nhưng có thể gây vọt lố, do đó có thể chọn giảm dần Hàm mục tiêu - Luật học. Dữ liệu huấn luyện. Mạng hàm cơ sở xuyên tâm (RBF - Radial Basics Function network) Trong mạng dẫn tiến nhiều lớp, lớp đầu vào kết nối với lớp ẩn là sự kết hợp tuyến tính của các đầu vào thông qua ma trận trọng số. Còn trong mạng hàm cơ sở xuyên tâm (RBF) thì các neural ẩn được tính toán dựa trên các hàm cơ sở bán kính của các đầu vào.
Mạng RBF có thể được huấn luyện nhanh chóng và do có cấu trúc mạng đặc biệt nên mạng RBF rất ít khi rơi vào các vùng cực trị cực tiểu. Cấu trúc mạng RBF: cũng là mạng truyền thẳng ba lớp. Lớp ẩn sử dụng: Hàm tổng ngõ vào có dạng hàm cầu Hàm kích hoạt là hàm Gass có dạng: φ(x) = Lớp ra sử dụng: Hàm tổng ngõ vào là hàm tuyến tính. Hàm kích hoạt là hàm kích hoạt đơn vị trong mạng RBF thì ngưỡng của các neural là bằng 0.
LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Mô hình mạng bán kính xuyên tâm “Nguồn: Ravi, S.M (2002)” Các phương trình tính toán truyền tín hiệu từ lớp vào đến lớp ra của mạng: Ngõ ra của neural thứ q (thuộc lớp ẩn) Zq = Trong đó: X là vector ngõ vào mq là tâm hàm RBF (trọng số của neural lớp ẩn thứ q) q là bề rộng hàm RBF của neural ẩn thứ q = khoảng cách Euclide LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Ngõ ra của neural lớp ẩn “Nguồn: Ravi, S. Hàm sai số: E= Khi sử dụng mạng RBF, ta cần chú ý các điểm sau: Lựa chọn dạng hàm kích hoạt phù hợp với mô hình.
Tính toán số lượng tâm tối ưu. Nếu nhiều tâm quá sẽ không đủ dữ liệu để huấn luyện mạng, còn nếu tâm ít quá sẽ cho mô hình sai lệch. Tìm vị trí tâm và số lượng dữ liệu thích hợp để huấn luyện mạng.