Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Add api ref for mf task and context #53

Merged
merged 2 commits into from
May 4, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions doc/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,4 @@ Welcome to FederatedScope's documentation!
gfl.rst
autotune.rst
attack.rst
mf.rst
26 changes: 26 additions & 0 deletions doc/source/mf.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
Federated Matrix Factorization Module References
=======================

federatedscope.mf.dataset
-----------------------

.. automodule:: federatedscope.mf.dataset
:members:

federatedscope.mf.model
-----------------------

.. automodule:: federatedscope.mf.model
:members:

federatedscope.mf.dataloader
-----------------------

.. automodule:: federatedscope.mf.dataloader
:members:

federatedscope.mf.trainer
-----------------------

.. automodule:: federatedscope.mf.trainer
:members:
2 changes: 1 addition & 1 deletion enviroment/requirements-torch1.10-application.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ scikit-learn
pytorch==1.10.1
torchvision==0.11.2
torchaudio==0.10.1
cudatoolkit==11.3.1
cudatoolkit
wandb
tensorboard
tensorboardX
Expand Down
13 changes: 12 additions & 1 deletion federatedscope/core/trainers/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,15 @@
from federatedscope.core.trainers.trainer import Trainer, GeneralTorchTrainer
from federatedscope.core.trainers.trainer_pFedMe import wrap_pFedMeTrainer
from federatedscope.core.trainers.context import Context
from federatedscope.core.trainers.trainer_fedprox import wrap_fedprox_trainer
from federatedscope.core.trainers.trainer_nbafl import wrap_nbafl_trainer, wrap_nbafl_server

__all__ = ['Trainer', 'GeneralTorchTrainer', 'wrap_pFedMeTrainer']
__all__ = [
'Trainer',
'Context',
'GeneralTorchTrainer',
'wrap_pFedMeTrainer',
'wrap_fedprox_trainer',
'wrap_nbafl_trainer',
'wrap_nbafl_server'
]
Empty file removed federatedscope/methods/__init__.py
Empty file.
1 change: 0 additions & 1 deletion federatedscope/methods/nbafl.py

This file was deleted.

7 changes: 5 additions & 2 deletions federatedscope/mf/dataloader/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
from federatedscope.mf.dataloader.dataloader import load_mf_dataset
from federatedscope.mf.dataloader.dataloader import load_mf_dataset, MFDataLoader

__all__ = ['load_mf_dataset']
__all__ = [
'load_mf_dataset',
'MFDataLoader'
]
6 changes: 4 additions & 2 deletions federatedscope/mf/dataloader/dataloader.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@


def load_mf_dataset(config=None):
"""Return dataset of matrix factorization
"""Return the dataset of matrix factorization

Format:
{
Expand Down Expand Up @@ -66,7 +66,7 @@ def load_mf_dataset(config=None):
class MFDataLoader(object):
"""DataLoader for MF dataset

Arguments:
Args:
data (csc_matrix): sparse MF dataset
batch_size (int): the size of batch data
shuffle (bool): shuffle the dataset
Expand Down Expand Up @@ -150,6 +150,8 @@ def __len__(self):
def __next__(self, theta=None):
"""Get the next batch of data

Args:
theta (int): the maximal number of ratings for each user
"""
idx_end = self._idx_cur + self.batch_size
if self._idx_cur == len(
Expand Down
15 changes: 10 additions & 5 deletions federatedscope/mf/dataset/__init__.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
from os.path import dirname, basename, isfile, join
import glob
from federatedscope.mf.dataset.movielens import *

modules = glob.glob(join(dirname(__file__), "*.py"))
__all__ = [
basename(f)[:-3] for f in modules
if isfile(f) and not f.endswith('__init__.py')
'VMFDataset',
'HMFDataset',
'MovieLensData',
'MovieLens1M',
'MovieLens10M',
'VFLMovieLens1M',
'HFLMovieLens1M',
'VFLMovieLens10M',
'HFLMovieLens10M'
]
168 changes: 0 additions & 168 deletions federatedscope/mf/dataset/movielens1m.py

This file was deleted.

13 changes: 7 additions & 6 deletions federatedscope/mf/model/__init__.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
from os.path import dirname, basename, isfile, join
import glob
from federatedscope.mf.model.model import BasicMFNet, VMFNet, HMFNet
from federatedscope.mf.model.model_builder import get_mfnet

modules = glob.glob(join(dirname(__file__), "*.py"))
__all__ = [
basename(f)[:-3] for f in modules
if isfile(f) and not f.endswith('__init__.py')
]
"get_mfnet",
"BasicMFNet",
"VMFNet",
"HMFNet"
]
12 changes: 7 additions & 5 deletions federatedscope/mf/trainer/__init__.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
from os.path import dirname, basename, isfile, join
import glob
from federatedscope.mf.trainer.trainer import MFTrainer
from federatedscope.mf.trainer.trainer_sgdmf import wrap_MFTrainer, init_sgdmf_ctx, embedding_clip, hook_on_batch_backward

modules = glob.glob(join(dirname(__file__), "*.py"))
__all__ = [
basename(f)[:-3] for f in modules
if isfile(f) and not f.endswith('__init__.py')
'MFTrainer',
'wrap_MFTrainer',
'init_sgdmf_ctx',
'embedding_clip',
'hook_on_batch_backward'
]
76 changes: 0 additions & 76 deletions federatedscope/mf/trainer/trainer_vgl_sgdmf.py

This file was deleted.