Tìm Hiểu Mạng Noron Nhân Tạo Và Ứng Dụng Vào Bài Toán Phân Loại Hoa Quả.docx

31 2 0
Tìm Hiểu Mạng Noron Nhân Tạo Và Ứng Dụng Vào Bài Toán Phân Loại Hoa Quả.docx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN THUỘC HỌC PHẦN TRÍ TUỆ NHÂN TẠO ĐỀ TÀI Tìm hiểu mạng noron nhân tạo và ứng dụng vào bài toán phân loại hoa[.]

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN - BÁO CÁO BÀI TẬP LỚN THUỘC HỌC PHẦN: TRÍ TUỆ NHÂN TẠO ĐỀ TÀI Tìm hiểu mạng noron nhân tạo ứng dụng vào tốn phân loại hoa Hà Nội, 2023 BỘ CƠNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN - BÁO CÁO BÀI TẬP LỚN THUỘC HỌC PHẦN: TRÍ TUỆ NHÂN TẠO ĐỀ TÀI Tìm hiểu mạng noron nhân tạo ứng dụng vào toán phân loại hoa Giáo viên hướng dẫn: Ths Lê Thị Thủy Nhóm – Lớp : 13 - 2022IT6043001 Thành viên : Trương Cơng Mạnh – 2021601910 Lê Thị Hồ – 2021607685 Dương Thị Hương Giang – 2021607759 Hà Nội, 2023 LỜI NÓI ĐẦU Lời đầu tiên, chúng em xin gửi lời cảm ơn đến cô Lê Thị Thủy trực tiếp giảng dạy hướng dẫn cho chúng em thực đề tài báo cáo thực nghiệm Trong trình học tập làm đề tài thầy dẫn dắt hướng dẫn nhóm làm tốt đề tài truyền đạt kiến thức trọng tâm học phần Cơ giúp chúng em tích lũy thêm nhiều kiến thức bổ ích, trau dồi kỹ cần có lĩnh vực cơng nghệ thơng tin Giúp chúng em có định hướng cơng việc tốt sau trường Có lẽ kiến thức vô hạn mà tiếp nhận kiến thức thân người tồn hạn chế định Do đó, q trình hồn thành báo cáo thực nghiệm chúng em tránh khỏi thiếu sót Vậy nên chúng em mong nhận đóng góp ý kiến để tập chúng em hồn thiện tốt Kính chúc cô mạnh khỏe, thành công đường nghiệp giảng dạy Chúng em xin chân thành cảm ơn! Nhóm 13 MỤC LỤC LỜI NĨI ĐẦU MỤC LỤC DANH MỤC HÌNH ẢNH CHƯƠNG TỔNG QUAN VỀ TRÍ TUỆ NHÂN TẠO 1.1 Định nghĩa trí tuệ nhân tạo 1.2 Lịch sử trí tuệ nhân tạo 1.3 Các lĩnh vực AI .8 1.4 Các thành tựu AI CHƯƠNG MẠNG NORON NHÂN TẠO .9 2.1 Giới thiệu mạng Nơ-ron .9 2.2 Hàm xử lý 11 2.3 Mạng Perceptron 13 2.3.1 Kiến trúc mạng Perceptron .13 2.3.2 Huấn luyện mạng Perceptron 14 2.3.3 Giải thuật huấn luyện mạng Perceptron 14 2.3.4 Mạng Perceptron có nhiều nơ ron 15 2.4 Mạng nơ ron nhiều lớp học lan truyền ngược .16 2.4.1 Chọn lớp ẩn .16 2.4.2 Giải thuật lan truyền ngược 17 2.4.3 Dừng trình huấn luyện đánh giá sai số mạng 18 2.4.4 Vấn đề mạng lan truyền ngược 19 CHƯƠNG ỨNG DỤNG PHÂN LOẠI HOA QUẢ .20 3.1 Đặt vấn đề 20 3.2 Tập liệu 20 3.3 Các bước thực 20 3.4 Kết .24 KẾT LUẬN 26 TÀI LIỆU THAM KHẢO 27 DANH MỤC HÌNH ẢNH Hình 1.1 Thành phần trí tuệ nhân tạo .6 Hình 1.2 Chặng đường trí thơng minh nhân tạo .7 Hình 1.3 Các lĩnh vực AI .8 Hình 2.1 Cấu tạo tế bào nơ ron sinh học Hình 2.2 Cấu tạo nơ ron nhân tạo 10 Hình 2.3 Hàm đồng (Identity function) .11 Hình 2.4 Đồ thị hàm bước nhị phân (Binary step function) 12 Hình 2.5 Đồ thị hàm Sigmoid .12 Hình 2.6 Đồ thị hàm Sigmoid lưỡng cực 12 Hình 2.7 Kiến trúc mạng Perceptron 13 Hình 2.8 Đồ thị hàm kích hoạt Hardlim 13 Hình 2.9 Mạng perceptron có đầu 14 Hình 2.10 Bài tốn phân lớp cho mạch XOR .15 Hình 2.11 Đánh giá sai số mạng neural sau huấn luyện .19 Hình 3.1 Ảnh minh họa tập liệu huấn luyện 20 CHƯƠNG TỔNG QUAN VỀ TRÍ TUỆ NHÂN TẠO 1.1 Định nghĩa trí tuệ nhân tạo Khái niệm trí tuệ nhân tạo (Artificial Intelligence- viết tắt AI) hiểu cách đơn giản, trí tuệ nhân tạo lĩnh vực khoa học công nghệ nhằm làm cho máy có khả trí tuệ người như: biết suy nghĩ lập luận để giải vấn đề, biết giao tiếp hiểu ngôn ngữ tiếng nói, biết học tự thích nghi, Một vài định nghĩa khác trí tuệ nhân tạo:  Bellman (1978) định nghĩa: Trí tuệ nhân tạo tự động hoá hoạt động phù hợp với suy nghĩ người, chẳng hạn hoạt động định, giải toán  Rich Knight (1991) cho trí tuệ nhân tạo lĩnh vực nghiên cứu để làm cho máy tính làm việc mà người làm tốt  Winston (1992) cho trí tuệ nhân tạo lĩnh vực nghiên cứu tính tốn để máy nhận thức, lập luận tác động Hình 1.1 Thành phần trí tuệ nhân tạo 1.2 Lịch sử trí tuệ nhân tạo Vào tháng 10 năm 1950, nhà bác học người Anh Alan Turing xem xét vấn đề “liệu máy có khả suy nghĩ hay khơng?” (I propose to consider the question, “Can machines think?”) Để trả lời câu hỏi này, ông đưa khái niệm "phép thử bắt chước" (Imitation test) mà sau người ta gọi “phép thử Turing” (Turing test) Phép thử phát biểu dạng trị chơi Theo đó, có ba đối tượng tham gia trò chơi (gồm hai người máy tính) Một người (người thẩm vấn) ngồi phịng kín tách biệt với hai đối tượng lại Người đặt câu hỏi nhận câu trả lời từ người (người trả lời thẩm vấn) từ máy tính Cuối cùng, người thẩm vấn không phân biệt câu trả lời người, câu trả lời máy tính lúc nói máy tính có khả "suy nghĩ" giống người Như lịch sử AI tóm gọn giai đoạn:  Giai đoạn (1950-1965): Các cơng trình nghiên cứu họ Bộ Quốc Phòng Mỹ tài trợ họ đầy lạc quan tương lai mơn (Chương trình chơi cờ Samuel, Chương trình lý luận logic Newell & Simon, Chương trình chứng minh định lý hình học Gelernter.)  Giai đoạn hai (1965 - 1975): Tập trung vào việc biểu diễn tri thức phương thức giao tiếp người máy tính ngơn ngữ tự nhiên Giai đoạn ba (từ 1975): Trí tuệ nhân tạo dần trở thành ngành công nghiệp Các hệ thống chương trình lĩnh vực dùng thương mại mang lại lợi nhuận cho người sử dụng Hình 1.2 Chặng đường trí thơng minh nhân tạo 1.3 Các lĩnh vực AI  Lập luận, suy diễn rộng: Suy diễn logic, rút kết luận từ giả thiết cho  Học máy: Nghiên cứu khả học máy tính mà khơng cần phải lập trình tường minh từ đầu  Xử lý ngôn ngữ tự nhiên: Ứng dụng dựa ngơn ngữ người: Nhận dạng tiếng nói, nhận dạng chữ viết, dịch tự động, tìm kiếm thơng tin  Robot: Chế tạo robot đối phó dị tìm nạn nhân thảm họa, xe tự lái, robot phụ vụ Hình 1.3 Các lĩnh vực AI 1.4 Các thành tựu AI Ngày 11/05/1997, siêu máy tính Deep Blue IBM đánh bái đại kiện tướng cờ vua người Nga, Garry Kimovich Kasparov Ngày 31/10/2000, Honda cho mắt robot thơng minh tên ASIMO bước chéo, nhảy múa, leo cầu thang, chân tiến lùi đặc biệt thực cử chỉ, biểu lộ giống người: khóc, tức giận, vui mừng, ngạc nhiên Từ – 15/03/2016, AlphaGo Google đánh bại đương kim vô địch cờ vây giới Lee Se-dol sau ván đấu Seoul, Hàn Quốc CHƯƠNG MẠNG NORON NHÂN TẠO 2.1 Giới thiệu mạng Nơ-ron Mạng Nơ-ron nhân tạo (ANN) tập hợp phần tử xử lý đơn giản kết nối với Mỗi phần tử xử lý thực thao tác tính tốn nhỏ, mạng lưới phần tử có khả to lớn nhiều Mạng Nơ- ron nhân tạo nghiên cứu sở não người  Bộ não người Bộ não bao gồm khoảng 100 tỷ đơn vị xử lý liên kết để tạo thành mạng lưới xử lý thông tin mà ta gọi Nơ-ron thần kinh Mỗi nơ-ron hoạt động xử lý đơn giản Chính tương tác khổng lồ tất tế bào với trình xử lý song song chúng tạo nên khả tuyệt vời não Các sợi nhánh ống phân nhánh cành từ thân nơ-ron, chúng tiếp nhận tín hiệu từ bên Thân nơ-ron chứa nhân cấu trúc khác, hỗ trợ q trình xử lý hóa học sản xuất chất dẫn truyền thần kinh Sợi trục ống đặc biệt dẫn truyền tín hiệu đến nơ-ron khác, quan phản ứng (vận động) vùng đệm Các sợi trục chung với thành bó gọi dây thần kinh Khu vực kết thúc sợi trục tiếp xúc sợi nhánh nơ-ron khác gọi xi-nap Hình 2.4 Cấu tạo tế bào nơ ron sinh học  Mạng nơ-ron nhân tạo Năm 1943, Warren McCulloch Walter Pitts đưa mơ hình đơn giản nơ-ron nhân tạo Đây bước khởi đầu lịch sử ANN Cho tới tận ngày nay, mơ hình xem tảng cho hầu hết ANN Ở đây, nơ-ron gọi Perceptron Nơ-ron nhân tạo bản: Hình 2.5 Cấu tạo nơ ron nhân tạo Trong đó: - Danh sách đầu vào (xi): Là thuộc tính đầu vào nơ ron Số lượng thuộc tính đầu vào thường nhiều một, liệu thô đầu vào thường vector nhiều chiều, nhiều nơ ron tầng trước kết nối tới nơ ron tầng sau - Trọng số liên kết (wji): Các liên kết thể độ mạnh yếu qua giá trị gọi trọng số liên kết Kết hơp với đầu truyền, tín hiệu đến nơ ron nhân tạo khác tính wji - Hàm tổng: Tổng tích đầu vào với trọng số liên kết mơ khớp kết nối Sau qua hàm tính tổng để tính giá trị trước đưa vào hàm truyền - Thiên lệch (θj - bias): Độ lệch đưa vào sau khi tính tốn xong hàm tổng, tạo giá trị cuối trước đưa vào hàm truyền Mục đích việc thêm vào thiên lệch nhằm dịch chuyển chức hàm kích hoạt sang trái phải, giúp ích mạng huấn luyện Trong mạng nơron có ba kiểu đơn vị: - Các đơn vị đầu vào (Input units), nhận tín hiệu từ bên ngồi - Các đơn vị đầu (Output units), gửi liệu bên - Các đơn vị ẩn (Hidden units), tín hiệu vào (input) (output) nằm mạng Hình 2.13 Bài tốn phân lớp cho mạch XOR 2.4 Mạng nơ ron nhiều lớp học lan truyền ngược 2.4.1 Chọn lớp ẩn  Số lớp ẩn Về lý thuyết khơng có lý sử dụng mạng có nhiều hai lớp ẩn Người ta xác định phần lớn toán cụ thể cần sử dụng lớp ẩn cho mạng đủ để giải Các toán sử dụng hai lớp ẩn xảy thực tế Ngoài ra, việc huấn luyện mạng thường chậm mà số lớp ẩn sử dụng nhiều Lý sau giải thích cho việc sử dụng lớp ẩn tốt là: - Phần lớn thuật toán luyện mạng cho mạng nơron truyền thẳng dựa phương pháp gradient Các lớp thêm vào thêm việc phải lan truyền lỗi làm cho vector gradient không ổn định - Số cực trị địa phương tăng lên lớn có nhiều lớp ẩn xác suất cao bị tắc cực trị địa phương sau nhiều thời gian lặp, ta phải bắt đầu lại - Về tổng thể, người ta cho việc nên xem xét khả sử dụng mạng có lớp ẩn Nếu dùng lớp ẩn với số lượng lớn đơn vị mà khơng có hiệu nên sử dụng thêm lớp ẩn với số đơn vị  Số nơron lớp ẩn Một vấn đề quan trọng việc thiết kế mạng cần có nơron lớp ẩn Sử dụng q nơron dẫn đến việc khơng thể nhận dạng tín hiệu đầy đủ tập liệu phức tạp Sử dụng nhiều nơron tăng thời gian luyện mạng Số lượng tốt đơn vị ẩn phụ thuộc vào nhiều yếu tố - số đầu vào, đầu mạng, số trường hợp tập mẫu, độ nhiễu liệu đích, độ phức tạp hàm lỗi, kiến trúc mạng thuật tốn luyện mạng Có nhiều cách để lựa chọn số đơn vị lớp ẩn chẳng hạn nằm khoảng kích thước lớp vào, lớp ra: Trong đó: m: Số nơron lớp ẩn t: Số lớp đầu vào z: Số lớp đầu Các luật coi lựa chọn thơ chọn lựa kích thước lớp Chúng không phản ánh thực tế, lẽ chúng xem xét đến nhân tố kích thước đầu vào, đầu mà bỏ qua nhân tố quan trọng khác như: trường hợp đưa vào huấn luyện, độ nhiễu đầu mong muốn, độ phức tạp hàm lỗi, kiến trúc mạng (truyền thẳng hay hồi quy), thuật toán học Trong phần lớn trường hợp, khơng có cách để dễ dàng xác định số tối ưu đơn vị lớp ẩn mà luyện mạng sử dụng số đơn vị lớp ẩn khác dự báo lỗi tổng quát hóa lựa chọn Cách tốt sử dụng phương pháp thử-sai (trial-and-error) Trong thực tế, sử dụng phương pháp Lựa chọn tiến (forward selection) hay Lựa chọn lùi (backward selection) để xác định số đơn vị lớp ẩn 2.4.2 Giải thuật lan truyền ngược Đến thời điểm tại, có nhiều dạng Mạng Nơ-ron khác đề Và nghiên cứu rộng rãi nhiều ngành khoa học (Khoa học máy tính, Kĩ thuật điện tử, sinh học tâm lý học) nên mạng nơron mang nhiều tên gọi khác nhau, ví Mạng nơ-ron nhân tạo (Artificial Neural Networks ANNs), Mơ hình kết nối (Connectionism or Connectionist Models), Perceptron đa lớp (Multi-player Perceptrons MLPs) xử lý phân tán song song (Parallel Distributed Processing PDP) Các mạng nơron truyền thẳng nhiều lớp luyện phương pháp học có thầy Phương pháp dựa việc yêu cầu mạng thực chức sau trả lại kết quả, kết hợp kết với đầu mong muốn để điều chỉnh tham số mạng, nghĩa mạng học thông qua sai sót  Mơ tả thuật tốn Ta sử dụng dạng tổng quát mạng nơron truyền thẳng nhiều lớp Khi đó, đầu lớp trở thành đầu vào lớp Phương trình thể sau: Trong M số lớp mạng Các nơron lớp thứ nhận tín hiệu từ bên ngồi: Chính điểm bắt đầu phương trình phía Đầu lớp cuối xem đầu mạng: Đối với mạng nơron truyền thẳng nhiều lớp, lỗi không hàm trọng số lớp ẩn, việc tính đạo hàm phần khơng đơn giản Chính lý mà ta phải sử dụng luật xích để tính Và kết thuật toán giảm theo hướng biểu diễn sau: Ở dạng ma trận là: Bây ta cần tính tốn nốt ma trận độ nhạy cảm s” Để thực điều cần sử dụng áp dụng khác luật xích Q trình cho ta khái niệm lan truyền ngược mơ tả mối quan hệ hồi quy độ nhạy cảm s” tính qua độ nhạy cảm sm + lớp m+1 Để dẫn đến quan hệ đó, ta sử dụng ma trận Jacobian Và kết biểu diễn sau: Biểu diễn dạng ma trận: 2.4.3 Dừng trình huấn luyện đánh giá sai số mạng Quá trình huấn luyện mạng nơ-ron dừng lại mạng nhận tất mẫu đáp ứng mức sai số hay yêu cầu cụ thể Ta ước lượng tổng sai số mạng cách cộng dồn sai số lần huấn luyện Nói cách khác, mạng nơ-ron tiếp tục q trình huấn luyện tất mẫu lặp lặp lại tổng sai số giảm giá trị đích định trước dừng Khi tính tốn tổng sai số cho điều kiện dừng mạng, cần chuyển sai số giá trị dương Sau mạng nơ-ron huấn luyện, có khả nhận khơng mẫu ví dụ hồn thiện mà cịn nhận dạng mẫu bị lỗi, nhiễu Thực tế, ta chủ động thêm vào tập mẫu huấn luyện mẫu nhiễu để cải thiện khả kháng lỗi mạng Quá trình đạo tạo hiệu mẫu áp dụng cho việc huấn luyện xếp theo thứ tự ngẫu nhiên Hình 2.14 Đánh giá sai số mạng neural sau huấn luyện Khi mạng nơ-ron huấn luyện đầy đủ, sai số tập hợp lệ đạt cực tiểu Khi mạng bị huấn luyện mức, giá trị sai số tập hợp lệ bắt đầu tăng dần, đó, mạng nơ-ron dần khả xử lý liệu nhiễu 2.4.4 Vấn đề mạng lan truyền ngược Mạng lan truyền ngược có nhiều vấn đề cần quan tâm Vấn đề biết đến nhiều “Cực tiểu cục bộ”, xảy giải thuật ln ln tìm cách điều chỉnh trọng số để giảm giá trị sai số Như đôi lúc giá trị sai số cần phải tăng khu vực cục để đảm bảo q trình giảm tồn cục giải thuật bị mắc kẹt, dừng lại sai số chưa phải cực tiểu mong muốn Khi mạng trở nên lớn hơn, ta phải đối mặt với nhiều vấn đề hầu hết giải cách khởi tạo lại trọng số mạng Và có nhiều dạng khác giải thuật lan truyền ngược phát triển để giải vấn đề Ưu điểm mạng sử dụng giải thuật lan truyền ngược khả nhận dạng mẫu Các mẫu trình diện trực tiếp cho mạng xác định vị

Ngày đăng: 30/08/2023, 02:16

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan