Package opennlp.tools.util.eval

# Class FMeasure

java.lang.Object
opennlp.tools.util.eval.FMeasure

public final class FMeasure extends Object
The `FMeasure` is a utility class for `evaluators` which measures precision, recall and the resulting f-measure.

Evaluation results are the arithmetic mean of the precision scores calculated for each reference sample and the arithmetic mean of the recall scores calculated for each reference sample.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FMeasure()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `double`
  `getFMeasure()`
  `f-measure = 2 * precision * recall / (precision + recall)`.
  `double`
  `getPrecisionScore()`
  `double`
  `getRecallScore()`
  `void`
  `mergeInto(FMeasure measure)`
  Merge results into `metric`.
  `static double`
  `precision(Object[] references, Object[] predictions)`
  Calculates the precision score for the given reference and predicted spans.
  `static double`
  `recall(Object[] references, Object[] predictions)`
  Calculates the recall score for the given reference and predicted spans.
  `String`
  `toString()`
  `void`
  `updateScores(Object[] references, Object[] predictions)`
  Updates the score based on the number of true positives and the number of predictions and references.

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

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

- ## Constructor Details

  - ### FMeasure

    public FMeasure()

- ## Method Details

  - ### getPrecisionScore

    public double getPrecisionScore()
    Returns:
      Retrieves the arithmetic mean of the precision scores calculated for each evaluated sample.

  - ### getRecallScore

    public double getRecallScore()
    Returns:
      Retrieves the arithmetic mean of the recall score calculated for each evaluated sample.

  - ### getFMeasure

    public double getFMeasure()
    `f-measure = 2 * precision * recall / (precision + recall)`.
    Returns:
      Retrieves the f-measure or `-1` if precision + recall `&lt;= 0`

  - ### updateScores

    public void updateScores(Object[] references, Object[] predictions)
    Updates the score based on the number of true positives and the number of predictions and references.
    Parameters:
      `references` - the provided references
      `predictions` - the predicted spans

  - ### mergeInto

    public void mergeInto(FMeasure measure)
    Merge results into `metric`.
    Parameters:
      `measure` - The `FMeasure` to merge.

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`
    Returns:
      A human-readable `String` representation.

  - ### precision

    public static double precision(Object[] references, Object[] predictions)
    Calculates the precision score for the given reference and predicted spans.
    Parameters:
      `references` - The gold standard spans.
      `predictions` - The predicted spans.
    Returns:
      The precision score or `NaN` if there are no predicted spans.

  - ### recall

    public static double recall(Object[] references, Object[] predictions)
    Calculates the recall score for the given reference and predicted spans.
    Parameters:
      `references` - The gold standard spans
      `predictions` - The predicted spans
    Returns:
      The recall score or `NaN` if there are no reference spans.