Phân biệt Entropy chéo


9

Tôi đã cố gắng tạo ra một chương trình đào tạo Mạng nơ-ron trên máy tính của mình. Đối với Mạng được đề cập, tôi đã quyết định sử dụng chức năng Lỗi Entropy chéo:

E=−∑jtjln⁡oj

Trong đó là đầu ra đích của Neuron và là đầu ra của nơ ron đó, cố gắng dự đoán . j o j t jtjjojtj

Tôi muốn biết dành cho một số Neuron . Trực giác của tôi (cộng với kiến ​​thức hạn chế về tính toán) khiến tôi tin rằng giá trị này phải là . j-tjδEδojj−tjoj

Tuy nhiên, điều này dường như không chính xác. Cross Entropy thường được sử dụng song song với chức năng softmax, sao cho trong đó z là tập hợp đầu vào cho tất cả các nơ-ron trong lớp softmax ( xem tại đây ).

oj=ezj∑kezk

Từ tệp này , tôi tập hợp rằng:

δojδzj=oj(1−oj)

Theo câu hỏi này : Nhưng điều này mâu thuẫn với dự đoán trước đây của tôi về . Tại sao?δE

δEδzj=tj−oj
δEδoj

δEjδzj=δEjδojδojδzj
⇒δEjδoj=δEjδzj÷δojδzj
=tj−ojoj(1−oj)
mâu thuẫn trực tiếp với tôi trước đó giải pháp của Vậy giải pháp nào (nếu có) cho là chính xác, và tại sao?
−tjoj
δEjδoj

Câu trả lời:


6

Bạn là đúng, nhưng nên khi , sử dụng các kết quả được đưa ra trong bài đăng, chúng tôi có khi nên tổng là ∂E∂oj∂E∂zj

∂E∂zj=∑i∂E∂oi∂oi∂zj
i=j
∂E∂oj∂oj∂zj=−tjojoj(1−oj)=tjoj−tj
i≠j
∂oi∂zj=∂ezi∑kezk∂zj=−ezi(∑kezk)2ezj=−oioj
∂E∂oi∂oi∂zj=−tioi(−oioj)=tioj
tΣiti=1∂E
∂E∂zj=∑i∂E∂oi∂oi∂zj=∑itioj−tj
vì là một vectơ nóng, do đó cũng thấy câu hỏi này .t∑iti=1
∂E∂zj=oj−tj
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 cookie và Chính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.