Олимпиадный тренинг

Задача . Наследование роста


Задача

Темы:

Фрэнсис Гальтон, британский учёный и двоюродный брат Чарльза Дарвина, в конце XIX века занимался изучением наследования антропометрических признаков, собрав данные о росте родителей и их детей. Анализируя измерения, он обнаружил закономерность: потомки очень высоких родителей, как правило, оказывались ниже их, а потомки очень низких — выше. Гальтон описал это явление термином <<регрессия к среднему>>, а разработанный им математический аппарат для моделирования зависимости между переменными впоследствии стал фундаментом статистики и машинного обучения. Именно отсюда в современную науку пришло название одного из базовых типов задач — регрессия, цель которой заключается в предсказании непрерывной числовой величины.

Вам предоставлен исторический датасет, содержащий антропометрические измерения членов 205 семей. Каждая строка соответствует одному ребёнку и включает следующие признаки: family (идентификатор семьи), father (рост отца в дюймах), mother (рост матери в дюймах), midparentHeight (скорректированный средний рост родителей), children (общее количество детей в семье), childNum (порядковый номер ребёнка), gender (пол ребёнка male/female), childHeight (целевая переменная: фактический рост ребёнка, только в обучающих данных).

На основе обучающей выборки постройте модель, способную предсказать рост ребёнка (childHeight) по доступным признакам.

Метрика оценки и формула скоринга

Качество решения оценивается по метрике RMSE (Root Mean Squared Error):

\[\text{RMSE} = \sqrt{\frac{1}{n}\sum_{i=1}^{n}(y_i - \hat{y}_i)^2}\]

где \(y_i\) — истинное значение роста, \(\hat{y}_i\) — предсказание модели, \(n\) — количество записей в тестовой выборке.

Формула расчёта итогового балла (Score):

\[\text{Score} = \max\left(0,\ \min\left(1,\ \frac{\text{RMSE}_{\text{baseline}} - \text{RMSE}_{\text{solution}}}{\text{RMSE}_{\text{baseline}} - \text{RMSE}_{\text{reference}}}\right)\right)\]

где \(\text{RMSE}_{\text{baseline}}\) — значение метрики для базового решения из baseline.py, \(\text{RMSE}_{\text{reference}}\) — значение метрики для эталонного решения (solution.py), фиксированная константа, \(\text{RMSE}_{\text{solution}}\) — значение метрики для вашего решения.

Максимальный возможный балл равен 1. Решение, совпадающее по качеству с решением жюри, получает 1 балл; решение на уровне baseline — 0 баллов.

Входные данные

train.csv — обучающая выборка (содержит все колонки, включая целевую переменную).

test.csv — тестовая выборка (целевая переменная childHeight отсутствует).

baseline.py — пример простейшего решения (предсказывает среднее значение по обучающей выборке).

Выходные данные
 

В качестве ответа необходимо сдать csv-файл submission.csv со строго следующей структурой: family,childNum,predictedHeight

Столбцы family и childNum должны в точности повторять идентификаторы из test.csv. Столбец predictedHeight должен содержать предсказанный рост. Порядок строк в файле ответа должен полностью совпадать с порядком строк в test.csv.


time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя