1. Trang chủ >
  2. Kinh Doanh - Tiếp Thị >
  3. Quản trị kinh doanh >

Chương IV: Ứng dụng mạng Noron nhiều lớp lan truyền ngược sai số dự báo phụ tải ngắn hạn theo nhiệt độ môi trường

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.35 MB, 125 trang )


Header Page 60 of 166.

59



đợc Bryson và Ho đề xuất từ năm 1969, nhng phải tới giữa năm 1980 vấn

đề này mới đợc quan tâm trở lại bởi công trình nghiên cứu của Rumelhart

năm 1986. Một thống kê cho thấy 90% ứng dụng mạng nơron trong công

nghệ hoá học sử dụng mô hình này.

4.1.1 Kiến trúc mạng truyền thẳng.

Mạng truyền thẳng nhiều lớp bao gồm một lớp vào, một hoặc nhiều lớp

ẩn và một lớp ra. Trong đó các nơron lớp thứ i đợc nối đầy đủ với các nơron

lớp thứ i+1, các nơron trong cùng một lớp không liên kết với nhau. Các nơron

đầu vào có nhiệm vụ tiếp nhận các dữ liệu đầu vào và chuyển cho lớp ẩn kế

tiếp. Trong nhiều ứng dụng thực tế, để đơn giản, ngời ta thờng sử dụng

mạng có một lớp ẩn, số nơron trong lớp ẩn đợc xác định dựa trên kinh

nghiệm, hoặc dựa trên kỹ thuật tìm kiếm khác nhau. Hình 4.1 là cấu trúc của

mạng truyền thẳng 2 lớp.

Lớp vào: Là các nơron nhận các biến đầu vào xi với i=1,2n, n là số

biến đầu vào. Các nơron lớp vào nhận giá trị các biến đầu vào, dữ liệu

của tất cả các nơron ở lớp đầu vào đợc tính toán rồi chuyển kết quả

cho các nơron lớp ẩn

Lớp ẩn: Bao gồm các nơron yj với j=1,2..m. Các nơron lớp ẩn nhận tín

hiệu từ nơron lớp vào qua bộ trọng số W1

Lớp ra: Bao gồm các nơron đa ra giá trị zk với k=1,2..l. Các nơron lớp

ra nhận tín hiệu từ nơron lớp ẩn qua bộ trọng số W2. Mỗi nơron đầu ra

tơng ứng với 1 biến đầu ra.

Trong mạng lan truyền ngợc tín hiệu đợc lan truyền từ lớp vào đến lớp

ra và mạng thực hiện ánh xạ để tính giá trị cho các biến đầu ra dựa vào các giá

trị biến đầu vào. Ban đầu giá trị các biến vào đợc chuyển cho các nơron lớp

vào của mạng, dữ liệu của tất cả các nơron ở lớp đầu vào đợc tính toán rồi



Footer Page 60 of 166.



Header Page 61 of 166.

60



chuyển kết quả cho các nơron lớp ẩn. Cuối cùng mỗi nút ẩn gửi kết quả đến tất

cả các nơron ra. Giá trị của các nút đầu ra chính là giá trị của các biến đầu ra

cần xác định.

Lp vo



x1



x2



w1ji



H4



Lp n



Lp ra



x3



H5



w2ij

zi



O6



Hình 4.1. Cấu trúc mạng nơron 2 lớp.

4.1.2. Huấn luyện mạng

Mạng nơron nhiều lớp lan truyền ngợc sai số chỉ có thể ở hai trạng thái

đó là trạng thái học và trạng thái ánh xạ. Bản chất của trạng thái ánh xạ do

mạng thực hiện tùy thuộc vào giá trị của các trọng số trong mạng. Lan truyền

ngợc là một phơng pháp cho phép xác định tập trọng số tốt nhất của mạng,

đây là một quá trình lặp đi lặp lại nhiều lần trong hai quá trình ánh xạ và lan

truyền ngợc sai số. Hai quá trình này đợc thực hiện trên tập mẫu cố định.

Hai quá trình này đợc gọi là huấn luyện mạng. Trong trạng thái học, thông

tin lan truyền theo hai chiều nhiều lần để huấn luyện các trọng số. Quá trình

huấn luyện mạng đợc bắt đầu với tập trọng số tuỳ ý, có thể là các giá trị ngẫu

nhiên nhỏ và tiến hành lặp đi lặp lại. Mỗi lần lặp đợc gọi là một thế hệ, trong

mỗi thế hệ mạng điều chỉnh các trọng số sao cho sai số giảm dần. Quá trình

điều chỉnh nhiều lần sao cho trọng số dần dần đạt đợc tập hợp các giá trị tối

u.



Footer Page 61 of 166.



Header Page 62 of 166.

61



Quá trình huấn luyện mạng nơron nhiều lớp lan truyền ngợc sai số là

quá trình học có giám sát với tập mẫu {( Xs, Ds)}. Thủ tục học có thể tóm lợc

nh sau:

Mỗi khi đa một mẫu Xs = ( x1,.,xn) vào mạng, ta thực hiện các công

việc sau:

1. Lan truyền mẫu Xs qua mạng để có Zs = T( Xs ). Hàm T(.) là hàm phi

tuyến phụ thuộc vào cấu trúc mạng nơron.

Lớp ẩn Y:

- Tổng thông tin đầu vào của lớp ẩn Y có trọng số là:

n



aj =



w



1

ji



i =1



xi



(4.1)



- Với hàm kích hoạt của các nơron f(.), giá trị output của các nơron

ở lớp ẩn Y đợc xác định:

yj = f(aj)



(4.2)



Lớp ra Z:

- Tổng thông tin đầu vào của lớp ra Z có trọng số là:

m



bk =



w

j =1



2

kj



yj



(4.3)



- Giá trị output của các nơron ở lớp ra Z đợc xác định:

zk = f(bk)



(4.4)



2. Tính sai số truyền ngợc Errs của mạng dựa trên sai lệch DS-ZS.

Tính sai số của lớp ra z

- Sai số Errs của lớp ra Z dựa trên sai lệch giữa giá trị ra thực tế và

mẫu.



Footer Page 62 of 166.



Header Page 63 of 166.

62



Errk = dk-zk



(4.5)



Với errk là sai số thành phần thứ k trong Errs.

- Sai số của nơron thứ k của lớp ra Z đợc xác định:

k = errk f(bk) = (dk-zk)zk = (dk-zk)f(bk)



(4.6)



Trờng hợp xét hàm kích hoạt tại các nơron

f(x) =

ta có hệ thức



1

1 + e x



(4.7)



f(x) = f(x)(1-f(x) )



(4.8)



f(.) là đạo hàm của hàm kích hoạt đợc dùng trong các nơron.

Thay (4.8) vào (4.6) ta có:

k = (dk-zk)zk = (dk-zk) fk (1-fk)



hay



k= (dk-zk)zk = (dk-zk) zk (1-zk)



(4.9)



Sai số của nơron thứ j của lớp ẩn Y

j =



l



k wkj2 y j ' =

k =1



l





k =1



k



wkj2 f ' (a j )



(4.10)



Sử dụng hàm kích hoạt (4.7) ta có:

j=



l



k wkj2 y j ' =

k =1



l



l



k =1



k =1



k wkj2 f ' (a j ) = k wkj2 y j (1-yj) (4.11)



3. Hiệu chỉnh các trọng số liên kết nơron dẫn tới lớp ra Wij từ nơron j tại

lớp ẩn cuối cùng tới nơron k tại lớp ra:

Hiệu chỉnh w2kj của lớp ra Z.

w2*kj = w2(t)kj + yj k

Trong đó:



Footer Page 63 of 166.



(4.12)



Header Page 64 of 166.

63



- là hệ số học

- w2(t)kj là giá trị trọng số hiện thời từ nơron thứ j tới k

- w2*kj là giá trị trọng số đợc hiệu chỉnh từ nơron thứ j tới k

Từ công thức (4.12) ta có thể viết:

w2kj = w2kj + w2kj



(4.13)



với w2kj = yj k

Trong các ứng dụng thực tế, ngời ta thờng hiệu chỉnh w2ij theo

nguyên tắc có chú ý đến các thao tác trớc đó. Do vậy:

w2*kj = w2(t)kj + yj k + (w2(t)kj - w2(t-1)kj)



(4.14)



với wkj 2(mới) = yj k + wkj2(cũ) ở đây là hệ số quán tính.

Hiệu chỉnh w1ij của lớp ẩn Y

Tơng tự, trọng số w1ji đợc hiệu chỉnh theo công thức sau:

w2*ji = w2(t)ji + + xi j



(4.15)



Trong các ứng dụng thực tế, ngời ta thờng hiệu chỉnh w2ij theo

nguyên tắc có chú ý đến các thao tác trớc đó. Do vậy:

w1*ji = w1(t)ji + xi j + (w1(t)ji w1(t-1)ji)



(4.16)



wij 1(mới) = xi j + wij1(cũ)



Quá trình huấn luyện cần chú ý tới các yếu tố sau:

- Các trọng số ban đầu wij đợc gán các giá trị ngẫu nhiên, nhỏ

- Lựa chọn các hệ số học và hệ số quán tính sao cho + 1, với

không lớn hơn quá nhiều.



Footer Page 64 of 166.



Header Page 65 of 166.

64



- Các tín hiệu vào, ra nên đợc định cỡ chỉ nằm trong khoảng [0, 1].

Các nghiên cứu thực nghiệm chỉ ra rằng nên ở trong khoảng [0.2,

0.8].

4.1.3. Sử dụng mạng

Giả sử đã huấn luyện mạng nh trên hình 4.1 với tập mẫu {( Xs, Ds)}

để đợc ma trận trọng số W. Quá trình lan truyền trong mạng một véctơ tín

hiệu vào X = ( x1, x2, x3) đợc cho bởi:

z = f(w211y1+ w212y2) = f(w211f(w111x 1 + w112x 2 + w113x 3) +

w212f(w121x 1 + w122x 2 + w123x 3)) = F ( X, W)

Khả năng tính toán của mạng nhiều lớp

- Với một lớp ẩn, mạng có thể tính toán xấp xỉ một hàm liên tục bất kỳ

đối với các biến tơng ứng là các tín hiệu đầu vào.

- Với hai lớp ẩn, mạng có thể tính toán xấp xỉ một hàm bất kỳ. Tuy vậy,

số nơron trong các lớp ẩn có thể tăng theo hàm mũ đối với số đầu vào

và cho đến nay vẫn cha có những cơ sở lý luận đầy đủ để khảo sát họ

các hàm có thể xấp xỉ nhờ các mạng nhiều lớp.

4.1.4. Nghiên cứu sự hội tụ và độ phức tạp của quá trình huấn luyện

mạng.

Phơng pháp hiệu chỉnh trọng số nơron (4.12) và (4.15) dựa trên

nguyên tắc lan truyền ngợc sai số có thể lý giải dựa trên nguyên lý tìm kiếm

gradient trong không gian các tham số W sao cho cực tiểu hàm sai số tổng

cộng:

E(w) =



Footer Page 65 of 166.



1

2



l



(d

k =1



k



zk )



(4.17)



Header Page 66 of 166.

65



ở đây, dk là giá trị thực nghiệm quan sát đợc tại nơron k ở lớp ra, zk là

giá trị tính toán của mạng tại nơron thứ k ở lớp ra đối với mẫu Xs.

Khai triển E(w) theo các trọng số thành phần, ta có:

1

E(w) =

2



2





k









d k f w 2 kj y j = 1







2

j















k d k f j w 2 kj f i w1 ji xi









2



Lấy đạo hàm riêng của E theo các trọng số w2ij và w1ji ta có:

E

= -yj (dk zk) f(bk) = -yjk

wkj2

E

= -xi(dk zk)f(bk)w2kjf(ai) = -xiw2kjkf(ai) =-xij

1

w ji



Việc hiệu chỉnh véctơ trọng số W = (wkj) sao cho E(w) min dẫn tới

việc xác định véctơ gia số w = ( wkj) ngợc hớng với véctơ gradient (

E wkj ). Nói cách khác,



w2kj = -(-yjk)= yjk.

w1ji =-(-xij)= xij



Công thức này phù hợp với công thức (4.12) (4.15) tơng ứng.

Độ phức tạp thời gian của mạng nhiều lớp chủ yếu phụ thuộc vào thời

gian huấn luyện mạng với một tập mẫu nào đó. Giả sử có m mẫu vào và W

trọng số. Mỗi lần đa tất cả các mẫu đi qua mạng (gọi là vòng lặp (epoch))

phải tốn O(m W ) thao tác nơron. Trong trờng hợp xấu nhất, số vòng lặp lại

sẽ phụ thuộc hàm mũ vào số đầu vào n. Do vậy, chi phí thời gian sẽ là

O(k n m W ).

Hơn nữa quá trình học không phải lúc nào cũng hội tụ và có thể dẫn

tới các cực tiểu địa phơng của hàm E. Khi dùng mạng nơron nhiều lớp để



Footer Page 66 of 166.



Header Page 67 of 166.

66



biểu diễn tất cả các hàm logic có n đầu vào, ta phải dùng khoảng 2 n n nút ẩn,

mạng này có khoảng O(2 n ) trọng số, do vậy phải tiêu tốn O(2 n ) bit để biểu

diễn hàm logic.

Bắt đầu



Vào số nơron vào, ẩn, ra, số mẫu, E0

chọn , w kj , w1ji giá trị bất kỳ trong khoảng [0,1], số vòng học

2



Ek = 0

Bớc lặp it = l



Mẫu p = l



Tính yk và zk



Tính W1, W2 mới



P=P+1



It = it + 1



Tính Ek

Sai

Nếu p > PN

Đúng

Sai

Nếu Ek/NP/ZN
Đúng

Kết thúc



Hình 4.2. Sơ đồ khối trình tự các bớc của thuật toán tạo lập mạng lan

truyền ngợc sai số.



Footer Page 67 of 166.



Header Page 68 of 166.

67



Sau mỗi bớc lặp, các giá trị của các hệ số trọng lợng đợc hiệu chỉnh

dần. Quá trình học đợc dừng lại E(w) giảm đến một giá trị nào đó, kết thúc

quá trình huấn luyện mạng sẽ cho đáp ứng đầu ra tơng ứng với các tín hiệu

đầu vào. Các giá trị của hệ số trọng lợng sẽ không đổi sau khi kết thúc quá

trình huấn luyện. Trong quá trình huấn luyện mạng nơron đợc nhận biết mối

quan hệ giữa các thông số đầu vào là biến X và các thông số đầu ra mẫu là

biến Y, sau khi kết thúc quá trình huấn luyện đầu ra của mạng là các giá trị Z.

Z là một hàm phi tuyến phụ thuộc vào X.

4.1.5. Một số vấn đề về mạng nơron nhiều lớp.

Mạng nơron nhiều lớp truyền thẳng là cách biểu diễn các đối tợng dựa

trên các giá trị của các thuộc tính tơng đối hiệu quả, tuy rằng chúng cha vét

cạn hết mọi khía cạnh khác nhau về đối tợng đó. Cách tiếp cận mạng loại

này tỏ ra khá hiệu quả khi các quan sát (tín hiệu vào) có miền giá trị liên tục.

Do vậy, có thể xem là tốt hơn so với những cách tiếp cận truyền thống dựa

trên logic mệnh đề và cây quyết định.





Khả năng tổng quát hoá: mạng loại này có thể đa ra những kết quả



mang tính tổng quát hoá, tuy rằng kiểu phụ thuộc giữa đầu ra và đầu vào

không quá rối rắm.





Khả năng dung thứ lỗi: mạng đợc luyện mẫu theo quy tắc tuyến tính



nên có thể nhấp nhận sai số trong tập dữ liệu vào. Tuy vậy, mạng không thể

đa ra đợc những kết quả tính toán không chắc chắn, không chính xác kiểu

nh mạng Bayes.





Mạng đợc sử dụng nh một hộp đen, biểu thị quan hệ nào đó giữa tín



hiệu ra và tín hiệu vào, mà không cần chỉ rõ dạng giải tích tờng minh của

mối quan hệ đó. Tuy vậy, điểm bất lợi của cách tiếp mạng chính là ở chỗ

không thể lý giải các kết quả ra một cách rõ ràng nh đối với suy diễn logic

hay cây quyết định.



Footer Page 68 of 166.



Header Page 69 of 166.

68



4.2. ứng dụng mạng nơron nhiều lớp lan truyền ngợc sai số xây dựng

bài toán dự báo phụ tải hệ thống điện.

4.2.1. Các bớc xây dựng bài toán dự báo phụ tải.

Qua nhiều năm nghiên cứu và thực nghiệm ngời ta đã chứng tỏ rằng cách

tiếp cận các bài toán dự báo bằng cách sử dụng mạng nơron huấn luyện bởi

thuật toán lan truyền ngợc là hoàn hảo và đảm bảo độ chính xác cao. Nhng

để đạt đợc mục tiêu trên ta phải nghiên cứu và huấn luyện để lựa chọn tối u

các tham số cần thiết của mạng nơron:

- Số lớp ẩn(thờng dùng 1 lớp)

- Kích thớc các lớp ẩn

- Hệ số học

- Hệ số quán tính: thờng phải lựa chọn hệ số học và hệ số quán tính sao

cho + 1 với không lớn hơn quá nhiều.

- Các tín hiệu vào, nên chuẩn hoá sao cho tín hiệu vào nằm trong khoảng

[0;1]. Các nghiên cứu thực nghiệm đã chỉ ra tín hiệu vào nên nằm trong

khoảng [0.2,0.8]

- Dạng hàm kích hoạt: Thờng chọn hàm Sigmoid không cực

f(x) =



1

1 + e x



- Khởi tạo trọng số ban đầu: Các giá trị ban đầu cần gán giá trị ngẫu

nhiên nhỏ nằm trong khoảng [0;1]

Bài toán dự báo là một bài toán phức tạp, cả về số lợng dữ liệu đa vào

cũng nh độ chính xác dữ liệu cần dự báo. Từ trớc đến nay ngời ta đã đa ra

nhiều phơng pháp dự báo khác nhau nh phơng pháp: Hồi quy tuyến tính,

Phơng pháp ngoại suy theo thời gian



Footer Page 69 of 166.



Header Page 70 of 166.

69



Tuy nhiên đến thời điểm này đối với các bài toán dự báo phức tạp, đòi hỏi

độ chính xác cao ngời ta thờng dùng thuật toán lan truyền ngợc để ứng

dụng trong các lĩnh vực dự báo, nhận dạng, phân lớp. Các bớc chính trong

quá trình thiết kế và xây dựng một ứng dụng dựa trên mạng nơron nhiều lớp

lan truyền ngợc sai số bao gồm:

Bớc1: Lựa chọn các biến đầu vào

Đối với bài toán dự báo phụ tải điện, giá trị phụ tải và nhiệt độ tơng ứng

từng giờ là các dữ liệu đầu vào cho mạng.

Bớc2: Thu thập dữ liệu

Xem xét khả năng thu thập dữ liệu, các dữ liệu sau khi thu thập đợc cần

phải kiểm tra tính hợp lệ của chúng.

Bớc3: Xử lý dữ liệu

Dữ liệu đầu vào thực chất là các giá trị của tham số đầu vào đầu ra để tối

thiểu hoá nhiễu. Vì các đầu vào dữ liệu phụ tải và nhiệt độ rất lớn nên ta phải

chuẩn hoá sao cho các giá trị dữ liệu đầu vào ở trong khoảng [0.2,0.8].

Bớc 4: Phân chia tập dữ liệu

Để huấn luyện mạng ta phải chia tập dữ liệu thành tập huấn luyện và tập

kiểm tra. Tập huấn luyện thờng là lớn hơn tập kiểm tra, tập huấn luyện

thờng chứa khoảng 70% - 90% toàn bộ tập dữ liệu. Tập kiểm tra sử dụng để

kiểm tra tính đúng đắn của mạng sau khi đã huấn luyện, có hai cách xác định

tập kiểm tra, một là lấy ngẫu nhiên các mẫu từ tập huấn luyện ban đầu, hai là

chỉ lấy tập dữ liệu gần với hiện tại hơn vì nó quan trọng hơn các dữ liệu trong

quá khứ.

Bớc 5: Xác định cấu trúc mạng

Để xây dựng một mạng nơron hoàn chỉnh, ta cần xác định các yếu tố sau:



Footer Page 70 of 166.



Xem Thêm
Tải bản đầy đủ (.pdf) (125 trang)

×