Để tiếp tục câu trả lời của Deigo, giới hạn độ phức tạp mẫu chuẩn từ lý thuyết học tập cho bạn biết rằng nếu bạn hài lòng với việc tìm một chương trình "gần đúng", bạn không cần phải thử rất nhiều điểm. Hãy nói rằng chúng tôi đang mã hóa các chương trình nhị phân, do đó chỉ có chương trình có độ dài d. Cho phép giả cũng rằng có một số phân phối qua ví dụ đầu vào . Có lẽ mục tiêu của bạn là tìm một chương trình mà bạn khá chắc chắn là gần như đúng ("Có lẽ là gần đúng", như trong mô hình học tập của Valiants PAC). Nghĩa là, bạn muốn chạy một thuật toán sẽ lấy một số lượng nhỏ mẫu cùng với và sẽ có xác suất ít nhất là D x ~ D f ( x ) ( 1 - δ ) P f ( 1 - ε ) D2dDx∼Df(x)(1−δ)sản lượng một số chương trình mà đồng ý với trên ít nhất một phần đầu vào rút ra từ . Pf(1−ϵ)D
Chúng ta chỉ cần vẽ ví dụ và xuất ra bất kỳ chương trình có độ dài đồng ý với trên tất cả các ví dụ. (Một người được đảm bảo tồn tại vì chúng ta giả sử có độ phức tạp Kolmogorov nhiều nhất ) ...x ∼ D P ≤ d f f dmx∼DP≤dffd
Xác suất mà một chương trình cụ thể không đồng ý với trên nhiều hơn một phần của các ví dụ là phù hợp với các ví dụ chúng tôi đã chọn là gì? Đó là nhiều nhất . Chúng tôi muốn xác suất này ở mức tối đa để chúng tôi có thể liên kết ràng buộc trên tất cả các chương trình và nói rằng với xác suất ít nhất , không có chương trình "xấu" nào phù hợp với các ví dụ rút ra của chúng tôi. Giải quyết, chúng tôi thấy rằng chỉ cần lấy các ví dụ
. (tức là chỉ tuyến tính nhiều trong độ phức tạp Kolmogorov củaf ε m ( 1 - ε ) m δ / 2 d 2 d 1 - δ m ≥ 1Pfϵm(1−ϵ)mδ/2d2d1−δf
m≥1ϵ(d+log1/δ)
f...)
BTW, các đối số như thế này có thể được sử dụng để biện minh cho "Occam's Razor": đưa ra một số quan sát cố định, trong số tất cả các lý thuyết giải thích chúng, bạn nên chọn một lý thuyết có độ phức tạp Kolmogorov thấp nhất, bởi vì có ít khả năng bị quá mức nhất.
Tất nhiên, nếu bạn chỉ muốn kiểm tra một chương trình cố định duy nhất theo cách này, bạn chỉ cần các ví dụ ...O(log(1/δ)/ϵ)