Сбалансированный корпус для наивного байесовского классификатора

Я работаю с анализом настроений с использованием классификатора NB. Я нашел информацию (блоги, руководства и т. Д.) О том, что корпус обучения должен быть сбалансированным:

  • 33,3% положительных;
  • 33,3% Нейтрально
  • 33,3% отрицательно

Мой вопрос:

Почему corspus нужно сбалансировать? Теорема Байеса основана на вероятности причины / случая. Итак, для целей обучения разве не важно, что в реальном мире, например, отрицательные твиты составляют только 10%, а не 33,3%?


person Michał Grabia    schedule 02.07.2017    source источник


Ответы (2)


Вы правы, данные балансировки важны для многих дискриминационных моделей, но не совсем для NB.

Тем не менее, смещение оценок P (y) может быть еще более выгодным для повышения эффективности прогнозирования (поскольку из-за использования различных моделей упрощения вероятность, присвоенная классу меньшинства, может быть сильно занижена). Для NB речь идет не о балансировке данных, а о буквальном изменении оценочного P (y), чтобы точность набора для проверки была максимальной.

person lejlot    schedule 02.07.2017
comment
Привет, Спасибо за ответ. Пожалуйста, подтвердите, если я получил это. Могу ли я изменить пропорции документа в заданных классах, чтобы получить модель, которая лучше подходит для тестовых данных? - person Michał Grabia; 17.07.2017
comment
Да, вы опроверете байесовские рассуждения, но это не значит, что модель будет вести себя плохо. Наивный Байес уже делает много ложных предположений о ваших данных, вы добавите еще одно. На практике оба могут работать, в зависимости от способа сбора данных, их характеристик и т. Д. Просто не забудьте подтвердить это повторное взвешивание на проверке, а не на тестовых данных. - person lejlot; 17.07.2017

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

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

Обратите внимание, что это важно не только для априорных оценок класса. Наивный Байес вычислит для каждой характеристики вероятность предсказания класса данной функции. Если байесовский классификатор создан специально для классификации текстов, он будет использовать глобальные меры частоты документов (количество раз, когда данное слово встречается в наборе данных, по всем категориям). Если количество документов в каждой категории в обучающем наборе не отражает их естественное распределение, общая частота терминов, обычно встречающихся в нечастых категориях, будет переоценена, а частота часто встречающихся категорий - заниженной. Таким образом, неверна будет не только вероятность предшествующего класса, но и все P(category=c|term=t) оценки.

person Pascal Soucy    schedule 04.07.2017
comment
Спасибо! Вы подтверждаете мои догадки :) - person Michał Grabia; 17.07.2017