1 / 60

Signal processing using Multilayer Perceptron

Signal processing using Multilayer Perceptron. GVHD : TS. Lê Hoàng Thái Nhóm VHCC : Phan Hoàn Vũ Nguyễn Thanh Hiếu Nguyễn Mạnh Cường Nguyễn Việt Cường. 1. 2. 3. 4. Tổng quan về MLP. Thuật toán OWO-HWO. Thuật toán định kích thước. Xác định giới hạn của độ lỗi. Nội dung. 1.

ermin
Download Presentation

Signal processing using Multilayer Perceptron

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Signal processing using Multilayer Perceptron • GVHD: TS. LêHoàngThái • Nhóm VHCC: • PhanHoànVũ • NguyễnThanhHiếu • NguyễnMạnhCường • NguyễnViệtCường

  2. 1 2 3 4 Tổng quan về MLP Thuật toán OWO-HWO Thuật toán định kích thước Xác định giới hạn của độ lỗi Nội dung

  3. 1 Tổng quan về MLP Nội dung

  4. Tổng quan về MLP Mạng neuron nhân tạo Perceptron Mạng neuron nhiều lớp MLP Thuật giải lan truyền ngược

  5. Mạng neuron nhân tạo Mạng neuron nhân tạo (Artificial Neural Netwok – ANN): là một tập hợp các bộ xử lý rất đơn giản – neuron – và nối với nhau. Mô phỏng cấu trúc và phương thức hoạt động của mạng neuron sinh học.

  6. Perceptron • Được giới thiệu bởi Rosenblatt vào những năm 1950 • Là mạng neuron nhân tạo đơn giản nhất gồm một neuron với các trọng số có thể điều chỉnh được và một giới hạn cứng. • Perceptron phân loại các input thành hai lớp A1 và A2 bị chia cách bởi một siêu phẳng cho bởi hàm phân biệt tuyến tính

  7. Mạng neuron nhiều lớp MLP • Một mạng neuron nhiều lớp gồm một lớp nhập, ít nhất một lớp ẩn, và một lớp xuất. • Lớp nhập: nhận các input và phân phối chúng cho tất cả neuron trong lớp ẩn • Lớp xuất: biểu diễn kết quả của toàn mạng • Lớp ẩn: • Dò tìm các đặc trưng. • Các neuron trong lớp này “ẩn” các kết xuất mong muốn của chúng.

  8. Thuật giải lan truyền ngược • Quá trình học gồm hai pha: • Lan truyền các mẫu input từ lớp nhập đến lớp xuất. • Giá trị sai số được tính đầu tiên cho lớp xuất, kết quả này được dùng để tính sai số của các neuron ở lớp ẩn cao nhất, và lớp ẩn kế tiếp thì tính theo kết quả của lớp ẩn cao hơn nó. Cứ thế lan truyền cho đến lớp nhập.

  9. Thuật giải lan truyền ngược Cho không gian mẫu học (x, t) là giá trị cần huấn luyện; t là giá trị kết quả đích (đầu ra mong muốn) của quá trình huấn luyện. Hệ số học ŋ. Qui định chỉ số lớp là tăng dần từ lớp đầu vào đến lớp đầu ra. Thuật giải lan truyền ngược được tóm tắt như sau

  10. Thuật giải lan truyền ngược • Tạo mạng truyền thẳng có nin Neuron đầu vào nhidden Neuron trên mỗi lớp ẩn và h lớp ẩn với nout đầu ra • Khởi tạo bộ trọng cho mạng với giá trị nhỏ • Trong khi <điều kiện kết thúc chưa thỏa> làm • Với mỗi cặp (x, t) trong không gian mẫu huấn luyện thực hiện: • :Xét lớp nhập (*): truyền x qua mạng, tại mỗi lớp xác định đầu ra của mỗi Neuron. Quá trình này được thực hiện đến lớp xuất dựa theo cấu trúc mạng cụ thể. • Xét lớp xuất: đối với đầu ra ok của Neuron k trong lớp xuất K, xác định sai số • Chuyển sang lớp ẩn L kế nó, đặt L=K-1 • Xét lớp ẩn (**): với mỗi Neuron I trên lớp ẩn thứ L, xác định sai số: • Cập nhật lại trọng số có trong mạng , wij • Nếu L > 1 thì chuyển sang lớp ẩn trên nó: L = L – 1 và quay lại bước (**) • Ngược lại : chọn cặp (x, t) mới trong không gian mẫu học, quay lại bước (*)

  11. 5 vấn đề của mạng nơron nhiều lớp 1. Các thuật toán huấn luyện thường tốn nhiều thời gian và không phải luôn luôn hội tụ. 2.Sự ràng buộc giữa lỗi huấn luyện và cấu trúc mạng không được biết trước. Việc lựa chọn kiến trúc mạng được đơn giản hóa thành việc lựa chọn số lượng phần tử có trong lớp ẩn Nh. Tuy nhiên, để lựa chọn được Nh cho phù hợp thì không dễ dàng…. 3.Hiệu suất huấn luyện không biết trước (thời gian huấn luyện, độ lỗi của mạng). 4.Khó xác định độ lỗi của mạng từ tập huấn luyện. 5. Khó xác định độ lớn của tập huấn luyện.

  12. 2 Thuật toán OWO-HWO Nội dung

  13. Cần một thuật toán nhanh hơn và khả năng hội tụ cao hơn trong quá trình huấn luyện!

  14. Gọi tên lại một số khái niệm TậphuấnluyệngồmNvmẫu {(xp, tp)} • p làmẫuthứ p • xplà vector đầuvàokíchthước N • tplà vector đầuramongmuốnkíchthước M • yplà vector đầurathựcsự. • Độđoquanhệcủanơronthứ j: (tươngdươngvới z) Nh: sốlượngnơronẩn w(j,i) làtrọngsốgiữa node vàothứ i và node ẩnthứ j xp(N+1) = 1 • Z làhệsốhọc

  15. Gọi tên lại một số khái niệm (tt) • Độlỗivớimẫuthứ p: • Độlỗivới node rathứ k: • Phươngsaimẫu: (mean square error - MSE)

  16. Tiếp cận vấn đề • Cácnghiêncứuđãchỉrarằngcáckỹthuậthuấnluyệnnhanhliênquanđếnviệcgiảicáchệphươngtrìnhtuyếntính. • Trongthuậttoán Output Weight Optimization – Back Propagation(OWO-BP) • Trọngsốđầurađượctìmbằngcáchgiảicácphươngtrìnhtuyếntính. • Trọngsốcủalớpẩnđượctìmbằngphươngpháplantruyềnngược. • Tuynhiên, Back Propagation khôngphảilàphươngpháphiệuquảđểcậpnhậttrọngsốcủacáclớpẩn. => Thaythế BP bằngmộtphươngpháphiệuquảhơn.

  17. Tiếp cận vấn đề (tt) • Phươngpháp Hidden Weight Optimization (HWO) • Sửdụngcácđộlỗiriêngbiệtchomỗi node ẩn. • Giảicáchệphươngtrìnhtuyếntínhđểtìmratrọngsốtốiưuchocác node ẩn. => Bằngcáchlàmnhỏcácđộlỗiđơngiảnthayvìmộtđộlỗilớnvàphứctạp, tốcđộhuấnluyệnvàđộhộitụsẽđượccảithiện. Tuynhiên, phươngphápnàyđòihỏicácmộtđomongmuốn (độđolýtưởngmàthườngkhôngtồntại). Thôngthường, cácđộđonàysẽđượcxâydựngnhưsau: netpdlàđộđomongmuốn netplàđộđothực δplàhàm delta

  18. Cơ sở lý thuyết của phương pháp OWO-HWO

  19. Cơ sở lý thuyết của phương pháp OWO-HWO (tt) Bằngcáchlàmnhỏgiátrị (phươngpháp gradient chẳnghạn) ta sẽtìmđượccácgiátrịe(j,i)mongmuốn. Khiđócáctrọngsốcủa node ẩnsẽđượccộngvàogiátrị Độthayđổicủaphươngsaimẫuứngvớithayđổicủa w(j,i) sẽđượctínhnhưsau

  20. Cơ sở lý thuyết của phương pháp OWO-HWO (tt) Liệugiảithuậtnàycóhộitụ? RõràngE ≤ 0 => DãyEk (ứngvớilầnlặpthứ k) làmộtdãysốthựckhôngâmkhôngtăng. SuyraEkhộitụ.

  21. Giải thuật 1. Khởitạobộtrọngvàcácngưỡngtrongmạngvớigiátrịnhỏ. Chọnsốlầnlặptốiđa Nit , gán it = 0. 2. it = it + 1. Nếu it > Nitthìdừng. 3. Duyệtbộ training, tínhcácgiátrị

  22. Giải thuật (tt) 4. Giải phương trình tính các trọng số đầu ra Sau đó tính E. 5. Nếu E tăng, giảm giá trị của Z, load lại các trọng số ẩn tốt nhất đã có, chuyển qua bước 9. 6. Duyệt bộ training một lần nữa. Tính các giá trị:

  23. Giải thuật (tt) 7. Giải phương trình tính các trọng số lớp ẩn e(j,i): 8. Tính hệ số học Z từ biểu thức với α nhỏ hơn gần bằng 1 9. Cập nhật trọng số các node ẩn. 10. Trở lại bước 2.

  24. Một số ví dụ

  25. Một số ví dụ (tt)

  26. 3 Thuật toán định kích thước Nội dung

  27. Thuật Toán Định Kích Thước (Sizing Algorithm) • Thuật toán định kích thước sẽ giúp chúng ta dự đoán trước số lượng phần tử của lớp ẩn của MLP và độ lỗi tương ứng với nó. • Thuật toán định kích thước cho MLP được xây dựng dựa trên các nền tảng sau: • Piecewise Linear Network (PLN) • Không gian nhớ (Pattern storage) • Giả thuyết và các bổ đề

  28. Piecewise Linear Network (PLN) • Đặc điểm: • Dùng để xấp xỉ hàm không tuyến tính. • PLN huấn luyện nhanh hơn MLP. • PLN tạo ra sự xấp xỉ không liên tục. • Độ tin cậy không cao.

  29. Piecewise Linear Network (PLN) Mô hình của Piecewise Linear Network

  30. PLN – Cấu trúc • Một PLN cho N đầu vào và M đầu ra bao gồm: • K cluster. • K vector trung tâm mn (độ dài N) • K ma trận trọng số Wn ( M x (N+1) chiều) để lưu lại trọng số huấn luyện cho mỗi clusters. • Một hàm đo khoảng cách d. Hàm này dùng để tính khoảng cách từ vector input đến các vector trung tâm của các cluster. • Vector kỳ vọng µ và Vector độ lệch chuẩn σ với độ dài N

  31. PLN – Cách thức hoạt động • Mỗi vector đầu vào xp sẽ được biến đổi thành: xp’ = (xpT : 1)T • Tất cả các phần tử của xp’ (ngoại trừ phần tử thứ N+1) được chuẩn hóa theo công thức: x'p(n) = (x'p(n) - µ(n))/ σ(n) với 1< n < N

  32. PLN – Cách thức hoạt động Xét xem vector input thuộc về cluster nào dựa vào hàm d . Ta nói vector input xp thuộc về cluster k nếu : d(x'p, mk)= min i d(x'p, mi). Khi xp thuộc về cluster k, vector kết quả sẽ được tính: yp = Wk . x'p

  33. PLN – Cách thức hoạt động

  34. PLN – Thuật toán huấn luyện 1. Khởi tạo PLN với một cluster có vector trung tâm là vector trung bình của các input vector. Tiếp đó, ta thêm 1 cluster mới vào. Cluster mới này có vector trung tâm được tạo ra bằng cách xáo trộn vector trung tâm của cluster đầu tiên. Sử dụng hàm tính khoảng cách d để gán tất cả các mẫu học cho 2 cluster đầu tiên: mẫu học x sẽ được gán cho cluster gần nó nhất (tính bằng hàm khoảng cách d). Với mỗi lần lặp, cluster mới được thêm vào bằng cáchphân chia một trong các cluster có sẵn.

  35. PLN – Thuật toán huấn luyện 2. Chọn 4 cluster có lỗi đối sánh lớn nhất làm các cluster có khả năng bị phân chia (candidate clusters). Đăt tên các cluster này là: π(1), π(2), π(3), π(4). 3. Chọn 1 cluster π(k) 1 ≤ k ≤ 4 trong nhóm candidate clusters, sử dụng thuật toán “Sequential Leader Clustering” với ngưỡng θ để tách thử cluster này ra thành 4 cluster con: π(k, 1), π(k, 2), π(k, 3), π(k, 4). θ được tính bằng công thức: Với: Nv(k): số lượng mẫu thuộc về cluster k. S(k): tập các mẫu thuộc về cluster k. mk: vector trung tâm của cluter k.

  36. PLN – Thuật toán huấn luyện 4. Với mỗi cặp cluster π(k, u), π(k, v) u≠v và 1≤u,v≤4, gán các mẫu thuộc về cluster π(k, u’) và π(k, v’) (với u’≠v’≠u≠v ) cho cluster π(k, u), π(k, v) dựa vào hàm khoảng cách d. Nếu E­π(k,u) + E­π(k,v) < Eπ(k) , ta lưu lại cặp cluster π(k, u), π(k, v). 5. Trong các cặp π(k, u), π(k, v) lưu lại ở bước (4), chọn cặp π(k,u”), π(k,v”) sao cho E­π(k,u”) + E­π(k,v”) là nhỏ nhất. 6. Loại bỏ cluster π(k) và thêm cluster π(k,u”), π(k,v”) vào. Nếu mạng có E<Emin , ta gán Emin = E và lưu lại cấu trúc mạng PLN hiện tại.

  37. PLN – Thuật toán huấn luyện 7. Sử dụng cấu trúc mạng ở bước 3, lặp từ bước 3 đến bước 6 để thực hiện việc phân chia thử đối với các candicate clusters π(k) 1 ≤ k ≤ 4 còn lại. Chỉ lưu lại những cấu trúc mạng PLN mới với E<Emin . 8. Trong những cấu trúc mạng PLN đã lưu lại, chọn cấu trúc mạng có E nhỏ nhất. 9. Nếu không có cấu trúc mạng có E<Emin hoặc đã lặp đủ số lần lặp yêu cầu, thuật toán kết thúc. Ngược lại, quay trở lại lặp từ bước 2 đến bước 9.

  38. Không gian nhớ (Pattern Storage) Pattern Storage của một network là số lượng các cặp input-output được chọn 1 cách ngẫu nhiên sao cho network được huấn luyện để nhớ mà không có lỗi. Nói cách khác, nếu ta tiến hành test network trên chính tập mẫu đã huấn luyện thì sẽ không có lỗi nào xảy ra.

  39. Các bổ đề Bổ đề 1: Pattern Storage của MLP có N input, M output, Nh neuron lớp ẩn là: Bổ đề 2: Pattern storage của PLN có Nc cluster và N input là: SPLN = Nc (N + 1)

  40. Giả định cơ sở • Nếu PWL và MLP có cùng pattern storage thì chúng có cùng lỗi huấn luyện (training error). Giả thuyết này đúng trong 3 trường hợp sau: • Output của network là một hằng số cho tất cả các mẫu huấn luyện. • Output của network là một hàm tuyến tính của input. • Cả PLN và MLP đều ghi nhớ tất cả các mẫu huấn luyện và sau đó có cùng lỗi huấn luyện (bằng 0).

  41. Thuật toán định kích thước (Sizing Algorithm) • Xét PLN đang được huấn luyện ở lần lặp thứ i. Ta có: • Et(i) là lỗi huấn luyện ở lần lặp thứ i. • Nc(i) là số lượng cluster ở lần lặp thứ i. • Khi đó, theo bổ đề 2, pattern storages của PLN được tính bởi công thức: SPLN (i) = Nc(i) . (N + 1) (*) • Xét MLP có cùng pattern storage với PLN ở lần lặp thứ i ở trên. Theo bổ đề 1 MLP này sẽ có pattern storage là: (**)

  42. Thuật toán định kích thước (Sizing Algorithm) • => Nhưvậy, nếuxâydựngmột MLP cósố hidden unit làNh(i)thìlỗihuấnluyệnsẽlàEt(i) • => Sizing Algorithm đãgiúptadựđoánđượcsốphầntửtronglớpẩnkèmtheolỗihuấnluyệncủa MLP. Theo giả thuyết nền tảng: nếu PLN và MLP có cùng pattern storage thì chúng có cùng lỗi huấn luyện. Ta có:

  43. 4 Xác định giới hạn của độ lỗi Nội dung

  44. Xác định giới hạn của độ lỗi Cơ sở toán học Cramer-Rao Maximum A Posteriori (CRMAP) Xác định giới hạn của độ lỗi trong MLP

  45. Cơ sở toán học Trường ĐH Khoa Học Tự Nhiên

  46. Cơ sở toán học (tt) Trường ĐH Khoa Học Tự Nhiên

  47. Cơ sở toán học (tt) Trường ĐH Khoa Học Tự Nhiên

  48. Cramer-Rao maximum a posteriori (CRMAP) Trường ĐH Khoa Học Tự Nhiên

  49. Cramer-Rao maximum a posteriori (CRMAP) (tt) Trường ĐH Khoa Học Tự Nhiên

  50. Cramer-Rao maximum a posteriori (CRMAP) (tt) Trường ĐH Khoa Học Tự Nhiên

More Related