SocioDiff Synthetic Load Dataset
May 25, 2025 Β· View on GitHub
This repository provides the synthetic residential load dataset generated using the SocioDiff framework, as described in our paper:
"SocioDiff: A Socio-aware Diffusion Model for Residential Load Data Generation" [Under review at IEEE Transactions on Smart Grid]
π Overview
The SocioDiff Dataset aims to support research in energy consumption forecasting, synthetic data generation, and socio-demographic behavior modeling. It simulates realistic residential electricity load profiles based on a combination of real socio-demographic information and learned consumption patterns.
We also plan to release the full source code upon the acceptance of the associated paper. The code repository is hosted at: https://github.com/Intelligame/SocialDiff_code.
π§© Dataset Description
Each sample in the dataset consists of:
- Input: socio-demographic features (e.g., income level, household size, education, age group, etc.)
- Output: a daily electricity load time series of 336 time steps (30-minute intervals for one week)
The dataset is generated using a conditional diffusion model trained on a proprietary dataset of 4,000 households collected over 3 years. For privacy reasons, the original data is not released. This synthetic version mimics its statistical characteristics without leaking private information.
π Data Source
The original real-world load data used to train the SocioDiff model is the Commission for Energy Regulation (CER) Smart Metering Project dataset, which contains electricity consumption data for Irish residential consumers. The CER dataset is publicly available from the Irish Social Science Data Archive (ISSDA) and can be accessed at the following link:
π https://www.ucd.ie/issda/data/commissionforenergyregulationcer/
Please note that access may require agreement to ISSDAβs data usage terms.
βοΈ Social Characteristics Used in Conditioning
The following socio-demographic attributes are used in SocioDiff for conditional generation. Underrepresented groupsβthose with lower presence in the datasetβare marked in bold, as they are particularly important for fairness-aware data modeling.
| No. | Social Characteristic | Class Labels |
|---|---|---|
| 1 | Social class | 1: AB 2: C1-C2 3: DE |
| 2 | Age of income earner | 1: Young (β€ 35) 2: Medium (35~65) 3: Old (> 65) |
| 3 | Live alone | 1: Yes 2: No |
| 4 | Employment status | 1: Unemployed 2: Employed |
| 5 | Income | 1: Poor (β€ 30,000) 2: Medium (30,000~75,000) 3: Rich (> 75,000) |
These socio-demographic features are extracted from the RESIDENTIAL PRE TRIAL SURVEY, which was conducted as part of the Irish CER Smart Metering Project. The survey collected detailed information on household composition, income, employment, and other social attributes before the metering trial. This structured metadata provides a reliable foundation for conditioning the generative model and ensuring that the resulting synthetic load profiles reflect real-world demographic diversity.
π§ͺ Generation Method
The data is produced using a conditional diffusion model trained to map structured socio-demographic features to residential load patterns. The model captures both temporal patterns and socio-contextual variations, enabling the generation of realistic and diverse consumption profiles.
Detailed methodology is available in Section III of our paper.
π Files
generated_data/pred_data.csv: tabular data where each row contains socio-demographic attributes and the corresponding generated 336-length load sequence.
π Format Example
social,age,alone,employment,income,load_t0,load_t1,...,load_t335
DE,Old,Alone,Unemployed,Poor,0.10439315,0.12021788,...,0.28655297
Each row represents a synthetic weekly electricity consumption profile for one household, conditioned on its socio-demographic attributes.
- The fields
load_t0toload_t335represent 336 consecutive load measurements, each spaced at 30-minute intervals, covering a full 7-day period (48 points per day Γ 7 days).
π οΈ How to Use the Dataset
This dataset is designed to support downstream tasks such as residential load forecasting, fairness-aware modeling, and social behavior analysis. Below is a guide on how to use it effectively:
1. Load Forecasting Task
To use the dataset for short-term or day-ahead load forecasting:
- Treat
load_t0toload_t287(first 6 days) as input - Predict
load_t288toload_t335(7th day) - Optionally include socio-demographic fields as auxiliary inputs
2. Suggested Preprocessing
- Convert categorical attributes to one-hot or embedding indices if using neural networks
- Normalize load values if needed
- Apply sliding windows if you wish to create multiple overlapping samples per household
3. Example Use Case (PyTorch-style input)
import pandas as pd
data = pd.read_csv("generated_data/pred_data.csv")
X_social = data[['social', 'age', 'alone', 'employment', 'income']]
X_load = data[[f'load_t{i}' for i in range(288)]]
y_load = data[[f'load_t{i}' for i in range(288, 336)]]
This format allows you to train models that predict future electricity usage conditioned on both historical consumption and socio-demographic context.
π License
This dataset is released under the CC BY-NC 4.0 License. You are free to use, adapt, and share it for non-commercial research purposes, provided that you cite the original paper.
π Citation
If you use this dataset in your research, please cite:
@article{SocioDiff2025,
title={SocioDiff: A Socio-aware Diffusion Model for Residential Load Data Generation},
author={Chen, Weilong and others},
journal={IEEE Transactions on Smart Grid},
year={2025},
note={Under review}
}
π¬ Contact
For questions or collaborations, please contact:
Weilong Chen
University of Electronic Science and Technology of China
Email: chenweilong921@gmail.com