Этот вопрос проверяет понимание процесса преобразования сырых данных в признаки, улучшающие качество моделей машинного обучения.
Feature engineering (конструирование признаков) — это процесс преобразования сырых данных в набор признаков, которые лучше представляют основную проблему для моделей машинного обучения. Это один из самых важных этапов в ML-пайплайне, так как даже самая сложная модель не сможет дать хороших результатов на плохо подготовленных данных.
import pandas as pd
import numpy as np
# Исходные данные
df = pd.DataFrame({'date': ['2023-01-01', '2023-01-02'],
'price': [100, 150],
'quantity': [10, 20]})
# Feature extraction: извлекаем день недели
df['date'] = pd.to_datetime(df['date'])
df['day_of_week'] = df['date'].dt.dayofweek
# Feature creation: создаем общую выручку
df['revenue'] = df['price'] * df['quantity']
# Feature transformation: логарифмируем цену
df['log_price'] = np.log(df['price'])
print(df)Feature engineering используется в любых задачах машинного обучения: регрессия, классификация, кластеризация, обработка текстов и изображений. Особенно важен в соревнованиях Kaggle и при работе с табличными данными.
Вывод: Feature engineering — это искусство превращать данные в полезные сигналы для модели. Без него даже лучшие алгоритмы будут показывать посредственные результаты. Всегда уделяйте этому этапу достаточно времени.
Уровень
Рейтинг:
4
Сложность:
5
Навыки
Python
Pandas
Ключевые слова
Подпишись на Python Developer в телеграм