Я намагаюся навчити нейронну мережу для класифікації, але мітки, які у мене є, досить шумні (близько 30% міток неправильні).
Втрата перехресної ентропії справді працює, але мені було цікаво, чи є в цьому випадку якісь альтернативи? чи оптимальна втрата перехресної ентропії?
Я не впевнений, але я думаю про те, щоб дещо "відрізати" крос-ентропійну втрату, так що втрата для однієї точки даних буде не більшою за верхню межу, чи буде це спрацьовувати?
Дякую!
Оновлення
Відповідно до відповіді Лукаса, я отримав наступне для похідних для виведення прогнозу та введення функції softmax . Тож я гадаю, що по суті це додає до похідних термін згладжування .
Похідні для початкової втрати перехресної ентропії:
z 3 pi=0,3/N+0,7yil=-∑tilog(pi)∂l
Оновлення
Я щойно прочитав документ Google, який застосовує ту саму формулу, що і у відповіді Лукаса, але з різними тлумаченнями.
У розділі 7 Регулялізація моделі за допомогою згладжування міток
Це (перехресна втрата ентропії), однак, може спричинити дві проблеми. По-перше, це може призвести до надмірної підгонки: якщо модель навчиться присвоювати повну ймовірність мітці "земна правда" для кожного навчального прикладу, не гарантується узагальнення. По-друге, це заохочує відмінності між найбільшим logit та всіма іншими стати великими, і це в поєднанні з обмеженим градієнтом знижує здатність моделі адаптуватися. Інтуїтивно це відбувається тому, що модель стає надто впевненою у своїх передбаченнях.
Але замість того, щоб додавати термін згладжування до прогнозів, вони додали це до основної істини , яка виявилася корисною.
У наших експериментах ImageNet з K = 1000 класів ми використовували u (k) = 1/1000 і = 0,1. Для ILSVRC 2012 ми виявили стабільне поліпшення приблизно на 0,2%, як для помилки топ-1, так і для помилки топ-5.