Giới thiệu Mạng nơron truyền thẳng nhiều lớp và giải thuật lan truyền ngược

1. Mạng nơron truyền thẳng nhiều lớp

Mạng nơron truyền thẳng nhiều lớp bao gồm một lớp vào, một lớp ra và một hoặc nhiều lớp ẩn. Các nơron đầu vào thực chất không phải các nơron theo đúng nghĩa, bởi lẽ chúng không thực hiện bất kỳ một tính toán nào trên dữ liệu vào, đơn giản nó chỉ tiếp nhận các dữ liệu vào và chuyển cho các lớp kế tiếp. Các nơron ở lớp ẩn và lớp ra mới thực sự thực hiện các tính toán, kết quả được định dạng bởi hàm đầu ra (hàm chuyển).

sp20

Phương trình mô tả mạng:

sp21

Trong đó:

yqi : đầu ra của nơron thứ i ở lớp thứ q, i=1…nq , q=1,…Q

nq : số nơron ở lớp thứ q.

Q: Số lớp nơron của mạng.

bqi : ngưỡng của nơron thứ i ở lớp thứ q.

wqij : trọng số liên kết giữa đầu ra thứ j của lớp thứ q-1 đến nơron thứi của lớp thứ q, j=1…nq-1

Đầu vào mạng y0 = p.

Đầu ra mạng y = yQ

Hàm năng lượng của mạng có thể tính theo biểu thức:

sp22

Trong đó di là đầu ra mong muốn của nơron thứ i ở lớp ra.

Hầu hết các mạng nơron thực tế chỉ có 2 hoặc 3 lớp, rất hiếm mạng có từ 4 lớp trở lên. Các đặc điểm của tín hiệu đầu ra sẽ quyết định hàm truyền của mạng ở lớp ra.

2. Thuật toán lan truyền ngược

Phương pháp lan truyền ngược sử dụng một tập hợp các giá trị đầu vào và đầu ra để tìm ra mạng nơron thần kinh mong muốn. Một tập hợp đầu vào được đưa vào một hệ thống giả định trước nào đó để tính ra giá trị đầu ra, sau đó giá trị đầu ra này được so sánh với giá trị giá trị thực đo. Nếu không có sự khác biệt nào, thì không cần thực hiện một quá trình kiểm tra nào, ngược lại các trọng số sẽ được thay đổi trong quá trình lan truyền ngược trong mạng thần kinh để giảm sự khác biệt đó.

Mạng lan truyền ngược thường có một hoặc nhiều lớp ẩn với các nơron dạng sigmoid và lớp ra là các nơron với hàm truyền tuyến tính. Mạng nhiều lớp sử dụng thuật học lan truyền ngược đang được sử dụng rộng rãi nhất trong lĩnh vực nơron.

sp23


Luật học lan truyền ngược được phát triển từ luật học delta. Cũng như luật học delta, luật học lan truyền ngược (BP) là xấp xỉ của thuật toán giảm dốc nhất, trong đó hàm chất lượng là sai số bình phương trung bình. Sự khác nhau giữa luật học delta và luật học lan truyền ngược chỉ là cách thức lấy đạo hàm.

Đối với mạng đa lớp ta có phương trình như sau:

yq+1= gq+1(Wq+1yq + bq+1) với q=0,1,..,Q-1,

Trong đó Q là số lớp của mạng. Các nơron ở lớp đầu tiên nhận đầu vào từ ngoài:

y0=p,

Chính là điểm khởi đầu của phương trình phía trên. Các đầu ra của các nơron trong lớp cuối cùng được xem là đầu ra của mạng:

y = yQ.

Mạng được cung cấp các tập mẫu học:

{(p1,d1),(p2,d2),…(pk,dk)},

trong đó pi là một đầu vào mạng và di là đầu ra mong muốn tương ứng, với i = 1…k. Mỗi đầu vào đưa vào mạng, đầu ra của mạng đối với nó được đem so sánh với đầu ra mong muốn. Thuật toán sẽ điều chỉnh các tham số của mạng để tối thiểu hóa sai số bình phương trung bình:

sp24

với x là véc tơ chứa các trọng số và ngưỡng của mạng

Thuật toán giảm dốc nhất cho xấp xỉ sai số bình phương trung bình là:

sp25

sp26

Trong đó α là hệ số học.


Untitled-1

yq+1 = gq+1(Wq+1 yq + bq-1) với q=0,1,…,Q-1.

y = yQ

Bước truyền lùi: truyền lùi các độ nhạy

sQ = -2F’Q(uQ)(d-y);

sq = F’q(uq)(Wq+1)T sq+1 vowis q = Q-1,…,2,1

Các trọng số và ngưỡng được cập nhật theo luật xấp xỉ giảm dốc nhất:

Wq(k+1) = Wq(k) – α.sq(yq-1)T

bq(k+1) = bq(k) – α.sq

Tuy nhiên thuật toán BP cơ bản ở trên vẫn còn quá chậm cho các ứng dụng. Việc nghiên cứu các thuật toán nhanh hơn được chia thành hai nhóm. Nhóm thứ nhất phát triển các kỹ thuật mang tính kinh nghiệm (heuristic). Các kỹ thuật heuristic này đưa ra các ý tưởng như hệ số học biến đổi, sử dụng momentum và các biến co giãn. Nhóm thứ hai phát triển theo hướng kỹ thuật tối ưu hóa số. Một số kỹ thuật về tối ưu hóa số đã áp dụng thành công cho mạng nơron nhiều lớp là: thuật toán gradient liên hợp và thuật toán Levenberg-Marquardt (LM- một phiên bản khác của phương pháp Newton)…