Skip to content

About

Feast feature store for claims fraud features with file offline store and Redis online store.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Feature Store with Feast

Centralized feature engineering and serving platform built on Feast for healthcare fraud detection. This project implements a complete feature store pipeline with offline (file-based) and online (Redis) stores, supporting both batch training and low-latency real-time inference.

Architecture

Raw Claims Data (Parquet)
        |
  Feature Pipeline
        |
   +-----------+
   |   Feast   |
   +-----+-----+
   |           |
Offline Store  Online Store
 (Parquet)      (Redis)
   |               |
Training Data   Real-time
Retrieval       Serving

Features

  • Entity Definitions: Provider, Patient, and Claim entities with proper join keys
  • Feature Views: Provider-level, patient-level, and claim-level feature aggregations
  • On-Demand Features: Computed features like amount deviation from provider averages
  • Feature Service: Unified feature retrieval interface for fraud detection models
  • Materialization Pipeline: Scheduled push from offline to online store
  • REST API: FastAPI-based feature serving endpoints
  • Synthetic Data Generation: Realistic healthcare claims data with configurable fraud rates

Project Structure

feast-feature-store/
├── feature_repo/
│   ├── feature_store.yaml      # Feast configuration
│   ├── entities.py             # Entity definitions
│   ├── feature_definitions.py  # Feature view definitions
│   └── data/                   # Registry and offline store
├── src/
│   ├── data_generator.py       # Synthetic data generation
│   ├── feature_pipeline.py     # Feature computation pipeline
│   ├── model_training.py       # ML training with feature store
│   └── api.py                  # REST API for feature serving
├── configs/
│   └── config.yaml             # Pipeline configuration
├── data/                       # Generated parquet files
├── requirements.txt
└── README.md

Quick Start

Prerequisites

  • Python 3.9+
  • Redis server running on localhost:6379
  • pip package manager

Installation

pip install -r requirements.txt

Generate Synthetic Data

python src/data_generator.py

Apply Feature Definitions

cd feature_repo
feast apply

Run Feature Pipeline

python src/feature_pipeline.py

Materialize Features to Online Store

feast materialize 2023-01-01T00:00:00 2024-01-01T00:00:00

Train Model

python src/model_training.py

Start API Server

uvicorn src.api:app --host 0.0.0.0 --port 8000

Feature Definitions

Provider Features

Feature Description
billing_frequency Number of claims submitted per month
avg_claim_amount Average dollar amount per claim
specialty Provider medical specialty code
patient_count Number of unique patients seen
claim_denial_rate Fraction of claims denied

Patient Features

Feature Description
age Patient age in years
num_claims Total number of claims filed
total_billed Cumulative billed amount
avg_days_between_claims Average gap between consecutive claims
num_unique_providers Number of distinct providers visited

Claim Features

Feature Description
amount Claim dollar amount
procedure_code CPT procedure code
diagnosis_code ICD-10 diagnosis code
days_since_last_claim Days since patient's previous claim
provider_patient_pair_frequency How often this provider-patient pair appears

API Endpoints

Method Endpoint Description
POST /features/online Retrieve online features for an entity
POST /features/historical Retrieve historical features with timestamps
POST /materialize Trigger feature materialization
GET /feature-views List all registered feature views
GET /health Health check

Configuration

All pipeline parameters are configured via configs/config.yaml, including data generation settings, materialization windows, and feature retrieval timeouts.

License

MIT License

About

Feast feature store for claims fraud features with file offline store and Redis online store.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages