Một số bộ dữ liệu tốt để học các thuật toán học máy cơ bản là gì và tại sao?


19

Tôi chưa quen với việc học máy và tìm kiếm một số bộ dữ liệu mà qua đó tôi có thể so sánh và đối chiếu sự khác biệt giữa các thuật toán học máy khác nhau (Cây quyết định, Tăng tốc, SVM và Mạng thần kinh)

Tôi có thể tìm bộ dữ liệu đó ở đâu? Tôi nên tìm kiếm gì trong khi xem xét một tập dữ liệu?

Sẽ thật tuyệt nếu bạn có thể chỉ ra một số bộ dữ liệu tốt và cũng cho tôi biết điều gì làm cho chúng trở thành một bộ dữ liệu tốt?


6
Tôi tự hỏi nếu câu hỏi này không phù hợp hơn với opendata.stackexchange.com ... Về phần dữ liệu, hầu hết các sách giáo khoa đều đề cập đến các bộ dữ liệu đó và làm cho chúng có sẵn, nhiều phần mềm đã có sẵn trong phần mềm thống kê hoặc trong các thư viện cho phần mềm đó. Bạn cũng có thể xem archive.ics.uci.edu/ml/datasets.html . Tất nhiên, một câu hỏi khác là điều gì làm cho một số bộ dữ liệu "tốt" cho việc học và một số "xấu" - đó là một câu hỏi thú vị.
Tim

Bạn sẽ tìm thấy một số bộ dữ liệu dưới dạng các gói trên CRAN, như: ElemStatLearn và các bộ khác.
kjetil b halvorsen

2
@Tim Bởi vì có một khía cạnh sư phạm cho câu hỏi này (ví dụ: một ví dụ về tập dữ liệu "tốt" cho mục đích học tập là một ví dụ cho thấy các thuật toán khác nhau cho kết quả rất khác nhau) Tôi nghĩ rằng nó phù hợp với CV hơn so với OpenData.
Cá bạc


@Silverfish: Điều này đã được thảo luận trên Meta - Câu hỏi về Bộ dữ liệu: Các trường hợp ngoại lệ có thể xảy ra? - & dường như đã có thỏa thuận chung với quan điểm của bạn. Nhưng tôi vẫn nghĩ rằng q. là khá rộng - điều gì phân biệt rõ ràng với Định vị các mẫu dữ liệu có sẵn miễn phí ?
Scortchi - Phục hồi Monica

Câu trả lời:


16

Các bộ dữ liệu trong các trang web sau đây có sẵn miễn phí. Các bộ dữ liệu này đã được sử dụng để dạy các thuật toán ML cho sinh viên bởi vì hầu hết có các mô tả với các bộ dữ liệu. Ngoài ra, nó đã được đề cập đến loại thuật toán được áp dụng.

  1. UCI- Kho lưu trữ máy học
  2. ML Comp
  3. Hình ảnh Mammo
  4. Hoa Mộc Lan

11

Kaggle có một loạt các bộ dữ liệu bạn có thể sử dụng để thực hành.

(Tôi ngạc nhiên khi nó không được đề cập cho đến nay!)

Nó có hai thứ (trong số nhiều thứ khác) làm cho nó trở thành một tài nguyên vô giá:

  • Rất nhiều bộ dữ liệu sạch. Mặc dù các bộ dữ liệu không có tiếng ồn không thực sự đại diện cho các bộ dữ liệu trong thế giới thực, nhưng chúng đặc biệt phù hợp với mục đích của bạn - triển khai các thuật toán ML.
  • Bạn cũng có thể xem các mô hình ML của người khác cho cùng một bộ dữ liệu, đây có thể là một cách thú vị để nhận một số hack trên đường đi. Không cần phải nói rằng loại tiếp xúc bạn nhận được từ việc học hỏi từ các học viên tốt nhất là, giống như bất cứ điều gì khác, siêu hữu ích.

1
Đây thực sự nên là câu trả lời hàng đầu vì ngoài rất nhiều bộ dữ liệu, các diễn đàn cho mỗi thử thách là một nguồn tài nguyên vô giá để chọn các kỹ thuật và thủ thuật, cùng với các ví dụ mã.
Alex R.

2

Trước tiên, tôi khuyên bạn nên bắt đầu với dữ liệu mẫu được cung cấp cùng với phần mềm. Hầu hết các bản phân phối phần mềm bao gồm dữ liệu mẫu mà bạn có thể sử dụng để làm quen với thuật toán mà không phải xử lý các loại dữ liệu và đánh vật dữ liệu theo đúng định dạng của thuật toán. Ngay cả khi bạn đang xây dựng một thuật toán từ đầu, bạn có thể bắt đầu với mẫu từ một triển khai tương tự và so sánh hiệu suất.

Thứ hai, tôi khuyên bạn nên thử nghiệm với các bộ dữ liệu tổng hợp để cảm nhận về cách thuật toán thực hiện khi bạn biết cách dữ liệu được tạo và tỷ lệ tín hiệu / nhiễu.

Trong R, bạn có thể liệt kê tất cả các tập dữ liệu trong các gói hiện được cài đặt bằng lệnh này:

data(package = installed.packages()[, 1])

Gói mlbench R có bộ dữ liệu thực và có thể tạo bộ dữ liệu tổng hợp hữu ích cho việc nghiên cứu hiệu suất thuật toán.

Scikit-learn của Python có dữ liệu mẫu và cũng tạo ra tập dữ liệu tổng hợp / đồ chơi.

SAS có sẵn tập dữ liệu đào tạo và dữ liệu mẫu SPSS được cài đặt cùng với phần mềm tại C: \ Program Files \ IBM \ SPSS \ Statistics \ 22 \ Samples

Cuối cùng, tôi sẽ xem dữ liệu trong tự nhiên. Tôi sẽ so sánh hiệu suất của các thuật toán khác nhau và các tham số điều chỉnh trên các tập dữ liệu thực. Điều này thường đòi hỏi nhiều công việc hơn vì bạn sẽ hiếm khi tìm thấy tập dữ liệu với các kiểu dữ liệu và cấu trúc mà bạn có thể thả ngay vào thuật toán của mình.

Đối với dữ liệu trong tự nhiên, tôi khuyên bạn nên:

Lưu trữ dữ liệu của reddit

Danh sách của KDnugget


1
Đối với những người không có R, & không muốn tải xuống chỉ để có quyền truy cập vào các bộ dữ liệu này, các bộ dữ liệu & mô tả có sẵn trực tuyến tại đây .
gung - Phục hồi Monica

0

Các Iris bộ dữ liệu tay xuống. Nó cũng ở cơ sở R.


1
Hãy trả lời phần thực chất của câu hỏi: "... cũng cho tôi biết điều gì làm cho họ trở thành một bộ dữ liệu tốt?"
whuber

0

Theo tôi, bạn có thể bắt đầu với các bộ dữ liệu nhỏ không có quá nhiều tính năng.

Một ví dụ sẽ là bộ dữ liệu Iris (để phân loại). Nó có 3 lớp, 50 mẫu cho mỗi lớp tổng cộng 150 điểm dữ liệu. Một tài nguyên tuyệt vời để giúp bạn khám phá bộ dữ liệu này là loạt video của Data School.

Một bộ dữ liệu khác để kiểm tra là bộ dữ liệu Chất lượng rượu vang từ kho lưu trữ UCI -ML. Nó có 4898 điểm dữ liệu với 12 thuộc tính.

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.