Tải bản đầy đủ
Mô hình mạng nơron ở trên gồm 3 lớp: lớp nhập (input layer), lớp ẩn (hidden layer) và lớp xuất (output layer). Mỗi nút trong lớp nhập nhận giá trị của một biến độc lập và chuyển vào mạng.

Mô hình mạng nơron ở trên gồm 3 lớp: lớp nhập (input layer), lớp ẩn (hidden layer) và lớp xuất (output layer). Mỗi nút trong lớp nhập nhận giá trị của một biến độc lập và chuyển vào mạng.

Tải bản đầy đủ

truyền thẳng một hướng (Feed forward network), và có cấu trúc mạng ghép nối
hoàn toàn (vì bất cứ một nơron nào trong mạng cũng được nối với một hoặc vài
nơron khác). Mạng nơron bao gồm một hay nhiều lớp trung gian được gọi là
mạng Multilayer Perceptrons (MLP- Network).
1.3.2.1 Các kiểu mô hình mạng noron
Cách thức kết nối các noron trong mạng xác định kiến trúc (topology) của
mạng. Các noron trong mạng có thể kết nối đầy đủ (fully connected) tức là mỗi
noron đều được kết nối với tất cả các noron khác, hoặc kết nối cục bộ (partially
connected) chẳng hạn chỉ kết nối giữa các noron trong các tầng khác nhau.
Người ta chia ra hai loại kiến trúc mạng chính:.
a. Kiến trúc truyền thẳng
Kiến trúc truyền thẳng: là kiểu kiến trúc mạng không có các kết nối ngược
trở lại từ các noron đầu ra về các noron đầu vào; mạng không lưu lại các giá trị
output trước và các trạng thái kích hoạt của noron. Các mạng noron truyền thẳng
cho phép tín hiệu di chuyển theo một đường duy nhất; từ đầu vào tới đầu ra, đầu
ra của một tầng bất kì sẽ không ảnh hưởng tới tầng đó. Các mạng kiểu
Perceptron là mạng truyền thẳng.
Có hai dạng truyền:
+ đơn mức: Trong một mạng nơron phân mức, các nơron được tổ chức dưới
dạng các mức. Với dạng đơn giản nhất của mạng phân mức, chúng ta có một
mức đầu vào gồm các nút nguồn chiếu trực tiếp tới mức đầu ra gồm các nơron.

Mức đầu vào

Mức đầu ra

Hình 1.5: Mạng truyền thẳng với một mức nơron

15

Như vậy, mạng thực sự là không có chu trình. Nó được minh hoạ trong hình
1.5 cho trường hợp ba nút đối với cả mức đầu ra và đầu vào. Một mạng như vậy
được gọi là một mạng đơn mức. “Đơn mức” tức là chỉ có một mức, chính là mức đầu
ra gồm các nút tính toán (các nơron). Chúng ta không tính mức đầu vào của các nút
nguồn vì không có tính toán nào được thực hiện ở đây.
+ đa mức: Lớp thứ hai của một mạng nơron dẫn tiến được phân biệt bởi sự có
mặt của một hay nhiều mức ẩn, mà các nút tính toán của chúng được gọi là các
Nơron ẩn hay các đơn vị ẩn (thuật ngữ “ẩn” ở đây mang ý nghĩa là không tiếp
xúc với môi trường). Chức năng của các nơron ẩn là can thiệp vào giữa đầu vào
và đầu ra của mạng một cách hữu hiệu. Bằng việc thêm một vài mức ẩn, mạng có
khả năng rút ra được các thống kê bậc cao của tín hiệu đầu vào. Khả năng các
nơron ẩn rút ra được các thống kê bậc cao đặc biệt có giá trị khi mức đầu vào có
kích thước lớn.
Mạng nơron trong hình 1.6 được gọi là kết nối đầy đủ với ý nghĩa là tất cả
các nút trong mỗi mức của mạng được nối với tất cả các nút trong mức tiếp sau.
Nếu một số kết nối không tồn tại trong mạng, chúng ta nói rằng mạng là kết nối
không đầy đủ.

Mức đầu vào

Mức ẩn

Mức đầu ra

gồm các nút

gồm các

gồm các

nguồn

nơron ẩn

nơron đầu ra

Hình 1.6: Mạng dẫn tiến kết nối đầy đủ với một mức ẩn và một mức đầu ra

16

17

b. Kiến trúc phản hồi
Kiến trúc phản hồi: là kiểu kiến trúc mạng có các kết nối từ noron đầu ra tới
noron đầu vào. Mạng lưu lại các trạng thái trước đó, và trạng thái tiếp theo
không chỉ phụ thuộc vào các tín hiệu đầu vào mà còn phụ thuộc vào các trạng
thái trước đó của mạng.
+đơn mức:

Hình 1.7: Mạng phản hồi không có nơron ẩn và không có vòng lặp tự phản hồi
+đa mức:

Hình 1.8: Mạng phản hồi có các nơron ẩn

18

1.3.2.2. Đặc trưng của mạng neural
- Tính phi tuyến
- Tính chất tương ướng đầu vào đầu ra
- Tính chất thích nghi
- Tính chất đưa ra lời giải có bằng chứng
- Tính chất chấp nhận sai xót
1.3.3. Các thuật toán học
Một số khái niệm cần biết
Học trong mạng noron là quá trình thay đổi giá trị của w để mạng có thể
đưa ra được kết quả mong muốn tối ưu.
Sự khác nhau giữa giá trị thật của mẫu và kết quả dự đoán của mạng gọi là
lỗi. Quá trình học sẽ tìm các wi* để lỗi nhỏ nhất.
1.3.3.1. Các phương pháp học
a. Học có giám sát
Là quá trình học có sự tham gia giám sát của một “thầy giáo”. Cũng giống
như việc ta dạy một em nhỏ các chữ cái. Ta đưa ra một chữ “a” và bảo với em đó
rằng đây là chữ “a”. Việc này được thực hiện trên tất cả các mẫu chữ cái. Sau đó
khi kiểm tra ta sẽ đưa ra một chữ cái bất kì (có thể viết hơi khác đi) và hỏi em đó
đây là chữ gì? Với học có giám sát, số lớp cần phân loại đã được biết trước.
Nhiệm vụ của thuật toán là phải xác định được một cách thức phân lớp sao cho
với mỗi vector đầu vào sẽ được phân loại chính xác vào lớp của nó.
b. Học không giám sát
Là việc học không cần có bất kỳ một sự giám sát nào. Trong bài toán học
không giám sát, tập dữ liệu huấn luyện được cho dưới dạng: D = {(x 1, x2,...,xN)}
với (x1, x2,...,xN) là vector đặc trưng của mẫu huấn luyện. Nhiệm vụ của thuật
toán là phải phân chia tập dữ liệu D thành các nhóm con, mỗi nhóm chứa các
vector đầu vào có đặc trưng giống nhau. Như vậy với học không giám sát, số lớp
phân loại chưa được biết trước, và tùy theo tiêu chuẩn đánh giá độ tương tự giữa
các mẫu mà ta có thể có các lớp phân loại khác nhau.

19

c. Học tăng cường
Đôi khi còn được gọi là học thưởng-phạt (reward-penalty learning), là
sự tổ hợp của cả hai mô hình trên. Phương pháp này cụ thể như sau: Với vector
đầu vào, quan sát vector đầu ra do mạng tính được. Nếu kết quả được xem là
“tốt” thì mạng sẽ được thưởng theo nghĩa tăng các trọng số kết nối lên; ngược lại
mạng sẽ bị phạt, các trọng số kết nối không thích hợp sẽ được giảm xuống. Do
đó học tăng cường là học theo nhà phê bình (critic), ngược với học có giám sát là
học theo thầy giáo.
1.3.3.2. Thuật toán huấn luyện mạng
a. Thuật toán học mạng nơron truyền thẳng một lớp
Xét trường hợp perceptron sử dụng hàm kích hoạt ngưỡng:


+ 1,

output = 
−1,



d

∑v w
i

i =1

i

(1.1)

d

∑v w
i =1

i

>t
≤t

i

Nếu ta cho w0=-t và v0=1, ta có thể viết lại


+ 1,

output = 
−1,



d

∑v w
i

i =0

i

d

∑v w
i =0

i

i

>0
≤0

 d

= sign ∑vi wi 
 i =0


(1.2)

Thuật toán:
Thuật toán học của perceptron hay mạng neural một lớp gồm 3 bước chính:
Bước 1: Khởi tạo:
Khởi tạo trọng số w (0 hoặc ngẫu nhiên).
Chọn tốc độ học µ.
Bước 2 : Học
Với mỗi mẫu (x,t) trong tập học.
Tính y=f(x, w).
Nếu y!=t thay đổi vectơ trọng số w với:

20