Với mỗi cặp vào - ra ( ( ), ( )) thuật toán lan truyền ngược sai số thực hiện hai giai đoạn sau [36][45]:
Lan truyền thuận, mẫu vào ( ) được truyền từ lớp vào đến lớp ra, có kết quả ra
tính tốn được là ( ).
Lan truyền ngược, tín hiệu lỗi được tính tốn từ sự khác nhau giữa kết quả ra mong muốn ( ) với kết quả ra tính tốn ( ) sẽ được lan truyền ngược lại
từ lớp ra đến các lớp
trước để điều chỉnh các trọng số của mạng.
Phương trình điều chỉnh trọng số đối với lớp bất kỳ trong phương pháp lan truyền ngược có dạng như sau:
∆ w
i j
trong đólà đầu ra của nơ-ron và
3.3.2. Huấn luyện mạng theo thuật toán lan truyền ngược
Một mạng nơ-ron truyền thẳng có đầu vào và đầu ra, lớp, = 1, 2, … , và gọi và là tín hiệu vào và ra của nơ-ron thứ trong lớp . Đặt ( ) là trọng số của liên kết từ nơ-ron thứ trong lớp ( − 1) tới nơ-ron thứ trong lớp . Đầu vào, tập các cặp
mẫu học { ( ), ( )}, = 1,2, … , và véc-tơ ngưỡng +1
Bước 1: Bước khởi tạo, chọn một hằng số η > 0 và là sai số cho phép. Đặt
= 0 và = 1.
Bước 2: Thực hiện một quá trình lặp cho việc huấn luyện mạng, sử dụng mẫu học thứ
. Tại lớp vào ( = 1), với mọi ta có: ( ) = (1) = ( ).
Bước 3: Lan truyền tín hiệu từ lớp vào tới lớp ra được xác định:
y ( l )
i
Bước 4: Xác định tín hiệu lỗi ( ) tại lớp ra như sau:
(3.10) ( )=−1.
E = 1 n t ( k ) − y (L)
2 ∑
i=1 ( i
Bước 5: Lan truyền ngược lỗi, để điều chỉnh các trọng số và tính tốn tín hiệu lỗi ( −1)cho các lớp trước:
∆wij(l ) = η δi( l ) yi( l −1) ; wij(l ) ( k + 1) = wij(l ) ( k ) + ∆wij(l ) (3.12)
δ ( l −1) i (3.13) Bước 6: Kiểm tra điều kiện lặp, if ( ≥ ) then goto Bước 7 el se be gi n k= k+ 1; G ot o B ư ớc 2 en d; Bước 7: Kiểm tra lỗi tổng cộng hiện thời chấp nhận được chưa? If ( < )) then
{kết thúc quá trình học và đưa ra bộ trọng số cuối cùng}
else begin = 0; = 1; Goto Bước 2 {để bắt đầu một lần học tiếp}; End;
Mỗi lần toàn bộ tập mẫu học được lan truyền qua mạng được gọi là một vòng huấn luyện. Số vòng huấn luyện phụ thuộc vào từng trường hợp cụ thể và sự khởi tạo ban đầu.
3.4. Tích hợp điều khiển mờ với mạng nơ-ron
Việc kết hợp các ưu điểm của hệ mờ và mạng nơ-ron dẫn đến các hệ thống lai với các cấu trúc được sử dụng rộng rãi là mạng nơ-ron mờ..
3.4.1. Nền tảng của sự tích hợp
Bảng 3.1 trình bày ưu khuyết điểm của điều khiển mờ và mạng nơ-ron [45][56]. Bảng 3.1. So sánh
tính chất điều khiển mờ với mạng nơ-ron
Tính chất
Thể hiện tri thức
Nguồn của tri thức Xử lý thông tin không chắc chắn
Lưu giữ tri thức Khả năng cập nhật và nâng cao kiến thức
Từ những phân tích trên, nhận thấy rằng: Đối với điều khiển mờ, ta dễ dàng thiết kế một hệ thống mong muốn chỉ bằng các luật Nếu - Thì gần với việc xử lý của con người. Điều này cho phép tạo ra lời giải đơn giản hơn, trong khoảng thời gian ngắn hơn. Đối với mạng nơ-ron, chúng có ưu điểm là xử lý song song nên tốc độ xử lý rất nhanh và có thể huấn luyện để xấp xỉ một hàm phi tuyến bất kỳ.
3.4.2. Các mơ hình tích hợp
Mơ hình tích hợp thứ nhất được trình bày trong Hình 3.4 [56]. Trong đó, bộ điều khiển mờ thực hiện chức năng mơ tả hoạt động của hệ thống cung cấp thông tin cho mạng nơ-ron hoạt động. Mạng nơ-ron thực hiện ra quyết định và có thể được điều chỉnh bằng cách tự huấn luyện để cho kết quả mong muốn.
Điều khiển mờ Mô tả hoạt động của hệ thống Mạng nơron Giải thuật huấn luyện Đầu ra Mơ hình tích hợp mờ là đơn vị ra quyết điều chỉnh các tham số Hình 3.4. Mơ hình hệ mờ nơ-ron
thứ hai được trình bày trong Hình 3.5 [56]. Trong đó, bộ điều khiển định thực thi, mạng nơ-ron được sử dụng để nhận dạng hệ thống, của hệ mờ để điều khiển hệ thống hoạt.
Mạng nơron Điều khiển mờ
Giải thuật huấn luyện
Đầu ra
Hình 3.5. Mơ hình hệ nơ-ron mờ
Với mục tiêu là sử dụng mạng nơ-ron điều chỉnh các tham số của bộ điều khiển mờ AFC nhằm tìm bộ tham số tối ưu, đề tài sử dụng mơ hình nơ-ron mờ để xây dựng hệ thống tích hợp lập luận mờ với mạng nơ-ron và được trình bày sau đây.
3.5. Xây dựng mơ hình mạng nơ-ron mờ FNN cải tiến AQM
Trong Chương 2 đã trình bày việc xây dựng bộ điều khiển mờ thích nghi AFC để cải tiến các cơ chế AQM và đã đem lại hiệu quả tốt hơn cho các cơ chế. Tuy nhiên, để bộ điều khiển mờ AFC hoạt động hiệu quả thì cần có bộ tham số tối ưu cho nó. Đề tài, đề xuất mơ hình hệ nơ-ron mờ, được gọi là FNN để giải quyết vấn đề này.
3.5.1. Mơ hình mạng nơ-ron mờ FNN
Mơ hình mạng nơ-ron mờ FNN được trình bày trong Hình 3.6. Mơ hình này được sử dụng để huấn luyện bộ điều khiển mờ thích nghi AFC bằng thuật tốn lan truyền ngược cải tiến IBP (mục 3.3.3) như sau:
Khởi tạo mơ hình mờ mẫu Khởi tạo tham số huấn luyện
Hình 3.6. Mơ hình mạng nơ-ron mờ FNN cải tiến AQM
Thành phần của mơ hình FNN gồm có hai khối chính: khối thực thi hệ thống là bộ điều khiển mờ AFC được xây dựng trong Chương 2 và khối huấn luyện IBP để bộ điều khiển mờ AFC tìm bộ tham số tối ưu.
Bộ điều khiển mờ AFC là bộ điều khiển mờ thích nghi được xây dựng có các thành
phần: bộ điều khiển mờ, cơ cấu thích nghi, mơ hình mẫu , các hệ số đầu vào và hệ số đầu ra .
3.5.2. Hoạt động của bộ điều khiển nơ-ron mờ FNN
Bước 1: Bộ điều khiển mờ thích nghi AFC thực hiện tính các giá trị ngõ vào ( ), ( − ) là độ sai lệch ngõ ra với giá trị tham chiếu và được chuẩn hóa
trong đoạn [−1,1] nhờ các hệ số đầu vào, trước khi đưa vào hệ mờ.
Bước 2: Hệ mờ của AFC thực hiện mờ hóa các giá trị đầu vào, sử dụng hệ luật mờ và giải mờ để tính xác suất ( ). Xác suất này được tinh chỉnh nhờ hệ số
ở đầu ra để cho xác suất thực đánh dấu/ cho rơi gói tin ( ).
Bước 3: Số liệu ở ngõ ra của bộ điều khiển mờ AFC được tập hợp thành mẫu dữ liệu cho
q trình huấn luyện bởi thuật tốn lan truyền ngược cải tiến IBP. Mẫu dữ liệu hợp lệ là các mẫu có dạng { ( ), ( − ), } được cập nhật theo chu kỳ hoạt động của bộ điều khiển mờ AFC.
Bước 4: Nếu sai số cực tiểu nhỏ hơn hay bằng sai số tối ưu ( trong IBP) thì hệ thống
đạt tối ưu và kết thúc, ngược lại thì FNN huấn luyện AFC bằng IBP để tìm được bộ tham số tối ưu cho bộ điều khiển mờ AFC.
3.6. Xây dựng bộ điều khiển nơ-ron mờ FNN
3.6.1. Tạo nơ-ron mờ cho FNN
Nơ-ron mờ là nơ-ron kết hợp tín hiệu và trọng số dùng các phép tốn T-norm, T-conorm (S-norm). Hình 3.7 trình bày các dạng nơ-ron mờ như sau:
y=T(S(w1 , x1 ),S(w2, x2 )) y=S(T(w1 , x1 ),T(w2 , x2 )) ∧ ∨ w1 w2 w1 w2 ∨ ∨ ∧ ∧ x1 x2 x1 x2
a) Nơ-ron mờ dạng AND b) Nơ-ron mờ dạng OR
Hình 3.7. Các dạng nơ-ron mờ
Nếu dùng phép tốn T-norm để xây dựng thì ta có nơ-ron mờ dạng AND và dùng phép tốn S-norm thì ta có nơ-ron mờ dạng OR. Hình 3.7a trình bày cấu trúc nơ-ron mờ AND và Hình 3.7b trình bày cấu trúc nơ-ron mờ OR.
3.6.2. Xây dựng mạng nơ-ron mờ FNN
Mạng FNN để huấn luyện dữ liệu của bộ điều khiển mờ để tìm bộ tham số tốt nhất cho bộ điều khiển mờ. Cấu trúc mạng FNN được trình bày trong Hình 3.8 sau:
y(t)
Lớp ra Giải mờ
Lớp ẩn ∨ ∨ ∨ Kết quả
Lớp ẩn ∧ ∧ ∧ Luật suydiễn
Lớp vào Mờ hóa
e(t) e(t-T)
Hình 3.8. Cấu trúc mạng nơ-ron mờ FNN
Đầu vào (Input): Biến đầu vào của FNN là sự độ lệch của giá trị đầu ra tức thời ( ) của bộ điều khiển mờ thích nghi so với giá trị đầu ra tham chiếu ( ) tại hai thời điểm liên tiếp là và ( − ).
Biểu thức ( ) = − ( ) xác định lỗi thời điểm hiện tại và ( − ) = − ( − ) là xác định lỗi thời điểm sau khi trễ một thời
gian (ở chu kỳ lấy mẫu trước đó). Các sai lệch về lỗi ở đầu vào được chuẩn hóa trong đoạn [−1,1] trước khi được đưa đến lớp vào để mờ hóa.
Lớp mờ hóa (Fuzzifier Layer): là lớp vào của mạng nơ-ron, lớp này thực hiện chức
năng mờ hóa giá trị các biến ở đầu vào, sẽ truyền mỗi giá trị của đầu vào để thiết lập ngôn ngữ tương ứng. Để việc điều khiển của bộ điều khiển trơn và mịn thì FNN dùng phương
pháp giải mờ theo dạng hình chng. FNN chia miền giá trị của ( ) và e( − ) đã được chuẩn hóa trong miền giá trị
[−1,1] thành 7 miền hoặc 9 miền giá trị mờ (bằng số miền của các cơ chế cải tiến bởi bộ điều khiển mờ thích nghi trong
Chương 2).
Lớp luật suy diễn (Rule Layer): là lớp ẩn của mạng nơ-ron, lớp này chứa các luật cơ sở để suy diễn. FNN dùng bộ luật của AFC.
Lớp kết quả (Consequent Layer): là lớp ẩn thứ hai của mạng nơ-ron, lớp này thực hiện chức năng tính tổng kết quả các nút ở lớp luật suy diễn gửi tới bằng phép hợp thành.
Lớp giải mờ (Defuzzifier Layer): là lớp ra của mạng nơ-ron, lớp thực hiện chức năng giải mờ từ lớp kết quả, đầu ra của lớp này là tính được xác suất đánh dấu gói tin tối ưu theo trạng thái hiện tại của mạng. Bộ điều khiển mờ sẽ quyết định giá trị của xác suất đánh dấu/ loại bỏ gói tin, đại diện cho đầu ra của hệ mờ.
3.6.3. Huấn luyện mạng nơ-ron mờ FNN
Mục tiêu của huấn luyện mạng FNN là để chọn được bộ tham số mờ tốt cho bộ điều khiển mờ AFC của các cơ chế AQM. Quá trình huấn luyện dựa trên mẫu dữ liệu có được từ hoạt động của các cơ chế AQM trong mạng TCP/IP. Mẫu dữ liệu cho quá trình chỉnh định ở một thời điểm bất kỳ chính là đầu vào và đầu ra thực tế của hệ thống TCP/AQM. Tùy thuộc vào độ chính xác yêu cầu và thời gian tính tốn của hệ thống mà tiến hành lựa chọn số lượng mẫu dữ liệu cũng như khoảng thời gian giữa các lần lấy mẫu.
Dựa trên kết quả mô phỏng các cơ chế (mục 2.6.2) trong Chương 2, hầu hết các cơ chế AQM đều ổn định sau 5-8 giây. Vì vậy, trong các đề xuất sử dụng FNN sau này, đề tài lựa chọn lấy mẫu trong 10s đầu bao gồm cả giai đoạn quá độ và giai đoạn xác lập và số mẫu dữ liệu để học là 100. Việc lựa chọn 100 mẫu là vì chu kỳ lấy mẫu sẽ là 0,1s, phù hợp so sánh với các cơ chế AQM khác. Việc lấy nhiều mẫu hơn sẽ làm cho bài tốn tối ưu chính xác hơn, nhưng kéo theo đó là độ phức tạp và thời gian tính tốn lúc đó sẽ lớn hơn.
3.6.4. Chỉnh định tham số hàm thuộc của AFC
Vấn đề đặt ra là cần tìm các luật học để cập nhật bộ các thông số điều chỉnh lớp vào (lớp mờ hóa) cho mạng, khi sử dụng hàm thuộc ở lớp này ở dạng hình chng:
µ j ( xi ) =
Luật cập nhật bộ thông số điều chỉnh trong q trình học được tính từ cơng thức (3.15)
đến cơng thức (3.22) như sau [36][45][56]:
a j i b j i c j i p j i (3.15) (3.16) (3.17) (3.18)
Với , , , là các hệ số , , của hàm thuộc được tính:
∂E ∂a
i
học và đạo hàm riêng của sai số
)( f
m
đối với các tham số
∂E = ∂b ( x ) j M i i j =1 ∂E = j ∂ci ( xi ) j =1 ∂E j ∂p i j =1 (3.20) (3.21) (3.22)
3.7. Xây dựng thuật toán lan truyền ngược cải tiến IBP
Thuật toán lan truyền ngược được áp dụng trong hầu hết các mơ hình mạng nơ-ron. Tuy nhiên, điều này khơng có nghĩa là mạng lan truyền ngược là hồn hảo và vẫn có những khiếm khuyết khơng thể tránh khỏi trong thuật tốn của nó. Ví dụ, rơi vào một phần cực tiểu của phần địa phương trong quá trình huấn luyện, tốc độ hội tụ là khá chậm. Vì vậy, đề tài đề xuất một số cải tiến lan truyền ngược thơng qua việc chuẩn hóa số liệu đầu vào đầu ra, bổ sung hệ số quán tính và điều chỉnh tốc độ học, tạm gọi thuật tốn cải tiến này là IBP.
3.7.1. Chuẩn hóa số liệu đầu vào ra
Mạng Perceptron nhiều lớp thường sử dụng hàm chuyển là hàm sigmoid, giá trị ở
đầu ra của mỗi nơ-ron nằm trong phạm vi khoảng (0,1) và nó đạt các giá trị bão hồ (xấp xỉ 0 hay 1 ) khi | | lớn. Do đó, khi đầu vào của mạng có giá trị tuyệt đối lớn thì ta cần chuẩn hố nó về khoảng có giá trị nhỏ, nếu khơng thì ngay ban đầu các nơ-ron tại các lớp ẩn đã có thể đạt giá trị bão hồ và q trình học của mạng khơng đạt kết quả mong muốn. Với dạng hàm như trên thì giá trị đầu vào của mạng nên được chuẩn hoá về khoảng thuộc đoạn [−1, 1]. Vì điều này, đề tài chuẩn hóa miền giá trị cho các biến đầu vào của bộ điều khiển mờ trong đoạn [−1,1].
Mặt khác, do tín hiệu đầu ra của nơ-ron nằm trong khoảng giá trị (0,1) nên các giá trị đầu ra thực tế trong các mẫu học cũng cần chuẩn hố về khoảng giá trị này để có thể dùng cho q trình luyện mạng. Do vậy trong q trình tính tốn, để có các giá trị thực tế ở đầu ra của mạng chúng ta cần phải chuyển các giá trị trong khoảng (0,1) về miền các giá trị thực tế.
3.7.2. Bổ sung hệ số quán tính
Tốc độ học của giải thuật lan truyền ngược sai số có thể rất chậm nếu hằng số học nhỏ, nhưng nếu hằng số học lớn thì nó lại có thể gây ra sự dao động lớn trong quá trình tìm giá trị cực tiểu theo phương pháp giảm Gradient. Để giải quyết vấn đề này, ta thêm thành phần qn tính vào các phương trình hiệu chỉnh trọng số sau [45]:
∆w(t + 1) = α∆w(t) + η (1 −α)
(3.23)
Trong công thức (3.23), ∆ ( + 1) và ∆ ( ) biểu diễn sự biến thiên của các trọng số tại các thời điểm thứ + 1 và . Giá trị hệ số quán tính α được chọn trong đoạn [0,1], thông thường là 0.9. Biểu thức / thể hiện biến thiên lỗi theo phương pháp giảm
Gradient theo hàm lỗi.
Nhờ thành phần này, q trình học có thể vượt qua điểm cực tiểu địa phương để tìm đến điểm cực tiểu tồn cục, đồng thời thành phần quán tính cũng ngăn cản sự thay đổi đột ngột của các trọng số theo hướng khác với hướng mà lời giải đang di chuyển đến. Mặt khác, phương pháp này đã đẩy nhanh tốc độ hội tụ của quá trình huấn luyện mạng.
3.7.3. Điều chỉnh tốc độ học
Tốc độ học hằng số có thể phù hợp ở thời điểm bắt đầu của quá trình học nhưng lại khơng phù hợp với giai đoạn sau của q trình học. Do đó, nên sử dụng hằng số học thích
nghi để điều chỉnh tốc độ học cho phù hợp tình trạng mạng. Một cách xử lý đơn giản cho vấn đề này đó là kiểm tra xem các trọng số mới có làm giảm sai số hay khơng, nếu khơng thì có thể các trọng số đã vượt quá xa vùng cực tiểu và như vậy hằng số học cần phải giảm. Trái lại, nếu sau vài vịng lặp hàm giá liên tục giảm thì ta có thể thử tăng hằng số để đẩy nhanh hơn tốc độ hội tụ đến giá trị cực tiểu. Công thức (3.24) xác định hằng số học được điều chỉnh như sau [45]:
η (t + 1) = (3.24)
trong đó là yếu tố tăng tốc độ học, > 1 thường là 1.05. Yếu tố làm giảm tốc độ học là , 0< < 1 thường là 0.7. Các giá trị ( + 1) và ( ) là tổng các lỗi trung bình bình qn sai số được tính tại các thời điểm (t + 1) và (t).
3.7.4. Thuật toán lan truyền ngược cải tiến
Thuật toán lan truyền ngược cải tiến IBP dựa trên thuật toán lan truyền ngược truyền thống, nhưng được bổ sung hệ số quán tính α để điều chỉnh hằng số học, tốc độ