Tôi rất thú vị trong việc xây dựng các mô hình học tăng cường với sự đơn giản của API Keras. Thật không may, tôi không thể trích xuất độ dốc của đầu ra (không phải lỗi) đối với trọng số. Tôi thấy đoạn mã sau đó thực hiện một chức năng tương tự (Saliency maps of neural networks (using Keras))Lấy gradient của khối lượng đầu ra của mô hình bằng cách sử dụng Keras
get_output = theano.function([model.layers[0].input],model.layers[-1].output,allow_input_downcast=True)
fx = theano.function([model.layers[0].input] ,T.jacobian(model.layers[-1].output.flatten(),model.layers[0].input), allow_input_downcast=True)
grad = fx([trainingData])
Bất kỳ ý tưởng về làm thế nào để tính toán độ chênh lệch của đầu ra mô hình liên quan đến trọng lượng cho mỗi lớp có sẽ được đánh giá.
Bạn đã có ứng trước chưa? Tôi nhận được lỗi sau bằng cách sử dụng một chức năng tương tự như saliency: https://github.com/fchollet/keras/issues/1777#issuecomment-250040309 – ssierral
Tôi đã không có bất kỳ thành công với Keras. Tuy nhiên, tôi đã có thể làm điều này bằng cách sử dụng tensorflow. –
https://github.com/yanpanlau/DDPG-Keras-Torcs CriticNetwork.py sử dụng phụ trợ tensorflow để tính toán độ dốc khi sử dụng Keras để thực sự xây dựng kiến trúc mạng –