机器学习分类与举例

介绍

  • 接触机器学习也有一段时间了,也做了不少项目,可仔细回想发现自己对这些概念了解的并不够深刻。相信大家也会有这样的烦恼,现在我来阐述一下我对机器学习的理解

机器学习

  • 机器学习按照学习形式可以分为监督学习、无监督学习、半监督学习和强化学习。不过这些分类中有一部分也是你中有我我中有你的状态,比如深度学习就很难界定,它可以使用以上几乎所有方式。

监督学习

  • 监督学习:通过已有的标记数据集进行训练,使模型能够预测新的数据。例如,在分类问题中,监督学习算法通过训练数据集学习到将输入特征映射到标签的过程。最常见的就是分类算法
  • 主流的监督学习有 k-近邻算法(k-Nearest Neighbers) 线性回归 (Linear Regression) 逻辑归回 (Logistic Regression) 支持向量机(Support Vector Machines,SVM) 决策树和随机森林(Decision Tree and Random Forests) 神经网络(Neural networks)

举例

  • 对于k-近邻算法,我就曾做过基于MNIST数据集和CIFAR-10数据集的图片分类,其中CIFAR-10数据集共有60000张彩色图像,每张图像大小为32323,分为10个类,每类6000张图片。以下是代码举例。
def distance(X_test, X_train):
    num_test = X_test.shape[1]
    num_train = X_train.shape[1]
    distances = np.zeros((num_test, num_train))
    # (X_test - X_train)*(X_test - X_train) = -2X_test*X_train + X_test*X_test + X_train*X_train
    dist1 = np.multiply(np.dot(X_test.T,X_train), -2)    # -2X_test*X_train, shape (num_test, num_train)
    dist2 = np.sum(np.square(X_test.T), axis=1, keepdims=True)    # X_test*X_test, shape (num_test, 1)
    dist3 = np.sum(np.square(X_train), axis=0,keepdims=True)    # X_train*X_train, shape(1, num_train)
    distances = np.sqrt(dist1 + dist2 + dist3)

    return distances

无监督学习

  • 无监督学习:从无标记的数据中学习其内在统计规律或内在结构,学习到的模型可以是类别、转换或概率。常见的无监督学习算法包括聚类、降维等。典型的就是聚类算法
  • 主流的无监督学习就是 K-Means、最大期望算法(EM),其中K-means在图像处理领域可谓是大展拳脚

举例

  • 对于K-means算法,K-Means聚类分割灰度图像也是我们所常用的,他对于低纬度、类数较少的数据聚类效果也是十分优秀的
    在这里插入图片描述

半监督学习

  • 半监督学习:介于监督学习和无监督学习之间,利用部分有标记的数据和大量无标记的数据进行训练,以提高模型的性能。
  • 主流的半监督学习有基于图的半监督学习(Graph-based Semi-supervised Learning),生成模型(Generative Models),多视图学习(Multi-view Learning)

强化学习

  • 强化学习:通过与环境的交互进行学习,每个动作都会对环境有所影响,通过观察什么样的动作获得最好的回报,学习通过观察周围的环境进行判断与决策。强化学习在机器人控制、自然语言处理等领域有广泛应用。
  • 主流的强化学习有价值迭代(Value Iteration),策略迭代(Policy Iteration),Q-学习(Q-Learning),策略梯度方法(Policy Gradient Methods, 如 REINFORCE, Actor-Critic),深度强化学习(Deep Reinforcement Learning, 如 DQN, A3C, PPO)
  • 强化学习与其他算法不相互排斥,通常与其他技术(如值函数逼近、基于模型的方法和集成方法)结合使用,可以获得更好的结果。
  • 10
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值