2.4.4 Huấn luyện mạng nơ rôn
Huấn luyện là quá trình làm thay đổi các trọng số liên kết và bias của mạng để mạng thực hiện được một nhiệm vụ cụ thể. ANN được huấn luyện theo kiểu huấn luyện có giám sát [29], hoặc huấn luyện không giám sát [30-31]. Trong các bài toán phân loại và nhận dạng, huấn luyện có giám sát được sử dụng phổ biến.
Huấn luyện có giám sát: Mạng được huấn luyện nhờ các cặp dữ liệu vào và ra mong muốn. Các trọng số liên kết của mạng thay đổi sao cho sự sai khác giữa dữ liệu ra
36
của mạng và dữ liệu ra mong muốn nhỏ nhất. Luật huấn luyện sử dụng kết quả so sánh để điều chỉnh trọng số liên kết và bias của mạng.
Giai đoạn huấn luyện: dữ liệu được đưa tới ngõ vào mạng. Sai khác giữa ngõ ra của đáp ứng hệ thống và đáp ứng mong muốn được tính tốn. Sai khác này được phản hồi lại cho hệ thống và điều chỉnh các tham số của hệ thống theo mợt thuật tốn. Q trình này lặp đi lặp lại cho đến khi chất lượng của hệ thống đạt đến một ngưỡng cho trước. Như vậy, chất lượng của hệ thống phụ tḥc hồn toàn vào dữ liệu huấn luyện. Nếu mợt bài tốn có rất ít dữ liệu hoặc dữ liệu khơng phủ hết các điều kiện khác nhau thì giải pháp mạng nơ rôn là không hợp lý. Trong trường hợp lượng dữ liệu phong phú tuy nhiên sự hiểu biết về nó chưa đầy đủ để xây dựng mợt mơ hình chính xác thì giải pháp mạng nơ rơn là phù hợp.
2.4.5 Luật học mạng nơ rơn
Trong q trình học, các trọng số liên kết và bias của mạng thay đổi cho phù hợp với các mẫu được huấn luyện. Tuy nhiên, có nhiều tiêu chí để thay đổi các trọng số này. Tiêu chí để các trọng số thay đổi có thể là chất lượng. Các luật làm thay đổi các trọng số liên kết và bias gọi là luật học của mạng.
2.4.5.1 Luật học dựa trên chất lượng
Luật học dựa trên chất lượng là một lớp luật học quan trọng, trong đó các tham số của mạng được điều chỉnh để tối ưu chất lượng của mạng.
Chỉ số chất lượng là số đo định lượng của chất lượng. Chỉ số chất lượng được chọn sao cho giá trị của chỉ số chất lượng nhỏ khi mạng thực hiện tốt và lớn khi mạng thực hiện kém.
Quá trình tối ưu chất lượng là quá trình tìm các tham số để giảm giá trị của chỉ số (hay làm tăng chất lượng của mạng). Chỉ số chất lượng là một hàm số của các trọng số liên kết. Nhiệm vụ của bài tốn tối ưu là tìm được điểm cực tiểu và hướng để hàm đạt cực tiểu nhanh nhất. Tìm được điểm tối ưu của các trọng số liên kết, nghĩa là tìm điểm cực tiểu tồn cục của hàm số.
37
Sai số bình phương trung bình: mạng được h́n luyện bởi phương pháp có giám sát với tập hợp các mẫu để học:
p t1, 1 , p t2, 2,,pQ,tQ (2.36)
Trong đó pq là vector lối vào của mạng và tq là lối ra tương ứng mong muốn. Lối ra của mạng là:
T
a w pb (2.37)
Với wT là vector trọng số liên kết của mạng ANN. Đặt , phương
trình (2.37) có thể viết lại thành:
T
a x z (2.38)
Sai số bình phương trung bình của mạng được tính bằng trung bình bình phương giữa sai số lối ra mong muốn và lối ra thực tế của mạng:
2 2 2 T F E e E ta E t x x z (2.39) Khai triển: 2 2 2 T T T 2 T T T F x E t tx zx zz xE t x E tz x Ezz x (2.40) Đặt
Biểu thức (2.40) trên viết lại thành:
2 T T
F x c x h x Rx (2.41) Hàm số (2.41) là hàm chỉ số chất lượng, trong đó x là vector các trọng số liên kết và bias. Ta biết rằng, mợt hàm số có thể khai triển thành chuỗi theo công thức Taylor.
38 * * * * 2 * * 1 2 T T F F F F x x x x x x x x x x x x x x (2.42)
Trong đó là gradient và được định nghĩa theo công thức:
1 2 T n F F F F x x x x x x x (2.43)
và là Hessian, được định nghĩa như sau:
(2.44)
Điều kiện cần để mợt điểm là cực tiểu tồn cục là gradient tại điểm đó phải bằng 0. Điều kiện đủ là Ma trận Hessian là xác định dương.
Việc tìm điểm tối ưu là tìm điểm theo đó hướng của gradient (đạo hàm bậc nhất) giảm nhanh nhất (độ dốc nhất). Đợ dốc lớn nhất xảy ra theo hướng tại đó tích vơ hướng của gradient và vectơ theo hướng đó có giá trị lớn nhất. Nghĩa là hướng của vectơ trùng với hướng của gradient.
39
2.4.6 Mạng Perceptron nhiều lớp
Mạng perceptron có giới hạn khi khơng biểu diễn được nhiều hàm, ví dụ hàm XOR. Do đó, để giải quyết bài tốn này có thể sử dụng mạng Perceptron nhiều lớp bởi vì ta biết rằng hàm XOR có thể phân tích thành các hàm cơ bản như AND, OR và NOT.
Mạng Perceptron nhiều lớp (hàm kích thích khơng tuyến tính) sẽ biểu diễn được hầu hết các hàm, do đó giải quyết được nhiều bài tốn mà đầu vào khơng phân chia tuyến tính được.
Multi Layer Perceptron (MLP) là mơ hình mạng nơ rơn có cấu trúc khơng có kết nối phản hồi (feed-forward). MLP, một biến thể của mạng nơ rơn tuyến tính chuẩn, gồm nhiều lớp và hàm truyền khơng tuyến tính, có khả năng phân loại các mẫu khơng tuyến tính, nói cách khác nó có thể biểu diễn được hầu hết các hàm.
Mợt số ưu điểm của MLP là có thể xấp xỉ gần đúng tất cả các hàm phi tuyến, có thể tổng quát hóa các dữ liệu chưa được huấn luyện.
Khi làm việc với MLP ta cần quan tâm đến việc sử dụng bao nhiêu lớp ẩn (một lớp là đủ theo định lý Kolmogorov, 2 lớp luôn luôn là đủ). Cần bao nhiêu nơ rôn ở lớp ẩn là bài tốn tối ưu. Thơng thường, số kết nối phải nhỏ hơn số mẫu huấn luyện. Khi số kết nối tiến gần đến số mẫu huấn luyện, khả năng tổng quát hóa của mạng giảm.
2.4.6.1 Kiến trúc
MLP bao gồm một lớp vào, một lớp ra và một hoặc nhiều lớp ẩn. Mỗi nơ rôn được liên kết với tất cả các nơ rôn của lớp tiếp theo bằng các trọng số liên kết wij . Các nơ rôn trong cùng một lớp không liên kết trực tiếp với nhau. Khơng có liên kết trực tiếp giữa lớp ra và lớp vào. Số nơ rôn trong lớp ẩn có thể nhiều hơn hoặc ít hơn so với số nơ rôn trong lớp vào và ra. Đầu vào, đầu ra ở dạng tín hiệu liên tục.
Nếu hàm kích thích của các nơ rơn là tuyến tính thì có thể chứng minh được rằng mợt mạng với số lớp bất kỳ có thể đưa về dạng một mạng hai lớp. Như vậy, sự khác
40
biệt của mạng MLP so với mạng perceptron chuẩn là hàm kích thích của nơ rơn trong mạng MLP là không tuyến tính. Hàm kích thích có thể được mơ hình hóa khác nhau nhưng ln phải chuẩn hóa (nomalizable) và phân biệt được (defferentiable). Hàm kích thích trong mạng MLP thường dùng là các hàm
sigmoids: hoặc . Đối với mạng MLP, lớp
ẩn thường dùng hàm sigmoids, lớp ra thường dùng hàm tuyến tính.