Git Product home page Git Product logo

arm's People

Contributors

henrikmarklund avatar zhangmarvin avatar

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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

arm's Issues

How to reproduce the streaming experiment?

Hi, thanks for sharing the codes.
I checked the codes but did not find the codes or instructions for reproducing the results of the streaming setting. Did I miss something? Or will you provide instruction on reproducibility in the future?

some problem with the context c

What an excellent job!
But I still have some problems with the context c.

  1. In this work, you take advantage of the context network to extract the conditional distribution p_{y|x} from the input data and use the conditional distribution to guide the prediction network. Is this right? If not, can you answer for me what context c specifically refers to?
  2. What is the role of context c in prediction networks?
    These questions have bothered me for a long time. If you are willing, I hope you can answer it for me.
    Thank you! I will look forward to your reply very much!

How to test the model trained on FEMNIST dataset if the users in the testing set are disjoint from the uesers in the training set?

Hi,

I got one problem when i running your code on FEMNIST dataset.

I noted that you labeled the group ids of instances from their user ids. However, as descirbed in your paper, the users in the testing set are disjoint from the users in the training set. Thus, when evaluating the trained model,

python test_on_groups.py --eval_on test --use_context 1 --binning 1  --ckpt_folders CKPT --n_test_dists 15

I got the following error report

Traceback (most recent call last):
  File "test.py", line 261, in <module>
    test_stats = test(args, eval_on='test')
  File "test.py", line 136, in test
    test_loader, eval_dists, split='test')
  File "/home/wuyx/FL-baseline/utils/eval_utils.py", line 215, in evaluate_mixtures
    accuracies_corners = eval_dists_fn(split, args, model, loader, corner_dists, n_samples_per_dist=n_samples_per_dist)
  File "/home/wuyx/FL-baseline/utils/eval_utils.py", line 144, in eval_dists_fn
    preds_all, labels_all = eval_dist(dist, model, loader, args, n_samples_per_dist)
  File "/home/wuyx/FL-baseline/utils/eval_utils.py", line 114, in eval_dist
    loader.sampler.set_sub_dist(dist)
  File "/home/wuyx/FL-baseline/datasets/utils/samplers.py", line 258, in set_sub_dist
    self.weights = torch.as_tensor(self._get_dist(dist), dtype=torch.double)
  File "/home/wuyx/FL-baseline/datasets/utils/samplers.py", line 275, in _get_dist
    p_over_examples = np.sum(self.group_ids_probs_pre * p_over_groups, axis=1)
ValueError: operands could not be broadcast together with shapes (13328,167) (741,)

where 741 is the number of users in the training set, 13328 and 167 are the number of instances and the number of users in the testing set respectively. I think that's because computing the distribution shift needs special operations when test groups are not sampled identically to the training groups, but i don't understand how to deal with it and i can't find this evaluation process in your repo either.

Looking foward to your answer~

A question about training batch sampling

I read the paper carefully, but I am still confused with the training batch sampling. Each batch images are sampled from a training group, but how do the authors divide the training dataset into S groups with different distributions?.

I hope the authors could note this issue and am looking forward to receiving your reply.

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.