File size: 1,290 Bytes
529986f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import gradio as gr
import numpy as np
import pandas as pd
import seaborn as sns

cm = sns.light_palette("green", as_cmap=True)

data = pd.read_csv("all_res.csv")
data["coherence"] = np.sqrt(data["c_in"] * data["c_ex"])
data["interpretability"] = np.sqrt(data["coherence"] * data["diversity"])
data["v_measure"] = (
    2
    * data["homogeneity_score"]
    * data["completeness_score"]
    / (data["homogeneity_score"] + data["completeness_score"])
)

metrics = [
    "interpretability",
    "coherence",
    "diversity",
    "fowlkes_mallows_score",
    "adjusted_mutual_info_score",
    "v_measure",
]
summary = data.groupby("task")[metrics].rank(pct=True)
summary["model"] = data["model"]
summary = (
    summary.groupby("model").mean().sort_values("interpretability", ascending=False)
)
# summary["dps"] = data.groupby("model")["dps"].mean()
summary = summary.reset_index()
summary.columns = [
    "Model",
    "Interpretability",
    "Coherence",
    "Diversity",
    "FMI",
    "AMI",
    "V-score",
]
styler = summary.style.format(precision=2).background_gradient(cmap="Greens")

with gr.Blocks() as demo:
    table = gr.DataFrame(styler, show_search="filter", pinned_columns=1)
demo.launch(
    theme=gr.themes.Base(font=[gr.themes.GoogleFont("Ubuntu"), "Arial", "sans-serif"]),
)