Đăng ký Đăng nhập
Trang chủ Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)...

Tài liệu Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)

.PDF
65
416
146

Mô tả:

Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)Nghiên cứu phương pháp học sâu cho lọc cộng tác (LV thạc sĩ)
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG --------------------------------------- TRƯƠNG THỊ HẬU NGHIÊN CỨU PHƯƠNG PHÁP HỌC SÂU CHO LỌC CỘNG TÁC CHUYÊN NGÀNH : KHOA HỌC MÁY TÍNH MÃ SỐ: 60.48.01.01 (Khoa học máy tính) LUẬN VĂN THẠC SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN DUY PHƯƠNG HÀ NỘI – 2016 LỜI CAM ĐOAN Tôi cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác. TÁC GIẢ LUẬN VĂN TRƯƠNG THỊ HẬU LỜI CẢM ƠN Trong suốt quá trình học tập cũng như thực hiện luận văn, tôi đã nhận được rất nhiều những sự quan tâm giúp đỡ, hưỡng dẫn tận tình của các thầy cô cùng với những lời động viên khuyến khích từ phía gia đình, bạn. Tôi xin bày tỏ lời cảm ơn chân thành đến tất cả mọi người. Tôi xin tỏ lòng biết ơn sâu sắc đến thầy Nguyễn Duy Phương đã tận tình hướng dẫn, định hướng cho tôi trong quá trình thực hiện đề tài. Thầy cho tôi những lời khuyên, chỉ dẫn, truyền đạt cho tôi những kiến thức, kinh nghiệm về việc thực hiện luận văn. Tôi xin cảm ơn các thầy cô trong khoa Quốc tế và đào tạo sau đại học, học viện Công nghệ Bưu chính Viễn thông đã tận tình dạy dỗ và cho tôi những kiến thức bổ ích trong suốt quá trình hai năm học tập, giúp tôi nâng cao được chuyên môn, làm nền tảng để tôi có thể hoàn thành khóa luận, cũng như tự tin phát triển công việc sau này. Cuối cùng, tôi muốn gửi lời cảm ơn tới gia đình và bạn bè, những người thân đã luôn ở bên, cảm thông, hỗ trợ, giúp đỡ tôi những khó khăn trong công việc, cuộc sống cũng như trong quá trình học tập. Hà Nội, tháng 11 năm 2016 Trương Thị Hậu i MỤC LỤC DANH MỤC CÁC CHỮ VIẾT TẮT ................................................................................iii DANH MỤC HÌNH VẼ VÀ SƠ ĐỒ .................................................................................. iv DANH MỤC BẢNG BIỂU .................................................................................................. v MỞ ĐẦU ............................................................................................................................... 1 CHƯƠNG 1. GIỚI THIỆU VỀ DEEP LEARNING ....................................................... 3 1.1. Tổng quan về Deep Learning ............................................................................... 3 1.1.1. Định nghĩa ...................................................................................................... 3 1.1.2. Lịch sử ............................................................................................................. 4 1.1.3. Ứng dụng ......................................................................................................... 6 1.2. Phân loại các phương pháp học sâu .................................................................... 9 1.2.1. Mạng học sâu có giám sát .............................................................................. 9 1.2.2. Phương pháp học sâu không giám sát ......................................................... 11 1.2.3. Mạng học sâu kết hợp................................................................................... 11 1.3. Kết luận chương .................................................................................................. 12 CHƯƠNG 2. DEEP LEARNING CHO LỌC CỘNG TÁC ........................................... 14 2.1. Giới thiệu về phương pháp tư vấn dựa trên kỹ thuật lọc cộng tác ................. 14 2.1.1. Giới thiệu về hệ thống tư vấn ....................................................................... 14 2.1.2. Tư vấn dựa trên lọc cộng tác ........................................................................ 15 2.2. Giới thiệu về máy Bolzmman ((Botlzmann Machine)) .................................... 21 2.2.1. Mô hình máy Bolzman.................................................................................. 22 2.2.2. Huấn luyên cho máy Bolzmann ................................................................... 24 2.3. Máy hạn chế Botlzmann (Restrist Botlzmann Machine)................................. 27 2.3.1. Mô hình máy hạn chế Botlzmann ................................................................ 27 2.3.2. Huấn luyện cho máy hạn chế Botlzmann (RBM) ....................................... 28 2.4. Máy hạn chế Botlzmann (RBMs) trong lọc cộng tác ....................................... 30 2.4.1. Mô hình máy hạn chế Botlzmann (RBMs) trong lọc cộng tác ................... 30 2.4.2. Huấn luyện máy hạn chế Botlzmann (RBMs) trong lọc cộng tác .............. 33 2.4.3. Dự đoán ......................................................................................................... 35 2.5. Kết luận ................................................................................................................ 36 CHƯƠNG III. XÂY DỰNG HỆ THỐNG VÀ THỬ NGHIỆM .................................... 37 3.1. Xây dựng bài toán ............................................................................................... 37 ii 3.2. Hệ thống của máy hạn chế Boltzmann (RBMs) trong lọc cộng tác ................ 37 3.3. Mô tả dữ liệu Dataset Netflix ............................................................................. 40 3.4. Cài đặt bài toán ................................................................................................... 43 3.4.1. Ý nghĩa các tham số trong máy hạn chế Boltzmann ................................... 43 3.4.2. Yêu cầu hệ thống và thư viện sử dụng ......................................................... 45 3.4.3. Kết quả thực nghiệm và đánh giá ................................................................ 45 3.5. Kết luận ................................................................................................................ 52 KẾT LUẬN ......................................................................................................................... 54 DANH MỤC CÁC TÀI LIỆU THAM KHẢO ................................................................ 56 iii DANH MỤC CÁC CHỮ VIẾT TẮT STT 1 2 3 4 5 6 Ký hiệu BM RBM CF v h RMSE Tiếng Anh Botlzmann Machine Restrict Botlzmann Machine Collarborative Filter visible unit hidden unit Root Mean Squared Error 7 8 9 10 11 CD E u DL ML Contrastive Divergence Energy function user Deep Learning Machine Learning Tiếng Việt Máy Botlzmann Máy hạn chế Botlzmann Lọc cộng tác Nút hiện Nút ẩn Căn bậc hai của trung bình bình phương sai số Phân kỳ tương phản Hàm năng lượng Người dùng Học sâu Học máy iv DANH MỤC HÌNH VẼ VÀ SƠ ĐỒ Hình 1-1: Nhận diện hai khuôn mặt tương tự nhau .............................................................. 7 Hình 1-2: Hệ thống tư vấn cho người dùng .......................................................................... 9 Hình 2-1: Minh họa hệ thống tư vấn sách cho người đọc................................................... 14 Hình 2-2: Minh họa phương pháp tư vấn dựa trên lọc cộng tác ......................................... 15 Hình 2-3: Quy trình của hệ thông tư vấn dựa trên lọc cộng tác.......................................... 16 Hình 2-4: Mạng nơ-ron hồi quy một lớp ............................................................................ 22 Hình 2-5: Một Boltzmann Machine, các nút có thể nối với nhau theo bất kỳ cách nào. .... 23 Hình 2-6: Một Restricted Boltzmann Machine chỉ có sự liên kết giữa các nút hiện và các nút ẩn.................................................................................................................................... 28 Hình 2-7: Huấn luyện CD, nút hiện và nút ẩn được cập nhật qua T bước lặp.................... 30 Hình 2-8: So sánh RBMs nhị phân và RBMs trong lọc cộng tác ....................................... 31 Hình 2-9: Restricted Boltzmann Machine cho lọc cộng tác. .............................................. 32 Hình 3-1: Xây dựng bài toán trong lọc cộng tác ................................................................. 37 Hình 3-2: Sơ đồ khối hệ thống sử dụng giải thuật RBMs trong lọc cộng tác. .................... 38 Hình 3-3: Biểu diễn sai số dự đoán ..................................................................................... 40 Hình 3-4: Định dạng của đánh giá những người dùng đối với những bộ phim .................. 41 Hình 3-5: Thủ tục sử dụng phương pháp walk-forward chia tập dữ liệu trong Netflix...... 43 Hình 3-6: Thư viện Numpy tính toán toán học trong ngôn ngữ Python ............................. 45 Hình 3-7: File cấu hình lần một cho huấn luyện RBMs lần một ........................................ 46 Hình 3-8: Kết quả chỉ số RMSE thu được lần một ............................................................. 47 Hình 3-9: Đồ thị chỉ số đánh giá RMSE lần một ................................................................ 47 Hình 3-10: File cấu hình lần một cho huấn luyện RBMs lần hai ....................................... 48 Hình 3-11: Kết quả dữ liệu kiểm tra (validation set) RMSE thu được lần hai ................... 49 Hình 3-12: Đồ thị chỉ số đánh giá RMSE lần hai ............................................................... 49 Hình 3-13: File cấu hình lần một cho huấn luyện RBMs lần ba ........................................ 50 Hình 3-14: Kết quả dữ liệu kiểm tra (validation set) RMSE thu được lần ba .................... 51 Hình 3-15: Đồ thị chỉ số đánh giá RMSE lần ba ................................................................ 52 v DANH MỤC BẢNG BIỂU Bảng 2-1: Bảng giải thuật Positive phase 26 Bảng 2-2: Bảng giải thuật Negative phase 26 Bảng 2-3: Bảng giải thuật huấn luyện phân kỳ tương phản CD 29 Bảng 2-4: Những người dùng đánh giá cho từng bộ phim 32 Bảng 2-5: Một người dùng (U2 bảng 1) đánh giá cho những bộ phim Bảng 2-6: Dự đoán của giải thuật RBMs trong lọc cộng tác 36 Bảng 3-1: Tập dữ liệu Test cho ví dụ RMSE 39 Bảng 3-2: Tập giá trị được dự đoán và sai số trong ví dụ RMSE 40 Bảng 3-3: Thông số dữ liệu mà Netflix cung cấp 42 Bảng 3-4: Bảng yêu cầu hệ thống và thư viện sử dụng 45 33 1 MỞ ĐẦU Thế giới đã chứng kiến sự phát triển vượt bậc của lĩnh vực trí tuệ nhân tạo (Artificial Intelligence - AI) trong những năm gần đây. Bên trong các máy tìm kiếm của Google, hóng hớt buôn chuyện trên Facebook, trò chuyện với người thân qua Skype, sai vặt Siri trên iPhone đều là những sản phẩm của trí tuệ nhân tạo. Google, Microsoft và Facebook đã thành lập những nhóm nghiên cứu và thực thi thành công một số dự án không tưởng. Một vài trong số dự án này trú trọng đến việc khai thác sự phong phú, đa dạng của dữ liệu được tạo ra bởi người sử dụng mạng xã hội. Rất nhiều trong số đó tập trung vào phân tích, và nâng cao hiệu quả tính toán. Chìa khóa để dẫn đến những thành công này được hỗ trợ một phần không nhỏ bởi một xu hướng mới trong AI, được gọi là “Deep Learning”. Deep Learning là một thuật toán dựa trên một số ý tưởng từ não bộ tới việc tiếp thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tượng, qua đó làm rõ nghĩa của các loại dữ liệu. Nói cách khác, deep learning là một lĩnh vực mới của machine learning nhằm cải thiện những ứng dụng như thị giác máy tính (computer vision), xử lý ngôn ngữ tự nhiên (natural language processing) để giải đáp những thách thức đối với dữ liệu phi cấu trúc. Điểm đặc biệt của Deep Learning là tính chính xác dựa vào lượng dữ liệu, lượng dữ liệu có thể có kích thước khổng lồ mà không bị hạn chế. Deep Learning có thể hiểu là hệ thống dựa trên phân tích dữ liệu lớn đa tầng để máy tự học, tự rút kinh nghiệm và tự hoàn thiện. Hiện nay tại nhiều hãng công nghệ lớn sử dụng các mạng thần kinh (hệ thống phần cứng và phần mềm mô phỏng não người và hệ thần kinh) phân tích những lượng khổng lồ các hình ảnh kỹ thuật số và từ đó học cách nhận diện vật thể, từ ngữ, và cả khuôn mặt người. Sự đột phá của các công nghệ Deep Learning được ứng dụng ngày càng nhiều bởi các doanh nghiệp để tạo ra các mô hình kinh doanh mới và xây dựng những ứng dụng mới mẻ để giải quyết những bài toán thực tế. Một số ứng dụng nổi tiếng và thông dụng của deep learning đó là trợ lý kích hoạt bằng giọng nói (một tính năng được tìm thấy trên hầu hết các smartphones), ứng dụng trong các hệ thống khuyến nghị, nhận diện 2 ảnh(Image Recognition), dịch tiếng nói (speech translation), chuyển tiếng nói thành văn bản (speech transcription), phân loại văn bản (text classification), phát hiện nội dung (content discovery), thương hiệu thông minh (brand intelligence), và theo dõi (monitoring) social media. Chính vì vậy em đã chọn đề tài “Nghiên cứu phương pháp học sâu cho lọc cộng tác” để thực hiện trong khuôn khổ luận văn tốt nghiệp thạc sỹ ngành khoa học máy tính. Nội dung luận văn được cấu trúc thành 3 chương như sau Chương 1: Giới thiệu về Deep Learning Trong chương này, luận văn sẽ giới thiêu tổng quan về phương pháp học sâu: định nghĩa và các loại phương pháp học sâu. Chương 2: Deep Learning cho lọc cộng tác Trình bày phương pháp học Deep Learningg cho lọc cộng tác. Dựa vào những nghiên cứu cơ bản, đi sâu tìm hiểu vào kỹ thuật học sâu cho lọc cộng tác bằng máy hạn chế Bolzmman. Chương 3: Xây dựng hệ thống và thực nghiệm Chương 3 trình bày về phương pháp thử nghiệm và đánh giá. Kết luận và hướng phát triển Trình bày tóm tắt những kết quả đã đạt được và chưa đạt được. Từ đó đề xuất mục tiêu cũng như hướng nghiên cứu, phát triển tiếp theo. 3 CHƯƠNG 1. GIỚI THIỆU VỀ DEEP LEARNING Chương này sẽ cung cấp một cái nhìn tổng quan về phương pháp học sâu: định nghĩa, các loại phương pháp học sâu và các ứng dụng của chúng trong một loạt các nhiệm vụ xử lý tín hiệu và thông tin. 1.1. Tổng quan về Deep Learning 1.1.1. Định nghĩa Từ năm 2006, học với cấu trúc sâu, hay thường gọi là học sâu hoặc học theo từng lớp đã nổi lên như một lĩnh vực mới trong nghiên cứu học máy. Trong nhiều năm qua, các kỹ thuật phát triển từ nghiên cứu học sâu đã bị ảnh hưởng tới một loạt các tín hiệu và công việc xử lý thông tin. Rất nhiều các hội thảo, hướng dẫn và các phiên họp đặc biệt trong những năm gần đây đã được dành riêng để giới thiệu về học sâu và ứng dụng của nó đến các tín hiệu khác nhau và các tiến trình xử lý thông tin. Trước khi đi vào tìm hiểu cụ thể, luận văn tìm hiểu các định nghĩa về học sâu, đã có nhiều định nghĩa được đưa ra: - Định nghĩa 1: Một nhóm các kỹ thuật học máy khai thác nhiều lớp xử lý thông tin tuyến tính để trích tách đặc điểm và chuyển đổi. Các thuật toán này có thể được giám sát hoặc không cần giám sát và các ứng dụng bao gồm các mô hình phân tích (không có giám sát) và phân loại (giám sát). - Định nghĩa 2: Một lĩnh vực nhỏ tron học máy đó là dựa trên các thuật toán cho việc học nhiều cấp độ của các dữ liệu có quan hệ phức tạp. Các tính năng cấp cao hơn được xác định trong các tính năng cấp dưới và như một hệ thống các tính năng được gọi là một kiến trúc sâu. Hầu hết các mô hình dựa trên học không giám sát của các đại diện ( theo Wikipedia về" Deep Learning "khoảng tháng ba năm 2012) - Định nghĩa 3: Một lĩnh vực của học máy đó là dựa vào việc học nhiều cấp độ của các đại diện, tương ứng với một hệ thống các tính năng hoặc các yếu tố hoặc các khái niệm, nơi mà các khái niệm cấp cao hơn được xác định từ những cái cấp dưới và khái niệm cấp dưới có thể giúp xác định nhiều khái 4 niệm cấp cao hơn. Học sâu là một phần của gia đình rộng lớn của các phương pháp học máy dựa trên các đại diện học . Một quan sát (ví dụ, một hình ảnh) có thể được biểu diễn bằng nhiều cách (ví dụ, một vector của điểm ảnh), nhưng một số các đại diện làm cho nó dễ dàng hơn để học hỏi các nhiệm vụ quan tâm (ví dụ, đây là hình ảnh của một khuôn mặt con người?) Từ các ví dụ, và nghiên cứu trong lĩnh vực này cố gắng xác định những gì làm cho các đại diện tốt hơn và làm thế nào để tìm hiểu chúng. "(Wikipedia về" Deep Learning "vào tháng hai năm 2013). - Định nghĩa 4: Học sâu là một tập hợp các thuật toán trong học máy cố gắng học hỏi ở nhiều cấp độ, tương ứng với các cấp trừu tượng khác nhau. Nó sử dụng các mạng thần kinh nhân tạo. Các cấp độ trong các mô hình học thống kê _ tương ứng với các cấp độ khác nhau của các khái niệm, nơi mà các khái niệm cấp cao hơn được xác định từ những cái cấp dưới, và các khái niệm mức thấp tương tự có thể giúp xác định nhiều khái niệm cấp cao hơn. - Định nghĩa 5: Học sâu là một lĩnh vực mới của nghiên cứu học máy, đã được giới thiệu với mục đích đưa học máy gần gũi hơn với một trong những mục tiêu ban đầu của nó: Trí tuệ nhân tạo. Học Sâu là học hỏi nhiều cấp độ của các đại diện và sự trừu tượng đó giúp làm cho ý nghĩa của dữ liệu như hình ảnh, âm thanh rõ ràng hơn (https://github.com/lisalab/DeepLearningTutorials). Các định nghĩa này có điểm chung là nhiều lớp các đơn vị xử lý phi tuyến và học có giám sát hoặc không có giám sát của biểu diễn đặc tính ở mỗi lớp, với các lớp hình thành một hệ thống các tính năng phân cấp từ thấp đến cao cấp. Các thành phần của một lớp của đơn vị xử lý phi tuyến sử dụng một thuật toán học sâu tùy theo vấn đề cần được giải quyết. Các lớp được sử dụng trong học sâu bao gồm các lớp ẩn của một mạng nơ-ron nhân tạo và tập các công thức mệnh đề phức tạp. Chúng cũng có thể bao gồm các biến tiềm ẩn được tổ chức thành các lớp chọn lọc trong các mô hình thể sinh (có khả năng sinh ra) sâu như các nút trong Deep Belief Networks và Deep Boltzmann Machines. 1.1.2. Lịch sử 5 Các kiến trúc học sâu, đặc biệt là những kiến trúc được xây dựng từ mạng nơ-ron nhân tạo (ANN) đã từng thống trị ít nhất là tới Neocognitron được giới thiệu bởi Masahiko Fukushima vào năm 1980. Thách thức là làm thế nào để huấn luyện mạng lưới này với nhiều lớp. Năm 1989, Yann Le Cun và các cộng sự đã có thể áp dụng các thuật toán truyền ngược tiêu chuẩn đối với một mạng nơ-ron sâu với mục đích nhận dạng chữ viết tay mã ZIP trong các bức thư. Mặc dù sự thành công trong việc áp dụng thuật toán này tuy nhiên thời gian để đào tạo dựa trên số liệu này mất khoảng 3 ngày. Vậy, việc sử dụng nó vào các mục đích bình thường trở nên không thực tế. Năm 1995, Brendan Frey đã chứng minh rằng có thể huấn luyện một mạng nơ-ron bao gồm sáu lớp kết nối và vài trăm đơn vị ẩn bằng cách sử dụng thuật toán wake-sleep, nó được hợp tác phát triển với Peter Dayan và Geoffrey Hinton. Tuy nhiên, việc huấn luyện này cũng phải mất hai ngày. Trong năm 1991, những mạng nơ-ron như vậy được sử dụng để nhận diện chữ số viết tay 2-D, nhận dạng đối tượng 3-D được thực hiện bằng cách kết hợp các hình ảnh 2-D với một mô hình đối tượng 3-D thủ công. Juyang Weng và các cộng sự đề xuất rằng một bộ não người không sử dụng một mô hình đối tượng 3-D nguyên khối, và vào năm 1992, họ xuất bản Cresceptron, một phương pháp để thực hiện nhận dạng đối tượng 3-D trực tiếp từ các dữ liệu lộn xộn. Cresceptron là một ghép tầng của các lớp tương tự như Neocognitron. Nhưng trong khi Neocognitron yêu cầu một người lập trình viên giám sát, Cresceptron sẽ tự động học được một số đặc điểm không có giám sát trong mỗi lớp, mỗi đặc điểm được đại diện bởi một tích chập. Cresceptron cũng phân đoạn từng đối tượng học được bằng cách phân tích ngược mạng đó. Mặc dù có những lợi thế như thế, các mô hình đơn giản hơn sử dụng nhiệm vụ cụ thể có đặc điểm thủ công như bộ Gabor và các máy hỗ trợ vector (SVM-support vector machines) đã là lựa chọn phổ biến trong thập niên 1990 và thập niên 2000, bởi vì chi phí tính toán các ANN nhỏ. Trong lịch sử của nhận dạng giọng nói, cả học nông và học sâu (ví dụ, các mạng tái phát) của mạng nơ-ron nhân tạo đã được khám phá trong nhiều 6 năm. Nhưng những phương pháp này không bao giờ thắng được công nghệ của mô hình hỗn hợp/mô hình Markov ẩn Gaussian (GMM-HMM) thủ công-nội bộ dựa trên các mô hình có thể sinh ra của việc huấn luyện nhận dạng giọng nói một cách rõ ràng. Một số khó khăn chính đã được phân tích một cách có phương pháp, bao gồm giảm bớt gradient và cấu trúc tương quan trong các mô hình nơ-ron nhân tạo. Những khó khăn đó là thiếu dữ liệu huấn luyện và khả năng tính toán nhỏ trong thời gian đầu. Vì vậy, hầu hết các nhà nghiên cứu về nhận dạng giọng nói đã hiểu rõ các rào cản như vậy nên đã theo đuổi mô hình các mạng nơ-ron, cho đến gần đây sự ra đời của học sâu đã vượt qua tất cả những khó khăn này. Hinton cùng các cộng sự đã bắt đầu nghiên cứu học sâu và các ứng dụng của nhận dạng giọng nói. 1.1.3. Ứng dụng Sự đột phá của các công nghệ Deep Learning được ứng dụng ngày càng nhiều bởi các doanh nghiệp để tạo ra các mô hình kinh doanh mới và xây dựng những ứng dụng mới mẻ để giải quyết những bài toán thực tế, trong đó phải kể đến những ứng dụng có nhiều tiềm năng thương mại hóa sau: a. Nhận dạng giọng nói: Từ năm 2010 đến năm 2014, hai hội nghị lớn về xử lý tín hiệu và nhận dạng giọng nói IEEE-ICASSP và Interspeech, đã cho thấy một sự gia tăng lớn các báo cáo được chấp nhận trong các báo cáo hội nghị thường niên tương ứng về chủ đề học sâu trong nhận dạng giọng nói. Quan trọng hơn, tất cả các hệ thống nhận dạng giọng nói thương mại chính (ví dụ: Microsoft Cortana, Xbox, Skype Translator, Google Now, Apple Siri, Baidu và iFlyTek tìm kiếm bằng giọng nói và một loạt các sản phẩm của Nuance speech, vv) được dựa trên phương pháp học sâu. b. Nhận dạng hình ảnh Mục tiêu của công nghệ nhận diện ảnh là nhận biết và xác định các đối tượng trong ảnh cũng như hiểu được nội dung và ngữ cảnh trong đó. Ví dụ trên cho thấy dịch vụ nhận diện và xác định khuôn mặt của AlchemyVision có khả năng phân biệt hai khuôn mặt tương tự nhau giữa nam diễn viên Will Ferrell và tay trống của Red Hot Chili Peppers, Chad Smith. Công nghệ nhận diện hình ảnh cũng được đưa vào 7 Facebook để gợi ý người dùng tag mặt bạn bè hay ứng dụng vào khoa học tội phạm và điều tra. Hình 1-1: Nhận diện hai khuôn mặt tương tự nhau c. Xử lý ngôn ngữ tự nhiên Mạng nơ-ron đã được sử dụng cho việc thực hiện các mô hình ngôn ngữ kể từ đầu những năm 2000. Các kỹ thuật quan trọng trong lĩnh vực này là lấy mẫu âm và nhúng chữ (word embedding). Nhúng chữ, chẳng hạn như word2vec, có thể được dùng như một lớp đại diện trong một kiến trúc học sâu, điều này sẽ biến đổi một từ đơn thành một đại diện vị trí của từ đó liên quan đến các từ khác trong bộ dữ liệu; vị trí được đại diện như là một điểm trong một không gian vector. Sử dụng một từ nhúng như là một lớp đầu vào với một mạng lưới thần kinh đệ quy (RNNrecursive neural network) cho phép đào tạo mạng để phân tích cú pháp câu và cụm từ bằng cách sử dụng một ngữ pháp vector tổng hợp có hiệu quả. Một ngữ pháp vector tổng hợp có thể được coi làngữ pháp không phụ thuộc ngữ cảnh xác suất (PCFG-probabilistic context free grammar) được thực hiện bởi một mạng thần kinh đệ quy. Tự động-mã hóa đệ qui được xây dựng trên đỉnh từ nhúng đã được đào tạo để đánh giá câu tương tự và phát hiện các chú giải dài dòng. Các kiến trúc thần kinh sâu đã đạt được những kết quả tiên tiến nhất trong nhiều tác vụ xử lý ngôn ngữ tự 8 nhiên như phân tích thống kê, phân tích tình cảm, tra cứu thông tin, dịch máy, liên kết thực thể ngữ cảnh, và.v.v. d. Khám phá dược phẩm và độc chất học Ngành công nghiệp dược phẩm phải đối mặt với vấn đề mà một tỷ lệ lớn các loại thuốc tiềm năng thất bại khi tiếp cận với thị trường. Những thất bại của các hợp chất hóa học này gây ra bởi không đủ hiệu quả trên mục tiêu phân tử sinh học, có các tương tác không bị phát hiện và không mong muốn với các phân tử sinh học khác, hoặc các hiệu ứng độc dược ngoài dự tính. Trong năm 2012, một nhóm dẫn đầu bởi George Dahl đã chiến thắng "Merck Molecular Activity Challenge" sử dụng các mạng nơ-ron sâu đa tác vụ để dự đoán mục tiêu phân tử sinh học của một hợp chất. Trong năm 2014, nhóm của Sepp Hochreiter sử dụng Học Sâu để phát hiện ra mục tiêu lạ và các ảnh hưởng độc dược của các môi trường hóa chất trong các chất dinh dưỡng, sản phẩm gia dụng và thuốc men và đã chiến thắng "Tox21 Data Challenge" của NIH, FDA và NCATS. Những thành công ấn tượng chỉ ra rằng học sâu có thể vượt trội so với các phương pháp kiểm tra ảo khác. Các nhà nghiên cứu đến từ Google và Stanford đã mở rộng học sâu để khám phá dược phẩm bằng cách kết hợp dữ liệu từ nhiều nguồn khác nhau. e. Hệ thống gợi ý trên các nền tảng Các nền tảng lớn hiện nay như Facebook, Amazon, Netflix,... đều có hệ thống gợi ý (recommend) rất mạnh giúp tăng đáng kể độ tương tác của người dùng. Cụ thể là chúng dựa trên các dữ liệu người dùng phát sinh ra khi dùng để gợi ý thêm những sản phẩm họ sẽ thích (trên các nền tảng mua sắm), những bộ phim họ sẽ muốn xem (vd. như trên Netflix), gợi ý các bài quảng cáo/được tài trợ (trên Facebook) hay các khóa học người học quan tâm (trên các nền tảng học online). 9 Hình 1-2: Hệ thống tư vấn cho người dùng 1.2. Phân loại các phương pháp học sâu Như đã giới thiệu ở trên, học sâu đề cập đến một phần khá rộng của các kỹ thuật học máy và các cấu trúc, với các dấu hiệu của việc sử dụng nhiều lớp xử lý thông tin phi tuyến tính phân cấp trong tự nhiên. Tùy thuộc vào mục đích sử dụng các cấu trúc và kỹ nhuật như thế nào mà ta có thể phân học sâu thành ba loại chính là: mạng học sâu có giám sát (deep network for supervised learning), mạng học sâu không giám sát (deep network for unsupervised learning), mạng học sâu kết hợp (deep network for hybrid learning). 1.2.1. Mạng học sâu có giám sát Mạng học sâu có giám sát cung cấp trực tiếp tài liệu cho mục đích phân biệt các mô hình phân loại bằng cách mô tả sự phân bố hậu nghiệm của các lớp có điều kiện trên tập dữ liệu có sẵn. Tức là, dữ liệu huấn luyện bao gồm các lớp đầu vào và đầu ra mong muốn. Đầu ra là dự đoán của một lớp phân loại cho một đối tượng đầu vào. Nhiệm vụ của chương trình học sâu có giám sát là dự đoán giá trị của hàm đầu ra cho một đối tượng bất kì là đầu vào hợp lệ, sau khi đã xem xét tập dữ liệu huấn 10 luyện (là các đầu vào và đầu ra tương ứng). Để đạt được điều này, chương trình phải học tổng quát hóa từ các dữ liệu sẵn có để dự đoán được những tình huống chưa gặp phải theo một cách hợp lý. Trong học có giám sát, ta được cho trước một tập ví dụ gồm các cặp {\displaystyle (x,y),x\in X,y\in Y} và mục tiêu là tìm một hàm f (trong lớp các hàm được phép) tương ứng với các ví dụ. Nói cách khác, ta muốn tìm ánh xạ mà dữ liệu đầu vào đã hàm ý, với hàm chi phí đo độ không khớp giữa ánh xạ của ta và dữ liệu. Nhiều trong số các kỹ thuật phân loại đối với học có giám sát trong tín hiệu và xử lý thông tin là kiến trúc nông như HMMs và các lĩnh vực ngẫu nhiên có điều kiện. Một CRF tự bản chất là một kiến trúc phân biệt nông, đặc trưng bởi các mối quan hệ tuyến tính giữa các tính năng đầu vào và các tính năng chuyển đổi. Bản chất nông của CRF được thực hiện rõ ràng nhất của sự tương đương thành lập giữa CRF và phân biệt được huấn luyện các mô hình Gaussian và HMMs. Gần đây, cấu trúc sâu CRFs đã được phát triển bằng cách xếp chồng các đầu ra trong mỗi lớp dưới của CRF, cùng với các dữ liệu đầu vào ban đầu, lên tầng cao hơn. Các phiên bản khác nhau của cấu trúc sâu CRDs được ứng dụng thành công để gọi nhận diện. Tuy nhiên, ít nhất là cho các nhiệm vụ gọi nhận diện, hiệu suất của cấu trúc sâu CRDs, đó là phân biệt hoàn toàn, không thể phù hợp với các phương pháp lai liên quan đến DBN. Morgan đưa ra một đánh giá tuyệt vời trên các mô hình phân biệt hiện nay trong việc nhận dạng tiếng nói dựa chủ yếu vào các mạng noron truyền thống, kiến trúc MLP sử dụng việc học lan truyền ngược với khởi tạo ngẫu nhiên. Nó lập luận về tầm quan trọng của cả hai độ rộng tăng lên của mỗi lớp trên mạng lưới noron và độ sâu tăng. Đặc biệt một lớp các mô hình mạng noron tạo nên cơ sở của cách tiếp cận “tandem” phổ biến, trong đó đầu ra của mạng noron được học nhận diện là một phần của các biến quan sát trong HMMs. RNNs cũng có thể được sử dụng như là một mô hình phân biệt mà đầu ra là một chuỗi nhãn kết hợp với chuỗi dữ liệu đầu vào. Lưu ý rằng, như vậy thì phân 11 biệt RNNs hay các mô hình hàng đợi đã áp dụng được phát biểu trước đây có thành công hạn chế. 1.2.2. Phương pháp học sâu không giám sát Phương pháp này nắm bắt độ tương đồng của dữ liệu quan sát được để phân tích mô hình và xác định được đầu ra khi không có thông tin gì về nhãn lớp mục tiêu có sẵn. Nó khác biệt với học có giám sát ở chỗ là đầu ra đúng tương ứng cho mỗi đầu vào là không biết trước. Trong học không có giám sát, một tập dữ liệu đầu vào được thu thập. Học không có giám sát thường xem với các đối tượng đầu vào như là một tập các biến ngẫu nhiên. Sau đó, một mô hình mật độ kết hợp sẽ được xây dựng cho tập dữ liệu đó. Trong học không có giám sát, ta được cho trước một số dữ liệu {\displaystyle x}, và hàm chi phí cần được cực tiểu hóa có thể là một hàm bất kỳ của dữ liệu {\displaystyle x} và đầu ra của mạng, {\displaystyle f}. Hàm chi phí được quyết định bởi phát biểu của bài toán. Phần lớn ứng dụng nằm trong vùng các bài toán ước lượng như mô hình hóa thống kê, nén, lọc(filtering), blind source seperation và phân mảnh (clustering). Dựa trên học (không có giám sát) của nhiều cấp các đặc điểm hoặc đại diện của dữ liệu. Các tính năng cao cấp bắt nguồn từ các tính năng thấp cấp hơn để tạo thành một đại diện thứ bậc. Rất nhiều các thuật toán học sâu được áp dụng cho các nhiệm vụ học không có giám sát. Đây là một lợi ích quan trọng bởi vì dữ liệu không dán nhãn (chưa phân loại) thường phong phú hơn các dữ liệu dán nhãn. Một ví dụ của một cấu trúc sâu có thể được đào tạo theo cách không có giám sát là một mạng lưới tin sâu (deep belief network). 1.2.3. Mạng học sâu kết hợp Thuật ngữ “kết hợp” đề cập đến các kiến trúc sâu bao gồm hoặc sử dụng cả hai thành phần mô hình sinh mẫu và mô hình phân biệt. Trong kiến trúc mạng học sâu kết hợp, mục tiêu cuối cùng là các thành phần sinh mẫu chủ yếu được khai thác để giúp mô hình phân biệt. 12 Câu hỏi đặt ra là làm thế nào hay tại sao mô hình sinh mẫu có thể giúp được mô hình phân biệt được xem xét từ hai quan điểm: - Quan điểm tối ưu hóa những mô hình sinh mẫu được huấn luyện trongmột kiểu học không giám sát có thể cung cấp các điểm khởi đầu trong vấn đề ước lượng tham số phi tuyến (Thuật ngữ thường được sử dụng trong "pretraining" trong học sâu đã được giới thiệu vì lý do này) - Quan điểm có quy tắc mà các mô hình học không giám sát có hiệu quả có thể cung cấp một tiền đề trên tập các chức năng biểu diễn bởi mô hình. DBN, một mô hình sinh mẫu, mạng sâu cho học không giám sát, có thể chuyển đổi và sử dụng như mô hình khởi đầu cho 1 DNN cho học có giám sát với cùng cấu trúc mạng, đó là tiếp tục huấn luyện một cách phân biệt hoặc tinh chỉnh sử dụng các nhãn đích được cung cấp. Khi DBN được dùng như trên thì có thể coi mô hình DBN-DNN như một “mô hình sâu kết hợp”, là mô hình được huấn luyện sử dụng dữ liệu không giám sát giúp tạo mô hình phân biệt hiệu quả cho học có giám sát. Một ví dụ khác của mạng kết hợp sâu được phát triển, trong đó các trọng số DNN cũng được khởi tạo từ một DBN sinh mẫu nhưng lại được tinh chỉnh với một tiêu chí phân biệt trình tự theo cấp, mà xác suất có điều kiện của chuỗi nhãn cho trình tự tính năng đầu vào, thay vì tiêu chí ở cấp khung hình của entropy chéo thường được sử dụng. Từ đó cho thấy DNN-CRF tương đương với “kiến trúc kết hợp sâu” DNN và HMM Một ví dụ khác là việc dùng mô hình sinh mẫu DBN để huấn luyện trước mạng nơ ron xoắn sâu. Việc huấn luyện trước giúp tăng tốc cho CNN thông qua khởi tạo ngẫu nhiên. Huấn luyện trước DNN hoặc CNN sử dụng tập mã hóa tự động sâu có quy tắc, bao gồm các bộ mã hóa giảm nhiễu, các bộ mã hóa co rút, các bộ mã hóa rải rác, cũng là các ví dụ cho “mạng kết hợp sâu”. 1.3. Kết luận chương Chương 1 đã giới thiệu tổng quan về phương pháp deep learning. Deep Learning được xem như là nhánh chi tiết hơn của Machine Learning, thuật ngữ
- Xem thêm -

Tài liệu liên quan