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 CharacteristicClass Labels
1Social class1: AB
2: C1-C2
3: DE
2Age of income earner1: Young (≀ 35)
2: Medium (35~65)
3: Old (> 65)
3Live alone1: Yes
2: No
4Employment status1: Unemployed
2: Employed
5Income1: 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_t0 to load_t335 represent 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_t0 to load_t287 (first 6 days) as input
  • Predict load_t288 to load_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