0、机器学习基础与常用算法

本文详细介绍了有监督学习中的线性回归和梯度下降,以及无监督学习中的聚类算法(K-MEANS和DBSCAN),还涵盖了决策树、随机森林、支持向量机、神经网络和贝叶斯算法的基本原理。通过实例演示和参数优化,展示了这些技术在实际问题中的应用。
摘要由CSDN通过智能技术生成

参考视频

8-整体流程debug解读_哔哩哔哩_bilibili

有监督与无监督

  • 有监督:分类、回归
  • 无监督:聚类

一、线性回归

1、分类与回归

  • 银行贷款:1=贷款;0=不贷款 这样属于分类问题
  • 银行贷款:能贷款多少 这样属于回归问题

  • 额度 = x1*工资 + x2*年龄
    • 相当于确定x1、x2的数值,使其能够更好的拟合下图中的面,以此为基准来预测贷款金额(回归)

  • 公式中的‘θ’相当于权重

  • 相当于将上图中的工资、年龄、额度转化为矩阵的形式输入

2、误差

  • 如下图,空间中的一个点在X1,X2轴上相同,只在Y轴上有误差

独立同分布的意义
  • 独立:各数据之间互不影响,均是独立的
  • 同分布:来自同一个数据集

似然函数

3、梯度下降

  • 当得到了一个目标函数后,如何进行求解 ?直接求解 ?(并不一定可解,线性回归可以当做是一个特例 )
    • 常规套路: 机器学习的套路就是交给机器一堆数据,然后告诉它什么样的学习方式是对的(目标函数),然后让它朝着这个方向去做
      • 在loss曲线中某一点上,找到其切线,切线的反方向就是梯度下降的方向

      • 为了防止下一次更新梯度的点位置不在loss曲线上,要合理设置在上一切线方向上的移动距离

      • 如何优化: 一口吃不成个胖子,要静悄悄的一步步的完成迭代( 每次优化一点点(小步长进行梯度下降),累积起来就是个大成绩了 )

4、参数更新方法、优化设置

  • 学习率:一次更新步长的参数

  • 1/m:所有的样本个数
  • yi:标签值
  • hθ(xi):预测值
  • xij:数据集中本来就有的值
  • 批量梯度下降在数据量大的时候容易出现运算过于复杂的情况

二、聚类算法(无监督问题,没有标签)

  • 聚类:相似的数据分为一个组
  • 难点:如何评估(聚类没有标签的概念),如何调参

1、K-MEANS算法

  • k:聚类的数量
  • 质心:各个数据在聚类后在各个维度上取均值
  • 优化目标:使得聚类中的所有数据与质心的距离和都是最小

K-MEANS算法工作流程
  • (b):k=2,随机初始化2个质心
  • (c):对所有数据进行计算,更靠近红色质心的分类到红色组
  • (d):更新质心(使用上图优化目标的公式)
  • (e):更新聚类
  • (f):再次更新质心

K-MEANS算法优劣势
  • 劣势:
    • K值难确定:无法确定数据真正的分组数量(没有标签,无法确定)
    • 难以发现特殊情况的数据分布方式:如下图所示,无法使用K-MEANS算法算出聚类结果

    • 下图中的情况即使继续更新质心,也不会再出现更好的聚类结果(初始质心对结果有比较大的影响)

2、DBSCAN算法

  • 最重要的是需要确定r与minPts,

图示理解聚类过程
  • 红色、黄色点,经过聚类后成为了一个类别;
  • N点由于不在范围内,且没有点能在r的距离内碰到N点,所以N点不作为类别中

DBSCAN算法可应用的点
  • 应用于检测异常数据(查找离群点N)
BSCAN算法工作流程

  • 其中
    • 参数D:输入的数据集
    • 参数ε:指定的半径r
    • MinPts:密度阈值(半径ε为圆圈中有多少个数据点)

BSCAN算法优劣势

三、决策树算法

  • 决策树:从根节点开始一步步有道叶子结点

1、决策树的组成

2、决策树的训练与测试

3、如何切分特征(选择树节点)

衡量标准-熵
  • 为了选出上图中的“衡量标准”,使用熵
  • 定义:随机变量不确定性的度量(数据内部的混乱程度)

信息增益(ID3)原理(确定根节点)
    • 使用log对数函数来计算

  • 对于二分类的情况,熵值如下图

4、决策树构造实例

(1)如何确认根节点
  • 如何构造,下图展示了X1~X4四种根节点选择的情况
    • 如何确定根节点-》信息增益

  • 经过上述计算,四种情况下,只有Outlook作为根节点时信息增益最大(为0.247),所以根节点设置为Outlook

5、对于连续值,如何划分节点

  • 对于下面图中数值,划分出9中二分的结果,分别算出熵值,得到最终划分结果

6、剪枝策略(减少过拟合风险)

(1)预剪枝
  • 预剪枝:限制树的深度、叶子结点个数、样本数、信息增益等

(2)后剪枝
  • 后剪枝:通过下图公式作为衡量标准

四、随机森林算法原理(集成算法原理)

1、集成算法

(1)Bagging模型-随机森林算法

  • 最典型的就是随机森林算法
    • 随机:采样随机、选择随机
    • 森林:多个决策树并行放在一起

随机森林优势
  • 如何判断哪些feature比较重要:
    • 更改某一节点Xi上的所有数据值,对比更改前后模型的错误路(或损失率)
      • 若error1 ≈ error2,则这一节点Xi不重要
      • 若error1 >> error2,则这一节点Xi非常重要

(2)Boosting模型-提升算法

Adaboost工作流程

(3)Stacking堆叠模型

五、支持向量机

1、支持向量机要解决的问题

(1)决策边界

(2)距离的计算

(3)数据标签的定义

(4)目标函数推导

(5)拉格朗日算子法(在条件下求极值问题)

六、神经网络算法原理

1、特征工程的作用

2、得分函数

3、损失函数

4、前向传播过程

5、反向传播(不断更新权重)

6、神经网络整体架构

(1)正则化

(2)激活函数

7、网络过拟合解决方法

七、贝叶斯算法

1、贝叶斯要解决的问题

  • 贝叶斯算法:主要是对逆向概率进行计算

2、贝叶斯算法(公式)推导过程

  • 以下图为例,求逆向概率:穿长裤的多大概率是女生

  • 假设出穿长裤是男生和女生各有多少人

  • 计算出穿长裤的总人数、穿长裤的多大概率是女生

  • 进行化简后得到

  • 最终得到贝叶斯公式
    • 令Girl = A;Pants = B
    • 则有
      • P (A|B) = P(A)*P (B|A) / P (B)

    • 在B的情况下发生A的概率不容易求出(如穿长裤是女生)
      • 故利用公式求出在A的情况下发生B的概率(是女生穿长裤),进而算出最终结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值