监督学习(supervised learning) 的任务是学习一个模型,使模型能够对任意给定的输入,对其相应的输出做出一个好的预测。换言之,利用训练数据集学习一个模型,再用模型对测试样本集进行预测。分类问题(离散)与回归问题(连续)等都是监督学习,如KNN、决策树和随机森林等。
非监督学习(unsupervised learning) 则是直接对数据进行建模。没有给定事先标记过的训练范例,所用的数据没有属性或标签这一概念。自动对输入的资料进行分类或分群,以寻找数据的模型和规律。聚类算法就是典型的非监督学习,如 K均值(Kmeans)。
决策树是一种用于分类和回归任务的非参数监督学习算法。 它是一种分层树形结构,由根节点、分支、内部节点和叶节点组成。决策树有许多不同版本,典型版本是最早出现的ID3算法,以及对其进行改进后形成的C4.5算法,这两种算法可用于分类。对ID3算法改进的另一个分支为”分类和回归树“,即CART算法,可用于分类或回归。CART算法为随机森林和Boosting等重要算法提供了基础。在OpenCV中,决策树实现的是CART算法。