机器学习可实现一些算法,能自动检测给定输入中的模式。
比如,您给机器学习的算法提供1000张狗的照片和1000张桌子的照片。那么,它将会学习区别狗和桌子。当您给出一张狗或桌子的新图片时,它将能够识别出是狗还是桌子。
我认为,这和婴儿学习新事物有点类似。婴儿是如何知道一样东西看起来像狗,而另一样东西看起来像桌子呢?可能就是从大量的例子中学到的。
您也许不会明确地告诉一个婴儿:“如果一样东西是毛茸茸的,并且有着淡棕色的毛发,那么它可能是条狗。”
您可能只是说:“那是条狗。这也是条狗。这是桌子。那也是桌子。”
机器学习算法的工作方式大致相同。
您可以把同样的想法应用于:
推荐系统(像YouTube、Amazon和Netflix在用的)
面部识别
声音识别
将Python用于机器学习
有一些流行的Python机器学习库和框架,其中最流行的两个是scikit-learn和TensorFlow。
scikit-learn附带了一些更流行的内置机器学习算法。我刚才提到了其中的几个。
TensorFlow更像是个低级库,它允许您构建自定义机器学习算法。
如果您刚开始一个机器学习项目,那么我建议您先用scikit-learn。如果您开始遇到效率问题,那么我建议用TensorFlow。
我应该如何学习机器学习呢?
要学习机器学习基础知识的话,我建议选择斯坦福或加州理工学院的机器学习课程。
请注意,您需要微积分和线性代数的基本知识以理解这些课程中的某些内容。
然后,我会用Kaggle来练习从课程中学到的知识。Kaggle是个网站,大家在这个网站上比试谁能对一个给定的问题构建出最佳的机器学习算法。网站上也有给初学者用的好教程。