That is a good point about hourly rates. Make sure your hourly rate is high -- in my experience, the more you charge, the more your client respects your work and time. Plus, you can afford to give some free hours or work a bit extra to make sure the end result is quality. Keep in mind that as a freelancer in the US, about 1/3 of your income goes toward taxes -- plus you don't get benefits like a normal employee would.
If someone specifically wants you for their project, then you can usually negotiate a pretty high rate -- especially for something as specialized as machine learning! People hire me often because they hired someone off Craigslist at a low rate, and this time they want to make sure the project is done right.