DiffSharp: Differentiable Functional Programming
flatten
and unflatten
operations now also flatten/unflatten the reverse mode adjoints of the tensors involvedscatter
operationdet
operation (determinant)dsharp.argmax
and dsharp.argmin
expr[idx]
among other improvements.parents
is now called .ancestors
DiffSharp.Model
design and API, e.g., .children
, .descendants
nllLoss
and gather
performanceModel
to string representationEmpirical
distributionsImprovement: Moved to .NET Standard to allow targeting .NET Core as well as .NET Standard
Note: There are some breaking API changes in this pre-release. Conversion examples are welcome.
Sigmoid
and ReLU
for D
, DV
, and DM
(fixes #16, thank you @mrakgr )Parallel.For
and Array.Parallel.map
operations, working better with OpenBLAS multithreadingDV
and DM
will now throw exceptions for warning the userssysv
and dsysv
in the OpenBLAS backend that caused incorrect solution for linear systems described by a symmetric matrix (fixes #11, thank you @grek142)Array2D.copy
operations (thank you Don Syme @dsyme)cblas_?omatcopy
provided by OpenBLASSystem.Threading.Tasks
, which was interfering with OpenBLAS multithreading. Pending further tests.Sub_D_DV
and Sub_D_DM
(fixes #8, thank you @mrakgr)grad
operation