Giữ sổ chạy thử nghiệm và kết quả


11

Tôi là một nhà nghiên cứu và tôi thích thử nghiệm các giải pháp khả thi, vì vậy tôi có xu hướng chạy rất nhiều thử nghiệm. Ví dụ: nếu tôi đang tính điểm tương đồng giữa các tài liệu, tôi có thể muốn thử nhiều biện pháp. Trong thực tế, đối với mỗi biện pháp tôi có thể cần thực hiện một vài lần chạy để kiểm tra hiệu quả của một số tham số.

Cho đến nay, tôi đã theo dõi các đầu vào chạy và kết quả của chúng bằng cách viết kết quả vào các tệp có nhiều thông tin về đầu vào. Vấn đề là đôi khi việc truy xuất một kết quả cụ thể trở thành một thách thức, ngay cả khi tôi cố gắng thêm thông tin đầu vào vào tên tệp. Tôi đã thử sử dụng bảng tính có liên kết đến kết quả nhưng điều này không tạo ra sự khác biệt lớn.

Những công cụ / quy trình nào bạn sử dụng để lưu giữ các thí nghiệm của bạn?


1
Tôi muốn thêm thẻ thực hành tốt nhất nhưng tôi không thể vì tôi không có 150 điểm danh tiếng. Thành thật mà nói, tôi không hiểu làm thế nào một người mới có thể thực sự là người đóng góp cho trang web với tất cả các quy tắc như vậy. Tôi thấy rất nhiều câu hỏi mà tôi biết câu trả lời, nhưng tôi không thể trả lời hoặc thậm chí bỏ phiếu cho câu trả lời nếu nó đã có sẵn.
trí tuệ máy

Tôi nghĩ rằng đây là một câu hỏi lập trình chung chung, vì vậy StackOverflow có thể tốt hơn. Bạn có thể bao gồm một đoạn trích về những gì bạn đang cố gắng thực hiện và tại sao nó chậm và yêu cầu tối ưu hóa được đề xuất.
Sean Owen

Thật ra tôi nghĩ opendata.stackexchange.com sẽ phù hợp hơn.
Emre

1
Gần đây tôi đã có một cái nhìn nhanh chóng xung quanh thị trường cho các sản phẩm sẽ giúp với điều đó, và tôi muốn chia sẻ những phát hiện của tôi. Có hai sản phẩm SAAS có thể giúp nhóm Khoa học dữ liệu chia sẻ các phân tích được thực hiện trong Python và R. Cả hai đều có một máy tính xách tay IPython như IDE và cả hai đều xây dựng xung quanh nó rất nhiều tính năng để chạy và chia sẻ công việc. Tôi thấy cả hai gần như giống hệt nhau: [Phòng thí nghiệm dữ liệu Domino] [1] và [Sense.io] [2] [1]: dominodirthab.com [2]: sense.io
trí tuệ máy

Ngoài ra còn có môi trường Machine Learning cho Hadoop, theo dõi các hoạt động của Công việc; [h2o.ai] [3]. Nó không có nghĩa là một công cụ để hợp lý hóa công việc của nhóm dữ liệu, nhưng với một số quy ước đặt tên cẩn thận, nó có thể giúp ích rất nhiều. Cái này phù hợp nhất với [3]: h2o.ai
trí tuệ máy

Câu trả lời:



5

Gần đây tôi gặp phải một vấn đề tương tự: Làm thế nào để quản lý trích xuất nhiều tính năng từ một tập dữ liệu lớn, mà không biết trước tất cả chúng sẽ là gì. (Ngay cả việc tính toán giá trị trung bình nhiều lần sẽ tốn kém về mặt tính toán.) Hơn nữa, tôi sẽ quản lý dự đoán dựa trên các bộ tính năng khác nhau như thế nào? Có nghĩa là, nếu tôi đã thêm một tính năng mới, làm thế nào tôi biết mô hình nào sẽ đào tạo về các tính năng mới? Nó có thể nhanh chóng ném tuyết thành một mớ hỗn độn lớn.

Giải pháp hiện tại của tôi là theo dõi tất cả trong cơ sở dữ liệu NoQuery cục bộ (MongoDB). Ví dụ: tôi có thể có một bộ sưu tập features, mỗi mục trong đó có một tên, mô tả về cách tính năng được tính toán, tệp python chạy trích xuất, v.v.

Tương tự như vậy, một bộ sưu tập modelsbao gồm các mô hình chạy trên dữ liệu. Mỗi mục có thể có một tên, một danh sách các tính năng được sử dụng để huấn luyện mô hình, các tham số cuối cùng của nó, các giá trị dự đoán trên tập kiểm tra được tổ chức, các số liệu về cách thức hoạt động của mô hình, v.v.

Từ quan điểm thuận lợi của tôi, điều này có một số lợi ích:

  • Bằng cách lưu dự đoán, tôi có thể sử dụng chúng sau này trong các dự đoán.
  • Bởi vì tôi theo dõi những tính năng nào đã được sử dụng, tôi biết những tính năng nào cần đào tạo lại khi tôi trích xuất nhiều tính năng hơn.
  • Bằng cách lưu mô tả mô hình, tôi đảm bảo rằng tôi luôn biết những gì tôi đã thử. Tôi không bao giờ phải tự hỏi, "Tôi đã thử LASSO với các tham số chính quy được đặt bởi CV tìm kiếm dạng lưới chưa?" Tôi luôn có thể tìm kiếm nó, và xem nó đã thành công như thế nào.

Từ câu hỏi của bạn, có vẻ như bạn có thể điều chỉnh cách tiếp cận này với quy trình làm việc của vấn đề. Cài đặt Mongo hoặc cơ sở dữ liệu khác về lựa chọn, sau đó lưu từng lần chạy thử nghiệm, đầu vào của nó, kết quả của nó và bất cứ điều gì khác mà bạn có thể muốn theo dõi trong suốt quá trình của dự án. Điều này sẽ dễ dàng truy vấn hơn nhiều so với một bảng tính, ít nhất.


Tôi muốn upvote nhưng tôi không được phép.
trí tuệ máy móc
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.