RNN là Mạng nơ-ron sâu (DNN) trong đó mỗi lớp có thể nhận đầu vào mới nhưng có cùng tham số. BPT là một từ ưa thích cho Back Propagation trên một mạng như vậy, bản thân nó là một từ ưa thích cho Gradient Descent.
Nói rằng RNN đầu ra y t trong từng bước và
e r r o r t = ( y t - y t ) 2y^t
errort=(yt−y^t)2
Để tìm hiểu các trọng số, chúng ta cần độ dốc cho hàm để trả lời câu hỏi "thay đổi tham số ảnh hưởng đến hàm mất bao nhiêu?" và di chuyển các tham số theo hướng được đưa ra bởi:
∇errort=−2(yt−y^t)∇y^t
Tức là chúng tôi có một DNN nơi chúng tôi nhận được phản hồi về mức độ dự đoán tốt ở mỗi lớp. Vì một thay đổi trong tham số sẽ thay đổi mọi lớp trong DNN (dấu thời gian) và mỗi lớp đóng góp vào các đầu ra sắp tới, điều này cần phải được tính đến.
Lấy một mạng nơ-ron một lớp đơn giản để thấy điều này một cách rõ ràng:
y^t+1=∂∂ay^t+1=∂∂by^t+1=∂∂cy^t+1=⟺∇y^t+1=f(a+bxt+cy^t)f′(a+bxt+cy^t)⋅c⋅∂∂ay^tf′(a+bxt+cy^t)⋅(xt+c⋅∂∂by^t)f′(a+bxt+cy^t)⋅(y^t+c⋅∂∂cy^t)f′(a+bxt+cy^t)⋅⎛⎝⎜⎡⎣⎢0xty^t⎤⎦⎥+c∇y^t⎞⎠⎟
Với tỷ lệ học bước một đào tạo là sau đó:
[ ~ một ~ b ~ c ] ← [ một b c ] + δ ( y t - yδ
⎡⎣⎢a~b~c~⎤⎦⎥←⎡⎣⎢abc⎤⎦⎥+δ(yt−y^t)∇y^t
∇y^t+1∇y^tt
error=∑t(yt−y^t)2
Có lẽ mỗi bước sau đó sẽ đóng góp một hướng thô mà đủ trong tổng hợp? Điều này có thể giải thích kết quả của bạn nhưng tôi thực sự muốn nghe thêm về chức năng phương pháp / mất của bạn! Cũng sẽ quan tâm đến việc so sánh với hai dấu thời gian ANN.
chỉnh sửa4: Sau khi đọc các bình luận, có vẻ như kiến trúc của bạn không phải là RNN.
ht
Mô hình của bạn: Không trạng thái - trạng thái ẩn được xây dựng lại trong mỗi bước chỉnh
sửa2: thêm nhiều ref hơn vào DNNs edit3: bước tiến cố định và một số ký hiệu chỉnh sửa5: Đã sửa lỗi diễn giải mô hình của bạn sau khi trả lời / làm rõ.