Máy học và mạng neural - Bài 04: Mạng nơron nhân tạo Artificial Neural Networks

Nhiều chức năng mục tiêu có thể học từ dữ liệu ảnh – Đinh danh của người – Hướng nhìn của người: left, right, straight, up – Với các trạng thái: vui, buồn, giận dữ, trung lập – Đeo kính hoặc không đeo kính  Trong phần này chương trình minh họa cho việc học hướng mà người đang nhìn (left, right, straight, up)

pdf41 trang | Chia sẻ: nguyenlam99 | Lượt xem: 1873 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Máy học và mạng neural - Bài 04: Mạng nơron nhân tạo Artificial Neural Networks, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
07/08/2013 1 Bài 04 – Mạng nơron nhân tạo Artificial Neural Networks 1 Nội dung  Giới thiệu  Các bài toán phù hợp với ANNs  Cấu tạo ANNs  Các hàm ngưỡng  Kiến trúc ANNs  Các qui tắc học  Mạng neuron McCulloch-Pitts  Perceptrons  ANNs nhiều tầng và giải thuật lan truyền ngược  Các vấn đề liên quan 2 07/08/2013 2  Định nghĩa: mạng nơ-ron là một tập hợp các dây thần kinh kết nối với nhau  Mạng nơ-ron sinh học: là một mạng lưới các nơ-ron có kết nối hoặc có liên quan về mặt chức năng trực thuộc hệ thần kinh.  Mạng nơ-ron nhân tạo: được thiết kế để mô hình một số tính chất của mạng nơ-ron sinh học (Bắt chước cách học của các hệ thần kinh sinh vật)  ANN khác với hệ thống nơron thần kinh: – Nhiều vấn đề phức tạp trong hệ thống neural thần kinh mà không được mô tả bởi ANN. – Nhiều đặc trưng của ANN không phù hợp với những hệ thống nơron sinh vật. Giới thiệu 3 Giới thiệu  Bộ não người được ước tính có chứa: – Khoảng 1011 nơron thần kinh. – Mỗi kết nối sẽ có104 nơron. – Thời gian trao đổi thông tin giữa các nơron là10-3 giây (chậm hơn nhiều so với máy tính là 10-10 giây). – Tuy nhiên con người có thể đưa ra những quyết định phức tạp và nhanh chóng một cách đáng ngạc nhiên. Ví dụ, một người cần khoảng 10-1 giây để nhận ra mẹ của họ.  Khả năng xử lý thông tin của hệ thần kinh phải xử lý song song tốc độ cao và hoạt động trên những nơron tiêu biểu. 4 07/08/2013 3 Giới thiệu  Mạng nơron nhân tạo được bắt nguồn từ mạng nơron thần kinh trong các sinh vật. 5 6 W1 X1 W2 X2 W3 X3 .K KW X 1 Z Z Y Não Cấu trúc của các neurons (tế bào thần kinh) Tín hiệu nhận từ các neurons khác Tín hiệu truyền đi các neurons khác Phần thân tế bào với các cấu trúc tế bào kết hợp Mô hình hóa Mô hình các thành phần của hệ thần kinh Neurocomputer Tín hiệu nhận từ các thành phần khác Trọng số Hàm x.định g.trị ngưỡng Tín hiệu truyền đi các thành phần khác Giá trị nhập Giá trị xuất Giới thiệu - Mô hình hóa mạng NN 07/08/2013 4 1 0 1 0 0 0 0 1 0 Lặp nhiều lần việc biểu diễn mạng với các dữ liệu mẫu bao gồm các mối liên kết giữa các giá trị nhập và các giá trị đích (ví dụ, các giá trị này gần giống như kết xuất) Các nút sẽ tự điều chỉnh trọng số của chúng cho đến khi đạt được giá trị xuất mong muốn với một bộ dữ liệu đầu vào cho trước (ví dụ: cho đến khi biên lỗi giữa giá trị xuất và giá trị mong muốn đạt bằng nhau và bằng không) Xây dựng cơ chế giải quyết bài toán bằng mạng neuron Giá trị nhập Lớp nhập Lớp ẩn Lớp xuất Giá trị xuất Giá trị mong muốn So sánh Thay đổi trọng số cho đến khi giá trị lỗi đầu xuất đạt bằng không (phương pháp Lan Truyền Ngược) Giới thiệu - Cơ chế học của mạng 7 Giới thiệu  Mô hình học của mạng nơron là một phương pháp tốt để giải quyết các vấn đề như: – Tính xấp xỉ các hàm có giá trị dạng số thực, số rời rạc, vector. – Các dạng dữ liệu cảm biến phức tạp.  Một số ứng dụng của mạng nơron (mạng lan truyền ngược): – Nhận dạng chữ viết tay. – Nhận dạng giọng nói. – Nhận dạng mặt người. 8 07/08/2013 5 VD: Autonomous Land Vehicle In a Neural Network  Một ví dụ điển hình về mô hình học của mạng nơron là hệ thống ALVINN (Autonomous Land Vehicle In a Neural Network) của Pomerleau (1993).  Camera thu ảnh 30x32 pixel.  Hệ thống học 5 phút.  Hệ thống điều khiển xe với tốc độ 70 dặm/giờ trên đoạn đường 90 dặm. 9 Các bài toán phù hợp với ANN  Bài toán phân loại (classification): quyết định một giá trị đưa vào thuộc loại hay nhóm nào,  Bài toán nhận dạng mẫu (pattern recognition): nhận dạng cấu trúc trong các dữ liệu có thể là bị nhiễu.  Bài toán dự đoán (prediction): chẳng hạn như nhận dạng bệnh từ các triệu chứng, nhận dạng tác nhân từ các hiệu ứng,  Bài toán tối ưu (optimization): tìm một tổ chức ràng buộc tốt nhất  Bài toán lọc nhiễu (Noise filtering): hay phân biệt các tín hiệu với nền, tìm ra các thành phần không quan trọng trong một tín hiệu. 10 07/08/2013 6 Các bài toán phù hợp với ANN 11 Các bài toán phù hợp với ANN 12 07/08/2013 7 Cấu tạo một neural  Các tính hiệu đầu vào  Tập các trọng số  Một mức kích hoạt  Một hàm ngưỡng (hàm truyền, hàm thích nghi) 13 Các hàm ngưỡng  Hàm Harlimit ánh xạ giá trị bất kỳ từ (-,+) vào tập {0,1} nên thích hợp cho các mạng thực hiện chức năng phân loại.  Các hàm nén sigmoid và tansigmoid ánh xạ giá trị bất kỳ từ (-,+) vào các khoảng [0,1] và [-1,1] tương ứng.  Hàm purelinear trả về bất kỳ giá trị thực nào và thường được sử dụng ở các Nơrons trong lớp xuất. 14 Theo Thuyết Cybenko về xấp xỉ hàm phi tuyến tính, bất kỳ một hàm nào đều có thể được xấp xỉ với một độ chính xác tùy ý bởi một mạng với 3 lớp Nơron có các hàm truyền tuyến tính trong lớp xuất và các hàm truyền nén trong hai lớp ẩn còn lại. 07/08/2013 8 Các hàm ngưỡng 15 A hard limiting and bipolar linear threshold Kiến trúc NN 16 07/08/2013 9 Kiến trúc NN 17 Kiến trúc NN 18 07/08/2013 10 Các qui tắc học 19 20 Các trọng số So sánh Điều chỉnh trọng số Đích (Target) Đầu vào (Input) Sơ đồ huấn luyện Mạng Nơron, học có giám sát Mạng được điều chỉnh trọng số dựa trên tập huấn luyện (training set). - Ý tưởng: mạng sẽ được điều chỉnh theo một cách nào đó sao cho nó có thể học được các mẫu (pattern) hiện hữu trong tập huấn luyện. Sau khi hoàn tất điều chỉnh, mạng được trang bị khả năng tổng quát hóa từ các mẫu đã học để dự báo các giá trị trong tương lai. - Cơ chế điều chỉnh trọng số: sử dụng hàm sai số hay hàm đánh giá. Điều chỉnh tham số 07/08/2013 11 Mạng neuron McCulloch-Pitts  Đầu vào của một neuron McCulloch-Pitts là +1 (kích thích) hoặc –1 (ức chế)  Có thể tính toán bất cứ hàm logic nào, 21 Perceptrons 22 07/08/2013 12 Perceptrons 23 Perceptron  x1 x2 xn . . . w1 w2 wn w0 x0=1 1 if i=0n wi xi >0 o(xi)= -1 otherwise o { 07/08/2013 13 Perceptrons  Một percetron đơn chỉ có thể phân tách được những tập mẫu có thể phân tách chuyến tính (có thể dùng một siêu phẳng để chia tập mẫu thành n -1 phần nếu giá trị nhập có n chiều).  Một ứng dụng đơn giản của Percetron là dùng để mô tả các hàm logic như AND, OR, NAND, NOR. Ví dụ  Với w0 = -0.8 và w1 = w2 = 0.5 ta có hàm AND.  Với w0 = -0.3 và w1 = w2 = 0.5 ta có hàm OR. Chú ý là x0 = 1 và x1, x2 nhận giá trị 0 hoặc 1 25 Luật Học Perceptron 26 07/08/2013 14 Luật Học Perceptron 27 Ví dụ perceptron  Tập dữ liệu huấn luyện 28 Perceptron dùng để phân loại bài toán 07/08/2013 15 Giới hạn của perceptron – tính tách rời tuyến tính của bài toán  bài toán phân loại không tuyến tính đó là phép toán ex-or. Bảng chân trị Đồ thị các điểm dữ liệu của bài toán Ex-Or 29 Phương pháp hạ dốc và luật delta  Đây là luật để huấn luyện perceptron mà không cần ngưỡng.  Tập dữ liệu huấn luyện không nhất thiết phải phân tách tuyến tính. Vì luật huấn luyện này tìm ra một xấp xỉ tốt nhất với các mẫu huấn luyện.  Ý tưởng chính là sử dụng việc hạ dốc để tìm kiếm trong không gian H một vector trọng số phù hợp với mẫu huấn luyện nhất.  Là cơ sở cho giải thuật BACKPROPAGATION 30 07/08/2013 16 31 Phương pháp hạ dốc và luật delta Trực Quan Hóa Không Gian Giả Thuyết 32 07/08/2013 17 Đạo Hàm Của Luật Hạ Dốc 33 Đạo Hàm Của Luật Hạ Dốc 34 07/08/2013 18 Giải Thuật Hạ Dốc 35 Nhận xét  Hạ dốc là một mô hình tổng quát quan trọng cho việc học.  Việc tìm kiếm được thực hiện trên toàn bộ không gian giả thuyết – không gian này có thể rất lớn hoặc vô hạn.  Do đó có thể phải cần tới hàng ngàn lần lặp mới hội tụ. Nếu mặt phẳng sai số có nhiều cực tiểu địa phương thì giải thuật này không đảm bảo tìm ra được giá trị nhỏ nhất.  Một biến thể của giảm độ dốc nhằm giảm bớt số lần điều chỉnh trọng số là hạ dốc ngẫu nhiên. 36 07/08/2013 19 ANNs nhiều tầng và giải thuật lan truyền ngược 37 Giải thuật lan truyền ngược 38 07/08/2013 20 Giải thuật lan truyền ngược 39 Cấu trúc mạng 40 07/08/2013 21 Giai đoạn lan truyền tiến (1) 41 Giai đoạn lan truyền tiến (2) 42 07/08/2013 22 Giai đoạn lan truyền ngược (1) 43 Giai đoạn lan truyền ngược (2) 44 07/08/2013 23 Giai đoạn lan truyền ngược (3) 45 Giai đoạn lan truyền ngược (4) 46 07/08/2013 24 Giai đoạn lan truyền ngược (5) 47 Giai đoạn lan truyền ngược (6) 48 07/08/2013 25 Lan truyền thẳng 49 Mô hình hóa thuật toán BP Lan truyền thẳng 50 Mô hình hóa thuật toán BP 07/08/2013 26 Lan truyền thẳng 51 Mô hình hóa thuật toán BP Lan truyền thẳng 52 Mô hình hóa thuật toán BP 07/08/2013 27 Lan truyền thẳng 53 Mô hình hóa thuật toán BP Lan truyền thẳng 54 Mô hình hóa thuật toán BP 07/08/2013 28 Lan truyền thẳng 55 Mô hình hóa thuật toán BP Cập nhật lỗi 56 Mô hình hóa thuật toán BP 07/08/2013 29 Cập nhật lỗi 57 Mô hình hóa thuật toán BP Cập nhật lỗi 58 Mô hình hóa thuật toán BP 07/08/2013 30 Cập nhật lỗi 59 Mô hình hóa thuật toán BP Cập nhật lỗi 60 Mô hình hóa thuật toán BP 07/08/2013 31 Cập nhật lỗi 61 Mô hình hóa thuật toán BP Cập nhật trọng số mạng 62 Mô hình hóa thuật toán BP 07/08/2013 32 Cập nhật trọng số mạng 63 Mô hình hóa thuật toán BP Cập nhật trọng số mạng 64 Mô hình hóa thuật toán BP 07/08/2013 33 Cập nhật trọng số mạng 65 Mô hình hóa thuật toán BP Cập nhật trọng số mạng 66 Mô hình hóa thuật toán BP 07/08/2013 34 Cập nhật trọng số mạng 67 Mô hình hóa thuật toán BP BP – Khởi tạo giá trị các trọng số 68 07/08/2013 35 BP – Tốc độ học (Learning rate) 69 Hội tụ và cực tiểu cục bộ Không có cách nào để dự đoán một cách chắc chắn khi nào các cực tiểu cục bộ phát sinh trở ngại. Một số cách giảm vấn đề cực tiểu cục bộ:  Thêm số hạng đà cho luật cập nhật trọng số  Sử dụng hạ dốc ngẫu nhiên hơn là hạ dốc thực sự  Huấn luyện nhiều mạng với cùng dữ liệu, nhưng khởi gán mỗi mạng với các trọng số ngẫu nhiên khác nhau. Nếu vẫn dẫn đến những cực tiểu cục bộ khác nhau thì chọn mạng có hiệu suất tốt nhất trên tập dữ liệu đánh giá. 70 07/08/2013 36 Số lượng các nơron ở tầng ẩn? 71 Khả năng biểu diễn của các mạng truyền thẳng Các hàm liên tục: Mọi hàm liên tục bị chặn đều có thể được xấp xỉ với sai số nhỏ tùy ý (theo tiêu chuẩn hữu hạn) bởi mạng hai lớp. Mạng gồm:  Các đơn vị sigmoid ở lớp ẩn  Các đơn vị tuyến tính ở lớp xuất. 72 07/08/2013 37 Khả năng biểu diễn của các mạng truyền thẳng Các hàm tùy ý: Một hàm bất kỳ có thể được xấp xỉ với độ chính xác tùy ý bởi mạng ba lớp (Cybenko 1988). Mạng gồm:  Các đơn vị sigmoid ở hai lớp ẩn  Các đơn vị tuyến tính ở lớp xuất. Vì một hàm bất kỳ đều có thể được xấp xỉ bằng kết hợp tuyến tính nhiều hàm cục bộ hóa và hai lớp đơn vị sigmoid đủ để biểu diễn tốt xấp xỉ cục bộ. 73 Ưu nhược điểm 74 07/08/2013 38 Khi nào dùng ANNs 75 Ví dụ minh họa mạng nơron 76 07/08/2013 39 Ví dụ minh họa ANNs  Nhiều chức năng mục tiêu có thể học từ dữ liệu ảnh – Định danh của người – Hướng nhìn của người: left, right, straight, up – Với các trạng thái: vui, buồn, giận dữ, trung lập – Đeo kính hoặc không đeo kính  Trong phần này chương trình minh họa cho việc học hướng mà người đang nhìn (left, right, straight, up) 77 Ví dụ minh họa ANNs  Thiết kế mạng dựa trên việc áp dụng thuật toán lan truyền ngược.  Tác vụ học: phân lớp hình ảnh của máy ảnh (left, right, straight, up)  Cơ sở dữ liệu ảnh – 624 ảnh xám của 20 người khác nhau; với 32 ảnh/ một người – Độ phân giải 120 x 128 (chuyển sang 30 x 32) 78 07/08/2013 40 79 Đọc thêm  Giáo trình - chương 4.  Ethem Alpaydın. Introduction to Machine Learning. Second Edition. The MIT Press Cambridge, Massachusetts London, England  Joone : a Java framework to build and run AI applications based on neural networks 80 07/08/2013 41 Câu hỏi và bài tập 81

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

  • pdflecture04_neuralnetwork_0536.pdf
Tài liệu liên quan