MÔ HÌNH NEURON VÀ CẤU TRÚC MẠNG 1.1 Mô hình neuron Cấu trúc một Neuron Ngõ vào một neuron có thể là đại lượng vô hướng hoặc có hướng, đại lượng này được nhân với trọng số tương ứng để đư
Trang 1CHƯƠNG 2
MÔ HÌNH MẠNG NEURAL NETWORKS
Mô hình mạng Neural tổng quát có dạng như sau :
Ngày nay mạng Neural có thể giải quyết nhiều vấn đề phức tạp đối với con người, áp dụng trong nhiều lĩnh vực như nhận dạng, định dạng, phân loại, xử lý tín hiệu, hình ảnh v.v…
1. MÔ HÌNH NEURON VÀ CẤU TRÚC MẠNG
1.1 Mô hình neuron
Cấu trúc một Neuron
Ngõ vào một neuron có thể là đại lượng vô hướng hoặc có hướng, đại lượng này được nhân với trọng số tương ứng để đưa vào neuron, hoặc có thể cộng thêm ngưỡng (bias), thường bằng 1 Dưới đây là mô hình một neuron với ngõ vào vô hướng p không có ngưỡng b (hình bên trái) và có ngưỡng b (hình bên phải) Ngõ vào vô hướng p được nhân với trọng số vô hướng w tạo
thành wp, đối số wp (hình bên trái) qua hàm truyền f cho kết quả đầu ra là vô hướng a = f(wp) Hình bên phải là neuron có ngưỡng b, giá trị b được cộng với wp rồi qua hàm truyền f cho kết quả đầu ra là vô hướng a = f(wp+b) Có thể điều chỉnh những thông số của neuron như trọng
số và ngưỡng (w và b) để đạt được yêu cầu mong muốn nghĩa là “huấn luyện” mạng
Trang 2Hàm truyền
Có rất nhiều hàm truyền áp dụng trong Neural Networks, trong đó ba hàm thường sử dụng nhất là Hard Limit, Linear, Log-Sigmoid
Tổng quát với một hàm truyền có đầu vào là một hoặc một nhóm vector thì đầu ra là
a = f ( p * w + b ).
Với a : đầu ra
p : đầu vào
w : trọng số
b : ngưỡng
f : hàm truyền
Vậy một ngõ vào với các hàm truyền khác nhau sẽ cho các kết quả khác nhau Để có giải pháp tối ưu thì cần phải có kinh nghiệm sử dụng các hàm truyền hoặc phải tốn một khoảng thời gian để thử nghiệm hàm truyền
Neuron với Vector nhập
Một neuron được cho trên hình vẽ sau với vector nhập p = [p1 , p2 , ……pR ], trọng số W = w1,1,
w1,2,……w1,R, ngưỡng b và hàm truyền f Tổng đối số và ngưỡng tạo ở ngõ ra n là
n = w1,1p1 + w1,2,p2 + ……w1,R pR + b
hay n = W*p + b
Trang 3Nếu có nhiều neuron thì cách biểu diễn trên không hiệu quả, do đó có thể định nghĩa một lớp gồm nhiều neuron như sau
1.2 Cấu trúc mạng
Hai hay nhiều neuron kết hợp thành một lớp, và một mạng riêng biệt có thể chứa một hay nhiều lớp neuron
Một lớp neuron
Trong hình dưới mô tả một lớp neuron với : R : số phần tử của vectơ đầu vào
S : số neuron trong lớp
a : vector ngõ ra của lớp neuron
Trang 4Ma trận trọng số W :
=
R S S
S
R R
w w
w
w w
w
w w
w W
, 2
, 1 ,
, 2 2
, 1 1 , 2
, 1 2
, 1 1 , 1
Một lớp mạng được vẽ gọn như sau :
Mạng nhiều lớp neuron
Trang 5Mạng có nhiều lớp, mỗi lớp có một ma trận W, một ngưỡng b và một vectơ ngõ ra a Thông thường giá trị ra của một lớp là giá trị vào của lớp tiếp theo Mỗi lớp trong mạng đảm nhiệm
vai trò khác nhau, lớp cho kết quả ở đầu ra của mạng được gọi là lớp ngõ ra _ output layer, tất cả các lớp còn lại được gọi là lớp ẩn _ hidden layers Mạng đa lớp có khả năng xử lý rất lớn.
Chẳng hạn như một mạng có hai lớp, lớp thứ nhất là sigmoid, lớp thứ hai là linear có thể được huấn luyện đến một hàm gần đúng với một số kết nối cố định
2. CẤU TRÚC DỮ LIỆU
Cấu trúc định dạng của dữ liệu vào ảnh hưởng đến việc mô phỏng của mạng Có hai loại mạng
static network và dynamic network Hai kiểu vector đầu vào cơ bản là kiểu xảy ra đồng thời
(concurrently) và kiểu xảy ra liên tục theo thời gian (sequentially)
Kiểu đầu vào xảy ra đồng thời được mô phỏng trong mạng tĩnh (không có hồi tiếp hoặc trễ), thứ tự của các vector đầu vào không quan trọng và chúng không ảnh hưởng lẫn nhau
Kiểu đầu vào xảy ra liên tục được mô phỏng trong mạng dynamic Thứ tự các giá trị đầu vào rất quan trọng Trong trường hợp này, giá trị đầu ra thu được là do giá trị vào hiện tại và giá trị vào trước đó Nếu thay đổi thứ tự của dữ liệu vào thì sẽ làm thay đổi dữ liệu ra
3. KIỂU HUẤN LUYỆN
Trong phần này mô tả hai kiểu huấn luyện khác nhau
• Incremental training : trọng số và ngưỡng của mạng được cập nhập mỗi khi có dữ liệu
vào mạng Kiểu này ứng dụng trong cả hai mạng tĩnh và động, tuy nhiên thường dùng trong mạng động nhiều hơn, như là những bộ lọc thích ứng
• Batch training : trọng số và ngưỡng của mạng chỉ được cập nhập sau khi tất cả dữ liệu
đã vào mạng, dùng trong cả hai mạng tĩnh và động
Trang 64. KẾT LUẬN
Đầu vào của một neuron gồm ngưỡng b và tổng các trọng số vào Ngõ ra của neuron phụ thuộc vào đầu vào và hàm truyền
Neuron đơn rất ít sử dụng Tuy nhiên một vài neuron có thể kết hợp thành một lớp hay nhiều lớp thì khả năng xử lý cao hơn Vấn đề đơn giản có thể trình bày bằng một lớp đơn Tuy nhiên, nó không giải quyết được nhiều vấn đề phức tạp Mạng đa lớp feedforward có khả năng giải quyết lớn hơn
Cấu trúc một mạng có thể mô tả bằng số lớp, số neuron trong một lớp, hàm truyền của mỗi lớp và kết nối giữa các lớp Tùy thuộc vấn đề mạng cần giải quyết mà có cấu trúc khác nhau
Nếu một ánh xạ tuyến tính cần mô tả nên sử dụng neuron tuyến tính Tuy nhiên, mạng tuyến tính không thể thực hiện bất cứ tính toán phi tuyến nào Sử dụng hàm truyền phi tuyến để tạo cho mạng có khả năng thực hiện mối quan hệ phi tuyến giữa đầu vào và đầu ra Mạng có ngưỡng b có thể mô tả mối quan hệ giữa đầu vào và đầu ra dễ dàng hơn mạng không có ngưỡng b Ví dụ một neuron không có ngưỡng sẽ luôn tạo ra ngõ vào zero cho hàm truyền (khi tất cả ngõ vào neuron là zero) Tuy nhiên một neuron với ngưỡng có thể học để tạo ra một ngõ nhập cho bất kỳ hàm truyền nào trong cùng một điều kiện bằng cách học tập những giá trị gần đúng của ngưỡng