Úloha #202
Autor:Catalin Chiru
Obtížnost
Vaše nejlepší skóre
N/A
V důsledku kosmického fenoménu nazvaného Konvergence chaosu byly postavy z několika komiksových vesmírů sjednoceny do jediné reality. Mezidimenzionální agentura pro monitorování hrdinů (AIME) centralizovala data o těchto hrdinech, aby mohla rychle analyzovat jejich profily a činit automatizovaná rozhodnutí.
Zaznamenaná data popisují jak obecné charakteristiky postav, tak jejich schopnosti a přidružené číselné statistiky. Analýza těchto dat je důležitá pro:
K vyřešení problému budete mít k dispozici dva soubory:
train.csv – obsahuje označené příklady použité pro analýzu a trénování modelů;test.csv – obsahuje stejné proměnné, ale nezahrnuje sloupce powerstats__combat a Super Strength, které musí být predikovány v Úkolu 3 a Úkolu 4.V datové sadě se objevují postavy pocházející z několika vydavatelských vesmírů, například:
V tomto problému pojem „vesmír“ odpovídá hodnotě ve sloupci Publisher.
Každý řádek v souborech train.csv a test.csv odpovídá jedné postavě.
Datová sada obsahuje:
id;powerstats__...;Příklady sloupců:
| Sloupec | DType | Popis |
|---|---|---|
| id | int | Unikátní identifikátor postavy |
| name | object | Jméno postavy |
| Publisher | object | Vydavatel / vydavatelský vesmír |
| Gender | object | Pohlaví postavy |
| Race | object | Druh / rasa |
| Eye color | object | Barva očí |
| Hair color | object | Barva vlasů |
| Height | float | Výška postavy |
| Weight | float | Váha postavy |
| Alignment | object | Morální orientace: good, bad, neutral nebo - |
| powerstats__intelligence | float | Úroveň inteligence |
| powerstats__strength | float | Úroveň síly |
| powerstats__speed | float | Úroveň rychlosti |
| powerstats__durability | float | Úroveň odolnosti |
| powerstats__power | float | Celková úroveň moci |
| powerstats__combat | float | Úroveň boje (pouze v train.csv) |
| Super Strength | int | Binární schopnost: super-síla (pouze v train.csv) |
| Agility | int | Binární schopnost: hbitost |
| Flight | int | Binární schopnost: létání |
Pomocí dat v souboru train.csv určete, kolik unikátních hodnot se objevuje ve sloupci Publisher.
Pomocí dat v souboru train.csv uvažujte pouze postavy, pro které platí Alignment = good.
Určete, který vydavatel (publisher) obsahuje nejvíce kladných hrdinů.
V případě rovnosti zvolte vydavatele, který je první v abecedním pořadí.
powerstats__combat (40 bodů)Na základě dat v souboru train.csv natrénujte model schopný predikovat hodnoty atributu powerstats__combat pro každou postavu v test.csv.
Super Strength (40 bodů)Na základě dat v souboru train.csv natrénujte model schopný predikovat hodnoty atributu Super Strength pro každou postavu v test.csv.
Povolené hodnoty jsou (predikce musí být finální binární labely, nikoliv pravděpodobnosti):
0.01.0Soubor pro odevzdání musí být ve formátu csv a obsahovat následující sloupce:
| Sloupec | Popis |
|---|---|
| id | Identifikátor hodnocené entity |
| subtaskID | Identifikátor úkolu, pro který se odesílá odpověď |
| answer | Vypočítaná nebo predikovaná hodnota |
Možné hodnoty pro subtaskID jsou:
| subtaskID | Úkol |
|---|---|
| task1 | Počet unikátních vesmírů |
| task2 | Vydavatel s největším počtem kladných hrdinů |
| task3 | Predikce powerstats__combat |
| task4 | Predikce schopnosti Super Strength |
Pro Úkol 1 a Úkol 2 je odpověď globální a odesílá se pomocí speciální hodnoty GLOBAL ve sloupci id.
submission.csvid,subtaskID,answerGLOBAL,task1,1GLOBAL,task2,Cartoon Network43,task3,2.5750,task3,5.171,task4,0.04,task4,1.0Celkové skóre je 100 bodů.
Hodnocení probíhá přesným porovnáním odeslané hodnoty se správnou odpovědí.
Hodnocení probíhá přesným porovnáním odeslané hodnoty se správnou odpovědí.
Pro Úkol 3 se používá metrika MAE (Mean Absolute Error).
Body jsou přidělovány následovně:
MAE ≤ 12.0, získáte 40 bodů;MAE ≥ 30.0, získáte 0 bodů;Použitý vzorec je:
score_task3 = 40 × (30 - MAE) / (30 - 12), pro 12 < MAE < 30Pro Úkol 4 se používá metrika Accuracy.
Body jsou přidělovány následovně:
Accuracy ≥ 0.90, získáte 40 bodů;Accuracy ≤ 0.55, získáte 0 bodů;Použitý vzorec je:
score_task4 = 40 × (Accuracy - 0.55) / (0.90 - 0.55), pro 0.55 < Accuracy < 0.90