Spaces:
Running
Running
updated xgboost metrics
Browse files- __pycache__/utils.cpython-310.pyc +0 -0
- app.py +12 -12
- utils.py +2 -2
__pycache__/utils.cpython-310.pyc
CHANGED
|
Binary files a/__pycache__/utils.cpython-310.pyc and b/__pycache__/utils.cpython-310.pyc differ
|
|
|
app.py
CHANGED
|
@@ -223,7 +223,7 @@ with open("complete_results_acad.json", 'r') as f:
|
|
| 223 |
# Recompute Elo scores for the full public dataset
|
| 224 |
public_per_dataset = compute_elo_for_subset(public_per_dataset, metric="Accuracy")
|
| 225 |
# Compute percentage improvement over XGBoost
|
| 226 |
-
public_per_dataset = compute_pct_improvement_over_baseline(public_per_dataset, baseline_model="
|
| 227 |
public_enter_per_dataset = public_per_dataset
|
| 228 |
|
| 229 |
with open("complete_results_indus.json", "r") as f:
|
|
@@ -232,7 +232,7 @@ with open("complete_results_indus.json", "r") as f:
|
|
| 232 |
# Recompute Elo scores for the full private dataset
|
| 233 |
private_per_dataset = compute_elo_for_subset(private_per_dataset, metric="Accuracy")
|
| 234 |
# Compute percentage improvement over XGBoost
|
| 235 |
-
private_per_dataset = compute_pct_improvement_over_baseline(private_per_dataset, baseline_model="
|
| 236 |
|
| 237 |
with open("qrt.json", "r") as f:
|
| 238 |
qrt_scores = json.load(f)
|
|
@@ -449,14 +449,14 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 449 |
gr.Markdown(' ')
|
| 450 |
with gr.Row(equal_height=False):
|
| 451 |
with gr.Column(scale=8):
|
| 452 |
-
public_model_agg = public_per_dataset.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '
|
| 453 |
-
public_enter_model_agg = public_enter_per_dataset.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '
|
| 454 |
gr.Markdown("## π Overview of the Leaderboard *(Evaluation on publicly available Enterprise Datasets)*")
|
| 455 |
gr.Markdown(' ')
|
| 456 |
|
| 457 |
with gr.Row():
|
| 458 |
metric_selector = gr.Dropdown(
|
| 459 |
-
choices=["Accuracy", "Precision", "Recall", "F1_score", "AUC", "Elo_score", "
|
| 460 |
value="Accuracy",
|
| 461 |
label="π Metric to display",
|
| 462 |
elem_classes=["compact-dropdown"]
|
|
@@ -543,7 +543,7 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 543 |
gr.Markdown("## π Overview ")
|
| 544 |
|
| 545 |
# Compute per-model averages from public_per_dataset
|
| 546 |
-
public_model_agg = public_per_dataset.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '
|
| 547 |
public_model_agg = public_model_agg.round(3)
|
| 548 |
# Add model_type from model_info.json
|
| 549 |
with open("model_info.json", "r") as f:
|
|
@@ -551,7 +551,7 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 551 |
|
| 552 |
public_model_agg = public_model_agg.merge(model_info[["model_name", "model_type"]], left_on="model", right_on="model_name", how="left").drop(columns=["model_name"])
|
| 553 |
# Only keep the required columns, with model_type second
|
| 554 |
-
public_model_agg = public_model_agg[['model', 'model_type', 'Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '
|
| 555 |
public_model_agg = public_model_agg.sort_values(by=["model"], key=lambda x: x != "NICL")
|
| 556 |
model_df = gr.DataFrame(
|
| 557 |
value=highlight_max(public_model_agg),
|
|
@@ -630,7 +630,7 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 630 |
"F1_score",
|
| 631 |
"AUC",
|
| 632 |
"Elo_score",
|
| 633 |
-
"
|
| 634 |
]
|
| 635 |
|
| 636 |
# --- Filtering & aggregation ---
|
|
@@ -650,7 +650,7 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 650 |
# Recompute Elo scores for this filtered subset
|
| 651 |
filtered = compute_elo_for_subset(filtered, metric="Accuracy")
|
| 652 |
# Recompute percentage improvement over XGBoost
|
| 653 |
-
filtered = compute_pct_improvement_over_baseline(filtered, baseline_model="
|
| 654 |
|
| 655 |
per_model_avg = (
|
| 656 |
filtered
|
|
@@ -701,11 +701,11 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 701 |
# Recompute Elo scores for this industry subset
|
| 702 |
domain_per_dataset = compute_elo_for_subset(domain_per_dataset, metric="Accuracy")
|
| 703 |
# Recompute percentage improvement over XGBoost for this industry subset
|
| 704 |
-
domain_per_dataset = compute_pct_improvement_over_baseline(domain_per_dataset, baseline_model="
|
| 705 |
|
| 706 |
model_agg = (
|
| 707 |
domain_per_dataset
|
| 708 |
-
.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '
|
| 709 |
.mean()
|
| 710 |
.round(3)
|
| 711 |
.reset_index()
|
|
@@ -762,7 +762,7 @@ with gr.Blocks(css=css, theme=gr.themes.Default()) as demo:
|
|
| 762 |
"F1_score",
|
| 763 |
"AUC",
|
| 764 |
"Elo_score",
|
| 765 |
-
"
|
| 766 |
]
|
| 767 |
|
| 768 |
# Available datasets
|
|
|
|
| 223 |
# Recompute Elo scores for the full public dataset
|
| 224 |
public_per_dataset = compute_elo_for_subset(public_per_dataset, metric="Accuracy")
|
| 225 |
# Compute percentage improvement over XGBoost
|
| 226 |
+
public_per_dataset = compute_pct_improvement_over_baseline(public_per_dataset, baseline_model="xgboost", metric="Accuracy")
|
| 227 |
public_enter_per_dataset = public_per_dataset
|
| 228 |
|
| 229 |
with open("complete_results_indus.json", "r") as f:
|
|
|
|
| 232 |
# Recompute Elo scores for the full private dataset
|
| 233 |
private_per_dataset = compute_elo_for_subset(private_per_dataset, metric="Accuracy")
|
| 234 |
# Compute percentage improvement over XGBoost
|
| 235 |
+
private_per_dataset = compute_pct_improvement_over_baseline(private_per_dataset, baseline_model="xgboost", metric="Accuracy")
|
| 236 |
|
| 237 |
with open("qrt.json", "r") as f:
|
| 238 |
qrt_scores = json.load(f)
|
|
|
|
| 449 |
gr.Markdown(' ')
|
| 450 |
with gr.Row(equal_height=False):
|
| 451 |
with gr.Column(scale=8):
|
| 452 |
+
public_model_agg = public_per_dataset.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '%β over XGBoost']].mean().reset_index()
|
| 453 |
+
public_enter_model_agg = public_enter_per_dataset.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '%β over XGBoost']].mean().reset_index()
|
| 454 |
gr.Markdown("## π Overview of the Leaderboard *(Evaluation on publicly available Enterprise Datasets)*")
|
| 455 |
gr.Markdown(' ')
|
| 456 |
|
| 457 |
with gr.Row():
|
| 458 |
metric_selector = gr.Dropdown(
|
| 459 |
+
choices=["Accuracy", "Precision", "Recall", "F1_score", "AUC", "Elo_score", "%β over XGBoost"],
|
| 460 |
value="Accuracy",
|
| 461 |
label="π Metric to display",
|
| 462 |
elem_classes=["compact-dropdown"]
|
|
|
|
| 543 |
gr.Markdown("## π Overview ")
|
| 544 |
|
| 545 |
# Compute per-model averages from public_per_dataset
|
| 546 |
+
public_model_agg = public_per_dataset.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '%β over XGBoost']].mean().reset_index()
|
| 547 |
public_model_agg = public_model_agg.round(3)
|
| 548 |
# Add model_type from model_info.json
|
| 549 |
with open("model_info.json", "r") as f:
|
|
|
|
| 551 |
|
| 552 |
public_model_agg = public_model_agg.merge(model_info[["model_name", "model_type"]], left_on="model", right_on="model_name", how="left").drop(columns=["model_name"])
|
| 553 |
# Only keep the required columns, with model_type second
|
| 554 |
+
public_model_agg = public_model_agg[['model', 'model_type', 'Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '%β over XGBoost']]
|
| 555 |
public_model_agg = public_model_agg.sort_values(by=["model"], key=lambda x: x != "NICL")
|
| 556 |
model_df = gr.DataFrame(
|
| 557 |
value=highlight_max(public_model_agg),
|
|
|
|
| 630 |
"F1_score",
|
| 631 |
"AUC",
|
| 632 |
"Elo_score",
|
| 633 |
+
"%β over XGBoost",
|
| 634 |
]
|
| 635 |
|
| 636 |
# --- Filtering & aggregation ---
|
|
|
|
| 650 |
# Recompute Elo scores for this filtered subset
|
| 651 |
filtered = compute_elo_for_subset(filtered, metric="Accuracy")
|
| 652 |
# Recompute percentage improvement over XGBoost
|
| 653 |
+
filtered = compute_pct_improvement_over_baseline(filtered, baseline_model="xgboost", metric="Accuracy")
|
| 654 |
|
| 655 |
per_model_avg = (
|
| 656 |
filtered
|
|
|
|
| 701 |
# Recompute Elo scores for this industry subset
|
| 702 |
domain_per_dataset = compute_elo_for_subset(domain_per_dataset, metric="Accuracy")
|
| 703 |
# Recompute percentage improvement over XGBoost for this industry subset
|
| 704 |
+
domain_per_dataset = compute_pct_improvement_over_baseline(domain_per_dataset, baseline_model="xgboost", metric="Accuracy")
|
| 705 |
|
| 706 |
model_agg = (
|
| 707 |
domain_per_dataset
|
| 708 |
+
.groupby('model')[['Accuracy', 'Precision', 'Recall', 'F1_score', 'AUC', 'Elo_score', '%β over XGBoost']]
|
| 709 |
.mean()
|
| 710 |
.round(3)
|
| 711 |
.reset_index()
|
|
|
|
| 762 |
"F1_score",
|
| 763 |
"AUC",
|
| 764 |
"Elo_score",
|
| 765 |
+
"%β over XGBoost",
|
| 766 |
]
|
| 767 |
|
| 768 |
# Available datasets
|
utils.py
CHANGED
|
@@ -10,7 +10,7 @@ import scipy
|
|
| 10 |
|
| 11 |
def compute_pct_improvement_over_baseline(
|
| 12 |
df: pd.DataFrame,
|
| 13 |
-
baseline_model: str = "
|
| 14 |
metric: str = "Accuracy"
|
| 15 |
) -> pd.DataFrame:
|
| 16 |
"""
|
|
@@ -45,7 +45,7 @@ def compute_pct_improvement_over_baseline(
|
|
| 45 |
return None
|
| 46 |
return ((row[metric] - baseline) / baseline) * 100
|
| 47 |
|
| 48 |
-
df["
|
| 49 |
|
| 50 |
return df
|
| 51 |
|
|
|
|
| 10 |
|
| 11 |
def compute_pct_improvement_over_baseline(
|
| 12 |
df: pd.DataFrame,
|
| 13 |
+
baseline_model: str = "xgboost",
|
| 14 |
metric: str = "Accuracy"
|
| 15 |
) -> pd.DataFrame:
|
| 16 |
"""
|
|
|
|
| 45 |
return None
|
| 46 |
return ((row[metric] - baseline) / baseline) * 100
|
| 47 |
|
| 48 |
+
df["%β over XGBoost"] = df.apply(calc_pct_improvement, axis=1)
|
| 49 |
|
| 50 |
return df
|
| 51 |
|