Получение признаков, корректных на момент времени
Избегайте утечки целевой переменной при создании обучающих выборок
«Получение признаков, корректных на момент времени» — бесплатный урок MLOps Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения MLOps Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс MLOps Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
The Time-Travel Problem
To train fairly, each label needs the feature values that were known before the event, not after. Mixing up time leaks the future into your model. ⏳
What Label Leakage Is
Label leakage happens when a feature secretly carries information from after the prediction moment. The model looks brilliant offline, then flops live.
A Concrete Trap
Joining today's account balance onto a loan made last year is a classic leak. The right value is the balance as it was at loan time.
Point-in-Time Joins
A point-in-time join matches each event to the latest feature value that existed at or before that event's timestamp. No peeking ahead.
The Entity DataFrame
You hand Feast an entity dataframe: entity keys plus an event timestamp for each training row you want features for.
entity_df = pd.DataFrame({"driver_id": [1001], "event_timestamp": [pd.Timestamp("2024-01-01")]})Get Historical Features
Call get_historical_features with that dataframe, and Feast does the time-correct join against the offline store for you.
store.get_historical_features(entity_df=entity_df, features=["driver_stats:conv_rate"])Turn It Into a Dataset
Call to_df on the result to get a training dataframe where every row carries correct, leak-free feature values.
training_df = job.to_df()TTL Guards Freshness
If the nearest value is older than the feature's ttl, Feast leaves it null instead of attaching something out of date.
Same Logic, Two Stores
Historical reads hit the offline store for training; online reads hit the online store for serving. The feature definition stays identical, so there is no skew.
Why It Matters
Point-in-time correctness is what makes offline scores you can trust. Skip it and your validation numbers are a comforting lie. 🎯
The Big Picture
Define once, materialize for speed, and join by time for training. Together these give you a feature store that is fast, consistent, and honest.
Quick Check
Why use a point-in-time join when building a training set?
Recap
You used point-in-time joins via get_historical_features to build leak-free training sets, while the same definitions serve online. That is a complete feature store loop. 🏁
Часто задаваемые вопросы
Урок «Получение признаков, корректных на момент времени» бесплатный?
Да — полный текст урока «Получение признаков, корректных на момент времени» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс MLOps Academy, подпишись на CoddyKit PRO. Курс MLOps Academy содержит 4 уроков всего.
Чему я научусь в уроке «Получение признаков, корректных на момент времени»?
Избегайте утечки целевой переменной при создании обучающих выборок Ты практикуешь MLOps Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать MLOps Academy?
Предыдущий опыт не требуется. MLOps Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Получение признаков, корректных на момент времени»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке MLOps Academy?
Да. Каждый урок MLOps Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем нужны хранилища признаков
- Определение представлений признаков с помощью Feast
- Материализация признаков в оперативное хранилище
- Получение признаков, корректных на момент времени