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折交叉验证
  • 相关阅读:
    Mybatis 原始dao CRUD方法
    JQuery的焦点事件focus() 与按键事件keydown() 及js判断当前页面是否为顶级页面 子页面刷新将顶级页面刷新 window.top.location
    使用actionerror做失败登录验证
    Java项目中的下载 与 上传
    shiro框架 4种授权方式 说明
    javascript 中数组的创建 添加 与将数组转换成字符串 页面三种提交请求的方式
    序列化表单为json对象,datagrid带额外参提交一次查询 后台用Spring data JPA 实现带条件的分页查询 多表关联查询
    Spring data JPA 理解(默认查询 自定义查询 分页查询)及no session 三种处理方法
    orcal 数据库 maven架构 ssh框架 的全注解环境模版 maven中央仓库批量删除lastupdated文件后依然是lastupdated解决方法 mirror aliyun中央仓库
    EasyUI加zTree使用解析 easyui修改操作的表单回显方法 验证框提交表单前验证 datagrid的load方法
  • 原文地址:https://www.cnblogs.com/linyk/p/12879110.html
Copyright © 2011-2022 走看看