Forget about algorithms at first.
To apply any sort of machine learning well, you have to first understand the problem you are solving, the data you are using to solve it, and the methods currently used.
Then understand what each algorithm (or class of algorithms) does and how it does it.
Then make the most appropriate choice.
Anything else will eventually lead to disaster.