Tôi sẽ giới thiệu một số phương pháp này cho bạn trong bài viết này, hy vọng bạn có thể hiểu được một số cách lấy mẫu sau khi đọc bài viết này Show
Chúng tôi sử dụng phương pháp lấy mẫu để tiết kiệm thời gian và để có cái nhìn gần hơn về dân số Nếu chúng ta chỉ nghiên cứu về dân số thì sẽ mất nhiều thời gian hơn, ví dụ như nghiên cứu về toàn bộ cư dân ở bang thống nhất… Thuật toán phân cụm với Python Hướng dẫn tổng quanHướng dẫn này được chia thành ba phần;
phân cụmPhân tích cụm hoặc phân cụm là một nhiệm vụ học máy không giám sát Nó liên quan đến việc tự động khám phá nhóm tự nhiên trong dữ liệu. Không giống như học có giám sát (như mô hình dự đoán), các thuật toán phân cụm chỉ diễn giải dữ liệu đầu vào và tìm các nhóm hoặc cụm tự nhiên trong không gian đặc trưng
— Trang 141, Khai thác dữ liệu. Công cụ và kỹ thuật học máy thực tế, 2016 Một cụm thường là một vùng có mật độ trong không gian đặc trưng nơi các ví dụ từ miền (các quan sát hoặc hàng dữ liệu) gần cụm hơn các cụm khác. Cụm có thể có một trung tâm (tâm) là một mẫu hoặc một không gian đặc trưng điểm và có thể có một ranh giới hoặc phạm vi
— Trang 141-142, Khai thác dữ liệu. Công cụ và kỹ thuật học máy thực tế, 2016 Phân cụm có thể hữu ích như một hoạt động phân tích dữ liệu để tìm hiểu thêm về miền vấn đề, được gọi là khám phá mẫu hoặc khám phá tri thức Ví dụ
Phân cụm cũng có thể hữu ích như một loại kỹ thuật tính năng, trong đó các ví dụ mới và hiện có có thể được ánh xạ và gắn nhãn là thuộc về một trong các cụm được xác định trong dữ liệu Việc đánh giá các cụm được xác định là chủ quan và có thể yêu cầu một chuyên gia miền, mặc dù có nhiều biện pháp định lượng dành riêng cho cụm. Thông thường, các thuật toán phân cụm được so sánh về mặt học thuật trên các bộ dữ liệu tổng hợp với các cụm được xác định trước mà một thuật toán sẽ khám phá ra
— Trang 534, Máy học. Một góc nhìn xác suất, 2012 Thuật toán phân cụmCó nhiều loại thuật toán phân cụm Nhiều thuật toán sử dụng các phép đo độ tương tự hoặc khoảng cách giữa các ví dụ trong không gian đặc trưng với nỗ lực khám phá các vùng quan sát dày đặc. Do đó, thông thường nên chia tỷ lệ dữ liệu trước khi sử dụng thuật toán phân cụm
— Trang 502, Các yếu tố của học tập thống kê. Khai thác dữ liệu, suy luận và dự đoán, 2016 Một số thuật toán phân cụm yêu cầu bạn chỉ định hoặc đoán số lượng cụm cần khám phá trong dữ liệu, trong khi các thuật toán khác yêu cầu xác định khoảng cách tối thiểu giữa các quan sát trong đó các ví dụ có thể được coi là "gần" hoặc "được kết nối". ” Như vậy, phân tích cụm là một quá trình lặp đi lặp lại trong đó đánh giá chủ quan của các cụm đã xác định được đưa trở lại các thay đổi đối với cấu hình thuật toán cho đến khi đạt được kết quả mong muốn hoặc phù hợp Thư viện scikit-learning cung cấp một bộ thuật toán phân cụm khác nhau để lựa chọn Dưới đây là danh sách 10 thuật toán phổ biến hơn
Mỗi thuật toán đưa ra một cách tiếp cận khác nhau đối với thách thức khám phá các nhóm tự nhiên trong dữ liệu Không có thuật toán phân cụm tốt nhất và không có cách nào dễ dàng để tìm ra thuật toán tốt nhất cho dữ liệu của bạn mà không sử dụng các thử nghiệm được kiểm soát Trong hướng dẫn này, chúng tôi sẽ xem xét cách sử dụng từng thuật toán trong số 10 thuật toán phân cụm phổ biến này từ thư viện scikit-learning Các ví dụ sẽ cung cấp cơ sở để bạn sao chép-dán các ví dụ và kiểm tra các phương pháp trên dữ liệu của riêng bạn Chúng tôi sẽ không đi sâu vào lý thuyết đằng sau cách thức hoạt động của các thuật toán hoặc so sánh chúng một cách trực tiếp. Đối với một điểm khởi đầu tốt về chủ đề này, xem
Hãy đi sâu vào Ví dụ về thuật toán phân cụmTrong phần này, chúng tôi sẽ xem xét cách sử dụng 10 thuật toán phân cụm phổ biến trong scikit-learning Điều này bao gồm một ví dụ về điều chỉnh mô hình và một ví dụ về trực quan hóa kết quả Các ví dụ được thiết kế để bạn sao chép-dán vào dự án của riêng bạn và áp dụng các phương pháp cho dữ liệu của riêng bạn Cài đặt thư việnĐầu tiên, hãy cài đặt thư viện Đừng bỏ qua bước này vì bạn sẽ cần đảm bảo rằng mình đã cài đặt phiên bản mới nhất Bạn có thể cài đặt thư viện scikit-learn bằng trình cài đặt pip Python, như sau 1 Sudo pip cài đặt scikit-learning Để biết hướng dẫn cài đặt bổ sung dành riêng cho nền tảng của bạn, hãy xem
Tiếp theo, hãy xác nhận rằng thư viện đã được cài đặt và bạn đang sử dụng phiên bản hiện đại Chạy tập lệnh sau để in số phiên bản thư viện 1 2 3 # kiểm tra phiên bản scikit-learning nhập sklearn in(sklearn. __version__) Chạy ví dụ này, bạn sẽ thấy số phiên bản sau hoặc cao hơn 1 0. 22. 1 Bộ dữ liệu phân cụmChúng tôi sẽ sử dụng hàm make_classification() để tạo tập dữ liệu phân loại nhị phân thử nghiệm Bộ dữ liệu sẽ có 1.000 ví dụ, với hai tính năng đầu vào và một cụm cho mỗi lớp. Các cụm hiển thị rõ ràng theo hai chiều để chúng ta có thể vẽ biểu đồ dữ liệu bằng biểu đồ phân tán và tô màu các điểm trong biểu đồ theo cụm được chỉ định. Điều này sẽ giúp xem, ít nhất là trong vấn đề thử nghiệm, các cụm được xác định “tốt” như thế nào Các cụm trong vấn đề thử nghiệm này dựa trên Gaussian đa biến và không phải tất cả các thuật toán phân cụm đều hiệu quả trong việc xác định các loại cụm này. Do đó, các kết quả trong hướng dẫn này không nên được sử dụng làm cơ sở để so sánh các phương pháp nói chung. Một ví dụ về việc tạo và tóm tắt bộ dữ liệu phân cụm tổng hợp được liệt kê bên dưới 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # bộ dữ liệu phân loại tổng hợp từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ matplotlib nhập pyplot # xác định tập dữ liệu X, y = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # tạo biểu đồ phân tán cho các mẫu từ mỗi lớp cho class_value trong phạm vi(2): # lấy chỉ mục hàng cho các mẫu với lớp này row_ix = ở đâu(y == class_value) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ này sẽ tạo tập dữ liệu phân cụm tổng hợp, sau đó tạo biểu đồ phân tán của dữ liệu đầu vào với các điểm được tô màu theo nhãn lớp (cụm lý tưởng hóa) Chúng ta có thể thấy rõ ràng hai nhóm dữ liệu riêng biệt ở hai chiều và hy vọng rằng thuật toán phân cụm tự động có thể phát hiện các nhóm này Biểu đồ phân tán của tập dữ liệu phân cụm tổng hợp với các điểm được tô màu theo cụm đã biết Tiếp theo, chúng ta có thể bắt đầu xem xét các ví dụ về thuật toán phân cụm được áp dụng cho tập dữ liệu này Tôi đã thực hiện một số nỗ lực tối thiểu để điều chỉnh từng phương pháp cho tập dữ liệu Bạn có thể nhận được kết quả tốt hơn cho một trong các thuật toán không? Tuyên truyền mối quan hệTuyên truyền mối quan hệ liên quan đến việc tìm kiếm một tập hợp các mẫu tóm tắt dữ liệu tốt nhất
— Phân cụm bằng cách truyền tin nhắn giữa các điểm dữ liệu, 2007 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp AffinityPropagation và cấu hình chính để điều chỉnh là “giảm xóc” được đặt giữa 0. 5 và 1, và có lẽ “sở thích. ” Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # phân cụm lan truyền ái lực từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập Tuyên truyền mối quan hệ từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình mô hình = Tuyên truyền mối quan hệ(giảm xóc=0.9) #phù hợp với mô hình mô hình. phù hợp(X) # gán một cụm cho mỗi ví dụ yhat = mô hình. dự đoán(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, tôi không thể đạt được kết quả tốt Biểu đồ phân tán của tập dữ liệu với các cụm được xác định bằng cách sử dụng tuyên truyền mối quan hệ Phân cụm kết tụPhân cụm kết tụ liên quan đến việc hợp nhất các ví dụ cho đến khi đạt được số lượng cụm mong muốn Nó là một phần của lớp phương pháp phân cụm theo thứ bậc rộng hơn và bạn có thể tìm hiểu thêm tại đây
Nó được triển khai thông qua lớp AgglomerativeClustering và cấu hình chính cần điều chỉnh là tập hợp “n_cluster”, ước tính số lượng cụm trong dữ liệu, e. g. 2 Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # cụm kết tụ từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập Clustering kết tụ từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình model = AgglomerativeClustering(n_clusters=2) # khớp mô hình và dự đoán cụm yhat = mô hình. fit_predict(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, một nhóm hợp lý được tìm thấy Biểu đồ phân tán của tập dữ liệu với các cụm được xác định bằng cách sử dụng phân cụm kết tụ BẠCH DƯƠNGPhân cụm BIRCH (BIRCH là viết tắt của Giảm lặp lại cân bằng và phân cụm bằng cách sử dụng
— BẠCH DƯƠNG. Một phương pháp phân cụm dữ liệu hiệu quả cho cơ sở dữ liệu lớn, 1996 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp Birch và cấu hình chính để điều chỉnh là siêu tham số “ngưỡng” và “n_cluster”, cấu hình thứ hai cung cấp ước tính số lượng cụm Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # cụm bạch dương từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập Birch từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình mô hình = Birch(ngưỡng=0.01, n_cluster=2) #phù hợp với mô hình mô hình. phù hợp(X) # gán một cụm cho mỗi ví dụ yhat = mô hình. dự đoán(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, một nhóm tuyệt vời được tìm thấy Sơ đồ phân tán của tập dữ liệu với các cụm được xác định bằng phân cụm BIRCH DBSCANPhân cụm DBSCAN (trong đó DBSCAN là viết tắt của Phân cụm ứng dụng có tiếng ồn dựa trên không gian dựa trên mật độ) liên quan đến việc tìm các khu vực có mật độ cao trong miền và mở rộng các khu vực đó của không gian đặc trưng xung quanh chúng dưới dạng các cụm
— Thuật toán dựa trên mật độ để khám phá các cụm trong cơ sở dữ liệu không gian lớn có nhiễu, 1996 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp DBSCAN và cấu hình chính để điều chỉnh là siêu tham số “eps” và “min_samples” Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # phân cụm dbscan từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập DBSCAN từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình model = DBSCAN(eps=0.30, min_samples=9) # khớp mô hình và dự đoán cụm yhat = mô hình. fit_predict(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, một nhóm hợp lý được tìm thấy, mặc dù cần điều chỉnh nhiều hơn Biểu đồ phân tán của tập dữ liệu với các cụm được xác định bằng phân cụm DBSCAN K-MeansK-Means Clustering có thể là thuật toán phân cụm được biết đến rộng rãi nhất và liên quan đến việc gán các ví dụ cho các cụm nhằm nỗ lực giảm thiểu phương sai trong mỗi cụm
— Một số phương pháp phân loại và phân tích các quan sát đa biến, 1967 Kỹ thuật này được mô tả ở đây
Nó được triển khai thông qua lớp KMeans và cấu hình chính để điều chỉnh là siêu tham số “n_cluster” được đặt thành số cụm ước tính trong dữ liệu Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # k-nghĩa là phân cụm từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập KMeans từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình model = KMeans(n_clusters=2) #phù hợp với mô hình mô hình. phù hợp(X) # gán một cụm cho mỗi ví dụ yhat = mô hình. dự đoán(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, một nhóm hợp lý được tìm thấy, mặc dù phương sai bằng nhau không bằng nhau ở mỗi chiều làm cho phương pháp ít phù hợp hơn với tập dữ liệu này Sơ đồ phân tán của tập dữ liệu với các cụm được xác định bằng phân cụm K-Means K-Means hàng loạt nhỏMini-Batch K-Means là một phiên bản sửa đổi của k-means giúp cập nhật các trọng tâm của cụm bằng cách sử dụng các lô mẫu nhỏ thay vì toàn bộ tập dữ liệu, điều này có thể giúp các tập dữ liệu lớn nhanh hơn và có lẽ mạnh mẽ hơn đối với nhiễu thống kê
- Phân cụm K-Means quy mô web, 2010 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp MiniBatchKMeans và cấu hình chính để điều chỉnh là siêu tham số “n_cluster” được đặt thành số cụm ước tính trong dữ liệu Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # mini-batch k-mean phân cụm từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập MiniBatchKMeans từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình model = MiniBatchKMeans(n_cluster=2) #phù hợp với mô hình mô hình. phù hợp(X) # gán một cụm cho mỗi ví dụ yhat = mô hình. dự đoán(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, một kết quả tương đương với thuật toán k-means tiêu chuẩn được tìm thấy Biểu đồ phân tán tập dữ liệu với các cụm được xác định bằng cách sử dụng phân cụm K-Means hàng loạt nhỏ trung bình thay đổiPhân cụm dịch chuyển trung bình liên quan đến việc tìm và điều chỉnh trọng tâm dựa trên mật độ của các ví dụ trong không gian đặc trưng
- Dịch chuyển trung bình. Một cách tiếp cận mạnh mẽ đối với phân tích không gian tính năng, 2002 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp MeanShift và cấu hình chính để điều chỉnh là siêu tham số “băng thông” Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # phân cụm dịch chuyển trung bình từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập MeanShift từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình mô hình = Dịch chuyển trung bình() # khớp mô hình và dự đoán cụm yhat = mô hình. fit_predict(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, một tập hợp các cụm hợp lý được tìm thấy trong dữ liệu Biểu đồ phân tán của tập dữ liệu với các cụm được xác định bằng cách sử dụng phân cụm thay đổi trung bình QUANG HỌCPhân cụm OPTICS (trong đó OPTICS là viết tắt của Đặt hàng các điểm để xác định cấu trúc phân cụm) là một phiên bản sửa đổi của DBSCAN được mô tả ở trên
— QUANG HỌC. sắp xếp các điểm để xác định cấu trúc phân cụm, 1999 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp OPTICS và cấu hình chính để điều chỉnh là siêu tham số “eps” và “min_samples” Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # phân cụm quang học từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập QUANG HỌC từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình model = OPTICS(eps=0.8, min_samples=10) # khớp mô hình và dự đoán cụm yhat = mô hình. fit_predict(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, tôi không thể đạt được kết quả hợp lý trên bộ dữ liệu này Sơ đồ phân tán của tập dữ liệu với các cụm được xác định bằng phân cụm OPTICS Phân cụm quang phổPhân cụm quang phổ là một lớp chung của các phương pháp phân cụm, được rút ra từ đại số tuyến tính
— Trên phân cụm quang phổ. Phân tích và thuật toán, 2002 Kỹ thuật này được mô tả trong bài báo
Nó được triển khai thông qua lớp SpectralClustering và Spectral Clustering chính là một lớp chung của các phương pháp phân cụm, được rút ra từ đại số tuyến tính. để điều chỉnh là siêu tham số “n_clusters” được sử dụng để chỉ định số cụm ước tính trong dữ liệu Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # phân cụm quang phổ từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. cụm nhập Phân cụm quang phổ từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình mô hình = Phân cụm quang phổ(n_cluster=2) # khớp mô hình và dự đoán cụm yhat = mô hình. fit_predict(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, các cụm hợp lý đã được tìm thấy Biểu đồ phân tán của tập dữ liệu với các cụm được xác định bằng cách sử dụng cụm phân cụm Spectra Mô hình hỗn hợp GaussianMô hình hỗn hợp Gaussian tóm tắt hàm mật độ xác suất đa biến với hỗn hợp các phân bố xác suất Gaussian như tên gọi của nó Để biết thêm về mô hình, xem
Nó được triển khai thông qua lớp GaussianMixture và cấu hình chính để điều chỉnh là siêu tham số “n_cluster” được sử dụng để chỉ định số cụm ước tính trong dữ liệu Ví dụ đầy đủ được liệt kê dưới đây 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # phân cụm hỗn hợp gaussian từ numpy nhập duy nhất từ numpy nhập ở đâu từ sklearn. bộ dữ liệu nhập make_classification từ sklearn. hỗn hợp nhập Hỗn hợp Gaussian từ matplotlib nhập pyplot # xác định tập dữ liệu X, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4) # xác định mô hình model = GaussianMixture(n_components=2) #phù hợp với mô hình mô hình. phù hợp(X) # gán một cụm cho mỗi ví dụ yhat = mô hình. dự đoán(X) # truy xuất các cụm duy nhất cụm = duy nhất(yhat) # tạo biểu đồ phân tán cho các mẫu từ mỗi cụm cho cụm trong cụm. # lấy chỉ mục hàng cho các mẫu có cụm này row_ix = ở đâu(yhat == cluster) # tạo phân tán của các mẫu này pyplot. phân tán(X[row_ix, 0], X[row_ix, 1]) # hiển thị cốt truyện pyplot. hiển thị() Chạy ví dụ phù hợp với mô hình trên tập dữ liệu huấn luyện và dự đoán một cụm cho từng ví dụ trong tập dữ liệu. Sau đó, một biểu đồ phân tán được tạo với các điểm được tô màu bởi cụm được chỉ định của chúng Trong trường hợp này, chúng ta có thể thấy rằng các cụm được xác định hoàn hảo. Điều này không có gì đáng ngạc nhiên khi tập dữ liệu được tạo dưới dạng hỗn hợp của Gaussian lấy mẫu cụm với ví dụ là gì?Ví dụ về chọn mẫu cụm một giai đoạn – Một tổ chức phi chính phủ muốn tạo mẫu gồm các bé gái ở năm thị trấn lân cận để cung cấp dịch vụ giáo dục . Bằng phương pháp chọn mẫu một giai đoạn, tổ chức phi chính phủ chọn ngẫu nhiên các thị trấn (cụm) để tạo thành một mẫu và mở rộng trợ giúp cho các em gái bị thiệt thòi trong giáo dục ở các thị trấn đó.
Phương pháp lấy mẫu theo cụm là gì?Lấy mẫu theo cụm là gì? . Lý tưởng nhất là các cụm nên là các đại diện nhỏ của toàn bộ dân số. a probability sampling method in which you divide a population into clusters, such as districts or schools, and then randomly select some of these clusters as your sample. The clusters should ideally each be mini-representations of the population as a whole.
Lấy mẫu cụm trong học máy là gì?Lấy mẫu cụm là một loại lấy mẫu xác suất trong đó mọi phần tử của tổng thể được chọn như nhau, chúng tôi sử dụng các tập hợp con của tổng thể làm phần lấy mẫu thay vì các phần tử riêng lẻ để lấy mẫu
Ba loại lấy mẫu cụm là gì?Có ba loại lấy mẫu cụm. phân cụm một giai đoạn, hai giai đoạn và nhiều giai đoạn . Trong cả ba loại, trước tiên bạn chia tổng thể thành các cụm, sau đó chọn ngẫu nhiên các cụm để sử dụng trong mẫu của bạn. |