李宏毅机器学习笔记(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层,选模型问题

相关推荐
kyle~42 分钟前
深度学习框架---TensorFlow概览
人工智能·深度学习·tensorflow
夜幕龙1 小时前
LeRobot 项目部署运行逻辑(七)—— ACT 在 Mobile ALOHA 训练与部署
人工智能·深度学习·机器学习
珊瑚里的鱼2 小时前
第九讲 | 模板进阶
开发语言·c++·笔记·visualstudio·学习方法·visual studio
戌崂石2 小时前
最优化方法Python计算:有约束优化应用——线性不可分问题支持向量机
python·机器学习·支持向量机·最优化方法
Echo``2 小时前
40:相机与镜头选型
开发语言·人工智能·深度学习·计算机视觉·视觉检测
Christo32 小时前
关于在深度聚类中Representation Collapse现象
人工智能·深度学习·算法·机器学习·数据挖掘·embedding·聚类
shlR2 小时前
Figma 新手教程学习笔记
笔记·学习·figma
依然易冷2 小时前
Manus AI 原理深度解析第三篇:Tools
人工智能·深度学习·机器学习
二川bro3 小时前
AI、机器学习、深度学习:一文厘清三者核心区别与联系
人工智能·深度学习·机器学习
陵易居士3 小时前
JVM-类加载子系统
jvm·笔记·学习