Skip to content

oip-searcher/tokenizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Токенизация и группировка по леммам (ОИП, задание 2)

Студент: Станчу Данил Владимирович, группа 11-208

Запуск

Для запуска необходимо выполнить следующую команду в корне репозитория:

dotnet run --project src/Tokenizer.csproj

Входные данные должны быть заранее скачаны краулером (задание 1) и находиться в папке pages/.

Описание

Приложение обрабатывает сохранённые документы из папки pages/ и выполняет два шага:

  1. Токенизация (выделение слов)
  • Из каждого файла извлекается текст (HTML очищается от разметки).

  • Текст разбивается на отдельные слова (токены).

  • Формируется общий список токенов со всех документов.

Фильтрация токенов:

  • без дубликатов (уникальные токены)

  • без союзов / предлогов / стоп-слов

  • без чисел

  • без “мусора” (слова с буквами и цифрами, обрывки разметки и т.п.)

  • отбрасываются слишком короткие токены (например, длина < 2)

Результат сохраняется в файл tokens.txt (один токен на строку).

  1. Группировка токенов по леммам
  • Для каждого токена вычисляется “лемма” (нормализованная форма / основа слова).

  • Токены группируются по леммам.

Результат сохраняется в файл lemmas.txt в формате:

<lemma> <token1> <token2> ... <tokenN>

Результат

После выполнения создаются файлы:

  • tokens.txt — список уникальных токенов

  • lemmas.txt — группы токенов по леммам

Опционально (если включено сохранение по документам):

  • tokens_per_doc/ — токены по каждому документу

  • lemmas_per_doc/ — леммы по каждому документу

About

Токенизация и группировка по леммам

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages