Có 2 cách thườngsử dụng trong cross-validation là splitting và k-fold.Bước 2: Xây dựng mô hình phân lớp classifier model- Mục đích của mô hình huấn luyện là tìm ra hàm fx và thôngqua hàm
.🙞🙞 HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ THÔNG TIN -🙞🙞🙞🙞🙞 - Phát Triển Các Hệ Thống Thông Minh Đề Tài: Web bán thiết bị điện tử, đề xuất giải cố bảo hành GVHD: Nguyễn Ngọc Duy Lớp: D20CQCNPM01-N Sinh viên thực hiện: Nguyễn Văn Thuận - N20DCCN077 Hồ Đức Nguyên - N20DCCN047 Ngô Thị Trang Nhung - N20DCCN051 Nguyễn Nhật Kha - N20DCCN031 TPHCM 11/2023 Mục lục DANH MỤC HÌNH ẢNH Hình 1.2:Giai đoạn huấn luyện Hình 2.3.1.1:Recurrent Neural Networks Hình 2.3.1.2: Mạng RNN Hình 2.3.2.1: Mơ thuật tốn RNN Hình 2.3.2.2: Mơ thuật tốn RNN Hình 2.3.3.1: The repeating module Hình 2.3.3.2:The repeating module Hình 2.3.3.2:The repeating module Hình 2.3.3.4:Mơ hình LSTM Hình 2.3.3.5:Mơ hình LSTM Hình 2.3.3.6:Mơ hình LSTM Hình 2.3.3.7:Mơ hình LSTM Hình 2.3.3.8:Mơ hình LSTM Hình 2.3.3.9:Mơ hình LSTM Hình 2.3.4.1:Mơ LSTM Hình 2.3.4.2:Mơ LSTM Hình 2.3.4.3:Mơ LSTM Hình 2.4.3.1: Thymeleaf giải Hình 2.5.1.1: project Spring Boot Hình 2.5.1.2: Sử dụng maven Hình 2.5.1.2: Product.java Hình 2.5.1.3: Kết nối service Hình 2.5.1.4: Xử lý logic project Hình 2.5.1.5: Xử lý logic project Hình 3.1: Sơ đồ chức Hình 3.2.1: Sơ đồ Use Case khách hàng Hình 3.2.2: Sơ đồ Use Case cho nhân viên Hình 3.3 Mơ hình ERD Hình 3.3.5 Mơ hình Diagram Hình 4.1.1: Màn hình đăng ký Hình 4.1.2: Màn hình đăng nhập Hình 4.1.3.1: Màn hình quên mật Hình 4.1.4: Màn hình trang chủ Hình 4.1.5: Màn hình chi tiết sản phẩm Hình 4.1.6: Màn hình đặt hàng Hình 4.1.7: Giao diện chat bot Hình 4.2.1: Màn hình quản lý khách hàng Hình 4.2.2: Màn hình quản lý danh mục Hình 4.2.3: Màn hình đơn đặt hàng Hình 4.2.4.1: Màn hình tạo nhãn hiệu Hình 4.2.4.2: Màn hình quản lý nhãn hiệu Hình 4.2.5: Màn hình quản lý cài đặt Hình 4.2.6.1: Màn hình quản lý nhân viên Hình 4.2.6.2: Màn hình chỉnh sửa thơng tin nhân viên Hình 4.2.6.3: Màn hình xóa hồ sơ nhân viên Hình 4.2.7: Màn hình quản lý giao hàng Hình 4.2.8: Màn hình quản lý sản phẩm Hình 4.3.1: Thơng tin liệu Hình 4.3.2: Thơng tin nhãn Hình 4.3.3: Phân phối nhãn Tập liệu Hình 4.3.4: Phân phối biểu đồ hình trịn tỷ lệ phần trăm nhãn Hình 4.3.4: Kiểm tra liệu Hình 4.5.6: Hàm Loại bỏ Stop Words ký tự đặc biệt Hình 4.5.7: Tiền xử lý văn bản: Chuyển đổi thành chữ thường, Loại bỏ stop words ký tự đặc biệt Hình 4.5.8 : Tiền xử lý liệu văn bản: Xử lý liệu văn cho mơ hình học máy Hình 4.6.1: Xây dựng model Hình 4.6.2: Mơ hình tổng quát model Hình 4.6.3: Compile model Hình 4.6.4: Huấn luyện model Hình 4.6.4: Kết fit model Hình 4.6.7: Accuracy Loss theo Epochs Hình 4.6.8: Accuracy Loss theo Epochs Hình 4.6.9: Accuracy Train Valid Hình 4.6.10: Thơng tin tập liệu Hình 4.6.11: Tỉ trọng nhãn Hình 4.6.12: Thực đánh giá Hình 4.6.13: Thư viện dùng code Hình 5.2.3: Người dùng sử dụng Chatbot Hình 5.2.4: Chatbot trả lời khách hàng gặp vấn đề lỗi Hình 5.2.5: Chatbot kiểm tra hướng dẫn Hình 5.2.5: Chatbot trả lời câu hỏi Chương : Giới thiệu đề tài 1.1 Lý chọn đề tài - Trong năm trở lại đây, với phát triển mạnh mẽ công nghệ thông tin Với việc hỗ trợ công nghệ thơng tin ngành kinh doanh phát triển theo giải nhiều khó khăn, việc kinh doanh từ trở nên dễ dàng thuận lợi Từ Thương mại điện tử xu hướng tất yếu kinh tế đại Với hỗ trợ công nghệ ngày phát triển, bùng nổ thiết bị kết nối internet, doanh nghiệp ngày có hội mở rộng kênh bán hàng, tiếp cận gần với người tiêu dùng Các website đời góp phần quan trọng to lớn việc thúc đẩy kinh doanh phát triển nhanh chóng - Xuất phát từ nhu cầu thực tế đó, thiết bị điện tử nhu cầu thiết yếu người, việc quản lý nhập bán việc thiếu Nhằm thay số cơng việc mà trước phải thao tác tay giấy tờ đạt hiệu không cao, nhiều thời gian việc quản lý thiết bị điện tử, thống kê số lượng tồn, thống kê doanh thu hay việc xuất hóa đơn Vì vậy, chúng em thực báo cáo với đề tài “Web bán thiết bị điện tử” - Và yêu cầu hệ thống cần có giúp người mua chuẩn đoán thiết bị điện tử họ gặp phải vấn đề Qua chúng em tích hợp thêm chatbot nhằm trả lời cho khách hàng vấn đề cần thiết mà khách hàng gặp phải thiết bị điên tử, … Chatbot chuẩn đoán xem thiết bị gặp phải vấn đề gì, phần cứng hay phần mềm đưa giải pháp hướng dẫn người dùng giải vấn đề Chatbot nâng cao trải nghiệm khách hàng nhờ phản hồi thời gian thực liên tục 24/7 mà khách hàng mua hàng mong đợi phản hồi nhanh chóng tích cực từ người bán 1.2 Giới thiệu chatbot - ChatBot chương trình máy tính tiến hành trị chuyện thơng qua nhãn tin nhanh, tự động trả lời Document continues below Discover more from:triển hệ Phát thống thông… INT14151 Học viện Công ng… 28 documents Go to course Hệ thống tự đọc 17 CCCD từ ảnh-Thiết… Phát triển hệ thống… 83% (6) Baitap basic Machine Learning Phát triển hệ thống thông… None D18 17 nhóm 17 37 ádasdasdd Phát triển hệ thống thơng… None Btiot - Thầy Quế Phát triển hệ thống thông… None Int Sys Dev 03 14 bt7 25 Phan Anh Hiếu Phát triển hệ thống thông… None Cân lược đồ câu hỏi xử lý tình Phạm vi phức tạp xám - btl ChatBot xác định thuật toán3 người tạo nên chúng Phát triển hệ None thống thông… - Cấu trúc thành phần hệ thống chatbot: Chatbot có thành phần hiểu ngơn ngữ tự nhiên (NLU), quản lý hội thoại (DM), thành phân sinh ngơn ngữ (NLG) Các thành phân nhận dạng giọng nói Speech Recognition (text to Hình 1.2:Giai đoạn huấn luyện speech hay text) thành phần speech to tăng cường 1.3 Mục tiêu nghiên cứu Nghiên cứu triển khai chatbot dựa thuật toán LSTM ANN Xây dựng hệ thống bán hàng hỗ trợ người dùng thuận lợi công việc quản lý cửa hàng Xây dựng chatbot hỗ trợ khách hàng 24/7 1.4 Một số hạn chế Hệ thống chưa hoàn chỉnh Chatbot chưa thơng minh thời gian sử dụng liệu training 1.5 Nội dung báo cáo Chương 1: Giới thiệu đề tài Chương 2: Cơ sở lý thuyết cơng nghệ Chương 3: Phân tích thiết kế hệ thống Chương 4: Xây dựng hệ thống Chương 5: Kết thực Chương 6: Kết luận Chương : Cơ sở lý thuyết công nghệ 2.1 Giới thiệu học máy - Học máy lĩnh vực trí tuệ nhân tạo liên quan đến việc nghiên cứu xây dựng kĩ thuật cho phép hệ thống "học" tự động từ liệu để giải vấn đề cụ thể Ví dụ máy "học" cách phân loại thư điện tử xem có phải thư rác (spam) hay không tự động xếp thư vào thư mục tương ứng Học máy gần với suy diễn thống kê (statistical inference) có khác thuật ngữ Một nhánh học máy học sâu phát triển mạnh mẽ gần có kết vượt trội so với phương pháp học máy khác Học máy có liên quan lớn đến thống kê, hai lĩnh vực nghiên cứu việc phân tích liệu, khác với thống kê, học máy tập trung vào phức tạp giải thuật việc thực thi tính tốn Nhiều tốn suy luận xếp vào loại tốn NP-khó, phần học máy nghiên cứu phát triển giải thuật suy luận xấp xỉ mà xử lý - Học máy có áp dụng rộng rãi bao gồm máy truy tìm liệu, chẩn đốn y khoa, phát thẻ tín dụng giả, phân tích thị trường chứng khốn, phân loại chuỗi DNA, nhận dạng tiếng nói chữ viết, dịch tự động, chơi trò chơi cử động robot 2.2 Giới thiệu toán phân lớp 2.2.1 Tổng quan - Bài tốn phân lớp q trình phân lớp đối tượng liệu vào hay nhiều lớp cho trước nhờ mơ hình phân lớp (model) Mơ hình xây dựng dựa tập liệu xây dựng trước có gán nhãn (hay cịn gọi tập huấn mát nhỏ tốt, tức làm cho dự đoán gần với giá trị thực tế o optimizer='adam': Đây thuật toán tối ưu hóa sử dụng để cập nhật trọng số mạng nơ-ron trình huấn luyện "Adam" thuật tốn tối ưu hóa phổ biến sử dụng học máy deep learning Nó tự động điều chỉnh tốc độ học (learning rate) trình huấn luyện để giúp mơ hình học hiệu o metrics=['accuracy']: Đây danh sách độ đo sử dụng để đánh giá hiệu suất mơ hình sau lần huấn luyện Trong trường hợp này, có độ đo 'accuracy' (độ xác) sử dụng để đo tỷ lệ dự đốn xác liệu kiểm tra Mục tiêu tối ưu hóa độ xác mơ hình - Phần quan trọng q trình huấn luyện mơ hình mạng nơ-ron: Hình 4.6.4: Huấn luyện model - Dưới giải thích cho thông số bước đoạn mã: o sequences_matrix ma trận liệu đầu vào sử dụng cho q trình huấn luyện Nó chứa chuỗi văn biểu diễn dạng số nguyên tiền xử lý o Y_train nhãn tương ứng với liệu huấn luyện o batch_size=10 xác định kích thước mini-batch q trình huấn luyện Quá trình huấn luyện thực mini-batch thay tồn liệu Điều giúp tăng tốc trình huấn luyện tiết kiệm nhớ o epochs=200 số lượng lần lặp lại (epochs) mà mơ hình huấn luyện tồn tập liệu Mơ hình cập nhật sau lần lặp lại o validation_data=(sequences_matrix_test, Y_test) xác định liệu kiểm tra (validation data) để đánh giá hiệu suất mơ hình sau lần epoch sequences_matrix_test chứa liệu kiểm tra, Y_test nhãn tương ứng với liệu kiểm tra o callbacks=[EarlyStopping(monitor='val_loss', patience=5)]: Sử dụng callback để kiểm soát việc dừng sớm (early stopping) trình huấn luyện Nếu giá trị mát tập kiểm tra (val_loss) khơng giảm vịng lần epoch liên tiếp (được xác định patience=5), trình huấn luyện dừng sớm để tránh overfitting Early stopping giúp đảm bảo mơ hình khơng tiếp tục học qua mức giữ cho tổng quan hóa tốt liệu - Sau huấn luyện mơ hình neural network thơng qua 23 epochs (lần lặp) cung cấp Hình 4.6.4: Kết fit model - Sau chạy huấn luyện cho mơ hình, ta quan sát thấy: o Mất mát độ xác tập huấn luyện (training data): Mất mát (loss) giảm từ 2.2740 epoch xuống 0.0050 epoch 23 Điều cho thấy mơ hình học cải thiện dự đoán theo thời gian Độ xác (accuracy) tăng từ 0.2094 epoch lên 1.0000 (hoàn toàn đúng) epoch 23 Điều cho thấy mơ hình học liệu huấn luyện tốt có khả dự đốn hồn hảo tập huấn luyện Tuy nhiên, điều dấu hiệu overfitting mơ hình khơng tổng quan hóa tốt liệu Hình 4.6.7: Accuracy Loss theo Epochs o Mất mát độ xác tập kiểm tra (validation data): Mất mát tập kiểm tra (val_loss) giảm từ Hình 4.6.7: Accuracy Loss theo Epochs 2.2124 epoch xuống 0.1091 epoch 23 Điều cho thấy mơ hình có khả tổng quan hóa tốt giảm thiểu mát tập kiểm tra Độ xác tập kiểm tra (val_accuracy) tăng từ 0.2500 epoch lên 0.9583 epoch 23 Điều cho thấy mơ hình có khả dự đốn khoảng 95.83% ví dụ tập kiểm tra, cho thấy mơ hình tổng quan hóa tốt liệu - Dựa thơng tin độ xác (accuracy) val_accuracy q trình huấn luyện mơ hình, thấy tiến mơ hình qua epochs sau: o Sau Epoch 1, độ xác tập huấn luyện (accuracy) 20.94%, độ xác tập kiểm tra (val_accuracy) 25.00% Tuy nhiên, hai số thấp o Kể từ Epoch đến Epoch 4, hai số tăng lên đáng kể Điều cho thấy mơ hình học cải thiện o Sau Epoch 4, độ xác tập huấn luyện tăng lên khoảng 70.12%, độ xác tập kiểm tra 75.00% Mơ hình bắt đầu hiệu có cải thiện đáng kể o Từ Epoch đến Epoch 15, hai số ổn định độ xác tập kiểm tra dao động từ 70.83% đến 95.83% o Cuối cùng, Epoch 23, mơ hình đạt độ xác tuyệt đối (1.00) tập huấn luyện độ xác tập kiểm tra 95.83% - Nhận xét: Mơ hình có cải thiện đáng kể đạt độ xác cao tập kiểm tra sau huấn luyện qua nhiều epochs Hình 4.6.9: Accuracy Train Valid - Dựa thông tin loss val_loss q trình huấn luyện mơ hình, đánh giá tiến mơ sau: o Sau Epoch 1, loss tập huấn luyện (loss) 2.2740, val_loss tập kiểm tra (val_loss) 2.2124 Cả hai giá trị loss cao, cho thấy mơ hình ban đầu gặp khó khăn việc học o Kể từ Epoch đến Epoch 4, loss val_loss giảm mạnh Điều cho thấy mơ hình học cải thiện o Sau Epoch 4, loss tập huấn luyện giảm xuống 0.7653, val_loss tập kiểm tra 0.7500 Mơ hình bắt đầu hiệu có cải thiện đáng kể o Từ Epoch đến Epoch 15, loss val_loss giữ ổn định giảm dần Điều cho thấy mơ hình hội tụ đạt cải thiện liên tục o Cuối cùng, Epoch 23, loss tập huấn luyện thấp (0.0050) val_loss tập kiểm tra 0.1091 - Nhận xét: Mơ hình có cải thiện đáng kể với giảm dần loss val_loss qua epochs Điều cho thấy mơ hình học biểu diễn tốt có khả dự đốn tốt tập kiểm tra - Đánh giá hiệu suất mơ hình học máy huấn luyện cách sử dụng liệu kiểm tra độc lập Dữ liệu kiểm tra không trùng với liệu sử dụng cho trình huấn luyện xác thực Tập liệu kiểm tra chứa tất nhãn có sẵn (tổng cộng 10 nhãn), nhãn đại diện số dòng liệu riêng biệt Hình 4.6.10: Thơng tin tập liệu Hình 4.6.11: Tỉ trọng nhãn Hình 4.6.12: Thực đánh giá Kết cho thấy mơ hình bạn có mức độ xác cao (93.33%) liệu kiểm tra có mát (loss) thấp (0.3823), cho thấy mơ hình hoạt động tốt việc dự đoán liệu kiểm tra o Loss (Mất mát): Loss độ đo cho sai lệch giá trị dự đoán giá trị thực tế Trong trường hợp này, loss có giá trị 0.3823 Giá trị loss thể mức độ sai lệch trung bình dự đốn mơ hình giá trị thực tế liệu kiểm tra Một giá trị loss thấp thể mơ hình có khả dự đốn tốt liệu kiểm tra o Accuracy (Độ xác): Accuracy tỷ lệ phần trăm dự đoán tổng số mẫu liệu kiểm tra Trong trường hợp này, accuracy có giá trị 0.9333 93.33% Điều có nghĩa mơ hình dự đốn khoảng 93.33% liệu kiểm tra Hình 4.6.13: Thư viện dùng code - Sử dụng thư viện Pandas, NumPy, Matplotlib, TensorFlow, Seaborn giúp thực nhiều công việc phức tạp từ việc xử lý liệu đến triển khai mơ hình máy học hiển thị kết cách trực quan: Pandas: Sử dụng để xử lý quản lý liệu đầu vào cho chatbot Pandas đọc liệu từ nguồn khác (ví dụ: file CSV, Excel), làm biến đổi liệu để có định dạng phù hợp cho mơ hình web NumPy: hỗ trợ phép toán số học làm cho việc làm việc với mảng ma trận dễ dàng Trong ngữ cảnh chatbot, hữu ích xử lý biến số tính tốn kết Matplotlib Seaborn: Dùng để trực quan hóa liệu, giúp hiểu rõ phân phối liệu đầu vào kết mơ hình Sử dụng để vẽ biểu đồ, đồ thị heatmap TensorFlow: Sử dụng để xây dựng mơ hình ngơn ngữ tự nhiên mơ hình học máy để phục vụ chức tương tác Chatbot 4.7 Nhận xét - Từ kết chạy mơ hình thực nghiệm nhận thấy mơ hình xây dựng có độ xác cao Có thể đưa tư vấn xác với câu hỏi từ phía người dùng Bên cạnh đó, mơ hình học nhiều trường hợp đưa vào liệu đào tạo Dù vậy, nhận xét thấy liệu sử dụng huấn luyện tương đối nhỏ cần phải nghiên cứu, bổ sung nhiều hơn, tìm hiểu thơng tin xác để mang lại câu trả lời tốt đáp ứng nhu cầu người dùng Chương : Kết thực 5.1 Kết thực hệ thống - Test API hệ thống: Các API hoạt động tốt trả kết xác - Test giao diện: Giao diện hiển thị đầy đủ xác - Test đường dẫn: đảm bảo quyền truy cập, đường dẫn chuyển tới trang muốn tới - Test chức thêm/ chỉnh sửa sản phẩm với liệu chuẩn: Sản phẩm thêm vào gán mã sản phẩm yêu cầu, sản phẩm sửa lưu hiển thị mã sản phẩm thông báo thêm vào thành công - Test chức thêm sản phẩm với liệu không chuẩn: Sản phẩm không thêm vào, sản phẩm chỉnh sửa không lưu lại báo lỗi thêm/ chỉnh sửa - Test chức lọc sản phẩm: Danh sách sản phẩm hiển thị xác 5.2 Kết thực chức thơng minh Bộ liệu dùng Chatbot Với tin nhắn “Xin chào bạn” Chatbot giới thiệu nói nhiệm vụ dự đoán vấn đề thiết bị điện tử Hình 5.2.3: Người dùng sử dụng Chatbot Khi người dùng miêu tả lỗi, Chatbot nêu dựa đoán hướng dẫn giải vấn đề có Sau kiểm tra xem khách hàng mua cửa hàng hay khơng, sau chatbot hướng dẫn đến cửa hàng , mua cửa hàng, chatbot bảo hành hạn Hình 5.2.4: Chatbot trả lời khách hàng gặp vấn đề lỗi Hình 5.2.5: Chatbot kiểm tra hướng dẫn Khi người dùng hỏi câu lề chatbot nêu rõ nhiệm vụ để khách hàng xác định câu cần hỏi Hình 5.2.5: Chatbot trả lời câu hỏi Chương : Kết luận - Bài báo cáo đề cập đến nội dung lý thuyết spring boot, thuật toán ANN Giới thiệu hàm Logistic Regression, forward propagation, back propagation Bài báo cáo cung cấp phân tích thiết kế sản phẩm ứng dụng bao gồm đặc tả usecase, sở liệu dùng cho ứng dụng - Về ứng dụng, có giao diện đơn giản, thân thiện, người dùng dễ sử dụng Xây dựng website với đầy đủ chức bán hàng quản lý hàng hóa Bên cạnh hệ thống Chatbot 24/7 giúp tư vấn cho khách hàng sản phẩm phù hợp nhất! - Hạn chế, Chatbot train lượng tri thức nhỏ nên chưa thể hỗ trợ hiệu câu hỏi, nhu cầu từ người dùng Website tồn lỗi lỗi chấp nhận Website cho chạy thử nghiệm thực tế hoạt động bình thường chưa đảm bảo đáp ứng hồn toàn nhu cầu thực tế người dùng Chương : Source code Backend API: https://github.com/AnhJun18/Shop-API Frontend ReactJS: https://github.com/AnhJun18/Shop-Web-React ChatBot & DataSet: https://github.com/PhanVanHieu-Ptit/PhatTrienHeThongThongMinh Chương TÀI LIỆU THAM KHẢO [1]T$ng quan v' Artificial Neural Network, Đỗ Cường, 2018 https://viblo.asia/p/tong-quan-ve-artificial-neural-network-1VgZvwYrlAw, truy cập ngày 15/12/2022 [2] Display Deep Learning Model Training History in Keras, Jason Brownlee, 2016 https://machinelearningmastery.com/display-deep-learning-modeltraining-history-in-keras/ , truy cập ngày 15/12/2022 [3] The Sequential model, fchollet, 2020 https://keras.io/guides/sequential_model/ , truy cập ngày 15/12/2022 [4] Các hàm kích hoạt (activation function) neural network, Nguyễn Việt Anh, 2019 https://aicurious.io/posts/2019-09-23-cac-ham-kich-hoatactivation-function-trong-neural-networks/ , truy cập ngày 15/12/2022 [5] Loss function P1 - hàm mấất mát cho toán regression, Nguyễễn Quý, 2021 https://ndquy.github.io/posts/loss-function/ , truy cập ngày 15/12/2022 Chương : Phân công công việc Nguyễn Văn Thuận - Thiết kế hệ thống Xây dựng hệ thống Word báo cáo chương API Flask, Build Model Nhận API Flask, Render chatbot Api kiểm tra bảo hành Tạo dataset Hồ Đức Nguyên - Thiết kế hệ thống Xây dựng hệ thống Word báo cáo chương API Flask, Build Model Nhận API Flask, Render chatbot Api kiểm tra bảo hành Tạo dataset Ngô Thị Trang Nhung - ppt Thiết kế hệ thống Xây dựng hệ thống Word báo cáo Chương 4, Nhận API Flask, Render chatbot Api kiểm tra bảo hành Tạo dataset Nguyễn Nhật Kha - Thiết kế hệ thống Xây dựng hệ thống Word báo cáo chương Giao diện chatbot Api kiểm tra bảo hành Nhận API Flask, Render chatbot Tạo dataset