Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
1,81 MB
Nội dung
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN NHẬP MÔN HỌC MÁY ĐỀ TÀI: ỨNG DỤNG THUẬT TOÁN PHÂN CỤM KMEANS CLUSTERING ĐỂ DỰ ĐOÁN CHẤT LƯỢNG CỦA RƯỢU VANG ĐỎ VÀ RATING CỦA MÌ RAMEN Sinh viên thực : PHẠM NGỌC VŨ : DƯƠNG PHƯƠNG TRINH Giảng viên hướng dẫn : PHẠM THỊ KIM DUNG Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : THƯƠNG MẠI ĐIỆN TỬ Lớp : D13HTTMDT1 Khóa : 2018-2023 Hà Nội, tháng 12 năm 2020 PHIẾU CHẤM ĐIỂM Sinh viên thực Họ tên Chữ ký Ghi Chú Chữ ký Ghi Phạm Ngọc Vũ Dương Phương Trinh Giảng viên chấm Họ tên Giảng viên chấm Giảng viên chấm MỤC LỤC CHƯƠNG TỔNG QUAN VỀ HỌC MÁY .2 1.1 Khái niệm học máy: 1.2 Phân nhóm thuật tốn học máy 1.2.1 Học có giám sát (Supervised Learning) 1.2.2 Học phi giám sát (Unsupervised Learning)-UL 1.2.3 Học tăng cường (reinforcement learning) 1.2.4 Học bán giám sát (Semi-Supervised Learning) 1.3 Ứng dụng học máy: CHƯƠNG THUẬT TOÁN K-MEANS CLUSTERING TRONG BÀI TOÁN PHÂN CỤM 2.1 Tổng quan thuật toán K-Means Clustering 2.2 Thuật toán K-Means Clustering: 2.2.1 Mơ hình tốn học: 2.2.2 Độ xác thuật toán: 2.2.3 Nghiệm thuật toán K-Means Clustering: 2.2.4 Tóm tắt thuật toán: 10 CHƯƠNG ỨNG DỤNG THUẬT TOÁN K-MEANS CLUSTERING 11 3.1 Dữ liệu wine_red_quality: 11 3.1.1 Phát biểu toán: 11 3.1.2 Yêu cầu: 11 3.1.3 Bộ liệu: .11 3.1.4 Tiến hành phân cụm .12 3.2 Dữ liệu ramen_rating: 15 3.2.1 Phát biểu toán: 15 3.1.2 Yêu cầu: 15 3.1.3 Bộ liệu: .16 3.1.4 Tiến hành phân cụm: 16 TÀI LIỆU THAM KHẢO 22 LỜI MỞ ĐẦU Công nghệ ngày phổ biến khơng phủ nhận tầm quan trọng hiệu mà đem lại cho sống Bất kỳ lĩnh vực nào, góp mặt trí tuệ nhân tạo giúp người làm việc hồn thành tốt cơng việc Và gần đây, thuật ngữ “machine learning” nhiều người quan tâm.Thay phải code phần mềm với cách thức thủ công theo hướng dẫn cụ thể nhằm hoàn thành nhiệm vụ đề máy tự “học hỏi” cách sử dụng lượng lớn liệu thuật toán cho phép thực tác vụ Đây lĩnh vực khoa học không mới, cho thấy lĩnh vực trí tuệ nhân tạo ngày phát triển tiến xa tương lai Đồng thời, thời điểm xem lĩnh vực “nóng” dành nhiều mối quan tâm để phát triển cách mạnh mẽ, bùng nổ Hiện nay, việc quan tâm machine learning ngày tăng lên nhờ có machine learning giúp gia tăng dung lượng lưu trữ loại liệu sẵn, việc xử lý tính tốn có chi phí thấp hiệu nhiều Những điều hiểu thực tự động, nhanh chóng để tạo mơ hình cho phép phân tích liệu có quy mơ lớn phức tạp đồng thời đưa kết cách nhanh xác Chính hiệu cơng việc lợi ích vượt bậc mà đem lại cho khiến machine learning ngày trọng quan tâm nhiều Vì chúng em chọn đề tài ”Ứng dụng thuật toán K-Means Clustering để dự đoán chất lượng rượu vang đỏ điểm rating mì ramen”để làm báo cáo Chúng em xin chân thành gửi lời cảm ơn tới thầy cô giáo Trường Đại học Điện Lực nói chung thầy giáo Khoa Cơng nghệ thơng tin nói riêng tận tình giảng dạy, truyền đạt cho chúng em kiến thức kinh nghiệm quý báu suốt trình học Đặc biệt, em gửi lời cảm ơn đến Cơ Phạm Thị Kim Dung tận tình theo sát giúp đỡ, trực tiếp bảo, hướng dẫn suốt trình nghiên cứu học tập chúng em CHƯƠNG TỔNG QUAN VỀ HỌC MÁY 1.1 Khái niệm học máy: Học máy (Machine learning) lĩnh vực Trí tuệ nhân tạo(Artificial Intelligence) sử dụng thuật tốn cho phép máy tính học từ liệu để thực công việc thay lập trình cách rõ ràng, cung cấp cho hệ thống khả tự động học hỏi cải thiện hiệu suất, độ xác dựa kinh nghiệm từ liệu đầu vào Học máy tập trung vào việc phát triển phần mềm, chương trình máy tính truy cập vào liệu tận dụng nguồn liệu để tự học Học máy đòi hỏi đánh giá người việc tìm hiểu liệu sở lựa chọn kĩ thuật phù hợp để phân tích liệu Đồng thời, trước sử dụng, liệu phải sạch, khơng có sai lệch khơng có liệu giả Các mơ hình học máy u cầu lượng liệu đủ lớn để "huấn luyện" đánh giá mơ hình Trước đây, thuật tốn học máy thiếu quyền truy cập vào lượng lớn liệu cần thiết để mơ hình hóa mối quan hệ liệu Sự tăng trưởng liệu lớn (big data) cung cấp thuật toán học máy với đủ liệu để cải thiện độ xác mơ hình dự đốn 1.2 Phân nhóm thuật tốn học máy 1.2.1 Học có giám sát (Supervised Learning) Là phương pháp sử dụng liệu gán nhãn từ trước để suy luận quan hệ đầu vào đầu Các liệu gọi liệu huấn luyện chúng cặp đầu vào-đầu Học có giám sát xem xét tập huấn luyện để từ đưa dự đốn đầu cho đầu vào chưa gặp Ví dụ dự đốn giá nhà, phân loại email Các mơ mạng Nơ-ron, SVM, CNN,… Hình 1 Mơ hình học có giám sát Supervised Learning Là tht tốn dự đoán đầu (outcome) liệu (new input) dựa cặp (input, outcome) biết tư trước Cặp liệu đươc gọi data, label tức liệu, nhãn Supervised Learning Là nhóm phổ biến thuật toán Machine learning 1.2.2 Học phi giám sát (Unsupervised Learning)-UL Khác với học có giám sát, học phi giám sát sử dụng liệu chưa gán nhãn từ trước để suy luận Phương pháp thường sử dụng để tìm cấu trúc tập liệu Tuy nhiên lại khơng có phương pháp đánh giá cấu trúc tìm hay sai Ví dụ phân cụm liệu, triết xuất thành phần chất K-mean Ứng dụng phổ biến học khơng giám sát gom cụm (cluster) Hình Mơ hình học khơng giám sát Trong thuật tốn này, liệu đầu hay nhãn mà có liệu đầu vào Thuật tốn Học không giám sát dựa vào cấu trúc liệu để thực cơng việc đó, ví dụ phân nhóm giảm số chiều liệu để thuận tiện việc lưu trữ tính tốn Một cách tốn học, Học khơng giám sát có liệu vào X mà khơng biết nhãn Y tương ứng Sự khác học có giám sát học khơng giám sát: Hình 1.3: Sự khác biệt mơ hình SL UL Học có giám sát: Là cách huấn luyện mơ hình liệu học có đầu vào đầu tương ứng đầu vào Mơ hình huấn luyện cách giảm thiểu sai số lỗi (loss) dự đốn vịng lặp huấn luyện Sau q trình huấn luyện mơ hình có khả đưa dự đoán đầu với đầu vào gặp (khơng có liệu học) Nếu không gian đầu biểu diễn dứới dạng rời rạc, ta gọi tốn phân loại (classification) Nếu không gian đầu biểu diễn dạng liên tục, ta gọi tốn hồi quy (regression) Học không giám sát: Là cách huấn luyện mơ hình liệu học bao gồm đầu vào mà khơng có đầu Mơ hình huấn luyện cách để tìm cấu trúc mối quan hệ đầu vào Một phương pháp học không giám sát quan trọng phân cụm (clustering): Tạo cụm khác với cụm biểu diễn đặc trưng liệu phân đầu vào vào cụm theo đặc trưng đầu vào Các phương pháp học khơng giám sát khác kể đến như: phát điểm bất thường (anomaly detection), Singular-value decomposition, … 1.2.3 Học tăng cường (reinforcement learning) Phương pháp học tăng cường tập trung vào việc tác tử mơi trường hành động cho lấy phần thưởng nhiều Khác với học có giám sát khơng có cặp liệu gán nhãn trước làm đầu vào khơng có đánh giá hành động hay sai 1.2.4 Học bán giám sát (Semi-Supervised Learning) Các tốn có lượng lớn liệu X phần chúng gán nhãn gọi Semi-Supervised Learning Những toán thuộc nhóm nằm hai nhóm nêu bên Một ví dụ điển hình nhóm có phần ảnh văn gán nhãn (ví dụ ảnh người, động vật văn khoa học, trị) phần lớn ảnh/văn khác chưa gán nhãn thu thập từ internet Thực tế cho thấy nhiều tốn Machine Learning thuộc vào nhóm việc thu thập liệu có nhãn tốn nhiều thời gian có chi phí cao Rất nhiều loại liệu chí cần phải có chun gia gán nhãn (ảnh y học chẳng hạn) Ngược lại, liệu chưa có nhãn thu thập với chi phí thấp từ internet 1.3 Ứng dụng học máy: Nhiều hoạt động hàng ngày trợ giúp thuật toán machine learning, bao gồm: Trong y tế: xác định bệnh lý người bệnh dựa liệu lịch sử bệnh nhân có bệnh lý có đặc điểm chữa khỏi trước đây, hay xác định loại thuốc phù hợp Trong lĩnh vực ngân hàng: xác định khả khách hàng chậm trả khoản vay rủi ro tín dụng nợ xấu dựa phân tích Credit score; xác định xem liệu giao dịch có hành vi phạm tội, lừa đảo hay không Trong giáo dục: phân loại học sinh theo hoàn cảnh, học lực để xem xem cần hỗ trợ cho học sinh ví dụ hồn cảnh sống khó khăn học lực lại tốt Trong thương mại điện tử: phân loại khách hàng theo sở thích cụ thể để hỗ trợ personalized marketing hay xây dựng hệ thống khuyến nghị, dựa liệu từ website, social media Trong kinh tế nói chung: giúp dự báo kiện kinh tế tương lai, dự báo tình hình thời tiết nơng nghiệp, xác định xu hướng thị trường chứng khốn để lên kế hoạch đầu tư thích hợp CHƯƠNG THUẬT TOÁN K-MEANS CLUSTERING TRONG BÀI TOÁN PHÂN CỤM 2.1 Tổng quan thuật toán K-Means Clustering Với thuật tốn K-Means Clustering, khơng biết nhãn (label) điểm liệu Mục đích làm thể để phân liệu thành cụm (cluster) khác cho dữ liệu cụm có tính chất giống Ý tưởng đơn giản cluster (cụm) tập hợp điểm ở gần không gian đó (khơng gian có nhiều chiều trường hợp thông tin điểm liệu lớn) Hình bên ví dụ cụm liệu (từ viết gọn là cluster) Hình 2.1: Bài tốn với clusters Giả sử cluster có điểm đại diện (center) màu vàng Và điểm xung quanh center thuộc vào nhóm với center Một cách đơn giản nhất, xét điểm bất kỳ, ta xét xem điểm gần với center thuộc nhóm với center 2.2 Thuật tốn K-Means Clustering: 2.2.1 Mơ hình tốn học: Ta gọi điểm vị trí trung bình tất điểm liệu cụm là trung tâm cụm Như vậy, có K cụm có K trung tâm cụm trung tâm cụm nằm gần điểm liệu cụm tương ứng trung tâm cụm khác Trong hình đây, K = ta có trung tâm cụm điểm màu vàng Hình 2.2: Mơ hình liệu phân cụm Để phân cụm liệu K-Means Clustering, trước hết ta chọn K số cụm để phân chia chọn ngẫu nhiên K số m liệu ban đầu làm trung tâm cụm μ1, μ2, …, μK. Sau đó, với điểm liệu x(i) ta gán cho cụm c(i) là cụm có trung tâm cụm gần Khi tất điểm liệu gán cụm, bước tính tốn lại vị trí trung tâm cụm trung bình tọa độ điểm liệu cụm với k1, k2, …, kn là số liệu thuộc cụm thứ k Các bước lặp lại vị trí trung tâm cụm không đổi sau bước lặp 2.2.2 Độ xác thuật tốn: Hàm mát thuật toán K-Means Clustering đặc trưng cho độ xác lớn khoảng cách từ điểm liệu tới trung tâm cụm lớn 2.2.3 Nghiệm thuật toán K-Means Clustering: Trong bước thuật toán, thực chất bước gán điểm liệu trung tâm cụm gần bước thay đổi trung tâm cụm vị trí trung bình điểm liệu cụm nhằm mục đích giảm hàm mát Thuật tốn kết thúc vị trí trung tâm cụm khơng đổi sau bước lặp Khi hàm mát đạt giá trị nhỏ 10 Khi K nhỏ so với m, thuật toán dễ đến kết chưa phải tối ưu Điều phụ thuộc vào cách chọn K trung tâm cụm ban đầu Để khắc phục điều này, ta cần lặp lại thuật toán nhiều lần chọn phương án có giá trị hàm mát nhỏ 2.2.4 Tóm tắt thuật tốn: Đầu vào: Dữ liệu XX và số lượng cluster cần tìm KK Đầu ra: Các center MM và label vector cho điểm liệu YY Chọn KK điểm làm center ban đầu Phân điểm liệu vào cluster có center gần Nếu việc gán liệu vào cluster bước không thay đổi so với vịng lặp trước ta dừng thuật toán Cập nhật center cho cluster cách lấy trung bình cộng tất các điểm liệu gán vào cluster sau bước Quay lại bước 11 CHƯƠNG ỨNG DỤNG THUẬT TOÁN K-MEANS CLUSTERING 3.1 Dữ liệu wine_red_quality: 3.1.1 Phát biểu toán: Bài toán phân loại chất lượng rượu vang đỏ đưa tập dự liệu thông số mẫu rượu vang đỏ để phân loại chất lượng chúng - Giá trị input: Thơng tin, đặc tính mẫu rượu - Giá trị output: tên cụm chúng phân vào 3.1.2 Yêu cầu: - Lấy liệu mô tả đặc tính rượu - Trích chọn đặc trưng từ tập liệu lấy - Xử lý, làm liệu - Tiến hành phân cụm - Dữ liệu hóa đồ thị 3.1.3 Bộ liệu: Nguồn: https://www.kaggle.com/uciml/red-wine-quality-cortez-et-al-2009 Bộ liệu bao gồm đặc trưng nồng độ thành phần ảnh hưởng đển chất lượng rượu, bao gồm: - fixed acidity: độ acid cố định - volatile acidity: độ acid dễ bay - citric acid: nồng độ citric acid – dùng để thêm độ tươi hương vị cho rượu vang - residual sugar: lượng đường dư lại sau dừng lên men, thường lớn gr/liter - chlorides: độ mặn rượu - free sulfur dioxide: lượng chất SO2 tồn trạng thái cân phân tử SO2 bisulfite ion, ngăn cản vi sinh vật oxi hóa rượu - total sulfur dioxide: số lượng dạng S02 tự ràng buộc; nồng độ thấp, SO2 phát rượu vang, nồng độ SO2 tự 50 ppm, SO2 trở nên rõ ràng mũi mùi vị rượu - density: tỉ trọng nước - pH: thước đo tính axit bazo thang điểm -14 12 - sulphates: chất phụ gia rượu vang góp phần vào mức khí sulfur dioxide (S02), hoạt động chất chống vi khuẩn chất chống oxy hóa - alcohol: nồng độ cồn - quality: chất lượng (là kết số mẫu rượu đánh giá dựa vị giác người thử rượu, nhiên tốn phân cụm khơng cần đến đặc trưng này) Hình 3.1: Dữ liệu cụ thể 3.1.4 Tiến hành phân cụm IMPORT THƯ VIỆN: import pandas as pd import numpy as np from sklearn.cluster import KMeans import matplotlib.pyplot as plt from sklearn.decomposition import PCA ĐỌC FILE DỮ LIỆU CSV: df = pd.read_csv('winequality-red.csv') BỎ NHỮNG DỮ LIỆU BỊ LẶP 13 df = df.drop_duplicates() CHUẨN HÓA DỮ LIỆU (MAX-MIN NORMALIZE): def max_min_normalize(column): maxx = max(column) minn = min(column) normalized_column = [] for value in column: normalized_value = (value - minn)/(maxx - minn) normalized_column.append(normalized_value) return normalized_column for column in df.columns: try: df[column] = max_min_normalize(df[column]) except ZeroDivisionError: df[column] = 0 TẠO MODEL PHÂN CỤM DỮ LIỆU VÀ BIỂU DIỄN DỮ LIỆU: df = PCA(2).fit_transform(df) clr = KMeans(n_clusters = 10,init = 'k-means++',random_state = 6) clr.fit(df) labels = clr.predict(df) centroid_labels = clr.predict(clr.cluster_centers_) predicted_df = pd.DataFrame(data = df,columns = ['PCA1','PCA2']) predicted_df['Cluster'] = labels centroid_df = pd.DataFrame(data = clr.cluster_centers_,columns = ['PCA1','PCA2']) centroid_df['Cluster'] = centroid_labels plt.scatter(predicted_df['PCA1'],predicted_df['PCA2'],c = labels,alpha = 0.5) plt.scatter(centroid_df['PCA1'],centroid_df['PCA2'],marker = 'D',s = 100,c = cent roid_labels) plt.show() 14 Hình 3.2: Hình ảnh liệu sau phân cụm đồ thị 3.2 Dữ liệu ramen_rating: 3.2.1 Phát biểu toán: Bài tốn phân loại chất lượng mì ramen dựa liệu có thơng tin cho ảnh hưởng đển điểm rating - Giá trị input: Thơng tin cụ thể sản phẩm mì ramen - Giá trị output: tên cụm chúng phân vào 3.1.2 Yêu cầu: - Lấy liệu mì ramen - Trích chọn đặc trưng từ tập liệu lấy - Xử lý, làm liệu - Tiến hành phân cụm - Dữ liệu hóa đồ thị 15 3.1.3 Bộ liệu: Nguồn: https://www.kaggle.com/residentmario/ramen-ratings Bộ liệu bao gồm đặc trưng thông tin mì ramen: - Review: số thứ tự review - Brand: Hãng sản xuất mì ramen - Variety: Mơ tả chung mì ramen - Style: Kiểu phục vụ (được đựng bát, khay, …) - Country: quốc gia mà bán - Star: Số mà đạt - Top Ten: Điểm rating thang điểm 10 mì (tuy nhiên tốn phân cụm nên đặc trưng bị lược bỏ) Hình 3.4: Dữ liệu cụ thể 3.1.4 Tiến hành phân cụm: IMPORT THƯ VIỆN import pandas as pd import numpy as np from sklearn.cluster import KMeans import matplotlib.pyplot as plt from sklearn.decomposition import PCA ĐỌC FILE DỮ LIỆU CSV 16 rating = pd.read_csv('ramen-ratings.csv') LÀM SẠCH DỮ LIỆU - Bỏ đặc trưng không ảnh hưởng đến kết - Bỏ mẫu liệu bị lặp lại hai lần - Bỏ liệu có giá trị NaN cột NaN rating = rating.drop(['Review #','Top Ten'],axis = 1) rating = rating.drop_duplicates() rating = rating.drop(rating[rating['Style'].isna()].index) - Đặc trưng Stars có giá trị ‘Unrated’ giá trị Stars có ảnh hưởng lớn đến kết phân cụm nên thay bỏ, gán cho liệu giá trị trung bình Stars tồn liệu def tinh_trung_binh_star(column): total = 0 for value in column: total += float(value) average = total/len(column) return average star_average = tinh_trung_binh_star(rating['Stars'].drop(rating[rating['Stars'] = = 'Unrated'].index)) rating['Stars'] = rating['Stars'].apply(lambda x: star_average if x == 'Unrated' else x) rating['Stars'] = rating['Stars'].astype(float) BIẾN NHỮNG ĐẶC TRƯNG PHÂN LOẠI VỀ DẠNG SỐ rating = pd.get_dummies(rating,columns = ['Brand','Variety','Style','Country']) CHUẨN HÓA DỮ LIỆU (CHUẨN HÓA MAX-MIN): def max_min_normalize(column): maxx = max(column) minn = min(column) normalized_column = [] for value in column: normalized_value = (value - minn)/(maxx - minn) normalized_column.append(normalized_value) return normalized_column for column in rating.columns: try: rating[column] = max_min_normalize(rating[column]) 17 except ZeroDivisionError: rating[column] = 0 TIẾN HÀNH PHÂN CỤM VÀ BIỂU DIỄN DỮ LIỆU ĐƯỢC PHÂN CỤM (2D): rating = PCA(2).fit_transform(rating) df = pd.DataFrame(data = rating,columns = ['PCA1','PCA2']) print(' -Du lieu sau khi normalize -\n',df.head(),'\n') #Tao model clr = KMeans(n_clusters = 10,init = 'k-means++',random_state = 6) clr.fit(rating) cluster_predicted = clr.predict(rating) df['Cluster'] = cluster_predicted print(' -Ket qua phan cum -\n',df.head(),'\n') print(' -Centroid -\n',clr.cluster_centers_,'\n') centroid_labels = clr.predict(clr.cluster_centers_) centroid_df = pd.DataFrame(data = clr.cluster_centers_,columns = ['PCA1','PCA2']) centroid_df['Cluster'] = centroid_labels print(' -Ket qua phan cum cho centroid -\n',centroid_df,'\n') plt.scatter(df['PCA1'],df['PCA2'],c = cluster_predicted,s = 10) plt.scatter(centroid_df['PCA1'],centroid_df['PCA2'],marker = 'D',s = 100,c = cent roid_labels) plt.title('K-means Clustering 2D') plt.show() 18 Hình 3.5: Hình ảnh liệu sau phân cụm đồ thị 2D TIẾN HÀNH PHÂN CỤM VÀ BIỂU DIỄN DỮ LIỆU ĐƯỢC PHÂN CỤM (3D): rating = PCA(3).fit_transform(rating) df = pd.DataFrame(data = rating,columns = ['PCA1','PCA2','PCA3']) print(' -Du lieu sau khi normalize -\n',df.head(),'\n') #Tao model clr = KMeans(n_clusters = 10,init = 'k-means++',random_state = 6) clr.fit(rating) cluster_predicted = clr.predict(rating) df['Cluster'] = cluster_predicted print(' -Ket qua phan cum -\n',df.head(),'\n') print(' -Centroid -\n',clr.cluster_centers_,'\n') centroid_labels = clr.predict(clr.cluster_centers_) centroid_df = pd.DataFrame(data = clr.cluster_centers_,columns = ['PCA1','PCA2',' PCA3']) centroid_df['Cluster'] = centroid_labels print(' -Ket qua phan cum cho centroid -\n',centroid_df,'\n') 19 #Data Visualize ax = plt.axes(projection = '3d') ax.scatter3D(df['PCA1'],df['PCA2'],df['PCA3'],c = cluster_predicted) ax.scatter3D(centroid_df['PCA1'],centroid_df['PCA2'],centroid_df['PCA3'],marker = 'D',s = 50,c = centroid_labels) plt.title('Kmean Clustering 3D') plt.show() Hình 3.6: Hình ảnh liệu sau phân cụm đồ thị 3D 20 TÀI LIỆU THAM KHẢO [1] Trang web: machinelearningcoban.com 21 ... ngày trọng quan tâm nhiều Vì chúng em chọn đề tài ? ?Ứng dụng thuật toán K-Means Clustering để dự đoán chất lượng rượu vang đỏ điểm rating mì ramen? ? ?để làm báo cáo Chúng em xin chân thành gửi lời cảm... gán vào cluster sau bước Quay lại bước 11 CHƯƠNG ỨNG DỤNG THUẬT TOÁN K-MEANS CLUSTERING 3.1 Dữ liệu wine_red_quality: 3.1.1 Phát biểu toán: Bài toán phân loại chất lượng rượu vang đỏ đưa tập dự. .. 1.3 Ứng dụng học máy: CHƯƠNG THUẬT TOÁN K-MEANS CLUSTERING TRONG BÀI TOÁN PHÂN CỤM 2.1 Tổng quan thuật toán K-Means Clustering 2.2 Thuật toán K-Means Clustering: