Hi, thanks for the package.
There's a minor bug in GainPlugin class, in that it doesn't pass down the arguments to GainImputation:
https://github.com/vanderschaarlab/hyperimpute/blob/main/src/hyperimpute/plugins/imputers/plugin_gain.py#L332-L349
To reproduce:
from hyperimpute.plugins.imputers import Imputers
n_epochs=256
gain = Imputers().get('gain', n_epochs=n_epochs)
assert gain._model.n_epochs == n_epochs, 'Argument not passed down'
Also, perhaps the name of the argument "n_epochs" in GAIN should be changed, as it is really the number of gradient steps/iterations, and not passes over the entire dataset (e.g. an epoch).
Hope this helps.