Sự khác biệt giữa một mạng thần kinh chuyển tiếp và tái phát là gì?
Tại sao bạn sẽ sử dụng cái này hơn cái kia?
Các cấu trúc liên kết mạng khác có tồn tại không?
Sự khác biệt giữa một mạng thần kinh chuyển tiếp và tái phát là gì?
Tại sao bạn sẽ sử dụng cái này hơn cái kia?
Các cấu trúc liên kết mạng khác có tồn tại không?
Câu trả lời:
ANN chuyển tiếp cho phép tín hiệu chỉ truyền theo một chiều: từ đầu vào đến đầu ra. Không có phản hồi (vòng lặp); tức là , đầu ra của bất kỳ lớp nào không ảnh hưởng đến cùng một lớp. ANN chuyển tiếp có xu hướng là các mạng đơn giản liên kết đầu vào với đầu ra. Chúng được sử dụng rộng rãi trong nhận dạng mẫu. Loại hình tổ chức này cũng được gọi là từ dưới lên hoặc từ trên xuống.
Mạng phản hồi (hoặc định kỳ hoặc tương tác) có thể có tín hiệu truyền theo cả hai hướng bằng cách đưa ra các vòng lặp trong mạng. Mạng phản hồi rất mạnh mẽ và có thể trở nên cực kỳ phức tạp. Các tính toán có được từ đầu vào trước đó được đưa trở lại vào mạng, cung cấp cho chúng một loại bộ nhớ. Mạng phản hồi rất năng động; 'trạng thái' của chúng đang thay đổi liên tục cho đến khi chúng đạt đến điểm cân bằng. Chúng vẫn ở điểm cân bằng cho đến khi đầu vào thay đổi và cần cân bằng mới.
Các mạng nơ ron phản hồi là lý tưởng phù hợp để mô hình hóa các mối quan hệ giữa một tập hợp các biến dự đoán hoặc biến đầu vào và một hoặc nhiều biến trả lời hoặc biến đầu ra. Nói cách khác, chúng thích hợp cho bất kỳ vấn đề ánh xạ chức năng nào mà chúng tôi muốn biết làm thế nào một số biến đầu vào ảnh hưởng đến biến đầu ra. Các mạng nơ ron đa lớp feedforward, còn được gọi là perceptionron nhiều lớp (MLP), là mô hình mạng thần kinh được nghiên cứu và sử dụng rộng rãi nhất trong thực tế.
Như một ví dụ về mạng phản hồi, tôi có thể nhớ lại mạng của Hopfield . Việc sử dụng chính của mạng Hopfield là bộ nhớ kết hợp. Bộ nhớ kết hợp là một thiết bị chấp nhận mẫu đầu vào và tạo đầu ra dưới dạng mẫu được lưu trữ được liên kết chặt chẽ nhất với đầu vào. Chức năng của bộ nhớ liên kết là gọi lại mẫu được lưu trữ tương ứng, và sau đó tạo ra một phiên bản rõ ràng của mẫu ở đầu ra. Mạng Hopfield thường được sử dụng cho những sự cố với vectơ mẫu nhị phân và mẫu đầu vào có thể là phiên bản nhiễu của một trong các mẫu được lưu trữ. Trong mạng Hopfield, các mẫu được lưu trữ được mã hóa dưới dạng các trọng số của mạng.
Bản đồ tự tổ chức của Kohonen(SOM) đại diện cho một loại mạng thần kinh khác khác biệt rõ rệt với các mạng đa lớp tiếp theo. Không giống như đào tạo về MLP tiếp theo, việc đào tạo hoặc học tập SOM thường được gọi là không được giám sát vì không có đầu ra mục tiêu được biết đến liên quan đến từng mẫu đầu vào trong SOM và trong quá trình đào tạo, SOM xử lý các mẫu đầu vào và học cách phân cụm hoặc phân đoạn dữ liệu thông qua việc điều chỉnh các trọng số (điều đó làm cho nó trở thành một mô hình mạng thần kinh quan trọng để giảm kích thước và phân cụm dữ liệu). Một bản đồ hai chiều thường được tạo theo cách mà các mệnh lệnh của mối tương quan giữa các đầu vào được giữ nguyên. Số lượng và thành phần của các cụm có thể được xác định trực quan dựa trên phân phối đầu ra được tạo ra bởi quá trình đào tạo. Chỉ với các biến đầu vào trong mẫu đào tạo,
(Các sơ đồ được lấy từ trang web Trí tuệ nhân tạo C463 / B551 của Dana Vrajitoru .)
Những gì George Dontas viết là chính xác, tuy nhiên việc sử dụng RNN trong thực tế ngày nay bị hạn chế ở một loại vấn đề đơn giản hơn: chuỗi thời gian / nhiệm vụ tuần tự.
Trong khi các mạng feedforward được sử dụng để tìm hiểu các bộ dữ liệu như trong đó và là các vectơ (ví dụ: , đối với các mạng lặp lại, sẽ luôn là một chuỗi, ví dụ: .i t i ∈ R n i i ∈ ( R n ) *
Các RNN đã được chứng minh là có thể biểu diễn bất kỳ chuỗi có thể đo lường nào thành ánh xạ trình tự bằng Hammer.
Do đó, ngày nay các RNN đang được sử dụng cho tất cả các loại nhiệm vụ tuần tự: dự đoán chuỗi thời gian, ghi nhãn theo trình tự, phân loại trình tự, v.v. Một tổng quan tốt có thể được tìm thấy trên trang của Schmidhuber trên RNNs .
Thay vì nói RNN và FNN khác nhau trong tên của họ. Vì vậy, họ là khác nhau. , Tôi nghĩ điều thú vị hơn là về mô hình hệ thống động lực học, RNN có khác nhiều so với FNN không?
Đã có một cuộc tranh luận về việc mô hình hóa hệ thống động lực giữa mạng thần kinh tái phát và mạng thần kinh Feedforward với các tính năng bổ sung như độ trễ thời gian trước đó (FNN-TD).
Từ hiểu biết của tôi sau khi đọc những bài báo đó vào những năm 90 ~ 2010. Phần lớn các tài liệu thích rằng vanilla RNN tốt hơn FNN trong đó RNN sử dụng bộ nhớ động trong khi FNN-TD là bộ nhớ tĩnh .
Tuy nhiên, không có nhiều nghiên cứu bằng số so sánh hai thứ đó. Một [1] ban đầu cho thấy rằng để mô hình hóa hệ thống động lực học, FNN-TD cho thấy hiệu suất tương đương với vanilla RNN khi nó không có tiếng ồn trong khi hoạt động kém hơn một chút khi có tiếng ồn. Theo kinh nghiệm của tôi về mô hình hóa các hệ thống động lực, tôi thường thấy FNN-TD là đủ tốt.
Thật không may, tôi không thấy bất cứ nơi nào và bất kỳ ấn phẩm nào về mặt lý thuyết cho thấy sự khác biệt giữa hai điều này. Nó khá thú vị. Hãy xem xét một trường hợp đơn giản, sử dụng chuỗi vô hướng để dự đoán . Vì vậy, nó là một nhiệm vụ nối tiếp vô hướng.
FNN-TD là cách tổng quát nhất, toàn diện để xử lý cái gọi là hiệu ứng bộ nhớ . Vì nó tàn bạo, nó bao gồm mọi loại, mọi loại, mọi hiệu ứng bộ nhớ về mặt lý thuyết. Mặt trái duy nhất là nó chỉ mất quá nhiều thông số trong thực tế.
Bộ nhớ trong RNN không là gì ngoài việc thể hiện dưới dạng "tích chập" chung của thông tin trước đó . Chúng ta đều biết rằng tích chập giữa hai chuỗi vô hướng nói chung không phải là một quá trình có thể đảo ngược và quá trình giải mã thường không được đặt ra.
Giả thuyết của tôi là "mức độ tự do" trong quá trình tích chập như vậy được xác định bởi số lượng đơn vị ẩn trong trạng thái RNN . Và nó rất quan trọng đối với một số hệ thống động lực. Lưu ý rằng "mức độ tự do" có thể được kéo dài bằng cách nhúng thời gian nhúng các trạng thái [2] trong khi vẫn giữ nguyên số lượng đơn vị ẩn.
Do đó, RNN thực sự đang nén thông tin bộ nhớ trước đó bằng cách thực hiện tích chập, trong khi FNN-TD chỉ hiển thị chúng theo nghĩa không mất thông tin bộ nhớ. Lưu ý rằng bạn có thể giảm mất thông tin khi tích chập bằng cách tăng số lượng đơn vị ẩn hoặc sử dụng độ trễ thời gian nhiều hơn Rilla vanilla. Theo nghĩa này, RNN linh hoạt hơn FNN-TD. RNN có thể không bị mất bộ nhớ như FNN-TD và việc hiển thị số lượng tham số theo cùng một thứ tự là không đáng kể.
Tôi biết ai đó có thể muốn đề cập rằng RNN đang mang lại hiệu ứng lâu dài trong khi FNN-TD thì không thể. Đối với điều này, tôi chỉ muốn đề cập rằng đối với một hệ thống động lực tự trị liên tục, từ lý thuyết nhúng Takens, đó là một thuộc tính chung để nhúng vào FNN-TD với bộ nhớ thời gian dường như ngắn để đạt được hiệu suất tương tự như thời gian dài bộ nhớ trong RNN. Nó giải thích tại sao RNN và FNN-TD không khác nhau nhiều trong ví dụ hệ thống động lực liên tục vào đầu những năm 90.
Bây giờ tôi sẽ đề cập đến lợi ích của RNN. Đối với nhiệm vụ của hệ thống động lực tự trị, sử dụng thuật ngữ trước nhiều hơn, mặc dù hiệu quả sẽ giống như sử dụng FNN-TD với các thuật ngữ ít hơn trước đây về mặt lý thuyết, về mặt số lượng sẽ hữu ích hơn khi tiếng ồn mạnh hơn. Kết quả trong [1] phù hợp với ý kiến này.
[1] Gençay, Ramazan và Tung Liu. "Mô hình hóa và dự đoán phi tuyến với các mạng feedforward và định kỳ." Physica D: Hiện tượng phi tuyến 108.1-2 (1997): 119-134.
[2] Pan, Shaowu và Karthik Duraisamy. "Khám phá dựa trên dữ liệu của các mô hình đóng cửa." bản in sẵn arXiv arXiv: 1803.09318 (2018).