Skip to content

Commit 9ed3a52

Browse files
authored
Update README.md
1 parent d7ab50c commit 9ed3a52

File tree

1 file changed

+28
-1
lines changed

1 file changed

+28
-1
lines changed

app/fednlp/README.md

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,31 @@
1-
**FedNLP INTRO**
1+
# FedNLP: A Research Platform for Federated Learning in Natural Language Processing
2+
3+
<!-- This is FedNLP, an application ecosystem for federated natural language processing based on FedML framework (https://github.com/FedML-AI/FedML). -->
4+
5+
FedNLP is a research-oriented benchmarking framework for advancing *federated learning* (FL) in *natural language processing* (NLP). It uses the FedML API in its backend for for various Federated algorithms like FedAvg and FedOpt and platforms (Distributed Computing, IoT/Mobile, Standalone).
6+
7+
The figure below is the overall structure of FedNLP.
8+
![avatar](./FedNLP.png)
9+
10+
## Installation
11+
12+
conda create -n fednlp python=3.7
13+
conda activate fednlp
14+
pip install fedml
15+
pip install -r requirements.txt
16+
17+
## Code Structure of FedNLP
18+
19+
- `data`: provide data downloading scripts and raw data loader to process original data and generate h5py files. Besides, `data/advanced_partition` offers some practical partition functions to split data for each client.
20+
21+
- `data/data_preprocessing`: preprocessors, examples and utility functions for each task formulation.
22+
23+
- `data/data_manager`: data manager is responsible for loading dataset and partition data from h5py files and driving preprocessor to transform data to features.
24+
25+
- `{application_name}/`: Each folder contains the required trainers, data_loaders and configs for running the examples.
26+
27+
28+
## How to run the examples
229

330
We provide 4 different NLP applications namely Text Classification, Sequence Tagging, Span Extraction and Sequence2Sequence. We provide examples for each application and also provide steps on how to run each application below. We have provided download scripts for 12 different datasets across these 4 applications.
431

0 commit comments

Comments
 (0)