i6_core.recognition.scoring

class i6_core.recognition.scoring.AnalogJob(*args, **kwargs)
run()
tasks()
Returns:

yields Task’s

Return type:

list[sisyphus.task.Task]

class i6_core.recognition.scoring.Hub5ScoreJob(*args, **kwargs)
Parameters:
  • ref – reference stm text file

  • glm – text file containing mapping rules for scoring

  • hyp – hypothesis ctm text file

  • sctk_binary_path – set an explicit binary path.

calc_wer()
run(move_files=True)
tasks()
Returns:

yields Task’s

Return type:

list[sisyphus.task.Task]

class i6_core.recognition.scoring.KaldiScorerJob(*args, **kwargs)

Applies the Kaldi compute-wer binary. Required gs.KALDI_PATH to be the path to the Kaldi bin folder.

Parameters:
  • ref – Path to corpus file. This job will generate reference from it.

  • hyp – Path to CTM file. It will be converted to Kaldi format in this Job.

  • map – Dictionary with words to be replaced in hyp. Example: {‘[NOISE]’ : ‘’}

  • regex – String with groups used for regex the segment names. WER will be calculated for each group individually. Example: ‘.*(S..)(P..).*’

calc_wer()
run(report_path=None, ref_path=None, hyp_path=None)
run_regex()
tasks()
Returns:

yields Task’s

Return type:

list[sisyphus.task.Task]

class i6_core.recognition.scoring.QuaeroScorerJob(*args, **kwargs)
calc_wer()
run(move_files=True)
tasks()
Returns:

yields Task’s

Return type:

list[sisyphus.task.Task]

class i6_core.recognition.scoring.ScliteJob(*args, **kwargs)

Run the Sclite scorer from the SCTK toolkit

Outputs:
  • out_report_dir: contains the report files with detailed scoring information

  • out_*: the job also outputs many variables, please look in the init code for a list

Parameters:
  • ref – reference stm text file

  • hyp – hypothesis ctm text file

  • cer – compute character error rate

  • sort_files – sort ctm and stm before scoring

  • additional_args – additional command line arguments passed to the Sclite binary call

  • sctk_binary_path – set an explicit binary path.

  • precision_ndigit – number of digits after decimal point for the precision of the percentages in the output variables. If None, no rounding is done. In sclite, the precision was always one digit after the decimal point (https://github.com/usnistgov/SCTK/blob/f48376a203ab17f/src/sclite/sc_dtl.c#L343), thus we recalculate the percentages here.

calc_wer()
run(output_to_report_dir=True)
tasks()
Returns:

yields Task’s

Return type:

list[sisyphus.task.Task]