GithubHelp home page GithubHelp logo

chuanting / fedda Goto Github PK

View Code? Open in Web Editor NEW
61.0 1.0 15.0 463 KB

Source code for 'Dual Attention Based FL for Wireless Traffic Prediction'

Python 85.94% Shell 14.06%
federated-learning wireless-traffic-prediction spatial-temporal-forecasting

fedda's Introduction

Introduction

This is the source code for our paper entitled 'Dual Attention-Based Federated Learning for Wireless Traffic Prediction'.

Datasets

First one Milano and second one Trentino

Runnable scripts

You can also find an runnable code of our paper at Codeocean

Abstract

Wireless traffic prediction is essential for cellular networks to realize intelligent network operations, such as loadaware resource management and predictive control. Existing prediction approaches usually adopt centralized training architectures and require the transferring of huge amounts of traffic data, which may raise delay and privacy concerns for certain scenarios. In this work, we propose a novel wireless traffic prediction framework named Dual Attention-Based Federated Learning (FedDA), by which a high-quality prediction model is trained collaboratively by multiple edge clients. To simultaneously capture the various wireless traffic patterns and keep raw data locally, FedDA first groups the clients into different clusters by using a small augmentation dataset. Then, a quasi-global model is trained and shared among clients as prior knowledge, aiming to solve the statistical heterogeneity challenge confronted with federated learning. To construct the global model, a dual attention scheme is further proposed by aggregating the intra and inter-cluster models, instead of simply averaging the weights of local models. We conduct extensive experiments on two real-world wireless traffic datasets and results show that FedDA outperforms state-of-the-art methods. The average mean squared error performance gains on the two datasets are up to 10% and 30%, respectively.

System Model

FedDA system model

Update Rules

Federated Optimization

Paper

If you find the code useful, please cite our paper in your work as follows:

C. Zhang, S. Dang, B. Shihada and M. -S. Alouini, "Dual Attention-Based Federated Learning for Wireless Traffic Prediction," IEEE INFOCOM 2021 - IEEE Conference on Computer Communications, 2021, pp. 1-10.

fedda's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

fedda's Issues

error

OSError: Unable to open file (unable to open file: name = 'D:\Paper\HBUT\First semester\RL\Code\FedDA-main/dataset/trento.h5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)

I ran the code, but the above error occurred. How should I solve this? Looking forward to your answer, my email is [email protected]

module missing

module missing
Traceback (most recent call last):
File "D:\FedDA-main\FedDA-main\fed_att_algo.py", line 23, in
from DualFedAtt.utils.misc import args_parser, average_weights_att
ModuleNotFoundError: No module named 'DualFedAtt'
Press any key to continue . . .

three different wireless traffic data

Hi, sir. The problem of the last data has been solved. Thank you very much for your answer. I have another question,how do I get the three different wireless traffic data shown in Figure 4 of the paper?

internet service evaluation

Traceback (most recent call last):
File "D:\FedDA-main\FedDA-main\fed_dual_att.py", line 106, in
data, df_ori, selected_cells, mean, std, lng, lat = get_data(args)
File "D:\FedDA-main\FedDA-main\utils\misc.py", line 172, in get_data
data = f[args.type][()][:, cell - 1]
File "h5py_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "C:\ProgramData\Anaconda3\envs\pytorch\lib\site-packages\h5py_hl\group.py", line 305, in getitem
oid = h5o.open(self.id, self._e(name), lapl=self._lapl)
File "h5py_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "h5py\h5o.pyx", line 190, in h5py.h5o.open
KeyError: "Unable to open object (object 'internet' doesn't exist)"

kindly reply
Press any key to continue . . .

Dataset Question

  1. Is the "milano.h5/trentino.h5" dataset you are providing an augmented dataset as represented in paper?
  2. Can you explain how the 3 types that is "Call/SMS/Internet" traffic data is calculated as a single CDR value?

Thank you

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.