#machine-learning #neural-network #deep-learning #perceptron
#машинное обучение #нейронная сеть #глубокое обучение #персептрон
Вопрос:
Я пытаюсь выполнить перекрестную проверку без исключения для моделирования конкретной проблемы с использованием нейронной сети с обратным распространением. У меня есть 8 функций в моих обучающих данных и 20 экземпляров. Я пытаюсь заставить NN изучить функцию при построении модели прогнозирования. Теперь проблема в том, что частота ошибок в прогнозировании довольно высока. Я предполагаю, что количество экземпляров в обучении меньше по сравнению с количеством рассматриваемых функций. Верен ли этот вывод. Существует ли какое-либо оптимальное соотношение функций к экземплярам?
Ответ №1:
(В литературе по ML эта тема часто формулируется как приемлемый размер или форма набора данных, учитывая, что набор данных часто описывается как матрица m x n, в которой m — количество строк (точек данных), а n — количество столбцов (объектов); предпочтительно очевидное m >> n.)
В любом случае, я не знаю общего правила для приемлемого диапазона функций для наблюдений; вероятно, для этого есть пара причин:
-
такое соотношение будет сильно зависеть от качества данных (отношения сигнал / шум); и
-
количество функций — это всего лишь один элемент сложности модели (например, взаимодействие между функциями); а сложность модели является самым сильным фактором, определяющим количество экземпляров данных (точек данных).
Итак, существует два подхода к этой проблеме, которые, поскольку они противоположны, оба могут быть применены к одной и той же модели:
-
уменьшите количество функций; или
-
используйте статистический метод для использования имеющихся у вас данных
Пара предложений, по одному для каждого из двух приведенных выше путей:
-
Устраните «неважные» функции, то есть те функции, которые не влияют на изменчивость вашей переменной ответа. Анализ главных компонентов (PCA) — быстрый и надежный способ сделать это, хотя существует ряд других методов, которые обычно подпадают под рубрику «уменьшение размеров».
-
Используйте методы начальной загрузки вместо перекрестной проверки. Разница в методологии кажется незначительной, но (часто существенное) улучшение в снижении ошибки прогнозирования хорошо документировано для многослойных персептронов (нейронных сетей) (см., например, Эфрон Б. и Тибширани Р.Дж., Метод начальной загрузки: улучшения при перекрестной проверке, J. Американской статистической ассоциации , 92, 548-560., 1997). Если вы не знакомы с методами начальной загрузки для разделения обучающих и тестирующих данных, общая методика аналогична перекрестной проверке, за исключением того, что вместо выборки подмножеств из всего набора данных вы берете подвыборки. Раздел 7.11 «Элементы» является хорошим введением в методы начальной загрузки.
Лучшим единственным источником по этой общей теме, который я нашел, является глава 7 «Оценка модели и выбор» из превосходного трактата «Элементы статистического обучения» Хасти, Тибширани и Фридмана. Эту книгу можно бесплатно загрузить с домашней страницы книги.
Комментарии:
1. Большое спасибо за ваши идеи и ценные предложения. Я читал в некоторых моделях машинного обучения, что, если количество экземпляров в обучающих выборках меньше, одно и то же повторяется несколько раз. Допустима ли эта методология построения обучающего набора?