Использует ли размер набора данных алгоритм машинного обучения?

Итак, представьте себе доступ к достаточным данным (миллионы данных для обучения и тестирования) достаточного качества. Пожалуйста, игнорируйте концепцию дрейфа на данный момент и считайте данные статичными и со временем не меняются. Имеет ли смысл использовать все эти данные с точки зрения качества модели?

Brain and Webb (http://www.csse.monash.edu.au/~webb/Files/BrainWebb99.pdf) включили некоторые результаты в эксперименты с разными размерами данных. Их протестированные алгоритмы сходятся к тому, чтобы быть несколько стабильными после обучения с 16 000 или 32 000 точек данных. Однако, поскольку мы живем в большом мире данных, у нас есть доступ к наборам данных из миллионов точек, поэтому документ является несколько актуальным, но чрезвычайно устаревшим.

Есть ли какие-либо более свежие исследования влияния размеров данных на алгоритмы обучения (Наивные Байес, Деревья принятия решений, SVM, нейронные сети и т.д.).

  • Когда алгоритм обучения сходится к определенной стабильной модели, для которой больше данных больше не увеличивает качество?
  • Может ли это произойти после 50 000 данных, или, может быть, после 200 000 или только после 1 000 000?
  • Есть ли правило?
  • Или, может быть, нет способа, чтобы алгоритм сходился к устойчивой модели, к определенному равновесию?

Почему я спрашиваю об этом? Представьте себе систему с ограниченным хранилищем и огромным количеством уникальных моделей (тысячи моделей с собственным уникальным набором данных) и не способ увеличения объема хранилища. Поэтому важно ограничить размер набора данных.

Любые мысли или исследования по этому поводу?

Ответ 1

Я сделал магистерскую диссертацию по этому предмету, чтобы случайно узнать об этом.

В нескольких словах в первой части моей магистерской диссертации я взял несколько действительно больших наборов данных (~ 5 000 000 образцов) и протестировал некоторые алгоритмы машинного обучения на них, изучая разные% набора данных (кривые обучения). Results for HIGGS

Предполагаемая мной гипотеза (в основном я использовал scikit-learn) заключалась не в том, чтобы оптимизировать параметры, используя параметры по умолчанию для алгоритмов (я должен был сделать эту гипотезу по практическим соображениям, без оптимизации некоторые симуляции занимали уже более 24 часов на кластере).

Первое, что нужно отметить, - это то, что каждый метод приведет к плато для определенной части набора данных. Тем не менее вы не можете сделать выводы об эффективном количестве образцов, которые нужно взять для плато, по следующим причинам:

  • Каждый набор данных отличается, поскольку для действительно простых наборов данных они могут дать вам почти все, что они могут предложить с 10 образцами, в то время как у кого-то еще есть что показать после 12000 образцов (см. набор данных Хиггса в моем примере выше).
  • Количество выборок в наборе данных произвольно, в моем тезисе я тестировал набор данных с неправильными образцами, которые были добавлены в беспорядок с алгоритмами.

Мы можем, однако, различать два разных типа алгоритмов, которые будут иметь другое поведение: параметрические (линейные,...) и непараметрические (Random Forest,...) модели. Если плато достигнуто с непараметрическим, что означает, что остальная часть набора данных "бесполезна". Как вы можете видеть, когда метод Lightning очень скоро достигает плато на моей картине, это не означает, что у набора данных нет ничего, что можно предложить, но более того, что это лучшее, что может сделать этот метод. Именно поэтому непараметрические методы работают лучше всего, когда модель становится сложной и может действительно выиграть от большого количества учебных образцов.

Что касается ваших вопросов:

  • См. выше.

  • Да, все зависит от того, что находится внутри набора данных.

  • Для меня единственным правилом является перекрестная проверка. Если вы находитесь в ситуации, когда думаете, что будете использовать 20 000 или 30 000 образцов, вы часто находитесь в случае, когда перекрестная проверка не является проблемой. В своем тезисе я вычислил точность своих методов на тестовом наборе, и когда я не заметил значительного улучшения, я определил количество образцов, которые потребовались, чтобы добраться туда. Как я уже сказал, есть некоторые тенденции, которые вы можете наблюдать (параметрические методы имеют тенденцию насыщаться быстрее, чем непараметрические).

  • Иногда, когда набор данных недостаточно велик, вы можете взять все данные, которые у вас есть, и у вас еще есть возможность для улучшения, если у вас есть больший набор данных. В моем тезисе без оптимизации параметров этот набор данных Cifar-10 вел себя так, даже после 50 000 ни один из моих алгоритмов уже не сходился.

Я бы добавил, что оптимизация параметров алгоритмов оказывает большое влияние на скорость конвергенции на плато, но для этого требуется другой шаг кросс-валидации.

Ваше последнее предложение в значительной степени связано с темой моего тезиса, но для меня это было больше связано с памятью и временем, доступным для выполнения задач ML. (Как будто вы покрываете меньше всего набора данных, у вас будет меньшая потребность в памяти, и она будет быстрее). О том, что концепция "базовых наборов" действительно может быть интересна для вас.

Надеюсь, я мог бы вам помочь, мне пришлось остановиться, потому что я мог продолжать и продолжать, но если вам нужны дополнительные разъяснения, я был бы рад помочь.