Собранный корпус нельзя анализировать как есть: он полон «шума» — знаков, регистра, служебных слов. Предобработка превращает сырой текст в то, что можно считать. Это неромантичный, но решающий этап: мусор на входе — мусор на выходе.
Стандартный конвейер предобработки: (1) приведение к нижнему регистру — чтобы «Ставка» и «ставка» считались одним словом; (2) очистка — убрать пунктуацию, ссылки, эмодзи, разметку; (3) токенизация — разбить текст на отдельные слова (токены), с которыми дальше работают; (4) стоп-слова — выбросить служебные «и, в, на, что»: они самые частые и самые пустые по смыслу, без них частотный топ показывает реальные темы; (5) при необходимости биграммы — склеить значимые пары слов, чтобы не потерять смысл, который живёт именно в паре.
Порядок и состав шагов — не догма, а решение исследователя под задачу. Например, список стоп-слов часто дорабатывают вручную: если в корпусе про доставку слово «заказ» встречается в каждом тексте, оно тоже становится «пустым» для этой задачи, хоть и не служебное. Предобработка — это уже часть анализа: что ты выбросил, того в результатах не будет.
«Курьер ОПОЗДАЛ на час!!! Ужас 😡» → нижний регистр, убрали знаки и эмодзи → [курьер, опоздал, час, ужас] → выбросили стоп-слова → остались значимые токены «курьер, опоздал, час, ужас». Теперь это можно посчитать по тысяче отзывов.
Ниже — отзывы о доставке (можно вставить любой свой текст). Отредактируй стоп-слова и нажми «Проанализировать» — конвейер из урока отработает вживую.
— нажми «Проанализировать», чтобы запустить конвейер —
Предобработка кажется технической рутиной, но именно на ней теряют или сохраняют смысл. Проверяй результат глазами на десятке текстов: не выбросил ли лишнего, не склеились ли разные слова. И дорабатывай стоп-слова под свой корпус — универсального списка нет.
Зачем перед частотным анализом убирают стоп-слова?