Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
1,62 MB
Nội dung
TRƯỜNG ĐẠI HỌC TRẦN ĐẠI NGHĨA KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO TUẦN MÔN HỌC: MẠNG NEURAL TP HỒ CHÍ MINH, THÁNG 08 NĂM 2020 TRƯỜNG ĐẠI HỌC TRẦN ĐẠI NGHĨA KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO TUẦN MƠN HỌC: MẠNG NEURAL Nhóm báo cáo: Nguyễn Tiểu Phụng Huỳnh Đức Anh Tuấn Giảng viên hướng dẫn: Th.s Ngô Thanh Tú TP HỒ CHÍ MINH, THÁNG 06 NĂM 2020 MỤC LỤC MỤC LỤC CHƯƠNG 1: TÌM HIỂU NGƠN NGỮ LẬP TRÌNH PYTHON 1.1 Giới thiệu ngôn ngữ lập trình Python 1.1.1 Lịch sử phát triển 1.1.2 Phiên 1.1.3 Một số điểm khác phiên 3x 2x 1.1.4 Đặc điểm Python 1.2 Hướng dẫn cài đặt Anaconda/Miniconda 1.2.1 Giới thiệu Ananconda/Miniconda cài đặt 1.2.2 Download Anaconda/Miniconda hướng dẫn cài đặt 1.2.3 Hướng dẫn cài đặt CUDA cuDNN 13 1.2.4 Hướng dẫn cài thêm thư viện conda 13 CHƯƠNG 1: TÌM HIỂU TỔNG QUAN 1.1 Giới thiệu Machine Learning 1.1.1 Lịch sử phát triển - 1950 - Nhà bác học Alan Turing tạo "Turing Test (phép thử Turing)" để xác định xem liệu máy tính có trí thơng minh thực hay khơng Để vượt qua kiểm tra đó, máy tính phải có khả đánh lừa người tin người - 1952 - Arthur Samuel viết chương trình học máy (computer learning) Chương trình trị chơi cờ đam, hãng máy tính IBM cải tiến trị chơi để tự học tổ chức nước chiến lược để giành chiến thắng - 1957 - Frank Rosenblatt thiết kế mạng nơron (neural network) cho máy tính, mơ trình suy nghĩ não người - 1967 - Thuật toán "nearest neighbor" viết, cho phép máy tính bắt đầu sử dụng mẫu nhận dạng (pattern recognition) Nó sử dụng để vẽ lộ trình cho người bán hàng bắt đầu từ thành phố ngẫu nhiên đảm bảo qua tất thành phố khác theo quãng đường ngắn - 1990s - Machine Learning dịch chuyển từ cách tiếp cận hướng kiến thức (knowledge-driven) sang cách tiếp cận hướng liệu (data-driven) Các nhà khoa học bắt đầu tạo chương trình cho máy tính để phân tích lượng lớn liệu rút kết luận - "học" từ kết - 006 - Geoffrey Hinton đưa thuật ngữ "deep learning" để giải thích thuật tốn cho phép máy tính "nhìn thấy" phân biệt đối tượng văn hình ảnh video - 2010 - Microsoft Kinect theo dõi 20 hành vi người tốc độ 30 lần giây, cho phép người tương tác với máy tính thơng qua hành động cử - 2011 - Google Brain phát triển, mạng deep nơron (deep neural network) học để phát phân loại nhiều đối tượng theo cách mà mèo thực - 2014 - Facebook phát triển DeepFace, phần mềm thuật tốn nhận dạng xác minh cá nhân dựa vào hình ảnh mức độ giống người - 2015 - Amazon mắt tảng machine learning riêng - 2015 - Microsoft tạo Distributed Machine Learning Toolkit, cho phép phân phối hiệu vấn đề machine learning nhiều máy tính 1.1.2 Machine Learning gì? - Machine Learning tập AI Theo định nghĩa Wikipedia, Machine learning is the subfield of computer science that “gives computers the ability to learn without being explicitly programmed” - Nói đơn giản, Machine Learning lĩnh vực nhỏ Khoa Học Máy Tính, có khả tự học hỏi dựa liệu đưa vào mà không cần phải lập trình cụ thể - Machine Learning thường chia thành học có giám sát, máy tính học ví dụ từ liệu gắn nhãn học khơng giám sát, máy tính nhóm liệu tương tự xác định xác bất thường 1.1.3 Deep-Learing? - Deep Learing nhóm thuật tốn nhỏ Machine Learning lấy ý tưởng dựa Neural Network (mạng neuron) người Deep Learning thường yêu cầu lượng liệu lớn nguồn tài nguyên sử dụng nhiều phương pháp thông thường, nhiên cho độ xác cao - Những dấu mốc quan trọng lịch sử phát triển DeepLearning Perceptron (60s) - Perceptron thuật toán supervised learning giúp giải toán phân lớp nhị phân, khởi nguồn Frank Rosenblatt năm 1957 nghiên cứu tài trợ Văn phòng nghiên cứu hải quân Hoa Kỳ (U.S Office of Naval Research – từ quan liên quan đến quân sự) MLP Backpropagation đời (80s)- Năm 1986, Geoffrey Hinton với hai tác giả khác xuất báo khoa học Nature với tựa đề “Learning representations by back-propagating errors” Trong báo này, nhóm ơng chứng minh neural nets với nhiều hidden layer (được gọi multi-layer perceptron MLP) huấn luyện cách hiệu dựa quy trình đơn giản gọi backpropagation Năm 2006 - neural networks với nhiều hidden layer đổi tên thành deep learning 1.1.4 Neural Network (Mạng Nơ-ron) - Neural Network hệ thống chương trình cấu trúc liệu mô cách vận hành não người Mỗi nơ-ron mạng nơ-ron hàm tốn học lấy liệu thơng qua đầu vào, biến đổi liệu thành dạng dễ điều chỉnh sau phun thơng qua đầu 1.2 Hướng dẫn cài đặt Anaconda/Miniconda 1.2.1 Giới thiệu Ananconda/Miniconda cài đặt - Anaconda Distribution miễn phí mã nguồn mở Python R giúp đơn giản hóa việc cài đặt, quản lý triển khai packages (numpy, scipy, tensorflow, ) - Anaconda phục vụ cho nhiều mục địch, đặc biệt Data Science (Khoa học liệu), Machine learnig (Máy học), Big Data (Dữ liệu lớn), Image Processing (Xử lý ảnh), - Anaconda có 20 triệu người dùng 7500 packages khoa học liệu dành cho Windows, Linux MacOS - Trong Spyder IDE (mơi trường tích hợp dùng để phát triển phần mềm) tốt cho data science quang trọng cài đặt bạn cài đặt Anaconda 1.2.2 Download Anaconda/Miniconda hướng dẫn cài đặt 1.2.2.1 Các bước cài đặt - Yêu cầu phần cứng phần mềm: Hệ điều hành: Win 7, Win 8/8.1, Win 10, Red Hat Enterprise Linux/CentOS 6.7, 7.3, 7.4, and 7.5, and Ubuntu 12.04+ Ram tối thiểu 4GB Ổ cứng trống tối thiểu 3GB để tải cài đặt Cài đặt: - Bước 1: truy cập vào trang web https://www.anaconda.com/ Hình 1.1 Trang chủ ananconda.com Chọn xuống mục download: chọn tải phiên thích hợp, em chọn hệ điều hành windows python 3.7 64-bit Graphical Hình 1.2 Download cài đặt - Bước 2: Chạy file cài đặt với quyền admin Hình 1.3 tiến hình cài đặt - Bước 3: Chấp nhập yêu cầu thiết lập tiến hình cài đặt Hình 1.4 Giao diện cài đặt - Bước 4: Chọn tài khoản vị trí để cài đặt Ở em chọn recommended ổ C:/ Hình 1.5 Chọn tài khoản vị trí để cài đặt - Bước 5: Giao diện Anaconda cài đặt xong Hình 1.6 Giao diện phần mền Anaconda - Bước 6: Kiểm tra lại phiên phần mềm Anaconda Hình 1.7 Giao diện home Anaconda Chọn Launch Environments base(root) để mở CMD môi trường conda để kiểm tra lại phiên cài đặt lệnh: conda -V Hình 1.8 kiểm tra phiên conda Hình 1.9 kiểm tra phiên python 1.2.2.2 Quản lý mơi trường - Với Anaconda có nhiều packages khoa học phụ thuộc vào phiên cụ thể packages khác Các nhà khoa học liệu thường sử dụng nhiều phiên nhiều package sử dụng nhiều môi trường để phân tách phiên khác - Chương trình dịng lệnh (command-line program conda) vừa trình quản lý package vừa trình quản lý mơi trường (environment manager) Điều giúp nhà khoa học liệu đảm bảo phiên package có tất phụ thuộc mà u cầu hoạt động xác - Anaconda Navigator cung cấp cho người dùng giao diện đồ họa để quản lý environment (môi trường) package Ta có environment mặc định base (root) chứa package - Ở ngăn giao diện Home nơi quản lý Application (ứng dụng) environment (trong vịng đỏ) Hình 1.10 Giao diện environment Hình 1.11 ngăn giao diện Environments - Vùng số danh sách environment ta tạo - Vùng số nút để tạo environment mới, sau nhấp chuột vào ta có giao diện hình 1.12 Chúng ta chọn version Python đặt tên cho môi trường - Tương tự Clone để chép environment với package giống environment tạo Import dùng để tạo environment file có sẵn Remove để xóa environment - Vùng thứ dùng để tìm kiếm cài đặt package environment bạn chọn vùng thứ - Ví dụ tạo environment imgprocess Hình 1.12 tạo environment imgprocess 10 Hình 1.13 environment imgprocess tạo thành cơng 1.2.3 Hướng dẫn cài đặt CUDA cuDNN 1.2.3.1 Cài đặt CUDA - Vào trang: https://developer.nvidia.com/cuda-toolkit chọn DOWNLOADS - Chọn tiếp CUDA Toolkit DOWNLOAD 11 - Tiếp tục nhấp vào nút màu xanh mô tả tảng phù hợp (nên chọn Type exe local) Bằng cách tải xuống sử dụng phần mềm, bạn cần đồng ý tuân thủ đầy đủ điều khoản điều kiện CUDA EULA - Sau download thành công chuyển sang bước cài đặt 12 - Quá trình cài đặt trải qua giai đoạn 1.2.3.2 Tải cuDNN cho Pytorch 10.1 - Truy cập đường dẫn: https://developer.nvidia.com/rdp/cudnn-archive tiến hành đăng nhập (nếu có) đăng ký tài khoản (nếu chưa có) - Chọn phiên phù hợp (10.1) và chọn hệ điều hành phù hợp sau tiến hành tải thư viện 13 1.2.4 Hướng dẫn cài thêm thư viện conda 1.2.4.1 Các thư viện sử dụng - Tạo environment neural để cài thư viện hỗ trợ Hình 1.14 create environment neural - Các thư viện cần cài đặt thêm như: Pytorch Numpy Matloplit 14 1.2.4.2 Cài đặt pytorch dòng lệnh - Truy cập vào trang chủ https://pytorch.org/ - Lựa chọn gói hỗ trợ phù hợp (Sử dụng 10.1) Hình 1.15 Các điều kiện cài đặt - Mở CMD.exe Prompt với environment neural - Thư viện openCV: dùng lệnh conda install pytorch torchvision cudatoolkit=10.1 -c pytorch 15 Hình 1.16 cài thư viện Pytorch env neural cmd 1.3 Bài tốn mơ Training a classifier Chuẩn bị liệu - Bộ liệu sử dụng gồm 10 lớp từ CIFAR-10: ‘airplane’, ‘automobile’, ‘bird’, ‘cat’, ‘deer’, ‘dog’, ‘frog’, ‘horse’, ‘ship’, ‘truck’ - Các hình ảnh CIFAR-10 có kích thước 3x32x32, tức hình ảnh màu kênh có kích thước 32x32 pixel Đào tạo lớp phân loại hình ảnh gồm bước: - Tải chuẩn hóa liệu kiểm tra huấn luyện CIFAR10 cách sử dụng torchvision - Xác định mạng nơ ron kết hợp - Xác định chức Loss tối ưu hóa - Đào tạo cho mạng liệu - Kiểm tra mạng với liệu thử nghiệm 16