Datawhale 李宏毅苹果书 AI夏令营 笔记1

  • Datawhale 李宏毅苹果书 AI夏令营 笔记1

    • 机器学习的三类任务

      • 回归

        • 要找的函数的输出是一个数值或标量,则称为回归

      • 分类

        • 让机器做选择题,先准备一些选项,这些选项称为类别,机器要找的函数会从设定好的选项里面选一个一个当做输出,则称为分类

      • 结构化学习

        • 机器不仅要做选择题或输出一个数字,还要产生一个有结果的结果,比如一张图、一篇文章等,则称为结构化学习

    • 机器学习的过程

      • 步骤1

        • 写出一个带未知数的函数f,例如写成y=b+wx

      • 步骤2

        • 定义损失函数,记为L(b,w)

        • 损失函数的评估方式

          • 平均绝对误差 e=|y`-y|

          • 均方误差e=(y`-y)^2

          • 交叉熵(y和y`为概率分布)

      • 步骤3

        • 求损失函数最优解

          • 梯度下降优化法,L(b,w)对b,w求微分,通过学习率更新b,w。学习率n是一个超参数。

          • 斜率为负,参数右移;斜率为正,参数左移

          • 存在局部最优解和全局最优解,由于初始参数随机,因此无法保证能求解到全局最优解

          • 两个参数求解时,更新方向为一个向量

    • 线性模型

      • 通常,一个模型的修改方向,往往来自我们队这个问题的理解,即领域知识。

      • 线性模型

        • 把输入特征x(可为多个)乘上一个权重w,再加上一个偏置,得到预测的结果,这种模型称为线性模型

      • 分段线性曲线

        • 函数由多个不同斜率的线段组成,可由一个常数和多条不同斜坡的hard sigmoid函数叠加而成

        • 可用分段线性曲线来逼近任何连续曲线,只要有足够的sigmoid函数

        • sigmoid函数表达式y=c / (1 + e^-(b+wx)),其中输入为x,输出为y,c为常数。当x趋于正无穷时,y收敛于c。当x趋于负无穷时,y收敛于0.

        • 调整式中的b,w,c,可以构造不同形状的sigmoid函数。调整w,会改变斜坡的坡度。调整b,可以左右移动sigmoid函数曲线。调整c,可以改变曲线的高度。

        • 叠加拥有不同w、不同b、不同c的sigmoid函数,就可以逼近各种不同分段线性函数y=b+∑c / (1 + e^-(b+wx))

        • sigmoid函数的个数是一个超参数,个数越多,可以产生更复杂的分段线性函数

        • 课外知识

          • Sigmoid函数:Sigmoid函数是一种S型函数,其数学表达式通常为σ(x) = 1 / (1 + e^(-x))。这个函数通过指数运算将任意实值映射到(0, 1)区间内,输出值可以解释为概率或激活度。

          • Hard Sigmoid函数:Hard Sigmoid是Sigmoid函数的一种变体,它通过线性近似和阈值操作来简化计算。常见的Hard Sigmoid函数形式为hard_sigmoid(x) = max(0, min(1, (x + 3) / 6)),也有定义为hard_sigmoid(x) = max(0, min(1, (x * 0.2 + 0.5))),或者更简单地,它在-2.5和2.5之间进行线性变换,并在这两个临界点之外分别返回0和1。由于不涉及复杂的指数运算,Hard Sigmoid的计算速度更快。

      • 梯度下降

        • 将N笔数据速记分成一个个批量(batch),每个批量里面有B笔数据,拿一个批量计算得到L1,假设B够大,则L1和L会很接近。用第一个批量计算得到L1,根据L1计算的梯度更新参数,再用第二个批量计算出L2,再计算L2的梯度并更新参数,以此类推,把所有批量都计算过一遍,称为一个回合(epoch),一个回合包含多次更新参数(N/B次)

      • 模型变形

        • 使用两个relu(线性修正单元)函数合成一个hard sigmiod函数。

        • 在机器学习里面,sigmoid函数或ReLU称为激活函数。有其他激活函数,但这两个效果最好。

        • 网络层数是一个超参数

        • sigmoid函数或ReLU称为神经元,神经网络由神经元组成。神经网络中每一列神经元称为神经网络的一层,又称为隐藏层,隐藏层多的神经网络就深,称为深度神经网络。深度神经网络的训练会用到反向传播(BP),这是一种比较有效率的梯度计算方法。

        • 过拟合:模型在训练数据和测试数据上的结果不一致,这种情况称为过拟合。

      • 机器学习框架

        • 数据

          • 训练数据{(x1,y1),(x2,y2)...(xn,yn)}

          • 测试数据{xn+1,xn+2,...xn+m)}

        • 训练过程

          • 写一个模型函数f,包含Θ个未知参数

          • 定义损失函数L(Θ)

          • 寻找一个Θ`使得损失最小

        • 评估性能

          • 在f中代入Θ`,使用测试数据评估性能

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值