2.3.1. Giới thiệu
Mạng nơ-ron nhân tạo lần đầu tiên được giới thiệu vào năm 1943 bởi nhà thần kinh học Warren McCulloch và nhà logic học Walter Pits lấy ý tưởng từ mạng thần kinh của các sinh vật sống.
Não người được hình thành từ các nơ-ron thần kinh liên kết với nhau tạo thành một hệ thống. Mỗi tế bào nơ-ron bao gồm thân chứa nhân tế bào. Từ thân phát ra nhiều tua ngắn, phân nhánh gọi là sợi nhánh và một tua dài, có bao mi-ê-lin, gọi là sợi trục. Đầu mỗi sợi là các xi-náp dùng để liên kết các nơ-ron lại với nhau theo kiểu sợi trục của tế bào này sẽ nối vào sợi nhánh của tế bào khác và hình thành mạng nơ-ron thần kinh. Xung thần kinh được truyền từ một tế bào ra sợi trục của nó, đến sợi nhánh của tế bào thần kinh khác và cứ thế lan truyền.
Lấy ý tưởng từ mơ hình trên, mạng nơ-ron nhân tạo được ra đời với cấu trúc tương tự trong đó một nơ-ron là một khối tính tốn gồm nhiều đầu vào (các sợi nhánh), một đầu ra (sợi trục) và một giá trị ngưỡng để cho phép tín hiệu có truyền qua nơ-ron này hay không.
Các giá trị đầu vào sẽ được nhân với một bộ trọng số w và tính tổng các kết quả cùng với một hằng số phụ b (bias). Nếu tổng vượt giá trị ngưỡng thì đầu ra sẽ có giá trị thể hiện nơ-ron này đã được kích hoạt (thường là +1), ngược lại sẽ là giá trị chưa được kích hoạt (thường là -1).
Các giá trị trọng số đầu vào của mỗi nơ-ron sẽ được điều chỉnh thông qua quá trình học (learning) để xây dựng được mạng nơ-ron phù hợp cho bài tốn đang cần giải quyết.
Hình 2.4. Hình ảnh một tế bào nơ-ron nhân tạo
Hệ thống ANN là mơ hình xử lý thơng tin được mô phỏng dựa trên hoạt động của hệ thống thần kinh của sinh vật, bao gồm một số lượng lớn các nơ-ron được gắn kết với nhau để xử lý thông tin.
ANN giống như bộ não của con người, được học hỏi kinh nghiệm (thơng qua huấn luyện), có khả năng lưu giữ những kinh nghiệm hiểu biết (tri thức) và sử dụng những tri thức đó cho việc dự đoán các dữ liệu chưa biết (unseen data).
2.3.2. Mơ hình tốn học của mạng nơ-ron
Mơ hình toán của mạng nơ ron: Mơ hình tốn đơn giản của mạng nơ ron nhân tạo đã được mô tả trên được đề xuất bởi Mc Culloch và Pitts vào năm 1943, thường được gọi mạng M-P.
W1 W2 Wn ∑ X1 X2 Xn b Output Y Input X
vào tổng đầu vào trọng lượng trên hoặc dưới giá trị ngưỡng (threshold) j.
(2.15)
Trong đó, hàm tác động f(net) là hàm bước nhảy (unit step):
(2.16) Trọng lượng Wij biểu diễn cường độ của đường dẫn synapse (được gọi sự kết nối hoặc liên kết) kết nối nơ-ron nguồn thứ i với nơ-ron đích thứ j. Trọng lượng dương tương ứng với kích thích đường dẫn synapse (excitatory synapse) và trọng lượng âm tương ứng với ngăn cản kích thích synapse (inhibilitory synapse). Nếu wij = 0 thì khơng có sự kết nối giữa chúng.
Hình 2.5. Mơ hình tốn học đơn giản của một mạng nơ-ron 2.3.3. Cấu trúc mạng nơ-ron
Các loại mạng nơ-ron nhân tạo có thể được phân loại dựa trên các tính chất của nó, bao gồm các loại như trình bày dưới đây:
Hình 2.6. Cấu trúc mạng nơ-ron 1 lớp nếu net ≥ 0 nếu net < 0 PE (Phần tử xử lý Wi2 Wi1 Wim X1 X2 Xm Y 1
2.3.3.1. Theo số lớp
Mạng một lớp: mạng chỉ gồm 1 lớp xuất và khơng có lớp ẩn.
Mạng nhiều lớp: mạng gồm nhiều nơ-ron liên kết với nhau và bao gồm 3 lớp: Lớp ngõ vào (Input Layer), Lớp ẩn (Hiden Layer) và Lớp ngõ ra (Output Layer).
Hình 2.7. Cấu trúc mạng nơ-ron nhiều lớp 2.3.3.2. Theo cấu trúc
Mạng truyền thẳng (mạng ni tiến): các tín hiệu trong mạng chỉ truyền theo một chiều từ ngõ vào đến ngõ ra.
+ Mạng truyền thẳng một lớp (Single layer feedforward network): Mạng nơron phản hồi dương một lớp là mạng bao gồm các phần tử xử lý trên cùng mức, mỗi phần tử xử lý thứ j được kết nối với các đầu vào x1, x2,…, xI, thông qua các hệ số trọng lượng w11, w21, …, wIj và đầu ra thứ j như mơ tả ở Hình 2.8.
+ Mạng truyền thẳng nhiều lớp ( Multi layer feedforward network):
Hình 2.9. Cấu trúc mạng truyền thẳng nhiều lớp
Các nơ-ron ngõ vào trực tiếp nhận tín hiệu ở đầu vào, ở đó mỗi nơ-ron chỉ có một tín hiệu vào. Các nơ-ron lớp ẩn được nối với tất cả nơ-ron lớp vào và lớp ra. Các nơ-ron ở lớp ra có đầu vào được nối với tất cả các nơ-ron ở lớp ẩn, chúng là đầu ra của mạng. Một mạng nơ-ron cũng có thể có nhiều lớp ẩn. Các mạng nơ-ron trong mỗi nơ-ron chỉ được liên hệ với tất cả các nơ-ron ở lớp kế tiếp và tất cả các mối liên kết chỉ được xây dựng từ trái sang phải được gọi là mạng truyền thẳng nhiều lớp (perceptrons).
Mạng hồi quy (mạng ni lùi): các tín hiệu hồi tiếp từ ngõ ra trở về ngõ vào.
+ Mạng hồi quy một lớp (Single Layer Feedback network):
Hình 2.11. Cấu trúc mạng hồi quy một lớp
+ Mạng hồi quy nhiều lớp ( Multi layer feedback network):
Hình 2.12. Cấu trúc mạng hồi quy nhiều lớp 2.3.4. Các phƣơng pháp huấn luyện mạng nơ-ron
Một mạng nơ-ron được huấn luyện sao cho với một tập các vector đầu vào X, mạng có khả năng tạo ra tạo ra tập các vector đầu ra mong muốn Y của nó. Tập X được sử dụng cho huấn luyện mạng được gọi là tập huấn luyện (training set). Các phần tử x thuộc X được gọi là các mẫu huấn luyện (training example). Quá trình huấn luyện về bản chất là thay đổi các trọng số liên kết của mạng. Trong quá trình này, các trọng số của mạng sẽ hội tụ dần tới các giá trị sao cho với mỗi vector đầu
- Học có giám sát (Supervised Learning)
- Học không giám sát (Unsupervised Learning) - Học bán giám sát (Semi-Supervised Learning) - Học tăng cường (Reinforcement Learning)
2.3.4.1. Học có giám sát
Học có giám sát là thuật toán dự đoán đầu ra (output) của một dữ liệu mới (new input) dựa trên các cặp dữ liệu vào/ra đã biết từ trước, cặp dữ liệu này còn được gọi là nhãn (label). Ví dụ như khi đưa bảng chữ cái cho một đứa trẻ và chỉ cho chúng đây là chữ A, đây là chữ B. Sau một vài lần được dạy thì trẻ em có thể nhận biết được đâu là chữ A, đâu là chữ B trong một cuốn sách mà chúng chưa nhìn thấy bao giờ.
Giải thích một cách tốn học, Học có giám sát là khi có một tập hợp biến đầu
vào và một tập hợp nhãn tương ứng , trong
đó là các vector. Các cặp dữ liệu biết trước ( ) được gọi là tập dữ liệu huấn luyện (training data). Từ tập dữ liệu huấn luyện này, cần tạo ra một hàm số ánh xạ mỗi phần tử của tập X sang một phần tử (xấp xỉ) tương ứng của tập Y:
Mục đích là xấp xỉ hàm f thật tốt để khi có một dữ liệu x mới, có thể tính
được nhãn tương ứng của nó .
Hình 2.13. Mơ hình huấn luyện mạng nơ-ron có giám sát 2.3.4.2. Học khơng giám sát
Trong học khơng giám sát thì khác với học có giám sát ở chỗ là đầu ra đúng tương ứng cho mỗi đầu vào là không được biết trước, giống như khi đi học mà
Mạng nơ-ron
So sánh
Đầu vào Đầu ra thực tế
Đầu ra mong muốn Hiệu chỉnh trọng số
khơng có thầy cơ hướng dẫn cho biết đó là chữ A hay chữ B. Mạng phải tự tìm ra các đặc tính, quy luật, tương quan trong dữ liệu đầu vào và phần chia thành các nhóm con, mỗi nhóm chứa các đầu vào có đặc trưng giống nhau. Khi tự tìm ra các đặc điểm này, mạng đã trải qua các thay đổi về tham số của nó. Một cách tốn học, Học khơng giám sát là khi có dữ liệu đầu vào X nhưng khơng có nhãn Y tương ứng.
2.3.4.3. Học bán giám sát
Các bài tốn khi có một lượng lớn dữ liệu X nhưng chỉ một phần trong chúng được gán nhãn được gọi là học bán giám sát. Những bài tốn kiểu này nằm giữa 2 nhóm được nêu ở trên.
2.3.4.4. Học tăng cƣờng
Học tăng cường là phương pháp học giúp cho một hệ thống tự động xác định hành vi dựa trên hoàn cảnh để đạt được lợi ích cao nhất. Hiện tại, Học tăng cường chủ yếu được áp dụng vào Lý thuyết trị chơi ( Game Theory), các thuật tốn cần xác định nước đi tiếp theo để đạt được điểm số cao nhất.
Ví dụ: Huấn luyện máy tính chơi game.
Đầu vào của thuật tốn là sơ đồ của màn hình tại thời điểm hiện tại, nhiệm vụ của thuật tốn là với sơ đồ đó, tổ hợp phím nào nên được bấm. Việc huấn luyện này dựa trên điểm số cho việc di chuyển được bao xa trong thời gian bao lâu trong game, càng xa và càng nhanh thì điểm thưởng càng cao ( điểm thưởng do người lập trình tạo ra).
Hình 2.14. Mơ hình huấn luyện mạng khơng giám sát
Thông qua huấn luyện, thuật tốn sẽ tìm ra một cách để tối ưu số điểm
Mạng nơ-ron
Đầu vào Đầu ra thực tế
Hình 2.15. Mơ hình học tăng cường 2.3.5. Phân loại mạng nơ-ron
2.3.5.1. Mạng Perceptron nhiều lớp và thuật toán truyền ngƣợc
Mạng Perceptron nhiều lớp ( gồm 1 lớp nhập, 1 hoặc nhiều lớp ẩn và một lớp xuất) với thuật toán truyền ngược là mạng nơ-ron được sử dụng nhiều nhất để giải quyết nhiều vấn đề trong nhiều lĩnh vực khác nhau.
Về cơ bản, thuật tốn truyền ngược là thuật tốn tìm theo chiều gradient âm và có giám sát. Thuật tốn truyền ngược bao gồm 2 quá trình: quá trình lan truyền tiến và quá trình lan truyền ngược sai số. Trong q trình lan truyền tiến, tín hiệu nhập được đưa vào mạng và tín hiệu này truyền xuyên qua mạng từ lớp này tới lớp khác. Cuối cùng một tập dữ liệu xuất được tạo ở ngõ ra.
Trong suốt quá trình này, trọng số của mạng khơng thay đổi. Trong q trình truyền ngược, một tín hiệu sai số ( có được từ đáp ứng ngõ ra mong muốn và đáp ứng ngõ ra thực của mạng) được truyền ngược xuyên qua mạng. Trong quá trình này các trọng số được hiệu chỉnh sao cho ngõ ra thực tế của mạng ngày càng gần với ngõ ra mong muốn.
2.3.5.2. Mạng RBF ( Radial Basic Function network)
Mạng RBF bao gồm ba lớp khác biệt nhau. Lớp nhập được tạo bởi các nút nguồn và khơng có chức năng tính tốn. Lớp hai là một lớp ẩn và được nối kết hồn
Mạng nơ-ron
Bộ phát sinh tín hiệu đánh giá
toàn với lớp ba là lớp xuất. Đặc điểm của mạng RBF làm các tác động của các nơ ron trong lớp ẩn là các hàm đối xứng xuyên tâm. Mạng RBF được xem như là một thay thế đánh giá của mạng perceptron nhiều lớp và vì vậy các ứng dụng của mạng RBF trong hệ thống điện ngày càng nhiều.
2.3.5.3. Mạng Hopfield
Mạng Hopfied là mạng chỉ có một lớp nơ ron duy nhất vừa là lớp nhập vừa là lớp xuất. Trong đó ngõ ra của mỗi nơ ron được cấp ngược về các nơ ron khác. Vì vậy trạng thái của mỗi nơ ron tùy thuộc vào tín hiệu nhập, vào trạng thái trước đó của các nơ ron và vào hàm tác động của riêng nó. Mạng Hopfield rất hiệu quả trong các bài tốn tối ưu hóa tổ hợp và được ứng dụng trong hệ thống điện để giải các bài tốn như đánh giá an tồn hệ thống, qui hoạch hệ thống, phân bố công suất tối ưu,…
2.3.5.4. Mạng Kohonen
Mạng Kohonen là mạng truyền tiến khơng có giám sát dùng các nơ ron thích nghi để nhận các tín hiệu từ khơng gian sự kiện. Mạng gồm các nơ ron được sắp xếp trong một dãy một chiều hoặc trên một mặt hai chiều. Các nơ ron này có ngõ ra truyền ngược về chính nó và về các nơ ron kế cận với mức độ ảnh hưởng giảm dần theo khoảng cách.
Ý tưởng chính yếu trong mạng Kohonen là tạo ra một hệ thống tự sửa đổi sao cho các nơ ron gần nhau đáp ứng tương tự như nhau. Khi một nơ ron đáp ứng tốt với một tín hiệu vào, nơ ron này và các nơ ron kế cận với nó sẽ có các trọng số dẫn truyền thay đổi sao cho tất cả đều đáp ứng giống như nơ ron có đáp ứng tốt nhất. Trong hệ thống điện, mạng Kohonen đã được dùng để giải các bài toán dự báo phụ tải cùng chung với mạng perceptron nhiều lớp.
2.3.5.5. Mạng nơ-ron hồi quy (Generalized Regression Neural Network-GRNN)
Mạng nơ-ron hồi quy tổng quát (Generalized Regression Neural Networks - GRNN) là một biến thể của mạng truyền xuyên tâm ( Radial Basis Function
Công dụng của GRNN
Đây là một mạng nơ-ron cơ bản, là một cơng cụ tốt cho phép tính hàm xấp xỉ trong hộp cơng cụ mơ hình hóa. Nó dự đốn kết quả đầu ra của một dữ liệu đầu vào nhất định.
Cách làm việc của GRNN
Theo nguyên lý cơ bản của mạng nơron, nó cần một dữ liệu huấn luyện để huấn luyện chính nó. Dữ liệu huấn luyện nên bao gồm cấu trúc ngõ vào - ngõ ra. Bây giờ nếu huấn luyện mạng với bộ dữ liệu huấn luyện và cung cấp dữ liệu kiểm tra mới, nó sẽ cho kết quả ngõ ra hoặc dự đoán kết quả.
Trong trường hợp GRNN, ngõ ra được ước tính sử dụng trọng số trung bình của các ngõ ra tập dữ liệu huấn luyện, trong đó trọng số được tính bằng khoảng cách euclide giữa dữ liệu huấn luyện và dữ liệu kiểm tra. Nếu trọng số hoặc khoảng cách lớn thì trọng số sẽ rất nhỏ hơn và nếu khoảng cách nhỏ thì nó sẽ đặt trọng số lên ngõ ra nhiều hơn.
2.3.5.5.1. Cấu trúc mạng nơ-ron GRNN
Hình 2.16. Cấu trúc mạng GRNN
Cấu trúc mạng bao gồm bốn lớp cơ bản : Lớp ngõ vào, Lớp mẫu, Lớp tổng hợp, Lớp ngõ ra.
- Lớp mẫu: Lớp mẫu tính tốn khoảng cách Euclide và hàm kích hoạt.
- Lớp tổng: Lớp tổng có hai phần con, một là phần tử số và một phần khác là phần mẫu số. Phần tử chứa kết quả tổng hợp dữ liệu ngõ ra huấn luyện và hàm kích hoạt. Mẫu số là tổng của tất cả các hàm kích hoạt. Lớp này cấp dữ liệu cho cả tử số và mẫu số cho lớp đầu ra kế tiếp.
- Lớp ngõ ra: Lớp ngõ ra chứa một nơ-ron mà tính tốn ngõ ra bằng cách chia phần tử số của lớp tổng theo phần mẫu số.
2.3.5.5.2. Nguyên tắc chính
GRNN được viết theo phương trình sau:
2 2 ( ) 2 ( ) 2 ( ) i i d i d Y e Y x e (2.17) Trong đó, di2 (xxi) (T xxi)
Ở đây x là mẫu ngõ vào, xi là mẫu huấn luyện. Yi là mẫu ngõ ra, di2 là khoảng cách Euclidean từ x đến xi. 2 ( ) 2 i d e là hàm kích hoạt.
Về cơ bản hàm kích hoạt này về mặt lý thuyết là trọng số của ngõ vào đó. Bây giờ nếu nhìn kỹ, giá trị của di2 biểu thị số lượng mẫu huấn luyện có thể đóng góp vào kết quả của huấn luyện mẫu huấn luyện cụ thể.
Nếu di2 có giá trị nhỏ có nghĩa là nó sẽ đóng góp nhiều giá trị cho ngõ ra nhưng nếu nó là một giá trị lớn có nghĩa là nó sẽ đóng góp rất ít cho ngõ ra.
Biểu thức 2 ( ) 2 i d
e quyết định rằng trọng số của mẫu huyến luyện sẽ đóng góp bao nhiêu.
Nếu di2 là giá trị nhỏ, biểu thức
2
( ) 2
i
d
e sẽ trả về một giá trị tương đối lớn. Nếu di2 là giá trị lớn, biểu thức
2
( ) 2
i
d
e sẽ trả về một giá trị tương đối nhỏ. 2
2
(di )
được điều chỉnh theo quy trình huấn luyện đến một giá trị tối ưu mà sai số sẽ rất nhỏ.
2.3.5.5.3. Quy trình huấn luyện
Quy trình huấn luyện là để tìm ra giá trị tối ưu. Thực tiễn tốt nhất là tìm vị trí