Ваш подход к созданию n-грамм звучит как отличное начало!Удаление стоп-слов, нормализация форматирования текста (удаление знаков препинания, замена двух пробелов на один и т. Д.) - все это важные этапы предварительной обработки при создании ваших n-грамм.И да, вы правы: если вы собираетесь искать n-грамм в новом сообщении, вам придется предварительно обработать это новое сообщение так же, как вы предварительно обработали другие данные, удаливстоп-слова и т. д., а затем сгенерировать n-грамм для этого нового сообщения.
Если у вас много n-грамм (и даже если вы этого не делаете, это все еще хорошая практикачтобы попасть в), попробуйте создать матрицу всех ваших n-грамм.Для каждого документа (сообщения, в вашем случае) перечислите все ваши n-граммы, которые вы изначально нашли в ваших данных.Если указанный n-грамм встречается в этом конкретном документе, присвойте ему значение 1. Для n-грамм, которых нет в этом документе, присвойте этому конкретному н-грамму оценку 0:
Учитывая, что у вас может быть МНОГО n-грамм (особенно если сообщения длинные), вы можете захотеть взглянуть на что-то вроде термин частота обратного документа частоты,или tf-idf
, чтобы помочь вам найти / оценить более редкие термины в большей степени, чем более распространенные.Как вы заметили, удалив стоп-слова из ваших данных, часто встречающиеся термины, такие как «the», «and», «a» и т. Д. (Которые мы называем «малоформатными токенами» или малоинформационные слова в теории информации) don 'В действительности, мы не можем рассказать нам много о настоящем документе, его основной теме, а также наличие слов вроде «the», «and», «a» не позволяет нам избавиться от неоднозначности DocumentA от DocumentB (поскольку в большинстве документов есть такие слова, как «the»)., 'и', 'a', в них.
Эта бесплатная книга Введение в поиск информации содержит несколько глав о построении и сжатии индексов, которые могут быть полезны при изучении построения.и запрос индексов. Если вы из математического фона и линейная алгебра вам знакома, я бы порекомендовал другую книгу тех же авторов под названием Основы статистической обработки естественного языка , которая охватывает множествотот же материал, что и учебник по ИК, но он обеспечивает гораздо более тщательную математическую подготовку к обложке материалав учебнике по ИК.