![]() |
libdl
0.0.1
Simple yet powerful deep learning
|
Implements auto-diff enabled wrappers around their concrete tensor implementations. More...
#include "shape.hpp"#include "tensorptr.hpp"#include <iostream>#include <vector>

Go to the source code of this file.
Classes | |
| struct | dl::DOF |
| Wrapper around std::size_t to discern between var(TensorPtr, DOF) and var(TensorPtr, size_t). More... | |
Functions | |
| TensorPtr | dl::pow (TensorPtr base, float exponent) noexcept |
Computes the exponent -th power of each element in base and returns the resulting tensor. | |
| TensorPtr | dl::exp (TensorPtr x) noexcept |
Computes the elementwise x -th power of e. | |
| TensorPtr | dl::log (TensorPtr x) noexcept |
| Natural logarithm, \(\log_e(\,\cdot\,)\). | |
| TensorPtr | dl::sqrt (TensorPtr x) noexcept |
Computes the elementwise square root of x . | |
| TensorPtr | dl::rsqrt (TensorPtr x) noexcept |
Computes the reciprocal square root for each element in x. | |
| TensorPtr | dl::mean (TensorPtr x) noexcept |
| Mean. | |
| TensorPtr | dl::mean (TensorPtr x, int dim, bool keepdim=false) noexcept |
| Mean along a specified axis. | |
| TensorPtr | dl::sum (TensorPtr x) noexcept |
| Sum. | |
| TensorPtr | dl::sum (TensorPtr x, int dim, bool keepdim=false) noexcept |
| Sum along a specified axis. | |
| TensorPtr | dl::min (TensorPtr x) noexcept |
| Minimum. | |
| TensorPtr | dl::min (TensorPtr x, int dim, bool keepdim=false) noexcept |
| Minimum along a specified axis. | |
| TensorPtr | dl::max (TensorPtr x) noexcept |
| Maximum. | |
| TensorPtr | dl::max (TensorPtr x, int dim, bool keepdim=false) noexcept |
| Maximum along a specified axis. | |
| TensorPtr | dl::max (TensorPtr x, TensorPtr y) noexcept |
| Elementwise maximum. | |
| TensorPtr | dl::var (TensorPtr x, DOF dof=DOF{1}) noexcept |
| Variance. | |
| TensorPtr | dl::var (TensorPtr x, int dim, DOF dof=DOF{1}) noexcept |
| Variance along a specified axis. | |
| TensorPtr | dl::erf (TensorPtr x) noexcept |
| (Gauss) Error Function | |
| TensorPtr | dl::relu (TensorPtr x) noexcept |
| TensorPtr | dl::operator+ (TensorPtr left, float right) noexcept |
| TensorPtr | dl::operator- (TensorPtr left, float right) noexcept |
| TensorPtr | dl::operator* (TensorPtr left, float right) noexcept |
| TensorPtr | dl::operator/ (TensorPtr left, float right) noexcept |
| TensorPtr | dl::operator+ (float left, TensorPtr right) noexcept |
| TensorPtr | dl::operator- (float left, TensorPtr right) noexcept |
| TensorPtr | dl::operator* (float left, TensorPtr right) noexcept |
| TensorPtr | dl::operator/ (float left, TensorPtr right) noexcept |
| TensorPtr | dl::operator+ (TensorPtr left, TensorPtr right) noexcept |
| TensorPtr | dl::operator- (TensorPtr left, TensorPtr right) noexcept |
| TensorPtr | dl::operator* (TensorPtr left, TensorPtr right) noexcept |
| TensorPtr | dl::operator/ (TensorPtr left, TensorPtr right) noexcept |
| TensorPtr | dl::fma (const TensorPtr &factor1, const TensorPtr &factor2, const TensorPtr &summand) noexcept |
| TensorPtr | dl::matmul (TensorPtr left, TensorPtr right) noexcept |
| TensorPtr | dl::transpose (TensorPtr x, std::vector< int > &&permutation) noexcept |
| Transposes the given tensor at the specified coordinates. | |
| TensorPtr | dl::softmax (TensorPtr x) noexcept |
| Computes the softmax function of the input vector. | |
| TensorPtr | dl::softmax (TensorPtr x, int dim) noexcept |
| std::ostream & | dl::operator<< (std::ostream &, const TensorPtr &tensor) noexcept |
| bool | dl::operator== (const TensorPtr &left, const TensorPtr &right) noexcept |
| bool | dl::allclose (const TensorPtr &left, const TensorPtr &right, float rtol=1e-5, float atol=1e-8) noexcept |
| size_t | dl::numEntries (const TensorPtr &tensor) noexcept |
| Returns the number of entries in the tensor. | |
| TensorPtr | dl::reshape (TensorPtr tensor, SShape shape) noexcept |
Implements auto-diff enabled wrappers around their concrete tensor implementations.
Definition in file math.hpp.
|
noexcept |
Returns the number of entries in the tensor.
This is equivalent to the product of the shape.
| tensor | The tensor to count the number of entries for. |
tensor.
|
noexcept |
Computes the softmax function of the input vector.
Let \(x \in \mathbb R^n\) be a vector, the softmax is defined as
\[ \text{softmax}\colon \mathbb R^n \to \mathbb R^n ~\text{via}~ x\mapsto \left(\frac{e^{x_i}}{\sum_{j=1}^n e^{x_j}}\right)_{1\leq i\leq n}. \]
| x | the input tensor. |
x .
|
noexcept |
Transposes the given tensor at the specified coordinates.
Transposes the given tensor by permuting the dimensions. For example, if the input was a matrix, then \(x \in \mathbb{R}^n\times m\) the matrix transposition could be computed via dl::transpose(x, {0, 1});.
| x | the tensor to be tranposed. |
| permutation | the permutation to apply to the dimensions. |
permutation applied to the dimensions.