Почему нейронная сеть дает одинаковую точность для переставленных меток?

У меня есть набор данных из 37 точек данных и около 1300 функций. Существует 4 разных класса, и каждый класс имеет примерно одинаковое количество точек данных. Я обучил нейронную сеть и получил точность 60% с двумя скрытыми слоями, что неплохо (уровень шанса 25%).

Проблема теперь с p-значением. Я вычисляю p-значение с помощью перестановочного теста. Я переставляю метки 1000 раз и для каждой перестановки рассчитываю точность. Значение p я рассчитываю как процент точности перестановки, превышающей исходную точность.

Для всех перестановок меток я получаю ту же точность, что и с исходными метками, то есть нейронная сеть, похоже, не включает метки в обучение.

Если я делаю это с помощью SVM, я получаю для всех перестановок разную точность (в конце концов, как распределение Гаусса).

Почему это так?

Кстати, я использую DeepLearnToolbox для Matlab.


person machinery    schedule 14.07.2015    source источник


Ответы (1)


Является ли показатель успеха 60% для данных обучения или набора данных проверки, который вы отложили?

Если вы вычисляете вероятность успеха только на обучающих данных, вы также ожидаете высокой точности даже после перестановки меток. Это связано с тем, что ваш классификатор будет соответствовать данным (1300 признаков до 37 точек данных) и достигнет хорошей производительности на обучающих данных.

person slabofguinness    schedule 14.07.2015