v0.0.21
This is a relatively big release after v0.0.18.
Breaking changes
delu.iter_batches
: now,shuffle
is a keyword-only argumentdelu.nn.Lambda
- now, this module accepts only the functions from the
torch
module or methods oftorch.Tensor
- now, the passed callable is not accessible as a public attribute
- now, this module accepts only the functions from the
delu.random.seed
: the algorithm computing the library- and device-specific seeds changed, so the result can change compared to the previous versions- In the following functions, the first arguments are now positional-only:
delu.to
delu.cat
delu.iter_batches
delu.Timer.format
delu.data.Enumerate
delu.nn.Lambda
delu.random.seed
delu.random.set_state
New features
-
Added
delu.tools
-- a new home forEarlyStopping
,Timer
and other general tools. -
Added
delu.nn.NLinear
-- a module representing N linear layers that are applied to N different inputs:
(*B, *N, D1) -> (*B, *N, D2)
, where*B
are the batch dimensions. -
Added
delu.nn.named_sequential
-- a shortcut for creatingtorch.nn.Sequential
with named modules withoutOrderedDict
:sequential = delu.nn.named_sequential( ('linear1', nn.Linear(10, 20)), ('activation', nn.ReLU()), ('linear2', nn.Linear(20, 1)) )
-
delu.nn.Lambda
: now, the constructor accepts keyword arguments for the callable:m = delu.nn.Lambda(torch.squeeze, dim=1)
-
delu.random.seed
- the algorithm computing random seeds for all libraries was improved
- now,
None
is allowed asbase_seed
; in this case, an unpredictable seed generated by OS will be used and returned:
truly_random_seed = delu.random.seed(None)
-
delu.random.set_state
: now, omitting the'torch.cuda'
is allowed to avoid setting the states of CUDA RNGs
Deprecations & Renamings
delu.data
was renamed todelu.utils.data
. The old name is now a deprecated alias.delu.Timer
anddelu.EarlyStopping
were moved to the newdelu.tools
submodule. The old names are now deprecated aliases.
Dependencies
- Now,
torch >=1.8,<3
Documentation
- Updated logo
- Simplified structure
- Removed the only (and not particularly representative) end-to-end example
Project
- Migrate from sphinx doctest to xdoctest