Lakoc commited on
Commit
4b86b2a
Β·
1 Parent(s): 2c1d6a4

Leaderboard adjustments for JSALT25 workshop

Browse files
app.py CHANGED
@@ -3,7 +3,7 @@ import os
3
  import gradio as gr
4
  from gradio_modal import Modal
5
 
6
- from content import HEADER_MARKDOWN, LEADERBOARD_TAB_TITLE_MARKDOWN, SUBMISSION_TAB_TITLE_MARKDOWN
7
  from leaderboard_server import LeaderboardServer
8
 
9
  # Initialize server and task list
@@ -20,10 +20,10 @@ def get_datasets_for_task(task):
20
 
21
 
22
  def update_datasets(task):
23
- return gr.CheckboxGroup.update(choices=get_datasets_for_task(task), value=[])
24
 
25
 
26
- def submit_model(task, datasets, hyp_file, submitted_by, model_id, token):
27
  if not hyp_file:
28
  return gr.update(visible=True, value="⚠️ Please upload a hypothesis file.")
29
 
@@ -35,8 +35,10 @@ def submit_model(task, datasets, hyp_file, submitted_by, model_id, token):
35
 
36
  metadata = {
37
  "submitted_by": submitted_by.strip(),
38
- "model_id": model_id.strip()
 
39
  }
 
40
  leaderboard_df = server.get_leaderboard()
41
  if len(leaderboard_df) > 0:
42
  existing = leaderboard_df[
@@ -47,10 +49,13 @@ def submit_model(task, datasets, hyp_file, submitted_by, model_id, token):
47
  return gr.update(value="❌ A submission with this name and model ID already exists.", visible=True)
48
 
49
  try:
50
- server.prepare_model_for_submission(hyp_file.name, metadata, task, datasets)
 
 
51
  server.update_leaderboard()
52
  return gr.update(visible=True, value="βœ… Submission successful!")
53
  except Exception as e:
 
54
  return gr.update(visible=True, value=f"❌ Error: {str(e)}")
55
 
56
  def get_leaderboard_df():
@@ -74,7 +79,7 @@ with gr.Blocks() as demo:
74
 
75
  with gr.Row():
76
  task_dropdown = gr.Dropdown(choices=TASKS, value=TASKS[0], label="Select Task")
77
- dataset_checkboxes = gr.CheckboxGroup(choices=get_datasets_for_task(TASKS[0]), label="Select Datasets")
78
  task_dropdown.change(fn=update_datasets, inputs=task_dropdown, outputs=dataset_checkboxes)
79
 
80
  with gr.Row():
@@ -83,20 +88,25 @@ with gr.Blocks() as demo:
83
  token_input = gr.Text(label="Submission Token", type="password")
84
 
85
  hyp_file_upload = gr.File(label="Upload Hypothesis JSON", file_types=[".json"])
 
 
 
86
  submit_btn = gr.Button("Submit")
 
87
  with Modal("Submission Feedback", visible=False) as loading_msg:
88
  feedback_text = gr.Text(visible=True, label="⏳ Processing your submission...")
 
89
 
90
  submit_btn.click(
91
  lambda: gr.update(visible=True), # Show loading
92
  outputs=loading_msg
93
  ).then(
94
  fn=submit_model,
95
- inputs=[task_dropdown, dataset_checkboxes, hyp_file_upload, submitted_by_input, model_id_input,
96
- token_input],
97
  outputs=[feedback_text],
98
  ).then(
99
- lambda: server.get_leaderboard(), # Show loading
100
  outputs=leaderboard_output
101
  )
102
 
 
3
  import gradio as gr
4
  from gradio_modal import Modal
5
 
6
+ from content import HEADER_MARKDOWN, LEADERBOARD_TAB_TITLE_MARKDOWN, SUBMISSION_TAB_TITLE_MARKDOWN, ADDITIONAL_NOTES_MARKDOWN
7
  from leaderboard_server import LeaderboardServer
8
 
9
  # Initialize server and task list
 
20
 
21
 
22
  def update_datasets(task):
23
+ return gr.CheckboxGroup(choices=get_datasets_for_task(task), value=get_datasets_for_task(task))
24
 
25
 
26
+ def submit_model(task, datasets, hyp_file, submitted_by, model_id, token, normalize):
27
  if not hyp_file:
28
  return gr.update(visible=True, value="⚠️ Please upload a hypothesis file.")
29
 
 
35
 
36
  metadata = {
37
  "submitted_by": submitted_by.strip(),
38
+ "model_id": model_id.strip(),
39
+ "normalize": normalize # Include normalization info in metadata if needed
40
  }
41
+
42
  leaderboard_df = server.get_leaderboard()
43
  if len(leaderboard_df) > 0:
44
  existing = leaderboard_df[
 
49
  return gr.update(value="❌ A submission with this name and model ID already exists.", visible=True)
50
 
51
  try:
52
+ server.prepare_model_for_submission(
53
+ hyp_file.name, metadata, task, datasets, normalize=normalize
54
+ )
55
  server.update_leaderboard()
56
  return gr.update(visible=True, value="βœ… Submission successful!")
57
  except Exception as e:
58
+ print(e)
59
  return gr.update(visible=True, value=f"❌ Error: {str(e)}")
60
 
61
  def get_leaderboard_df():
 
79
 
80
  with gr.Row():
81
  task_dropdown = gr.Dropdown(choices=TASKS, value=TASKS[0], label="Select Task")
82
+ dataset_checkboxes = gr.CheckboxGroup(choices=get_datasets_for_task(TASKS[0]), label="Select Datasets", value=get_datasets_for_task(TASKS[0]))
83
  task_dropdown.change(fn=update_datasets, inputs=task_dropdown, outputs=dataset_checkboxes)
84
 
85
  with gr.Row():
 
88
  token_input = gr.Text(label="Submission Token", type="password")
89
 
90
  hyp_file_upload = gr.File(label="Upload Hypothesis JSON", file_types=[".json"])
91
+
92
+ normalize_checkbox = gr.Checkbox(label="Apply Chime-8 Normalization", value=True)
93
+
94
  submit_btn = gr.Button("Submit")
95
+
96
  with Modal("Submission Feedback", visible=False) as loading_msg:
97
  feedback_text = gr.Text(visible=True, label="⏳ Processing your submission...")
98
+ gr.Markdown(ADDITIONAL_NOTES_MARKDOWN)
99
 
100
  submit_btn.click(
101
  lambda: gr.update(visible=True), # Show loading
102
  outputs=loading_msg
103
  ).then(
104
  fn=submit_model,
105
+ inputs=[task_dropdown, dataset_checkboxes, hyp_file_upload,
106
+ submitted_by_input, model_id_input, token_input, normalize_checkbox],
107
  outputs=[feedback_text],
108
  ).then(
109
+ lambda: server.get_leaderboard(),
110
  outputs=leaderboard_output
111
  )
112
 
content.py CHANGED
@@ -4,13 +4,13 @@ This file contains the text content for the leaderboard client.
4
  HEADER_MARKDOWN = """
5
  # EMMA JSALT25 Benchmark – Multi-Talker ASR Evaluation
6
 
7
- Welcome to the official leaderboard for benchmarking **multi-talker ASR systems**, hosted by the **EMMA JSALT25 team**. This platform enables model submissions, comparisons, and evaluation on challenging multi-speaker scenarios.
8
  """
9
 
10
  LEADERBOARD_TAB_TITLE_MARKDOWN = """
11
  ## Leaderboard
12
 
13
- Below you’ll find the latest results submitted to the benchmark. Models are evaluated using **`meeteval`** with **TCP-WER (collar=5s)**.
14
  """
15
 
16
  SUBMISSION_TAB_TITLE_MARKDOWN = """
@@ -29,23 +29,17 @@ To submit your MT-ASR hypothesis to the benchmark, complete the form below:
29
  After clicking **Submit**, your model will be evaluated and results displayed in the leaderboard.
30
  """
31
 
 
32
 
33
- RANKING_AFTER_SUBMISSION_MARKDOWN = """
34
- πŸ“Š Below is how your model compares after evaluation:
35
- """
36
 
37
- SUBMISSION_DETAILS_MARKDOWN = """
38
- ⚠️ Are you sure you want to finalize your submission? This action is **irreversible** once submitted.
39
- """
40
 
41
- MORE_DETAILS_MARKDOWN = """
42
- ## Model Metadata:
43
- Detailed information about the selected submission.
44
- """
45
 
46
- MODAL_SUBMIT_MARKDOWN = """
47
- βœ… Confirm Submission
48
 
49
- Are you ready to submit your model for evaluation?
50
  """
51
 
 
 
4
  HEADER_MARKDOWN = """
5
  # EMMA JSALT25 Benchmark – Multi-Talker ASR Evaluation
6
 
7
+ Welcome to the official leaderboard for benchmarking **multi-talker ASR systems**, hosted by the **EMMA JSALT25 team**.
8
  """
9
 
10
  LEADERBOARD_TAB_TITLE_MARKDOWN = """
11
  ## Leaderboard
12
 
13
+ Below you’ll find the latest results submitted to the benchmark. Models are evaluated using **`meeteval`** with **TCP-WER [%] (collar=5s)**.
14
  """
15
 
16
  SUBMISSION_TAB_TITLE_MARKDOWN = """
 
29
  After clicking **Submit**, your model will be evaluated and results displayed in the leaderboard.
30
  """
31
 
32
+ ADDITIONAL_NOTES_MARKDOWN = """
33
 
 
 
 
34
 
35
+ ### Reference/Hypothesis File Format
 
 
36
 
37
+ πŸ› οΈ Reference annotations were constructed via the `prepare_gt.sh` script. To add a new dataset, please create a pull request modifying `prepare_gt.sh`.
38
+ πŸ“š For details about SegLST format, please see the [SegLST documentation in MeetEval](https://github.com/fgnt/meeteval?tab=readme-ov-file#segment-wise-long-form-speech-transcription-annotation-seglst).
 
 
39
 
40
+ πŸ”„ By default, **Chime-8 normalization** is applied during evaluation for both references and hypotheses.
41
+ You can choose to disable this using the checkbox above.
42
 
 
43
  """
44
 
45
+
leaderboard_server.py CHANGED
@@ -9,7 +9,6 @@ from txt_norm import get_text_norm
9
  # Constants
10
  REFERENCE_BASE_PATH = os.path.abspath("references") # e.g. ./references/single_channel/dataset1.json
11
  TASKS_METADATA_PATH = os.path.abspath("tasks_metadata.json")
12
- import os
13
 
14
  def list_files(startpath):
15
  for root, dirs, files in os.walk(startpath):
@@ -19,7 +18,6 @@ def list_files(startpath):
19
  subindent = ' ' * 4 * (level + 1)
20
  for f in files:
21
  print('{}{}'.format(subindent, f))
22
- list_files("/data/submissions")
23
 
24
  class LeaderboardServer:
25
  def __init__(self):
@@ -46,10 +44,10 @@ class LeaderboardServer:
46
  hyp_path = os.path.join(self.local_leaderboard, f"{model_id}_hyp.json")
47
  self.submisssion_id_to_file[model_id] = hyp_path
48
 
49
- def prepare_model_for_submission(self, file, metadata, task, datasets):
50
  submitted_by = metadata["submitted_by"]
51
  model_id = metadata["model_id"]
52
-
53
  # Run WER eval
54
  results = {}
55
  hyp_seglst = meeteval.io.load(file)
@@ -59,8 +57,8 @@ class LeaderboardServer:
59
  ref_seglst = meeteval.io.load(ref_path)
60
  sessions = ref_seglst.unique('session_id')
61
  local_hyps = hyp_seglst.filter(lambda seg: seg['session_id'] in sessions)
62
- ref_seglst = ref_seglst.map(lambda seg: {**seg, "words":self.text_normalizer(seg["words"])})
63
- local_hyps = local_hyps.map(lambda seg: {**seg, "words":self.text_normalizer(seg["words"])})
64
  per_session_wers = calc_wer(tcp_hyp_seglst=local_hyps, ref_seglst=ref_seglst, collar=5, metrics_list=["tcp_wer"])
65
  metrics = aggregate_wer_metrics(per_session_wers, ["tcp_wer"])
66
  results[dataset] = metrics
@@ -73,7 +71,8 @@ class LeaderboardServer:
73
  else:
74
  all_results = {}
75
 
76
- all_results[model_id] = {
 
77
  "submitted_by": submitted_by,
78
  "results": results
79
  }
@@ -81,6 +80,10 @@ class LeaderboardServer:
81
  with open(results_path, "w") as f:
82
  json.dump(all_results, f, indent=2)
83
 
 
 
 
 
84
  def update_leaderboard(self):
85
  self.fetch_existing_models()
86
 
@@ -93,10 +96,15 @@ class LeaderboardServer:
93
  results = json.load(f)
94
 
95
  rows = []
96
- for model_id, content in results.items():
97
- row = {"Model ID": model_id, "Submitted by": content["submitted_by"]}
98
  for k, v in content["results"].items():
99
  row[k] = v.get("tcp_wer", None)
100
  rows.append(row)
101
 
102
- return pd.DataFrame(rows)
 
 
 
 
 
 
9
  # Constants
10
  REFERENCE_BASE_PATH = os.path.abspath("references") # e.g. ./references/single_channel/dataset1.json
11
  TASKS_METADATA_PATH = os.path.abspath("tasks_metadata.json")
 
12
 
13
  def list_files(startpath):
14
  for root, dirs, files in os.walk(startpath):
 
18
  subindent = ' ' * 4 * (level + 1)
19
  for f in files:
20
  print('{}{}'.format(subindent, f))
 
21
 
22
  class LeaderboardServer:
23
  def __init__(self):
 
44
  hyp_path = os.path.join(self.local_leaderboard, f"{model_id}_hyp.json")
45
  self.submisssion_id_to_file[model_id] = hyp_path
46
 
47
+ def prepare_model_for_submission(self, file, metadata, task, datasets, normalize=False):
48
  submitted_by = metadata["submitted_by"]
49
  model_id = metadata["model_id"]
50
+ original_id = f"{submitted_by}_{model_id}"
51
  # Run WER eval
52
  results = {}
53
  hyp_seglst = meeteval.io.load(file)
 
57
  ref_seglst = meeteval.io.load(ref_path)
58
  sessions = ref_seglst.unique('session_id')
59
  local_hyps = hyp_seglst.filter(lambda seg: seg['session_id'] in sessions)
60
+ ref_seglst = ref_seglst.map(lambda seg: {**seg, "words":self.text_normalizer(seg["words"]) if normalize else seg["words"]})
61
+ local_hyps = local_hyps.map(lambda seg: {**seg, "words":self.text_normalizer(seg["words"]) if normalize else seg["words"]})
62
  per_session_wers = calc_wer(tcp_hyp_seglst=local_hyps, ref_seglst=ref_seglst, collar=5, metrics_list=["tcp_wer"])
63
  metrics = aggregate_wer_metrics(per_session_wers, ["tcp_wer"])
64
  results[dataset] = metrics
 
71
  else:
72
  all_results = {}
73
 
74
+ all_results[original_id] = {
75
+ "model_id": model_id,
76
  "submitted_by": submitted_by,
77
  "results": results
78
  }
 
80
  with open(results_path, "w") as f:
81
  json.dump(all_results, f, indent=2)
82
 
83
+ with open(f"{self.local_leaderboard}/{original_id}_hyp.json", "w") as out_f:
84
+ with open(file, "r") as in_f:
85
+ out_f.write(in_f.read())
86
+
87
  def update_leaderboard(self):
88
  self.fetch_existing_models()
89
 
 
96
  results = json.load(f)
97
 
98
  rows = []
99
+ for content in results.values():
100
+ row = {"Model ID": content["model_id"], "Submitted by": content["submitted_by"]}
101
  for k, v in content["results"].items():
102
  row[k] = v.get("tcp_wer", None)
103
  rows.append(row)
104
 
105
+ df = pd.DataFrame(rows)
106
+ df.iloc[:, 2:] *= 100.0 # Convert WER to percentage, first two columns are metadata
107
+ df = df.fillna("-")
108
+ df = df.round(2)
109
+
110
+ return df
prepare_gt.sh ADDED
@@ -0,0 +1,103 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+
3
+ source "$(dirname ${BASH_SOURCE[0]})/../../configs/local_paths.sh"
4
+ export PYTHONPATH="$(dirname ${BASH_SOURCE[0]})/../:$PYTHONPATH"
5
+
6
+ DATA_DIR=$SRC_ROOT/data
7
+ DATA_SCRIPTS_PATH=$SRC_ROOT/scripts/data
8
+ MANIFESTS_DIR=$DATA_DIR/manifests_new
9
+
10
+ mkdir -p $DATA_DIR
11
+ mkdir -p $MANIFESTS_DIR
12
+ mkdir -p $DATA_DIR/tmp
13
+
14
+
15
+ # LS
16
+ librispeech_dir=$DATA_DIR/librispeech/LibriSpeech
17
+ lhotse download librispeech $DATA_DIR/librispeech
18
+ lhotse prepare librispeech $librispeech_dir $MANIFESTS_DIR
19
+
20
+
21
+ git clone https://github.com/JorisCos/LibriMix $DATA_DIR/tmp/LibriMix
22
+ pip install -r $DATA_DIR/tmp/LibriMix/requirements.txt
23
+
24
+ # Download WHAM
25
+ wham_zip_file=$DATA_DIR/tmp/wham/wham_noise.zip
26
+ wham_folder=$DATA_DIR/tmp/wham/wham_noise
27
+ if [ ! -d "$wham_folder" ]; then
28
+ mkdir -p $DATA_DIR/tmp/wham
29
+
30
+ if [ ! -f "$wham_zip_file" ]; then
31
+ wget -c --tries=0 --read-timeout=20 https://my-bucket-a8b4b49c25c811ee9a7e8bba05fa24c7.s3.amazonaws.com/wham_noise.zip -P $DATA_DIR/tmp/wham
32
+ fi
33
+
34
+ unzip -qn $DATA_DIR/tmp/wham/wham_noise.zip -d $DATA_DIR/tmp/wham
35
+ rm -rf $DATA_DIR/tmp/wham/wham_noise.zip
36
+ fi
37
+
38
+
39
+ python $DATA_DIR/tmp/LibriMix/scripts/augment_train_noise.py --wham_dir $DATA_DIR/tmp/wham/wham_noise
40
+
41
+ for n_src in 2 3; do
42
+ metadata_dir=$DATA_DIR/tmp/LibriMix/metadata/Libri$n_src"Mix"
43
+ python $DATA_DIR/tmp/LibriMix/scripts/create_librimix_from_metadata.py --librispeech_dir $librispeech_dir \
44
+ --wham_dir $DATA_DIR/tmp/wham/wham_noise \
45
+ --metadata_dir $metadata_dir \
46
+ --librimix_outdir $DATA_DIR/librimix \
47
+ --n_src $n_src \
48
+ --freqs 16k \
49
+ --modes max \
50
+ --types mix_clean mix_both mix_single
51
+ for type in "clean" "both"; do
52
+ python $DATA_SCRIPTS_PATH/lsmix_to_lhotse.py --ls_supset $MANIFESTS_DIR/librispeech_supervisions_test-clean.jsonl.gz \
53
+ --mixture_wavs_dir $DATA_DIR/librimix/Libri${n_src}Mix/wav16k/max/test/mix_$type \
54
+ --output_manifest $MANIFESTS_DIR/libri${n_src}mix_mix_${type}_sc_test_cutset.jsonl.gz \
55
+ --type $type
56
+ python $DATA_SCRIPTS_PATH/extract_supervisions.py \
57
+ --cutset_path $MANIFESTS_DIR/libri${n_src}mix_mix_${type}_sc_test_cutset.jsonl.gz \
58
+ --output_path $MANIFESTS_DIR/libri${n_src}mix_mix_${type}_sc_test_supervisions.jsonl.gz
59
+ done
60
+ done
61
+
62
+
63
+ # AMI
64
+ lhotse download ami --mic sdm $DATA_DIR/ami
65
+ lhotse prepare ami --mic sdm --normalize-text none $DATA_DIR/ami $MANIFESTS_DIR
66
+ python3 $DATA_SCRIPTS_PATH/create_cutset.py --input_recset $MANIFESTS_DIR/ami-sdm_recordings_test.jsonl.gz --input_supset $MANIFESTS_DIR/ami-sdm_supervisions_test.jsonl.gz --output $MANIFESTS_DIR/ami-sdm_cutset_test.jsonl.gz
67
+
68
+
69
+ # NOTSOFAR1
70
+ chime-utils dgen notsofar1 $DATA_DIR/nsf $DATA_DIR/notsofar --part="train,dev,eval"
71
+ chime-utils lhotse-prep notsofar1 -d eval_sc --txt-norm none -m sdm $DATA_DIR/notsofar $MANIFESTS_DIR
72
+ chime-utils lhotse-prep notsofar1 -d eval --txt-norm none -m mdm $DATA_DIR/notsofar $MANIFESTS_DIR
73
+
74
+ python3 $DATA_SCRIPTS_PATH/create_cutset.py --input_recset $MANIFESTS_DIR/notsofar1-sdm_recordings_eval_sc.jsonl.gz --input_supset $MANIFESTS_DIR/notsofar1-sdm_supervisions_eval_sc.jsonl.gz --output $MANIFESTS_DIR/notsofar1-sdm_cutset_eval_sc.jsonl.gz
75
+ python3 $DATA_SCRIPTS_PATH/create_cutset.py --input_recset $MANIFESTS_DIR/notsofar1-mdm_recordings_eval.jsonl.gz --input_supset $MANIFESTS_DIR/notsofar1-mdm_supervisions_eval.jsonl.gz --output $MANIFESTS_DIR/notsofar1-mdm_cutset_eval.jsonl.gz
76
+
77
+
78
+ # Extract supervisions
79
+ SC_SUP_MANIFESTS_DIR=$DATA_DIR/manifests_sups_test_sc
80
+ mkdir -p $SC_SUP_MANIFESTS_DIR
81
+ cp $MANIFESTS_DIR/ami-sdm_supervisions_test.jsonl.gz $SC_SUP_MANIFESTS_DIR/ami-sdm.jsonl.gz
82
+ cp $MANIFESTS_DIR/notsofar1-sdm_supervisions_eval_sc.jsonl.gz $SC_SUP_MANIFESTS_DIR/notsofar1-small-sdm.jsonl.gz
83
+ cp $MANIFESTS_DIR/libri2mix_mix_clean_sc_test_supervisions.jsonl.gz $SC_SUP_MANIFESTS_DIR/libri2mix_clean.jsonl.gz
84
+ cp $MANIFESTS_DIR/libri2mix_mix_both_sc_test_supervisions.jsonl.gz $SC_SUP_MANIFESTS_DIR/libri2mix_both.jsonl.gz
85
+ cp $MANIFESTS_DIR/libri3mix_mix_clean_sc_test_supervisions.jsonl.gz $SC_SUP_MANIFESTS_DIR/libri3mix_clean.jsonl.gz
86
+ cp $MANIFESTS_DIR/libri3mix_mix_both_sc_test_supervisions.jsonl.gz $SC_SUP_MANIFESTS_DIR/libri3mix_both.jsonl.gz
87
+
88
+
89
+ SC_SUP_JSON_DIR=$DATA_DIR/refs_test_sc
90
+ mkdir -p $SC_SUP_JSON_DIR
91
+ for input_file in "$SC_SUP_MANIFESTS_DIR"/*.jsonl.gz; do
92
+ # Extract just the filename (no path)
93
+ filename=$(basename "$input_file")
94
+
95
+ # Replace suffix to form output filename
96
+ output_filename="${filename/.jsonl.gz/.json}"
97
+
98
+ # Full path to output file
99
+ output_file="$SC_SUP_JSON_DIR/$output_filename"
100
+
101
+ # Call the Python script
102
+ python3 $DATA_SCRIPTS_PATH/supervision_to_hyp_json.py --input "$input_file" --output "$output_file"
103
+ done
references/{single_channel_gt β†’ hidden}/Libri2Mix_test-clean.json RENAMED
File without changes
references/single_channel_gt_diar/ami-sdm.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_gt_diar/libri2mix_both.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_gt_diar/libri2mix_clean.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_gt_diar/libri3mix_both.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_gt_diar/libri3mix_clean.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_gt_diar/notsofar1-small-sdm.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_real_diar/ami-sdm.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_real_diar/libri2mix_both.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_real_diar/libri2mix_clean.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_real_diar/libri3mix_both.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_real_diar/libri3mix_clean.json ADDED
The diff for this file is too large to render. See raw diff
 
references/single_channel_real_diar/notsofar1-small-sdm.json ADDED
The diff for this file is too large to render. See raw diff
 
tasks_metadata.json CHANGED
@@ -1,9 +1,9 @@
1
  {
2
  "tasks": {
3
- "single_channel_gt": {
4
  "name": "Single Channel - Ground Truth Diarization"
5
  },
6
- "single_channel_real": {
7
  "name": "Single Channel - Real Diarization"
8
  }
9
  }
 
1
  {
2
  "tasks": {
3
+ "single_channel_gt_diar": {
4
  "name": "Single Channel - Ground Truth Diarization"
5
  },
6
+ "single_channel_real_diar": {
7
  "name": "Single Channel - Real Diarization"
8
  }
9
  }