Я использовал библиотеку Ruby Classifier для классификации политик конфиденциальности . Я пришел к выводу, что простого набора-из-слов, встроенного в эту библиотеку, недостаточно. Чтобы повысить точность классификации, я хочу обучить классификатор на n-граммах в дополнение к отдельным словам.
Мне интересно, существует ли библиотека для предварительной обработки документов, чтобы получить релевантные n-граммы (и правильно обрабатывать пунктуацию). Одна из мыслей заключалась в том, что я мог бы предварительно обработать документы и передать псевдо-нграммы в классификатор Ruby, например:
словоодин_словодва_словотри
Или, может быть, есть лучший способ сделать это, например библиотека, в которую с самого начала встроена наивная байесовская классификация на основе ngram. Я готов использовать здесь языки, отличные от Ruby, если они выполнят свою работу (Python кажется хорошим кандидатом в случае необходимости).