Book Image

Feature Store for Machine Learning

By : Jayanth Kumar M J
Book Image

Feature Store for Machine Learning

By: Jayanth Kumar M J

Overview of this book

Feature store is one of the storage layers in machine learning (ML) operations, where data scientists and ML engineers can store transformed and curated features for ML models. This makes them available for model training, inference (batch and online), and reuse in other ML pipelines. Knowing how to utilize feature stores to their fullest potential can save you a lot of time and effort, and this book will teach you everything you need to know to get started. Feature Store for Machine Learning is for data scientists who want to learn how to use feature stores to share and reuse each other's work and expertise. You’ll be able to implement practices that help in eliminating reprocessing of data, providing model-reproducible capabilities, and reducing duplication of work, thus improving the time to production of the ML model. While this ML book offers some theoretical groundwork for developers who are just getting to grips with feature stores, there's plenty of practical know-how for those ready to put their knowledge to work. With a hands-on approach to implementation and associated methodologies, you'll get up and running in no time. By the end of this book, you’ll have understood why feature stores are essential and how to use them in your ML projects, both on your local system and on the cloud.
Table of Contents (13 chapters)
1
Section 1 – Why Do We Need a Feature Store?
4
Section 2 – A Feature Store in Action
9
Section 3 – Alternatives, Best Practices, and a Use Case

Feast usage

In this section, let's continue in the same notebook in which we initialized the demo project previously, register the feature view and entities, and use the Feast API to retrieve features.

Register feature definitions

The following code block registers all the entities and feature views defined in the example.py file:

%cd demo
!feast apply

The preceding code produces the following output:

/content/demo
Created entity driver_id
Created feature view driver_hourly_stats
Created sqlite table demo_driver_hourly_stats

The output message is straightforward except the last line, where it says Created sqlite table demo_driver_hourly_stats. This comes up if you have online=True set in the FeatureView. The apply command creates the registry.db and online_store.db files, which have been set in feature_store.yaml.

Now that entities and feature views have been registered, we can connect to the feature store and browse through the existing...