The Tempo 2 Algorithm: Adjusting Time-Delays By Supervised Learning