Package opennlp.tools.util

## Class TrainingParameters

- java.lang.Object
- - opennlp.tools.util.TrainingParameters

-     public class TrainingParameters
      extends Object

  Declares and handles default parameters used for or during training models.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `ALGORITHM_PARAM` |
    `static int` | `CUTOFF_DEFAULT_VALUE` |
    `static String` | `CUTOFF_PARAM` |
    `static int` | `ITERATIONS_DEFAULT_VALUE` |
    `static String` | `ITERATIONS_PARAM` |
    `static String` | `THREADS_PARAM` |
    `static String` | `TRAINER_TYPE_PARAM` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TrainingParameters()` | No-arg constructor to create a default `TrainingParameters` instance.
    `TrainingParameters​(InputStream in)` | `InputStream` based constructor that reads in `TrainingParameters`.
    `TrainingParameters​(Map<String,​Object> map)` | Key-value based constructor to apply a `Map` based configuration initialization.
    `TrainingParameters​(TrainingParameters trainingParameters)` | Copy constructor to hand over the config of existing `TrainingParameters`.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `String` | `algorithm()` |
    `String` | `algorithm​(String namespace)` |
    `static TrainingParameters` | `defaultParams()` |
    `boolean` | `getBooleanParameter​(String key, boolean defaultValue)` | Obtains a training parameter value.
    `boolean` | `getBooleanParameter​(String namespace, String key, boolean defaultValue)` | Obtains a training parameter value in the specified namespace.
    `double` | `getDoubleParameter​(String key, double defaultValue)` | Obtains a training parameter value.
    `double` | `getDoubleParameter​(String namespace, String key, double defaultValue)` | Obtains a training parameter value in the specified namespace.
    `int` | `getIntParameter​(String key, int defaultValue)` | Obtains a training parameter value.
    `int` | `getIntParameter​(String namespace, String key, int defaultValue)` | Obtains a training parameter value in the specified namespace.
    `Map<String,​Object>` | `getObjectSettings()` |
    `Map<String,​Object>` | `getObjectSettings​(String namespace)` |
    `TrainingParameters` | `getParameters​(String namespace)` |
    `String` | `getStringParameter​(String key, String defaultValue)` | Obtains a training parameter value.
    `String` | `getStringParameter​(String namespace, String key, String defaultValue)` | Obtains a training parameter value in the specified namespace.
    `void` | `put​(String key, boolean value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String key, double value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String key, int value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String key, String value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String namespace, String key, boolean value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String namespace, String key, double value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String namespace, String key, int value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `put​(String namespace, String key, String value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`.
    `void` | `putIfAbsent​(String key, boolean value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String key, double value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String key, int value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String key, String value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String namespace, String key, boolean value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String namespace, String key, double value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String namespace, String key, int value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `putIfAbsent​(String namespace, String key, String value)` | Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
    `void` | `serialize​(OutputStream out)` | Serializes a `TrainingParameters` instance via a specified `OutputStream`.
    `static TrainingParameters` | `setParams​(String[] params)` |

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

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

- - ### Field Detail

    - #### ALGORITHM_PARAM

          public static final String ALGORITHM_PARAM

      See Also:
        Constant Field Values

    - #### TRAINER_TYPE_PARAM

          public static final String TRAINER_TYPE_PARAM

      See Also:
        Constant Field Values

    - #### ITERATIONS_PARAM

          public static final String ITERATIONS_PARAM

      See Also:
        Constant Field Values

    - #### CUTOFF_PARAM

          public static final String CUTOFF_PARAM

      See Also:
        Constant Field Values

    - #### THREADS_PARAM

          public static final String THREADS_PARAM

      See Also:
        Constant Field Values

    - #### ITERATIONS_DEFAULT_VALUE

          public static final int ITERATIONS_DEFAULT_VALUE

      See Also:
        Constant Field Values

    - #### CUTOFF_DEFAULT_VALUE

          public static final int CUTOFF_DEFAULT_VALUE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### TrainingParameters

          public TrainingParameters()

      No-arg constructor to create a default `TrainingParameters` instance.

    - #### TrainingParameters

          public TrainingParameters​(TrainingParameters trainingParameters)

      Copy constructor to hand over the config of existing `TrainingParameters`.

    - #### TrainingParameters

          public TrainingParameters​(Map<String,​Object> map)

      Key-value based constructor to apply a `Map` based configuration initialization.

    - #### TrainingParameters

          public TrainingParameters​(InputStream in)
                             throws IOException

      `InputStream` based constructor that reads in `TrainingParameters`.
      Throws:
        `IOException` - Thrown if IO errors occurred.

  - ### Method Detail

    - #### algorithm

          public String algorithm​(String namespace)

      Returns:
        Retrieves the training algorithm name for a given name space, or `null` if unset.

    - #### algorithm

          public String algorithm()

      Returns:
        Retrieves the training algorithm name. or @code null} if not set.

    - #### getObjectSettings

          public Map<String,​Object> getObjectSettings​(String namespace)

      Parameters:
        `namespace` - The name space to filter or narrow the search space. May be `null`.
      Returns:
        Retrieves a parameter `Map` which can be passed to the train and validate methods.

    - #### getObjectSettings

          public Map<String,​Object> getObjectSettings()

      Returns:
        Retrieves a parameter `Map` of all parameters without narrowing.

    - #### getParameters

          public TrainingParameters getParameters​(String namespace)

      Parameters:
        `namespace` - The name space to filter or narrow the search space. May be `null`.
      Returns:
        Retrieves `TrainingParameters` which can be passed to the train and validate methods.

    - #### putIfAbsent

          public void putIfAbsent​(String namespace,
                                  String key,
                                  String value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `String` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String key,
                                  String value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `String` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String namespace,
                                  String key,
                                  int value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Integer` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String key,
                                  int value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Integer` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String namespace,
                                  String key,
                                  double value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Double` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String key,
                                  double value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before. The `namespace` can be used to prefix the `key`.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Double` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String namespace,
                                  String key,
                                  boolean value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Boolean` parameter to put into this `TrainingParameters` instance.

    - #### putIfAbsent

          public void putIfAbsent​(String key,
                                  boolean value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`, if the value was not present before.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Boolean` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String namespace,
                          String key,
                          String value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `String` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String key,
                          String value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `String` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String namespace,
                          String key,
                          int value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Integer` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String key,
                          int value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Integer` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String namespace,
                          String key,
                          double value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Double` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String key,
                          double value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Double` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String namespace,
                          String key,
                          boolean value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one. The `namespace` can be used to prefix the `key`.
      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be put. May be `null`.
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Boolean` parameter to put into this `TrainingParameters` instance.

    - #### put

          public void put​(String key,
                          boolean value)

      Puts a `value` into the current `TrainingParameters` under a certain `key`. If the value was present before, the previous value will be overwritten with the specified one.
      Parameters:
        `key` - The identifying key to put or retrieve a `value` with.
        `value` - The `Boolean` parameter to put into this `TrainingParameters` instance.

    - #### serialize

          public void serialize​(OutputStream out)
                         throws IOException

      Serializes a `TrainingParameters` instance via a specified `OutputStream`.
      Parameters:
        `out` - A valid, open `OutputStream` to write to.
      Throws:
        `IOException` - Thrown if errors occurred.

    - #### getStringParameter

          public String getStringParameter​(String key,
                                           String defaultValue)

      Obtains a training parameter value.

      Note: `ClassCastException` can be thrown if the value is not `String`

      Parameters:
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getStringParameter

          public String getStringParameter​(String namespace,
                                           String key,
                                           String defaultValue)

      Obtains a training parameter value in the specified namespace.

      Note: `ClassCastException` can be thrown if the value is not `String`

      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be searched. May be `null`.
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getIntParameter

          public int getIntParameter​(String key,
                                     int defaultValue)

      Obtains a training parameter value.

      Parameters:
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getIntParameter

          public int getIntParameter​(String namespace,
                                     String key,
                                     int defaultValue)

      Obtains a training parameter value in the specified namespace.

      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be searched. May be `null`.
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getDoubleParameter

          public double getDoubleParameter​(String key,
                                           double defaultValue)

      Obtains a training parameter value.

      Parameters:
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getDoubleParameter

          public double getDoubleParameter​(String namespace,
                                           String key,
                                           double defaultValue)

      Obtains a training parameter value in the specified namespace.

      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be searched. May be `null`.
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getBooleanParameter

          public boolean getBooleanParameter​(String key,
                                             boolean defaultValue)

      Obtains a training parameter value.

      Parameters:
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### getBooleanParameter

          public boolean getBooleanParameter​(String namespace,
                                             String key,
                                             boolean defaultValue)

      Obtains a training parameter value in the specified namespace.

      Parameters:
        `namespace` - A prefix to declare or use a name space under which `key` shall be searched. May be `null`.
        `key` - The identifying key to retrieve a `value` with.
        `defaultValue` - The alternative value to use, if `key` was not present.
      Returns:
        The `training value` associated with `key` if present, or a `defaultValue` if not.

    - #### defaultParams

          public static TrainingParameters defaultParams()

      Returns:
        Retrieves a new `instance` initialized with default values.

    - #### setParams

          public static TrainingParameters setParams​(String[] params)

      Parameters:
        `params` - The parameters to additionally apply into the new `instance`.
      Returns:
        Retrieves a new `instance` initialized with given parameter values.