Untitled ĐẠI HỌC UEH TRƯỜNG CÔNG NGHỆ VÀ THIẾT KẾ KHOA CÔNG NGHỆ THÔNG TIN KINH DOANH BỘ MÔN CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN HỌC PHẦN TRÍ TUỆ NHÂN TẠO Đề tài “ỨNG DỤNG HẸN HÒ – GHÉP ĐÔI NGẪU NHIÊN H[.]
lOMoARcPSD|18034504 ĐẠI HỌC UEH TRƯỜNG CÔNG NGHỆ VÀ THIẾT KẾ KHOA CÔNG NGHỆ THÔNG TIN KINH DOANH BỘ MÔN CÔNG NGHỆ THƠNG TIN BÁO CÁO ĐỒ ÁN HỌC PHẦN TRÍ TUỆ NHÂN TẠO Đề tài: “ỨNG DỤNG HẸN HÒ – GHÉP ĐƠI NGẪU NHIÊN HOẶC CĨ CHỌN LỌC” GVHD: Thầy Huỳnh Văn Đức Nhóm thực hiện: Nhóm Họ tên sinh viên: Phạm Lý Thái Ngân (Nhóm trưởng) Nguyễn Thị Kiều My Châu Hoàng Khiêm Huỳnh Hữu Phúc Lê Bảo Quốc TP Hồ Chí Minh, Tháng 05/2022 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 MỤC LỤC Lời mở đầu BẢNG PHÂN CÔNG CÁC THÀNH VIÊN .5 TỔNG QUAN Tình huống sử dụng .6 Yêu cầu ̣ thống/ Use case activity diagram .6 Xác định đầu vào và các bài toán cần giải NỘI DUNG PHẠM LÝ THÁI NGÂN .7 1.1 Bài toán .7 1.2 Ví dụ 1.3 Thư viện 1.4 Mơ hình .8 1.5 Huấn luyện 1.6 Trực quan liệu mơ hình .8 1.7 Bình luận .8 CHÂU HOÀNG KHIÊM .9 2.1 Giới thiệu 2.2 Bài toán .9 2.3 Ví dụ 2.4 Thư viện 10 2.5 Huấn luyện 10 2.6 Trực quan liệu mơ hình 10 2.7 Bình luận 13 NGUYỄN THỊ KIỀU MY 14 3.1 Giới thiệu 14 3.2 Bài toán .14 3.3 Thư viện 14 3.4 Huấn luyện 14 3.5 Trực quan liệu mơ hình 15 3.6 Bình luận 16 LÊ BẢO QUỐC 17 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 4.1 Bài toán .17 4.2 Ví dụ 17 4.3 Thư viện 17 4.4 Mơ hình .17 4.5 Huấn luyện 18 4.6 Trực quan liệu mơ hình 18 4.7 Bình luận 19 HUỲNH HỮU PHÚC 20 5.1 Giới thiê ̣u: 20 5.2 Bài tốn / ví dụ: 20 5.3 Thư viê ̣n: 20 5.4 Mơ hình: 21 5.5 Huấn luyê ̣n: .21 5.6 Trực quan liê ̣u mô hình: 22 5.7 Bình luâ ̣n: 24 BÌNH LUẬN NHĨM .25 KẾT LUẬN 26 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Lời mở đầu “ “Chúng em xin chân thành cảm ơn thầy Huỳnh Văn Đức cung cấp cho chúng em kiến thức cần thiết tinh thần học tập độc lập sáng tạo môn học Với giúp đỡ tận tình thầy chúng em hồn thành đề tài.” “Trong q trình thực đề tài, cố gắng chúng em thiếu nhiều kinh nghiệm, chưa sâu nắm chắn kiến thức lĩnh vực này, nên chúng em tránh khỏi thiếu sót vậy, chúng em mong nhận thông cảm, bảo, chỉnh sửa, bổ sung giúp đỡ thầy.” Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 BẢNG PHÂN CÔNG CÁC THÀNH VIÊN Bài toán Người thực Mức độ hoàn thành NLP Phạm Lý Thái Ngân 100% Linear Regression Châu Hoàng Khiêm 100% Association rules Nguyễn Thị Kiều My 100% K-means Lê Bảo Quốc 100% Logistics Regression Huỳnh Hữu Phúc 100% Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 TỔNG QUAN Tình huống sử dụng Ứng dụng hẹn hị - ghép đơi ngẫu nhiên có chọn lọc ̣ thống giúp có hơ ̣i giao tiếp với người bạn Sau đăng ký, người dùng câ ̣p nhâ ̣t thơng tin chung mình, để người dùng khác dễ dàng kết nối với thông qua chọn lọc người dùng đưa cho hệ thống, khác với viê ̣c đưa thông tin người dùng thơng qua định vị ̣ thống sẽ dựa thông tin người dùng cung cấp từ ứng dụng cơng nghê ̣AI xử lý ngôn ngữ tự nhiên (NLP), hồi quy linear hoă ̣c logistics, association rule, mơ hình k-means để hiê ̣n người phù hợp Yêu cầu ̣ thống/ Use case activity diagram Hê ̣ thống sẽ xử lý thơng tin từ đưa thơng tin (ảnh, tiểu sử, tuổi, sơ thích, lối sống, công viê ̣c, công ty, trường học, nơi sống, giới tính, app liên kết, ) phù hợp với đối tượng kết nối với Điều bắt b ̣c ̣ thống phải xử lý ngơn ngữ tự nhiên, khả phân tích học thói quen match hay khơng match người dùng Xác định đầu vào và các bài toán cần giải Thơng tin cá nhân Hình ảnh cá nhân Khi đưa liê ̣u vào ̣ thống AI sử dụng (xử lý ngơn tự nhiên để phân tích text văn bản, hời quy Logistic phân tích text hình ảnh từ dự đốn dự liễu đầu Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 NỘI DUNG PHẠM LÝ THÁI NGÂN 1.1 Bài toán Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngôn ngữ người Trong trí tuệ nhân tạo xử lý ngôn ngữ tự nhiên phần khó liên quan đến việc phải hiểu ý nghĩa ngơn ngữ - cơng cụ hồn hảo tư giao tiếp Xử lý ngôn ngữ xử lý thơng tin đầu vào “dữ liệu ngôn ngữ” (dữ liệu cần biến đổi), tức liệu “văn bản” hay “tiếng nói” Các liệu liên quan đến ngơn ngữ viết (văn bản) nói (tiếng nói) dần trơ nên kiểu liệu người có lưu trữ dạng điện tử Đặc điểm kiểu liệu khơng có cấu trúc nửa cấu trúc chúng lưu trữ khuôn dạng cố định bảng biểu Để máy tính hiểu thực thi chương trình viết ngơn ngữ cấp cao, ta cần phải có trình biên dịch thực việc chuyển đổi chương trình sang chương trình dạng ngơn ngữ đích Một số ứng dụng NLP: Nhận dạng ngôn ngữ, phát lỗi tả, lọc thơng tin, truy xuất thơng tin, trích chọn thơng tin, chatbot, 1.2 Ví dụ Kho liệu sử dụng để tính tần suất 1.3 Thư viện Diễn giải: Pandas: thư viện để thực phân tích thao tác liệu Numpy: cho đại số tuyến tính, hỗ trợ tính tốn mảng nhiều chiều, CountVectorizer nằm thư viện sklearn sử dụng để chuyển đổi sưu tập tài liệu văn thành vector có số lượng thuật ngữ thông báo Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 1.4 Mô hình Khơi tạo đối tượng để tìm hiểu tần suất thuật ngữ từ tài liệu 1.5 Huấn luyện Hàm fit_transform sử dụng liệu đào tạo để thực điều chỉnh biến đổi liệu Diễn giải: doc1, doc2, doc3: kho liệu để tính tần suất 1.6 Trực quan liệu và mô hình Hàm DataFrame để lấy vị trí từ khoa văn Bảng tần suất xuất từ kho văn 1.7 Bình luận CountVectorizer: thực mã hóa để phân tách câu thành tập hợp mã thơng báo để tiến hành tính tần suất xuất từ ngữ Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngơn ngữ người Trong trí tuệ nhân tạo xử lý ngơn ngữ tự nhiên phần khó liên quan đến việc phải hiểu ý nghĩa ngôn ngữ-công cụ hoàn hảo tư giao tiếp Trong q trình nghiên cứu, tìm hiểu hồn thành đờ án em thu nhận thêm kiến thức em nhận thấy xử lý ngôn ngữ tự nhiên lĩnh vực nghiên cứu rộng lớn, nhiều điều cần phải khám phá 1.8 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 CHÂU HOÀNG KHIÊM 2.1 Giới thiệu Regression ● Thuật ngữ hời quy sử dụng bạn cố gắng tìm mối quan hệ biến ● Trong Machine Learning statistical modeling, mối quan hệ sử dụng để dự đoán kết kiện tương lai Linear Regression (hồi quy tuyến tính) Trong thuật ngữ Machine Learning, Hời quy tuyến tính (LR) có nghĩa đơn giản tìm dịng phù hợp giải thích thay đổi đối tượng phụ thuộc độc lập nói mơ tả mối quan hệ tuyến tính đối tượng độc lập phụ thuộc hời quy tuyến tính, thuật tốn dự đốn tính liên tục (ví dụ: Lương, Giá) , thay xử lý tính phân loại (ví dụ: mèo, chó) ● Hời quy tuyến tính sử dụng mối quan hệ điểm liệu để vẽ đường thẳng xun qua tất chúng ● Dịng sử dụng để dự đoán giá trị tương lai 2.2 Bài toán Machine Learning - Linear regression 2.3 Ví dụ Điều chỉnh tốc độ quạt tản nhiệt CPU theo độ nóng laptop Bảng thể tốc độ quạt CPU dựa theo nhiệt độ laptop Nhiệt độ CPU (⁰C) Tốc độ quạt (RPM) 45 2207 49 2350 51 2556 55 2981 59 3196 63 3750 65 3964 68 4406 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 74 5260 80 5807 Ký hiệu: ● ⁰C: độ C ● RPM: số vòng quay phút (vòng/phút) Dữ liệu tốc độ quạt 63⁰C sẽ dùng để kiểm tra dự đoán máy 2.4 Thư viện Diễn giải: ● Thư viện numpy cho đại số tuyết tính ● Thư viện matplot dùng để vẽ hình, trực quan hóa liệu 2.5 Huấn luyện Diễn giả: ● X nhiệt độ CPU ● Y tốc độ quạt nhiệt độ X Cho liệu train vào mảng X Y 2.6 Trực quan liệu và mô hình 10 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Vẽ mơ hình: Kiểm tra thử tốc độ quạt thời điểm nhiệt độ CPU 63⁰C Nhận thấy theo máy phân tích tốc độ quạt 63⁰C là 3877.17 RPM Khá sát so với 3750 số liệu 12 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 2.7 Bình luận ● Linear Regression giúp ta tìm quy luật loại liệu rời rạc từ đưa dự đốn dựa quy luật ● Linear Regression nhạy cảm với nhiễu, trước thực linear Regression cần phải loại bỏ nhiễu trước Bước gọi tiền xử lý liệu Link code Colab: https://colab.research.google.com/drive/11UabbfmWQ5B3QRnkkrxHaNETXUdi6Mw -?usp=sharing 2.8 13 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 NGUYỄN THỊ KIỀU MY 3.1 Giới thiệu Association rules (luật kết hợp) - Luật kết hợp: Mối quan hệ kết hợp thuộc tính sơ liệu Association rules phương pháp học máy dựa quy tắc để khám phá mối quan hệ thú vị biến sơ liệu lớn Nó nhằm mục đích xác định quy tắc mạnh mẽ phát sơ liệu cách sử dụng số thước đo mức độ thú vị Trong giao dịch định với nhiều mặt hàng khác nhau, quy tắc kết hợp có nghĩa khám phá quy tắc xác định cách thức lý số mặt hàng kết nối với 3.2 Bài toán Association rules in data mining (thuật tốn Apriori) - association rules Ví dụ minh họa luật kết hợp - Tìm quy tắc mô tả liên kết sản phẩm khác với 7500 giao dịch suốt tuần cửa hàng bán lẻ Pháp 3.3 Thư viện Diễn giải: 3.4 Numpy: cho đại số tuyến tính, hỗ trợ tính tốn mảng nhiều chiều matplotlib.pyplot: cho việc vẽ hình Pandas: thư viện để thực phân tích thao tác liệu Huấn luyện 14 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Diễn giả: - Hàm read_csv tạo để đọc liệu có máy tính head() để xem liệu trông 3.5 Trực quan liệu và mô hình Chuyển đổi khung liệu panda thành danh sách Bước áp dụng thuật toán Apriori tập liệu Để làm vậy, sử dụng apriori lớp nhập từ thư viện apyori Các apriori lớp yêu cầu số giá trị tham số để hoạt động: - Tham số danh sách danh sách mà bạn muốn trích xuất quy tắc - Tham số thứ hai min_support - min_confidencelà quy tắc có độ tin cậy - min_lift định giá trị tăng tối thiểu - cuối min_length định số lượng mục tối thiểu Giả sử quy tắc cho mặt hàng mua lần ngày x = 35 lần tuần Hỗ trợ cho mục tính 35/7500 = 0,0045 Độ tin cậy tối thiểu cho quy tắc 20% 0,2 Tương tự, định giá trị cho mức tăng cuối min_length Xem kết quả: 3.6 Bình luận Các thuật toán khai thác quy tắc kết hợp chẳng hạn Apriori hữu ích để tìm kiếm liên kết đơn giản mục liệu Chúng dễ thực có khả giải thích cao Tuy nhiên, thông tin chi tiết nâng cao hơn, chẳng hạn 15 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 thông tin sử dụng bơi Google Amazon, v.v., nên sử dụng thuật tốn phức tạp Tuy nhiên, thấy phương pháp cách đơn giản để có liên kết tất nhu cầu trường hợp sử dụng 16 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 LÊ BẢO QUỐC 4.1 Bài toán K-means (Phân cụm K-means): giải thuật học máy thuộc lớp giải thuật học không giám sát Ý tương chung K-Means dựa việc xác định tâm cụm phân ví dụ vào cụm có tâm gần 4.2 Ví dụ Một cơng ty muốn tạo sách ưu đãi cho nhóm khách hàng khác dựa tương tác khách hàng với cơng ty (số năm khách hàng; số tiền khách hàng chi trả cho cơng ty; độ tuổi; giới tính; thành phố; nghề nghiệp; …) Giả sử cơng ty có nhiều liệu nhiều khách hàng chưa có cách chia tồn khách hàng thành số nhóm/cụm khác 4.3 Thư viện Diễn giải: ● Thư viện numpy thư viện toán học cho phép làm việc hiệu với ma trận mảng ● Thư viện matplotlib.pyplot cho việc vẽ hình ● Thư viện scipy.spatial.distance để tính khoảng cách cặp điểm hai tập hợp cách hiệu 4.4 Mô hình Diễn giải: ● Hàm concatenate () hàm NumPy Về bản, hàm kết hợp mảng NumPy với Gộp ma trân X0, X1, X2 thành X theo chiều ngang ● Hàm numpy.asarray() sử dụng muốn chuyển đổi đầu vào thành mảng ● Khơi tạo original label có length = 3N, N phần tử đầu 0, N phần tử 1, N phần tử cuối ● Số lượng cluster (K) cần clustering 17 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 4.5 Huấn luyện Ta tạo liệu cách lấy điểm theo phân phối chuẩn có kỳ vọng điểm có tọa độ (2, 2), (8, 3) (3, 6), ma trận hiệp phương sai giống ma trận đơn vị Mỗi cluster có 500 điểm 4.6 Trực quan liệu và mô hình Tách ma trân X theo chiều ngang thành ma trận X0, X1, X2 ban đầu Gọi hàm kmeans_display để hiển thị liệu 18 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Hình bên là ví dụ cụm liệu Sau hiển thị liệu ta thấy liệu phân phần cụm rõ rệt 4.7 Bình luận ● K-means: cần biết số lượng cluster (K) cần clustering K-means: làm việc thành công với kỳ vọng ban đầu Các điểm thuộc cluster phân vào cluster 19 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 HUỲNH HỮU PHÚC 5.1 Giới thiêu: ̣ Hồi quy Logistic (nhị phân) mơ ̣t mơ hình thống kế xác suất xảy mô ̣t kiê ̣n Từ xem xét mối liên ̣ biến đô ̣c lâ ̣p với biến phụ thuô ̣c biến nhị phân thơng qua mơ ̣t phương trình tốn học tức sẽ có hai output (0/1 hoă ̣c Yes/No hoă ̣c True/ False) 5.2 Bài toán / ví dụ: Sử dụng bảng dựa liê ̣u thống kê số lượng cung cấp thông tin (ảnh, tiểu sử, tuổi, sơ thích, lối sống, cơng viê ̣c, cơng ty, trường học, nơi sống, giới tính, app liên kết, ) trang cá nhân Từ số lượng thông tin cung cấp ảnh hương đến viê ̣c match (hợp nhau) nào? Information provided Match Information provided Match 10 11 12 Mă ̣c dù cung cấp thông tin nhiều (12) vẫn not match (0 false), có trường hợp cung cấp (3) thơng tin cung match (1 true) Và em sẽ dùng hời quy Logistic để dự đốn đầu 5.3 Thư viên: ̣ Mô ̣t số thư viê ̣n mơ hình Logistic Regression from future import division, print_function, unicode_literals import numpy as np import matplotlib.pyplot as plt numpy: Thư viê ̣n python hỗ trợ thêm cho mảng ma trận hàm toán học cao cấp matplotlib.pylot: thư viện sử dụng để vẽ đồ thị Python 5.4 Mô hình: Gọi biến phụ thuô ̣c “match” y (y = match, y = not match) Xác suất để “match” P(y=1) 20 Báo cáo đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) ... ngữ Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngơn ngữ người Trong trí tuệ nhân tạo xử lý ngơn ngữ tự nhiên phần khó liên quan đến... nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngôn ngữ người Trong trí tuệ nhân tạo xử lý ngơn ngữ tự nhiên phần khó liên quan đến việc phải hiểu ý nghĩa... đồ án học phần Quản lý dự án Công nghệ thông tin (ITPM) Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 TỔNG QUAN Tình huống sử dụng Ứng dụng hẹn hị - ghép đơi ngẫu nhiên có