Nếu các kỹ thuật máy học tiếp tục cải thiện, vai trò của thuật toán trong tương lai là gì?


23

Chúng ta hãy nhìn vào tương lai khoảng 30 năm nữa. Hãy lạc quan và cho rằng các lĩnh vực liên quan đến học máy tiếp tục phát triển nhanh như những gì chúng ta đã thấy trong 10 năm qua. Điều đó sẽ là tuyệt vời, nhưng sau đó vai trò của thuật toán truyền thống trong tương lai như vậy là gì?

Ở đây bằng "thuật toán truyền thống" tôi đề cập đến quy trình thông thường mà chúng ta tuân theo trong TCS: chính thức hóa một vấn đề tính toán được xác định rõ , thuật toán thiết kế để giải quyết vấn đề và chứng minh đảm bảo hiệu suất chính thức .

Bây giờ các lĩnh vực ứng dụng mà chúng ta phải sử dụng thiết kế và phân tích thuật toán truyền thống trong tương lai là gì, và rất khó có khả năng bất kỳ tiến bộ nào của học máy sẽ làm cho thuật toán truyền thống hầu như không liên quan?

Lúc đầu, điều này có vẻ như là một câu hỏi ngớ ngẩn: Tất nhiên chúng ta sẽ cần phải có khả năng sắp xếp, tìm kiếm, lập chỉ mục, vv trong tương lai! Tất nhiên chúng ta sẽ cần có khả năng thực hiện các phép biến đổi Fourier một cách hiệu quả, nhân các ma trận lớn, tìm các đường dẫn ngắn nhất, giải các bài toán tối ưu hóa tuyến tính!

Nhưng một lần nữa, một khi bạn bắt đầu tìm hiểu sâu hơn về các ứng dụng mà chúng ta thường sử dụng các thuật toán mà chúng ta thiết kế, thì không rõ ràng rằng thiết kế và phân tích thuật toán truyền thống là câu trả lời đúng cho các vấn đề như vậy: Trong các ứng dụng liên quan đến tìm kiếm , thông thường chúng ta quan tâm đến việc tìm kiếm thứ gì đó phù hợp với con người theo một nghĩa nào đó không rõ ràng mơ hồ (ví dụ như sự giống nhau về ngữ nghĩa), không phải là thứ gì đó tối ưu theo nghĩa toán học (ví dụ khoảng cách chỉnh sửa tối thiểu). Trong các ứng dụng liên quan đến quy hoạch tuyến đường, thông thường chúng tôi quan tâm đến việc tìm các tuyến đường tốt dựa trên các ví dụ (ví dụ: những người khác thích nó), không phải các tuyến đường tối ưu theo nghĩa toán học (ví dụ: khoảng cách ngắn nhất hoặc giá rẻ nhất). Và một khi bạn có một số thành phần con người mơ hồ, không rõ ràng trong ảnh, có lẽ chúng ta nên cố gắng dạy máy tính tạo ra các câu trả lời tốt dựa trên các ví dụ, thay vì cố gắng để một nhà nghiên cứu TCS đưa ra với một vấn đề tính toán chính thức mà chúng ta có thể giải quyết bằng phương pháp thiết kế và phân tích thuật toán truyền thống.

Vì vậy, các lĩnh vực ứng dụng (tốt nhất là các ứng dụng công nghiệp thực tế và trực tiếp) trong đó hoàn toàn rõ ràng rằng những gì chúng ta đã làm trong thuật toán trong quá khứ cũng sẽ là cách đúng đắn (và là cách khả thi duy nhất) để tiến bộ trong Tương lai?

Các thuật toán được sử dụng làm chương trình con trong các kỹ thuật học máy trông giống như một ứng cử viên chứng minh tương lai rõ ràng, nhưng điều này phụ thuộc rất nhiều vào kỹ thuật học máy cụ thể mà chúng ta sử dụng và như chúng ta đã thấy trong mười năm qua, điều này có thể thay đổi nhanh chóng .


2
nccnc-ε

4
Tôi hoài nghi về quan điểm rằng các phương pháp là độc quyền. Chúng ta có lý do để nghĩ rằng sẽ không thể xác định chính thức các vấn đề mà thuật toán học máy giải quyết và xây dựng các mô hình lý thuyết tốt để phân tích hiệu suất của chúng không? Điều này có thể yêu cầu các mô hình tốt hơn cho các thuật toán dựa trên dữ liệu (mà tôi nghĩ là thuật toán có độ phức tạp mô tả cao), nhưng đó có phải là một trở ngại không thể vượt qua?
Neal Young

Câu trả lời:


6

Đây là một câu hỏi đã ám ảnh tôi gần đây, vì vậy tôi rất vui vì bạn đã hỏi nó.
Tuy nhiên, tôi ít quan tâm đến việc phân loại các lĩnh vực ứng dụng mà học máy sẽ chi phối cách tiếp cận tính toán hơn tôi trong tác động đến sự tiến bộ trong lĩnh vực thuật toán (truyền thống). Những loại nghiên cứu "thuật toán nhân tạo" nào chúng ta vẫn sẽ quan tâm, trong 30 năm nữa? Phải thừa nhận rằng đây là câu hỏi khó trả lời hơn, bởi vì đây là ứng dụng quyết định chất lượng của kết quả là bắt buộc.

Tôi nghĩ rằng thuật toán liệt kê sẽ đánh số trong số những người sống sót. Sẽ tiếp tục cần phải kiểm tra tất cả các đầu vào cho một con chip, hoặc tiến hành tìm kiếm toàn diện. Sự chú ý đặc thù của đối tượng, thiết kế tinh chỉnh cần thiết để tạo chính xác từng đối tượng (hoặc ít nhất) một lần; và sự khuếch đại thời gian chạy của bất kỳ nỗ lực lãng phí nào (có thể có số lượng phiên bản theo cấp số nhân, như là một chức năng của mô tả đối tượng) - những yếu tố này khiến tôi nghi ngờ rằng một quá trình học tự động có mục đích chung có thể phù hợp với một cách thông minh, giải pháp thiết kế có mục đích trong lĩnh vực này.


4

Vấn đề với các giải pháp học máy là không có cách nào để biết liệu chúng có thực sự tính toán những gì bạn muốn hay không.

Tôi hy vọng họ sẽ tiếp quản trong tất cả các lĩnh vực mà kết quả sai không phải là thảm họa (tức là ở mọi nơi chúng tôi hiện đang sử dụng phương pháp phỏng đoán) hoặc kết quả có thể dễ dàng được kiểm tra (tìm kiếm vấn đề mà bạn biết có giải pháp tồn tại (vì kiểm tra "ở đó không có giải pháp "có thể khó)).

Đối với các miền còn lại, tôi mong muốn các thuật toán sẽ được chứng minh chính thức (ví dụ: sử dụng Coq / Gallina) thường xuyên. Hy vọng rằng, học máy cuối cùng sẽ làm cho việc chứng minh mọi thứ trong các hệ thống dễ dàng như trên giấy (hoặc thậm chí dễ dàng hơn). Nó thậm chí có thể đi đến điểm mà con người chỉ viết đặc tả và thuật toán và bằng chứng chính xác của nó được tìm thấy bằng cách sử dụng máy học. (Lưu ý rằng thuật toán tự nó không sử dụng học máy, nhưng nó và bằng chứng chính xác của nó đã được tìm thấy bằng cách sử dụng máy học)

Vì vậy, chúng tôi có thể thấy mình chỉ viết trợ lý bằng chứng, thông số kỹ thuật chương trình và thuật toán học má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.