Ответ 1
Существующие реализации Naive Bayes
Вам, вероятно, будет лучше использовать один из существующих пакетов, который поддерживает классификацию документов с использованием наивных байесов, например:
Python. Для этого используйте Python на основе Инструментарий Natural Language Toolkit (NLTK), см. раздел Классификация документов в свободно доступном Книга NLTK.
Ruby. Если Ruby больше подходит вам, вы можете использовать Classifier драгоценный камень. Здесь пример кода, который определяет ли цитаты Family Guy забавными или не смешными.
Perl. Perl имеет модуль Algorithm:: NaiveBayes в комплекте с пример использования фрагмента в пакете synopsis.
С# - программисты на С# могут использовать nBayes. На домашней странице проекта есть образец кода для простого классификатора спама и не-спама.
Java. Java-люди имеют Classifier4J. Вы можете увидеть фрагмент кода обучения и подсчета очков здесь.
Классификация начальной загрузки из ключевых слов
Похоже, вы хотите начать с набора ключевых слов, которые известны для создания определенных тем, а затем использовать эти ключевые слова для bootstrap классификатор.
Это разумная идея. Взгляните на статью Классификация текста путем начальной загрузки с помощью ключевых слов, EM и усадки МакКаллум и Нигам (1999). Следуя этому подходу, они смогли улучшить точность классификации с 45%, полученной ими, используя только жестко закодированные ключевые слова до 66%, используя загрузочный классификатор Naive Bayes. По их данным, последний близок к человеческому уровню согласия, так как люди соглашались друг с другом в отношении меток документов в 72% случаев.