Exponential synaptic trace which exactly solves in an event-based manner in non-follow scenarios.
More...
|
| LinearTrace (NeuronID n, AurynFloat timeconstant) |
|
| LinearTrace (NeuronID n, AurynFloat timeconstant, AurynTime *clk) |
|
virtual | ~LinearTrace () |
|
void | inc (NeuronID i) |
| Increment given trace by 1. More...
|
|
void | add_specific (NeuronID i, AurynState amount) |
|
AurynFloat | get (NeuronID i) |
|
void | update (NeuronID i) |
|
void | evolve () |
|
| EulerTrace (NeuronID n, AurynFloat timeconstant) |
|
virtual | ~EulerTrace () |
|
void | set_timeconstant (AurynFloat timeconstant) |
|
void | set_target (AurynStateVector *target) |
|
void | follow () |
|
| Trace (NeuronID n, AurynFloat timeconstant) |
| Default constructor. More...
|
|
virtual | ~Trace () |
| Default destructor. More...
|
|
virtual void | inc (SpikeContainer *sc) |
| Increment given traces by 1. More...
|
|
AurynFloat | get_tau () |
| Get decay time constant. More...
|
|
virtual AurynFloat | normalized_get (NeuronID i) |
| Get trace value of trace dived by tau. More...
|
|
virtual AurynStateVector * | get_state_ptr () |
| Get pointer to state AurynStateVector for fast processing. More...
|
|
virtual void | follow (AurynVectorFloat *v, const float rate) |
| Follow other vector. More...
|
|
| AurynVectorFloat (NeuronID n) |
| Default constructor. More...
|
|
| ~AurynVectorFloat () |
| Default destructor. More...
|
|
virtual void | resize (NeuronID new_size) |
| resize data array to new_size More...
|
|
void | scale (const float a) |
|
void | saxpy (const float a, AurynVectorFloat *x) |
|
void | clip (const float min, const float max) |
|
void | add (const float c) |
|
void | add (AurynVectorFloat *v) |
|
void | sum (AurynVectorFloat *a, AurynVectorFloat *b) |
|
void | sum (AurynVectorFloat *a, const float b) |
|
void | mul (const float a) |
|
void | mul (AurynVectorFloat *v) |
|
void | diff (AurynVectorFloat *a, AurynVectorFloat *b) |
|
void | diff (AurynVectorFloat *a, const float b) |
|
void | diff (const float a, AurynVectorFloat *b) |
|
void | follow (AurynVectorFloat *v, const float rate) |
|
| AurynVector (NeuronID n) |
| Default constructor. More...
|
|
| AurynVector (AurynVector *vec) |
| Copy constructor. More...
|
|
virtual | ~AurynVector () |
| Default destructor. More...
|
|
void | copy (AurynVector *v) |
| Copies vector v. More...
|
|
float | get (NeuronID i) |
| Gets element i from vector. More...
|
|
float * | ptr (NeuronID i=0) |
| Gets pointer to element i from vector. More...
|
|
void | set (NeuronID i, float value) |
| Sets element i in vector to value. More...
|
|
void | set_all (const float v) |
| Set all elements to value v. More...
|
|
void | set_zero () |
| Set all elements to zero. More...
|
|
void | scale (const float a) |
| Scales all vector elements by a. More...
|
|
void | add (const float c) |
| Adds constant c to each vector element. More...
|
|
void | add (AurynVector *v) |
| Adds a vector v to the vector. More...
|
|
void | add_specific (const NeuronID i, const float c) |
| Adds the value c to specific vector element i. More...
|
|
void | mul_specific (const NeuronID i, const float c) |
| Multiply to specific vector element with data index i with the constant c. More...
|
|
void | sub (const float c) |
| Subtract constant c to each vector element. More...
|
|
void | sub (AurynVector *v) |
| Elementwise subtraction. More...
|
|
void | mul (const float a) |
| Multiply all vector elements by constant. More...
|
|
void | mul (AurynVector *v) |
| Element-wise vector multiply. More...
|
|
void | div (const float a) |
| Element-wise division. More...
|
|
void | div (AurynVector *v) |
| Element-wise vector division. More...
|
|
void | div (AurynVector *a, AurynVector *b) |
| Element-wise vector division which stores the result in this. More...
|
|
void | saxpy (const float a, AurynVector *x) |
| SAXPY operation as in GSL. More...
|
|
void | follow (AurynVector< float, NeuronID > *v, const float rate) |
| Follows target vector v with rate. More...
|
|
void | follow_scalar (const float a, const float rate) |
| Like follow but with a scalar target value a. More...
|
|
void | elementwise_max (AurynVector *v1, AurynVector *v2) |
| Elementwise max operation. More...
|
|
void | elementwise_max (AurynVector *v1) |
| Elementwise max operation with another vector. More...
|
|
void | pow (const unsigned int n) |
| Takes each element to the n-th power. More...
|
|
void | fast_exp () |
| Computes an approximation of exp(x) for each vector element. More...
|
|
void | exp () |
| Computes exp(x) for each vector element. More...
|
|
void | sigmoid (AurynVector *x, const float beta, const float thr) |
| Computes sigmoid(beta*(x-thr)) for each vector element and stores result in this instance. More...
|
|
void | sqrt () |
| Takes the square root of each element. More...
|
|
void | neg () |
| Flips the sign of all elements. More...
|
|
void | inv () |
| Computes 1./x of each element. More...
|
|
void | sum (AurynVector *a, AurynVector *b) |
| Computes the sum a+b and stores the result in this instance. More...
|
|
void | sum (AurynVector *a, const float b) |
| Computes the sum a+b and stores the result in this instance. More...
|
|
void | diff (AurynVector *a, AurynVector *b) |
| Computes the difference a-b and stores the result in this instance. More...
|
|
void | diff (AurynVector *a, const float b) |
| Computes the difference a-b and stores the result in this instance. More...
|
|
void | diff (const float a, AurynVector *b) |
| Computes the difference a-b and stores the result in this instance. More...
|
|
void | sqr () |
| Squares each element. More...
|
|
void | abs () |
| Takes absolute value of each element. More...
|
|
void | rect () |
| Rectifies all elements. More...
|
|
void | neg_rect () |
| Negatively rectifies all elements. More...
|
|
void | clip (float min, float max) |
| Clips all vector elements to the range min max. More...
|
|
double | var () |
| Computes the variance of the vector elements on this rank. More...
|
|
double | std () |
| Computes the standard deviation of all elements on this rank. More...
|
|
double | mean () |
| Computes the mean of the vector elements on this rank. More...
|
|
double | element_sum () |
| Computes the sum of the vector elements. More...
|
|
double | l1norm () |
| Computes the l1 norm of the vector. More...
|
|
double | l2norm () |
| Computes the l2 norm of the vector. More...
|
|
double | max () |
| Returns the max of the vector elements. More...
|
|
double | min () |
| Returns the min of the vector elements. More...
|
|
NeuronID | nonzero () |
| Computes number of nonzero elements on this rank. More...
|
|
void | zero_effective_zeros (const float epsilon=1e-3) |
| Sets all values whose absolute value is smaller than epsilon to zero. More...
|
|
void | add_random_normal (AurynState mean=0.0, AurynState sigma=1.0, unsigned int seed=8721) |
|
void | set_random_normal (AurynState mean=0.0, AurynState sigma=1.0, unsigned int seed=8721) |
|
void | set_random (unsigned int seed=0) |
| Initializes vector elements with Gaussian of unit varince and a seed derived from system time if no seed or seed of 0 is given. More...
|
|
bool | any () |
| Returns true if any element is nonzero. More...
|
|
bool | any (float eps) |
| Returns true if any element is nonzero. More...
|
|
void | print () |
| Print vector elements to stdout for debugging. More...
|
|
void | write_to_file (std::string filename) |
| Print vector elements to a text file for debugging. More...
|
|
Exponential synaptic trace which exactly solves in an event-based manner in non-follow scenarios.
Since this trace is normally slower than brute-force computing all traces with forward Euler (EulerTrace), it is disabled by default.