DiffSharp Versions Save

DiffSharp: Differentiable Functional Programming

v1.0.7

2 years ago

New

  • flatten and unflatten operations now also flatten/unflatten the reverse mode adjoints of the tensors involved
  • scatter operation
  • det operation (determinant)
  • dsharp.argmax and dsharp.argmin

Changes

  • Update to dotnet 6.0 and F# 6.0, support indexing with expr[idx] among other improvements
  • Tensor .parents is now called .ancestors
  • Improvements in DiffSharp.Model design and API, e.g., .children, .descendants
  • Improve nllLoss and gather performance
  • Improve Model to string representation

Bug fixes

  • Fixed bug in combining unweighted items in Empirical distributions

v1.0.1

2 years ago

DiffSharp 1.0

This is a complete reimplementation of DiffSharp that supports tensors and modern machine learning workflows. It includes a libtorch raw tensor backend, CUDA support, APIs for backends and extensions, and extensive unit tests.

v0.8.4

4 years ago
  • Fix: correction in array slicing when used in variable updates #59

v0.8.3

4 years ago
  • Improvement: put the unmanaged/native dependencies in /runtime directory in the NuGet for better .NET Core support

v0.8.2

4 years ago
  • Fix: initialisation using a constant matrix on the left of multiplication #56

v0.8.1

4 years ago
  • Fix: single-precision computeAdjoints with non-scalar values #55

v0.8.0

4 years ago
  • Improvement: 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.

v0.7.7

8 years ago
  • Fixed: Bug fix in forward AD implementation of Sigmoid and ReLU for D, DV, and DM (fixes #16, thank you @mrakgr )
  • Improvement: Performance improvement by removing several more Parallel.For and Array.Parallel.map operations, working better with OpenBLAS multithreading
  • Added: Operations involving incompatible dimensions of DV and DM will now throw exceptions for warning the user

v0.7.6

8 years ago
  • Fixed: Bug fix in LAPACK wrappers ssysv and dsysv in the OpenBLAS backend that caused incorrect solution for linear systems described by a symmetric matrix (fixes #11, thank you @grek142)
  • Added: Added unit tests covering the whole backend interface

v0.7.5

8 years ago
  • Improved: Performance improvement thanks to faster Array2D.copy operations (thank you Don Syme @dsyme)
  • Improved: Significantly faster matrix transposition using extended BLAS operations cblas_?omatcopy provided by OpenBLAS
  • Improved: Performance improvement by disabling parts of the OpenBLAS backend using System.Threading.Tasks, which was interfering with OpenBLAS multithreading. Pending further tests.
  • Update: Updated the Win64 binaries of OpenBLAS to version 0.2.15 (27-10-2015), which has bug fixes and optimizations. Change log here
  • Fixed: Bug fixes in reverse AD operations Sub_D_DV and Sub_D_DM (fixes #8, thank you @mrakgr)
  • Fixed: Fixed bug in the benchmarking module causing incorrect reporting of the overhead factor of the AD grad operation
  • Improved: Documentation updates