diff --git a/src/decentralizepy/node/Node.py b/src/decentralizepy/node/Node.py index 48bb1acfce05a09c27a93cc8d17b638f3f329191..e5764aea2430e0c9f8de57a34825e77400d4765d 100644 --- a/src/decentralizepy/node/Node.py +++ b/src/decentralizepy/node/Node.py @@ -124,7 +124,10 @@ class Node: """ dataset_module = importlib.import_module(dataset_configs["dataset_package"]) self.dataset_class = getattr(dataset_module, dataset_configs["dataset_class"]) - torch.manual_seed(dataset_configs["random_seed"]) + random_seed = ( + dataset_configs["random_seed"] if "random_seed" in dataset_configs else 97 + ) + torch.manual_seed(random_seed) self.dataset_params = utils.remove_keys( dataset_configs, ["dataset_package", "dataset_class", "model_class", "random_seed"], diff --git a/src/decentralizepy/sharing/PartialModel.py b/src/decentralizepy/sharing/PartialModel.py index 529f6733d464e294e01bf38deccfa45446e59bb5..6a8f0cb71a3468f7aa33d0bbd91172c4be4ffefd 100644 --- a/src/decentralizepy/sharing/PartialModel.py +++ b/src/decentralizepy/sharing/PartialModel.py @@ -3,6 +3,7 @@ import logging import os from pathlib import Path +import numpy as np import torch from decentralizepy.sharing.Sharing import Sharing @@ -155,7 +156,7 @@ class PartialModel(Sharing): if not self.dict_ordered: raise NotImplementedError - m["indices"] = G_topk.numpy() + m["indices"] = G_topk.numpy().astype(np.int32) m["params"] = T_topk.numpy() @@ -206,7 +207,7 @@ class PartialModel(Sharing): tensors_to_cat.append(t) T = torch.cat(tensors_to_cat, dim=0) - index_tensor = torch.tensor(m["indices"]) + index_tensor = torch.tensor(m["indices"], dtype=torch.long) logging.debug("Original tensor: {}".format(T[index_tensor])) T[index_tensor] = torch.tensor(m["params"]) logging.debug("Final tensor: {}".format(T[index_tensor]))