Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 86 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
86
Dung lượng
7,17 MB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA - VƯƠNG QUANG PHƯỚC NHẬN DẠNG HÌNH ẢNH BẰNG CÁCH KẾT HỢP MẠNG NEURAL TÍCH CHẬP VÀ MẠNG NEURAL TRUYỀN THỐNG Chuyên ngành: Kỹ thuật Điện tử Mã số: 60.52.02.03 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC TS HỒ PHƯỚC TIẾN Đà Nẵng – Năm 2017 i CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc LỜI CAM ĐOAN Kính gửi: Hội đồng bảo vệ luận văn tốt nghiệp Khoa Điện Tử - Viễn Thông, Trường Đại Học Bách Khoa – Đại Học Đà Nẵng Tôi tên là: Vương Quang Phước Hiện học viên lớp Cao học Kỹ thuật điện tử - Khố 32 - Khoa Điện Tử - Viễn Thơng, Trường Đại Học Bách Khoa – Đại Học Đà Nẵng Tôi xin cam đoan nội dung luận văn chép luận văn cơng trình có từ trước Nếu vi phạm tơi xin chịu hồn tồn trách nhiệm Học viên Vương Quang Phước ii MỤC LỤC LỜI CAM ĐOAN i MỤC LỤC ii TÓM TẮT LUẬN VĂN v DANH MỤC CÁC TỪ VIẾT TẮT vi DANH MỤC CÁC HÌNH vii MỞ ĐẦU CHƯƠNG LEARNING GIỚI THIỆU BÀI TỐN PHÂN LOẠI HÌNH ẢNH VÀ DEEP .4 1.1 Giới thiệu chương 1.2 Tổng quan tốn nhận dạng hình ảnh .4 1.3 Tổng quan Deep Learning 1.4 Kết luận chương 11 CHƯƠNG MẠNG NEURON NHÂN TẠO VÀ MƠ HÌNH KIẾN TRÚC KẾT HỢP GIỮA MẠNG CNN VÀ MLP .12 2.1 Giới thiệu chương .12 2.2 Mạng Neuron nhân tạo 12 2.2.1 Cấu trúc Neuron sinh học 12 2.2.2 Cấu trúc Perceptron 13 2.3 Sigmoid neuron 14 2.4 Multi-layers Perceptron (MLP) .16 2.5 Mạng Neuron tích chập (Convolutional Neural Network – CNN) .17 2.5.1 Vùng tiếp nhận cục .19 2.5.2 Trọng số dùng chung .21 2.5.3 Pooling .24 2.6 Cấu trúc kết hợp CNN MLP .25 2.6.1 Convolution-MLP 25 2.6.2 Lớp Pooling .26 2.6.3 Lớp ReLU 27 iii 2.6.4 Lớp Dropout 28 2.6.5 Hàm tổn hao .29 2.6.6 Mơ hình tổng thể 30 2.7 Kết luận chương 31 CHƯƠNG PHÂN LOẠI ẢNH SỬ DỤNG MƠ HÌNH MẠNG NEURON TÍCH CHẬP KẾT HỢP VỚI MẠNG NEURON TRUYỀN THỐNG 32 3.1 Giới thiệu chương .32 3.2 Mơ hình CNN – LeNet 32 3.3 thống Mơ hình kết hợp mạng Neuron tích chập mạng Neuron truyền .36 3.3.1 Kiến trúc ConvNet 36 3.3.2 Kết hợp mạng CNN mạng MLP phân loại ảnh 37 3.4 Khảo sát hệ thống vai trò hyperparameter 39 3.4.1 Learning Rate 39 3.4.2 Dropout 40 3.4.3 Số lượng khối CNN-MLP 41 3.5 Tiền xử lý liệu 42 3.5.1 Chuẩn hóa liệu (Normalization) 42 3.5.2 Whitening data 43 3.5.3 Kích thước gói liệu (Batch size) 43 3.6 Kết luận chương 44 CHƯƠNG KẾT QUẢ VÀ ĐÁNH GIÁ 45 4.1 Giới thiệu chương .45 4.2 Cơ sở liệu CIFAR-10 45 4.3 Phương pháp đánh giá 46 4.4 Khảo sát với mạng LeNet 46 4.5 Vai trò MLP kết hợp với CNN 47 4.6 Tác động tham số 49 4.6.1 Learning Rate 49 iv 4.6.2 Vai trò Dropout 51 4.6.3 Ảnh hưởng số khối đến kết phân loại 52 4.7 Khảo sát trình tiền xử lý liệu .55 4.7.1 Tác động chuẩn hóa liệu whitening .55 4.7.2 Ảnh hưởng Batch size đến kết 56 4.8 Kết luận chương 57 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 58 TÀI LIỆU THAM KHẢO 60 PHỤ LỤC .62 v TĨM TẮT LUẬN VĂN NHẬN DẠNG HÌNH ẢNH BẰNG CÁCH KẾT HỢP MẠNG NEURON TÍCH CHẬP VÀ MẠNG NEURON TRUYỀN THỐNG Học viên: Vương Quang Phước Mã số: 60.52.02.03 Khóa: 32 Chuyên ngành: Kỹ thuật điện tử Trường Đại học Bách khoa - ĐHĐN Tóm tắt - Gần đây, kỹ thuật Deep Learning tạo bước tiến đáng kể việc giải toán thị giác máy tính Bằng cách sử dụng kiến trúc mạng Neuron – mạng Neuron tích chập (Convolutional Neural Network - CNN) –, ta khắc phục trở ngại mạng Neuron truyền thống, tức mạng Perceptron đa lớp (Multilayer Perceptrons - MLP), từ giúp việc huấn luyện mạng Neuron trở nên hiệu Tuy nhiên, kiến trúc MLP có ưu điểm việc xử lý cục miền khơng gian Luận văn trình bày kiến trúc kết hợp CNN MLP để khai thác ưu điểm hai kiến trúc việc nhận dạng hình ảnh tự nhiên Vai trò khối chức mạng phân tích đánh giá thông qua tỉ lệ nhận dạng Việc đánh giá thực với liệu ảnh tự nhiên CIFAR-10 Quá trình thực nghiệm cho thấy kết hứa hẹn tỉ lệ nhận dạng, thể ưu điểm kiến trúc kết hợp CNN MLP Từ khóa - Deep Learning, Neuron network, MLP, CNN, mơ hình kết hợp, nhận dạng hình ảnh, CIFAR-10 IMAGE RECOGNITION USING MODEL COMBINATION – CONVOLUTIONAL NEURAL NETWORK AND TRADITIONAL NEURAL NETWORK Abstract - Recently, Deep Learning has brought about interesting improvements in solving computer vision problems By using a new specific architecture, i.e Convolutional Neural Network (CNN), which has more advantages than the traditional one - known as Multilayer Perceptrons (MLP) -, we can improve performance of the training process Yet, the MLP architecture is also useful for localized processing in the spatial domain This paper considers an architecture combining both CNN and MLP to exploit their advantages for the problem of natural image recognition The functional blocks in the network are analyzed and evaluated using recognition rate The evaluation is carried out with a well-known dataset (CIFAR-10) The experiment shows promising results, as well as benefits of a combination of the CNN and MLP architectures Key words - Deep Learning; Neural network; MLP; CNN; model combination; image classification; CIFAR-10 vi DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Diễn giải Ý nghĩa AI Artificial Intelligence Trí tuệ nhân tạo ANN Artificial Neural Network Mạng neuron nhân tạo CNN Convolutional Neural Network Mạng neuron tích chập MLP Multi-layers Perceptron Mạng perceptron đa lớp NiN Network in Network Mạng mạng FC Full-Connection Kết nối hoàn toàn NIST National Institute of Standards and Technology Viện tiêu chuẩn kỹ thuật quốc gia CIFAR Canadian Institute for Advanced Research Viện nghiên cứu tiên tiến Canada ReLU Rectified Linear Unit Bộ hiệu chỉnh tuyến tính GPU Graphics Processing Unit Bộ xử lý hình ảnh vii DANH MỤC CÁC HÌNH Hình 1.1 Biểu diễn liệu hình ảnh dạng lớp màu RGB Hình 1.2 Vật thể góc nhìn khác Hình 1.3 Khả nhận dạng đối tượng thay đổi theo khoảng cách .6 Hình 1.4 Đối tượng với hình dạng hoạt động khác Hình 1.5 Nhận dạng đối tượng trường hợp bị che khuất Hình 1.6 Tác động ánh sáng đến nhận dạng Hình 1.7 Khả gây nhầm lẫn đối tượng bối cảnh có tương đồng Hình 1.8 Sự đa dạng mặt chủng loại đối tượng .8 Hình 1.9 Mơ tả sơ lược q trình phân loại mạng Neuron [5] 11 Hình 2.1 Tế bào neuron thần kinh người [11] 12 Hình 2.2 Cấu trúc Perceptron đơn giản 13 Hình 2.3 Sự thay đổi nhỏ giá trị trọng số dẫn đến thay đổi nhỏ tương ứng ngõ .15 Hình 2.4 Hàm kích hoạt Perceptron [1] 15 Hình 2.5 Mơ hình Perceptron đơn giản 15 Hình 2.6 Minh họa hàm Sigmoid [1] 16 Hình 2.7 Một mơ hình mạng MLP gồm lớp Full Connection .17 Hình 2.8 Cấu trúc mạng đa lớp MLP 17 Hình 2.9 Ảnh ngõ vào với kích thước x 19 Hình 2.10 Vùng cục - vùng màu xanh có gạch chéo 19 Hình 2.11 Quá trình dịch cửa sổ lọc .20 Hình 2.12 Sự dịch chuyển theo chiều ngang dọc lọc .20 Hình 2.13 Minh họa việc áp dụng filter lấy tích chập lên ảnh ngõ vào 22 Hình 2.14 Các đồ đặc tính tạo thành tương ứng với lọc 22 Hình 2.15 Kích thước bị thu nhỏ sau q trình lấy tích chập 23 Hình 2.16 Chèn padding thực trước lấy tích chập 23 Hình 2.17 Lấy mẫu xuống giúp giảm kích thước liệu .24 viii Hình 2.18 (a) Khai thác thông tin theo miền không gian mơ hình CNN, (b) Khai thác thơng tin cục mơ hình MLP .26 Hình 2.19 (a) Lớp tích chập CNN, (b) Tích chập kết hợp với MLP [3] .26 Hình 2.20 Hàm kích hoạt ReLU, chuyển giá trị âm 27 Hình 2.21 Mạng Neuron trước sau trình Dropout, node gạch chéo node bị loại bỏ [7] 28 Hình 2.22 Cấu trúc NiN gồm khối mạng nối tiếp lớp Average Pooling [2] 30 Hình 3.1 Cấu trúc mạng LeNet [16] .33 Hình 3.2 Minh họa mơ hình LeNet sử dụng luận văn .34 Hình 3.3 Một phương pháp khác để mơ tả mạng LeNet sử dụng luận văn 35 Hình 3.4 Mơ hình mạng LeNet dùng cho phân loại ảnh tự nhiên 36 Hình 3.5 Kiến trúc CNN-MLP sử dụng khối (dạng rút gọn) 37 Hình 3.6 Mơ hình kết hợp kiến trúc CNN MLP, sử dụng khối CNNMLP 38 Hình 3.7 (a) Trường hợp với hệ số học vừa phải, (b) Trường hợp hệ số học thấp [1] 40 Hình 3.8 Mơ hình LeNet có chèn thêm lớp Dropout .41 Hình 3.9 Mơ hình CNN-MLP với lớp Dropout .41 Hình 3.10 Mơ hình kết hợp với khối CNN-MLP 42 Hình 3.11 Mơ hình kết hợp với khối CNN-MLP 42 Hình 3.12 Mơ hình kết hợp với khối CNN-MLP 42 Hình 3.13 Phân chia liệu epoch 43 Hình 4.1 Một số hình ảnh liệu CIFAR-10 46 Hình 4.2 Tỉ lệ nhận dạng lỗi với mơ hình LeNet .47 Hình 4.3 So sánh khả phân loại mơ hình thơng qua tỉ lệ nhận dạng lỗi tập kiểm tra 48 Hình 4.4 Kết huấn luyện kiểm tra mạng CNN-MLP .48 Hình 4.5 Tác động Learning rate lên mạng Lenet 50 ix Hình 4.6 Tác động Learning rate lên mạng CNN-MLP 50 Hình 4.7 Tỉ lệ nhận dạng lỗi mơ hình LeNet trường hợp có khơng có lớp Dropout 51 Hình 4.8 Tỉ lệ nhận dạng lỗi mơ hình CNN-MLP trường hợp có khơng có lớp Dropout .52 Hình 4.9 Tỉ lệ nhận dạng lỗi qua vòng lặp với mơ hình sử dụng khối CNN-MLP 53 Hình 4.10 Kết nhận dạng tương ứng số khối .53 Hình 4.11 Kết nhận với mơ hình có khối 54 Hình 4.12 So sánh tỉ lệ nhận dạng khối 54 Hình 4.13 Kết nhận dạng trường hợp có khơng có tiền xử lý liệu 55 Hình 4.14 Kết nhận dạng sử dụng liệu với batch size khác mơ hình mạng 57 62 PHỤ LỤC Phụ lục Mơ hình mạng LeNet sử dụng luận văn CONV 5*5*3*32 POOL(MAX) | Stride | Pad ReLU 3*3 | Stride | Pad [0 1] CONV ReLU POOL(AVG) 5*5*32*32 | Stride | Pad 3*3 | Stride | Pad [0 1] CONV ReLU POOL(AVG) 5*5*32*64 | Stride | Pad 3*3 | Stride | Pad [0 1] CONV ReLU 4*4*64*64 | Stride | Pad CONV SOFTMAXLOSS 1*1*64*10 | Stride | Pad Phụ lục Mơ hình kết hợp CNN MLP, theo NiN MatConvNet CONV 5*5*3*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 3*3*192*192 Stride Pad RELU RELU RELU CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*192 Stride Pad RELU RELU RELU CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*10 Stride Pad RELU RELU POOL(AVG) 7*7 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(AVG) 3*3 Stride Pad SOFTMAXLOSS DROPOUT 0.5 DROPOUT 0.5 63 Phụ lục Mơ hình thay đổi số lượng lớp CNN-MLP PL3.1 Sử dụng lớp CONV 5*5*3*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 3*3*192*192 Stride Pad RELU RELU RELU CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*192 Stride Pad RELU CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*192 Stride Pad RELU RELU RELU CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*10 Stride Pad RELU RELU POOL(AVG) 7*7 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(AVG) 3*3 Stride Pad SOFTMAXLOSS DROPOUT POOL(MAX) 3*3 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(AVG) 3*3 Stride Pad SOFTMAXLOSS DROPOUT 0.5 DROPOUT 0.5 PL3.2 Sử dụng lớp CONV 5*5*3*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 3*3*192*192 Stride Pad RELU RELU RELU RELU RELU RELU RELU CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*10 Stride Pad RELU RELU RELU POOL(AVG) 7*7 Stride Pad 0.5 DROPOUT 0.5 DROPOUT 0.5 64 PL3.3 Sử dụng lớp CONV 5*5*3*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 3*3*192*192 Stride Pad RELU RELU RELU RELU RELU CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*160 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*192 Stride Pad RELU RELU RELU RELU RELU CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*160*96 Stride Pad CONV-MLP 1*1*192*192 Stride Pad CONV-MLP 1*1*192*10 Stride Pad RELU RELU RELU RELU POOL(AVG) 7*7 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(AVG) 3*3 Stride Pad SOFTMAXLOSS DROPOUT 0.5 DROPOUT 0.5 DROPOUT 0.5 DROPOUT 0.5 65 Phụ lục Thay đổi tỉ lệ Dropout PL5.1 Mơ hình LeNet CONV 5*5*3*32 POOL(MAX) | Stride | Pad ReLU DROPOUT 3*3 | Stride | Pad [0 1] CONV 0.1/0.2/0.5 ReLU 5*5*32*32 | Stride | Pad CONV POOL(AVG) DROPOUT 3*3 | Stride | Pad [0 1] 0.1/0.2/0.5 ReLU 5*5*32*64 | Stride | Pad CONV POOL(AVG) DROPOUT 3*3 | Stride | Pad [0 1] 0.1/0.2/0.5 ReLU DROPOUT 4*4*64*64 | Stride | Pad CONV 0.1/0.2/0.5 SOFTMAXLOSS 1*1*64*10 | Stride | Pad PL5.2 Mơ hình CNN-MLP CONV 5*5*3*192 Stride Pad CONV 5*5*96*192 Stride Pad CONV 3*3*192*192 Stride Pad RELU RELU RELU CONV 1*1*192*160 Stride Pad CONV 1*1*192*192 Stride Pad CONV 1*1*192*192 Stride Pad RELU RELU RELU CONV 1*1*160*96 Stride Pad CONV 1*1*192*192 Stride Pad CONV 1*1*192*10 Stride Pad RELU RELU POOL(AVG) 7*7 Stride Pad POOL(MAX) 3*3 Stride Pad POOL(AVG) 3*3 Stride Pad SOFTMAXLOSS DROPOUT 0/0.3/0.5/0.7/0.9 DROPOUT 0/0.3/0.5/0.7/0.9 ... luận văn “NHẬN DẠNG HÌNH ẢNH BẰNG CÁCH KẾT HỢP MẠNG NEURON TÍCH CHẬP VÀ MẠNG NEURON TRUYỀN THỐNG”, tập trung vào việc nghiên cứu, xây dựng khảo sát hiệu hệ thống để giải tốn nhận dạng hình ảnh Nội... Giải tốn nhận dạng hình ảnh mơ hình kết hợp mạng Neuron tích chập (CNN) mạng Neuron truyền thống (MLP) Kế thừa ưu điểm kiến trúc mơ hình kết hợp Nghiên cứu, đánh giá hệ thống mạng kết hợp dựa... phương pháp nhận dạng hình ảnh xây dựng dựa mơ hình kiến trúc kết hợp, cụ thể mạng Neuron tích chập (CNN) mạng Neuron truyền thống (MLP) Hệ thống tiến hành đánh giá dựa tỉ lệ phân loại hình ảnh, ứng