[PYTHON] Kaggle House Preise ③ ~ Prognose / Einreichung ~

Prognostizieren Sie Testdaten und senden Sie Übermittlungsdateien mit dem unten erstellten Modell. Kaggle House Prices ~ Model Creation ~

Bibliothek laden

import numpy as np
from sklearn.externals import joblib

Daten lesen

def load_x_test() -> pd.DataFrame:
    """Lesen Sie die Funktionsmenge der zuvor erstellten Testdaten

    :return:Merkmale der Testdaten
    """
    return joblib.load('test_x.pkl')

def load_model(i_fold):
    """Laden Sie ein vorgefertigtes Modell

    :return:Zielfaltenmodell
    """
    return joblib.load(f'model-{i_fold}.pkl')

def load_pred_test():
    """Lesen Sie das Vorhersageergebnis der zuvor erstellten Testdaten

    :return:Voraussichtliches Ergebnis der Testdaten
    """
    return joblib.load('pred-test.pkl')

Testdaten vorhersagen

#Vorhersage von Testdaten durch Mittelung der Modelle jeder durch Kreuzvalidierung erlernten Falte
test_x = load_x_test()
preds = []
n_fold = 4

#Machen Sie Vorhersagen mit jedem Faltmodell
for i_fold in range(n_fold):
    print(f'start prediction fold:{i_fold}')
    model = load_model(i_fold)
    pred = model.predict(test_x)
    preds.append(pred)
    print(f'end prediction fold:{i_fold}')

#Ermitteln Sie den Durchschnittswert der Prognose
pred_avg = np.mean(preds, axis=0)

#Vorhersageergebnisse speichern
joblib.dump(pred_avg, 'pred-test.pkl')

Erstellen Sie eine Übermittlungsdatei zur Übermittlung

pred = load_pred_test()
print(len(pred))
print(load_x_test())
submission = pd.DataFrame(pd.read_csv('test.csv')['Id'])
submission['SalePrice'] = np.exp(pred)
submission.to_csv(
    'submission.csv',
    index=False
)

Einreichungsergebnis

image.png

Recommended Posts

Kaggle House Preise ③ ~ Prognose / Einreichung ~
Herausforderung Kaggle [Hauspreise]
Kaggle ~ Home Preisprognose ② ~
Kaggle House Preise ② ~ Modellierung ~
Kaggle House Preise ~ ~ Feature Engineering ~
Kaggle ~ Home Preisprognose ~
So suchen Sie nach fehlenden Werten (Kaggle: House Prices)
Immobilienpreise: Fortgeschrittene Regressionstechniken