Як перемагати в змаганнях Kaggle за допомогою Python
Yauhen Babakhin
Kaggle Grandmaster
| Модель | Валід. RMSE | Публічний LB RMSE | Позиція на публічному LB |
|---|---|---|---|
| Просте середнє | 9.986 | 9.409 | 1449 / 1500 |
| Групове середнє | 9.978 | 9.407 | 1411 / 1500 |
| Gradient Boosting | 5.996 | 4.595 | 1109 / 1500 |
| Додати ознаку години | 5.553 | 4.352 | 1068 / 1500 |
| Додати ознаку відстані | 5.268 | 4.103 | 1006 / 1500 |
| ... | ... | ... | ... |
| Модель | Валід. RMSE | Публічний LB RMSE | Позиція на публічному LB |
|---|---|---|---|
| Просте середнє | 9.986 | 9.409 | 1449 / 1500 |
| Групове середнє | 9.978 | ||
| Gradient Boosting | 5.996 | 4.595 | 1109 / 1500 |
| Додати ознаку години | 5.553 | ||
| Додати ознаку відстані | 5.268 | 4.103 | 1006 / 1500 |
| ... | ... | ... | ... |
| Тип змагання | Інженерія ознак | Оптимізація гіперпараметрів |
|---|---|---|
| Класичне машинне навчання | +++ | + |
| Глибоке навчання | - | +++ |
$$Loss = \sum_{i=1}^{N}{(y_i - \hat{y}_i)^2} \to \min$$
$$Loss = \sum_{i=1}^{N}{(y_i - \hat{y}_i)^2} \to \min$$
$$Loss = \sum_{i=1}^{N}{(y_i - \hat{y}_i)^2 + \alpha\sum_{j=1}^{K}{{w_j}^2}} \to \min$$


# Можливі значення alpha alpha_grid = [0.01, 0.1, 1, 10]from sklearn.linear_model import Ridge results = {} # Для кожного значення в сітці for candidate_alpha in alpha_grid:# Створіть модель з конкретним значенням alpha ridge_regression = Ridge(alpha=candidate_alpha)# Знайдіть валідаційний бал для цієї моделі# Збережіть результати для кожного значення alpha results[candidate_alpha] = validation_score
Як перемагати в змаганнях Kaggle за допомогою Python