Intentify / README.md
KarthikaKrishna123's picture
Update README.md
13d7bc4 verified
|
Raw
History Blame Contribute Delete
2.14 kB
---
title: Intentify AI Engine
emoji: 🛒
colorFrom: blue
colorTo: indigo
sdk: streamlit
sdk_version: 1.32.0
app_file: app.py
pinned: false
license: mit
---
# 🛒 Intentify: Real-Time E-Commerce Conversion Engine
![Python](https://img.shields.io/badge/Python-3.10+-blue.svg)
![Streamlit](https://img.shields.io/badge/Streamlit-1.32.0-FF4B4B.svg)
![Scikit-Learn](https://img.shields.io/badge/scikit--learn-1.4.1-orange.svg)
## 📌 Overview
Intentify is a real-time machine learning inference engine designed to optimize e-commerce conversion rates. It analyzes live user session telemetry (clickstream data, page durations, bounce rates) to predict purchase intent. This allows frontend systems to trigger dynamic, targeted marketing interventions—like personalized discounts—only to users who need a nudge, maximizing revenue while preserving profit margins.
## 🚀 Key Engineering Features
* **Cost-Sensitive Learning:** Handles severe class imbalance (3.8% vs 56.3%) using algorithmic penalization (`class_weight='balanced'`).
* **Dynamic Middleware:** Computes engineered features (e.g., `avg_time_per_product`, `bounce_exit_score`) on the fly from raw telemetry with integrated Laplace smoothing to prevent division-by-zero crashes.
* **Hyperparameter Optimization:** Utilized `GridSearchCV` to optimize the F1-Score, perfectly balancing False Positives (wasted ad spend) and False Negatives (lost sales), achieving an **86% Recall rate** on the minority class.
* **Robust Pipeline Architecture:** Employs a Scikit-Learn `ColumnTransformer` for precise feature routing (OHE for categorical IDs, Standard Scaling for continuous metrics), eliminating data leakage.
## 🛠️ Tech Stack
* **Machine Learning:** `scikit-learn`, `pandas`, `numpy`, `joblib`
* **Web Framework:** `streamlit`
* **Deployment:** Hugging Face Spaces
## 📂 System Architecture
The application runs on a decoupled architecture where the `app.py` frontend acts as middleware, receiving raw user inputs, dynamically computing 6 engineered telemetry features, and passing a compiled payload to the serialized `intentify_model.pkl` inference pipeline.