Major rewrite of the package for a configurable, dual-backend neural-network imputer.
deepimp_arch() (number and size of hidden layers, dropout,
activation, batch normalisation, optimiser, learning rate), replacing
the previously hard-coded network.torch backend (default; no
Python required) and an optional keras3 backend, selected
with backend = "torch" / "keras".impNNetCoDa() reimplemented on the shared imputation
engine for rounded zeros in compositional data, with
correction = "truncate" (default, Templ 2021),
"expectation", or "none"."deepimp" object; read the
completed data with getImputed() (or
as.data.frame()), and inspect with print(),
summary(), and plot().seed argument. Reproducibility
is exact when dropout = 0; with dropout > 0
the backend’s training-time randomness is not fully pinned by the seed
in the current torch build (repeated runs are close but may not be
bit-identical).vignette("deepImp"), and a package overview
page (?deepImp).impNNetCoDa(initialize = "kNNa") no longer aborts at
high rounded-zero rates. The compositional-kNN initialiser
(robCompositions::impKNNa()) can fail with
'probs' not in [0, 1] when a large fraction of every part
falls below the detection limit; the initialiser now falls back to
knn (with a warning) instead of stopping the
imputation.impNNet() was redesigned. Legacy arguments
dense, small, normalize_x, and
normalize_y are soft-deprecated (a warning maps them onto
the new API). The arguments model_numeric,
model_binary, model_nominal, and
loss were removed; configure the network through
arch and backend instead.m > 1, impNNet() /
impNNetCoDa() return several completed data sets. These are
stochastic replicate completions, not statistically valid multiple
imputation.