Rượu là một trong những thức uống được sử dụng phổ biến ở nhiều nước, nhiều quốc gia trên thế giới không chỉ trong những ngày thường, nó còn được sử dụng rất nhiều trong những ngày lễ tết, tiệc tùng … Với mong muốn được khám phá và tìm hiểu sâu hơn về những kiến thức đã được học ở trên lớp. Nhóm em đã đưa ra quyết định với đề tài “Nghiên cứu hệ thống đưa ra quyết định đặt đơn hàng cho phù hợp với từng thời điểm trong năm ở các cửa hàng tại bang Iowa – Mỹ”.Dựa trên kho dữ liệu về đơn đặt hàng của các cửa hàng bán rượu tại bang Iowa – Mỹ. Nhóm em sẽ đưa ra những quyết định đặt hàng của các sản phẩm rượu phụ thuộc vào vị trí địa lý, thời gian, các mùa trong năm cho phù hợp nhằm đáp ứng nhu cầu của thị trường. Lưu ý: Tài liệu mang tính chất tham khảo, vui lòng không sao chép hoặc copy
ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN Năm học: 2021 - 2022 BÁO CÁO ĐỒ ÁN MÔN HỌC HỆ HỖ TRỢ QUYẾT ĐỊNH LỚP IS254.M22.TMCL NHÓM 16 NGUYỄN KHẮC THÀNH - 19520956 NGUYỄN QUANG THÁI - 19522190 GIẢNG VIÊN HƯỚNG DẪN ThS.NGUYỄN THANH BÌNH ĐỀ TÀI HỆ HỖ TRỢ QUYẾT ĐỊNH ĐẶT HÀNG CHO CÁC CỬA HÀNG BÁN RƯỢU TẠI BANG IOWA MỤC LỤC MỤC LỤC LỜI MỞ ĐẦU NHẬN XÉT CỦA GIẢNG VIÊN .3 CHƯƠNG I: TỔNG QUAN VỀ ĐỀ TÀI Giới thiệu đồ án Giới thiệu dataset CHƯƠNG II: TRIỂN KHAI QUY TRÌNH VÀ PHƯƠNG PHÁP TRIỂN KHAI .5 Deployment Business Understanding Data Exploration 3.1 Công cụ sử dụng 3.2 Mơ tả thuộc tính Data Preparation 4.1 Chọn cột thuộc tính cần thiết đặt lại tên cột thuộc tính .7 4.2 Xử lý chuyển cột date thành kiểu liệu datatime 4.3 Kiểm tra trùng lặp .7 4.4 Kiểm tra dòng liệu bị thiếu (Dữ liệu NULL) Data Modeling 5.4 Model Sarimax 5.5 Model Prophet .10 Data Evaluation 11 CHƯƠNG III: KẾT LUẬN 12 Xử lý liệu .12 Chạy thuật toán .13 So sánh 13 Đưa dự đoán 13 Đưa định .13 CHƯƠNG IV: TÀI LIỆU THAM KHẢO .13 LỜI MỞ ĐẦU Trang Sau năm bị ảnh hưởng đại dịch Covid-19, công việc giảng dạy học tập thầy cô, giảng viên sinh viên bị ảnh hưởng nhiều Không phương pháp giảng dạy thầy cô phải thay đổi linh hoạt cho phù hợp với tình hình dịch bệnh mà bạn sinh viên cần phải có phương pháp học tập đắn nhằm mang lại hiệu trình học tập Đại dịch Covid-19 gây nhiều mát thể chất tinh thần nhiều gia đình Vì vậy, nhóm 16 chúng em xin gửi lời chúc sức khỏe điều tốt đẹp đến với thầy gia đình Đồng thời, chúng em xin gửi lời cảm ơn thầy nhiệt tình bảo giải đáp vấn đề thắc mắc trình tiếp thu kiến thức phục vụ cho cơng việc sau Cuối cùng, nhóm chúng em mong muốn nhận ý kiến đóng góp thầy phần đồ án nhằm hoàn thiện thiếu xót nhóm làm hành trang để chúng em tiếp tục với đồ án mơn học Xin chân thành cảm ơn thầy, NHÓM THỰC HIỆN NHẬN XÉT CỦA GIẢNG VIÊN ………………………………………………………………………………………… ………………………………………………………………………………………… Trang ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… CHƯƠNG I: TỔNG QUAN VỀ ĐỀ TÀI Giới thiệu đồ án Rượu thức uống sử dụng phổ biến nhiều nước, nhiều quốc gia giới khơng ngày thường, cịn sử dụng nhiều ngày lễ tết, tiệc tùng … Với mong muốn khám phá tìm Trang hiểu sâu kiến thức học lớp Nhóm em đưa định với đề tài “Nghiên cứu hệ thống đưa định đặt đơn hàng cho phù hợp với thời điểm năm cửa hàng bang Iowa – Mỹ” Dựa kho liệu đơn đặt hàng cửa hàng bán rượu bang Iowa – Mỹ Nhóm em đưa định đặt hàng sản phẩm rượu phụ thuộc vào vị trí địa lý, thời gian, mùa năm cho phù hợp nhằm đáp ứng nhu cầu thị trường Giới thiệu dataset Bộ liệu bao gồm: 23.774.991 dòng 24 cột thuộc tính Đường dẫn: https://data.iowa.gov/Sales-Distribution/Iowa-Liquor-Sales/m3tr-qhgy Hình 1.1 Dữ liệu gốc CHƯƠNG II: TRIỂN KHAI QUY TRÌNH VÀ PHƯƠNG PHÁP TRIỂN KHAI Deployment Bước 1: Cài đặt thư viện cần thiết phù hợp với mục đích triển khai Bước 2: Xây dựng mơ hình Machine Learning tốt lưu lại Trang Bước 3: Kiểm tra Mơ hình Bước 4: Tạo file Bước 4.1 Truy cập vào thư viện liệu tạo sẵn Bước 4.2 Sử dụng phân tích cảm xúc để dự đốn thơng số liệu Bước 4.3 Sử dụng thuật toán đơn để dự đoán lượng đặt hàng Bước 4.4 Lựa chọn thuật toán tốt Bước 5: Kết thúc Business Understanding Bộ liệu lấy từ website có đường link https://data.iowa.gov/SalesDistribution/Iowa-Liquor-Sales/m3tr-qhgy Ở đây, nhóm em sử dụng liệu để phân tích giúp cho cửa hàng đưa định đặt hàng cho phù hợp với vùng, thời điểm năm cho hiệu giảm thiểu việc tồn kho lâu ngày làm ảnh hưởng đến chất lượng sản phẩm nâng cao hiệu sử dụng Data Exploration 3.1 Công cụ sử dụng - Ngơn ngữ lập trình: Python - Thư viện Python hỗ trợ: sklearn, torch, statsmodeles 3.2 Mô tả thuộc tính STT Thuộc tính ID Date 10 11 12 13 14 15 16 17 18 StoreID StoreName Address City ZipCode StoreLocation CountyID County Category CategoryName VendorID VendorName ItemID ItemDescription Pack BottleVolume Mơ tả Mã hóa đơn Ngày đặt hàng (Định dạng yyyy-mm-dd) Mã cửa hàng Tên cửa hàng Địa Tên thành phố Mã zip Vị trí cửa hàng Mã quận Tên quận Mã loại sản phẩm Tên loại sản phẩm Mã nhà cung cấp Tên nhà cung cấp Mã sản phẩm Mô tả sản phẩm Số lượng chai rượu đựng hộp Thể tích chai rượu (tính ml) Trang 19 StateBottleCost 20 StateBottleRetail 21 22 23 BottlesSold SaleDollars VolumeSoldLitters 24 VolumeSoldGallons Số tiền thuế ABD cho chai rượu đặt hàng Số tiền phải trả cho chai rượu đặt hàng Số lượng chai rượu cửa hàng đặt Tổng chi phí đặt hàng (số chai rượu * giá bán lẻ) Tổng thể tích rượu đặt (tính theo lít) = (thể tích chai (tính theo ml) * số chai rượu bán) / 1000 Tổng thể tích rượu đặt (tính theo đơn vị gallon) = (thể tích chai (tính theo ml) * số chai rượu bán) / 3785.411784 Data Preparation 4.1 Chọn cột thuộc tính cần thiết đặt lại tên cột thuộc tính 4.2 Xử lý chuyển cột date thành kiểu liệu datatime 4.3 Kiểm tra trùng lặp Vì số lượng hóa đơn khác với số lượng dòng liệu nên khơng có trùng lặp 4.4 Kiểm tra dịng liệu bị thiếu (Dữ liệu NULL) Sau kiểm tra dòng liệu bị thiếu, ta kết sau Trang Thông qua liệu cung cấp, ta tìm thơng tin mã vùng thông qua mã cửa hàng mã loại sản phẩm thông qua mã sản phẩm Ta tìm thơng tin mã vùng mã loại sản phẩm dịng khơng bị thiếu liệu tự động điền vào dòng liệu cịn bị thiếu Đối với dịng hồn tồn khơng có thơng tin liệu, ta xuất xóa dịng liệu Sau kiểm tra lại, ta có kết sau: Trang Sau đó, ta bỏ qua dịng bị thiếu lại Data Modeling Sử dụng model Sarimax Prophet Ta sử dụng liệu từ năm 2012 đến tháng 12 năm 2020 để làm liệu huấn luyện cho mơ hình 5.4 Model Sarimax Bước 1: Kiểm tra xu hướng, tính mùa vụ phân bố liệu Bước 2: Hiệu chỉnh tham số mơ hình với số x 12 Bước 3: Chạy để tìm mơ hình cho số AIC nhỏ Trang Bước 4: Chọn hiển thị Model Sarimax Bước 5: Biểu đồ dự báo lượng đặt hàng 5.5 Model Prophet Prophet thư viện hỗ trợ dự đoán Facebook thiết kế để dung cho mơ hình chuỗi thời gian Ra đời vào năm 2017, tương tự mơ hình ARIMA, Prophet hỗ trợ dự đốn theo xu hướng, dự đốn theo mùa vụ Prophet thơng minh tính tự động hóa dự đốn mơ hình cao, ngồi mơ hình dư đốn khoảng thời gian, Prophet phân tích dựa ngày lễ để đưa kết xác Ngồi khả tự đơng cao, thư viện điều chỉnh linh hoạt để nghiên cứu viên đưa mơ hình tốt Trang Kết chạy liệu Kết chạy liệu Data Evaluation Để đánh giá độ xác mơ hình, ta sử dụng số MSE (Mean Square Error) RMSE (Root Mean Square Error) Chỉ số mô hình áp dụng cho sản phẩm có mã 38177 Mơ hình RMSE MAE SARIMAX 5746,82 3895,68 SARIMAX 4941,69 3667,47 LSTM LSTM Chú thích: giá tính ngơn ngữ Python Ta làm tương tự với sản phẩm có mã 89387 Mơ hình RMSE MAE SARIMAX 1328.67 993.26 SARIMAX 506.78 449.15 LSTM LSTM Chú thích: giá trị tính ngôn ngữ Python Trang 10 CHƯƠNG III: KẾT LUẬN Xử lý liệu Tính tổng giá trị sản phẩm đặt cửa hàng năm vừa qua Đối với sản phẩm có tổng giá trị đặt hàng lớn ta lấy liệu tổng đặt hàng sản phẩm theo tháng vùng Đối với sản phẩm có lượng đặt hàng thấp, ta lấy danh sách đơn hàng đặt năm vừa Chạy thuật tốn Ta đưa liệu vào mơ hình, sau dự đốn kết đồng thời tính số đánh giá mơ hình So sánh Thông qua số đánh giá, ta chọn kết mơ hình có số tốt Đưa dự đốn Ta tính % lượng hàng tăng hay giảm thơng qua dự đốn so với năm vừa qua Tính lượng đặt hàng tính từ đầu năm vừa qua nhân với % dự đoán (tăng, giảm) để đưa lượng đặt hàng dự đoán Trang 11 Đưa định Ta so sánh lượng đặt hàng từ đầu năm với dự đoán Nếu thực tế nhỏ dự đoán, ta lấy số lượng sản phẩm chênh lệch Nếu số lượng chênh lệch nhỏ đơn hàng có số lượng nhỏ ta đưa gợi ý đặt hàng CHƯƠNG IV: TÀI LIỆU THAM KHẢO [1] https://data.gov.vn/web/guest/ve-cong-du-lieu-quoc-gia [2] He Changlin, Li Yufen (2017) “A Survey of Intelligent Decision Support System” Information Technology Center of Hexi University, Zhangye Gansu 734000 China [3] https://phamdinhkhanh.github.io/2019/12/12/ARIMAmodel.html [4] https://learning.huph.edu.vn/pluginfile.php/6387/mod_folder/content/ 0/067%20Course-Notes-The-SARIMAX-Model.pdf?forcedownload=1 [5] Nguyễn Đình Thuận, Hồ Cơng Hồi (2018) “KẾT HỢP MƠ HÌNH ARIMA VÀ SUPPORT VECTOR MACHINE ĐỂ DỰ BÁO TẠI CÔNG TY DỊCH VỤ TRỰC TUYẾN CỘNG ĐỒNG VIỆT”, Trường Đại học Công nghệ Thông tin, ĐHQGTPHCM [6] https://www.kaggle.com/code/roudradas/time-series-analysis-of-iowa-liquor-sales/ notebook [7] https://colab.research.google.com/github/dlmacedo/starter-academic/blob/master/ content/courses/deeplearning/notebooks/pytorch/ Time_Series_Prediction_with_LSTM_Using_PyTorch.ipynb#scrollTo=ooQPXSYhA _ps Trang 12 ... Prophet thư viện hỗ trợ dự đốn Facebook thiết kế để dung cho mơ hình chuỗi thời gian Ra đời vào năm 2017, tương tự mơ hình ARIMA, Prophet hỗ trợ dự đoán theo xu hướng, dự đoán theo mùa vụ Prophet... năm vừa qua nhân với % dự đoán (tăng, giảm) để đưa lượng đặt hàng dự đoán Trang 11 Đưa định Ta so sánh lượng đặt hàng từ đầu năm với dự đoán Nếu thực tế nhỏ dự đoán, ta lấy số lượng sản phẩm... đưa định với đề tài “Nghiên cứu hệ thống đưa định đặt đơn hàng cho phù hợp với thời điểm năm cửa hàng bang Iowa – Mỹ” Dựa kho liệu đơn đặt hàng cửa hàng bán rượu bang Iowa – Mỹ Nhóm em đưa định