Lựa chọn tính năng cho các vấn đề phân cụm


9

Tôi đang cố gắng tạo nhóm các bộ dữ liệu khác nhau bằng các thuật toán không được giám sát (phân cụm). Vấn đề là tôi có nhiều tính năng (~ 500) và một số ít trường hợp (200-300).

Cho đến nay tôi thường chỉ làm các vấn đề phân loại mà tôi luôn gắn nhãn dữ liệu là tập huấn luyện. Ở đó, tôi đã sử dụng một số tiêu chí (ví dụ: Random.forest.importance hoặc information.gain) để đặt trước các tính năng và sau đó tôi đã sử dụng lựa chọn chuyển tiếp liên tục cho những người học khác nhau để tìm các tính năng liên quan.

Bây giờ tôi thấy rằng trong trường hợp học tập không giám sát, tôi không có bất kỳ tiêu chí nào cho sự chọn lọc trước và tôi cũng không thể sử dụng lựa chọn chuyển tiếp liên tiếp (ít nhất là không phải trong gói mlr).

Tôi đã tự hỏi nếu tôi có thể làm một phân tích thành phần chính trước đây để tìm một số lượng nhỏ các tính năng để tìm ra thuật toán phân cụm của tôi. Hay bạn có ý tưởng nào khác không?

Cảm ơn

biên tập:

Ok, vì vậy sau một số nghiên cứu trực tuyến tôi có thể cập nhật câu hỏi của mình một chút: Trước hết tôi đã đọc một số bài viết không khuyến khích việc sử dụng PCA trước khi phân cụm thuật toán, vì hai lý do:

  • Các PC là chức năng của tất cả các tính năng, do đó khó có thể liên kết kết quả với tập dữ liệu ban đầu và do đó khó diễn giải hơn

  • Hơn nữa, nếu bạn gặp vấn đề là trong thực tế chỉ có một phần rất nhỏ các tính năng của bạn hữu ích để thực hiện phân cụm, thì không nói rằng các tính năng này cũng mô tả phương sai lớn nhất trong số các mẫu (đó là những gì PC làm)

Vì vậy, PCA thì khỏi bàn ...

Bây giờ tôi trở lại ý tưởng ban đầu của mình để thực hiện lựa chọn chuyển tiếp liên tiếp để phân cụm.

Biện pháp hiệu suất nào bạn muốn giới thiệu? (Tôi đã nghĩ về Dunn-Index) Thuật toán phân cụm nào sẽ dẫn đến các cụm có cùng kích thước hoặc ít hơn? (đối với phân cụm theo cấp bậc, tôi thường nhận được một cụm với một ngoại lệ duy nhất và một cụm khác với tất cả các phần còn lại -> vì vậy tôi sẽ cần một cái gì đó bảo vệ chống lại các ngoại lệ)

Hy vọng các bạn có thể giúp tôi ...


Rừng ngẫu nhiên có thể được áp dụng trong các vấn đề không được giám sát. Và tôi nghĩ rằng bạn vẫn có thể trích xuất một số tính năng thông tin trong quá trình này.
amanita kiki

Câu trả lời:


11

Tôi có một vài suy nghĩ để chia sẻ về việc giảm kích thước trong các vấn đề học tập không được giám sát. Để trả lời, tôi đã cho rằng sự quan tâm của bạn là "chạm cao", sự tham gia của con người viết giải thích cụm trái ngược với cách tiếp cận tự động, chìa khóa trao tay, hộp đen và phương pháp học máy "chạm thấp" trong đó diễn giải được nhấn mạnh một cách có chủ ý . Nếu đó là cái sau, tại sao bạn thậm chí sẽ đặt câu hỏi? Ngoài ra, lưu ý rằng tôi đã có rất nhiều kinh nghiệm chạy các giải pháp cụm trên nhiều môi trường kinh doanh trong nhiều năm, bao gồm tiếp thị B2C chiến lược, đấu trường công nghệ B2B và chính sách giáo dục (phân cụm học sinh và trường học).

Trước tiên, tôi có một câu hỏi về nhận xét của bạn liên quan đến việc "nhóm các bộ dữ liệu khác nhau." Tôi không biết ý của bạn là gì hoặc nó có thể ảnh hưởng đến cách tiếp cận như thế nào và hy vọng bạn có thể giải thích.

Tôi muốn thách thức giả định của bạn ở # 1 ở trên rằng các giải pháp dựa trên PCA là "khó diễn giải". Những lý do thậm chí chạy PCA như một bước sơ bộ trong phân cụm chủ yếu liên quan đến vệ sinh của giải pháp kết quả trong chừng mực vì nhiều thuật toán phân cụm rất nhạy cảm với tính năng dự phòng. PCA thu gọn sự dư thừa này thành một số ít các thành phần có thể quản lý được, do đó giảm thiểu những thách thức và khó khăn mà bạn lưu ý liên quan đến việc lựa chọn tính năng. Mặc dù sự thật là các thành phần đầu ra từ PCA làm mờ độ chi tiết và độ đặc hiệu của các tính năng riêng lẻ, đây là một vấn đề nếu bạn chỉ dựa vàotrên các thành phần trong việc phân tích kết quả. Nói cách khác, bạn không bị khóa trong việc sử dụng chỉ các thành phần để giải thích cụm. Không chỉ vậy, bạn thậm chí không cần quan tâm kích thước của yếu tố "có nghĩa là gì". Chúng chỉ là một phương tiện trung gian và (cuối cùng) dùng một lần để kết thúc tạo điều kiện cho một giải pháp hành động. Nhưng khi đưa ra quan điểm này, tôi khác với nhiều học viên vì các đội có thể, sẽ và dành nhiều tuần cẩn thận để xây dựng một giải pháp nhân tố "có ý nghĩa". Đối với tôi, đây là một sự lãng phí không hiệu quả về thời gian và tiền bạc của khách hàng.

Tại thời điểm này sẽ có một thuyền cân nhắc kỹ thuật để giải quyết. Đối với một, nếu thuật toán PCA của bạn không có tỷ lệ bất biến (ví dụ: OLS so với ML), thì mọi giải pháp PCA kết quả sẽ bị biến dạng, tải nặng hơn vào các tính năng phương sai cao. Trong những trường hợp này, các tính năng của bạn cần được xử lý trước hoặc biến đổi theo một cách nào đó để làm phẳng phương sai này. Có một số lượng lớn các khả năng ở đây bao gồm tiêu chuẩn hóa có nghĩa là, tiêu chuẩn hóa phạm vi hoặc IQR, tỷ lệ lặp lại, v.v. Tận dụng sự chuyển đổi đó mang lại giải pháp tốt nhất, dễ hiểu nhất.

Khi một giải pháp cụm được tạo, giải thích được thúc đẩy tốt nhất (theo kinh nghiệm của tôi) bằng cách bỏ qua các thành phần và gấp lại trong các tính năng ban đầu cùng với bất kỳ thông tin mô tả bổ sung nào không được sử dụng trực tiếp trong giải pháp. Tại thời điểm này, một số heuristic là hướng dẫn tốt nhất cho cái nhìn sâu sắc định tính. Điều này có thể dễ dàng như việc tạo một bảng tính cấu hình các cụm của bạn dựa trên mức trung bình hoặc trung bình cho từng tính năng (các hàng của trang tính), cho từng cụm (các cột) cũng như một cột bổ sung đại diện cho ý nghĩa chung cho tổng mẫu của bạn . Sau đó, bằng cách lập chỉ mục trung bình cụm cho mỗi tính năng so với giá trị trung bình (và nhân với 100), một heuristic được tạo giống như điểm IQ trong chừng mực khoảng 100 "là" bình thường "IQ hoặc hành vi trung bình, các chỉ mục từ 120+ trở lên cho thấy khả năng cao là một tính năng "đúng" về hành vi của một cụm và các chỉ số từ 80 trở xuống là biểu thị cho các tính năng "không đúng" của cụm. Các chỉ số 120+ và 80 trở xuống này giống như các bài kiểm tra proxy cho tầm quan trọng của một tính năng nhất định trong việc điều khiển giải pháp. Tất nhiên, bạn có thể chạy giữa các bài kiểm tra nhóm có ý nghĩa và, tùy thuộc vào kích thước mẫu, sẽ nhận được câu trả lời khác nhau xung quanh các quy tắc nhanh và bẩn này.

Ok ... sau tất cả những điều đó, giả sử bạn vẫn phản đối việc sử dụng PCA làm đầu vào trực tiếp vào thuật toán phân cụm, vấn đề vẫn là về cách chọn một bộ tính năng giảm. PCA vẫn có thể hữu ích ở đây vì PCA giống như chạy hồi quy mà không có biến phụ thuộc. Các tính năng tải hàng đầu trên mỗi thành phần có thể trở thành đầu vào vào thuật toán cụm.

Theo quan điểm của bạn về số lượng lớn các tính năng và kích thước mẫu tương đối nhỏ của dữ liệu của bạn, quy tắc thông thường trong nhiều phân tích đa biến "thông tin đầy đủ" là tối thiểu khoảng 10 quan sát cho mỗi tính năng. Có một số phương pháp chuyên dụng có thể được tận dụng để giải quyết vấn đề này. Chẳng hạn, bình phương tối thiểu một phần (PLS) được Herman Wold phát triển lần đầu tiên trong cuốn sách năm 1990 Lý thuyết thực nghiệm của ông để sử dụng trong các lĩnh vực như hóa học phải đối mặt với vấn đề chính xác này. Nó là yếu tố phân tích trong tự nhiên nhưng ít nghiêm ngặt hơn trong việc yêu cầu một n lớn để tạo ra các kích thước. Các giải pháp khác bao gồm các phương pháp tiếp cận ngẫu nhiên, giống như "phân chia và chinh phục", được sử dụng với lượng thông tin khổng lồ. Những phương pháp này được xem xét trong pdf nàyhttp://www.wisdom.weizmann.ac.il/~harel/ con / Divide% 20and% 20Conquer.pdf

Nhưng giả sử bạn đã quyết định rằng bạn vẫn không muốn làm gì với phân tích nhân tố và đã chết khi chạy một loại quy trình lựa chọn "tuần tự" được giám sát. Theo quan điểm của tôi, vấn đề quan trọng nhất là việc tìm kiếm một chỉ số hiệu suất sau đại học (Dunn Index) và nhiều hơn về việc xác định một proxy phù hợp - một biến phụ thuộc - để thậm chí có thể thực hiện phương pháp này. Quyết định này hoàn toàn là một chức năng của bản án và tình trạng doanh nghiệp vừa và nhỏ của bạn ghi lại dữ liệu của bạn. Không có "thực tiễn tốt nhất", câu trả lời dễ dàng hơn nhiều cho điều này và đưa ra cách bạn mô tả dữ liệu của mình, thách thức không nhỏ.

Một khi quyết định đó được đưa ra, thì có hàng trăm giải pháp lựa chọn biến có thể có để lựa chọn. Lựa chọn biến là một lĩnh vực chủ đề mà mỗi nhà thống kê và anh trai của họ đã xuất bản một bài báo. Cách tiếp cận ưa thích của bạn dường như là "lựa chọn chuyển tiếp tuần tự" là tốt.

Điều đáng chú ý là các mô hình học tập có giám sát tồn tại trong một giải pháp cụm là một phần của thuật toán. Ví dụ về điều này bao gồm các cách tiếp cận lớn và rất linh hoạt được gọi là mô hình lớp tiềm ẩn. Bản chất của các mô hình LC là chúng là hai giai đoạn: trong giai đoạn một, một DV được xác định và mô hình hồi quy được xây dựng. Trong giai đoạn thứ hai, bất kỳ sự không đồng nhất trong đầu ra dư từ mô hình - một vectơ tiềm ẩn duy nhất - được phân vùng thành các "lớp" tiềm ẩn. Có một cái nhìn tổng quan về mô hình LC trong cuộc thảo luận CV này ở đây ... Nghi ngờ mô hình logit đa lớp của lớp tiềm ẩn

Hi vọng điêu nay co ich.


Cảm ơn bạn đã dành thời gian để trả lời câu hỏi của tôi rất nhiều. Đầu tiên, thật buồn cười khi bạn đề cập đến hóa học vì đây chính xác là lĩnh vực tôi đang làm việc. Tôi đang cố gắng tìm các cụm trong các phép đo của các mẫu khác nhau và các tính năng của tôi là các tín hiệu trong phổ nmr. Đây cũng là lý do chính khiến tôi nghĩ đến việc loại bỏ PCA từ rất sớm, vì mục tiêu phân tích của tôi là liên kết các cụm với một số tính năng (tín hiệu) thực tế. Tôi không chết khi sử dụng một lựa chọn tuần tự, nó chỉ là những gì tôi đã sử dụng cho đến nay. Tôi sẽ có một cái nhìn vào các liên kết bạn đã đưa ra.
JohnDoe

Đó là buồn cười về hóa học. Nói chung, cuốn sách của Wold là một cuốn sách hay. Những loại "đối tượng" bao gồm các mẫu? Và các hình ảnh nmrs là gì?
Mike Hunter

Các mẫu là chất chiết xuất từ ​​thực vật và lấy phổ 1H-nmr. Nhiệm vụ của tôi là hoàn toàn khám phá. Tôi phải tìm bất kỳ cụm nào mà chúng ta muốn liên quan đến các kiểu gen khác nhau sau này hoặc các tính năng khác nhau của cây như chịu hạn hán, v.v. Không dễ để tìm thấy một điểm khởi đầu tốt để tìm ra bộ chuyển hóa chính xác / các tính năng giúp phân chia các cụm, vì sẽ có các cụm khác nhau được tạo bởi các tính năng khác nhau cho các câu hỏi khác nhau.
JohnDoe

Do đó, tôi nghĩ rằng cách tiếp cận tuần tự có thể hoạt động tốt nhất: - tìm một tập hợp các tính năng để phân cụm dữ liệu - sau đó xóa các tính năng đó khỏi toàn bộ và bắt đầu lại Cách này tôi hy vọng tìm thấy một số cụm mà sau này tôi có thể liên quan đến các câu hỏi khác nhau
JohnDoe

1
Một cái gì đó để xem xét là so sánh bất kỳ công việc thăm dò nào với một cụm cụm được xác định trước hoặc xác định cũng được gọi là phân tích cụm "xác nhận". Tôi đề nghị điều này bởi vì có vẻ như bạn và nhóm của bạn có một số giả thuyết mạnh mẽ về sự hình thành cụm như là một chức năng của, ví dụ, thực vật "chống hạn hán-căng thẳng". Tôi nghĩ rằng bạn sẽ thấy rằng công việc thăm dò sẽ mang lại những hiểu biết và kết quả vượt trội. Phân cụm khám phá tận dụng thông tin đầy đủ có sẵn trong dữ liệu của bạn trong khi quy tắc gán "xác nhận" thường tận dụng một số tính năng tương đối
Mike Hunter

1

Tất cả bạn cần là một tiêu chí của chất lượng phân cụm. Đây là ý tưởng: bạn phân chia dữ liệu trên tàu và kiểm tra, xây dựng phân cụm trên phần tàu; sử dụng phân cụm này để phân cụm từng phần tử của tập kiểm tra (theo cụm gần nhất); xây dựng một cụm riêng trên bộ thử nghiệm; tìm sự tương đồng của phân cụm trong thử nghiệm với phân cụm dự đoán. Sự tương đồng này là tiêu chí của chất lượng phân cụm. Bây giờ, làm thế nào để đo lường sự tương đồng này là tùy thuộc vào bạn. Khi bạn nhận được nó, bạn chọn tập hợp con các tính năng để tối đa hóa sự tương tự này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.