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 final String`
  `ALGORITHM_PARAM`
  `static final int`
  `CUTOFF_DEFAULT_VALUE`
  The default cut off value is 5.
  `static final String`
  `CUTOFF_PARAM`
  `static final int`
  `ITERATIONS_DEFAULT_VALUE`
  The default number of iterations is 100.
  `static final String`
  `ITERATIONS_PARAM`
  `static final String`
  `THREADS_PARAM`
  `static final 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

  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 Details

  - ### 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
    The default number of iterations is 100.
    See Also:
      - Constant Field Values

  - ### CUTOFF_DEFAULT_VALUE

    public static final int CUTOFF_DEFAULT_VALUE
    The default cut off value is 5.
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### 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 Details

  - ### 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.