Skip to content

Nitro AI Judge

Cum trimiți o soluție?

După ce ai antrenat modelul pe datele de train și ești mulțumit de performanța pe validation, generezi predicții pe datele de test și le salvezi într-un fișier CSV.

Fiecare problemă poate avea mai multe subtask-uri (de exemplu, clasificare + regresie, sau aceeași problemă cu seturi de date diferite). Fișierul tău de submission trebuie să conțină predicțiile pentru toate subtask-urile, organizate în trei coloane:

Coloană Ce conține
subtaskID Numărul subtask-ului (1, 2, 3...)
datapointID ID-ul rândului din datele de test
answer Predicția modelului tău

Template pentru submission

Iată un exemplu complet de cod care generează un fișier de submission valid pentru o problemă cu 3 subtask-uri:

import pandas as pd

# Presupunem că ai deja modelele antrenate și datele de test pregătite
# model1, model2, model3 = modelele pentru fiecare subtask
# X_test = datele de test (fără coloana de labels)

# Generează predicțiile pentru fiecare subtask
pred1 = model1.predict(X_test)
pred2 = model2.predict(X_test)
pred3 = model3.predict(X_test)

# Creează un DataFrame pentru fiecare subtask
df_sol1 = pd.DataFrame({
    "subtaskID": 1,
    "datapointID": X_test.index,
    "answer": pred1
})

df_sol2 = pd.DataFrame({
    "subtaskID": 2,
    "datapointID": X_test.index,
    "answer": pred2
})

df_sol3 = pd.DataFrame({
    "subtaskID": 3,
    "datapointID": X_test.index,
    "answer": pred3
})

# Combină toate subtask-urile și salvează
df_submission = pd.concat([df_sol1, df_sol2, df_sol3])
df_submission.to_csv("submission.csv", index=False)

Fișierul rezultat va arăta cam așa:

subtaskID,datapointID,answer
1,0,1
1,1,0
1,2,1
...
2,0,3.45
2,1,7.82
...