Заходите поздороваться в Slack!
Feast ( Feature Store ) — это хранилище функций с открытым исходным кодом для машинного обучения. Feast — это самый быстрый способ управления существующей инфраструктурой для производства аналитических данных для обучения моделей и онлайн-выводов.
Feast позволяет командам платформы ML:
Пожалуйста, ознакомьтесь с нашей документацией для получения дополнительной информации о проекте.
Вышеуказанная архитектура представляет собой минимальное развертывание Feast. Хотите запустить полную версию Feast на Snowflake/GCP/AWS? Кликните сюда.
pip install feast
feast init my_feature_repo
cd my_feature_repo/feature_repo
feast apply
feast ui
from feast import FeatureStore
import pandas as pd
from datetime import datetime
entity_df = pd . DataFrame . from_dict ({
"driver_id" : [ 1001 , 1002 , 1003 , 1004 ],
"event_timestamp" : [
datetime ( 2021 , 4 , 12 , 10 , 59 , 42 ),
datetime ( 2021 , 4 , 12 , 8 , 12 , 10 ),
datetime ( 2021 , 4 , 12 , 16 , 40 , 26 ),
datetime ( 2021 , 4 , 12 , 15 , 1 , 12 )
]
})
store = FeatureStore ( repo_path = "." )
training_df = store . get_historical_features (
entity_df = entity_df ,
features = [
'driver_hourly_stats:conv_rate' ,
'driver_hourly_stats:acc_rate' ,
'driver_hourly_stats:avg_daily_trips'
],
). to_df ()
print ( training_df . head ())
# Train model
# model = ml.fit(training_df)
event_timestamp driver_id conv_rate acc_rate avg_daily_trips
0 2021-04-12 08:12:10+00:00 1002 0.713465 0.597095 531
1 2021-04-12 10:59:42+00:00 1001 0.072752 0.044344 11
2 2021-04-12 15:01:12+00:00 1004 0.658182 0.079150 220
3 2021-04-12 16:40:26+00:00 1003 0.162092 0.309035 959
CURRENT_TIME=$(date -u +"%Y-%m-%dT%H:%M:%S")
feast materialize-incremental $CURRENT_TIME
Materializing feature view driver_hourly_stats from 2021-04-14 to 2021-04-15 done!
from pprint import pprint
from feast import FeatureStore
store = FeatureStore ( repo_path = "." )
feature_vector = store . get_online_features (
features = [
'driver_hourly_stats:conv_rate' ,
'driver_hourly_stats:acc_rate' ,
'driver_hourly_stats:avg_daily_trips'
],
entity_rows = [{ "driver_id" : 1001 }]
). to_dict ()
pprint ( feature_vector )
# Make prediction
# model.predict(feature_vector)
{
"driver_id" : [ 1001 ],
"driver_hourly_stats__conv_rate" : [ 0.49274 ],
"driver_hourly_stats__acc_rate" : [ 0.92743 ],
"driver_hourly_stats__avg_daily_trips" : [ 72 ]
}
Список ниже содержит функциональные возможности, которые участники планируют разработать для Feast.
Мы приветствуем вклад во все пункты дорожной карты!
Источники данных
Офлайн-магазины
Интернет-магазины
Особенности проектирования
Потоковое вещание
Развертывания
Обслуживание функций
Управление качеством данных (см. RFC)
Обнаружение функций и управление
Обработка естественного языка
Пожалуйста, обратитесь к официальной документации в разделе «Документация».
Feast — это общественный проект, который все еще находится в стадии активной разработки. Если вы хотите внести свой вклад в проект, пожалуйста, ознакомьтесь с нашими руководствами по участию и разработке:
Спасибо этим невероятным людям: