Ви хочете знати, чому ми взагалі переймаємося згладжуванням класифікатора Naive Bayes (коли ми можемо замість цього викинути невідомі функції).
Відповідь на ваше запитання: не всі слова повинні бути невідомими у всіх класах.
Скажімо, є два класи M і N з функціями A , B і C таким чином:
М: А = 3, В = 1, С = 0
(В класі М , з'являється в 3 рази і B тільки один раз)
N: A = 0, B = 1, C = 3
(В класі N , С з'являється в 3 рази і B тільки один раз)
Давайте подивимося, що станеться, коли ви викинете функції, які з’являються нульові рази.
A) Відкинути функції, які з’являються нульовими разів у будь-якому класі
Якщо ви викидаєте функції A і C, оскільки вони з'являються нульові рази в будь-якому з класів, вам залишається лише функція B для класифікації документів.
І втратити цю інформацію - це погано, як ви побачите нижче!
Якщо вам подають тестовий документ наступним чином:
B = 1, C = 3
(Він містить B один раз і C тричі)
Тепер, так як ви відкинув особливість A і B , ви не будете в змозі сказати , чи належить вищевказаний документ для класу М або класу N .
Отже, втратити будь-яку інформацію про функції - це погано!
В) Викинути функції, які з’являються нульовими разів у всіх класах
Чи можна обійти цю проблему, відкинувши лише ті функції, які з’являються нульові рази у всіх класах?
Ні, тому що це створило б власні проблеми!
Наступний тестовий документ ілюструє, що буде, якби ми це зробили:
А = 3, В = 1, С = 1
Імовірність M і N стала б нульовою (оскільки ми не викинули нульову ймовірність A у класі N та нульову ймовірність C у класі M ).
В) Не кидайте нічого - використовуйте згладжування
Згладжування дозволяє правильно класифікувати обидва вищевказані документи, оскільки:
- Ви не втрачаєте інформацію про підрахунок у класах, де така інформація є і
- Вам не доведеться боротися з нульовими підрахунками.
Наївні класифікатори Байєса на практиці
Класифікатор Naive Bayes в NLTK використовував для викидання функцій, які мали нульовий підрахунок у будь-якому з класів.
Це використовувалося для того, щоб він погано працював при навчанні з використанням жорсткої процедури ЕМ (де класифікатор завантажується з дуже мало даних про навчання).