• 机器学习基本概念



    基本概念

    机器学习就是去寻找一个复杂的函数
    深度学习:找一个函数,这个函数用类神经网络表示

    函数的输入可以是一个向量、矩阵(images)、序列(语音)
    输出可以是一个数(regression)、可以是一个类别(分类)、文本、画图等

    课程任务

    • Supervised Learning (监督学习)
    • Self-supervised Learning (自监督学习)
    • Generative Adversarial Network (生成对抗网络)
    • Reinforcement Learning (强化学习)
    • Anomaly Detection (异常检测)
    • Explainable AI (可解释性 AI)
    • Model Attack (模型攻击)
    • Domain Adaptation (域自适应)
    • Network Compression (让模型变小)
    • Life-long Learning (终身学习)
    • Meta learning (学习如何学习)

    机器学习的步骤

    1. Function with Unknown Parameters

    y = b + w x 1 y = b + wx_1 y=b+wx1
    y y y:预测的值
    x x x:feature
    w w w:weight
    b b b:bias
    Model:在机器学习里面就是指带参数的函数

    2. Define Loss from Training Data

    Loss:是一个带参函数
    输入: b b b w w w
    输出:代表某一组 b b b w w w 好还是不好
    L ( b , w ) L(b, w) L(b,w)

    例:求 L ( 0.5 k , 1 ) L(0.5k, 1) L(0.5k,1)
    y = b + w x 1 y = b + wx_1 y=b+wx1 = = > ==> ==> y = 0.5 k + 1 x 1 y = 0.5k + 1x_1 y=0.5k+1x1
    假如带入后求得的 y = 5.3 k y=5.3k y=5.3k 而实际的 y ^ = 4.9 k \hat{y} = 4.9k y^=4.9k (label)
    e 1 = ∣ y − y ^ ∣ = 0.4 k e_1 = |y - \hat{y}| = 0.4k e1=yy^=0.4k
    e 2 , e 3 , . . . e n e_2, e_3,...e_n e2,e3,...en都可以这样计算
    Loss: L = 1 N ∑ n e n L = \frac{1}{N}\sum_{n}e_n L=N1nen

    越小代表这一组参数越好。

    有多种计算方式:
    MAE(mean absolute error): e = ∣ y − y ^ ∣ e = |y - \hat{y}| e=yy^
    MSE(mean square error): e = ( y − y ^ ) 2 e = (y - \hat{y})^2 e=(yy^)2
    cross-entropy

    根据 w w w b b b 画出的 L o s s Loss Loss 的等高线图叫做 Error Surface(二维)

    3. Optimization

    目的:找最好的 w w w b b b

    Optimization的方法:Gradient Descent

    先给出 L o s s Loss Loss w w w 的变化图 (Error Surface 一维)

    步骤:

    1. Pick an initial value W 0 W^0 W0
    2. 对此时的 w w w 求导(算微分):计算切线斜率
    3. 更新 w w w
    4. 反复上面的操作

    可能出现局部最优解(Local minima)

    切线斜率负的:切线左高右低,所以如果应该向右边前进(w = w - 学习率 * 斜率)

    决定步长的因素有两个:

    1. 斜率(斜率越大步长越大)
    2. 学习率(自己设置的一个参数)

    hyperparameters:需要自己设定的参数

    在这里插入图片描述

    推广到 w w w b b b

    在这里插入图片描述
    二维图上:

    在这里插入图片描述

    可以发现 点击量 y y y 的波动具有周期性,所以可以对函数进行推广

    在这里插入图片描述

    上面这些模型统称为 Linear models

  • 相关阅读:
    Royal TSX v6.0.1(远程管理软件)
    [附源码]java毕业设计医药管理系统
    Halo升级(Docker Compose安装版本)
    Leetcode 29. Divide Two Integers (Python)
    Java 面向对象编程
    C语言面试题 - 结构体对齐
    【什么是区块链】
    国产 Web 组态软件 TopStack V5.0 发布
    AtomicInteger原理
    Three.js入门学习笔记
  • 原文地址:https://blog.csdn.net/qq_46456049/article/details/126058785