GithubHelp home page GithubHelp logo

cservan / fedbert Goto Github PK

View Code? Open in Web Editor NEW

This project forked from karapto/fedbert

0.0 0.0 0.0 125 KB

FedBERT : A federated approach that enables clients with limited computing resource to participate without violating data privacy.

Jupyter Notebook 100.00%

fedbert's Introduction

FedBERT

Summary

The rapid advancement of pre-trained models (PTMs) has revolutionized natural language processing (NLP) by offering powerful techniques for various NLP applications. These PTMs allow users to download model weights and fine-tune them for specific tasks locally. However, the pre-training process of these models heavily relies on access to large-scale training data and requires substantial computing resources. These strict requirements make it infeasible for individual clients to pre-train such models independently.

To address this challenge and enable clients with limited computing capabilities to participate in pre-training large models, we introduce a novel learning approach called FedBERT. FedBERT leverages the principles of federated learning and split learning to pre-train BERT in a federated manner. By doing so, FedBERT ensures that raw data information is not shared while achieving excellent performance.

This repository is a proof of concept for the reference [Yua22]. However, the experimental setup and model structure are somewhat different.

Installation

  1. Clone the project:
$ git clone https://github.com/karapto/FedBERT.git && cd FedBERT
  1. Pip-install dependencies. For example using a virtualenv:
$ virtualenv env && source env/bin/activate && pip install -r requirements.txt
  1. Run the notebook:
$ jupyter notebook

References

[Yua22] Tian, Yuanyishu, Yao Wan, Lingjuan Lyu, Dezhong Yao, Hai Jin, and Lichao Sun. "FedBERT: when federated learning meets pre-training." ACM Transactions on Intelligent Systems and Technology (TIST) 13, no. 4 (2022): 1-26.

fedbert's People

Contributors

karapto avatar

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.