Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
3,77 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN Viện Công nghệ thông tin Kinh tế số Đề tài Nghiên cài đặt thử nghiệm giải thuật K học máy xây dựng phần mềm dựa kỹ thuật học máy Họ tên: Trần Việt Hoàng Lớp: CNTT1173 (123)_01 Giảng viên hướng dẫn: Lưu Minh Tuấn Hà Nội, năm 2023 LỜI CẢM ƠN Để có hội nghiên cứu xây dựng đề tài “Nghiên cứu cài đặt thử nghiệm giải thuật K Nearest Neighbor học máy xây dựng phần mềm dựa kỹ thuật học ”, em xin chân thành cảm ơn Ban lãnh đạo nhà trường Đại học Kinh tế Quốc dân tạo điều kiện cho em học tập trường Đại học Kinh tế Quốc dân Em thực tốt việc nghiên cứu đề tài này, chắn không kể đế truyền đạt kiến thức giúp đỡ thầy cô giảng viên từ Viện Công nghệ thông tin Kinh tế số trường Đại học Kinh tế Quốc dân Trước hết, em xin bày tỏ lòng biết ơn quan tâm, dạy giúp đỡ thầy, cô thời gian qua Đặc biệt, em xin gửi lời cảm ơn sâu sắc đến người trực tiếp hướng dẫn em hoàn thành đề tài, TS.Lưu Minh Tuấn Thầy ln sát q trình tiến hành nghiên cứu chúng em từ ngày đầu hành Em xin chân thành cảm ơn! hoàn thiện tốt việc xây dựng nên Ụ Ụ MỤC TỪ VIẾT TẮT MỤC HÌNH ẢNH MỤC BẢNG BIỂU CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI MỞ ĐẦU Phát biểu đề tài Tính cấp thiết .7 Phạm vi đối tượng nghiên cứu Mục đích nghiên cứu TỔNG QUAN VỀ HỌC MÁY (MACHINE LEARNING) Giới thiệu học máy Phân loại học máy .8 Cấu trúc học máy CHƯƠNG 2: CƠ SỞ LÝ THUYẾT TỔNG QUAN VỀ NGƠN NGỮ LẬP TRÌNH PYTHON Khái niệm 10 Đặc điểm ngôn ngữ Python .10 Một số hàm tích hợp sẵn 10 Thư viện NumPy 13 Thư viên SciPy 14 Thư viện matplotlib 17 Thư viện 21 Thư viện SymPy 24 Thư viện IPython 27 Thư viện Tkinter 28 THƯ VIỆN SCIKIT Một số hàm phổ biến 32 Một số giải thuật phổ biến có scikit 34 GIẢI THUẬT K Giới thiệu tổng quan 43 ô ả ậ 43 Đánh trọng số cho điểm lân cận .44 Sơ đồ thuật toán 45 Giả mã cho thuật toán kNN 45 CHƯƠNG 3: CÀI ĐẶT THỬ NGHIỆM Cài đặt thử nghiệm mơ hình K Mơ hình giải toán 50 Bộ liệu 50 Đánh giá Mẫu ví dụ Chương trình phần mềm ứng dụng Xây dựng môđun chức phần mềm 53 Mơ hình chức 53 Xây dựng chương trình 53 CHƯƠNG 4: ĐÁNH GIÁ KẾT QUẢ KẾT QUẢ ĐẠT ĐƯỢC ĐIỂM CẦN CẢI THIỆN HƯỚNG PHÁT TRIỂN LIỆU THAM KHẢO Ụ hiệu chữ viết tắt Ừ Ế Ắ Chữ viết đầy đủ Ụ ểu đồ ố ầ ểu đồ ểu đồ ụ ụ ểu đồ ụ ế ả Ả ụ ụ ụ ấ ấ ữ ệu n hàng đầ ữ ệ ự ống kê bả ữ ệ ự ệ ậ ụ ủ ả ế ức ện ngườ ện ngườ ộ ộ Sơ đồ ố ặ ủ ủ ộ ụ ể ố Document continues below Discover more Tài liệu tham from: khảo đề án ABC54 Đại học Kinh tế… 107 documents Go to course CÂU HỎI TỰ LUẬN VÀ 106 ĐÁP ÁN MÔN Tthcm Tài liệu tham khảo đề án None Đề án thầy Thân 58 VTĐPT Tài liệu tham khảo đề án None Bản thảo đề án Kế 39 28 toán - Summary Tài… Tài liệu tham khảo đề án LSD - tài liệu tham khảo Tài liệu tham khảo đề án CĐR-E - aaaa None None Tài liệu tham khảo đề án Ụ ả ả Chú thích đặc trưng ữ ệ ộ ố ẫ ủ ộ ữ ệ Ả None Đề án Phạm Sỹ Phúc Ể 31 - Tham khảo Tài liệu tham khảo đề án None CHƯƠNG 1: GIỚ ỆU ĐỀ Ở ĐẦ ểu đề Trong máy học, toán phân loại toán quan trọng thường gặp Bài toán phân loại toán gán nhãn cho đối tượng dựa thuộc tính chúng Ví dụ, phân loại email spam hay không spam, phân loại hoa loại dự kích thước cánh hoa hoa, phân loại ảnh chia khuôn mặt người hay khơng Bài tốn phân loại có nhiều ứng dụng thực tế nhiều lĩnh vực mật tế, tài chính, bảo Trong bối cảnh này, đề tài nghiên cứu “Nghiên cứu cài đặt thử nghiệm giải thuật K Nearest Neighbor học máy xây dựng phần mềm dựa kỹ thuật học máy” Đây khía cạnh quan trọng Học máy, lĩnh vực khoa học máy tính có tiềm biến đổi cách hiểu tận dụng liệu ấ ế Để giải toán phân loại, cần có mơ hình máy học có khả dự đoán nhãn đối tượng dựa đối tượng biết trước Một mơ hình máy học đơn giản hiệu để giải toán phân loại giải thuật K ) Giải thuật phương pháp học máy có giám sát, dựa ý tưởng đối tượng có thuộc tính gần thường có nhãn giống Giải thuật khơng u cầu huấn luyện mơ hình trước, mà cần lưu trữ toàn liệu huấn luyện ạm vi đối tượ ứ Phạm vi nghiên cứu tập trung vào việc nghiên cứu, triển khai đánh giá giải thuật Chúng ta xem xét ứng dụng thực tế phân tích lý thuyết giải thuật Đối tượng nghiên cứu bao gồm giải thuật với cách hoạt động, tốn thực tế mà áp dụng, ví dụ: phân loại email spam, dự đốn giá nhà, phân tích cảm xúc văn cải tiến ứng dụng tiềm tương lai ục đích nghiên Mục đích nghiên cứu tìm hiểu phân tích sở lý thuyết cách hoạt động giải thuật K ) lĩnh vực học máy Nghiên cứu tập trung vào việc hiểu cách thực việc phân loại liệu dựa nguyên lý giềng gần Nghiên cứu tiến hành cài đặt triển khai giải thuật mơi trường máy tính Các thử nghiệm tiến hành tập liệu thực tế để đánh giá hiệu suất khả việc phân loại dự đoán Một phần quan trọng nghiên cứu xây dựng phần mềm dựa học máy, giải thuật tích hợp Phần mềm có khả thực nhiệm vụ phân loại dự đoán dựa liệu đầu vào, cung cấp giao diện người dùng dễ sử dụng Mục tiêu cuối nghiên cứu đánh giá khả áp dụng giải thuật phần mềm dựa học máy lĩnh vực thực tế thương mại điện tử, tế, ứng dụng khác Nghiên cứu tập trung vào việc tìm hiểu cách giúp việc định dự đốn tình thực tế Ổ Ề Ọ ệ ề ọ Học máy (Machine Learning ML) lĩnh vực trí tuệ nhân tạo (Artificial AI) máy tính lập trình để tự động học từ liệu cải thiện hiệu suất theo thời gian Mục tiêu học máy phát triển mô h thuật tốn để máy tính tự động thực tác vụ dự đốn, phân loại tìm hiểu thông tin từ liệu mà không cần lập trình cụ thể Các thuật tốn học máy bắt nguồn từ khả chúng để tìm mối quan hệ, xu hướng cấu trúc liệu Chúng có khả học từ liệu đầu vào, rút trích đặc trưng, hiểu quy luật ẩn dự đốn phân loại kết Ví dụ thuật toán học máy bao gồm định, máy vector hỗ trợ mạng nơ ron nhân tạo ọ Có hai loại học máy: học học máy không giám sát Học Trong học máy giám sát, liệu huấn luyện cung cấp với nhãn (label) biết Mơ hình học máy huấn luyện để tìm mối quan hệ đặc trưng (feature) nhãn, từ dự đốn nhãn cho liệu Ví dụ học máy giám sát bao gồm phân loại (classification) hồi quy (regression) Học máy không giám sát (Unsupervised Learning) Trong học máy khơng giám sát, liệu huấn luyện khơng có nhãn Mơ hình học máy sử dụng để khám phá cấu trúc, mơ hình hóa liệu tìm nhóm mẫu liệu Ví dụ học máy không giám sát bao gồm phân cụm (clustering) giảm chiều liệu (dimensionality Sơ đồ ậ Sơ đồ thuật toán kNN ả ậ thư viện scikit learn (sklearn) triển khai dựa lớp KNeighborsClassifier Để xây dựng chương trình ta sử dụng đến vài hàm thuộc thư viện sklearn, với số phương thức nằm lớp Lớp K KNeighborsClassifier lớp phân loại dựa thuật toán k ) Thuật toán dự đoán nhãn điểm liệu cách tìm k điểm liệu gần với tập huấn luyện sau sử dụng nhãn điểm liệu để thực dự đốn Các thuộc tính lớp KNeighborsClassifier • classes_: Các nhãn lớp biết đến phân loại • effective_metric_: Hàm khoảng cách thực tế sử dụng Nó giống tham số metric từ đồng nghĩa nó, ví dụ: 'euclidean' tham số đặt thành 'minkowski' tham số đặt thành • effective_metric_params_: Các tham số bổ sung cho hàm khoảng cách thực tế Đối với hầu hết phép đo, giống với tham số chứa giá trị tham số thuộc tính đặt thành 'minkowski' • n_features_in_: Số lượng tính thấy q trình • feature_names_in_: Tên tính thấy trình fit Được xác định X có tên tính chuỗi • n_samples_fit: Số lượng mẫu liệu fit có hình dạng (n_samples, ) (n_samples, 1) • q trình fit ngược lại True Các tham số truyền vào khởi tạo đối tượng K • n_neighbors: số lượng hàng xóm mặc định sử dụng cho truy vấn • weights: trọng số sử dụng trình dự đốn Các giá trị là:'uniform': trọng số đồng Tất điểm hàng xóm coi có trọng số • 'distance': trọng số tính nghịch đảo khoảng cách Trong trường hợp này, hàng xóm gần điểm truy vấn có ảnh hưởng lớn so với hàng xóm xa • [callable]: hàm người dùng định nghĩa, nhận đầu vào mảng khoảng cách trả mảng có hình dạng chứa trọng số • algorithm: thuật tốn sử dụng để tính tốn hàng xóm gần Các giá trị là: • 'auto': tự động chọn thuật toán phù hợp dựa giá trị truyền cho phương thức • 'ball_tree': sử dụng lớp • 'kd_tree': sử dụng lớp • 'brute': sử dụng tìm kiếm brute Lưu ý: huấn luyện liệu thưa (sparse input), giá trị bị ghi đè sử dụng tìm kiếm brute • leaf_size: kích thước chuyển cho KDTree Tham số ảnh hưởng đến tốc độ xây dựng truy vấn, nhớ yêu cầu để lưu trữ Giá trị tối ưu phụ thuộc vào chất vấn đề • p: tham số mũ cho độ đo Minkowski Khi p=1, tương đương với việc sử dụng khoảng tương đương với việc sử dụng khoảng cách Euclidean Đối tùy ý, sử dụng độ đo Minkowski (lp) với • (độ đo): Đây phương pháp sử dụng để tính khoảng cách Giá trị mặc định "minkowski", dẫn đến khoảng cách Euclidean tiêu chuẩn liệu phương pháp liệt kê để biết giá trị độ đo hợp lệ (tham số độ đo): Đây tham số bổ sung cho hàm độ đo • • (số cơng việc): Đây số lượng công việc song song chạy cho việc tìm kiếm hàng xóm Giá trị tương đương với 1, trừ ngữ cảnh joblib.parallel_backendn_jobs (số công việc) sử dụng để định số công việc song song chạy để tìm kiếm hàng xóm.Giá trị mặc định None, điều có nghĩa sử dụng công việc trừ ngữ cảnh joblib.parallel_backend Giá trị ‘ 1’ có nghĩa sử dụng tất xử lý có sẵn máy tính Việc sử dụng nhiều cơng việc gia tăng tốc độ tìm kiếm hàng xóm Tuy nhiên, việc sử dụng nhiều công việc tăng tài nguyên hệ thống sử dụng Các phương thức thuộc lớp KNeighborClassifier: : sử dụng để huấn luyện phân loại • Tham số o X: Dữ liệu huấn luyện o : Giá trị mục tiêu • Quy trình hoạt động Kiểm tra liệu đầu vào: trước tiên kiểm tra liệu đầu vào để đảm bảo có định dạng xác Đối số phải mảng chiều ma trận thưa Đối số phải mảng chiều ma trận thưa có số hàng với đối số Tìm hàng xóm gần nhất: Hàm sau gọi phương thức thích hợp để tìm hàng xóm gần điểm liệu tập huấn luyện Phương thức gọi phụ thuộc vào giá trị tham số algorithm Giá trị mặc định tham số nghĩa thuật toán tốt chọn tự động dựa kích thước tập huấn luyện Lưu khoảng cách nhãn: Hàm lưu khoảng cách đến hàng xóm nhãn hàng xóm phân loại Thơng tin sử dụng hàm đoán điểm liệu để dự để dự đoán nhãn điểm liệu dựa điểm liệu huấn luyện trước • Tham số: o X: Các điểm liệu cần dự đoán o : Các nhãn điểm liệu huấn luyện • Quy trình hoạt động Tìm k hàng xóm gần điểm liệu tập huấn luyện Lấy nhãn k hàng xóm gần Sử dụng phương pháp thống kê để tìm nhãn thống trị số k hàng xóm gần Trả nhãn thống trị cho điểm liệu Bắt đầu # Tải tập liệu từ tệp CSV cục Tải dataset từ đường dẫn # Chia tập liệu thành tập huấn luyện tập kiểm tra X = dataset.drop('Label', axis=1) # Loại bỏ cột “Label” (nhãn) lưu vào biến X kNN = dataset['Label'] # Gán liệu cột “Label” (nhãn) vào biến kNN X_train, X_test, kNN_train, kNN_test = train_test_split(X, kNN, test_size=0.2, shuffle=True) # Tạo phân loại k-Nearest Neighbors với k=3 kNN = KNeighborsClassifier(n_neighbors=3, p=2) # Huấn luyện phân loại tập huấn luyện kNN.fit(X_train, kNN_train) # Thực dự đoán tập kiểm tra kNN_pred = kNN.predict(X_test) # Tính độ xác phân loại accuracy = accuracy_score(kNN_test, kNN_pred) print("Độ xác: {}%" format(accuracy*100)) Kết thúc Các biến có giả mã: • • • : biến lưu trữ liệu Iris tải từ tệp CSV : biến lưu trữ tập liệu đầu vào (features) sau loại bỏ cột 'Species' : biến lưu trữ tập liệu đầu (labels) chứa cột 'Species' • : biến lưu trữ tập liệu huấn luyện cho đầu vào • : biến lưu trữ tập liệu thử nghiệm cho đầu vào • : biến lưu trữ tập liệu huấn luyện cho đầu • : biến lưu trữ tập liệu thử nghiệm cho đầu CHƯƠNG 3: CÀI ĐẶ Cài đặ ả Ử Ệ ệ ế Mơ hình giải toán ộ ữ ệ Để huấn luyện thử nghiệm mơ hình ta sử dụng liệu Mục tiêu sử dụng liệu hoa Iris thông tin đặc điểm hoa để phân loại mẫu liệu vào ba loài hoa Iris Bộ liệu hoa Iris bao gồm tập hợp mẫu từ ba loài hoa Iris khác Thơng thường, có khoảng 150 mẫu liệu liệu Iris Để chạy thử nghiệm chia liệu thành phần tập luyện huấn luyên tập liệu thử nghiệm Bộ liệu huấn luyện chiếm 80%, với 120 mẫu liệu, liệu thử nghiệm chiếm phần lại 30 mẫu liệu Nhãn liệu chứa ba loại hoa Iris khác nhau: Iris mẫu liệu loại hoa tương ứng Đặc trưng virginica Đây nhãn cho Ý nghĩa ã định danh mẫu liệu (kiểu liệu số) Chiều dài đài hoa (kiểu liệu số Chiều rộng đài hoa (kiểu liệu số) Chiều dài cánh hoa (kiểu liệu số Đặc trưng Ý nghĩa Chiều rộng cánh hoa (kiểu liệu số hãn cho mẫu liệu loại hoa tương ứng (kiểu liệu chuỗi kí tự) Bảng Chú thích đặc trưng liệu hoa Iris Huấn luyện Tiền ữ iệu Trước bắt đầu q trình huấn luyện mơ hình kNN liệu Iris, ta thực số bước tiền xử lý liệu Vì mơ hình kNN yêu cầu liệu đầu vào dạng số, nên cột thông tin "Species" (nhãn) cần tách khỏi liệu lưu vào biến riêng để sử dụng giai đoạn sau # Tách cột 'Species' khỏi liệu X = iris_df.drop('Species', axis=1) # Dữ liệu đầu vào (features) kNN = iris_df['Species'] # Nhãn (labels) ập ữ iệu Sau tiền xử lý, ta chia liệu thành tập huấn luyện tập kiểm tra Trong ví dụ này, giá trị chọn 0.2, tức 20% liệu sử dụng để kiểm tra hiệu suất mơ hình # Chia tập liệu thành tập huấn luyện tập kiểm tra X_train, X_test, y_train, y_test = train_test_split(X, kNN, test_size=0.2, shuffle=True) Khởi tạo huấn luyện mơ hình kNN a khởi tạo đối tượng với giá trị (số lượng láng giềng gần nhất) Sau đó, tiếp tục xác định phương phả tính khoảng cách điểm liệu, cụ thể phương pháp ta chọn phương pháp tính khoảng cách huấn luyện mơ hình tập huấn luyện xử lý Dữ liệu có điểm liệu gán nhãn (label) theo loại hoa Iris tương ứng có điểm liệu muốn phân loại, mơ hình tính oảng cách từ điểm đến tất điểm liệu tập huấn luyện # Khởi tạo phân loại k-Nearest Neighbors với k=3, p=2 kNN_model = KNeighborsClassifier(n_neighbors=3, p=2) # Huấn luyện phân loại tập huấn luyện kNN_model.fit(X_train, y_train) Mơ hình xếp điểm liệu tập huấn luyện theo khoảng cách từ gần đến xa Mơ hình chọn k láng giềng gần xem chúng thuộc loại hoa Iris Sau đó, thực lựa chọn để xác định loại hoa Iris điểm liệu Thông thường, loại hoa Iris xuất nhiều k láng giềng dự đoán cho điểm liệu # Thực dự đoán tập kiểm tra kNN_pred = kNN_model.predict(X_test) Đánh giá Ở đây, ta đánh giá hiệu suất mơ hình kNN độ xác (Accuracy) Độ xác cho liệu có nhiều nhãn (multi label) cách so sánh dự đốn mơ hình với nhãn thực tế điểm liệu # Tính độ xác accuracy = accuracy_score(kNN_test, kNN_pred) print("Độ xác: {}%".format(accuracy * 100)) Với độ xác mơ hình có tỷ lệ từ 96.66% trở lên Kết dao động, ta sử dụng kỹ thuật trộn (shuffle) huấn luyện mơ hình với liệu hoa ẫ ụ Bảng Một số mẫu liệu hoa Iris Chương trình phầ ề ứ ụ ựng mơđun chức phầ Phần mềm có ề đun chức tương ứng với mơ hình học máy Mỗi mơđun chức có cách thức hoạt động riêng khác mơ hình học máy liệu mà mơ hình huấn luyện Khi lựa chọn môđun chức từ danh sách chức năng, hình thị thơng tin cập nhật hiển thị ức Mô hình chức ựng chương trình Chương trình ứng dụng sử dụng Python ngơn ngữ lập trình chính, phổ biến rộng rãi có thư viện hỗ trợ mạnh mẽ cho học máy Bên cạnh đó, sử dụng thư viện để xây dựng giao diện người dùng Về mô hình học máy, sử dụng thư viện scikit learn để cài đặt mơ hình học cho chương trình Trước bắt đầu xây dựng chương trình ứng dụng học máy, cần đảm bảo máy tính thiết lập với môi trường phát triển Python thư viện liên quan Dưới bước cần thực hiện: • Cài Đặt : Nếu Python chưa cài đặt • đặt hư iện • đặt thư viện iao diện người dùng : Thư viện tkinter thường kèm với Python Giao diện người dùng diện chia phần phần bên ( phần nội dung Thanh bên nằm bên trái ứng dụng (bao gồm nút chọn giải thuật) Phần bên phải ứng dụng dùng để hiển thị nội dung, trường thông tin cần nhập kết sau chạy giải thuật Giao diện nội dung thay đổi dựa giải thuật chọn, trường thông tin đầu vào khác dựa liệu mà mơ hình học máy tương ứng huấn luyện Giao diện người dùng (K Dưới dạng ví dụ, người dùng chọn “K Nearest Neighbor”, trường thông tin đầu vào cho thuật toán thị, bao gồm chiều dài chiều rộng đài hoa cánh hoa Khi người dùng nhấn nút “Dự đoán”, liệu mẫu trích xuất từ biến đầu vào chạy qua giải thuật Kết dự đoán hiển thị phần cuối trang CHƯƠNG 4: ĐÁNH GIÁ KẾ Ả Chương trình đạt số thành cơng đáng ý, cịn điểm cần cải thiện để nâng cao trải nghiệm người dùng khả sử dụng ứng dụng Ế Ả ĐẠT ĐƯỢ Chương trình triển khai mơ hình kNN để phân loại loài hoa Iris dựa đặc trưng chiều dài rộng đài hoa cánh hoa Mơ hình hoạt động hiệu cho kết độ xác Tiền xử lý liệu: Bước tiền xử lý liệu thực cách xác hợp lý Việc tách cột nhãn khỏi liệu chia thành tập huấn luyện tập kiểm tra giúp đảm bảo tính cơng q trình đánh giá mơ hình Giao diện người dùng: Giao diện người dùng thiết kế trực quan, với phần bên phần nội dung Việc hiển thị thông tin tùy thuộc vào giải thuật chọn điểm mạnh, giúp người dùng dễ dàng theo dõi điều chỉnh tham số Đánh giá hiệu suất: Kết độ xác mơ hình hiển thị cách rõ ràng, cung cấp thông tin quan trọng khả phân loại mơ hình ĐIỂ Ầ Ả Ệ Mơ hình khác liệu nâng cao: Chương trình hỗ trợ mơ hình kNN sử dụng liệu cụ thể (Iris) Để làm cho ứng dụng phong phú hơn, cân nhắc mở rộng để hỗ trợ nhiều mơ hình học máy nhiều liệu khác Tính tương tác người dùng: Tính tương tác người dùng cải thiện cách thêm tính lựa chọn mơ hình, điều chỉnh siêu tham số, chí tải lên liệu Điều tăng tính linh hoạt thoải mái cho người dùng Giao diện mở rộng Giao diện người dùng mở rộng để hỗ trợ nhiều giải thuật tùy chọn, giúp người dùng dễ dàng chuyển đổi chúng mà khơng cần phải quay lại hình HƯỚ Ể Tích hợp mơ hình khác Nâng cao chương trình cách tích hợp nhiều mơ hình học máy khác nhau, từ định đến mạng nơ Tính tinh vi Thêm tính lựa chọn siêu tham số, tối ưu hóa mơ hình, hiển thị đồ thị đào tạo để cung cấp nhìn sâu sắc hiệu suất mơ hình Hỗ trợ đa dạng liệu Cho phép người dùng tải lên thử nghiệm với nhiều loại liệu khác nhau, không giới hạn Iris Điều làm cho chương trình trở nên linh hoạt áp dụng cho nhiều tình Giao diện mở rộng: Mở rộng giao diện để bao gồm nhiều chức tùy chọn, giúp người dùng tương tác cách dễ dàng tận hưởng trải nghiệm toàn diện Ệ N N Tuấn, 2020 Ả [Trự ế P T T Trang, “123doc,” TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG, 08 06 2021 [Trự ế N V Bình, “Nghiên cứu giải pháp định vị nhà hiệu dựa liệu sóng không dây,” Học viện Khoa học Công nghệ, Viện Hàn lâm Khoa học Công nghệ Việt Nam, 2023 [Trự ế Admin1, “Hitechpro,” 18 05 “Vector Linux,” 07 11 2023 [Trự PythonMaster, “Wenku,” “PythonBaba,” 13 09 2023 18 02 2023 2023 [Trự ế “Scikit Learn,” [Trự ế “PytthonGuides,” “Datagy,” 05 01 2022 [Trự D Singh, “PluralsSght,” 16 [Trự [Trự Learn,” Kumar, ế ế “Scikit B [Trự 12 2021 ế ế [Trự ế ự ế ế 17 05 2019 M Narula, L Q Hoà, hemavatisabu, “DelftStack,” 10 10 2023 [Trự ế “123doc,” 27 09 2019 [Trự ế “GeeksForGeeks,” 03 02 2022 [Trự ế