Fantastic explanation! This is the first time I feel like I understand what the svd is actually doing.