Closed Merak2 closed 1 year ago
你说的对,是我疏忽了。等我有空时我就修复代码。
Hi, @Merak2.
关于你提出的问题,我又思考了一下。我在数据集的全局 transform 中仅默认设置了 Normalize()
,而其实如果有对训练数据采取 Normalize()
,那么同样需要对 testset 使用 Normalize()
。因为拟合模型的数据的 scale 和测试数据的 scale 不同的话,模型的表现会变得很差。ref: https://datascience.stackexchange.com/questions/27615/should-we-apply-normalization-to-test-data-as-well
当然你的问题是有价值的,我会将 transform 细分成 general_transform 和 train_transform。前者用在全部数据上,而后者仅用在训练数据上。我会尽快实现这个功能。
谢谢你给出的参考以及细分transform的计划。
https://github.com/KarhouTam/FL-bench/blob/master/src/client/fedavg.py#L36,我注意到这个transform是作用在整个数据集上,数据增强一般都作用在trainSet吧?testSet不应该进行操作。