There's a lot that suggests that humans and machine learning algorithms learn in very different ways. For instance, by the time a human can master a game like Go they can also perform image processing, speech recognition, handwriten digit recognition, word-sense disambiguation and other similar cognitive tasks. Machine learning algorithms can only do one of those things at a time. A system trained to do image processing might do it well, but it won't be able to go from recognising images to recognising the senses of words in a text without new training, and not without the new training clobbering the previous training.
To make it perfectly clear: I'm talking about separate instances of possibly the same algorithm, trained on a different task every time. I'm not saying that CNNs can't do speech recognition because they're good at image processing. I'm saying that an instance of a CNN that's learned to tag images must be trained on different data in a different time if you also want it to do word-sense disambiguation.
And that that is a limitation, that stands in the way of machine learning algorithms achieving general intelligence.