Temel model

Python ile Bir Kaggle Yarışmasını Kazanmak

Yauhen Babakhin

Kaggle Grandmaster

Modelleme aşaması

 

modelleme aşaması bileşenleri

Python ile Bir Kaggle Yarışmasını Kazanmak

Modelleme aşaması

 

modelleme aşamasında temel model

Python ile Bir Kaggle Yarışmasını Kazanmak

New York taksi doğrulaması

# Veriyi okuyun
taxi_train = pd.read_csv('taxi_train.csv')
taxi_test = pd.read_csv('taxi_test.csv')
from sklearn.model_selection import train_test_split

# Yerel doğrulama oluşturun
validation_train, validation_test = train_test_split(taxi_train,
                                                     test_size=0.3,
                                                     random_state=123)
Python ile Bir Kaggle Yarışmasını Kazanmak

Temel model I

import numpy as np
# Tüm test gözlemlerine ortalama ücreti atayın
taxi_test['fare_amount'] = np.mean(taxi_train.fare_amount)

# Tahminleri dosyaya yazın taxi_test[['id','fare_amount']].to_csv('mean_sub.csv', index=False)
Doğrulama RMSE Genel LB RMSE Genel LB Sırası
9.986 9.409 1449 / 1500
Python ile Bir Kaggle Yarışmasını Kazanmak

Temel model II

# Grup bazında ortalama ücreti hesaplayın
naive_prediction_groups = taxi_train.groupby('passenger_count').fare_amount.mean()
# Test setinde tahmin yapın
taxi_test['fare_amount'] = taxi_test.passenger_count.map(naive_prediction_groups)

# Tahminleri dosyaya yazın taxi_test[['id','fare_amount']].to_csv('mean_group_sub.csv', index=False)
Doğrulama RMSE Genel LB RMSE Genel LB Sırası
9.978 9.407 1411 / 1500
Python ile Bir Kaggle Yarışmasını Kazanmak

Temel model III

# Yalnızca sayısal özellikleri seçin
features = ['pickup_longitude', 'pickup_latitude',
            'dropoff_longitude', 'dropoff_latitude', 'passenger_count']
from sklearn.ensemble import GradientBoostingRegressor

# Bir Gradient Boosting modeli eğitin
gb = GradientBoostingRegressor()
gb.fit(taxi_train[features], taxi_train.fare_amount)

# Test verisinde tahmin yapın taxi_test['fare_amount'] = gb.predict(taxi_test[features])
Python ile Bir Kaggle Yarışmasını Kazanmak

Temel model III

# Tahminleri dosyaya yazın
taxi_test[['id','fare_amount']].to_csv('gb_sub.csv', index=False)
Doğrulama RMSE Genel LB RMSE Genel LB Sırası
5.996 4.595 1109 / 1500
Python ile Bir Kaggle Yarışmasını Kazanmak

Ara sonuçlar

 

Model Doğrulama RMSE Genel LB RMSE
Basit Ortalama 9.986 9.409
Grup Ortalaması 9.978 9.407
Gradient Boosting 5.996 4.595
Python ile Bir Kaggle Yarışmasını Kazanmak

Genel Liderlik Tablosu ile korelasyon

 

Model Doğrulama RMSE Genel LB RMSE
Model A 3.500 3.800
Model B 3.300 4.100
Model C 3.200 3.900

 

Model Doğrulama RMSE Genel LB RMSE
Model A 3.400 3.900
Model B 3.100 3.400
Model C 2.900 3.300
Python ile Bir Kaggle Yarışmasını Kazanmak

Hadi pratik yapalım!

Python ile Bir Kaggle Yarışmasını Kazanmak

Preparing Video For Download...