之前一个一个讲还是有些零散而且更新的速度也慢,所以我还是打算先整理一波全部的算法,再逐一展开介绍比较好,原文来自Jason Brownlee 的文章《A Tour of Machine Learning Algorithms》。
那么算法很多,如何做好分组有助于我们更好记住它们,作者给出了2条算法分组的方式:
The first is a grouping of algorithms by the learning style.(通过算法的学习方式)
The second is a grouping of algorithms by similarity in form or function (like grouping similar animals together).(通过算法的功能)
下面就会从这2个角度来阐述一下机器学习的算法。
Algorithms Grouped by Learning Style
关于机器学习算法,有三种不同的学习方式:
1. Supervised Learning(监督学习)
当输入的数据集(我们称之为训练集)的数据有标签,如好坏标签,分类标签等,那么通过这些数据来建立的预测或者分类模型,属于监督学习模型。
经典问题:classification and regression.(分类与回归)
经典算法:Logistic Regression and the Back Propagation Neural Network.(逻辑回归算法与BP神经网络算法)
2. Unsupervised Learning(无监督学习)
与监督学习相反,训练集中的数据并没有标签,这意味着你需要从这堆没有标签的数据中去提炼它们的特点规则等等,可能是通过数学推理过程来系统地减少冗余,又或者是通过数据相似度来组织数据。
经典问题:clustering, dimensionality reduction and association rule learning.(聚类、降维、规则学习)
经典算法:the Apriori algorithm and k-Means.(这个专用名词就不翻译了)
3. Semi-Supervised Learning(半监督学习)
顾名思义,半监督学习意味着训练数据有一部分有标签,而一些没有,一般而言,当训练数据量过少时,监督学习得到的模型效果不能满足需求,因此用半监督学习来增强效果。
经典问题:classification and regression.
经典算法:半监督SVM,高斯模型,KNN模型