редактирование:
Более острый вопрос:
Какую производную softmax следует использовать в моем градиентном спуске?
Это более или менее исследовательский проект для курса, и мое понимание NN очень / довольно ограничено, поэтому, пожалуйста, будьте терпеливы:)
В настоящее время я нахожусь в процессе создания нейронной сети, которая пытается изучить входной набор данных и вывести вероятность / вероятность каждой классификации (существует 5 различных классификаций). Естественно, сумма всех выходных узлов должна составлять до 1.
В настоящее время у меня есть два слоя, и я установил скрытый слой, содержащий 10 узлов.
Я придумал два разных типа реализаций
- Логистическая сигмоида для активации скрытого слоя, softmax для активации выхода
- Softmax для скрытого слоя и активации выхода
Я использую градиентный спуск, чтобы найти локальные максимумы, чтобы отрегулировать веса скрытых узлов и веса выходных узлов. Я уверен, что у меня есть это правильно для сигмовидной кишки. Я менее уверен с softmax (или могу ли я использовать градиентный спуск вообще), после небольшого исследования, я не смог найти ответ и решил вычислить производную сам и получил softmax'(x) = softmax(x) - softmax(x)^2
(это возвращает вектор столбца размер н). Я также изучил инструментарий MATLAB NN, производная softmax, предоставляемая инструментарием, вернула квадратную матрицу размера nxn, диагональ которой совпадает с softmax '(x), который я вычислил вручную; и я не уверен, как интерпретировать выходную матрицу.
Я запускал каждую реализацию со скоростью обучения 0,001 и 1000 итераций обратного распространения. Однако мой NN возвращает 0.2 (четное распределение) для всех пяти выходных узлов для любого подмножества входного набора данных.
Мои выводы:
- Я вполне уверен, что мой градиент снижения выполнен неправильно, но я не знаю, как это исправить.
- Возможно, я не использую достаточно скрытых узлов
- Возможно, мне следует увеличить количество слоев
Любая помощь будет принята с благодарностью!
Набор данных, с которыми я работаю, можно найти здесь (обработано в Кливленде):
http://archive.ics.uci.edu/ml/datasets/Heart+Disease