Какие-нибудь «практические правила» в отношении количества функций в зависимости от количества экземпляров? (небольшие наборы данных)

17

Мне интересно, есть ли какие-либо эвристики по количеству признаков и количеству наблюдений. Очевидно, что если число признаков равно количеству наблюдений, модель будет соответствовать. Используя разреженные методы (LASSO, эластичная сетка), мы можем удалить несколько функций, чтобы уменьшить модель.

Мой вопрос (теоретически): прежде чем использовать метрики для оценки выбора модели, существуют ли какие-либо эмпирические наблюдения, которые связывают оптимальное количество признаков с количеством наблюдений?

Например: для проблемы бинарной классификации с 20 экземплярами в каждом классе, есть ли верхний предел количества используемых функций?

Арнольд Кляйн
источник

Ответы:

13

Множество бумаг высказали мнение, что

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

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

Эта статья предлагает следующее:

  • Для некоррелированных элементов оптимальный размер элемента равен (где - размер выборки).N-1N
  • При увеличении корреляции объектов оптимальный размер объекта становится пропорциональным для высококоррелированных объектов.N

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

shark8me
источник
2
Я нахожу этот ответ несколько вводящим в заблуждение, поскольку отсутствует основополагающее предположение о статье «Хуа». Рассмотрим в связанном документе все информативно, а это не то, что вы можете ожидать на практике. ИМХО, это должно быть четко указано, поскольку ИМХО наиболее распространенным типом некоррелированных «признаков» являются неинформативные измерительные каналы.
cbeleites поддерживает Монику
Wrt. Кривые обучения: OP, вероятно, не сможет использовать их в 2 × 20 случаях, так как они не могут быть измерены с полезной точностью из очень немногих случаев. Хуа кратко упоминает об этом, и мы довольно подробно обсудили эту трудность в статье, на которую я ссылаюсь в своем ответе ниже.
cbeleites поддерживает Монику
8

из моего собственного опыта: в одном случае я работал с реальной базой данных, которая очень мала (300 изображений) со многими классами, серьезной проблемой дисбаланса данных, и в итоге я использовал 9 функций: SIFT, HOG, Shape context, SSIM, GM и 4 функции на основе DNN. В другом случае я работал с очень большой базой данных (> 1 млн изображений) и в итоге использовал только функцию HOG. Я думаю, что нет прямой связи между количеством экземпляров и количеством функций, необходимых для достижения высокой точности. НО: количество классов, сходство между классами и вариациями внутри одного класса (эти три параметра) могут влиять на количество признаков. если у вас большая база данных с большим количеством классов и большим сходством между классами и большими вариациями в одном классе, вам нужно больше возможностей для достижения высокой точности. ПОМНИТЬ:

Башар Хаддад
источник
@ Башар Хаддад: Поправьте меня, если я ошибаюсь (поскольку я новичок и в компьютерном зрении, и в ML), разве HOG не является на самом деле многомерным вектором (в моем случае я получал 1764-мерные HOG-функции). Итак, когда вы говорите о 9 объектах, и одна из них - HOG, разве вы не получаете пространство пространственных объектов только для HOG?
Математика
1
В литературе они используют слово особенность, чтобы указать либо тип признака, либо индекс измерения. Поэтому, когда я говорю, что я использую 6 объектов, это означает, что я использую 6 типов объектов, каждый из которых является (1 x D) векторным. если я говорю о типе объектов Hog, каждое измерение может быть объектом.
Башар Хаддад
2

Это зависит ... но, конечно, этот ответ никуда тебя не приведет.

Он является эмпирическим правилом для сложности модели: обучение на основе данных - измерение VC

«Очень грубо» вам нужно 10 точек данных для каждого параметра модели. А количество параметров модели может совпадать с количеством функций.

Gerenuk
источник
2

Немного опоздал на вечеринку, но вот некоторые эвристики.

проблема бинарной классификации с 20 экземплярами в каждом классе, есть ли верхний предел количества используемых функций?

  • Для обучения линейных классификаторов рекомендуется 3 - 5 независимых случаев на класс и особенность. Этот предел дает вам надежно стабильные модели, он не гарантирует хорошую модель (это невозможно: у вас могут быть неинформативные данные, в которых ни одна модель не может обеспечить хорошую производительность обобщений)

  • Однако для размеров выборки, таких как ваш сценарий, узким местом является проверка (валидация), а не обучение, а верификация зависит от абсолютного числа тестовых случаев, а не от случаев, связанных со сложностью модели: как правило, вам нужно ≈ 100 тестов. случаи в знаменателе для оценки пропорции с доверительным интервалом, ширина которого не превышает 10%.

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

    Подробности смотрите в нашей статье: Beleites, C. and Neugebauer, U. и Bocklitz, T. и Krafft, C. и Popp, J .: Планирование размера выборки для классификационных моделей. Anal Chim Acta, 2013, 760, 25-33.
    DOI: 10.1016 / j.aca.2012.11.007

    принята рукопись на arXiv: 1211.1323

  • У меня никогда не было ничего похожего на эти рекомендации (данные спектроскопии, в том числе для медицинских применений). Что я делаю тогда: я очень тщательно измеряю стабильность модели как часть процесса моделирования и проверки.

cbeleites поддерживает Монику
источник