Giới thiệu về Mạng Nơron

Chia sẻ: Nguyen Thi Ngoc Hoa | Ngày: | Loại File: PDF | Số trang:27

0
207
lượt xem
107
download

Giới thiệu về Mạng Nơron

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mạng nơ-ron là 1 họ các quá trình xử lý thông tin dựa trên mô hình các nơ-ron thần kinh của con người. Kết hợp 1 số lượng lớn các thành phần đơn giản (nơ-ron) cấu trúc phức tạp nhằm giải quyết 1 vấn đề cụ thể nào đó Giống như con người, mạng nơ-ron học bằng các ví dụ (mẫu) Lĩnh vực ứng dụng: Phát hiện bệnh Dự báo thị trường chứng khoán Nghiên cứu khách hàng Kiểm tra độ tin cậy của máy móc Quản lý rủi ro … ...

Chủ đề:
Lưu

Nội dung Text: Giới thiệu về Mạng Nơron

  1. Giới thiệu về Mạng Nơron Trình bày: Phạm Nguyên Khang 1
  2. Nội dung trình bày Sơ lược về mạng nơ-ron Perceptron Mạng nơron nhiều tầng (MLP) Giải thuật lan truyền ngược (back propagation) Một số vấn đề của mạng nơ-ron Hướng phát triển Thảo luận 2
  3. Nơ-ron sinh học 3
  4. Nơ-ron sinh học 4
  5. Sơ lược về mạng nơ-ron Mạng nơ-ron là 1 họ các quá trình xử lý thông tin dựa trên mô hình các nơ-ron thần kinh của con người. Kết hợp 1 số lượng lớn các thành phần đơn giản (nơ-ron) cấu trúc phức tạp nhằm giải quyết 1 vấn đề cụ thể nào đó Giống như con người, mạng nơ-ron học bằng các ví dụ (mẫu) Lĩnh vực ứng dụng: Phát hiện bệnh Dự báo thị trường chứng khoán Nghiên cứu khách hàng Kiểm tra độ tin cậy của máy móc Quản lý rủi ro … 5
  6. Nơ-ron nhân tạo (artificial neuron) Mô phỏng các nơ-ron sinh học Nhận các tín hiệu từ các nơ-ron khác (hay từ đầu vào). Nếu giá trị (tổng các tín hiệu có nhân hệ số) nhận được vượt quá một ngưỡng nào đó, nơ-ron này sẽ kích hoạt (nó sẽ gửi tín hiệu đến các nơ-ron khác nữa) 6
  7. Perceptron Perceptron là mô hình đơn giản nhất của mạng nơ-ron (chỉ có 1 tầng). Perceptron = 1 nơ-ron nhân tạo Mô hình toán của perceptron: ⎛ d ⎞ output = f ⎜ ∑ vi wi ⎟ ⎝ i =1 ⎠ f được gọi là hàm kích hoạt (activation action) hay hàm truyền có thể là: Tuyến tính Ngưỡng (Heaviside step) 1 Logistic sigmoid g ( x) = Gauss 1 + e− x … 7
  8. Huấn luyện Perceptron (1) Xét trường hợp, ⎧ d perceptron xử dụng hàm ⎪+ 1, ⎪ ∑v w i i >t kích hoạt ngưỡng. output = ⎨ i =1 d ⎪− 1, ⎪ ⎩ ∑v w i =1 i i ≤t Nếu cho w0 = -t, và v0 = 1, ta có thể viết lại: ⎧ d ⎪+ 1, ⎪ ∑v w i i >0 ⎛ d ⎞ output = ⎨ i =0 d = sign⎜ ∑ vi wi ⎟ ⎝ i =0 ⎠ ⎪− 1, ⎪ ⎩ ∑ i =0 vi wi ≤ 0 8
  9. Huấn luyện Perceptron (2) Khởi tạo: Khởi tạo w (0 hoặc ngẫu nhiên) Chọn tốc độ học µ Học: Với mỗi mẫu (x, t) trong tập học Tính y = f(x,w) Nếu (y != t) thay đổi vectơ trọng số w w(mới) = w(cũ) + µ(t-y)x Lặp lại quá trình « học » cho đến khi « điều kiện dừng » thỏa mãn 9
  10. Điều kiện dừng Quá trình học, thực chất là quá trình đi tìm các trọng số w sao cho lỗi xảy ra là nhỏ nhất phương pháp giải bài toán tối ưu Điều kiện dừng trong quá trình học có thể là 1 trong các tiêu chí, hay kết hợp các tiêu chí: Lỗi nhỏ đến mức chấp nhận được Sau một số bước lặp đủ lớn … 10
  11. Khả năng của Perceptron Phương trình v.w = 0 chính là một siêu phẳng trong không gian d-chiều. Perceptron có khả năng phân lớp tuyến tính. Có thể dùng để giải bài toán hồi quy tuyến tính Hạn chế của Perceptron: Không thể phân lớp phi tuyến Ví dụ: bài toán XOR Giải pháp: Sử dụng mạng nơ-ron nhiều tầng MLP 11
  12. Mạng nơ-ron nhiều tầng (MLP) 12
  13. Mạng nơ-ron nhiều tầng (MLP) 13
  14. Mạng nơ-ron nhiều tầng (MLP) input, output và các tầng ẩn (hiden layers). Số lượng các nơ-ron trong tầng input = số chiều Số lượng các nơ-ron trong tầng output thường = số các lớp Thông thường các mạng nơ-ron dùng 1 tầng ẩn. Số lượng các nơ-ron trong tầng ẩn thường được chọn = ½ (số nơ-ron tầng input + số nơ-ron trong tầng output) Chú ý: các nơ-ron trong tầng input thực sự không phải là các nơ-ron. Nó chỉ là chỗ để đưa dữ liệu của các mẫu vào 14
  15. Huấn luyện MLP Là quá trình thay đổi giá trị của w để mạng biểu diễn được tập dữ liệu học. Sự khác nhau giữa giá trị thật của mẫu và kết quả dự đoán của mạng gọi là lỗi (học có giám sát). Hàm lỗi thường dùng là sum squared error Hàm lỗi sẽ là một hàm (n+1) biến. Nếu vẽ trong không gian n+1 chiều ta sẽ có một mặt lỗi (error surface) Quá trình huấn luyện sẽ tìm các wi* để lỗi nhỏ nhất. Trong trường hợp tuyến tính, vói hàm lỗi là sum squared error thì mặt lỗi có dạng parapola có thể tìm được w* để lỗi = min tương đối dễ dàng Trong trường hợp tổng quát, hàm lỗi phức tạp (ví dụ: không phải hàm lồi) vấn đề cực tiểu cục bộ (local minimum) giải pháp ??? 15
  16. Một số giải thuật huấn luyện MLP Back propagation (khá nổi tiếng, dễ hiểu) Conjugate gradient descent & Levenber- Marquardt (Bishop 1995, Shepherd 1997) Quick propagation (Fahlman, 1988) Delta-Bar-Delta(Jacob 1988) 16
  17. Giải thuật lan truyền ngược Xét một mạng nơ-rơn 3 tầng: input, hiden, output Hàm kích hoạt của các nơ-ron: logistic sigmoid Giải thuật lan truyền ngược gồm 2 giai đoạn: Lan truyền tiến (tính output của các nơ-ron) Lan truyền ngược (thay đổi trọng số của các cung, dùng thông tin gradient của hàm lỗi) 17
  18. Gradient của hàm lỗi (1) y1 b1 Nơ-ron tầng output y2 b2 z = g (v ) Hàm lỗi: bk k 1 v = b0 + ∑ yi bi E ( z ) = (z − t ) 2 yk b0 2 1 i =1 1 Đạo hàm riêng của hàm g ( x) = 1 + e−x lỗi theo các trọng số b: Giá trị thật của ∂E ∂E ∂z ∂v mẫu huấn luyện = ∂b ∂z ∂v ∂b 18
  19. Gradient của hàm lỗi (2) Ta có: Đặt: ∂E ∂E ∂z = (z − t) p= = ( z − t ) z (1 − z ) ∂z ∂z ∂v ∂z ∂g Ta được: = = z (1 − z ) ∂v ∂v ∂E ⎧ p i = 0 ∂v ⎧ 1, i = 0 =⎨ =⎨ ∂bi ⎩ pyi i > 0 ∂bi ⎩ yi , i > 0 19
  20. Gradient của hàm lỗi (3) Nơ-ron tầng ẩn x1 a1 x2 a2 ad xd a0 1 Đạo hàm riêng của hàm y = g (u ) lỗi theo các trọng số a: d ∂E ∂E ∂y ∂u = u = a0 + ∑ xi ai ∂a ∂y ∂u ∂a i =1 20

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản