This project applies Bayesian linear modeling techniques to the Concrete Compressive Strength Dataset from the UCI Machine Learning Repository. The primary objective is to analyze the relationship between material composition and compressive strength using probabilistic inference.
- Bayesian Analysis of Concrete Compressive Strength
- 🏗️ Concrete Compressive Strength Dataset – Introduction
- 📦 Environment Setup Guide (Windows 10/11)
The Concrete Compressive Strength dataset is a widely used benchmark for regression modeling, sourced from the UCI Machine Learning Repository. It contains experimental data on how the proportions of different concrete ingredients affect the material’s strength. Below is a typical setup used in compressive strength testing of concrete cylinders:
Figure: Compression test configuration for a concrete cylinder
Source: ResearchGate - Compression Test Configuration
- Objective: Predict the compressive strength (in MPa) of concrete based on its ingredient mix.
- Records: 1,030 observations
- Features: 8 numerical input variables + 1 target
- Target: Concrete compressive strength (MPa)
| Feature | Description | 
|---|---|
| Cement | Cement content | 
| Blast Furnace Slag | Supplementary cementitious material | 
| Fly Ash | Alternative cementitious material | 
| Water | Water content | 
| Superplasticizer | Chemical additive to improve flow | 
| Coarse Aggregate | Gravel or crushed stone | 
| Fine Aggregate | Sand | 
| Age | Curing time in days | 
- Target: Strength– compressive strength of concrete after curing for 90 days.
This guide walks you through installing the necessary tools to run Bayesian models using PyMC with compiler and performance support on a Windows system.
PyMC uses PyTensor as a backend that benefits from C compilation. You'll need a working g++ compiler.
- Download the "TDM-GCC x64 for 64-bit" installer. Download from here
- Run the installer:
- Choose TDM-GCC 10.3.0-2.exe (default is fine)
- Keep all components selected
- Install to: C:\TDM-GCC-64\(or leave default)
 
Open Command Prompt and run:
g++ --versionYou should see something like:
g++ (tdm64-1) 10.3.0
We recommend using uv or venv to create a clean workspace.
uv venv .venvInstall PyMC and performance libraries:
uv add pymc arviz numba pytensor