机器学习入门:监督学习、非监督学习和强化学习详解
机器学习入门:监督学习、非监督学习和强化学习详解
机器学习根据其应用情况,可以分为三类:监督学习(Supervised Learning,SL)、非监督学习(Unsupervised Learning,UL)和强化学习(Reinforcement Learning,RL)。
监督学习
监督学习是指原始数据中既有特征值也有标签值的机器学习,可以类比为“有老师教”的学习方式。监督学习要解决的问题主要分为两类:回归(Regression)和分类(Classification)。
常用的监督学习算法包括:
- 邻近算法(K-Nearest Neighbors, KNN)
- 线性回归(Linear Regression)
- 逻辑回归(Logistic Regression)
- 支持向量机(Support Vector Machine, SVM)
- 朴素贝叶斯分类器(Naive Bayes)
- 决策树(Decision Tree)
- 随机森林(Random Forests)
- 神经网络(Neural Network),如卷积神经网络(Convolutional Neural Networks, CNN)和深度信念网络(Deep Belief Networks, DBN)
例如,当我们有一大堆猫和狗的照片,并希望让机器学会如何识别它们时,使用监督学习就需要给这些照片打上标签。机器通过大量学习这些带有标签的数据,就可以学会在新照片中认出猫和狗。
非监督学习
非监督学习要解决的是另一种类型的问题。在这种学习方式中,我们只提供特征数据(输入值),希望机器通过学习找到输入数据中存在的某种共性特征或结构,而不是像监督学习那样预测输出结果,可以类比为“没老师教”的学习方式。
非监督学习主要解决两大类问题:输入数据聚类(Clustering)和输入特征变量关联(Correlation)。
常用的非监督学习算法包括:
- K均值聚类(K-Means Clustering)
- 具有噪声的基于密度的聚类方法(Density-based Spatial Clustering of Applications with Noise:DBSCAN)
- 主成分分析算法(Principal Component Analysis,PCA)
- 自组织映射神经网络(Self-Organizing Map, SOM)
- 受限玻尔兹曼机(Restricted Boltzmann Machine, RBM)
例如,如果我们有一堆猫和狗的照片但不给它们打任何标签,而是希望机器能够将这些照片进行分类。通过学习,机器会将这些照片分为两类,一类是猫的照片,一类是狗的照片。但与监督学习不同的是,机器并不知道哪个是猫,哪个是狗,它只是将相似的图片归为一类。
强化学习
强化学习不同于监督学习和非监督学习。在强化学习中没有原始已知数据可以学习,它面对的是一个不断变化的状态空间,要解决的是一个决策链问题,可以类比为“老师拿着棍子教”的学习方式。
强化学习的目的是找到在当前环境(状态空间)下最佳的决策。这里的挑战在于,当下的决策好坏往往需要经过多次决策后才能验证和评估。例如,在下棋时,当前的决策(棋子落点)可能需要在五步十步棋之后才能判断其优劣。因此,强化学习中并没有大量的原始已知输入数据,而是需要机器在变化的环境中通过大量的多次试错学习,再根据某种规则找到产生最佳结果的最佳路径,从而做出最佳决策。常见的应用场景包括下棋(包括围棋和象棋)、机器人、自动驾驶等。
总结
- 监督学习中有已知的输入数据和输出数据,相当于看着样本学习。
- 非监督学习中没有输出数据,相当于自己学习,其学习目的是找到输入数据中存在的结构(Structure)和模式(Pattern)。
- 强化学习即没有输入数据也没有输出数据,只有某种规则,相当于试错学习,其目的是在大量可能路径中寻找最佳决策或路径。
