zoukankan      html  css  js  c++  java
  • 机器学习导论-机器学习基础

    一、人工智能概念

    • 人工智能

      • 分类
        • 机器学习
          • 深度学习
        • 数据挖掘
        • 模式识别
      • 落地
        依靠机器学习
    • 数据
      即观测值

    • 信息
      可信的数据

    • 数据分析
      从数据到信息的整理、筛选和加工过程

    • 数据挖掘
      对信息进行价值化的分析

    • 用机器学习的方法进行数据挖掘

      • 机器学习为方法
      • 数据挖掘为任务
      • 模式识别也是任务
    • 机器学习

      • 机器学习=CPU+GPU+数据+算法
      • 研究如何通过计算的手段利用经验改善系统自身的性能的学科
      • 人工智能核心
      • 数据+算法=机器学习模型
      • 判断问题是否为机器学习问题
        • 非机器学习问题
          • 确定性问题
          • 基础统计问题
        • 机器学习问题
          • 有预测的过程
      • 机器学习学习的是什么?
        • 模型及其参数
    • 基于规则的学习

      • 硬编码(人工)
    • 基于模型的学习

      • 拟合模型(智能)

    二、机器学习基础(一)

    数据集

    • 对比
      • 关系型数据库
        • 行:记录
        • 列:字段
      • 机器学习
        • 行:样本或实例
        • 列:
          • 特征属性
          • 类别标签
    • 先统计样本、属性、类别数量
    • 特征或属性空间
      • 定义
        • 由特征张成的空间
      • 特征或属性向量
        • 组成特征或属性空间中的样本点(行)
      • 特征或属性值
        • 组成特征向量中的值
    • 包含
      • 样本X
      • 标签Y
    • 训练/测试集划分比例
      • 6:4
      • 7:3
      • 8:2
    • 非数值特征
      • 标签编码(label encoder)
        0、1、2……
      • 独热码(onehot encoder)
        如001、010、100

    基本训练流程

    • 训练集训练模型
    • 测试集通过模型得到预测结构y_pred

    误差(error)/损失函数/误差函数/目标函数

    • 简单误差:y-y_pred
    • 绝对误差:|y-y_pred|
    • 平方误差:(y-y_pred)**2
    • 训练误差:训练集
    • 测试误差:测试集
    • 泛化误差:新的数据集

    性能矩阵/混淆矩阵/分类预测结果判断矩阵(真实值-预测值关系)

    • True Positive(TP): Positive - Positive
    • False Negative(FN): Positive - Negative
    • False Positive(FP): Negative - Positive
    • True Negative(TN): Negative - Negative

    性能评价标准

    • 准确率 Accuracy = (TP + TN) / ALL
    • 精确率 Precision = TP / (TP + FP)
    • 召回率 Recall = 真正率 (true positive rate) = TP / (TP + FN)
    • 假正率 FPR(false positive rate) = FP / (FP + TN)
    • F1-Score(F1值)
      • 精确率和召回率的调和平均
      • F1_score = 2/(1/precision + 1/ recall) = 2 * pre * recall / (recall + precision)
    • ROC(受试者工作)曲线
      • 二分类
      • x轴:FPR
      • y轴:TPR
      • 标准:AUC(area under curve)in [0, 1](一般认为大于随机分类的0.5,效果比较好)

    概念学习

    • 关于布尔函数的学习方式
    • f:X(特征集)->Y(类标签)

    问题分类

    • 按结果类型分
      • 分类:离散型
      • 回归:连续型
    • 按有无标签分
      • 监督学习(supervised learning):训练集有标记
      • 半监督学习(semi-supervised learning):部分样本有标记
      • 无监督学习(unsupervised learning):训练集无标记
      • 监督学习
    • 任务驱动
    • 回归算法
      • 简单线性回归
      • 多元线性回归
      • Lasso回归
      • Ridge回归
      • ElasticNet
    • 分类算法
      • 决策树
      • KNN
      • SVM
      • Perception & NeuralNetwork
      • Bayes
      • LogisticRegression

    无监督学习

    • 数据驱动
    • 聚类
      • 在没有类标签的情况下,根据特征相似性或相异性进行分类
    • 特征降维
      • 根据算法将高维特征降为低维特征
      • 区别于特征选择,降维得到的低维特征不具有可解释性

    半监督学习

    • 廉价
    • 区别于主动学习:依赖于人工标记标签
    • 聚类假设
      将有标记数据和无标记数据混合在一起,通过特征之间的相似性将样本分成若干个组或若干个簇,使得组内相似性较大,组间相异性较大。将样本点都进行分组,此时分组的样本点即包含了有标签的和无标签的。根据有标签的样本,按少数服从多数的投票原则对没有标记的样本添加标记,从而全部转化为标记数据
    • 分类
      • 纯半监督学习
      • 直推学习

    强化学习

    • 对环境做出反应
    • 主要解决连续决策的问题

    迁移学习

    • 对于两相关联领域,一个领域数据集小,一个领域数据集大,用大数据集训练的模型迁移到数据小的领域做预测
    • 模型适应性问题

    三、机器学习基础(二)

    • 机器学习三要素

      • 机器学习模型 = 数据 + 算法 + 策略
        • 算法
          • 提供求解参数的方法
          • 解析解:平常方法
          • 最优解:梯度下降法(最优法)、牛顿法
        • 策略
          • 损失函数
      • 模型学习模型 = 模型 + 算法 + 策略
        • 模型
          • 决策函数
            • 输出0或1
          • 条件概率函数
            • 按概率输出
    • 如何设计机器学习系统

      • 首先确定问题
        • 是否为机器学习问题
        • 监督还是无监督?
      • 拿到数据从以下两个角度思考
        • 从数据角度
          • 监督
          • 无监督
          • 半监督
        • 从业务角度
          • 根据业务部门指定的业务方向整理数据进行建模
      • 特征工程
        • 对特征处理
        • 对数据处理
      • 模型 = 数据 + 选择的算法
      • 通过测试集测试模型,给定最终模型
      • 若有新数据,通过模型给出预测结果
    • 模型泛化

      • 好的泛化能力
        • 指模型不但在训练数据集上表现效果很好,对于新数据的适应能力也有很好的效果
      • 过拟合
        • 模型在训练数据上表现良好,在未知数据或测试集上表现差
        • 出现原因
          • 模型过于复杂、数据不纯、训练数据太少
        • 出现场景
          • 模型训练中后期
        • 解决办法
          • 增加正则罚项
          • 重新清理数据
          • 增加训练数据量
          • 对样本或特征进行抽样
          • dropout(深度学习、随机丢弃)
      • 欠拟合
        • 在训练数据和测试数据甚至未知数据上表现都很差
        • 出现原因
          • 模型过于简单
        • 出现场景
          • 模型训练初期
        • 解决办法
          • 增加模型的多项式的项
          • 增加模型多项式项的次数
          • 减少正则罚项
      • 奥卡姆剃刀原则
        • 如果具有相同泛化误差的模型,选择较为简单的模型(防止过拟合)
    • 损失的数学思考

      • 损失函数越小越好
        -》损失函数的期望越小越好,p(x,y)越不易求解
        -》经验风险最小化,平均损失
        -》结构风险最小化,在经验风险的基础上增加正则罚项

      • 随着模型复杂度的增加,模型在训练集上的误差越小,但模型在测试集上的误差先减小再增加。这就需要找到一个合适的点,该点使模型具有很好的泛化误差能力,因此得到结构风险最小化的点即为最佳点,该点对应的参数即所求参数

    • 正则化

      • 目的:降低模型复杂度
      • l1正则: + λ∣w∣
      • l2正则:+ λ|w|^2
    • 交叉验证

      • 简单交叉验证
        • 按比例分割数据集
      • k折交叉验证
        • 将数据集平均切成k等分,每次取一份作为测试集,其余为训练集,训练k个模型,得到平均准确率
      • 留一验证
        • 有多少样本就分成多少份的特殊k折交叉验证
  • 相关阅读:
    java项目配置域名(tomcat直接配置 or 使用nginx反向代理)
    java爬虫学习
    python爬虫
    log4j的日志级别(ssm中log4j的配置)
    Python中list,tuple,dict,set的区别和用法
    [转]C# Eval在asp.net中的用法及作用
    【转】一个运维经理的运维经验总结
    [转]使用 LVS 实现负载均衡原理及安装配置详解
    [转]33个网站足以使你成为一个天才
    搜狐邮箱想说爱你不容易!
  • 原文地址:https://www.cnblogs.com/linyk/p/12879110.html
Copyright © 2011-2022 走看看