十一城

跬步千里,小流江海。

Home Linux ML Python Java Thoughts KmKg BookCan Links About

2017-08-09
机器学习-基础-统计机器学习

• 分类: ml • 标签:
  1. 机器学习理论在国外发展的时候,我们正在上山下乡。
  2. 相比传统计算机科学而言,人工智能(如果说当前主要以机器学习方法为主的话)在数学、统计上有更多的侧重,而在计算机系统(编译,网络,体系结构)上则不那么偏重。

什么是机器学习?

定义

机器学习指的是计算机通过统计学算法,对大量的历史数据进行学习从而生成经验模型,利用经验模型指导业务。机器学习之所以包含“学习”二字,是因为机器学习算法会尝试优化一项特定的指标,它们一般会努力将预测的误差最小化,或者说将预测正确的概率最大化。

机器学习的本质不是去学习一个函数来正确预测所有的样本,而是希望函数预测的误差在可以控制的范围之内

机器学习主要使用归纳、综合而不是演绎。

  • 输入:训练数据集 + 基础算法
  • 输出:预测(如回归、分类问题)的模型

SAMPLE

挖掘目标

例如挖掘流、时序和序列数据以及挖掘时间空间、多媒体(音频speech、图像image、视频video等)、文本、Web数据处理

机器学习分类

有监督学习概览

machine-learning

我们已经知道预测所应该得出的正确答案,训练集能起到监督和指导的作用,在模型预测错误时予以纠正,从而优化模型(分类模型/预测模型),常见模型包括

  • 判别模型,如KNN、感知机、决策树、逻辑斯蒂回归模型、MaxEnt、svm、提升方法和crf
  • 生成模型,朴素贝叶斯和HMM等

  • 基于统计的机器学习算法
    • 评价指标
      • 准确率 accuracy
      • 精确率 precision
      • 召回率 recall
      • F-score
      • AUC/ROC
    • 广义线性模型(generalized linear model)
      • 线性回归(linear regression) -> 用一条线去拟合训练数据
        • 回归模型
        • 损失函数 = MSE + 无正则项
        • 损失函数解法
        • 惩罚线性模型
          • 岭回归 Ridge
            • 应用欧式几何的指标
            • 方差
            • L2范数/正则化
          • 套索回归 Lasso
            • 出租车/曼哈顿距离
            • 方差
            • L1范数/正则化
          • 求解算法
            • 最小角度回归LARS
            • Glmnet
      • 逻辑斯蒂回归(logistic regression)
        • 分类模型
        • logistic 误差(对数似然损失函数
        • 损失函数(极大似然法MLE)解法
          • 梯度下降法
          • 牛顿法
        • L2范数
    • Multi-Layer Percetron
      • 线性分类模型 -> 二分类问题
      • 感知机的(wx+b)可以理解为线性回归,即感知机将线性回归的输出作为使用单位阶跃函数的输入,最终的分类结果是阶跃函数的输出
      • 误分类点到分类超平面的总距离
      • 反向传播
    • Neural Network
      • 全连接前馈神经网络 -> 多层感知机网络
      • 带有卷积和池化层的网络 -> CNN
      • 循环神经网络RNN -> LSTM
      • GAN
        • DCGAN
      • BP 算法
        • GD
          • BGD(batch)
          • Mini-Batch GD
          • SGD(stochastic)
            • 梯度优化算法
              • Momentum
              • Adagrad ->每次通过,全局学习率逐参数的除以历史梯度平方和的平方根,使得每个参数的学习率不同
              • Adam
        • 牛顿法(因为Hesse矩阵的计算量很大,一般不使用)
        • 拟牛顿法(BFGS -> L-BFGS)
    • SVM
      • SVM(支持向量机)是一个有监督的学习模型,通常用来进行模式识别、分类以及回归分析。SVM(支撑向量机)是数学规划方法在分类上的一个典型应用。SVM学习问题可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数的全局最小值。而其他分类方法(如基于规则的分类器和人工神经网络)都采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
      • 小数据集做分类
      • 线性可分支持向量机学习算法
        • 最大间隔法 -> 学习的对偶算法
      • 硬间隔与软间隔
      • 线性支持向量机
      • SVR(support vector regression)
    • 决策树
      • 信息熵 -> 条件熵、信息增益、信息增益比
      • CARTID3C4.5
      • Bagging -> 随机森林
      • Boosting -> GB -> GBDT 梯度提升决策树 -> (CART)-> XGBoost
  • 基于概率模型的学习算法
    • Bayes
    • MaxEnt 最大熵模型
    • HMM 隐马尔科夫模型
    • MEMM -> CRF 条件随机场 -> 在分词、词性标注和命名实体识别等序列标注任务中取得了很好的效果

无监督学习概览

不告诉你结果或标准答案,让你从已知的数据中找到一些特征。

  • 聚类分析

    • 基本聚类

      • k-means

        相似度:

        • 余弦距离
        • 欧氏距离
      • Birch聚类

    • 密度聚类

      • DBSCAN
    • 层次聚类

    • CFSFDP算法

      • 2014年Science
  • 关联规则挖掘

    • Apriori——挖掘布尔关联规则的频繁项集的算法
      • 缺点:需要多次扫描事务数据库
    • FP-Tree——2000年Jiawei Han等人提出了基于FP树生成频繁项集的FP-growth算法
  • 异常检测

半监督学习

半监督学习的概念

降维模型

  • PCA–SVD(singular value decomposition)
  • LDA(Linear Discriminant Analysis)
  • LLE

附录

machine-learning-rank

引用

  • 李航《统计学习方法》
  • 周志华《机器学习》
  • Good Fellow《深度学习》

dzzxjl

Home Linux ML Python Java Thoughts KmKg BookCan Links About