Fit to Run: Personalised Recommendations for Marathon Training

keywords : marathon running, sports analytics, training recommendations

1. Problem Definition

최근 몇년동안 스마트기기들의 사용이 늘어나면서 마라톤 러너들의 preparation과 performance를 담은 데이터가 방대하게 수집되었다. 이에 따라 데이터를 이용하여 향후 경기력을 구체적으로 변화시킬 수 있는 actionable 인사이트를 주는 시스템들이 등장하였다.

기존에 장거리 달리기에 사용된 추천시스템은 러닝 코치 역할이 되어 선수들의 performance를 높일 수 있는 훈련을 제안할 수 있는 식으로 연구되어 왔다. 여기에는 러너가 원하는 운동 훈련 강도를 반영한 개인화 경로 추천을 생성해주는 시스템이나, 함께 훈련할 수 있게 러너와 비슷한 능력을 가진 다른 러너를 찾는 시스템 등이 있었다.

이러한 기존 연구는 선수들이 preparation하는 시점 즉, 저강도 운동을 해야하는 시점이 고려가 되지 않고, 오로지 high quality한 고강도 훈련을 제공하는 것에만 치중되어 있다. 적절한 완화는 선수들의 부상을 방지하고 피트니스를 기르는데 중요하기 때문에 마라톤 선수들에게 training plan을 추천하는 recommendation system을 설계할 때는 러너들의 preparation 기간을 고려하는 것이 필요하다.

2. Motivation

마라톤 러너들은 최적의 기록을 내기 위해,

  1. 자신의 현재 능력에 맞는 운동량을 찾고,
  2. 훈련 프로그램 전반에 걸쳐 힘든 운동(load week)과 휴식(rest week) 사이의 올바른 균형을 찾아야 한다.

이 과정을 돕기 위해 Individual session별로 훈련을 추천하던 기존 방식과 다르게, 본 논문은 향후 몇 주간의 맞춤형 훈련을 제공하는 시스템을 제안하고 있다. 저자는 8739명의 마라톤 러너들의 훈련 데이터를 분석하여 성공적인 마라톤 러너들의 패턴을 찾고 적절한 preparation 기간이 겸비된 훈련 일정을 추천하는 방식에 대해 탐색하였다.

3. Method

3.1 ESTABLISHING A RECOMMENDATION SCHEDULE

이 섹션은 저자가 성공적인 러너들을 탐색하며 권장 훈련 일정을 설정하는 과정을 담고 있다.

저자는 먼저, 훈련 유형에 대해 정의하는 과정을 수행했다. 이를 위해 훈련이 피트니스 개선으로 이어지는 훈련 주를 “load week”라고 구분하였다. 이때 vO~2~max를 사용하여 피트니스 레벨을 측정하였고, 주어진 주에 vO~2~max 값이 증가하면 관련된 훈련이 긍정적으로 작동하였다고 간주했다. vO~2~max란 피트니스를 측정하는데 흔히 사용되는 지표로써 운동하는 동안에서 최대 산소 사용율을 계산한 값이다. 그 다음으로 저자는 훈련 load가 크게 감소하는 주를 찾아 “rest week”로 구분 하였으며, 피트니스 레벨이 유지되는 주는 “maintenance week”로 정의하였다.

저자는 recommendataion schedule을 establish하기 위해 성공적인 러너들의 훈련 구조를 파악하여 언제 load week, rest week 또는 maintenance week를 진행해야 하는지 확인하였다.

Figure1

그 결과, 저자는 Figure1의 vO~2~max의 증가율을 보며 255분보다 빨리 완주한 러너들에게 5주 동안의 load week가 중요한 의미가 있다는 것을 확인했고, 그리고 더 느리게 완주한 러너들에게는 4주 동안의 load week가 중요하다는 것을 확인하였다. 그래서, 저자는 5주와 4주의 load week를 피트니스 향상을 극대화하면서 충분한 휴식을 확보하는 좋은 지점으로 간주하였다.

또한, load week가 진행되는 시점에서의 피트니스 증가를 고려했을 때, 빠른 러너들은 훈련 초기 연속적인 2주와 마라톤 직전에 load week를 수행하는 것이, 느린 러너들은 load week를 훈련 기간동안 균등하게 배치하는 것이 좋다는 것을 러너들의 strong agreement로 확인했다. 결론적으로, 저자는 이 발견들을 통해 필요한 load week의 기간과 타이밍 정의할 수 있었다.

저자는 load week와 관련 있는 rest week를 제공할 타이밍에 대해서도 탐색하였다. 그 결과, 가장 큰 누적 피트니스 향상을 가진 러너들이 능력 수준과 관계없이 rest week를 주로 load week 바로 뒤에 두는 경향이 있다는 것을 발견했다. 또한, 레이스 전에 테이퍼링을 위해 훈련의 마지막 주에 추가적인 휴식 주를 가지는 경우도 있었다. 그래서 저자는 load week 뒤의 모든 주에 rest week를 가지도록 추천 일정을 작성했다. 단, load week가 연속적으로 권장되는 경우를 제외하였다. 마지막으로, maintance week는 훈련의 효과에 아무런 영향을 미치지 않는 것으로 보였기 때문에 나머지 주를 모두 유지 주로 지정하였다. 최종적인 recommendation schedule은 Figure 2와 같다.

Figure2

3.2 TRAINING REPRESENTATION

이 섹션은 training 방식을 recommended하기 위해, 러너를 훈련 주기별로 어떻게 나타낼 수 있는지 탐색하는 과정이 담겨있다.

저자는 훈련을 추천하기 위해, 가장 먼저 러너들을 훈련 week 각각으로 나타낼 방법을 찾아야만 했다. 이를 위해, 저자는 마라톤 performance를 나타내는 특징들로 이루어진 weekly 사용자 프로필을 생성하였다. 이 프로필은 러너의 현재 피트니스 수준과 현재까지 완료한 훈련 내용을 반영하고 있다. 이 과정에는 마라톤 준비 마지막 16주의 훈련 세션에서 측정한 GPS 데이터와 러너의 현재 측정된 physiological condition 데이터가 사용되었다. 이 데이터를 통해 vO~2~max, 임계 속도, 기능적 한계 속도, 최대 노력 속도를 측정하였다. 또한, 마라톤 performance를 예측할 수 있는 것으로 밝혀진 훈련 속도, 거리, 지속 시간 및 빈도와 관련된 몇 가지 feature들을 다시 계산하였다. 이러한 feature들은 훈련 중인 그 시점까지 완료된 모든 훈련 세션에 대해서 누적적으로 계산되었고, 또한 이전 4주 동안의 individual weekly 로 계산되었다.

3.3 GENERATING RECOMMENDATIONS

이 섹션에서는 저자가 다음주의 recommended training을 구체적으로 어떻게 러너들에게 추천해주었는지에 대해 기술되어 있다.

Figure3

저자는 마라톤 완주 시간을 예측하는데 관련 있다고 알려진 훈련 거리와 훈련 속도들을 통해 다음주의 training plan을 제안하는 추천시스템을 제안하였다.

추천을 제공하기 위해, initial step으로 러너들의 마라톤 완주 시간에 대해 예측하였다. 이때, 실험을 통해 가장 성능이 좋았던 gradient boosted tree를 러너의 프로필에 적용해 완주 시간을 예측하였다. 이후 유저의 예측된 완료 시간과 앞에서 언급한 recommendation schedule plan을 고려하여 load, rest, maintenance week 중 어떤 것을 권장해야 할지 결정하였다.

저자는 load week와 maintenance week에 해당하는 러너들에게 user-based collaborative filtering을 이용해 훈련 거리와 훈련 속도를 추천하였다. 먼저, 저자는 load/maintenance에 속하고, 러너가 예상 완주 시간에서 ±1분 이내에 최종적으로 완주한 모든 훈련 주들을 선택하였다. 이후, 다양한 feature들과 목표 변수(훈련거리, 훈련속도)들 사이의 mutual information을 분석하여 러너와 사용자 프로필 사이의 유사성 계산에 가장 유용한 subset of feature를 결정하였다. 이 과정에서 이전 4주 동안의 평균 훈련 거리는 권장 훈련 거리를 위한 유사성 계산에 사용되었다. 동시에 이전 훈련의 평균 속도와 기능적 한계 속도, 그리고 크리티컬 스피드가 훈련 속도를 결정하는 데 사용되었다. 이러한 값들을 표준화시켜, 유클리디안 거리를 사용하여 130개의 가장 유사한 사용자 프로필을 찾은 후, 사용자 프로필들의 훈련 속도와 거리의 가중 평균을 러너에게 권장하였다.

저자는 추가 실험을 통해, rest week 중에 달린 거리와 속도를 이전 주의 훈련을 단순히 스케일링하여 예측하는 것이 협업 방법보다 더 쉽게 예측할 수 있음을 발견하였다. 따라서 권장 일정이 rest week인 경우 이전 주의 거리의 1/3을 동일한 속도로 달리는 것을 사용자에게 권장하였다.

4. Evaluation System

저자는 이상적인 4~5주의 load week를 이미 훈련 과정으로 수행하는 39.4%의 러너들은 본 추천 시스템으로 부터 이익을 받지 못할 것이라 예상했다. 그에 반해 46.7%의 러너는 저자가 제안하는 수보다 적은 load week를 수행하고 있었고, 13.9%는 더 추가적인 load week를 수행하고 있었기 때문에 이들에게는 도움이 될 것이라 여겼다.

추천 일정은 여러 러너들에게 긍정적인 영향을 미칠 수 있는 잠재력을 가지고 있지만, 추천 시스템이 성공적으로 작동한다는 것을 보이려면 러너로부터 시스템이 원하는 훈련 응답을 끌어내야 했다. 구체적으로, 저자는 load week 추천을 따르면 실제로 vO2max가 증가하는지를 보여야 했다.

Figrue4

이를 위해 먼저, 저자는 본 시스템이 러너들의 완주시간을 얼마나 잘 예측하고 있는지 보였다. 그 결과, Figure 4에서 보듯이 마라톤에 가까워질 수록 예측된 완주시간 및 속도와 실제 값 간의 mean absolute error가 줄어듦을 확인할 수 있었다. 또한, 저자의 시스템이 제공한 추천 사항이 load week를 진행하는 사람들의 훈련과 매우 유사한 경향을 보였다. 실제로 load week를 진행하는 사람들의 평균 속도와 거리가 시스템의 추천보다 1% 빠르고 2% 짧았다. 이는 load week에서 뛰는 거리와 속도가 시스템의 추천과 근접하게 일치한다는 것을 시사했다. 저자는 권장된 load week를 진행하지 않는 사람들과 비교해서도 시스템을 평가했다. 이를 통해 권장된 load week를 진행하지 않는 사람들은 거리를 덜 이동하거나 느린 속도로 뛴다는 것을 발견했다. 평균적으로, load week를 진행하지 않는 러너들은 시스템의 load week 추천보다 2.9% 더 느린 속도로 24.7% 덜 달렸다.
이러한 결과는 저자가 제공한 추천이 러너들의 vO2max를 증가시킨다는 것에 근거를 제공했다. 이를 통해 저자의 시스템이 권장하는 plan이 훈련 성과 유도하기 위한 합리적인 최소값으로 작용한다는 것을 보였다. 실제로 저자의 권장 사항을 따르면 경우의 수 중 60% 이상에서 피트니스가 증가하는 것으로 나타났다.

5. Conclusion

본 논문에서는 러너의 생리학적 피트니스와 마라톤 훈련을 포착하는 사용자 프로필을 생성해냈다. 이러한 사용자 프로필과 간단한 이웃 기반 접근 방식을 사용하여 마라톤 러너들에게 훈련 속도와 거리를 제안할 수 있는 적절한 추천 시스템을 구축할 수 있다는 것을 보여주었다. 이러한 추천이 러너들 내에서 피트니스 증진을 이끌어 낼 수 있으며, 추천 일정을 사용함으로써 추천 시스템이 사용자를 구조화되고, 주기화된 훈련 계획의 행동으로 이끌 수 있다는 것을 보여주었다. 이 시스템 내의 부하와 휴식의 균형은 추천의 고유하지만 중요한 측면으로, 러너가 마라톤을 잘 완주할 수 있도록 설계되었다. 하지만, 단순히 러너에게 속도와 거리를 권장하는 식은 제한 사항이 있을 수 있음도 언급했다. 따라서, 미래의 연구는 훈련 유형과 강도 등을 같이 추천하는 식으로 해결해야 함을 강조했다.

6. Author Information

  • Heejeong Lim
  • GSDS

Reference & Additional materials