Model performance at a glance
Synthetic comparison · low-rating class · values on a 0–1 scale
Exploring customer satisfaction and shopping patterns through interpretable machine learning, order segmentation and customer feedback.
Decorative bars · not a time series
Synthetic comparison · low-rating class · values on a 0–1 scale
Rank delivered orders by predicted low-rating risk. Evaluate how many actual low-rating orders appear within the top review budget.
A practical review budget, not a model accuracy target.
Four illustrative segments · not fitted clusters
Synthetic low-rating rates by delivery delay
Generated from 500 synthetic orders · not the report cohort
Adjust the share of orders reviewed. All numbers are computed from the same synthetic cohort.
Display identifiers and scores are generated for this prototype.
| Order | Risk score | Delay | Freight share | Observed synthetic label |
|---|
Synthetic 2D projection · 160 points · not a fitted model
Use order value, item count, freight share and delivery delay to build clusters. Compare low-rating rates afterwards to avoid defining groups by their outcome.
Standardize numeric features · try 2–6 clusters · repeat random seeds · examine cluster size and stability.
These names and values are placeholders; final profiles will follow the actual cluster centers.
| Segment | Share | Mean order value | Mean freight share | Mean delay | Low-rating rate |
|---|---|---|---|---|---|
| Routine | 42% | R$ 94 | 15% | −3.4 days | 4.8% |
| High-value | 24% | R$ 486 | 8% | −2.1 days | 7.2% |
| Freight-heavy | 19% | R$ 71 | 32% | −0.8 days | 10.4% |
| Delayed | 15% | R$ 138 | 18% | +8.2 days | 25.6% |
Illustrative links only · line thickness represents example counts
The proposed main threshold is 20 joint occurrences, confidence ≥ 10%, and lift > 1. All 95,146 baskets remain in the support denominator.
Count-based support uses 95,146 as denominator; confidence and lift use fabricated antecedent and consequent counts.
| Example rule | Joint count | Support | Confidence | Lift |
|---|
Decorative term sizes · not measured TF–IDF weights
Decorative term sizes · not measured TF–IDF weights
Fabricated holdout confusion matrix · 1,000 synthetic reviews
| Actual / predicted | Low rating | High rating |
|---|---|---|
| Low rating | 240 | 60 |
| High rating | 90 | 610 |
Normalize text → apply Portuguese stopwords → retain meaningful negation → StringToWordVector → TF–IDF → NaiveBayesMultinomial.
Learn the vocabulary and IDF weights from training data only. Star-rating groups are the classification labels; these are not manually annotated complaint topics.
Review nine tables. Aggregate items and payments before order-level joins.
Apply eligibility rules. Build order, basket and review datasets.
Classification, clustering, association mining and text classification.
Independent time tests, stability checks, sensitivity analysis and bounded conclusions.
Versions shown below are supplied by the report; remaining versions need to be recorded.
| Tool | Version | Purpose |
|---|---|---|
| Python | 3.12.14 | Preparation and splitting |
| pandas | 3.0.1 | Aggregation and joins |
| Weka / Java | To record | Mining experiments |
| Matplotlib / Seaborn | Planned | Report figures |
| Streamlit / Plotly | Planned | Python-based dashboard |
This downloadable prototype uses standalone HTML, CSS, JavaScript and inline SVG. It does not run Weka or Streamlit.
Proposal-stage status based on the supplied project description.