Name |
Description |
Absolute |
Absolute value (magnitude) activation function. |
AbsoluteRoot |
Absolute root activation function with clipping. The square root of the absolute (magnitude) of the input value, with output value clipped to maximum of +1.0 |
ActivationFunctionInfo |
Represents a single item in an IActivationFunctionLibrary. The item represents an IActivationFunction and its ID and selection probability within the owning IActivationFunctionLibrary. |
AcyclicNetworkDepthAnalysis |
An algorithm for analysing acyclic networks and calculating the depth of each node in the network. Bias and input nodes are defined as being at depth 0, the depth of all other nodes is defined as the maximum number of hops from the depth 0 nodes, so where multiple paths exist to a node (potentially with different numbers of hops) we take the maximum number of hops as that node's depth. |
BipolarGaussian |
Bipolar Gaussian activation function. Output range is -1 to 1, that is, the tails of the Gaussian distribution curve tend towards -1 as abs(x) -> Infinity and the Gaussian peak is at y = 1. |
BipolarSigmoid |
Bipolar sigmoid activation function. Output range is -1 to 1 instead of the more normal 0 to 1. |
CyclicNetworkDepthAnalysis |
An algorithm for analysing cyclic networks and calculating the depth of each node in the network. Bias and input nodes are defined as being at depth 0, the depth of all other nodes is defined as the maximum number of hops from the depth 0 nodes, so where multiple paths exist to a node (potentially with different numbers of hops) we take the maximum number of hops as that node's depth. The number of hops to a node ignores any cycles in the connectivity, that is, the number of hops is the number of hops in the direct routes to a node (no node in the pathway more than once, hence not including any cycles) |
CyclicNetworkTest |
An algorithm for testing for the presence of at least one connectivity cycle within a network. Method. ======= 1) We loop over all nodes in the network and perform a depth-first traversal from each node. (Note. the order that the nodes are traversed does not affect the correctness of the method) 2) Each traversal keeps track of its ancestor nodes (the path to the current node) for each step in the traversal. Thus if the traversal encounters an ancestor node then a cycle has been detected. 3) A set of visited nodes is maintained. This persists between traversals and allows each traversal to avoid traversing into nodes that have already been traversed. Note. We must traverse from each node rather then just e.g. the input nodes, because the network may have connectivity dead ends or even isolated connectivity that therefore would not be traversed into by following connectivity from the input nodes only, hence we perform a traversal from each node and attempt to maintain algorithmic efficiency by avoiding traversal into nodes that have already been traversed into. |
DefaultActivationFunctionLibrary |
Default implementation of an IActivationFunctionLibrary. Also provides static factory methods to create libraries with commonly used activation functions. |
Gaussian |
Gaussian activation function. Output range is 0 to 1, that is, the tails of the Gaussian distribution curve tend towards 0 as abs(x) -> Infinity and the Gaussian peak is at x = 0. |
InverseAbsoluteSigmoid |
A sigmoid curve produced from the simple and therefore fast arithmetic operations abs, divide and multiply. The curve is designed to match the SteepenedSigmoid activation function as closely as possible. |
Linear |
Linear activation function with clipping. By 'clipping' we mean the output value is linear between x = -1 and x = 1. Below -1 and above +1 the output is clipped at -1 and +1 respectively. |
NetworkConnection |
Concrete implementation of INetworkConnection. |
NetworkConnectivityData |
Network connectivity data for a network. Connectivity data in a form that is convenient for network traversal algorithms. |
NetworkDefinition |
Concrete implementation of INetworkDefinition. This class represents network definitions independently of any other requirements, e.g. a NeatGenome is also an INetworkDefinition but with additional baggage. This class is useful for representing network definitions, e.g. when creating a network instance from a HyperNEAT substrate. |
NetworkDepthInfo |
Conveys summary information from a network depth analysis . |
NetworkNode |
Concrete implementation of an INetworkNode. |
NetworkXmlIO |
Static class for reading and writing Network Definitions(s) to and from XML. |
NodeConnectivityData |
Stored the IDs of nodes that connect in and out of a given node. |
NullFn |
Null activation function. Returns zero regardless of input. |
PlainSigmoid |
Simple sigmoid activation function. |
RbfGaussian |
Gaussian activation function. Output range is 0 to 1, that is, the tails of the gaussian distribution curve tend towards 0 as abs(x) -> Infinity and the gaussian's peak is at x = 0. |
ReducedSigmoid |
Sigmoid activation function with a gentler (reduced) slope compared to the PlainSimple function. |
Sine |
Sine activation function with doubled period. |
SteepenedSigmoid |
Sigmoid activation function with a steeper curve than the PlainSimple function. |
SteepenedSigmoidApproximation |
An approximation of the SteepenedSigmoid activation function. Faster to calculate but anecdotal evidence suggests using this function gives poorer results than SteepenedSigmoid. The increase in speed may also be in question with more recent hardware developments. E.g. with faster implementations of an exp function and underlying CPU execution of the code. |
StepFunction |
Step activation function. |