2024.gada MI Olimpiādes 4. uzdevums

image-20240214222235393

Datu kopas (Apmācībām un testiem paredzētā kopa kā arī 200 paraugu validācijas kopa piemēram kā tiks padoti dari gala testēšanā): http://share.yellowrobot.xyz/quick/2024-2-14-068310DA-E78F-448C-8AFF-6CF5DC24566B.zip

Datu kopa satur noskrāpētus datus no ar automašīnu datiem, kuras izliktas pārdošanā. Uzdevums ir veikt cenas prognozi, balstoties uz dotajiem ievades datiem.

Nepieciešams izveidot produkcijas programmu, kura kā ievades datus saņem CSV failu ar datiem un kā izvades datus saglabā šajā pašā failā, aizpildot un prognozējot cenas vērtības (price_eur). Pārbaudes fails nesaturēs nevienu cenas vērtību (price_eur). Modelis drīkst izmantot apmācību failu un arī citus papildus failus.

Uzdevumu iesniegt kā ZIP failu, kurš satur gan apmācību, gan produkcijas pirmkodu, modeļa svarus vai citu nepieciešamo informāciju un instrukcijas kā to izmantot produkcijas programmu.

Pareizi noteikta cena tiek uzskatīta, ja tā ir 300EUR robežās no īstās cenas. Tiks testēti 1000 paraugi.

Tāpat punktus var iegūt, veicot sekojošas darbības, kuras īpaši jāatzīmē kā komentārs pirmkodā un par kurām tiek doti punkti (piemērs komentāram, kas norāda uz pirkoda apgabalu, kur tika veikta Datu attīrīšāna # Action No.1.)

  1. Datu attīrīšāna (trūkstošo datu punktu aizpildīšana, ekstremālu vētību izlēgšana)

  2. Datu kopas analīze (statistiskās nozīmības noteikšana ievades datu īpašībām, salīdzinot ar cenu)

  3. Datu nejauša augmentācija katrā apmācību iterācijā

  4. Datu normalizācija vai standartizācija (īpašību mērogošana - feature scaling)

  5. Izvades datu atgriezšana īstajās skalāro vērtību robežās (price_eur jābūt EUR)

  6. Datu kopu sadalīšana apmācību, testa un validācijas kopās (vai n-fold validācija)

  7. Retas klases / kategorijas apvienotas vienā kopējā klasē

  8. Kategorisko datu sabalansēšana testa un validācijas kopā (ja ir atsevišķa validācijas kopa)

  9. Skalāro datu sadalījuma sabalansēšana testa un validācijas kopā (ja ir atsevišķa validācijas kopa)

  10. Dziļo neironu tīklos balstīts modelis, kuram ir paša izveidota arhitektūra

  11. Izmantota piemērota modeļa arhitektūra (MLP, FF, ConvNet, RNN, Transformer utt.)

  12. Modeļa arhitektūrā izmantotas pareizas funkciju secības

  13. Pareizi izvēlēta kļūdas funkcija

  14. Ja tiek izmantota klasifikācija, tad svērta kļūdas funkcija, balstoties uz apmācību kopas izvades klasēm. Ja tiek izmantota regresija, tad svērta kļūdas funkcija, balstoties uz apmācību kopas izvades vērtību sadalījumu. Vai arī izmantot svērtu nejaušu paraugu izvēli, balsoties uz to biežumu atkarībā no vērtību sadalījuma.

  15. Maināmi hiperparametri, izmantojot komandas rindas argumentus

  16. Veikta un dokumentēta hiperparametru pārmeklēšana

  17. Izvēlēts pareizs rādītājs, lai noteiktu modeļa veiktspēju vai precizitāti (piem. F1, NRMSE, R2)

  18. Kļūdas funkciju un rādītāju vērtību grafika un datu saglabāšana

  19. Modeļa svaru saglabāšana, novēršot pārapmācīšanos

Aprēķins iegūtajiem punktiem šajā uzdevumā:

(1)punkti=cenapareiza10005+darbībaizpildīta195