Học máy vs Học sâu


11

Tôi hơi bối rối bởi sự khác biệt giữa thuật ngữ "Học máy" và "Học sâu". Tôi đã Googled nó và đọc nhiều bài viết, nhưng nó vẫn không rõ ràng cho tôi.

Một định nghĩa đã biết về Machine Learning của Tom Mitchell là:

Một chương trình máy tính được cho là học hỏi từ kinh nghiệm E đối với một số lớp các nhiệm vụ với T và đo lường hiệu suất P , nếu hiệu quả của nó ở nhiệm vụ trong T , được đo bằng P , cải thiện với kinh nghiệm E .

Nếu tôi lấy một vấn đề phân loại hình ảnh của việc phân loại chó và mèo là T của tôi , từ định nghĩa này tôi hiểu rằng nếu tôi đưa ra thuật toán ML một loạt hình ảnh của chó và mèo (kinh nghiệm E ), thuật toán ML có thể học cách phân biệt hình ảnh mới là chó hay mèo (với điều kiện là thước đo hiệu suất P được xác định rõ).

Rồi đến Deep Learning. Tôi hiểu rằng Deep Learning là một phần của Machine Learning và định nghĩa trên có. Việc thực hiện nhiệm vụ tại T cải thiện với kinh nghiệm E . Tất cả đều ổn cho đến bây giờ.

Blog này nói rằng có một sự khác biệt giữa Machine Learning và Deep Learning. Sự khác biệt theo Adil là trong Machine Learning (truyền thống), các tính năng phải được làm thủ công, trong khi trong Deep Learning, các tính năng được học. Các số liệu sau đây làm rõ tuyên bố của mình.

nhập mô tả hình ảnh ở đây

Tôi bối rối bởi thực tế là trong Machine Learning (truyền thống), các tính năng phải được làm thủ công. Từ định nghĩa trên Tom Mitchell, tôi sẽ nghĩ rằng các tính năng này sẽ được rút ra từ kinh nghiệm E và hiệu suất P . Những gì có thể được học trong Machine Learning?

Trong Deep Learning tôi hiểu rằng từ kinh nghiệm bạn học các tính năng và cách chúng liên quan với nhau để cải thiện hiệu suất. Tôi có thể kết luận rằng trong các tính năng của Machine Learning phải được làm thủ công và những gì học được là sự kết hợp của các tính năng không? Hay tôi đang thiếu thứ gì khác?


2
Điều này được đề cập rất tốt trong cuốn sách Deep Learning của Goodfellow et al. trong chương đầu tiên (Giới thiệu).
hbaderts

Câu trả lời:


4

Ngoài những gì Himanshu Rai đã nói, Deep learning là một trường con liên quan đến việc sử dụng các mạng thần kinh. Các mạng thần kinh này cố gắng tìm hiểu phân phối cơ bản bằng cách sửa đổi các trọng số giữa các lớp. Bây giờ, hãy xem xét trường hợp nhận dạng hình ảnh bằng cách học sâu: mô hình mạng thần kinh được chia thành các lớp, các lớp này được kết nối bằng các liên kết gọi là trọng số, khi quá trình đào tạo bắt đầu, các lớp này điều chỉnh các trọng số sao cho mỗi lớp cố gắng phát hiện một số tính năng và giúp lớp tiếp theo xử lý. Điểm quan trọng cần lưu ý là chúng ta không nói rõ ràng lớp đó học cách phát hiện các cạnh, hoặc mắt, mũi hoặc khuôn mặt. Mô hình học cách tự làm điều đó. Giống như các mô hình học máy cổ điển.


8

Là một lĩnh vực nghiên cứu, Deep Learning thực sự chỉ là một lĩnh vực phụ của Machine Learning vì Machine Learning là một lĩnh vực phụ của Trí tuệ nhân tạo.

1) Học tính năng không giám sát

Về mặt khái niệm, sự khác biệt chính đầu tiên giữa " Học tập truyền thống " (hoặc " nông ") và Học sâu là Học tính năng không giám sát.

Như bạn đã biết, việc đào tạo thành công mô hình Machine Learning " truyền thống " (ví dụ: SVM, XGBoost ...) chỉ có thể sau khi trích xuất tính năng phù hợp và trích xuất tính năng hợp lý để chọn thông tin có ý nghĩa từ dữ liệu. Nghĩa là, vectơ tính năng tốt chứa các tính năng phân biệt giữa các điểm dữ liệu với các nhãn khác nhau và nhất quán giữa các điểm dữ liệu có cùng nhãn. Do đó, Engineering Engineering là quá trình lựa chọn tính năng thủ công từ các chuyên gia. Đây là một taks rất quan trọng nhưng tẻ nhạt để thực hiện!

Học tập tính năng không giám sát là một quá trình trong đó chính mô hình tự động chọn các tính năng thông qua đào tạo. Cấu trúc liên kết của Mạng nơ-ron được tổ chức theo các lớp được kết nối với nhau có đặc tính tốt là ánh xạ biểu diễn dữ liệu ở mức độ thấp sang biểu diễn ở mức cao hơn. Thông qua đào tạo, mạng có thể " quyết định " phần nào của dữ liệu quan trọng và phần nào của dữ liệu không. Điều này đặc biệt thú vị trong Thị giác máy tính hoặc Xử lý ngôn ngữ tự nhiên, nơi khá khó để chọn thủ công hoặc thiết kế các tính năng mạnh mẽ.

Học tập tính năng không giám sát, tín dụng: Tony Beltramelli (ảnh tín dụng: Tony Beltramelli)

Ví dụ, giả sử chúng ta muốn phân loại ảnh mèo. Sử dụng Mạng lưới thần kinh sâu, chúng ta có thể cung cấp các giá trị pixel thô sẽ được ánh xạ tới một tập các trọng số theo lớp đầu tiên, sau đó các trọng số này sẽ được ánh xạ tới các trọng số khác bởi lớp thứ hai, cho đến khi lớp cuối cùng cho phép một số trọng số được ánh xạ tới các con số đại diện cho vấn đề của bạn. (ví dụ: trong trường hợp này xác suất hình ảnh có chứa một con mèo)

Mặc dù Mạng lưới thần kinh sâu có thể thực hiện Học tập tính năng không được giám sát, nhưng điều đó không ngăn cản bạn tự mình thực hiện Kỹ thuật tính năng để thể hiện tốt hơn vấn đề của mình. Học tập tính năng không giám sát, khai thác tính năng và Kỹ thuật tính năng không loại trừ lẫn nhau!

Nguồn:

2) Phân tách tuyến tính

Mạng lưới thần kinh sâu có thể giải quyết một số vấn đề có thể phân tách phi tuyến tính bằng cách bẻ cong không gian tính năng sao cho các tính năng có thể phân tách tuyến tính. Một lần nữa, điều này có thể là nhờ cấu trúc liên kết mạng được tổ chức trong các lớp ánh xạ đầu vào thành các biểu diễn mới của dữ liệu.

Lớp ẩn tìm hiểu một biểu diễn để dữ liệu có thể phân tách tuyến tính, tín dụng: Christopher Olah (ảnh tín dụng: Christopher Olah)

Nguồn: http://colah.github.io/posts/2014-03-NN-Manifold-Topology/

3) Thống kê bất biến

Cuối cùng, Mạng lưới thần kinh sâu đang vượt qua các thuật toán Machine Learning truyền thống trong một số lĩnh vực vì một số kiến ​​trúc đang hiển thị Bất biến thống kê (ví dụ: Liên kết thống kê không gian với Mạng thần kinh chuyển đổi và Mạng liên kết thống kê tạm thời với Mạng thần kinh tái phát)

Kiểm tra video Udacity này để biết thêm chi tiết: https://www.youtube.com/watch?v=5PH2Vot-tD4


4

Lấy cảm hứng từ Einstein, "Nếu bạn không thể giải thích điều đó với một đứa trẻ sáu tuổi, bạn sẽ không tự hiểu điều đó.

Tất cả các câu trả lời trên đều được giải thích rất rõ nhưng nếu một người đang tìm kiếm một sự khác biệt dễ nhớ, trừu tượng, thì đây là câu trả lời hay nhất mà tôi biết:

Sự khác biệt chính là Machine Learning chỉ tiêu hóa dữ liệu, trong khi Deep Learning có thể tạo và nâng cao dữ liệu. Nó không chỉ mang tính dự đoán mà còn mang tính khái quát.

Nguồn. Tất nhiên có nhiều hơn thế nhưng đối với người mới bắt đầu, nó có thể trở nên quá khó hiểu.


-3

Được rồi, nghĩ về nó như thế này. Trong các thuật toán học máy, như hồi quy tuyến tính hoặc rừng ngẫu nhiên, bạn cung cấp cho các thuật toán một tập hợp các tính năng và mục tiêu và sau đó nó cố gắng giảm thiểu hàm chi phí, vì vậy không học được bất kỳ tính năng mới nào, nó chỉ học các trọng số. Bây giờ khi bạn tìm hiểu sâu, bạn có ít nhất một lớp, (hầu như luôn luôn nhiều hơn) với một số đơn vị đã đặt, đây là những tính năng đang được nói đến. Vì vậy, một thuật toán học sâu không chỉ học các tập trọng số, trong quá trình đó, nó cũng học các giá trị cho các đơn vị ẩn là các tính năng cấp cao phức tạp của dữ liệu tầm thường mà bạn đã đưa ra. Do đó, trong khi thực hành máy vani, học rất nhiều chuyên môn nằm ở khả năng thiết kế các tính năng của bạn bởi vì thuật toán không tự học được. Tôi hy vọng tôi đã trả lời câu hỏi của bạn.


Một câu hỏi khác: Ví dụ: CNN, các tính năng (hoặc bộ lọc) không giống với trọng số?
dùng2835098

Không, chúng là các trọng số cho lớp chập, nhưng sản phẩm thu được từ tích chập tức là các bản đồ đặc trưng là các tính năng.
Himanshu Rai

Tôi không đồng ý. Các biến ẩn cũng có mặt trong rừng ngẫu nhiên và các thuật toán thúc đẩy. Và bạn vẫn có kỹ năng tính năng trong học tập sâu. Giống như cắt xén khu vực trong một trong những thuật toán nhận dạng hình ảnh tốt nhất năm 2017
keiv.fly
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.