Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 46 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
46
Dung lượng
3,44 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGH NGHỆ - Hà Nội 2018 Mạng Tích Chập LỜI CẢM ƠN Mạng Neural Tích Chập GIẢNG VIÊN HƯỚNG DẪN: PGS.TS HÀ QUANG THỤY Mạng Tích Chập Thực tế ln cho thấy, thành công gắn liền với hỗ trợ, giúp đỡ người xung quanh giúp đỡ hay nhiều, trực tiếp hay gián Trong suốt thời gian từ bắt đầu làm tiểu luận đến nay, em nhận quan tâm, bảo, giúp đỡ thầy cô,anh chị bạn bè xung quanh Với lòng biết ơn vơ sâu sắc, tồn thể Nhóm chúng em xin gửi lời cảm ơn chân thành từ đáy long đến quý Thầy Cô trường Đại học Công nghệ dùng tri thức tâm huyết để truyền đạt cho chúng em vốn kiến thức quý báu suốt thời gian học tập trường Đặc biệt, chúng em xin chân thành cảm ơn Thầy giáo PGS.TS Hà Quang Thụy tận tâm bảo hướng dẫn chúng em qua buổi học, buổi nói chuyện, thảo luận đề tài nghiên cứu Nhờ có lời hướng dẫn, dạy bảo đó, luận văn chúng em hoàn thành cách suất sắc Một lần nữa, chúng em xin gửi lời cảm ơn chân thành đến thầy Ban đầu em cịn bỡ ngỡ vốn kiến thức em cịn hạn Do vậy, khơng tránh khỏi thiếu sót, em mong nhận ý kiến đóng góp q Thầy Cơ bạn học lớp luận hoàn thiện Em xin chân thành cảm ơn! Hà Nội, ngày 15 tháng 12 năm 2018 Sinh viên nhóm Mạng Tích Chập Mục Lục Chương 9: Mạng tích chập Mạng tích chập (Convolutional network), hay mạng neuron tích chập (Convolutional neural network - CNN), loại mạng neuron đặc biệt để xử lý liệu có topology dạng lưới Ví dụ liệu dạng chuỗi thời gian (time-series) xem l ưới chi ều chứa mẫu lấy khoảng thời gian định, liệu hình ảnh xem lưới chiều tạo điểm ảnh Mạng tích chập áp dụng thành công nhiều ứng dụng thực tiễn Tên gọi "mạng neuron tích chập" biểu thị cho việc mạng sử dụng phép tốn tích chập (convolution) - dạng phép tốn tuyến tính (linear operation) đặc biệt Mạng tích chập đơn giản mạng neuron sử dụng phép tích chập thay phép nhân ma trận tầng mạng Trong chương này, trước tiên, chúng tơi giải thích phép tích chập ta sử dụng mạng neuron Sau đó, chúng tơi miêu tả phép tốn gộp (pooling) - phép toán sử dụng hầu hết mạng tích chập Thơng thường, phép tích chập sử dụng mạng neuron tích chập thường khơng hồn tồn tương đồng với phép tích chập sử dụng lĩnh vực khác, kỹ thuật hay toán túy Chúng tơi trình bày vài biến thể hàm tích chập thường dùng mạng neuron thực tế, cách áp dụng phép tích chập vào dạng liệu khác nhau, với số chi ều khác phương pháp nâng cao hiệu phép tích chập Mạng tích chập ví dụ bật việc nguyên lý thần kinh học ảnh hưởng tới học sâu Chúng thảo luận nguyên lý thần kinh học đưa kết luận, nhận xét vai trị mạng tích chập lịch sử học sâu Chương không đề cập tới việc thiết kế cấu trúc mạng tích chập Mục tiêu chương giải thích cơng cụ mà mạng tích chập cung cấp, cịn lại, chương 11 hướng dẫn tổng quát cách chọn công cụ phù hợp theo hồn cảnh Nghiên cứu thiết kế mạng tích chập phát triển nhanh tới mức vài tuần tới vài tháng lại có kiến trúc tốt công bố theo tiêu chuẩn Do đó, chúng tơi khơng thể kể kiến trúc tốt giới hạn sách Tuy nhiên, giới thiệu thành tố tảng tạo nên thiết kế 9.1 Phép tích chập Định nghĩa chung tích chập phép tốn hai hàm có đối số thực Chúng tơi đưa ví dụ hai hàm số kiểu để giải thích rõ Mạng Tích Chập Giả sử ta theo dõi vị trí tàu vũ trụ có cảm biến laser Cảm bi ến laser cung cấp đầu vị trí tàu thời điểm Cả có giá tr ị thực, nghĩa ta có kết cảm biến laser thời điểm Bây giờ, giả sử cảm ứng laser bị nhiễu Để giảm bớt sai lệch việc dự đốn vị trí tàu, lấy trung bình vài phép đo Dĩ nhiên, giá tr ị v ừa đo đ ược gần thời điểm quan trọng nên ta dùng trung bình có trọng số, tức coi trọng giá trị vừa đo Ta dùng hàm trọng số , "tuổi" giá trị đo Nếu sử dụng phép tốn trung bình có trọng số thời điểm, ta có hàm ước lượng làm trơn vị trí tàu: Phép tốn gọi tích chập Ta thường biểuu diễn dấu () Trong ví dụ trên, phải hàm mật độ xác suất hợp lệ, không, không thu đầu trung bình có trọng số Thêm nữa, trọng số cho tất đối số âm phải , khơng đầu tính tới số liệu đo tương lai, vốn nằm khả Đây ràng buộc cụ thể cho ví dụ Nhìn chung, phép tích chập xác định cho hàm với tích phân xác định có mục đích sử dụng khác khơng để tính trung bình có trọng số Trong thuật ngữ mạng tích chập, đối số phép tích chập (trong ví dụ này, hàm ) thường gọi đầu vào (input), đối số thứ hai (trong ví dụ này, hàm ) lõi (kernel) Đầu đôi lúc gọi ánh xạ đặc trưng (feature map) Trong ví dụ chúng ta, việc cảm biến laser đo thời điểm phi thực tế Thông thường, làm việc với liệu máy tính, thời gian bị rời rạc hóa, cảm biến cung cấp liệu cách khoảng thời gian định Nếu giả định cảm ứng đo theo giây thực tế Chỉ số thời gian lúc số nguyên Nếu giả định tính theo số ngun , định nghĩa phép tích chập rời rạc: Trong ứng dụng học máy, đầu vào thường mảng liệu đa chiều, lõi thường mảng đa chiều tham số tuỳ theo thuật toán học Ta gọi mảng đa chi ều tensor Vì phần tử đầu vào lõi phải l ưu tr ữ hoàn toàn riêng bi ệt, thường giả định hàm chỗ trừ số điểm hữu hạn mà lưu trữ giá trị Nghĩa là, thực tế, tính t vơ hạn cách tính tổng lượng hữu hạn phần tử mảng Cuối cùng, ta thường sử dụng hàm tích chập nhiều trục (axis) Ví dụ, dùng ảnh chiều làm đầu vào, cần sử dụng lõi chiều : Phép tích chập có tính giao hốn, nghĩa ta viết: Mạng Tích Chập Thơng thường, công thức thứ hai đơn giản thư viện học máy, khoảng giá trị hợp lệ biến động Phép tích chập có tính giáo hốn ta đảo (flip) lõi tương ứng với đầu vào, đồng nghĩa tăng, số gắn với đầu vào tăng, số gắn với lõi lại giảm Lý cho việc đảo lõi để đảm bảo tính giao hốn Tính giao hốn hữu dụng việc chứng minh cơng thức, thường khơng phải tính chất quan trọng thực thi mạng neuron Thay vào đó, nhiều thư viện mạng neuron sử dụng hàm tương đương, gọi tương quan chéo (cross-correlation), vốn tương tự hàm tích chập khơng đảo lõi: Rất nhiều thư viện học máy sử dụng tương quan chéo gọi tích chập Trong sách này, chúng tơi theo quy ước gọi hai phép toán tích chập nói rõ thực có đảo lõi hay khơng chỗ liên quan đến đảo lõi Trong học máy, thuật toán học học giá trị phù hợp lõi theo trình t ự phù hợp, thu ật tốn học dựa tích chập có đảo lõi học lõi bị đảo so với lõi học thuật tốn khơng có đảo lõi Phép tích chập dùng học máy, mà thường dùng đồng thời với hàm khác, kết hợp hàm không bị ảnh hưởng bất chấp có đảo hay khơng đảo lõi Xem Hình 9.1 ví dụ phép tích chập (khơng có đảo lõi) áp dụng cho tensor chi ều Có thể coi tích chập rời rạc phép nhân ma trận, nhiên, ma tr ận có ràng bu ộc số phần tử ma trận có giá trị Ví dụ, với phép tích chập rời rạc đơn biến, hàng ma trận bị ràng buộc phải hàng bên dịch chuyển phần tử Đây gọi ma trận Toeplitz Trong trường hợp chiều, tích chập tương ứng với ma trận tuần hoàn khối hai mặt (doubly block circulant matrix) Ngoài ràng buộc phần tử ma trận, phép tích chập thường liên quan tới ma trận thưa (ma trận mà hầu hết phần tử ) Điều lõi thường nhỏ nhiều so với ảnh đầu vào Bất kì thuật tốn mạng neuron hoạt động với phép nhân ma trận không phụ thuộc vào tính chất đặc biệt cấu trúc ma trận hoạt động với phép tích chập mà khơng cần thay đổi mạng neuron Các mạng neuron tích chập điển hình thường dùng kĩ thuật chuyên môn khác để xử lý đầu vào lớn cách hiệu quả, nhiên mặt lý thuyết điều khơng phải bắt buộc 9.2 Động lực Phép tích chập mở hội giúp cải thiện hệ thống học máy với ý tưởng: tương tác thưa (sparse interactions), dùng chung tham số (parameter sharing) biểu diễn đẳng biến (equivariant reprentations) Hơn thế, tích chập cịn cung cấp công cụ để làm việc với đầu vào có kích thước thay đổi Chúng tơi giải thích lần lược t ừng ý t ưởng Mạng Tích Chập Hình 9.1: Một ví dụ tích chập chiều không đảo lõi Chúng ta giới hạn đầu vị trí có lõi nằm hồn tồn ảnh, mà số hồn cảnh gọi tích chập "hợp lệ" Chúng vẽ ô v ới mũi tên để mơ tả cách tạo phần tử phía bên trái tensor đưa lõi vào vùng phía bên trái t ương ứng tensor đầu vào Các tầng mạng neuron truyền thống dùng phép nhân ma trận ma trận tham số với tham số riêng biệt thể tương tác đơn vị đầu vào đơn vị đầu Nghĩa là, tất đơn vị đầu tương tác với tất đơn vị đầu vào Tuy nhiên, mạng tích chập lại thường có tương tác thưa (cũng gọi kết nối thưa (sparse connectivity) hay trọng số thưa (sparse weight)) Điều tạo cách sử dụng lõi nhỏ đầu vào Ví dụ, xử lý ảnh, ảnh đầu vào có hàng ngàn hay hàng triệu điểm ảnh, nhận diện đặc trưng nhỏ, có ý nghĩa cạnh với lõi chừng hàng chục hay hàng trăm ểm ảnh Điều nghĩa cần lưu trữ lượng tham số hơn, giúp giảm yêu cầu lưu trữ mô hình, tăng tính hiệu mặt thống kê Đồng thời, việc tính tốn đầu cần phép toán Những cải tiến mặt hiệu thường lớn Nếu có đầu vào đầu ra, phép nhân ma trận cần tham số, thuật toán thực tế tốn thời gian chạy (cho mẫu) Nếu giới hạn số lượng kết nối đầu xuống ; phương pháp kết nối thưa cần tham số thời gian chạy Trong nhiều ứng dụng thực tế, ta đạt kết tốt cho nhiều tác vụ học máy giữ nhỏ vài bậc Xem hình 9.2 hình 9.3 để hình dung kết nối thưa Trong mạng tích chập đa tầng, đơn vị tầng sâu tương tác gián tiếp v ới phần lớn đầu vào, hình 9.4 Điều cho phép mạng diễn tả cách hi ệu tương tác phức tạp nhiều biến cách tạo tương tác từ khối xây dựng đơn giản mà khối diễn tả tương tác thưa Mạng Tích Chập Hình 9.2: Kết nối thưa, xem hình hướng từ lên Chúng tô đậm đơn vị đầu vào, , đơn v ị đầu chịu ảnh hưởng đầu vào (Hình phía trên) Khi tạo nên từ tích chập với lõi có độ rộng , có ba đầu bị ảnh hưởng (Hình phía dưới) Khi tạo phép nhân ma trận, kết nối khơng cịn thưa nữa, nên tất đầu bị ảnh hưởng Hình 9.3: Kết nối thưa, xem hình hướng từ xuống Chúng tô đậm đơn vị đầu ra, , đơn vị đầu vào bị đầu ảnh hưởng Các đơn vị gọi trường tiếp nhận (receptive field) (Hình phía trên) Khi tạo từ tích chập với lõi có độ rộng , có ba đầu vào ảnh hưởng (Hình phía dưới) Khi tạo phép nhân ma trận, kết nối khơng cịn thưa nữa, nên tất đầu vào ảnh hưởng Hình 9.4 Trong mạng tích chập, trường tiếp nhận đơn vị tầng sâu lớn tr ường tiếp nhận đơn vị tầng nông Hiệu ứng tăng lên mạng lưới có tính chất thiết k ế tích chập sải (strided convolution) (Hình 9.12) hay gộp (phần 9.3) Nghĩa k ết n ối tr ực tiếp mạng tích chập thưa, đơn vị lớp sâu kết nối gián tiếp với t ất hay hầu hết ảnh đầu vào Dùng chung tham số ám đến việc sử dụng chung tham số cho nhiều hàm mơ hình Trong mạng neuron truyền thống, phần tử ma trận trọng số Mạng Tích Chập sử dụng lần tính tốn đầu tầng Nó nhân với phần tử đầu vào không sử dụng lại Một cách tương đương với dùng chung tham số, nói ma trận có liên kết trọng số (tied weights) (Duong NGUYEN: đề xuất đổi lại thành trọng số có liên kết trọng số có kết nối trọng số có ràng buộc, danh từ trọng số khơng phải liên kết), giá trị trọng số cho đầu vào gắn với giá trị trọng số chỗ khác Trong mạng neuron tích chập, thành phần lõi sử dụng tất vị trí đầu vào (có lẽ trừ vài điểm ảnh biên, tuỳ thuộc vào các thiết kế liên quan t ới biên) Dùng chung tham số dùng tích chập nghĩa thay học tham số riêng biệt cho vị trí, ta học tham số Điều không ảnh hưởng tới thời gian chạy trình lan truyền thuận-vẫn -nhưng làm giảm đáng kể nhu cầu lưu trữ mơ hình xuống tham số Nhắc lại rằng: thường nhỏ vài bậc Vì thường có kích cỡ gần tương đương, thực tế thường không đáng kể so với Tích chập nhờ hiệu nhiều so với việc nhân ma trận mặt yêu cầu nhớ hiệu thống kê Xem Hình 9.5 để hiểu mô tả minh họa cách dùng chung tham số hoạt động Hình 9.5 Dùng chung tham số Mũi tên đen kết nối dùng chung tham số định hai mơ hình khác (Hình phía trên) Các mũi tên đen chức phần tử trung tâm lõi -phần-tử mơ hình tích chập (Hình phía dưới) Mũi tên đen chức phần tử trung tâm ma trận trọng số mơ hình kết nối đầy đủ Mơ hình khơng dùng chung tham số, nên tham số dùng lần Để lấy ví dụ cho hai quy tắc thực tế, hình 9.6 cho thấy kết nối thưa dùng chung tham số cải thiện đáng kể hiệu hàm tuyến tính việc phát cạnh ảnh Hình 9.6 Hiệu nhận diện cạnh biên Hình bên phải tạo nên lấy điểm ảnh ảnh gốc trừ giá trị điểm ảnh lân cận bên trái Nó cho thấy cường độ tất cạnh hướng dọc ảnh đầu Mạng Tích Chập vào, vốn có nhiều khả có ích việc nhận diện vật thể Cả hai ảnh cao điểm ảnh Ảnh đầu vào rộng điểm ảnh, ảnh đầu rộng điểm ảnh Biến đổi mơ tả lõi tích chập có phần tử, cần phép toán dấu phẩy động (floating point operations) (hai phép nhân phép cộng cho điểm ảnh đầu ra) để tính tốn sử dụng tích chập Để mô tả biến đổi phép nhân ma trận, cần , hay tỷ phần tử ma trận, tích chập hiệu tỷ lần việc thể phép biến đổi Thuật toán nhân ma trận trực tiếp thực tỷ phép tốn dấu phẩy động, tích chập hiệu gần lần mặt tính tốn Tất nhiên, hầu hết phần tử ma trận Nếu lưu trữ phần tử khác ma trận, phép nhân ma trận tích chập cần lượng phép tốn dấu phẩy động tương đương tính tốn Ma trận cần phải chứa phần tử Tích chập cách hiệu để mơ tả phép biến đổi áp dụng biến đổi tuyến tính cho vùng nhỏ cục lên toàn đầu vào Nguồn: Paula Goodfellow Trong trường hợp tích chập, có dạng cụ thể dùng chung tham số khiến cho tầng có tính chất gọi tính đẳng biến phép tịnh tiến Một hàm gọi có tính đẳng biến đầu vào thay đổi, đầu thay đổi theo cách Đặc biệt, hàm đẳng biến với hàm Trong trường hợp tích chập, ta cho hàm tịnh tiến đầu vào, nghĩa dịch chuyển nó, hàm tích chập đẳng bi ến với Ví d ụ, cho hàm độ sáng ảnh tọa độ nguyên Cho hàm ánh xạ hàm ảnh tới hàm ảnh khác, cho hàm ảnh với Việc dịch chuyển tất điểm ảnh đơn vị sang phải Nếu ta áp dụng phép biến đổi vào , sau áp dụng tích chập, kết giống ta áp dụng tích chập vào , sau áp dụng phép biến đổi vào đầu Khi xử lý liệu chuỗi thời gian, điều nghĩa tích chập tạo loại dịng thời gian tính chất khác xuất đầu vào Nếu đầu vào ta t ịnh tiến kiện thời điểm muộn biểu diễn giống hệt kiện xuất đầu ra, muộn Tương tự với hình ảnh, tích chập tạo ánh xạ chiều cho biết tính chất cụ thể xuất đầu vào Nếu di chuyển vật thể đầu vào, biển diễn bị di chuyển lượng tương đương đầu Điều có lợi biết hàm lượng nhỏ điểm ảnh lân cận dùng cho nhiều vị trí đầu vào Ví dụ, xử lý ảnh, xác định cạnh tầng mạng tích chập có lợi Những cạnh gi ống nhiều xuất khắp nơi ảnh, nên chia sẻ tham số khắp ảnh việc thực tế Trong vài trường hợp, không muốn chia sẻ tham số khắp ảnh Ví dụ, xử lý ảnh xén cho tập trung vào mặt người, muốn trích xuất tính chất khác điểm khác nhau—một phần mạng xử lý phần khuôn mặt cần tìm lơng mày, phần khác mạng lưới xử lý phần khuôn mặt cần tìm cằm Tích chập khơng đẳng biến với số phép biến đổi khác, phép phóng to, thu nhỏ hay phép xoay Xử lý phép biến đổi cần chế khác Cuối cùng, có vài dạng liệu xử lý mạng neuron định nghĩa phép nhân ma trận với ma trận có hình dạng cố định Tích chập cho phép x lý vài dạng liệu Chúng ta thảo luận điều sâu phần 9.7 9.3 Phép toán gộp Một tầng mạng tích chập điển hình gồm ba giai đoạn (xem hình 9.7) Trong giai đoạn đầu tiên, tầng mạng thực song song vài phép tích chập để tạo tập tín hi ệu kích hoạt tuyến tính Trong giai đoạn thứ hai, ta cho tín hiệu kích hoạt ến tính 10 Mạng Tích Chập Hình 9.18: Hàm Gabor với nhiều tinh chỉnh tham số khác Màu trắng biểu thị trọng số dương lớn, màu đen biểu thị trọng số âm lớn màu xám tương ứng với trọng số (Hình bên trái) Các hàm Gabor có giá trị khác tham số điều khiển hệ tọa độ: , Mỗi hàm Gabor lưới gán giá trị tương ứng với vị trí lưới, chọn để lọc Gabor nhạy cảm với hướng toả từ trung tâm lưới Đối với hai hình cịn lại , gán (Hình giữa) Hàm Gabor với tham số tỉ lệ Gauss khác Các hàm Gabor xếp theo chiều rộng tăng (giảm ) di chuyển từ trái qua phải tăng chiều cao (giảm ) di chuyển từ xuống Đối với hai hình lại, giá trị cố định lần chiều rộng ảnh (Hình bên phải) Hàm Gabor với thơng số dạng hình khác Khi di chuyển từ xuống dưới, tăng lên, dịch chuyển từ trái sang phải, tăng lên Đối với hai hình cịn lại, gán được cố định lần chiều rộng ảnh Tại tham số kiểm soát thuộc tính hàm Gabor Hình 9.18 cho thấy m ột số ví dụ hàm Gabor với tinh chỉnh khác tham số Các tham số , định nghĩa hệ tọa độ Chúng ta dịch chuyển xoay để tạo thành Cụ thể, tế bào đơn giản phản hồi đặc trưng hình ảnh tập trung điểm (, ) phản ứng với thay đổi độ sáng di chuyển dọc theo đường thẳng xoay radian từ phương ngang Được xem hàm , hàm sau phản ứng với thay đổi độ sáng di chuyển dọc theo trục Nó có hai yếu tố quan trọng: hàm Gauss, hai hàm Yếu tố Gauss xem số hạng chặn cửa (gating term) đảm bảo tế bào đơn giản phản ứng với giá trị gần , nói cách khác, gần trung tâm phạm vi tiếp nhận tế bào Yếu tố thay đổi quy mô điều chỉnh t độ lớn phản ứng tế bào đơn giản, kiểm soát việc phạm vi tiếp nhận giảm nhanh Yếu tố hàm điều khiển cách tế bào đơn phản ứng với thay đổi độ sáng dọc theo trục Tham số điều khiển tần số hàm , điều khiển pha trống Cùng với nhau, góc nhìn hoạt hoạ tế bào đơn giản có mang ý nghĩa tế bào đơn giản phản ứng với tần số không gian cụ thể độ sáng theo hướng cụ thể vị trí cụ thể Các tế bào đơn kích thích sóng ánh sáng hình ảnh có pha với trọng số Điều xảy hình ảnh sáng với trọng số dương tối với trọng số âm Các tế bào đơn giản hầu hết bị hạn chế sóng 32 Mạng Tích Chập ánh sáng hồn tồn lệch pha với trọng số — hình ảnh tối với trọng số dương sáng với trọng số âm Khung nhìn hoạt họa tế bào phức tạp tính định chuẩn vector chiều chứa hai đáp ứng hai tế bào đơn giản: Một trường hợp đặc biệt quan trọng xảy có tham số giống ngoại trừ , thiết lập cho lệch pha chu kỳ so với Trong trường hợp này, tạo thành cặp cầu phương Một tế bào phức tạp xác định theo cách phản ứng hình ảnh xem lại Gauss chứa sóng có biên độ cao với tần số theo hướng gần , lệch pha sóng Nói cách khác, tế bào phức tạp bất biến trước tịnh tiến nhỏ hình ảnh theo hướng , để phủ nhận hình ảnh (thay màu đen màu trắng ngược lại) Một số tương tác bật khoa học thần kinh học máy đến từ việc so sánh trực quan đặc trưng học mơ hình học máy với đặc trưng sử dụng V1 Olshausen Field (1996) thuật tốn học khơng giám sát đơn giản, mã hóa thưa, học đặc trưng với trường tiếp nhận tương tự tế bào đơn giản Kể từ đó, tìm loạt đa dạng thuật tốn học thống kê học đặc trưng với hàm giống Gabor áp dụng cho hình ảnh tự nhiên Đi ều bao gồm hầu hết thuật toán học sâu, học đặc trưng tầng chúng Hình 9.19 cho thấy số ví dụ Do có nhiều thuật tốn học tập khác học phát cạnh biên, khó để kết luận thuật toán học cụ thể mơ hình “đúng đắn” não dựa đặc trưng mà học (mặc dù chắn dấu hiệu xấu thuật tốn khơng học số phát cạnh biên áp dụng vào hình ảnh tự nhiên) Những đặc trưng phần quan tr ọng c cấu trúc thống kê hình ảnh tự nhiên phục hồi nhiều hướng tiếp cận khác với mơ hình thống kê Xem Hyvärinen et al (2009) để xem xét lĩnh vực thống kê hình ảnh tự nhiên Hình 9.19: Nhiều thuật toán học máy học đặc trưng phát cạnh biên màu sắc cụ thể cạnh biên áp dụng cho hình ảnh tự nhiên Các dị tìm đặc trưng gợi nhớ đến hàm Gabor biết có mặt võ não thị giác sơ cấp (Hình bên trái) Trọng số học thuật tốn học khơng giám sát (mã hóa thưa nhọn mỏng) áp dụng cho mảnh hình ảnh nhỏ (Hình bên phải) Các lõi chập học tầng mạng tích chập đầu cực đại có giám sát đầy đủ Các cặp lọc gần kề ảnh hưởng đến đơn vị đầu cực đại 33 Mạng Tích Chập 9.11 Mạng tích chập lịch sử học sâu Mạng tích chập đóng vai trò quan trọng lịch sử học sâu Đây ví d ụ điển hình cho việc ứng dụng thành công hiểu biết thu cách từ nghiên cứu não ứng dụng học máy Cũng có số mơ hình học sâu thực tốt, trước mô hình học sâu xem khả thi Mạng tích chập m ột số mạng neuron giải ứng dụng thương mại quan trọng đầu ứng dụng thương mại học tập sâu Ví dụ, thập niên 1990, nhóm nghiên cứu neuron AT&T phát triển mạng tích chập để kiểm tra séc (LeCun et al., 1998b) Vào cuối năm 1990, hệ th ống đ ược tập đoàn NRC triển khai đọc tổng số lượng séc Hoa Kỳ Sau đó, số hệ thống nhân dạng ký tự quang học (OCR) nhận dạng chữ viết tay dựa mạng tích chập Microsoft triển khai (Simard et al., 2003) Xem chương 12 để bi ết thêm chi tiết ứng dụng ứng dụng đại mạng tích chập Xem LeCun et al (2010) để hiểu lịch sử cặn kẽ mạng tích chập đến năm 2010 Mạng tích chập sử dụng để chiến thắng nhiều thi Cường độ hành lợi ích thương mại học sâu bắt đầu Krizhevsky đồng nghiệp (2012) chiến thắng thách thức nhận dạng vật thể ImageNet năm gần đây, việc mạng tích chập sử dụng để giành chiến thắng thi học máy thị giác máy tính khác gây chấn động Mạng tích chập số mạng sâu hoạt động huấn luyện thuật toán lan truyền ngược Ta khơng hồn tồn hiểu mạng tích chập l ại thành cơng mạng truyền ngược tổng quát bị xem thất bại Có thể đơn gi ản mạng tích chập hiệu mặt tính tốn mạng liên kết đầy đủ, dễ dàng chạy nhiều thử nghiệm, tinh chỉnh việc triển khai tinh chỉnh siêu tham số Các mạng lớn dễ huấn luyện Với phần cứng đại, mạng liên kết đầy đủ lớn thực tốt nhiều tác vụ, sử dụng tập liệu có sẵn hàm kích hoạt vốn phổ biến suốt khoảng thời gian m ạng liên kết đầy đủ bị cho khơng hoạt động tốt Có thể rào cản thành cơng mạng neuron tâm lý (các chuyên gia không mong đợi mạng neuron hoạt động, họ khơng đầu tư nghiêm túc để sử dụng mạng neuron) Dù nữa, thật may mắn mạng tích chập hoạt động tốt từ nhiều thập kỷ trước Bằng nhiều cách, chúng thắp lên đuốc cho tồn phần cịn lại học sâu mở đường cho việc đón nhận mạng neuron nói chung Mạng tích chập cung cấp cách để chuyên biệt hóa mạng neuron hoạt động với liệu có cấu trúc liên kết dạng lưới rõ ràng mở rộng mơ trở nên cực lớn Cách tiếp cận cách thành công cấu trúc liên kết hình ảnh chi ều Để xử lý liệu chiều, quay sang chuyên môn mạnh mẽ khác khung neuron: mạng neuron truy hồi 34 Mạng Tích Chập Phụ Lục GoogleNet 1.1 Giới thiệu Trong phần này, em giới thiệu mạng GoogleNet (mạng chi ến th ắng cu ộc th ị ImageNet 2014) inception block tầng mạng GoogleNet gồm có 22 tầng có lượng tham số c ần phải hu ấn luy ện h ơn m ạng Alexnet khoảng 12 lần có lỗi hơn, độ xác tốt thời gian huấn luyện Kiến trúc mạng sử dụng cho thiết bị di động nh vào độ xác t ốt kích thước nhỏ mạng khác 1.2 Inception Layer Ý tưởng inception layer bao phủ vùng l ớn c ảnh nh ưng v ẫn gi ữ đ ược đ ặc trưng nhỏ nhiều nhân chập có kích thước khác bao gồm: 1x1, 3x3 5x5 Ý tưởng tương tự sử dụng chuỗi lọc Gabor có kích thước khác nhau, giải vấn đề với ảnh có scale khác Filter concatenation 1x1 convolution 3x3 convolution 5x5 convolution 3x3 max pooling Previous Layer Hình Naive Inception module Trong inception block vấn đề đặt có nhi ều tham s ố c ần ph ải h ọc có th ể d ẫn đến tượng overfit Vấn đề giải khéo léo nhân chập 1x1, giúp giảm số lượng phép tốn, tăng số tầng lên, từ mơ tả đ ược hàm s ố ph ức t ạp 35 Mạng Tích Chập 1x1 conv “bottleneck” layers Filter concatenation 1x1 convolution 3x3 convolution 5x5 convolution 1x1 convolution 1x1 convolution 1x1 convolution 3x3 max pooling Previous Layer Hình Inception module với số chiều giảm GoogleNet Đầy Đủ GoogleNet đầy đủ sử dụng inception block, phần đầu vào gồm l ần l ượt t ầng convpool- 2x conv - pool Đầu gồm lớp Fully connected l ớp softmax để phân l ớp ảnh 36 Mạng Tích Chập Với kiến trúc này, mạng sử dụng inception block h ơn nh ưng v ẫn cho k ết phân loại tốt ResNet 2.1 Giới thiệu Vào năm 2015, Residual Neural Network (ResNet) (Kaiming c ộng s ự) gi ới thi ệu cách sử dụng “skip connections” batch norm “Skip connections” t ương t ự nh cổng mạng RNN, sử dụng nhiều cho liệu chuỗi Nh cách s d ụng cấu trúc mạng trên, ResNet đạt top-5 error rate 3.7% ImageNet, v ượt qua kh ả người việc nhận dạng ảnh Với cấu trúc mạng trên, sử dụng t ới 152 tầng ResNet có số tham số mạng VGG16 2.2 Residual block Cấu trúc Residual block Bằng cách sử dụng “skip connections” này, trình truy ền ngược đ ạo hàm tổng đạo hàm, chép đạo hàm x mà khơng có suy gi ảm 37 Mạng Tích Chập 2.3 Kiến trúc đầy đủ block Hình Residual block with Batch norm Hình Residual block with bottlenecks Với batch-norm hình 3, giúp huấn luyện mạng nhanh Về lý thuyết Residual block huấn luyện mạng sâu h ơn, nhiên v ấn đ ề googlenet bị overfit Bằng cách sử dụng “nút cổ chai”, hình giúp m ạng huấn luyện sâu 2.4 ResNet Đầy Đủ ResNet thường có mơ hình là: 50 tầng, 101 tầng 152 tầng Được mô t ả nh sau: Hình Mơ hình ResNet đầy đủ 38 Mạng Tích Chập Thực Hành Phần thực hành nhóm bảo gồm thử nghiệm model Inception ResNet50 3.1 Dữ liệu mơ hình huấn luận tập MsCOCO(the Microsoft Common Objects in Context) Bao gồm 91 nhãn cần phân lớp Trong có 82 với số lượng mẫu 5000 ảnh Tổng số lượng ảnh : 2,500,000 Hình 3.1.1 phân bố nhãn số lượng mẫu so sánh với tập PASCAL VOC 39 Mạng Tích Chập Hình 3.1, số nhãn mẫu từ tập 3.2 Huấn Luyện Tập liệu chia theo bảng sau: Train Validation Test 40 Mạng Tích Chập 118.000 5.000 41.000 Dữ liệu chia cho việc huấn luyện Cả mơ hình huấn luyện Nvidia-K80, đầu vào chuẩn hóa 600x600, đưa phân bố chuẩn Mơ hình đánh giá độ đo mAP(mean average precision) 3.3, Kết Kết thử nghiệm tập test, sử dụng GPU Nvidia-K80 Tốc độ(ms) mAP[^-1] ResNet50 76 35 Inception 42 24 Code : https://github.com/gungui98/data-mining Từ kết thấy, độ xác ResNet tốt hơn,tuy nhiên địi hỏi nhiều xử lý tính tốn so với Inception Net 3.4, Biểu diễn Sử dụng tensorboard, biểu diễn so sánh mơ sau: 41 Mạng Tích Chập Hình 3.4.1, Mơ hình ResNet50 42 Mạng Tích Chập Hình 3.4.2, Mơ hình Inception Net 43 Mạng Tích Chập số kết so sánh thực tế: Tham khảo LeCun, Y (1989) Generalization and network design strategies Technical Report CRG-TR89-4, University of Toronto Zhou, Y and Chellappa, R (1988) Computation of optical flow using a neural network In Neural Networks, 1988., IEEE International Conference on, pages 71–78 IEEE Goodfellow, I J., Warde-Farley, D., Mirza, M., Courville, A., and Bengio, Y (2013a) Maxout networks In S Dasgupta and D McAllester, editors, ICML’13 , pages 1319– 1327 Boureau, Y., Ponce, J., and LeCun, Y (2010) A theoretical analysis of feature pooling in vision algorithms In Proc International Conference on Machine learning (ICML’10) Boureau, Y., Le Roux, N., Bach, F., Ponce, J., and LeCun, Y (2011) Ask the locals: multi-way local pooling for image recognition In Proc International Conference on Computer Vision (ICCV’11) IEEE Jia, Y., Huang, C., and Darrell, T (2012) Beyond spatial pyramids: Receptive field learning for pooled image features In Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, pages 3370–3377 IEEE Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., Erhan, D., Vanhoucke, V., and Rabinovich, A (2014a) Going deeper with convolutions Technical report, arXiv:1409.4842 44 Mạng Tích Chập LeCun, Y (1986) Learning processes in an asymmetric threshold network In F FogelmanSoulié, E Bienenstock, and G Weisbuch, editors, Disordered Systems and Biological Organization, pages 233–240 Springer-Verlag, Les Houches, France Gregor, K and LeCun, Y (2010a) Emergence of complex-like cells in a temporal product network with local receptive fields Technical report, arXiv:1006.0448 Jain, V., Murray, J F., Roth, F., Turaga, S., Zhigulin, V., Briggman, K L., Helmstaedter, M N., Denk, W., and Seung, H S (2007) Supervised learning of image restoration with convolutional networks In Computer Vision, 2007 ICCV 2007 IEEE 11th International Conference on, pages 1–8 IEEE Pinheiro, P H O and Collobert, R (2014) Recurrent convolutional neural networks for scene labeling In ICML’2014 Briggman, K., Denk, W., Seung, S., Helmstaedter, M N., and Turaga, S C (2009) Maximin affinity learning of image segmentation In NIPS’2009 , pages 1865–1873 Turaga, S C., Murray, J F., Jain, V., Roth, F., Helmstaedter, M., Briggman, K., Denk, W., and Seung, H S (2010) Convolutional networks can learn to generate affinity graphs for image segmentation Neural Computation, 22(2), 511–538 Farabet, C., Couprie, C., Najman, L., and LeCun, Y (2013) Learning hierarchical features for scene labeling IEEE Transactions on Pattern Analysis and Machine Intelligence, 35(8), 1915–1929 Jarrett, K., Kavukcuoglu, K., Ranzato, M., and LeCun, Y (2009) What is the best multi-stage architecture for object recognition? In ICCV’09 Saxe, A M., Koh, P W., Chen, Z., Bhand, M., Suresh, B., and Ng, A (2011) On random weights and unsupervised feature learning In Proc ICML’2011 ACM Pinto, N., Stone, Z., Zickler, T., and Cox, D (2011) Scaling up biologically-inspired computer vision: A case study in unconstrained face recognition on facebook In Computer Vision and Pattern Recognition Workshops (CVPRW), 2011 IEEE Computer Society Conference on, pages 35–42 IEEE Cox, D and Pinto, N (2011) Beyond simple features: A large-scale feature search approach to unconstrained face recognition In Automatic Face & Gesture Recognition and Workshops (FG 2011), 2011 IEEE International Conference on, pages 8–15 IEEE Ranzato, M., Huang, F., Boureau, Y., and LeCun, Y (2007b) Unsupervised learning of invariant feature hierarchies with applications to object recognition In Proceedings of the Computer Vision and Pattern Recognition Conference (CVPR’07) IEEE Press Kavukcuoglu, K., Sermanet, P., Boureau, Y.-L., Gregor, K., Mathieu, M., and LeCun, Y (2010) Learning convolutional feature hierarchies for visual recognition In NIPS’2010 45 Mạng Tích Chập DiCarlo, J J (2013) Mechanisms underlying visual object recognition: Humans vs neurons vs machines NIPS Tutorial Larochelle, H and Hinton, G E (2010) Learning to combine foveal glimpses with a thirdorder Boltzmann machine In Advances in Neural Information Processing Systems 23 , pages 1243–1251 Denil, M., Bazzani, L., Larochelle, H., and de Freitas, N (2012) Learning where to attend with deep architectures for image tracking Neural Computation, 24(8), 2151–2184 Olshausen, B A and Field, D J (1996) Emergence of simple-cell receptive field properties by learning a sparse code for natural images Nature, 381, 607–609 Hyvärinen, A., Hurri, J., and Hoyer, P O (2009) Natural Image Statistics: A probabilistic approach to early computational vision Springer-Verlag Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, Andrew Rabinovich Going Deeper with Convolutions arXiv: 1409.4842 Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun Deep Residual Learning for Image Recognition arXiv: 1512.03385 46 ... 2018 Sinh viên nhóm Mạng Tích Chập Mục Lục Chương 9: Mạng tích chập Mạng tích chập (Convolutional network), hay mạng neuron tích chập (Convolutional neural network - CNN), loại mạng neuron đặc biệt... Các lõi chập học tầng mạng tích chập đầu cực đại có giám sát đầy đủ Các cặp lọc gần kề ảnh hưởng đến đơn vị đầu cực đại 33 Mạng Tích Chập 9.11 Mạng tích chập lịch sử học sâu Mạng tích chập đóng... mạng Xét mạng tích chập với lõi có chiều rộng tầng mạng Trong ví dụ này, không sử dụng phép gộp nào, có thân phép tích chập làm giảm kích thước mơ hình mạng (Hình phía trên) Trong mạng tích chập