¡Ven a saludar en Slack!
Feast ( Fea ture Store ) es una tienda de funciones de código abierto para el aprendizaje automático. Feast es el camino más rápido para gestionar la infraestructura existente para producir datos analíticos para el entrenamiento de modelos y la inferencia en línea.
Feast permite a los equipos de la plataforma ML:
Consulte nuestra documentación para obtener más información sobre el proyecto.
La arquitectura anterior es la implementación mínima de Feast. ¿Quiere ejecutar el Feast completo en Snowflake/GCP/AWS? Haga clic aquí.
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 ]
}
La siguiente lista contiene la funcionalidad que los contribuyentes planean desarrollar para Feast.
¡Agradecemos las contribuciones a todos los elementos de la hoja de ruta!
Fuentes de datos
Tiendas sin conexión
Tiendas en línea
Ingeniería de características
Transmisión
Implementaciones
Publicación de funciones
Gestión de Calidad de Datos (Ver RFC)
Descubrimiento y gobernanza de funciones
Procesamiento del lenguaje natural
Consulte la documentación oficial en Documentación.
Feast es un proyecto comunitario y todavía está en desarrollo activo. Eche un vistazo a nuestras guías de contribución y desarrollo si desea contribuir al proyecto:
Gracias a estas personas increíbles: