NLP Academy · Урок

Масштабирование и отбор признаков

Оставьте только действительно полезные признаки

Урок 4 из 413 шагов

«Масштабирование и отбор признаков» — бесплатный урок NLP Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения NLP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс NLP Academy содержит 4 уроков всего.

Слишком много признаков мешает

Текстовые модели могут разрастись до десятков тысяч признаков. Многие из них добавляют только шум, поэтому сокращение списка часто повышает и скорость, и точность.

Зачем вообще масштабировать

Некоторые модели напрямую сравнивают величины признаков. Если один признак принимает значения от 0 до 1000, он может заглушить остальные, если сначала не масштабировать их.

Стандартизация чисел

StandardScaler сдвигает каждый признак к нулевому среднему и единичной дисперсии. Теперь все числовые признаки выражены в одном масштабе.

from sklearn.preprocessing import StandardScaler
scaled = StandardScaler().fit_transform(numeric_features)

Осторожно с разреженными данными

Центрирование разреженной матрицы TF-IDF заполняет её ненулевыми значениями и расходует память впустую. Используйте MaxAbsScaler, который масштабирует данные, не разрушая разреженность.

from sklearn.preprocessing import MaxAbsScaler
scaled = MaxAbsScaler().fit_transform(tfidf_matrix)

Уберите балласт

Признаки, которые почти не меняются, ничего не сообщают модели. Фильтр VarianceThreshold удаляет почти постоянные столбцы за один быстрый проход.

Выберите самые полезные

SelectKBest оставляет лучшие признаки по результатам проверочного теста, например хи-квадрат. Вы задаёте число k, а он удаляет остальные.

from sklearn.feature_selection import SelectKBest, chi2
best = SelectKBest(chi2, k=2000).fit_transform(X, y)

Пусть модель выбирает

Модель со штрафом L1 самостоятельно сводит бесполезные веса к нулю. Такой встроенный отбор часто называют встроенным отбором признаков.

Обучайте только на обучающих данных

Всегда обучайте средства масштабирования и отбора только на обучающих данных, а затем применяйте их к тестовым данным. Их смешивание приводит к утечке и неоправданно высоким результатам.

Храните всё в конвейере

Размещение масштабирования и отбора внутри Pipeline каждый раз выполняет их в правильном порядке. Это также предотвращает случайную утечку во время проверки.

from sklearn.pipeline import Pipeline
pipe = Pipeline([("select", SelectKBest(chi2, k=2000)), ("clf", model)])

Меньше признаков — быстрее модель

Компактный набор признаков быстрее обучается, требует меньше памяти и его проще объяснить. После удаления шума меньший набор часто оказывается лучше. ⚡

Измеряйте, а не угадывайте

Попробуйте несколько значений k и сравните оценки на проверочных данных. Пусть количество признаков, которые нужно сохранить, определяют числа, а не догадка.

Быстрая проверка

Какой масштабировщик сохраняет разреженную матрицу разреженной?

Итоги

Масштабируйте числовые признаки и отбирайте полезные с помощью SelectKBest или L1. Для разреженных данных используйте MaxAbsScaler, а всё обучение выполняйте внутри конвейера. ✅

Можно начать бесплатно

Изучай Python с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Масштабирование и отбор признаков» бесплатный?

Да — полный текст урока «Масштабирование и отбор признаков» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс NLP Academy, подпишись на CoddyKit PRO. Курс NLP Academy содержит 4 уроков всего.

Чему я научусь в уроке «Масштабирование и отбор признаков»?

Оставьте только действительно полезные признаки Ты практикуешь NLP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать NLP Academy?

Предыдущий опыт не требуется. NLP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Масштабирование и отбор признаков»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке NLP Academy?

Да. Каждый урок NLP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. За пределами модели «мешка слов»
  2. Символьные N-граммы для повышения устойчивости
  3. Объединение нескольких типов признаков
  4. Масштабирование и отбор признаков
← Назад к NLP Academy