gec_metrics.metrics.green module
- class gec_metrics.metrics.green.GREEN(config: Config = None)[source]
Bases:
MetricBaseForReferenceBased- class Config(n: int = 4, beta: float = 2.0, unit: str = 'word')[source]
Bases:
ConfigGREEN configuration - n (int): Maxmimun n for n-gram. - beta (int): The beta for F-beta score. - unit (str): Word-level or character-level. Can be ‘word’ or ‘char’.
- beta: float = 2.0
- n: int = 4
- unit: str = 'word'
- aggregate_score(scores: list[Score]) float[source]
Aggregate n-gram scores to an overall score by the geometric mean.
- Parameters:
scores (list[Score]) – The scores keeping n-gram boundary. The shape is (n, )
- Returns:
The aggregated score.
- Return type:
float
- cached_get_all_ngrams(sentence: str) dict[str, int][source]
Get frequency of n-gram for all n (1 <= n <= config.n)
- score_base(sources: list[str], hypotheses: list[str], references: list[list[str]]) list[list[list[Score]]][source]
- Calculate scores while retaining sentence and reference boundaries.
- The results can be aggregated according to the purpose,
e.g., at sentence-level or corpus-level.
- Parameters:
sources (list[str]) – Source sentence.
hypothesis (list[str]) – Corrected sentences.
references (list[list[str]]) – Reference sentences. The shape is (the number of references, the number of sentences).
- Returns:
- The verbose scores.
The shape is (num_iterations, num_sents, max_ngram).
- Return type:
list[list[list[“Score”]]]
- score_corpus(sources: list[str], hypotheses: list[str], references: list[list[str]]) float[source]
Calculate a corpus-level score. This accumulates n-gram count for TP, FP, FN
and calculates f-beta score.
- Parameters:
sources (list[str]) – Source sentence. The shape is (num_sentences, )
hypotheses (list[str]) – Corrected sentences. The shape is (num_sentences, )
references (list[list[str]]) – Reference sentences. The shape is (num_references, num_sentences).
- Returns:
The corpus-level score.
- Return type:
float
- score_sentence(sources: list[str], hypotheses: list[str], references: list[list[str]]) list[float][source]
Calculate sentence-level scores.
- Parameters:
sources (list[str]) – Source sentence. The shape is (num_sentences, )
hypotheses (list[str]) – Corrected sentences. The shape is (num_sentences, )
references (list[list[str]]) – Reference sentences. The shape is (num_references, num_sentences).
- Returns:
The sentence-level scores.
- Return type:
list[float]