This is an educational project designed to build familiarity with Kaggle and machine learning workflows. The focus is on learning techniques and best practices.
This project is a learning-focused exploration of the famous Kaggle Titanic competition. I did to familiarize with Kaggle challenges and the machine learning techniques most commonly used in said challenges.
The goal is to predict passenger survival on the Titanic using the provided dataset. This project documents the progression from simple logisti regression model to more sophisticated ensemble approaches, along with feature engineering and hyperparameter tuning.
-
titanic_survival_logistic.ipynb - A simple baseline implementation using logistic regression. Demonstrates the core workflow: data loading, feature engineering, model training, and submission.
-
titanic_survival_several_models.ipynb - Notebook comparing multiple machine learning models including logistic regression, random forests, gradient boosting, and neural networks. Includes model comparison, hyperparameter tuning, and ensemble techniques.
-
titanic_survival_several_models_no_deck_cabin.ipynb - Same as above but excluding the deck and cabin features from the model training.
This project covers key machine learning and data science techniques essential for Kaggle competitions:
- Exploratory data analysis and data visualization
- Handling missing values and categorical features
- Feature engineering and feature selection
- Model selection and comparison
- Hyperparameter tuning
- Cross-validation strategies
- Ensemble methods
- Working with submission formats
This project requires Python 3.12 or higher. Dependencies are managed via pyproject.toml.
Option 1: Using uv
Create venv at .venv and install all dependencies with uv:
uv syncOption 2: Using pip
Create a virtual environment (python 3.12) and install dependencies:
python -m venv venv
source venv/bin/activate # For the fish shell: source venv/bin/activate.fish
python -m pip install -r requirements.txtThe Titanic dataset contains passenger information and survival outcomes. The data includes features such as:
- Passenger class, age, and gender
- Fare paid and embarkation port
- Family relations (siblings/spouses, parents/children)
- Cabin and ticket information