Khi làm việc về phân tích dữ liệu khám phá và phát triển các thuật toán, tôi thấy rằng phần lớn thời gian của tôi dành cho một chu kỳ trực quan hóa, viết một số mã, chạy trên tập dữ liệu nhỏ, lặp lại. Dữ liệu tôi có xu hướng là loại công cụ kết hợp thị giác / cảm biến máy tính và các thuật toán nặng về tầm nhìn (ví dụ: phát hiện và theo dõi đối tượng, v.v.) và các thuật toán ngoài kệ không hoạt động trong ngữ cảnh này. Tôi thấy rằng việc này cần rất nhiều lần lặp (ví dụ: để quay số theo loại thuật toán hoặc điều chỉnh các tham số trong thuật toán hoặc để có được một trực quan hóa đúng) và thời gian chạy ngay cả trên một tập dữ liệu nhỏ cũng khá dài, vì vậy tất cả cùng nhau phải mất một thời gian.
Làm thế nào để phát triển thuật toán có thể được tăng tốc và có thể mở rộng hơn?
Một số thách thức cụ thể:
Làm thế nào có thể giảm số lần lặp lại? (Đặc biệt khi loại thuật toán nào, huống chi là chi tiết cụ thể của thuật toán, dường như không dễ thấy trước mà không thử các phiên bản khác nhau và kiểm tra hành vi của chúng)
Làm thế nào để chạy trên các tập dữ liệu lớn hơn trong quá trình phát triển? (Thường đi từ tập dữ liệu nhỏ đến lớn là khi nhìn thấy một loạt các hành vi mới và các vấn đề mới)
Làm thế nào các tham số thuật toán có thể được điều chỉnh nhanh hơn?
Làm thế nào để áp dụng các công cụ loại máy học để phát triển thuật toán chính nó? (Ví dụ: thay vì viết thuật toán bằng tay, hãy viết một số khối xây dựng đơn giản và kết hợp chúng theo cách học được từ vấn đề, v.v.)