Признаки (Features)
Признаки — это измеримые характеристики или свойства объектов, которые используются в машинном обучении и нейронных сетях для построения моделей, классификации, регрессии и других задач анализа данных.
В контексте ИИ и ML признаки служат «входными данными» для модели: именно на их основе алгоритм учится выявлять закономерности, делать прогнозы или принимать решения. Каждый объект в наборе данных описывается набором признаков, который часто представляют в виде вектора (так называемого признакового описания).
Представьте, что вы выбираете квартиру. Ваши «признаки» могут быть такими: площадь, количество комнат, этаж, наличие балкона, расстояние до метро, цена. На основе этих признаков вы принимаете решение, подходит ли квартира под ваши требования. Аналогично и модель ML «рассматривает» объекты через призму признаков, чтобы сделать вывод (например, предсказать стоимость квартиры или классифицировать её как «подходящую/неподходящую»).
Исторический контекст
Понятие признаков (features) фундаментально для машинного обучения с самого зарождения области. Уже в ранних алгоритмах — таких как линейная регрессия (XIX век) или перцептрон (1958, Фрэнк Розенблатт) — использовались числовые признаки для построения моделей. С развитием ML и нейросетей спектр и сложность признаков расширялись: от простых числовых величин до высокоразмерных векторов (например, пиксели изображения или эмбеддинги текста).
Смежные понятия и различия
- Признаки (features) vs целевая переменная (target, label): признаки — это входные данные, на основе которых модель делает прогноз; целевая переменная — то, что модель пытается предсказать (например, цена квартиры).
- Признаки vs признаки после преобразования (engineered features): исходные признаки могут быть преобразованы (например, нормализованы, закодированы, объединены) для улучшения качества модели. Такие преобразованные величины тоже называют признаками, но подчёркивают этап их подготовки.
- Признаки vs признаки в глубинном обучении (learned features): в традиционных ML-методах признаки часто задаются вручную; в нейронных сетях (особенно в свёрточных или трансформерах) признаки могут «изучаться» автоматически на промежуточных слоях сети.
Примеры использования
- В задаче классификации изображений признаками могут быть пиксели, гистограммы цветов или карты признаков из свёрточных слоёв (например, в архитектуре CNN вроде ResNet).
- В обработке текста признаками могут выступать:
- onehot‑кодировки слов;
- TF‑IDF векторы;
- эмбеддинги (Word2Vec, GloVe, BERT).
- В табличных данных (например, кредитный скоринг) признаками могут быть: доход, возраст, история платежей, количество кредитов.
- В рекомендательных системах признаками могут быть: история просмотров, рейтинги, метаданные объектов (жанр, автор и т. п.).
Популярные реализации и инструменты
- Библиотеки для работы с признаками: scikit‑learn (StandardScaler, OneHotEncoder, FeatureUnion), pandas (обработка табличных данных), TensorFlow/Keras (слои для предобработки).
- Автоматическое конструирование признаков: библиотеки Featuretools, TPOT.
- Извлечение признаков в CV/NLP: pretrained модели (ResNet, BERT) как «извлекатели» признаков.
