commit 5593640d6ab0e33f157352ad6fd72e1a99bc3fe4
parent fb0d5df815b6bf7e18d882800a63e92f6811495b
Author: Étienne Simon <esimon@esimon.eu>
Date: Mon, 6 Oct 2025 15:23:25 +0200
add extended head-modifier table
Diffstat:
1 file changed, 15 insertions(+), 0 deletions(-)
diff --git a/epsilon_compositionality/compute_statistics.py b/epsilon_compositionality/compute_statistics.py
@@ -142,11 +142,26 @@ def write_violins(output_path: pathlib.Path) -> None:
print("", file=output)
+def latex_extended_statistics_table(output_path: pathlib.Path, models: dict[str, Any]) -> None:
+ with output_path.open("w") as output:
+ for model_name in MODELS_ORDER:
+ for isubmodel, submodel in enumerate(MODELS_SUB_ORDER if model_name in MODELS_HAS_SUB else [""]):
+ print(f"{model_name if isubmodel==0 else '':<10}", end=" & ", file=output)
+ print(f"{submodel:<6}", end=" & ", file=output)
+ model_key: str = f"{model_name}-{submodel}" if submodel else model_name
+ for isubset, subset in enumerate(CLASSES_ORDER):
+ for iside, side in enumerate(["modifier", "head"]):
+ positives = models[model_key][subset][side]["positives"]
+ negatives = models[model_key][subset][side]["negatives"]
+ print(table_cell(positives, negatives, "rank biserial"), end=" & " if isubset<len(CLASSES_ORDER)-1 or iside==0 else " \\\\\n", file=output)
+
+
def main() -> None:
models = read_similarities("multiplicative")
RESULTS_PATH.mkdir(exist_ok=True)
latex_data_statistics(RESULTS_PATH / "data statistics.tex")
latex_main_statistics_table(RESULTS_PATH / "main statistics.tex", models)
+ latex_extended_statistics_table(RESULTS_PATH / "extended statistics.tex", models)
latex_distances_statistics(RESULTS_PATH / "distances statistics.tex")
write_violins(RESULTS_PATH / "violins.dat")