Thiết kế lưới địa chính đo vẽ bản đồ địa chính tỷ lệ 1/500-1/2000 khu vực thị xã Rạch Giá, huyện Châu Thành tỉnh Kiên Giang

Lời nói đầu ! Ngày nay, trong các ngành công nghiệp, ngành điện lực giữ vai trò rất quan trọng vì nó phải đáp ứng kịp thời, liên tục nhu cầu về cung cấp điện cho tất cả các ngành công nghiệp và sản xuất. Vì thế, muốn phát triển nền kinh tế trước tiên phải đầu tư và phát triển hệ thống cung cấp điện. Việc đầu tư vàa(hát triển lưới điện đòi hỏi phải dự đoán được điện năng tiêu thụ trong tương lai. Điều này chúng ta phải dùng đến các mô hình dự báo. Lựa chọn và áp dụng đúng các mô hình dự báo là một việc làm hết sức quan trọng, nó ảnh hưởng đến kết quả dự báo, do đó quyết định hiệu quả của việc đầu tư. Hiện nay, có rất nhiều mô hình dự báo được áp dụng vào việc dự báo điện năng. Nhưng đôi khi những mô hình dự báo đó không đáp ứng được yêu cầu của thực tế . Do đó, chúng ta phải đi tìm mô hình mới thích hợp hơn. Cùng với việc phát triển của ngành công nghiệp máy tính, mô hình dự báo bằng mạng Neural cũng rất phát triển với những giải thuật như giải thuật truyền ngược sai số ( BackPropagation), Kohonen, cho phép chúng ta áp dụng dễ dàng vào việc dự báo. Trong nội dung luận văn này, xin giới thiệu một số mô hình dự báo thường dùng hiện nay, kết quả của một số mô hình dự báo. Đồng thời nghiên cứu và thiết kế một mô hình dự báo mới sử dụng mạng Neural ứng dụng để dự báo phụ tải theo hai phương pháp: Chuỗi thời gian và phương pháp Tương quan. Và đi sâu nghiên cứu về dự báo phụ tải ngắn hạn theo phương pháp chuỗi thời gian bằng mô hình mạng Neural. Chương trình được lập trình bằng ngôn ngữ Visual Basic 6.0 và giao diện được hỗ trợ trên Win 98, 2000, Me, XP, MỤC LỤC Lời cảm ơn Nhận xét của giáo viên Lời nói đầu Mục lục Chương I: TỔNG QUAN VỀ MẠNG NEURAL I. LỊCH SỬ PHÁT TRIỂN CỦA MẠNG NEURAL 1 II. MẠNG NEURAL VÀ CÁC KHÁI NIỆM CƠ BẢN 2 II.1. Giới thiệu về mạng Neural 2 II.2. Cấu trúc và phân loại mạng Neural 6 II.2.1. Phân loại theo cấu trúc 6 II.2.2. Phân loại theo phương pháp dạy 7 II.3. Cấu trúc mạng Neural 8 II.3.1. Mạng Neural một lớp 8 II.3.1. Mạng Neural nhiều lớp 9 III. LUẬT HỌC VÀ CÁC PHƯƠNG PHÁP DẠY MẠNG 11 III.1. Luật học sữa lỗi 11 III.2. Luật học Hebbian 11 III.3. Luật học cạnh tranh 13 III.4. Giải thuật học Delta 13 III.5. Giải thuật học Delta tổng quát 16 III.6. Các mạng nuôi tiến và giải thuật truyền ngược 19 V. KHÁI QUÁT MỘT SỐ MẠNG NEURAL NHÂN TẠO 22 V.1. Mạng Maccalox 22 V.2. Mạng Perceptron 23 V.3. Mạng Multilayer Perceptrons 24 V.4. Mạng Hopfield 27 V.5. Mạng Hemmin 28 V.6. Mạng Functional Link Net 28 VI. CÁC ỨNG DỤNG CỦA MẠNG NEURAL 29 Chương II: DỰ BÁO VÀ CÁC PHƯƠNG PHÁP DỰ BÁO I. KHÁI NIỆM CHUNG 31 II. CÁC PHƯƠNG PHÁP DỰ BÁO NHU CẦU ĐIỆN NĂNG 32 II.1. Phương pháp bình phương cực tiểu 32 II.1.1 Khái niệm chung 32 II.1.2. Các biểu thức toán học để xác định các hệ số của mô hình dự báo 33 II.2. Phương pháp tính hệ số vượt trước 35 II.3. Phương pháp tính trực tiếp 35 II.4. Phương pháp so sánh đối chiếu 36 II.5. Phương pháp chuyên gia 36 II.6. Phương pháp san bằng hàm mũ 36 II.7. Phương pháp ngoại suy theo thời gian 39 II.8. Phương pháp tương quan 41 III. KẾT QUẢ DỰ BÁO THEO PHƯƠNG PHÁP SAN BẰNG HÀM MŨ 42 Chương III: THIẾT KẾ MẠNG NEURAL ỨNG DỤNG VÀO DỰ BÁO I. LỰA CHỌN VÀ PHÂN TÍCH DỮ LIỆU ĐẦU VÀO 47 I.1 Phương pháp chuỗi thời gian 47 I.2 Phương pháp tương quan 50 II. MẠNG NEURAL VÀ GIẢI THUẬT BACKPROPAGATION 52 II.1. Mạng Neural 52 II.2. Giải thuật BackPropagation 53 III. TRÌNH TỰ THIẾT KẾ 55 Chương IV: GIỚI THIỆU CHƯƠNG TRÌNH NEURAL NETWORK I. NHẬP DỮ LIỆU 58 I.1. Cấu trúc mạng 59 I.2. Dữ liệu đầu vào 60 I.3. Dữ liệu đầu ra 62 I.4. Trọng số và Bias 62 I.5. Hàm truyền 63 II. HUẤN LUYỆN MẠNG 65 III. KẾT QUẢ HUẤN LUYỆN VÀ QUÁ TRÌNH DỰ BÁO 66 III.1. Kết quả huấn luyện 66 III.2. Dự báo 70 III.2.1. Dự báo với thông số vừa huấn luyện 70 III.2.2. Dự báo với thông số có sẵn 71 III.2.3. Cập nhật dữ liệu 72 IV. KẾT QUẢ DỰ BÁO ỨNG VỚI NHỮNG THÔNG SỐ MẠNG KHÁC NHAU 73 V. KẾT LUẬN 74 Phụ lục1: CODE CHƯƠNG TRÌNH 76 Phụ lục 2:SỐ LIỆU VÀ KẾT QUẢ DỰ BÁO 120 Tài Liệu Tham Khảo

doc30 trang | Chia sẻ: banmai | Lượt xem: 1823 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Thiết kế lưới địa chính đo vẽ bản đồ địa chính tỷ lệ 1/500-1/2000 khu vực thị xã Rạch Giá, huyện Châu Thành tỉnh Kiên Giang, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chöông I TOÅNG QUAN VEÀ MAÏNG NEURAL I. LÒCH SÖÛ PHAÙT TRIEÅN CUÛA MAÏNG NEURAL Naêm 1936, Alan Turing laø ngöôøi ñaàu tieân xem boä naõo nhö moät moâ hình xöû lyù thoâng tin. Naêm 1943, Warren McCulloch vaø Walter Pitts ñaõ ñeà xuaát caùch hoaït ñoäng cuûa caùc Neural, hoï ñaõ taïo ra moät maïng Neural ñôn giaûn baèng caùc maïch ñieän. Töø ñoù caùc nhaø khoa hoïc lao vaøo nghieân cöùu caùc boä maùy thoâng minh. Naêm 1949, Donall Hebb ñeà xuaát moät giaûi thuaät huaán luyeän maïng Neural raát noåi tieáng, maø ngaøy nay noù vaãn coøn ñöôïc söû duïng . Thaäp nieân 50 laø thôøi kyø maø maïng Neural phaùt trieån caû phaàn cöùng laãn phaàn meàm. Nathaniel Rochester vaø moät soá ngöôøi khaùc töø caùc phoøng thí nghieäm cuûa IBM ñaõ xaây döïng phaàn meàm moâ phoûng maïng Neural döïa treân giaûi thuaät cuûa Hebb. Naêm 1957, Frank Roseblantt baét ñaàu nghieân cöùu veà maïng Perceptron vaø ñaõ thaønh coâng trong vieäc thieát keá Mack I Perceptron nuerocomputer, ñoù laø maïng Neural coå ñieån nhaát vaãn coøn söû duïng ñeán ngaøy nay . Naêm 1959, Bernard Widrow vaø Marcian Hoff ñaõ xaây döïng maïng Adaline, noù laø aùp duïng ñaàu tieân cuûa maïng Neural vaøo thöïc teá ñeå daäp tieáng voïng treân ñöôøng daây ñieän thoaïi. Naêm 1967, Avanlanche aùp duïng caùc maïng Neural vaøo vieäc nhaän daïng gioïng noùi, ñieàu khieån motor vaø moät soá öùng duïng khaùc. Töø naêm 1969 ñeán naêm 1981 maïng Neural rôi vaøo traïng thaùi im laëng caû veà nghieân cöùu vaø öùng duïng. Tuy nhieân, coù theå keå ñeán baøi baùo caùo cuûa Marvin Minsky vaø Seymour Papert bình luaän veà maïng perceptron, caùc nghieân cöùu veà quaù trình hoïc cuûa maïng nhieàu lôùp, maïng töï toå chöùc ( Self Organization ) cuûa Teuvo Kohonen, maïng kieåu boä nhôù keát hôïp ( BAM – Bidirectional Associative Memory ) cuûa Anderson vaø maïng ART ( Adaptive Resonance Theory Neural Networks ) cuûa Capenter. Naêm 1982, John Hopfield coâng boá moät coâng trình veà maïng Neural moät lôùp treân National Academy of Sciences, noù ñöôïc coi laø moät ñoäng löïc loâi keùo caùc nhaø khoa hoïc quay trôû laïi nghieân cöùu veà maïng Neural. Ñaây laø thôøi kyø phuïc höng cuûa caùc nghieân cöùu vaø öùng duïng maïnh meõ cuûa maïng Neural vôùi caùc nghieân cöùu veà giaûi thuaät lan truyeàn ngöôïc sai soá ( Backpropagation of error ), maïng Boltzmann, maïng Neocognitron cuûa Fukushima. Töø cuoái thaäp nieân 80, ñaàu thaäp nieân 90 ñeán nay, maïng Neural ñaõ khaúng ñònh ñöôïc vò trí cuûa mình trong nhieàu öùng duïng khaùc nhau . II. MAÏNG NEURAL VAØ CAÙC KHAÙI NIEÄM CÔ BAÛN II.1. Giôùi thieäu veà maïng Neural Maïng Neural laø maïng maø ñöôïc xaây döïng baèng caùch sao cheùp laïi caùc nguyeân lyù toå chöùc cuûa heä Neural con ngöôøi. Boä oùc con ngöôøi laø moät heä Neural goàm coù 1010 ñeán 1012 Neural ñöôïc toå chöùc coù caáu truùc vaøo khoaûng 200 moâ hình khaùc nhau döôùi daïng nhieàu lôùp. Caáu truùc cô baûn cuûa moät Neural trong heä Neural con ngöôøi goàm coù ñoù laø caùc ñaàu vaøo (input) thaân Neural vaø ñaàu ra (output). Thaân Neural laø phaàn töû xöû lyù coù chöùc naêng thu thaäp taát caû caùc thoâng tin töø caùc ñaàu vaøo tính toaùn vaø ñöa ra caùc quyeát ñònh ôû ngoõ ra ñeå göûi tín hieäu ñeán caùc Neural khaùc nhö moâ taû ôû hình 1.1. Hình 1.1 Input Thaân Neural Output Moãi Neural coù nhieàu input nhöng chæ coù moät output, töø output naøy môùi reõ nhaùnh ñöa thoâng tin ñeán caùc Neural khaùc. Trong maïng Neural nhaân taïo, tín hieäu truyeàn töø Neural naøy ñeán Neural khaùc laø tín hieäu ñieän aùp. Coù hai loaïi tín hieäu ñieän aùp ñoù laø ñieän aùp döông vaø ñieän aùp aâm. Ñieän aùp döông ñöôïc xem nhö laø tín hieäu kích ñoäng (excitory) ñeå kích ñoäng Neural göûi tín hieäu ñeán caùc Neural khaùc vaø ñieän aùp aâm ñöôïc xem nhö laø tín hieäu öùc cheá (inhibitory) ñeå öùc cheá Neural göûi tín hieäu ñeán caùc Neural khaùc. Khi ñieän aùp laø zero thì khoâng coù söï lieân laïc giöõa hai Neural. Cuõng gioáng nhö heä Neural con ngöôøi, maïng Neural nhaân taïo bao goàm lôùp ñaàu vaøo, caùc lôùp aån vaø lôùp Neural ñaàu ra. Trong maïng, ñaàu ra cuûa Neural naøy keát noái vôùi ñaàu vaøo cuûa nhieàu Neural khaùc hoaëc keát noái vôùi ñaàu vaøo cuûa Neural chính noù. Cöôøng ñoä caùc keát noái xaùc ñònh löôïng tín hieäu truyeàn ñeán ñaàu vaøo. Giaù trò cuûa cöôøng ñoä keát noái ñöôïc goïi laø troïng soá. Trong thôøi gian heä tieáp xuùc vôùi moät vaøi ñoái töôïng, moät soá phaàn töû caûm bieán bò taùc ñoäng, cöôøng ñoä keát noái cuûa moät soá Neural thích hôïp trong heä seõ ñöôïc gia taêng nhaèm cung caáp thoâng tin veà ñoái töôïng maø heä tieáp xuùc vaø ñöa ra caùc quyeát ñònh ôû lôùp ñaàu ra. Quaù trình naøy ñöôïc goïi laø quaù trình hoïc, söï thay ñoåi cuûa caùc troïng soá trong quaù trình naøy goïi laø luaät hoïc. Ñeå xaây döïng moät maïng Neural gioáng nhö heä Neural con ngöôøi, yù töôûng ñaàu tieân cuûa Mc.culloch vaø Pitts vaøo naêm 1943 ñeà ra caáu truùc cô baûn cuûa moät Neural thöù i trong moâ hình cuûa maïng Neural nhaân taïo nhö hình 1.2. S f x1 x2 x3 x4 xr Hình 1.2 Wi,1 Wi,2 Wi,r net ai b Trong ñoù: - xj laø ñaàu ra cuûa Neural thöù j hoaëc ñaàu vaøo töù moâi tröôøng beân ngoaøi. - wi,j laø troïng soá keát noái giöõa Neural thöù i vaø Neural thöù j. - b laø moät haèng soá (Bias). - ai laø ñaàu ra cuûa Neural thöù i. - f laø haøm truyeàn. - net laø ñoái soá cuûa haøm f. net=wi,1.x1+wi,2.x2+…+wi,r.xr+b (1.1) ai=f(n) (1.2) Caùc thoâng soá: +Ñaàu vaøo (input): Thoâng soá hay döõ lieäu ñaàu vaøo +Ñaàu ra (output) : Thoâng soá hay döõ lieäu ñaàu ra + Troïng soá(Weight) : Keát noái giöõa hai Neural trong maïng Neural goïi laø troïng soá, chuùng coù theå ñieàu chænh ñöôïc. Khi caùc tín hieäu ñöôïc ñöa vaøo Neural ñeå xöû lyù thì noù ñöôïc nhaân vôùi heä soá aûnh höôûng cuûa maïng giöõa hai lôùp, goïi laø heä soá troïng soá w vaø sau ñoù ñöôïc bieán ñoåi bôûi haøm phi tuyeán (haøm truyeàn). + Bias: Laø haèng soá ñöôïc ñöa tröïc tieáp vaøo maïng Neural thoâng qua boä toång, cuõng coù theå ñöa vaøo maïng thoâng qua input vôùi troïng soá nhaân vôùi noù laø w=1. Bias cho pheùp thay ñoåi ñöôøng phaân chia veà phía döôùi, hoaëc treân goác toaï ñoä. +Toác ñoä daïy: Ñaây laø thoâng soá raát quan troïng, noù quyeát ñònh ñeán keát quaû cuûa quaù trình huaán luyeän. Neáu n quaù lôùn thì quaù trình tính toaùn nhanh nhöng keát quaû toaøn cuïc seõ khoâng tìm ñöôïc, ngöôïc laïi, neáu n quaù nhoû thì keát quaû toaøn cuïc tìm ñöôïc nhöng soá böôùc tính toaùn laïi raát nhieàu. Ñeå quaù trình tính toaùn ñaït hieäu quaû ngöôøi ta thöôøng choïn 0.1 < n < 1. + Haøm truyeàn (haøm kích hoaït, haøm hoaït ñoäng): Haøm truyeàn cuûa Neural ñöôïc bieåu dieãn bôûi haøm f(x). Noù ñònh nghóa tín hieäu output cuûa Neural neáu tín hieäu input ñaõ ñöôïc bieát tröôùc. Taùc duïng cuûa haøm truyeàn laø laøm cho caùc tín hieäu nhaäp gaàn vôùi tính hieäu xuaát chuaån. Coù caùc loaïi haøm hoaït ñoäng sau: Hình 1.3 Hình 1.4 Hình 1.5 Hình 1.6 Hình 1.7 Hình 1.8 Hình 1.9 Hình 1.10 Hình 1.11 Trong noäi dung luaän vaên naøy chæ ñeà caäp ñeán 4 haøm thöôøng ñöôïc söû duïng sau: Baûng 1.1 Loaïi haøm Phöông trình Hình veõ Haøm tuyeán tính F(x)=x Hình 1.5 Haøm ngöôõng F(x)= Hình 1.3 Haøm Logsig Hình 1.4 Haøm tansig Hình 1.6 Vieäc löïa choïn haøm truyeàn aûnh höôûng ñeán thôøi gian daïy maïng vaø ñöôïc xaùc ñònh bôûi: - Ñaëc tính cuûa baøi toaùn (tuyeán tính, phi tuyeán, lieân tuïc, giaùn ñoaïn..) - Thuaän lôïi cho vieäc öùng duïng maùy tính. - Thuaät toaùn daïy maïng. + Lôùp (layer): Maïng Neural coù theå coù moät hay nhieàu lôùp. Lôùp ñaàu vaøo goïi laø input layer, lôùp cuoái cuøng coù giaù trò ñaàu ra laø output thì goïi laø output layer (lôùp output). Caùc lôùp coøn laïi goïi laø hidden layer (lôùp aån). +Khaùi nieäm daïy maïng: laø quaù trình laøm thay ñoåi caùc thoâng soá trong maïng (troïng soá, Bias) cho phuø hôïp vôùi kích thích beân ngoaøi, sau ñoù chuùng löu giöõ caùc giaù trò naøy. Caùch daïy ñöôïc xaùc ñònh thoâng qua caùch thöùc thay ñoåi thoâng soá. Ñoù laø: -Maïng Neural ñöôïc kích thích bôûi ñaàu vaøo . - Maïng Neural thay doåi caùc thoâng soá theo keát quaû kích thích. - Maïng Neural phaûn öùng laïi moät kích thích môùi baèng nhöõng thay ñoåi tìm thaáy trong caáu truùc maïng. II.2. Phaân loaïi maïng Neural II.2.1 Phaân loaïi theo caáu truùc: Moâ hình keát noái cuûa caùc maïng Neural nhaân taïo döïa vaøo caáu truùc coù theå ñöôïc chia ra laøm hai loaïi: Maïng nuoâi tieán vaø maïng nuoâi luøi. Maïng feedforward : Hình 1.12 Caùc Neural taïo thaønh nhoùm trong caùc lôùp , tín hieäu truyeàn töø lôùp input ñeán lôùp ouput . Caùc Neural khoâng cuøng lôùp thì noái vôùi nhau nhöng caùc Neural cuøng lôùp thì khoâng noái vôùi nhau . Ví duï nhö maïng perceptron nhieàu lôùp , maïng chuaån hoaù vecto hoïc hoûi , maïng ñieàu khieån phaùt aâm vaø maïng löu tröõ döõ lieäu . Maïng recurrent : hình 1.13 Caùc ñaàu ra cuûa moät soá Neural hoài tieáp laïi chính noù hay caùc Neural ôû caùc lôùp keá caän. Maïng recurrent coù boä nhôù ñoäng , ngoõ ra cuûa noù phaûn aùnh input hieän haønh nhö caùc input vaø output tröôùc ñoù . Ví duï nhö maïng Hopfied, maïng Elman, maïng Jordan. II.2.2 Phaân loaïi theo phöông phaùp daïy: 1.Maïng hoïc hoûi coù giaùm saùt Ñaàu ra thöïc teá y Maïng Neural w Ñaàu vaøo x ñaàu ra mong muoán d Sai soá Hình 1.14 Moâ hình maïng huaán luyeän coù giaùm saùt Thuaät toaùn naøy duøng ñeå ñieàu chænh söï khaùc nhau giöõa caùc output thöïc teá vaø output yeâu caàu töông öùng töøng maãu ñöa vaøo. Ví duï nhö qui taéc delta do Windrow vaø Hoff ñöa ra vaøo naêm 1960, thuaät toaùn giaûi thuaät lan truyeàn ngöôïc (backpropagation) do Rumelhart vaø Mc Clellan ñöa ra naêm 1986, thuaät toaùn vecto hoïc hoûi do Kohonen ñöa ra naêm 1989. 2.Maïng hoïc hoûi khoâng giaùm saùt Maïng Neural w Hình 1.15 Moâ hình huaán luyeän khoâng giaùm saùt Thuaät toaùn naøy khoâng ñoøi hoûi caàn bieát tröôùc ngoõ ra yeâu caàu. Trong quaù trình huaán luyeän caùc maãu nhaäp ñöa vaøo maïng vaø thuaät toaùn töï ñieàu chænh caùc troïng soá keát noái, caùc maãu nhaäp coù ñaëc ñieåm töông töï seõ ôû trong cuøng moät lôùp. Ví duï nhö thuaät toaùn hoïc hoûi caïnh tranh ATR cuûa Carpenter vaø Grossberg ñöa ra vaøo naêm 1988. ñaàu vaøo x ñaàu ra thöïc teá y 3.Maïng hoïc hoûi coù ñieàu chænh Thuaät toaùn hoïc hoûi coù ñieàu chænh söû duïng tieâu chuaån ñaùnh giaù caùc ñaëc ñieåm toát cuûa output maïng töông öùng vaø input ñöa vaøo. Ví duï nhö thuaät toaùn Gen do Holland ñöa ra naêm 1975. Maïng Neural Hình 1.16 Moâ hình huaán luyeän coù ñieàu chænh Ñaàu vaøo x Ñaàu ra thöïc teá y Tín hieäu Hoài tieáp tín hieäu taêng cöôøng II.3 Caáu truùc maïng Neural II.3.1. Maïng Neural coù moät lôùp : Bao goàm caùc phaàn töû xöû lyù treân cuøng möùc. S f S f S f Hình 1.17 Maïng Neural nuoâi tieán moät lôùp w1,1 a1 p1 b1 p2 a2 p3 b2 wS,R aS pR bS Trong ñoù: - pi: Döõ lieäu ñaàu vaøo. - a = f(wp + b) (1.3) - R :soá löôïng vecto ñaàu vaøo - S : soá löôïng Neural trong moät lôùp Trong maïng naøy, moãi ñaàu vaøo p ñöôïc noái vôùi moãi Neural thoâng qua ma traän troïng soá W. Moãi Neural coù moät boä toång ñeå coäng caùc troïng soá vaø bias. Keát quaû cuûa chuùng laø ñaàu vaøo cuûa haøm f. Thöôøng thì soá vecto ñaàu vaøo khaùc vôùi soá Neural (R¹S). Trong maïng khoâng baét buoäc soá ñaàu vaøo baèng soá Neural (R=S). Ma traän troïng soá w Chæ soá haøng trong ma traän cho bieát nôi ñeán Neural vaø chæ soá coät cho bieát nôi baét ñaàu xuaát phaùt töø input cuûa troïng soá . Ví du: W1,2 cho bieát troïng soá xuaát phaùt töø input thöù 2 vaø keát thuùc ôû Neural thöù 1. Tín hieäu hoài tieáp Hình 1.18 Maïng Neural nuoâi luøi moät lôùp S f S f S f a1 p1 b1 p2 b2 a2 pR aS b3 II.3.2. Maïng Neural nhieàu lôùp Trong maïng Neural coù theå coù nhieàu lôùp. Moãi lôùp coù moät ma traän troïng soá w vaø moät bias b, vaø moät output a. Lôùp Neural ñaàu tieân goïi laø lôùp ñaàu vaøo, lôùp Neural cuoái laø lôùp ñaàu ra, caùc lôp Neural giöõa hai lôùp ñaàu vaøo vaø ñaàu ra goïi laø lôùp aån. Trong maïng Neural moät lôùp, chæ coù moät lôùp ñaàu vaøo, moät lôùp ñaàu ra vaø moät lôùp aån. Ñeå phaân bieät caùc giaù trò naøy trong caùc lôùp ta duøng caùc chæ soá nhö hình veõ beân döôùi. S f S f S f S f S f S f S f S f S f P1 a1,1 a1,2 a1,n b1,1 b1,1 b1,n P2 a2,1 a2,2 a2,n b2,1 b2,1 b2,n Pr ar,1 ar,2 ar,n br,1 br,1 br,n Hình 1.19 Maïng Neural nuoâi tieán nhieàu lôùp Input layer Hidden layer Output layer S f S f S f S f S f S f S f S f S f P1 a1,1 a1,2 a1,n b1,1 b1,2 b1,n P2 a2,1 a2,2 a2,n b2,1 b2,2 b2,n Pr ar,1 ar,2 ar,n br,1 br,2 br,n Hình 1.20 Maïng Neural nuoâi luøi nhieàu lôùp Lôùp cuoái cuøng coù giaù trò ñaàu ra laø output thì goïi laø output layer, lôùp ñaàu vaøo (input) goïi laø input layer. Caùc lôùp coøn laïi goïi laø hidden layer (lôùp aån). Moät vaøi taùc giaû thì cho raèng input laø lôùp thöù 4. III. LUAÄT HOÏC VAØ CAÙC PHÖÔNG PHAÙP DAÏY MAÏNG Hoïc laø quaù trình laøm thay ñoåi caùc thoâng soá trong maïng (troïng soá) cho phuø hôïp vôùi kích thích beân ngoaøi, sau ñoù chuùng löu giöõ caùc giaù trò naøy. Caùch hoïc hoûi ñöôïc xaùc ñònh thoâng qua caùch thöùc thay ñoåi thoâng soá. Ñònh nghóa cuûa vieäc hoïc bao haøm caùc yù sau: - Maïng Neural ñöôïc kích thích bôûi ñaàu vaøo. - Maïng Neural thay ñoåi caùc troïng soá theo keát quaû kích thích. - Maïng Neural phaûn öùng laïi moät kích thích môùi baèng nhöõng thay ñoåi tìm thaáy trong caáu truùc maïng. Coù nhieàu caùch hoïc trong maïng nhöng ôû ñaây chæ ñeà caäp moät soá luaät hoïc chuû yeáu: III.1. Luaät hoïc söûa loãi (Error-Correction Learning) - Goïi dk laø giaù trò ñaàu ra mong muoán cuûa Neural thöù k. - yk laø giaù trò ñaàu ra thöïc. - ek laø sai soá cuûa Neural thöù k. Ta coù coâng thöùc tính sai soá ôû laàn thöù n: ek(n) = dk(n) – yk(n) (1.4) Toång sai soá trong maïng: E= (1.5) Giaù trò troïng soá thay ñoåi nhö sau : (1.6) Vôùi Dwkj(n) = hek(n)xj(n) (1.7) Trong ñoù: h laø toác ñoä daïy (laø moät haèng soá) x laø giaù trò ñaàu vaøo (input) III.2. Luaät Hebbian (Hebbian Learning) Ñònh luaät Hebb: Gia taêng troïng soá cuûa kích thích neáu muoán ñaàu ra cuûa Neural taùc ñoäng ñoái vôùi kích thích. Ngöôïc laïi, giaûm troïng soá cuûa kích thích neáu khoâng muoán ñaàu ra cuûa Neural taùc ñoäng ñoái vôùi kích thích ñoù. Donald Hebb đã đề xuất sơ đồ học tập để cập nhật các liên kết nút mà ngày nay chúng ta gọi là qui tắc huấn luyện Hebb. Mỗi khi một Neural được kích hoạt lặp đi lặp lại bởi một Neural khác, ngưỡng kích hoạt của Neural thứ hai giảm đi, do đó sự truyền đạt giữa 2 Neural này được dễ dàng bởi sự kích hoạt lặp lại. Một đặc tính quan trọng của qui tắc này là việc huấn luyện được thực hiện một cách cục bộ, tức là sự thay đổi trọng số kết nối giữa hai Neural chỉ phụ thuộc vào hoạt động của 2 Neural đó. Ý tưởng này có thể mở rộng cho các hệ thống nhân tạo. Có nhiều công thức toán học khác nhau để diễn tả qui tắc Hebb. Công thức sau đây được sử dụng phổ biến nhất. Theo qui tắc Hebb, khi có sự hoạt động chạy từ Neural thứ j đến Neural thứ i, trọng số tự sẽ tăng. Ông cho rằng thông tin có thể được lưu trữ trong kết nối và kỹ thuật huấn luyện của ông đã có những đóng góp nền tảng cho lý thuyết mạng Neural. Nếu biểu thị hoạt động của Neural thứ j bằng xj và đầu ra của Neural thứ i là yi, thì trọng số kết nối được cho bởi: ∆wij = ŋ xj yi (1.8) Xj Yi Hình 1.21 Ở đây ŋ là tham số để hiệu chỉnh sự thay đổi trọng số. Chú ý rằng qui tắc Hebb có tính cục bộ đối với trọng số và khác với các qui tắc huấn luyện (perceptron, truyền đạt ngược), không có đầu ra yêu cầu trong qui tắc Hebb và chỉ có đầu vào cần chảy qua mạng Neural. Vieát laïi phöông trình treân ta coù: w(t+1) = w(t) + ŋ x(t) y(t) (1.9) Ở đây t biểu thị số bước lặp và ŋ là độ lớn của bước lặp. Nếu ta có một Neural tuyến tính, thì thay y = wx ta có: w(t+1) = w(t) . ( 1+ŋ x2(t)) (1.10) Như vậy, trong số có khả năng tăng không giới hạn, làm cho các huấn luyện viên Hebb không ổn định về bản chất, có thể sinh ra các trọng số dương hoặc âm rất lớn. Để khống chế sự tăng không giới hạn của trọng số, Oja và Sanger ñöa ra söï tieâu chuaån hoaù vaøo qui taéc Hebb. Qui tắc Oja: Oja đề xuất tiêu chuẩn hoá qui tắc Hebb. Chúng ta phân trọng số được cập nhật bằng chuẩn của tất cả các trọng số kết nối: Oja cho sự xấp xỉ vào qui tắc cập nhật này như sau: wi (t+1) = wi (t) + η y(t) [x(t) – y(t) wi (t)] = wi (t) [ 1 - η y2(t) ] + η xi (t) y(t). (1.11) Ở đây x(t) – y(t).wi (t) là sự hoạt động tiêu chuẩn hoá, nó là một “hệ số quên” tỉ lệ với bình phương của ngõ ra. Qui tắc Sanger: Sanger đã sửa đổi qui tắc Oja để thực hiện làm giảm. Mô tả tóm tắt qui tắc Sanger như sau: Giả sử mạng có M đầu ra cho bởi: yi (t) = ∑ wij(t) xj(t), i = 1,M (1.12) và đầu vào (N<M). Theo qui tắc Sanger, các trọng số được cập nhật như sau: ∆wij(t) = ηyi(t)[ xj(t) - wkj(t)yk(t) ] (1.13) Chú ý rằng các trọng số được cập nhật không có tính cục bộ. Tất cả các ngõ vào trước đó được yếu cầu để cập nhật cho trọng số wij. III.3. Luaät hoïc caïnh tranh (Competitive Learning) Mạng học tập cạnh tranh đơn giản nhất có một lớp ngỏ ra, kí hiệu yi, mỗi ngỏ ra này được nối với tất cả ngỏ vào xi thông qua trọng số wij. Phương pháp này được mô tả như sau: cho x là ngỏ vào của mạng 2 lớp liên kết bởi trọng số wij. Luật học tập cạnh tranh cơ bản được cho như sau : ∆wi*j = η( xj – wi*j ) (1.14) với Wi* được chuyển theo x, i* là phần của trọng số ứng với nút thắng được cập nhật. Nút thắng là ngỏ ra lôùn nhất. Nói cách khác có thể viết: ∆wij = ηyi ( xj – wij ) (1.15) điều này xuất hiện trong tập luật của Hebb về sự phân rả. Ñây là cách phối hợp của Kohonen trong thuật toán đầu tiên của ông. Học tập cạnh tranh đòi hỏi một chiến lược toàn diện. Nó trở thành hoạt động tiêu biểu cho tất cả các thuật toán của Kohonen. III.4. Giaûi thuaät hoïc delta Luaät hoïc Delta döïa treân tính chaát cuûa ñaïo haøm maø neàn taûng laø phöông thöùc giaûm neân coù theå duøng cho haøm truyeàn baát kyø (tuyeán tính hay khoâng tuyeán tính). Ñaïo haøm Ñònh nghóa : Ñaïo haøm cuûa haøm soá f taïi ñieåm x thuoäc mieàn xaùc ñònh, kí hieäu laø f’(x), ñöôïc cho bôûi : f’(x)= (1.16) Neáu f’(x)>0 thì ta noùi raèng f taêng taïi x, neáu f’(x)<0 thì ta noùi raèng haøm f giaûm taïi x, coøn neáu f’(x)=0 thì haøm f coù moät cöïc trò taïi x f(x) f f(x)-f(xn) x-xn x xn x Hình 1.22 Phöông trình ñöôøng thaúng d ñi qua ñieåm (x0,f(x0)) ñöôïc cho bôûi: (1.17) suy ra y=f(x0) + (x-x0)f’(x0) (1.18) Goïi x1 laø giao ñieåm cuûa d vaø truïc hoaønh, suy ra x1 laø nghieäm cuûa phöông trình : f(x0) + (x-x0)f’(x0)=0 (1.19) Þ x1 = x0 –f(x0)/f’(x0) (1.20) Toång quaùt ta coù : xn+1 = xn + (1.21) Quaù trình treân ñöôïc goïi laø phöông thöùc giaûm. AÙp duïng ñieàu naøy cho troïng soá w, ta thaáy ôû voøng laëp keá wn+1 phaûi thoaû tính chaát : f(wn+1)<f(wn) (1.22) Töùc laø giaù trò cuûa f taïi wn+1 phaûi nhoû hôn giaù trò tröôùc ñoù taïi wn Trong luaät hoïc söûa sai, moãi pheùp laëp theo phöông thöùc giaûm seõ tìm höôùng giaûm taïi wn ñeå vôùi moät h>0 cho tröôùc sao cho: f(wn-hf’(wn))<f(wn) (1.23) ñaët wn+1 laø vecto wn+1 = w - hf’( wn ) (1.24) Ñaët f : Rn®R laø moät haøm thöïc vaø ñaët eÎRn vôùi =1 laø moät höôùng cho tröôùc. Ñaïo haøm cuûa f theo höôùng e taïi w ñöôïc ñònh nghóa nhö sau: (1.25) Neáu e = (0,…,1,…,o)T töùc e laø moät höôùng cô sôû trong khoâng gian vecto thì thay vì ¶ef(w), ta vieát ¶if(w) , ñöôïc ñònh nghóa bôûi: (1.26) Gradient cuûa f taïi w, kí hieäu f’(w), ñöôïc ñònh nghóa: f’(w)=(¶1f(w),…,¶nf(w))T (1.27) Moâ taû luaät hoïc delta Xeùt moät Neural söû duïng haøm truyeàn laø haøm tuyeán tính, theá thì vecto troïng soá tìm ñöôïc trong giaûi thuaät hoïc seõ laø moät ñöôøng thaúng (tröôøng hôïp khoâng gian hai chieàu). Ñieàu naøy coù nghóa laø luaät hoïc cho haøm tuyeàn tuyeán tính chæ laø moät haøm tuyeán tính maø thoâi. Tuy nhieân, neáu haøm truyeàn laø phi tuyeán thì khoù coù moät xaáp xæ toát. Ñoù laø lyù do taïi sao ngöôøi ta duøng haøm kích hoaït laø haøm baùn tuyeán tính . Ñaàu ra cuûa Neural : y()=f(wTx) (1.28) Maãu thöù Giaù trò ñaàu vaøo Ñaàu ra mong muoán 1 d1 2 d2 ... ………………. … k dk Heä laáy xk laøm ñaàu vaøo, taïo ra keát quaû yk cuûa rieâng noù roài so saùnh vôùi keát quaû mong muoán dk ,sai leäch cuûa maãu thöù k ñöôïc tính nhö sau: Ek=(dk - yk)2 = (yk – f(wTx))2 (1.29) Sai leäch cuûa taát caû caùc maåu: E == E1 + E2 + … + Ek (1.30) Luaät hoïc seõ thay ñoåi w theo höôùng laøm cöïc tieåu hoaù sai leäch baèng caùch söû duïng pheùp laëp: w = w - hE’k(w) (1.31) vôùi = - (yk –f(wTx))f’(wTx) (1.32) Toùm taét giaûi thuaät: Cho tröôùc k maãu döõ lieäu: í(x1,d1),…, (xk,dk)ý vôùi xk = (,…,) vaø dk Î R, k=1,….,k. Do tính chaát khoâng tuyeán tính cuûa haøm truyeàn maø giaûi thuaät khoù coù theå döøng ñuùng nghóa (giaù trò taïo bôûi maïng Neural baèng ñuùng giaù trò ñaàu ra mong muoán hay sai leäch = 0). Do ñoù ngöôøi ta thieát laäp tieâu chuaån döøng theo moät giaù trò sai leäch Emax cho pheùp naøo ñoù: khi sai leäch E nhoû hôn hoaëc baèng Emax thì döøng laïi. Trong thöïc teá ngöôøi ta coøn duøng tieâu chuaån döøng theo moät soá laàn laëp xaùc ñònh. Böôùc 1: choïn tröôùc giaù trò h>0 vaø Emax>0. Böôùc 2 : khôûi taïo ngaãu nhieân troïng soá w, baét ñaàu vôùi maãu thöù nhaát k=1vaø gaùn sai leäch E=0. Böôùc 3: baét ñaàu quaù trình hoïc, gaùn x=xk vaø d=dk. Ñaàu ra cuûa maïng Neural tính theo: y = y()=f(wTx) (1.33) Böôùc 4: caäp nhaät troïng soá w = w-hE(w) (1.34) Böôùc 5: tính sai leäch baèng caùch coäng theâm sai leäch hieän taïi E = E + ½(d-y)2 (1.35) Böôùc 6: neáu k<K thì k=k+1 vaø trôû laïi böôùc 3. Neáu khoâng thì qua böôùc 7. Böôùc 7: keát thuùc chu kyø hoïc: Neáu E£Emax thì keát thuùc quaù trình hoïc. Coøn neáu E>Emax thì gaùn E=0 vaø baét ñaàu moät chu kyø hoïc môùi baèng caùch quay trôû laïi böôùc 3. III.5. Giaûi thuaät hoïc Delta toång quaùt Luaät hoïc delta ôû treân öùng duïng cho moät Neural. Baây giôø xeùt trong tröôøng hôïp toång quaùt cho moät maïng Neural ña taàng vaø daãn ñeán giaûi thuaät Delta toång quaùt, hay coøn goïi laø giaûi thuaät lan truyeàn ngöôïc sai leäch. Luaät hoïc lan truyeàn ngöôïc sai leäch raát phöùc taïp, vieäc daãn xuaát caàn nhieàu phöông thöùc toaùn hoïc. Nhaèm ñôn giaûn cho vieäc trình baøi, ôû ñaây chæ chæ minh hoïa cho tröôøng hôïp maïng Neural hai taàng coù moät ñaàu ra. Ñoä sai leäch giöõa giaù trò taïo ra cuûa maïng Neural vôùi giaù trò mong muoán cho moät maãu döõ lieäu hoïc ñöôïc cho bôûi: Hình 1.23 x1 x2 y xn Ek(W,w) = (dk -yk)2 (1.36) Ñoä sai leäch toång theå ñöôïc tính baèng caùch laáy toång caùc ñoä sai leäch: E(W,w) = (1.37) Ñaàu ra cuûa maïng Neural: Yk = (1.38) Trong ñoù ok laø giaù trò ñaàu ra cuûa lôùp aån, ñöôïc tính bôûi: (1.39) Vôùi w1 laø vecto troïng soá cuûa Neural thöù nhaát. Luaät ñeå thay ñoåi troïng soá ñöôïc cho theo phöông thöùc giaûm gradient, töùc laø chuùng ta seõ cöïc tieåu hoaù ñoä sai leäch quaân phöông baèng caùch duøng haøm laëp: W = w-h (1.40) Wl = wl-h (1.41) Trong ñoù h laø heä soá hoïc. Söû duïng luaät daây chuyeàn ñeå ruùt ra haøm toång hôïp: =-(dk-yk)yk(1- yk)ok (1.42) Vaäy luaät thay ñoåi troïng soá cuûa ñaàu ra laø: W = W + h(dk-yk)yk(1- yk)ok = W + hdkok (1.43) Xeùt rieâng leû cho töøng troïng soá thì : Wi =Wi + hdkoki (1.44) Vôùi i =1,..,N (soá Neural ) dk= (dk-yk)yk(1- yk) (1.45) Ñoái vôùi lôùp aån , ta tính Ek nhö sau: = - yk(1- yk )wlokl(1-okl)xk (1.46) luaät thay ñoåi cho troïng soá lôùp aån laø : wl=wl + hdk wlokl(1-okl)xk (1.47) Xeùt rieâng töøng troïng soá thì : Wij =wij + hdk wlokl(1-okl)xkj (1.48) j=1,..,n Toùm taét giaûi thuaät Böôùc 1: choïn tröôùc giaù trò h > 0 vaø Emax > 0 Böôùc 2: choïn ngaãu nhieân giaù trò troïng soá w,baét ñaàu vôùi maãu thöù nhaát k=1 vaø gaùn sai leâch E=0 Böôùc 3: baét ñaáu quaù trình hoïc, gaùn x = xk, d= dk. Ñaàu ra cuûa maïng Neural ñöôïc tính theo coâng thöùc: (1.49) trong ñoù ok laø giaù trò ñaàu ra cuûa lôùp aån, ñöôïc tính bôûi: (1.50) Böôùc 4: caäp nhaät troïng soá Neural ñaàu ra: W=W + hdo (1.51) Vôùi d = y(d - y)(1 - y) Böôùc 5: caäp nhaät troïng soá Neural lôùp aån: wl=wl + hd wlol(1-ol)x (1.52) Böôùc 6: tính sai leäch baèng caùch coäng theâm sai leäch hieän taïi E = E + ½ (d - y)2 (1.53) Böôùc 7: neáu k<K thì k =k+1 vaø trôû laïi böôùc 3. Neáu khoâng thì böôùc 8 Böôùc 8: keát thuùc chu kyø hoïc . Neáu E £ Emax thì keát thuùc . Coøn neáu E> Emax thì gaùn E = 0 vaø baét ñaàu chu kyø hoïc môùi baèng caùch quay trôû laïi böôùc 3. III.6. Caùc maïng nuoâi tieán vaø giaûi thuaät truyeàn ngöôïc. Giaûi thuaät truyeàn luøi (back propagation algorithm) laø moät trong caùc giaûi thuaät quan troïng nhaát trong lòch söû phaùt trieån cuûa caùc maïng Neural nhaân taïo. Giaûi thuaät ñöôïc söû duïng ñeå huaán luyeän caùc maïng nuoâi tieán nhieàu lôùp vôùi caùc phaàn töû xöû lyù trong maïng coù haøm taùc ñoäng laø haøm phi tuyeán. Maïng nuoâi tieán nhieàu lôùp keát hôïp vôùi giaûi thuaät truyeàn luøi coøn ñöôïc goïi laø maïng truyeàn luøi (back propagation network). Neáu cho taäp hôïp caùc caëp maãu huaán luyeän vaøo-ra (x(k),d(k)) vôùi k=1,2,…,p, giaûi thuaät seõ cung caáp moät thuû tuïc cho vieäc caäp nhaät caùc troïng soá keát noái trong maïng truyeàn luøi töø lôùp Neural ñaàu ra ñeán lôùp Neural ñaàu vaøo. Giaûi thuaät vaän haønh theo hai luoàng döõ lieäu: Ñaàu tieân caùc maãu huaán luyeän ñöôïc truyeàn töø lôùp Neural ñaàu vaøo ñeán lôùp Neural ñaàu ra vaø cho keát quaû thöïc söï y(k) cuûa lôùp Neural ñaàu ra. Sau ñoù caùc tín hieäu sai leäch giöõa ñaàu ra mong muoán vaø ñaàu ra thöïc söï cuûa maïng ñöôïc truyeàn luøi töø lôùp ñaàu ra ñeán caùc lôùp ñöùng tröôùc ñeå caäp nhaät caùc troïng soá keát noái trong maïng. Ñeå laøm roõ caùc nguyeân lyù laøm vieäc cuûa caùc maïng nuoâi tieán ñöôïc keát hôïp vôùi giaûi thuaät truyeàn luøi, ôû ñaây ta chæ xem xeùt moät maïng nuoâi tieán ba lôùp ñoù laø lôùp Neural ñaàu vaøo, lôùp Neural aån vaø lôùp Neural ñaàu ra vaø töø ñoù ta coù theå môû roäng caùc nguyeân lyù laøm vieäc cho caùc maïng nuoâi tieán nhieàu lôùp hôn. Giaû söû lôùp Neural ñaàu vaøo cuûa maïng coù m ñaàu vaøo: x1, x2,…, xm , lôùp Neural aån cuûa maïng coù l phaàn töû xöû lyù vôùi caùc ñaàu ra laø: z1, z2,…, zl vaø lôùp Neural ñaàu ra cuûa maïng coù n phaàn töû xöû lyù vôùi n ñaàu ra laø: y1, y2, …, yn . Ta cuõng giaû söû raèng vqj laø troïng soá keát noái giöõa ñaàu vaøo thöù j cuûa lôùp Neural ñaàu vaøo vôùi phaàn töû xöû lyù thöù q cuûa lôùp Neural aån vaø wiq laø troïng soá keát noái giöõa phaàn töû xöû lyù thöù q cuûa lôùp Neural aån vôùi phaàn töû xöû lyù thöù i cuûa lôùp Neural ñaàu ra. Hình 1.16 moâ taû maïng Neural ba lôùp vôùi giaûi thuaät truyeàn luøi. x1 y1 x1 y2 xm yn xj (j=1,…,m) vq,j zq (q=1,…,l) wi,q yi (i=1,…,n) Hình 1.24 Cho caëp maãu huaán luyeän (x,d), haøm toång hôïp cho moãi phaàn töû xöû lyù thöù q cuûa lôùp Neural aån laø: netq= (1.54) vaø ñaàu ra cuûa noù laø: zq=a(netq) (1.55) Haøm toång hôïp cho moãi phaàn töû xöû lyù thöù i cuûa lôùp Neural ñaàu ra laø: neti= (1.56) vaø ñaàu ra cuûa noù laø: yi=a(neti) (1.57) Neáu haøm ñaùnh giaù ñeå ño sai leäch giöõa ñaàu ra mong muoán vaø ñaàu ra thöïc söï cuûa maïng ñöôïc ñònh nghóa vôùi daïng: E(w)= (1.58) Vì theá caùc troïng soá giöõa lôùp Neural ñaàu ra vaø lôùp Neural aån coù theå ñöôïc caäp nhaät baèng moät löôïng: (1.59) Söû duïng luaät Chain cho (): Ta coù: (1.60) Trong ñoù: , vaø Do ñoù, ta coù: (1.61) Neáu cho tín hieäu sai leäch thì caùc troïng soá keát noái giöõa lôùp Neural aån vaø lôùp Neural ñaàu ra coù theå ñöôïc caäp nhaät baèng: (1.62) Vieäc caäp nhaät caùc troïng soá keát noái giöõa lôùp Neural aån vaø lôùp Neural ñaàu vaøo söû duïng luaät: hay: (1.63) trong ñoù: , vaø , vôùi i=1,…,n Do ñoù, ta coù: hay: (1.64) trong ñoù dhq laø tín hieäu sai leäch cuûa phaàn töû xöû lyù thöù q trong lôùp Neural aån ñöôïc cho bôûi: (1.65) Moät caùch toång quaùt, cho maïng nuoâi tieán Q lôùp, q=1,2,…,Q vaø qneti vaø qyi laø ñaàu vaøo vaø ñaàu ra cuûa phaàn töû xöû lyù thöù i cuûa lôùp Neural thöù q. Maïng coù m Neural ñaàu vaøo vaø n Neural ñaàu ra. Cho qwò laø troïng soá keát noái giöõa q-1yj vaø qyi. Giaûi thuaät truyeàn luøi ñöôïc keát hôïp vôùi maïng nuoâi tieán Q lôùp ñeå tìm ra caùc troïng soá keát noái xaáp xæ thích nghi cho maïng ñöôïc moâ taû nhö sau: Nhaäp: taäp caùc caëp maãu huaán luyeän {(x(k),d(k))/k=1,2,…,p}, trong ñoù caùc vectô ñaàu vaøo vôùi caùc phaàn töû cuoái cuøng ñöôïc gaùn baèng –1, ñoù laø:xm+1(k)=-1. Böôùc 0: thieát laäp haèng soá hoïc h>0, vaø thieát laäp sai leäch Emax cho pheùp giöõa ñaàu ra mong muoán vaø ñaàu ra thöïc söï cuûa maïng. Thieát laäp caùc troïng soá ban ñaàu. Thieát laäp E=0 vaø k=1. Böôùc 1: Gaùn maãu ñaàu vaøo thöù k vôùi lôùp Neural ñaàu vaøo (q=1): qyi=1yi=xi(k) cho taát caû i. Böôùc 2: Truyeàn tín hieäu tieán thoâng qua maïng söû duïng coâng thöùc: qyi=a(qneti)=a(qwij.q-1yj) (1.66) cho moãi phaàn töû xöû lyù thöù i ôû lôùp thöù q vaø cho ñeán khi q ñaït ñeán lôùp Neural ñaàu ra Qyi. Böôùc 3: Tính giaù trò sai leäch vaø caùc tín hieäu sai leäch cho lôùp Neural ñaàu: E=(di(k)-Qyi)2+E (1.67) Qdi=(di(k)-Qyi).a’(Qneti) (1.68) Böôùc 4: Truyeàn caùc tín hieäu sai leäch luøi ñeå caäp nhaät caùc troïng soá vaø tính caùc tín hieäu sai leäch q-1di cho caùc lôùp ñöùng tröôùc: Dqwijnew=hqdi.q-1yj vaø qwijnew=qwijold+Dqwij (1.69) q-1di=a’(q-qneti)qwij.qdj cho q=Q,Q-1,…,2 (1.70) Böôùc 5: Kieåm tra xem neáu k<p thì cho k=k+1 vaø quay veà böôùc 1 maët khaùc ñi ñeán böôùc 6. Böôùc 6: Kieåm tra xem toång sai leäch hieän coù neáu E<Emax thì keát thuùc quaù trinhg huaán luyeän vaø xuaát caùc troïng soá ñöôïc xem laø caùc troïng soá keát noái xaáp xæ thích nghi cho maïng, maët khaùc, thieát laäp laïi E=0, k=1 vaø thöïc hieän quaù trình huaán luyeän môùi khaùc baèng caùch quay trôû veà böôùc 1. Toùm taét Haàu heát caùc giaûi thuaät hoïc ñeàu döïa treân sai leäch giöõa keát quaû thöïc hieän bôûi Neural vôùi keát quaû mong muoán. Ñoù laø moät quaù trình söûa sai theo giaûi thuaät toång quaùt goïi laø lan truyeàn ngöôïc sai leäch ( Back Propagatio ). Coù theå phaùt bieåu nhö sau: Trong quaù trình hoïc, giaù trò ñaàu vaøo ñöôïc ñöa vaøo naïng theo doøng chaûy trong maïng taïo thaønh giaù trò ôû ñaàu ra. Tieáp ñeán laø quaù trình so saùnh giaù trò taïo bôûi maïng Neural vôùi giaù trò ra mong muoán. Neáu hai giaù trò naøy gioáng nhau thì khoâng thay ñoåi gì caû. Tuy nhieân, neáu coù sai leäch giöõa hai giaù trò naøy thì ñi ngöôïc maïng töø ñaàu ra veà ñaàu vaøo ñeå thay ñoåi moät soá keát noái hay troïng soá . Ñaây laø moät quaù trình laëp lieân tuïc vaø coù theå khoâng döøng khi khoâng theå tìm ñöôïc caùc giaù trò troïng soá w sao cho ñaàu ra taïo bôûi maïng Neural baèng ñuùng ñaàu ra mong muoán. Do ñoù trong thöïc teá ngöôøi ta phaûi thieát laäp tieâu chuaån döøng döïa treân moät sai soá naøo ñoù giöõa hai giaù trò naøy, hay döïa treân moät soá laàn laëp xaùc ñònh. V. KHAÙI QUAÙT MOÄT SOÁ MAÏNG NEURAL NHAÂN TAÏO V.1. Maïng Maccalox Vaøo naêm 1943 Maccalox vaø hoïc troø cuûa oâng laø Pet ñaõ ñöa ra nhöõng hoïc thuyeát cô baûn cuûa boä naõo con ngöôøi. Keát quaû laø hoï ñaõ ñöa ra ñöôïc moâ hình Neural nhö moät phaàn töû vi xöû lyù ñôn giaûn coù theå tính vecto ñaàu ra qua giaù trò ñaàu vaøo, haøm truyeàn vaø boä troïng soá. Ñieåm yeáu cuûa moâ hình Neuraln naøy laø haøm truyeàn coù daïng ngöôõng töùc laø töøng Neural xaùc ñònh toång traïng thaùi cuûa caùc Neural khaùc vaø so saùnh vôùi ngöôõng ñeå xaùc ñònh giaù trò cuûa mình. Vì theá maïng naøy daïy raát khoù. å Hình 1.25 Maïng Maccalox X1 W1 X2 W2 Y Xn … Wn Trong ñoù : Y=f(net) = (1.71) laø ngöôõng xaùc ñònh giaù trò Y V.2. Maïng Perceptron Luaät hoïc perceptron ñöôïc Frank Rosenblatt ñöa ra vaøo cuoái nhöõng naêm 1950 laø moät tieâu bieåu cho nguyeân lyù söûa sai theo giaûi thuaät lan truyeàn ngöôïc sai leäch. Haøm truyeàn trong luaät hoïc naøy laø haøm ngöôõng tuyeán tính. S x1 w1,1 x2 y xn 1 Hình 1.26 Maïng Perceptron moät lôùp Moät Neural perceptron, söû duïng haøm truyeàn laø haøm ngöôõng (hardlim) ñöôïc bieåu dieån ôû hình 1.18. Moãi ñaàu vaøo xi thì ñöôïc nhaân vôùi troïng soá w1,j thích hôïp, toång cuûa tích soá ñoù vaø bias laø ñaàu vaøo cuûa haøm truyeàn f= hardlim(x) Hình 1.127 Haøm ngöôõng tuyeán tính 1 f 0 x Ñaàu ra cuûa Neural perceptron laø 1 neáu ñaàu vaøo cuûa haøm truyeàn laø lôùn hôn hoaëc baèng 0, ngöôïc laïi thì ñaàu ra cuûa Neural baèng 0. Ví du:ï vôùi khoâng gian vecto ñaàu vaøo laø 2 Troïng soá : w1,1=-1 w1,2=1 Bias b=1 Ñöôøng thaúng L vôùi wx + b=0 phaân chia ñoà thò ra hai vuøng. Ñöôøng thaúng L tröïc giao vôùi ma traän troïng soá W vaø tuyø theo söï thay ñoåi cuûa bias b. Vecto ñaàu vaøo naèm beân traùi ñöôøng thaúng L seõ coù keát quaû lôùn hôn khoâng. Vì vaäy ñaàu ra cuûa Neural coù keát quaû laø 1. Töông töï, vectô ñaàu vaøo naèm beân phaûi ñöôøng thaúng L seõ cho ñaàu ra cuûa Neural baèng khoâng. Ñöôøng thaúng phaân chia L coù theå ñònh höôùng hay di chuyeån baát kyø ñeå coù theå phaân loaïi khoâng gian ñaàu vaøo theo yeâu caàu cuûa giaù trò troïng soá w vaø bias b. L w x2 wx+b>0 y=1 wx+b=0 y=0 x1 1 wx+b<0 -1 y=0 Hình 1.28 Aûnh höôûng cuûa bias trong vieäc choïn Y Neáu perceptron khoâng coù bias b thì ñöôøng thaúng phaân caùch luoân luoân ñi qua goác toïa ñoïâ. Vieäc Neural coù theâm bias cho pheùp giaûi quyeát vaán ñeà maø hai input coù cuøng vò trí vôùi goác toaï ñoä. Bias cho pheùp thay ñoåi ñöôøng phaân chia veà phía döôùi, hoaëc treân goác toaï ñoä. Nhöôïc ñieåm cuûa maïng naøy laø khoâng phaûi luùc naøo cuõng tìm ñöôïc boä troïng soá trong baøi toaùn phaân loaïi. Ñeå khaéc phuïc nhöôïc ñieåm naøy ta duøng Perceptron nhieàu lôùp. V.3. Perceptron nhieàu lôùp : Ñaàu vaøo cuûa lôùp thöù nhaát laø X0(1),…,X0(n), ñaàu vaøo lôùp thöù hai laø X1(1),…,X1(n). Vì vaäy X1(i) laø ñaàu ra Neural thöù i cuûa lôùp thöù nhaát. W2(3,1) laø troïng soá ôû lôùp 2 ñöôïc lieân keát ñaàu ra cuûa Neural soá 3 lôùp thöù nhaát. Vôùi söï tham gia cuûa nhieàu troïng soá laøm cho ñaàu ra phi tuyeán, ñeå thöïc hieän quaù trình huaán luyeän maïng perceptron nhieàu lôùp ngöôøi ta duøng haøm Sigmoid. Y= (1.72) y 0,5 0 x Hình 1.29 Haøm Sigmoid Lôùp ñaàu vaøo Lôùp aån Lôùp ñaàu ra X0(1)W3(0,1) W3(1,1) W3(2,1) W3(02) W3(12) W3(2,2) W3(0,3) W3(1,3) W3(2,3) W2(0,1) W2(1,1) W2(2,1) W2(3,1) W2(0,2) W2(1,2) W2(2,2) W2(3,2) Hình 1.30 Perceptron 3 lôùp X3(1) X3(1) X1(1) X2(1) X0(2) X3(2) X1(2) X1(2) X0(3) X2(2) X3(3) X1(3) Laáy vi phaân haøm Sigmoid (1.73) Huaán luyeän maïng gioáng nhö luaät Delta, ngöôøi ta thöôøng goïi laø huaán luyeän truy ngöôïc. Ñaàu tieân xeùt moät perceptron vôùi haøm Sigmoid vaø luaät huaán luyeän laø: Dwi=- (1.74) duøng haøm sai soá bình phöông ñeå huaán luyeän (1.75) Vôùi ep= (dp - yp)2 yp = vôùi netp = (1.76) (1.77) (1.78) (1.79) (1.80) Vì vaäy (1.81) (1.82) h = 2k ñöôïc goïi laø heä soá huaán luyeän (1.83) Ví duï : xeùt perceptron 3 lôùp moät ñaàu ra W2(0,3) W2(1,3) W2(2,3) W2(0,1) W2(1,1) W2(2,1) W2(0,2) W2(1,2) W2(2,2) W2(0,1) W2(1,1) W2(2,1) Hình 1.31 Sai soá bình phöông taïi ñaàu ra e = (d – x3(1)) X2(1) X0(1) X1(1) X2(2) X3(1) X0(2) X1(2) X2(3) X3(1) = f((i,1).x2(i)) (1.84) X2(2) = f((i,2).x1(i)) (1.85) (1.86) (1.87) (1.88) (1.89) (1.90) Vì vaäy: (1.91) Vaø Dw2(1,2) = 2kx1(1)x2(2)[1-x2(2)].w3(2,1).x3(1)[1-x3(1)][d-x3(1)] (1.92) Hoaëc Dw2(1,2) = 2kx1(1)x2(2)[1-x2(2)].w3(2,1).d3(1) ÔÛ ñaây d3(1)= x3(1)[1-x3(1)][d-x3(1)] Dw2(1,2)=2kx1 .d2(1) (1.93) Maø d2(1) = x2(2)[1-x2(2)].w3(2,1).d3(1) Neáu coù nhieàu ñaàu ra thì sai soá E ñöôïc tính : E= [d1-x3(1)]2 + [d2 – x3(1)]2 + ….+ [dm – x3(m)]2 (1.94) Ñaïo haøm sai soá E ñöôïc tính (1.95) Ta ñöôïc phöông trình d cho phaàn töû q trong lôùp aån p laø (1.96) K : soá Neural trong lôùp k+1 Phöông trình duøng ñeå huaán luyeän truy ngöôïc trong maïng perceptron nhieàu lôùp. V.4. Maïng Hopfiled Hopfiled laø ngöôøi ñaàu tieân ñöa ra moâ hình toaùn hoïc boä nhôù trong maïng Neural. Vôùi vieäc söû duïng luaät Hebbian ñeå laäp trình cho maïng Neural. 1 n 2 Hình 1.32 Maïng Hopfiled X1 Y1 X2 Y2 Xn Yn V.5. Maïng Hemmin Töông töï nhö maïng Hopfild nhöng coù hai lôùp. Maïng Hermmin ñöôïc trình baøy nhö hình veõ 1.25. 2 2 n n 1 1 Hình 1.33 Maïng Hemmin X1 Y1 X2 Y2 Xn Yn V.5. Maïng Functional Link Net (FLN) Maïng FLN töông töï nhö nhöõng maïng Neural khaùc, FLN laø moät moâ hình raát maïnh trong vieäc bieåu dieån haøm phi tuyeán quan heä giöõa bieán ñaàu ra vaø bieán ñaàu vaøo. FLN khoâng ñoøi hoûi lôùp aån vaø coù hai daïng caáu truùc nhö hình 1.26a vaø 1.26b X1 X2 X1 X3 sin(X1) Y X12 Y cos(X1) X13 sin(2*X1) X23 cos(2*X1) X123 (b) (a) Hình 1.34 Maïng Neural coù moät lôùp, moät con Neural vôùi moät output vaø nhieàu input. Nhöõng input naøy ñöôïc taïo ra khoâng chæ laø döõ lieäu thöïc teá maø coøn laø nhöõng giaù trò ñöôïc bieán ñoåi töø nhöõng döõ lieäu baèng nhöõng haøm baäc cao. Ví duï cho maïng ba ñaàu vaøo : A, B, C ta coù hai phöông phaùp bieán ñoåi : -Phöông phaùp thöù nhaát : laáy A nhaân B, A nhaân C, B nhaân C, A nhaân B roài nhaân C … - Phöông phaùp thöù hai : duøng haøm sin, cos, log thaønh A, B, C, Sin(Pi*A), Cos(Pi*B), … Trong noäi dung luaän vaên naøy, ta söû duïng chuû yeáu laø phöông phaùp thöù hai vì ñaây laø phöông phaùp phaân tích döõ lieäu trieät ñeå vaø coù tính chính xaùc cao. IV. CAÙC ÖÙNG DUÏNG CUÛA MAÏNG NEURAL Caùc öùng duïng cuï theå cuûa maïng Neural coù theå toùm taét nhö sau: 1. Lónh vöïc vuõ truï, haøng khoâng : - ÖÙng duïng nhieàu trong kyõ thuaät bay khoâng ngöôøi laùi. - Moâ phoûng ñöôøng bay. - Heä thoáng ñieàu kieån maùy bay, naâng cao khaû naêng bay töï ñoäng. - Tìm kieám loãi, hö hoûng trong maùy bay. - Moâ hình hoaù caùc boä phaän cuûa maùy bay … 2. Ñieàu kheån töï ñoäng : - Heä thoáng höôùng daãn oâ toâ ñieàu kieån töï ñoäng. - Cho pheùp phaân tích phaïm vi hoaït ñoäng, … 3. Ngaân haøng : - Kieåm tra ñoïc vaên kieän. - Ñònh giaù theû tín duïng, … 4. Trong hình söï : - Phaùt hieän vaø so saùnh daáu vaân tay. - Nhaän bieát tieáng noùi. 5. Quoác phoøng : - Ñieàu khieån teân löûa, caùc thieát bò bay. - Heä thoáng ñònh vò nhö sonar, radar. - Caùc loaïi caûm bieán môùi, … 6. Lónh vöïc ñieän : - Döï baùo phuï taûi . - Cheá taïo chíp trong caùc maïch tích hôïp, chíp phaân tích. - Phöông phaùp ñieàu khieån, ñieàu khieån ñoäng cô, … 7. Trong y hoïc : - Phaân tích vaø phaùt hieän teá baøo ung thö. - Löu giöõ thôøi gian naèm vaø ra vieän cuûa beänh nhaân,… 8. Trong ñaàu tö : - Ñaùnh giaù möùc ñoä maïo hieåm cuûa vieäc ñaàu tö . 9. Trong saûn xuaát : - Kieåm tra, theo doõi quaù trình saûn xuaát . - Thöû nghieäm phaân tích, phaân loaïi saûn phaåm. - Döï baùo, leân keá hoaïch vaø ñieàu khieån quaù trình saûn suaát , … 10. Trong ñòa chaát : Phaùt hieän khoaùng saûn, daàu khí , kim loaïi, vaøng, … 11. Robot : Heä thoáng nghe nhìn, ñieàu khieån, … Ngoaøi ra coøn coù öùng duïng trong lónh vöïc : Coâng ngheä giaûi trí, coâng nghieäp, baûo hieåm,…

Các file đính kèm theo tài liệu này:

  • docchuong_1.doc
  • doc1BiaLOT.doc
  • doc2loicamon.doc
  • doc3Nhanxet1.doc
  • doc4phieu cham LV.doc
  • doc5loi noi dau.doc
  • doc6Mucluc.doc
  • docchuong_2.doc
  • docchuong_3.doc
  • docchuong_4.doc
  • docphuluc1_Code.doc
  • docPhuluc2_KQ.doc
  • doctailieuthamkhao.doc