Как мои знания в области Data Science помогли мне в триатлоне
360-градусный анализ для повышения производительности
Для тех, кто не знает, триатлон - это соревнование, в котором участвуют три различных вида спорта: плавание, велосипед и бег. Модальность Xterra - это немного отличающийся от традиционного триатлона, поскольку велосипедные и беговые дистанции проходят по тропам. Я знаю, что вы, вероятно, немного удивлены и хотите узнать, как я применил свои знания в области Data Science, чтобы улучшить свою производительность.
Но прежде чем я расскажу об этом, я хотел бы дать краткое введение в мою тренировку и показать, как мой подход к проектам машинного обучения помог мне на этом пути.
Custo-benefício
Вся моя тренировка была более направлена на плавание по нескольким причинам.
- Я занимаюсь серфингом уже более 11 лет, и те, кто занимается серфингом, знают: физическая подготовка совершенно отличается от тех, кто обычно плавает в море;
- Я никогда не плавал в море более 300 метров без своей серфинговой доски;
- Когда я был моложе, у меня был псевдотравматический опыт в море.
Из-за этого было бы более полезно сосредоточиться на плавании, а остальное продолжать делать то, что я обычно делаю: горный велосипед по выходным и бег по пляжу. Поэтому я пытался тренироваться каждый день недели в течение 30-40 минут в бассейне с зафиксированной ногой. Это помогло укрепить мои руки и отдохнуть ногам перед велосипедом и бегом.
Юридически, но где здесь место Data Science?
Хорошо, сначала моя "базовая модель" была моей тренировкой. Я тренировался, чтобы успешно завершить гонку, без амбиций по времени или пьедесталу. Я хотел провести спокойную гонку, наблюдая и учась о виде спорта, маршруте, соперниках и своей физической форме.
Базовая модель - это результат базового решения/модели. Обычно создается базовая модель и более сложная модель, которая дает лучший результат. Она служит в качестве эталона для вашей модели.
Мои "гиперпараметры" были часы, дни и физические усилия, затраченные на тренировки каждого вида спорта. Я настраивал и оптимизировал их, влияющие только на плавание, так как в остальных видах спорта мне хватало моей производительности.
Когда я пересек финишную линию, с моей точки зрения, я заметил много деталей, которые можно улучшить для следующего этапа. Кроме того, некоторые вещи, которые я считал большой сложностью, на самом деле не были. Не говоря уже о том, что я сделал бенчмарк, наблюдая за более опытными спортсменами.
Как хороший аналитик, все, что я анализировал качественно, должно было быть подтверждено количественно. И вот тут Data Science вступает в игру. Мой скрипт на Python находится в моем репозитории на GitHub.
Парсинг
Первым шагом было выполнение парсинга на сайте Xterra, как только результаты аматорских триатлонистов были опубликованы.
Гистограмма
Затем, после того, как все результаты были представлены в виде таблицы, я построил гистограмму, чтобы узнать среднее время для каждого вида спорта.
Я сразу заметил, что результаты всех в плавании сильно сосредоточены в интервале 20-25 минут, с разницей в более чем 10 человек для второго по величине времени. Однако, велосипед имеет немного другую картину, распределение более равномерное, что позволяет нам заметить формирование двух групп результатов. Первая группа - те, кто закончил за время менее 70 минут, и вторая группа - те, кто закончил за время более 70 минут. Этот вывод обусловлен низкой частотой интервала 65-70 минут. И, наконец, не менее важно, бег, который имел два интервала с высокой частотой и близкими значениями.
Из этой гистограммы я прихожу к следующим выводам:
- Желательно закончить плавание в интервале 20-25 минут;
- Желательно закончить велосипед в первой группе;
- Желательно закончить бег в интервале 30-35 минут.
Следующая гистограмма имеет ту же цель, что и предыдущая, но теперь мы рассматриваем времена первого и второго переходов.
Из этой гистограммы я прихожу к следующим выводам:
- Первый переход должен занимать не более 1:30 минут;
- Второй переход должен быть завершен в течение 1 минуты.
Следующая гистограмма предназначена для определения категорий с наибольшим количеством участников. Большинство участников находятся в возрасте от 30 до 44 лет.
Круговая диаграмма
В процентном соотношении, три категории, представляющие возраст от 30 до 44 лет, составляют 68% от общего числа любительских спортсменов.
Диаграмма рассеяния
Углубляясь в категорию, в которой я участвовал - возраст 25-29 лет, я хотел бы узнать, были ли ожесточенные позиции или какие-либо стандартные поведенческие особенности в отношении времени забега. Возможно, начиная с определенного времени, спортсмены стремятся сократить разницу во времени между ними? Этот тип вопросов, на который я хотел бы ответить с помощью этой диаграммы.
Внутри категории, в которой я участвовал, было два случая, когда разница во времени между спортсменами составляла менее 5 минут.
Диаграмма рассеяния и гистограмма
Наконец, я хотел бы понять взаимосвязь каждого вида спорта с конечным результатом. Для этого я использовал диаграмму рассеяния для отображения взаимосвязи между всеми переменными.
Матрица корреляции
Хотя диаграмма рассеяния достаточна для понимания взаимосвязи переменных, матрица корреляции более точно показывает корреляцию, варьирующуюся от -1 до 1.
Я использовал матрицу корреляции для всех спортсменов и для спортсменов в моей категории. В обоих случаях время велосипедной гонки имеет сильное влияние на конечное время забега, за ним следуют бег и плавание. В моей категории эти результаты немного более коррелированы. Но то, что привлекает внимание в матрице корреляции моей категории, это сильное влияние времени первого перехода на конечный результат забега.
Это все выводы, которые я смог сделать после моего первого триатлона.
Точно так же, как я использовал базовые концепции, вы можете использовать их в своей повседневной жизни, чтобы получить более конкретные ответы и более точные выводы.
Кстати, извините за беспорядок в скрипте и отсутствие комментариев. Если у вас есть вопросы, просто напишите!
Наука о данных может быть применена практически во всем. Чего вы ждете, чтобы извлечь полезные insights?!