当前位置: 首页 > article >正文

李宏毅机器学习笔记(1)—机器学习基本概念+深度学习基本概念

在这里插入图片描述

机器学习基本概念

1、获取模型

步骤

1.1、假定未知函数

带未知参数的函数
在这里插入图片描述

1.2、定义损失函数

真实值:label
在这里插入图片描述
MAE
MSE
几率分布,cross-entropy?
在这里插入图片描述

1.3、优化

  • 单独考虑一个参数
    让损失函数最小,找导数为零的点
    单独考虑w,w0是随机选取的一个数
    斜率为负,左高右低,提高w,反之则反
    埃塔:调整步伐,学习速率,自己设定的(即hyperparameters)
    在这里插入图片描述
  • 考虑两个参数
    在这里插入图片描述
    在这里插入图片描述

2、验证模型

预测未来数据
在这里插入图片描述

3、模型调整

观察真实资料,周期性的,每隔七天就特别低,这个模型显示只能预测一天,我们应该看一个周期七天的的数据,可能模型更精准,因此要调整模型,考虑七天的数据
在这里插入图片描述
在这里插入图片描述

线性回归模型太简单了,需要一个复杂的模型模拟预测,线性模型存在Model Bias
在这里插入图片描述
引入threshold
在这里插入图片描述
Piecewise LInear Curve线段组成
在这里插入图片描述
如果是连续的曲线,逼近
在这里插入图片描述
因此,假设X和Y关系复杂,那么我们假定一个带有未知数的函数,这个函数表示一堆蓝色的函数(Hard SIgmoid)加上一个常数。这个蓝色函数公式如何写?直接写不容易,可以用曲线逼近,用sigmoid函数(即S形的函数)
在这里插入图片描述
调整b和w,可以获得不同形状的函数,来逼近蓝色函数
在这里插入图片描述
在这里插入图片描述
逼近模拟后获取新模型,之前使用单个特征值(x),接下来过渡到使用多个feature(x)

在这里插入图片描述
直观方式,考虑3个特征,j=1,2,3;i:一个i代表一个蓝色函数/sigmoid函数。wij表示第i个sigmoid函数在第j个特征处的权重
在这里插入图片描述
转换成矩阵
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用向量矩阵表示防治法,则转换成如下
在这里插入图片描述
接下来,找未知参数,重新定义一下符号,x:feature;未知参数:w,b,cT,b,把这些拼起来,编程一个长向量
在这里插入图片描述
至此,完成了机器学习第一步:函数定义
在这里插入图片描述
接下来进行第2步,求损失函数
在这里插入图片描述
最后,优化,找一组set使误差最小,对每个一未知的参数计算微分
在这里插入图片描述
在这里插入图片描述
取部分资料进行计算,再用下一个资料算gradient,再更新参数,每次参数更新叫做update,所有batch看过后叫epoch
在这里插入图片描述
区别update和epoch,batch size也是hyperparams
在这里插入图片描述

  • ReLU函数
    hard sigmoid vs soft sigmoid
    在这里插入图片描述
    换成relu函数
    在这里插入图片描述
    在这里插入图片描述
    接下来,继续改模型,反复求a,多做几次的sigmoid或relu运算
    在这里插入图片描述
    一层的意思是,通过一次ReLU运算
    在这里插入图片描述
    在这里插入图片描述
    除夕,机器不知道
    测试了几个模型,还不知道一个好名字,
    在这里插入图片描述
    神经网络,80,90年代已经出现,很多layer就叫deep,神经网络越叠越深
    在这里插入图片描述
    在这里插入图片描述
    反复用ReLu或sigmoid函数,为什么不变胖,而是变深
    在这里插入图片描述
    overfitting(过拟合):在训练资料好,在测试资料上不好在这里插入图片描述
    为了预测未来的资料,应该选3层还是4层,选模型问题
    在这里插入图片描述
    在这里插入图片描述

http://www.kler.cn/a/613330.html

相关文章:

  • DBeaver配置postgresql数据库连接驱动
  • TF32 与 FP32 的区别
  • C++设计模式-状态模式:从基本介绍,内部原理、应用场景、使用方法,常见问题和解决方案进行深度解析
  • 如何保证LabVIEW软件开发的质量?
  • Vue 的响应式机制未生效——v-model 绑定的冰淇淋输入框值不更新
  • 每日一题之日期统计
  • 多个git账户团队写作
  • Python爬虫如何检测请求频率?
  • DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加行拖拽排序功能示例6,TableView16_06 分页表格拖拽排序
  • Java制作简单的聊天室(复习)
  • 高精度除法
  • 深入浅出SPI通信协议与STM32实战应用(W25Q128驱动)(理论部分)
  • 重试机制之指针退避策略算法
  • python三大库之--numpy(一)
  • 【已解决】Git:为什么 .gitignore 不生效?如何停止跟踪已提交文件并阻止推送?
  • 如何快速看懂并修改神经网络
  • MySQL数据库和表的操作
  • 【开源宝藏】用 JavaScript 手写一个丝滑的打字机动画效果
  • Netty——零拷贝
  • Java 大视界 -- 基于 Java 的大数据隐私计算在医疗影像数据共享中的实践探索(158)