Mạng nơ-ron nhân tạo là một loại thuật toán bao gồm rất nhiều loại thuật toán khác nhau dựa trên biểu đồ, vì vậy tôi sẽ không nêu chi tiết ở đây ngoài những gì bạn đã hỏi vì có quá nhiều điều để nói, vì có quá nhiều loại ANN.
Loại mạng nơ-ron nhân tạo đầu tiên, các nơ-ron McCulloch-đào nổi tiếng, là tuyến tính , nghĩa là chúng chỉ có thể giải quyết các vấn đề quyết định tuyến tính (nghĩa là các bộ dữ liệu có thể phân tách tuyến tính bằng cách vẽ một đường thẳng). Theo thời gian, mô hình mạng thần kinh tuyến tính này được gọi là Perceptron hoặc Adaline (tùy thuộc vào cách bạn tính toán cập nhật trọng số).
Các mạng nơ ron tuyến tính chỉ bao gồm một biểu đồ lưỡng cực, trong đó các nút bên trái là các đầu vào và các nút bên phải là đầu ra. Chỉ có trọng số của các cạnh giữa các nút này được học (ngưỡng kích hoạt nút cũng có thể được điều chỉnh nhưng điều này hiếm khi được thực hiện).
Một bước tiến lớn đã được thực hiện khi các mạng nơ ron nông được phát minh: thay vì chỉ có một biểu đồ lưỡng cực, chúng tôi sử dụng biểu đồ 3 phần: "lớp" đầu vào, "lớp" đầu ra và một "lớp ẩn" giữa chúng. Cảm ơn lớp ẩn, giờ đây, mạng có thể đưa ra các quyết định phi tuyến tính và giải quyết các vấn đề như XOR chính tắc.
Lưu ý rằng thuật ngữ "nông" được đặt ra hồi cứu khi mạng lưới thần kinh sâu (còn gọi là mạng thần kinh lớp n ) được phát minh. Điều này là để chống lại các mạng thần kinh chỉ có một lớp ẩn, với các mạng thần kinh sâu với n lớp ẩn . Như bạn có thể đoán, việc sử dụng nhiều lớp ẩn hơn cho phép quyết định các bộ dữ liệu phức tạp hơn do có nhiều lớp hơn để điều chỉnh quyết định (nghĩa là, nói cách khác, bạn đang tăng tính chiều của ranh giới quyết định của mình, điều này có thể dẫn đến quá mức).
Bạn có thể hỏi: tại sao không ai thử sử dụng mạng nơ ron đa tầng (sâu) trước đây? Trên thực tế, họ đã làm, vào đầu năm 1975 bởi Fukushima với Cognitron và Neocognitron (thực tế là một mạng lưới thần kinh tích chập, nhưng đó là một câu chuyện khác). Tuy nhiên, vấn đề là không ai biết cách học hiệu quả các mạng như vậy, vấn đề lớn là sự chính quy . AutoEncoders của Hinton đã mở đường và sau đó các Đơn vị tuyến tính được chỉnh sửa của LeCun đã khắc phục vấn đề này một cách tốt đẹp.
Mạng lưới niềm tin sâu sắc (DBN) thì sao? Chúng chỉ là những cỗ máy Boltzmann bán hạn chế nhiều lớp. Vì vậy, chúng là một loại mạng nơ-ron sâu, nhưng với một mẫu mạng cơ bản khác (ví dụ: lớp, đây là mẫu được lặp lại): Các máy Boltzmann khác với các mạng khác ở chỗ chúng có tính khái quát , nghĩa là chúng thường được sử dụng để học từ dữ liệu của bạn để tái tạo dữ liệu ("tạo" nó), trong khi các mạng thần kinh sâu thông thường được sử dụng để phân tách dữ liệu của bạn (bằng cách vẽ "ranh giới quyết định").
Nói cách khác, DNN rất tuyệt khi phân loại / dự đoán giá trị từ tập dữ liệu của bạn, trong khi DBN rất tốt để "sửa chữa" dữ liệu bị hỏng (khi tôi nói sửa chữa, nó không chỉ từ dữ liệu bị hỏng, mà còn có thể là dữ liệu hoàn toàn tốt rằng bạn chỉ muốn sửa một chút để trở nên rập khuôn hơn để dễ dàng nhận ra hơn với một mạng thần kinh khác, chẳng hạn như chữ số viết tay).
Trong thực tế, để tóm tắt gọn gàng, bạn có thể nói rằng AutoEncoders là một hình thức đơn giản hơn của Deep Belief Network. Dưới đây là ví dụ về một DBN được đào tạo để nhận diện khuôn mặt nhưng KHÔNG phải là số, các số sẽ tự động bị mờ dần (đây là hiệu ứng "sửa lỗi" của DBN):
Vì vậy, cuối cùng, DBN và DNN không đối nghịch nhau: chúng là bổ sung. Ví dụ: bạn có thể tưởng tượng một hệ thống nhận ra các ký tự viết tay trước tiên sẽ đưa hình ảnh của một nhân vật vào DBN để làm cho nó trở nên rập khuôn hơn và sau đó đưa hình ảnh rập khuôn vào một DNN sau đó sẽ xuất ra hình ảnh mà nhân vật đại diện.
Lưu ý cuối cùng: Deep Belief Nets rất gần với Deep Boltzmann Machines: Deep Boltzmann Machines sử dụng các lớp của Boltzmann Machines (là các mạng thần kinh hai chiều, còn được gọi là mạng thần kinh tái phát), trong khi Deep Belief Nets sử dụng Máy Boltzmann bán hạn chế (bán nửa hạn chế) bị hạn chế có nghĩa là chúng được thay đổi thành một hướng, do đó nó cho phép sử dụng backpropagation để tìm hiểu mạng hiệu quả hơn so với học mạng reccurent). Cả hai mạng được sử dụng cho cùng một mục đích (tái tạo tập dữ liệu), nhưng chi phí tính toán là khác nhau (Deep Boltzmann Machines tốn kém hơn đáng kể để tìm hiểu vì tính chất thường xuyên của nó: khó "ổn định" trọng lượng hơn).
Phần thưởng: về Mạng thần kinh chuyển đổi (CNN), bạn sẽ tìm thấy rất nhiều tuyên bố mâu thuẫn và khó hiểu, và thông thường bạn sẽ thấy rằng chúng chỉ là mạng lưới thần kinh sâu sắc. Tuy nhiên, có vẻ như sự đồng thuận là sử dụng định nghĩa ban đầu về Neocognitron của Fukushima: CNN là một DNN buộc phải trích xuất các tính năng khác nhau ở các cấp bậc khác nhau bằng cách áp dụng một phép chập trước khi kích hoạt (mà DNN có thể làm một cách tự nhiên, nhưng buộc nó phải tự nhiên bằng cách đặt chức năng tích chập / kích hoạt khác nhau trên các lớp khác nhau của mạng có thể mang lại kết quả tốt hơn, ít nhất đó là đặt cược của CNN):
Và cuối cùng, để có một dòng thời gian nghiêm ngặt hơn về Trí tuệ nhân tạo, xem tại đây .