Máy học lời nguyền của chiều giải thích?


14

Tôi đang gặp khó khăn để hiểu lời nguyền của chiều. Cụ thể, tôi đã xem qua nó trong khi thực hiện scikit-learnhướng dẫn trong python. Ai đó có thể vui lòng giải thích dưới đây một cách đơn giản hơn? Xin lỗi, tôi đã cố gắng hiểu trong thời gian dài nhất và không thể hiểu làm thế nào họ đưa ra phép tính cho số lượng ví dụ đào tạo để đạt được một công cụ ước tính KNN hiệu quả?

Đây là lời giải thích:

Để một công cụ ước tính có hiệu quả, bạn cần khoảng cách giữa các điểm lân cận nhỏ hơn một số giá trị d, điều này phụ thuộc vào vấn đề. Trong một chiều, điều này đòi hỏi trung bình n ~ 1 / d điểm. Trong ngữ cảnh của ví dụ KNN ở trên, nếu dữ liệu được mô tả chỉ bằng một tính năng với các giá trị nằm trong khoảng từ 0 đến 1 và với n quan sát đào tạo, thì dữ liệu mới sẽ không còn quá 1 / n. Do đó, quy tắc quyết định lân cận gần nhất sẽ có hiệu lực ngay khi 1 / n nhỏ so với quy mô của các biến thể tính năng giữa các lớp.

Nếu số lượng tính năng là p, thì bây giờ bạn yêu cầu n ~ 1 / d ^ p điểm. Giả sử rằng chúng tôi yêu cầu 10 điểm trong một chiều: Bây giờ cần 10 ^ p điểm theo kích thước p để mở khoảng trống [0, 1]. Khi p trở nên lớn, số lượng điểm đào tạo cần thiết cho một người ước lượng tốt sẽ tăng theo cấp số nhân.

liên kết tại đây

EDIT: cũng là dấu ngã ( ~) được cho là đại diện gần đúng trong ví dụ đó? hoặc toán tử python tilde?


2
Dấu ngã có nghĩa là "tỷ lệ thuận với"
reseter

@mbatchkarov Hà cảm ơn bạn. xấp xỉ và tỷ lệ thuận với những kết luận rất khác nhau lol

Câu trả lời:


11

Dịch đoạn đó:

Để có một tập hợp các tính năng mô tả một điểm dữ liệu. Có lẽ bạn đang nhìn vào thời tiết. Tập hợp các tính năng đó có thể bao gồm những thứ như nhiệt độ, độ ẩm, thời gian trong ngày, v.v. Vì vậy, mỗi điểm dữ liệu có thể có một tính năng (nếu bạn chỉ nhìn vào nhiệt độ) hoặc có thể có 2 tính năng (nếu bạn đang xem nhiệt độ và độ ẩm) và như vậy. Điều mà đoạn này nói là dựa trên số lượng kích thước mà dữ liệu của bạn có (có bao nhiêu tính năng), việc lập công cụ ước tính càng khó khăn hơn. Điều này là do nếu bạn chỉ có một tính năng của dữ liệu hoặc dữ liệu 1 chiều, thì khi bạn đi đến biểu đồ dữ liệu này, bạn sẽ có một biểu đồ đường và tưởng tượng một biểu đồ đường giữa giả sử 0-50 độ C, chỉ mất 0-50 độ C 50 điểm ngẫu nhiên trước mỗi điểm dữ liệu là khoảng 1 độ so với bất kỳ điểm dữ liệu nào khác. Bây giờ hãy để ' Hãy nghĩ về 2 chiều, nói về độ ẩm và nhiệt độ, bây giờ sẽ khó hơn khi thấy rằng tất cả các điểm nằm trong đơn vị "d" của nhau. Hãy tưởng tượng nhiệt độ vẫn nằm trong khoảng 0-50 nhưng bây giờ độ ẩm cũng nằm trong khoảng 0 - 100%. Cần bao nhiêu điểm ngẫu nhiên để có được tất cả các điểm trong vòng 1 hoặc 2 của nhau? Bây giờ là 100 * 50 hoặc ~ 5.000! Bây giờ hãy tưởng tượng 3 chiều, v.v. Bạn bắt đầu cần nhiều điểm hơn để đảm bảo rằng mọi điểm đều nằm trong d của một số điểm khác. Để làm cho cuộc sống của bạn dễ dàng hơn, hãy thử giả sử "d" là 1 và xem điều gì sẽ xảy ra. Mong rằng sẽ giúp! Cần bao nhiêu điểm ngẫu nhiên để có được tất cả các điểm trong vòng 1 hoặc 2 của nhau? Bây giờ là 100 * 50 hoặc ~ 5.000! Bây giờ hãy tưởng tượng 3 chiều, v.v. Bạn bắt đầu cần nhiều điểm hơn để đảm bảo rằng mọi điểm đều nằm trong d của một số điểm khác. Để làm cho cuộc sống của bạn dễ dàng hơn, hãy thử giả sử "d" là 1 và xem điều gì sẽ xảy ra. Mong rằng sẽ giúp! Cần bao nhiêu điểm ngẫu nhiên để có được tất cả các điểm trong vòng 1 hoặc 2 của nhau? Bây giờ là 100 * 50 hoặc ~ 5.000! Bây giờ hãy tưởng tượng 3 chiều, v.v. Bạn bắt đầu cần nhiều điểm hơn để đảm bảo rằng mọi điểm đều nằm trong d của một số điểm khác. Để làm cho cuộc sống của bạn dễ dàng hơn, hãy thử giả sử "d" là 1 và xem điều gì sẽ xảy ra. Mong rằng sẽ giúp!


2
Đó là một lời giải thích tốt, nhưng còn phương trình họ cung cấp thì sao? Trong ví dụ tính năng 1 của bạn, nơi tôi muốn công cụ ước tính cách 1 độ, (tức là d = 1) thì phương trình của chúng n~1/dcó nghĩa là n cần xấp xỉ 1? Điều đó không có ý nghĩa nhiều?

Không có gì họ nói rằng nếu tính năng này có phạm vi 0-1 (của tôi có phạm vi 0-50) thì bạn sẽ 1 / d điểm sao cho mỗi điểm cách nhau từ điểm kia. Điều đó đúng với ví dụ của tôi vì bạn sẽ cần khoảng 50/1 điểm trong đó 1 là "d". Xin lỗi, thật khó hiểu khi loại các phương trình này ra nhưng tôi nghĩ điều đó sẽ giúp

12

matty-d đã cung cấp một câu trả lời rất hay, nhưng tôi cũng tìm thấy một câu trả lời khác giải thích vấn đề này không kém, từ một người dùng Quora Kevin Lacker:

Giả sử bạn có một đường thẳng dài 100 yard và bạn đã đánh rơi một đồng xu ở đâu đó trên đó. Nó sẽ không quá khó để tìm thấy. Bạn đi dọc theo hàng và mất hai phút.

Bây giờ hãy giả sử bạn có một ô vuông 100 yard ở mỗi bên và bạn đã bỏ một đồng xu ở đâu đó trên đó. Nó sẽ khá khó khăn, giống như tìm kiếm trên hai sân bóng đá bị mắc kẹt với nhau. Nó có thể mất nhiều ngày.

Bây giờ một khối lập phương 100 yard. Điều đó giống như tìm kiếm một tòa nhà 30 tầng có kích thước của một sân vận động bóng đá. Ừ

Khó khăn trong việc tìm kiếm trong không gian trở nên khó khăn hơn rất nhiều vì bạn có nhiều kích thước hơn. Bạn có thể không nhận ra điều này bằng trực giác khi nó chỉ được nêu trong các công thức toán học, vì tất cả chúng đều có cùng "chiều rộng". Đó là lời nguyền của chiều. Nó được đặt tên bởi vì nó không trực quan, hữu ích và đơn giản.


-1

Ví dụ đó có thể đưa ra một số trực giác của vấn đề, nhưng thực sự không phải là một bằng chứng nghiêm ngặt nào cả: đó chỉ là một ví dụ trong đó cần nhiều mẫu để có được vùng phủ sóng "tốt". Có thể có (và thực tế, ví dụ như các hình lục giác trong 2D đã có) che phủ hiệu quả hơn nhiều so với lưới thông thường ... (khu vực phức tạp của các chuỗi sai lệch thấp được dành cho việc này) ... và chứng minh rằng ngay cả với lớp phủ tốt hơn như vậy vẫn còn một số lời nguyền về chiều là một vấn đề hoàn toàn khác. Trên thực tế trong một số không gian chức năng nhất định thậm chí còn có cách để khắc phục vấn đề rõ ràng 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.