Стемминг: усечение до корня
Сведите running и runs к run
«Стемминг: усечение до корня» — бесплатный урок NLP Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения NLP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс NLP Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
One Word, Many Forms
The verb run shows up as running, runs, and ran. To you they share a meaning, but raw text counts each one separately, splitting the signal. 🌱
Enter Stemming
Stemming chops the endings off a word to reach a rough root called the stem. The goal is to make related forms collapse into one shared token.
Rules, Not a Dictionary
A stemmer follows simple suffix rules instead of looking words up. It strips endings like ing, ed, and s, so it is fast but a bit crude.
The Porter Stemmer
NLTK ships the classic PorterStemmer. You create one instance, then call its stem method on any word you want reduced.
from nltk.stem import PorterStemmer
ps = PorterStemmer()
print(ps.stem('running'))Forms Collapse Together
Feed in several forms of the same verb and they all reduce to the same stem. Now your counts can finally add up.
for w in ['running', 'runs', 'ran']:
print(ps.stem(w))Stems Are Not Real Words
Stemming is blunt. The word studies becomes studi, which is not a real word, but it still matches study and studied as one stem.
print(ps.stem('studies'))Watch for Over-Stemming
Sometimes a stemmer cuts too far and merges unrelated words. This over-stemming can blur meanings, so always sanity-check the output on your text.
print(ps.stem('universal'))
print(ps.stem('university'))Stem a Token List
In practice you stem every token in a document. A comprehension applies the stemmer across the whole list in one clean line.
words = ['cats', 'caring', 'cared']
print([ps.stem(w) for w in words])Other Stemmers Exist
Porter is the default, but NLTK also offers the snappier SnowballStemmer, which supports many languages and fixes some Porter rough edges.
from nltk.stem import SnowballStemmer
sb = SnowballStemmer('english')
print(sb.stem('happily'))Lowercase First
Stemmers expect lowercase input. Fold case before stemming, or Running and running may slip through as two different tokens again.
print(ps.stem('Running'.lower()))When to Reach for It
Stemming trades precision for speed. It shines in search and large pipelines where a rough but fast match beats slow, exact analysis. ⚡
Quick Check
Let's lock in how stemming behaves.
Recap
You learned stemming chops suffixes with simple rules to collapse word forms into one stem. It is fast and rough, sometimes yielding non-words. Nice work! 🎉
Часто задаваемые вопросы
Урок «Стемминг: усечение до корня» бесплатный?
Да — полный текст урока «Стемминг: усечение до корня» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс NLP Academy, подпишись на CoddyKit PRO. Курс NLP Academy содержит 4 уроков всего.
Чему я научусь в уроке «Стемминг: усечение до корня»?
Сведите running и runs к run Ты практикуешь NLP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать NLP Academy?
Предыдущий опыт не требуется. NLP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Стемминг: усечение до корня»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке NLP Academy?
Да. Каждый урок NLP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Почему важны регистр и пробелы
- Перевод в нижний регистр и удаление пробелов
- Стемминг: усечение до корня
- Лемматизация: более умные начальные формы