Voltline Dealership
المؤلف: Iancu Ștefan Constantin
Voltline Dealership
Context
Suntem în anul 2077, iar la reprezentanța Voltline, vechiul hardware "Price-Sync" s-a defectat definitiv. Fără el, dealership-ul nu mai are cum să stabilească prețurile mașinilor. Misiunea ta? Construiește un model de machine learning care poate prezice prețul mașinilor folosind date istorice de vânzări.
Ai la dispoziție două fișiere:
train.csv– informații complete despre mașinitest.csv– aceleași informații, dar fără coloana price
Aceasta este o problemă de regresie: modelul tău va prezice un număr continuu - prețul unei mașini.
Setul de date
| Coloană | Tip | Descriere |
|---|---|---|
| CarID | int | Identificator unic pentru fiecare mașină |
| CarName | object | Numele modelului |
| symboling | float | Rating de risc pentru asigurare |
| fueltype | object | Tipul de combustibil (ex: gas, diesel) |
| aspiration | object | Tipul de aspirație al motorului (ex: standard, turbo) |
| doornumber | object | Numărul de uși (ex: two, four) |
| carbody | object | Tipul caroseriei (ex: sedan, hatchback, convertible) |
| drivewheel | object | Tipul tracțiunii (ex: fwd, rwd, 4wd) |
| enginelocation | object | Locația motorului (ex: front, rear) |
| wheelbase | float | Distanța dintre axe |
| carlength | float | Lungimea totală a mașinii |
| carwidth | float | Lățimea totală a mașinii |
| carheight | float | Înălțimea totală a mașinii |
| curbweight | float | Greutatea mașinii fără pasageri sau marfă |
| enginetype | object | Tipul motorului (ex: ohc, dohc, rotor) |
| cylindernumber | object | Numărul de cilindri (ex: four, six) |
| enginesize | int | Capacitatea motorului |
| fuelsystem | object | Sistemul de alimentare (ex: mpfi, 2bbl) |
| boreratio | float | Diametrul cilindrilor |
| stroke | float | Lungimea cursei pistonului |
| compressionratio | float | Raportul de compresie |
| horsepower | int | Puterea motorului în cai putere |
| peakrpm | int | Turația maximă a motorului |
| citympg | float | Eficiența combustibilului în oraș |
| highwaympg | float | Eficiența combustibilului pe autostradă |
| price | float | Prețul mașinii (variabila țintă) |
Cerințe
Pentru această problemă trebuie să rezolvi 3 task-uri.
Task 1 – Cel mai frecvent tip de motor (10 puncte)
Găsește valoarea enginetype care apare cel mai frecvent în setul de antrenare.
Task 2 – Prețul mediu al mașinilor pe benzină (20 puncte)
Calculează media coloanei price pentru toate mașinile care folosesc gas drept combustibil, din setul de antrenare. Rezultatul trebuie rotunjit la 2 zecimale.
Task 3 – Predicția prețurilor (70 puncte)
Construiește un model de regresie care prezice price pe baza informațiilor disponibile în train.csv.
Generează predicții pentru fiecare mașină din test.csv.
Evaluare
- Task 1 și Task 2 sunt evaluate prin potrivire exactă.
- Task 3 este evaluat folosind R² Score:
- R² ≥ 0.95 → 70 puncte
- R² ≤ 0.80 → 0 puncte
- Valorile intermediare primesc punctaj proporțional
Formatul submisiei
Fișierul submission.csv trebuie să conțină următoarele coloane:
subtaskID,datapointID,answer
1,1,ohc
2,1,12728.06
3,436,19811.0
3,441,16306.0
unde:
subtaskID-1,2sau3datapointID-1pentru Task 1 și Task 2; valoareaCarIDdin test pentru Task 3answer- depinde de task:- Task 1: tipul de motor (string)
- Task 2: prețul mediu rotunjit la 2 zecimale
- Task 3: prețul prezis
Sursă dataset: https://www.kaggle.com/datasets/imgowthamg/car-price/data