Package opennlp.tools.ml.naivebayes

## Class LogProbabilities<T>

- java.lang.Object
- - opennlp.tools.ml.naivebayes.Probabilities<T>
  - - opennlp.tools.ml.naivebayes.LogProbabilities<T>

- Type Parameters:
    `T` - the label (category) class

      public class LogProbabilities<T>
      extends Probabilities<T>

  Class implementing the probability distribution over labels returned by a classifier as a log of probabilities.

  This is necessary because floating point precision in Java does not allow for high-accuracy representation of very low probabilities such as would occur in a text categorizer.

  See Also:
    `Probabilities`

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `LogProbabilities()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addIn​(T t, double probability, int count)` | Compounds the existing `probability` mass on the label `t` with the new probability passed in to the method.
    `void` | `discardCountsBelow​(double i)` |
    `Double` | `get​(T t)` |
    `Map<T,​Double>` | `getAll()` |
    `Double` | `getLog​(T t)` |
    `T` | `getMax()` |
    `void` | `set​(T t, double probability)` | Assigns a `probability` to a label `t`, discarding any previously assigned probability.
    `void` | `set​(T t, Probability<T> probability)` | Assigns a `probability` to a label `t`, discarding any previously assigned probability.
    `void` | `setIfLarger​(T t, double probability)` | Assigns a `probability` to a label `t`, discarding any previously assigned probability, if the new probability is greater than the old one.
    `void` | `setLog​(T t, double probability)` | Assigns a log `probability` to a label `t`, discarding any previously assigned probability.

    - ### Methods inherited from class opennlp.tools.ml.naivebayes.Probabilities

      `getConfidence, getKeys, getMaxValue, setConfidence, toString`

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

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

- - ### Constructor Detail

    - #### LogProbabilities

          public LogProbabilities()

  - ### Method Detail

    - #### set

          public void set​(T t,
                          double probability)

      Assigns a `probability` to a label `t`, discarding any previously assigned probability.
      Overrides:
        `set` in class `Probabilities<T>`
      Parameters:
        `t` - The label to which the probability is being assigned.
        `probability` - The probability to assign.

    - #### set

          public void set​(T t,
                          Probability<T> probability)

      Assigns a `probability` to a label `t`, discarding any previously assigned probability.
      Overrides:
        `set` in class `Probabilities<T>`
      Parameters:
        `t` - The label to which the probability is being assigned.
        `probability` - The `Probability` to assign.

    - #### setIfLarger

          public void setIfLarger​(T t,
                                  double probability)

      Assigns a `probability` to a label `t`, discarding any previously assigned probability, if the new probability is greater than the old one.
      Overrides:
        `setIfLarger` in class `Probabilities<T>`
      Parameters:
        `t` - The label to which the probability is being assigned.
        `probability` - The probability to assign.

    - #### setLog

          public void setLog​(T t,
                             double probability)

      Assigns a log `probability` to a label `t`, discarding any previously assigned probability.
      Overrides:
        `setLog` in class `Probabilities<T>`
      Parameters:
        `t` - The label to which the log probability is being assigned.
        `probability` - The log `probability` to assign.

    - #### addIn

          public void addIn​(T t,
                            double probability,
                            int count)

      Compounds the existing `probability` mass on the label `t` with the new probability passed in to the method.
      Overrides:
        `addIn` in class `Probabilities<T>`
      Parameters:
        `t` - The label whose `probability` mass is being updated.
        `probability` - The probability weight to add.
        `count` - The amplifying factor for the `probability` compounding.

    - #### get

          public Double get​(T t)

      Overrides:
        `get` in class `Probabilities<T>`
      Parameters:
        `t` - The label whose probability shall be returned.
      Returns:
        Retrieves the probability associated with the label `t`.

    - #### getLog

          public Double getLog​(T t)

      Overrides:
        `getLog` in class `Probabilities<T>`
      Parameters:
        `t` - The label whose log probability shall be returned.
      Returns:
        Retrieves the log probability associated with the label `t`.

    - #### discardCountsBelow

          public void discardCountsBelow​(double i)

      Overrides:
        `discardCountsBelow` in class `Probabilities<T>`

    - #### getAll

          public Map<T,​Double> getAll()

      Overrides:
        `getAll` in class `Probabilities<T>`
      Returns:
        Retrieves a `Map` of all labels and their probabilities.

    - #### getMax

          public T getMax()

      Overrides:
        `getMax` in class `Probabilities<T>`
      Returns:
        Retrieves the label that has the highest associated probability