Trang 1 TRƯỜNG ĐẠI HỌC QUY NHƠNTRẦN QUỐC DŨNG NGHIÊN CỨU ỨNG DỤNG HỌC SÂU PHÁT HIỆN LỖI TRÊN SẢN PHẨM DỆT MAYLUẬN VĂN THẠC SĨ KHOA HỌC DỮ LIỆU ỨNG DỤNG Trang 2 TRƯỜNG ĐẠI HỌC QUY NHƠ
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUY NHƠN TRẦN QUỐC DŨNG NGHIÊN CỨU ỨNG DỤNG HỌC SÂU PHÁT HIỆN LỖI TRÊN SẢN PHẨM DỆT MAY LUẬN VĂN THẠC SĨ KHOA HỌC DỮ LIỆU ỨNG DỤNG Bình Định - Năm 2023 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUY NHƠN TRẦN QUỐC DŨNG NGHIÊN CỨU ỨNG DỤNG HỌC SÂU PHÁT HIỆN LỖI TRÊN SẢN PHẨM DỆT MAY Ngành: Khoa học dữ liệu ứng dụng Mã số: 8904648 Người hướng dẫn: TS Hồ Văn Lâm LỜI CẢM ƠN Để tôi hoàn thành luận văn, ngoài sự nỗ lực cố gắng của bản thân, tôi nhận được nhiều sự giúp đỡ của quý Thầy Cô, gia đình và bạn bè Tôi xin gửi lời cảm ơn sâu sắc đến TS Hồ Văn Lâm Thầy đã luôn tận tình chỉ bảo, hướng dẫn, động viên tôi trong suốt thời gian thực hiện luận văn tốt nghiệp Ngoài ra, tôi cũng xin cảm ơn các Thầy Cô giáo đã giảng dạy, chỉ bảo tận tình và truyền đạt những kiến thức bổ ích trong suốt thời gian học tập, rèn luyện tại trường 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 yêu bên cạnh hay quan tâm, động viên trong suốt quá trình học tập và thực hiện khóa luận tốt nghiệp này Một lần nữa, tôi xin chân thành cảm ơn! Bình Định, tháng 10 năm 2023 Trần Quốc Dũng MỤC LỤC MỞ ĐẦU 1 1 Lý do chọn đề tài 1 2 Mục tiêu nghiên cứu 1 3 Đối tượng và phạm vi nghiên cứu 2 4 Phương pháp nghiên cứu 2 5 Bố cục luận văn 2 CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY VÀ HỌC SÂU 3 1.1 Sơ lược về học máy 3 1.2 Phương pháp học máy 4 1.2.1 Supervised Learning 4 1.2.2 Unsupervised Learning 4 1.2.3 Reinforcement Learning 5 1.3 Một số bài toán trong học máy 6 1.3.1 Bài toán phân loại 6 1.3.2 Bài toán hồi quy 8 1.4 Một số thuật toán trong học máy 9 1.4.1 Decision Tree 9 1.4.2 Support Vector Machine 11 1.5 Sơ lược về học sâu 13 1.6 Một số mô hình trong học sâu 14 1.6.1 Convolutional Neural Network 14 1.6.2 Recurrent Neural Network 20 1.7 Tổng kết chương 22 CHƯƠNG 2 BÀI TOÁN PHÁT HIỆN LỖI TRÊN SẢN PHẨM DỆT MAY23 2.1 Bài toán phát hiện lỗi 23 2.2 Giải pháp phát hiện lỗi 24 2.2 Một số giải thuật liên quan 25 2.2.1 Auto Encoder model 25 2.2.2 Generative model 26 2.3 Đề xuất giải pháp 27 2.3.1 Teacher-Student 27 2.3.2 Mất mát từ quá trình chắt lọc kiến thức 27 2.3.3 Hàm tính điểm 27 2.3.4 Đánh giá mô hình 28 2.3.5 Hiển thị bất thường 29 2.4 Tổng kết chương 29 CHƯƠNG 3 XÂY DỰNG MÔ HÌNH VÀ THỰC NGHIỆM 30 3.1 Dữ liệu thực nghiệm 30 3.2 Cài đặt thực nghiệm 32 3.2.1 Mạng Teacher 33 3.2.2 Mạng Student 34 3.3 Đánh giá kết quả 34 KẾT LUẬN 36 1 Kết quả đạt được 36 2 Đóng góp và khả năng áp dụng của đề tài 36 TÀI LIỆU THAM KHẢO 37 DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt ML Machine Learning Học máy DL Deep Learning Học sâu AI Artificial Intelligence Trí tuệ nhân tạo ANN Artificial Neural Network Mạng nơ-ron nhân tạo CNN Convolutional Neural Network Mạng nơ-ron tích chập CONV Convolutional Layer Lớp phức tạp FC Fully Connected Layer Lớp được kết nối đầy đủ SVM Support Vector Machine Máy vector hỗ trợ RL Reinforcement Learning Học tăng cường AE Auto Encode Mã hóa tự động VAE Variational Autoencoder Trình mã tự động biến thể RoC Receiver operating Characteristics Đường cong RoC AuC Area under RoC Curve Khu vực dưới đường cong RoC DANH MỤC CÁC HÌNH Hình 1 Quá trình phát triển và hình thành của học máy 3 Hình 2 Supervised Learning 4 Hình 3 Unsupervised Learning 5 Hình 4 Reinforcement Learning 5 Hình 5 Phân loại 6 Hình 6 Hồi quy 8 Hình 7 Phân lớp dữ liệu sử dụng Decision Tree 10 Hình 8 Phân lớp dữ liệu sử dụng SVM 12 Hình 9 Hyper-plan trong SVM 12 Hình 10 Khác biệt giữa học máy và học sâu 13 Hình 11 Hiệu suất học máy và học sâu với lượng dữ liệu 14 Hình 12 Kiến trúc mạng CNN 15 Hình 13 Convolutional layer 16 Hình 14 LaNet 17 Hình 15 AlexNet 18 Hình 16 ZF Net 18 Hình 17 GoogleLaNet 19 Hình 18 VGGNet 19 Hình 19 LSTM 21 Hình 20 Bài toán phát hiện lỗi 23 Hình 21 Phân phối chuẩn 24 Hình 22 Hệ thống đề xuất phát hiện lỗi 25 Hình 23 Auto Encoder model 25 Hình 24 Variational Autoencoder 26 Hình 25 Generative Adversarial Network 26 Hình 26 Teacher-Student 27 Hình 27 RoC và AuC 29 Hình 28 Dữ liệu MVTec 30 Hình 29 Dữ liệu bình thường 31 Hình 30 Dữ liệu bong sợi 31 Hình 31 Dữ liệu loang màu 32 Hình 32 Dữ liệu đứt sợi 32 Hình 33 Kiến trúc mạng ResNet18 33 Hình 34 Kiến trúc mạng Student 34 Hình 35 Kết quả phát hiện lỗi với p là 0.7 35 1 MỞ ĐẦU 1 Lý do chọn đề tài Hiện nay, Machine Learning (ML) và Deep Learning (DL) đang được nghiên cứu ứng dụng trong nhiều lĩnh vực khác nhau trên thế giới [1] Tại Việt Nam, điều này còn tương đối mới mẻ nhưng cũng được nghiên cứu và áp dụng vào một số lĩnh vực đem lại nhiều lợi ích cho xã hội Trong nhiều năm qua, cùng với sự phát triển công nghệ thông tin trong nhiều lĩnh vực của đời sống xã hội, lượng dữ liệu được con người thu thập và lưu trữ ngày một nhiều lên Người ta lưu trữ những dữ liệu này vì cho rằng nó ẩn chứa những giá trị nhất định nào đó Tuy nhiên theo thống kê thì chỉ có một lượng nhỏ của những dữ liệu này là được con người phân tích và sử dụng để mang lại lợi ích cho xã hội Ngày nay, các chủ doanh nghiệp đều muốn công nghiệp hóa dây chuyền sản xuất của mình và ngành dệt may cũng vậy Công đoạn kiểm tra phát hiện lỗi chiếm vai trò quan trọng trong ngành dệt may, chúng tôi nhận thấy có thể xây dựng mô hình DL để phát hiện lỗi giúp doanh nghiệp cắt giảm được nhân lực và tối ưu lợi nhuận Tuy nhiên, hầu hết các doanh nghiệp đều muốn phát hiện được tất cả các lỗi dù lỗi đó chưa từng gặp hoặc xuất hiện bao giờ Đồng thời, các loại lỗi thì thường có hình dạng và kích thước ko xác định được Ngoài ra, trong thực tế dữ liệu bất thường thường ít và không đủ để huấn luyện hình phân loại Vì vậy, chúng tôi có ý tưởng sẽ dùng những dữ liệu bình thường để huấn luyện mô hình, mô hình tạo ra có khả năng phát hiện ra những bất thường 2 Mục tiêu nghiên cứu Trong luận văn này, chúng tôi đặt ra bốn mục tiêu: + Một là, tìm hiểu tổng quan về ML bao gồm: sơ lược về ML, phương pháp ML, giới thiệu một số bài toán trong ML và giới thiệu một số thuật toán trong ML + Hai là, tìm hiểu tổng quan về DL bao gồm: sơ lược về DL và giới thiệu một số mô hình trong DL 2 + Ba là, đề xuất giải pháp phát hiện lỗi trên sản phẩm dệt may + Bốn là, cài đặt thực nghiệm giải pháp đã đề xuất 3 Đối tượng và phạm vi nghiên cứu - Đối tượng nghiên cứu: + ML; + DL; + Dữ liệu hình ảnh sản phẩm dệt may - Phạm vi nghiên cứu: xử lý dữ liệu hình ảnh và sử dụng DL để xây dựng mô hình phát hiện lỗi trên sản phẩm dệt may 4 Phương pháp nghiên cứu - Phương pháp nghiên cứu tài liệu - Phương pháp phân tích tổng hợp - Phương pháp thực nghiệm 5 Bố cục luận văn Ngoài phần mở đầu và kết luận, nội dung khóa luận gồm có bốn chương: + Chương 1: TỔNG QUAN VỀ HỌC MÁY VÀ HỌC SÂU Chúng tôi trình bày tổng quan về ML và DL gồm có: sơ lược về ML, phương pháp ML, giới thiệu một số bài toán trong ML, giới thiệu một số thuật toán trong ML, sơ lược về DL và giới thiệu một số mô hình trong DL + Chương 2: BÀI TOÁN PHÁT HIỆN LỖI TRÊN SẢN PHẨM DỆT MAY Chúng tôi sẽ trình bày giải pháp giải quyết bài toán tìm lỗi trên sản có độ chính xác cao cho bài toán phát hiện lỗi trên sản phẩm dệt may + Chương 3: XÂY DỰNG MÔ HÌNH VÀ THỰC NGHIỆM Chúng tôi cài đặt thử nghiệm giải pháp đã đề xuất cho bài toán phát hiện lỗi trên sản phẩm dệt may, một số đánh giá về mô hình thu được và đề xuất giải pháp triển khai 3 CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY VÀ HỌC SÂU Chúng tôi trình bày tổng quan về học máy và học sâu gồm có: sơ lược về học máy, phương pháp học máy, giới thiệu một số bài toán trong học máy, giới thiệu một số thuật toán trong học máy, sơ lược về học sâu và giới thiệu một số mô hình học sâu 1.1 Sơ lược về học máy Học máy hay máy học (ML) là một thuật ngữ mà con người sử dụng để khi nhắc đến các chương trình máy tính có khả năng học hỏi về cách hoàn thành các nhiệm vụ và cách cải thiện hiệu suất theo thời gian Nó là một công nghệ được phát triển từ lĩnh vực trí tuệ nhân tạo (AI) [1] Hình 1 Quá trình phát triển và hình thành của học máy ML vẫn cần sự đánh giá của con người trong việc tìm hiểu dữ liệu cơ sở và lựa chọn các kĩ thuật phù hợp để phân tích dữ liệu Ngoài ra, trước khi sử dụng thì dữ liệu cần được tiền xử lý dữ liệu để dữ liệu được sạch, không có sai lệch và không có dữ liệu giả Mô hình được tạo ra từ ML cần lượng dữ liệu đủ lớn để huấn luyện và đánh giá mô hình Trước đây, quyền truy cập vào các nguồn dữ liệu cần thiết để mô hình hóa các mối quan hệ giữa các dữ liệu còn hạn chế Ngày nay, sự