org.encog.engine.network.activation

## Class ActivationLinear

- java.lang.Object
- - org.encog.engine.network.activation.ActivationLinear

- All Implemented Interfaces:
    Serializable, Cloneable, ActivationFunction

      public class ActivationLinear
      extends Object
      implements ActivationFunction

  The Linear layer is really not an activation function at all. The input is simply passed on, unmodified, to the output. This activation function is primarily theoretical and of little actual use. Usually an activation function that scales between 0 and 1 or -1 and 1 should be used.
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String[]` | `N` Default empty parameters.
    `static double[]` | `P` Default empty parameters.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ActivationLinear()` Construct a linear activation function, with a slope of 1.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `activationFunction(double[] x, int start, int size)` Implements the activation function.
    `ActivationFunction` | `clone()`
    `double` | `derivativeFunction(double b, double a)` Calculate the derivative.
    `String` | `getFactoryCode()`
    `String[]` | `getParamNames()`
    `double[]` | `getParams()`
    `boolean` | `hasDerivative()`
    `void` | `setParam(int index, double value)` Set one of the params for this activation function.

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### P

          public static final double[] P

      Default empty parameters.

    - #### N

          public static final String[] N

      Default empty parameters.

  - ### Constructor Detail

    - #### ActivationLinear

          public ActivationLinear()

      Construct a linear activation function, with a slope of 1.

  - ### Method Detail

    - #### activationFunction

          public final void activationFunction(double[] x,
                                int start,
                                int size)

      Implements the activation function. The array is modified according to the activation function being used. See the class description for more specific information on this type of activation function.
      Specified by:
        `activationFunction` in interface `ActivationFunction`
      Parameters:
        `x` - The input array to the activation function.
        `start` - The starting index.
        `size` - The number of values to calculate.

    - #### clone

          public final ActivationFunction clone()

      Specified by:
        `clone` in interface `ActivationFunction`
      Overrides:
        `clone` in class `Object`
      Returns:
        The object cloned.

    - #### derivativeFunction

          public final double derivativeFunction(double b,
                                  double a)

      Calculate the derivative. For performance reasons two numbers are provided. First, the value "b" is simply the number that we would like to calculate the derivative of. Second, the value "a", which is the value returned by the activation function, when presented with "b". We use two values because some of the most common activation functions make use of the result of the activation function. It is bad for performance to calculate this value twice. Yet, not all derivatives are calculated this way. By providing both the value before the activation function is applied ("b"), and after the activation function is applied("a"), the class can be constructed to use whichever value will be the most efficient.
      Specified by:
        `derivativeFunction` in interface `ActivationFunction`
      Parameters:
        `b` - The number to calculate the derivative of, the number "before" the activation function was applied.
        `a` - The number "after" an activation function has been applied.
      Returns:
        The derivative.

    - #### getParamNames

          public final String[] getParamNames()

      Specified by:
        `getParamNames` in interface `ActivationFunction`
      Returns:
        The names of the parameters.

    - #### getParams

          public final double[] getParams()

      Specified by:
        `getParams` in interface `ActivationFunction`
      Returns:
        The params for this activation function.

    - #### hasDerivative

          public final boolean hasDerivative()

      Specified by:
        `hasDerivative` in interface `ActivationFunction`
      Returns:
        Return true, linear has a 1 derivative.

    - #### setParam

          public final void setParam(int index,
                      double value)

      Set one of the params for this activation function.
      Specified by:
        `setParam` in interface `ActivationFunction`
      Parameters:
        `index` - The index of the param to set.
        `value` - The value to set.

    - #### getFactoryCode

          public String getFactoryCode()

      Specified by:
        `getFactoryCode` in interface `ActivationFunction`
      Returns:
        The string for the Encog factory code. Return null if you do not care to be support for creating of your activation through factory.

Copyright © 2014. All Rights Reserved.