Problem F
Scribble
Languages
en
sv
Din vän Harry tycker om att klottra. För att spara papper ritar han flera saker ovanpå varandra. Du hittade hans gamla skissbok med rena teckningar och vill lista ut vad han har klottrat i sina röriga sammansatta bilder. Harry ritar alltid exakt 3 objekt tillsammans; färre lämnar för mycket utrymme, fler blir för rörigt. Han ritar från 50 olika objekttyper. Din uppgift är att identifiera vilka 3 objekt som finns i varje sammansatt bild.
För denna uppgift har vi gett dig träningsdata och det är inte tillåtet att hitta egen träningsdata på internet.
Input
Ladda ner filen med test- och träningsdata. Den finns längst ner under ”attachments”. Du kommer att få en zip-fil som innehåller:
-
train.csv - Sökvägar till Harrys rena teckningar och deras etiketter
-
test.csv - Sökvägar till Harrys sammansatta klotter
-
train_images/ - Harrys rena individuella teckningar
-
test_images/ - Harrys sammansatta klotter (3 objekt sammanslagna)
-
image_merge.py - Exempelskript som visar hur Harry skapar sina sammansatta klotter
Output
För varje testbild ska du skriva ut exakt 1 rad med 3 objektnamn separerade med mellanslag. Ordningen på objekten i din utskrift spelar ingen roll.
Example
Input: Två sammansatta klotter:
-
Första bilden innehåller: beach, bear, arm
-
Andra bilden innehåller: coffee_cup, diving_board, guitar
Output:
beach bear arm coffee_cup diving_board guitar
Scoring
Din lösning kommer att utvärderas baserat på hur korrekt du identifierar de 3 objekten i varje sammanslagen bild. Poängen beräknas enligt följande:
-
För varje testbild får du 1 poäng för varje korrekt identifierat objekt
-
Du kan få maximalt 3 poäng per testbild
-
Din slutpoäng är baserad på det totala antalet korrekt identifierade objekt dividerat med det totala möjliga antalet poäng (3 * antal testbilder)
Dina slutpoäng beräknas enligt följande:
Om $S$ är det totala antalet korrekt identifierade objekt över alla testbilder dividerat med det totala möjliga antalet poäng (i huvudsak, din noggrannhet), så är dina slutpoäng:
\[ \text{Points} = \max \left(0, \min \left(100, \frac{S}{0.65} \times 100 \right)\right) \]Vid slutet av tävlingen testas alla lösningar om på resterande 70% av datan. Din poäng i slutet av tävlingen är alltså endast poängen på de resterande 70% av datan, de 30% som du testats på hittills har ingen påverkan. Det är garanterat att de 30% som testas under tävlingen har valts uniformt slumpmässigt och är helt disjunkta från de 70% som du testas på i slutet. Därmed borde resultaten på de 30% som du testas på under tävlingen ses som en stark indikator på hur bra din lösning är. Samtidigt är det dåligt överanpassa (overfitta) din lösning till testdatan.
