When Do Neural Networks Outperform Kernel Methods?