2014-09-04 2 views
11

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

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

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

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

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

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

ответ

17

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

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

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

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

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

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

Так, как для ваших вопросов:

  1. См выше.

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

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

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

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

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

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

+2

Является ли ваша диссертация доступной онлайн, если это возможно? –

+1

Очень хорошее объяснение, тщательный, ясный и точно то, что я искал. Я добавлю к @EricEijkelenboom: Можем ли мы найти вашу диссертацию в Интернете? Меня это очень интересует. – user3354890

+0

Да, я тоже был бы очень заинтересован в вашем тезисе. Это объяснение было довольно приятным. – CodingButStillAlive

Смежные вопросы