5 Kết luận và hướng phát triển
3.17 Mô hình mạng neural sinh học
3.3.2 Mạng neural nhân tạo
Mạng neural nhân tạo là một bộ xử lý phân tán song song được cấu tạo bởi các đơn vị xử lý đơn giản, có chức năng lưu trữ những tri thức kinh nghiệm và cho phép sử dụng những tri thức này. Mạng neural mô phỏng bộ não người theo hai khía cạnh sau:
- Tri thức được thu thập bởi mạng neural trong môi trường hoạt động thông qua một quá trình học (hay còn gọi là huấn luyện).
- Trọng số của liên kết giữa các đơn vị xử lý được dùng để lưu trữ những tri thức thu thập được.
Chương 3. Hệ thống nhận dạng biển số
Quá trình học được thực hiện bởi một thuật toán học. Thuật toán này sẽ làm thay đổi trọng số liên kết giữa các đơn vị xử lý để đạt được mục tiêu thiết kế.
Mạng neural nhân tạo được xây dựng dựa trên các mô hình toán học mô phỏng hoạt động của những yếu tố chính trong mạng neural sinh học (dendrite, soma, axon). Hoạt động của mạng neural nhân tạo có những tính chất sau:
- Quá trình xử lý thông tin xảy ra tại mỗi đơn vị của mạng, gọi là neural. - Các neural được liên kết với nhau.
- Mỗi liên kết của các neural đều có một trọng số. Trọng số này đặc trưng cho bài toán được biểu diễn bởi mạng. Khi nhận được thông tin đầu vào, các đầu vào sẽ được nhân với các trọng số tương ứng, sau đó được cộng lại để cho một giá trị gọi là net.
- Mỗi neural đề có một hàm kích hoạt (activation function), hàm này có chức năng tính toán đầu ra cho neural dựa vào giá trị net đã nêu ở trên.
Đặc trưng của một mạng neural nhân tạo bao gồm:
- Mô hình kết nối giữa các neural trong mạng với nhau hay còn gọi là kiến trúc của mạng.
- Cách thức xác định trọng số của các liên kết trong mạng. - Hàm kích hoạt của các neural.
Mạng neural nhân tạo được ứng dụng để giải quyết nhiều lớp bài toán: lưu trữ và phục hồi trạng thái của mẫu, phân lớp mẫu, tìm ánh xạ giữa đầu vào và đầu ra, gom nhóm các mẫu giống nhau hoặc dùng để giải quyết các bài toán về tối ưu có ràng buộc.
Các thành phần của một neural trong mạng bao gồm:
- Tập các đầu vào (input): là các tín hiệu đầu vào của neural, có thể từ môi trường ngoài hoặc là đầu ra của các neural khác trong mạng. Tập các đầu vào thường được đưa vào neural dưới dạng một vector và được kí hiệu làx.
- Tập liên kết (weights): mỗi liên kết từ một neural khác đến neural hiện tại được biểu diễn bởi một trọng số. Trọng số liên kết từ một neuraliđến một neuralj được kí hiệu là Wij. Thông thường, các trọng số sẽ được khởi tạo một cách ngẫu nhiên vào thời điểm khởi tạo mạng và được cập nhập liên tục trong quá trình huấn luyện.
- Ngưỡng (hay còn gọi là độ lệch - bias): là một giá trị giúp thay đổi khả năng biểu diễn của một hàm kích hoạt. Giá trị bias thường được xem xét là một đầu vào cố định của mọi neural.
- Hàm kích hoạt (activation function): tính toán giá trị đầu ra cho mỗi neural. Thông thường, miền giá trị của hàm kích hoạt nằm trong khoảng [0; 1] hoặc [−1; 1]. Ta kí hiệu hàm kích hoạt làf.
- Đầu ra (outputs): kết quả của neural sau quá trình tính toán, thường được kí hiệu lày.
X1 X2 Xm Wi1 Wi2 Wim F(.) Yi i input output Synapic weights Summing function Activation function Threshold