人工智能学习(上)
1.机器学习算法总览
2.人工智能学习步骤
1)AI数学基础:https://tianchi.aliyun.com/course/277?spm=a2c22.21206777.J_7877492310.14.2b7f17c9f0sQhp
2)机器学习基本算法:https://tianchi.aliyun.com/course/278?spm=a2c22.21206777.J_7877492310.18.2b7f17c9f0sQhp
3)Pytorch机器学习框架实战:https://tianchi.aliyun.com/course/337?spm=a2c22.21206777.J_7877492310.6.2b7f17c9f0sQhp
4)深度学习原理:https://tianchi.aliyun.com/course/279?spm=a2c22.21206777.J_7877492310.7.2b7f17c9f0sQhp
5)NLP项目实战:部署,微调,Lora训练等等
3.学习笔记
3.1 AI数学基础(上)
3.1.0 数学符号大全
3.1.1 机器学习所需的数学知识
- 微积分
- 线性代数
- 概率论
- 最优化方法
3.1.2 算法所用到的数学知识点
3.1.3 导数
- 总结⭐⭐
例题求解:f(x) = log(1+x2+e2x)
3.1.4 高阶导数
- 总结⭐⭐
例题求解:5x4求二阶导数
3.1.5 导数与函数的性质
- 总结⭐⭐
1)单调性:f‘(x) >0 往上,f'(x)<0往下
2)极值:f'(x)=0,极值必要条件
- 从下往上看,看凹凸性;函数的二阶导数决定凹凸性,f''(x) >0 凸函数
3.1.6 一元函数的泰勒展开
3.1.7 向量
- 向量的内积
- 总结⭐⭐
1)行列向量
2)向量的运算
3)向量的范数
3.1.8 矩阵
- 总结⭐⭐
1)方阵,对称矩阵,单位矩阵,对角线矩阵的概念
2)矩阵的运算:加减法,数乘,转置
3)逆矩阵
3.1.9 行列式
3.1.10 偏导数
- 总结⭐⭐
f(x,y) = x2 + xy - y2分别求x,y的偏导数
3.1.11 高阶偏导数
3.1.12 梯度
3.1.13 雅可比矩阵
- 总结⭐⭐
例题求解:u,v --> x,y,z
3.1.14 Hessian矩阵
- 总结⭐⭐
例题求解:f(x,y,z) = 2x2 - xy + y2 -3z2
3.1.15 极值判别法则
3.1.16 二次型
3.1.17 特征值与特征向量⭐⭐⭐
- 总结⭐⭐
特征值和特征向量被用于多种算法
3.1.18 特征值分解
- 总结⭐⭐
3.1.19 多元函数的泰勒展开
- 总结⭐⭐
3.1.20 矩阵和向量的求导公式⭐⭐
总结⭐⭐
3.1.21 奇异值求解(了解)
3.1.22 为什么需要概率⭐⭐
总结⭐⭐
3.1.23 随机事件与概率
总结⭐⭐
3.1.24 条件概率与贝叶斯公式⭐⭐
总结⭐⭐
3.1.25 随机事件的独立性
总结⭐⭐
3.1.26 随机变量⭐⭐
总结⭐⭐
3.1.27 数学期望和方差⭐⭐
3.1.28 常用的概率分布⭐⭐
总结⭐⭐
3.1.29 随机向量
总结⭐⭐
3.1.30 随机变量的独立性
总结⭐⭐
3.1.31 协方差
反映变量线性相关程度
3.1.32 常用的多维概率分布
总结⭐⭐
3.1.33 最大似然估计⭐⭐
3.1.34 总结⭐⭐
-------
3.2 AI数学基础(下)
3.2.0 内容简介
3.2.1 最优化的基本概念
3.2.2 为什么要用迭代法
总结⭐⭐
3.2.3 梯度下降法⭐⭐
3.2.4 牛顿法
3.2.5 坐标下降法
3.2.6 优化算法面临的问题
3.2.7 拉格朗日乘数法
3.2.8 凸优化简介
3.2.9 凸集
3.2.10 凸函数
3.2.11 凸优化的性质
3.2.12 凸优化的一般表
3.2.13 拉格朗日对偶
3.2.14 KKT条件
3.2.15 总结⭐⭐
3.3 LeeCode编程基础课
3.3.1 线性结构
1)数组
2)链表
3)栈
4)字符串
3.3.2 树性机构
1)树
- 技巧
- 位运算
- 双指针
- 算法
- 搜索
- 排序
- 动态规划
- 分治
- 散列表
- 哈希表
3.3 机器学习基本算法
3.3.1 本集简介
3.3.2 推荐的参考书
3.3.3 人工智能简介
3.4 Pytorch机器学习框架实战
3.5 深度学习原理
3.5.1 深度学习崛起
3.5.2 深度学习典型应用与研究方向之语音处理
3.5.3 深度学习典型应用与研究方向之计算机视觉
3.5.4 深度学习典型应用与研究方向之自然语言处理
3.5.5 深度学习典型应用与研究方向之推荐系统
3.5.6 神经网络(上)
总结⭐⭐
- 通过调整权重和偏置,实现不同的数学逻辑
3.5.7 神经网络(下)
总结⭐⭐⭐⭐:
1)生物学背景
2)单层感知器
3)多层感知器
4)单,多层感知器核心的求解方法,梯度下降法,反响传播理论
3.5.8 卷积神经网络(上)
总结⭐⭐⭐⭐:
1)传统神经网络学习,有监督的机器学习
2)卷积神经网络学习,无监督的深度学习,特征和分类结合,取消了人工设计特征的流程
总结⭐⭐⭐⭐:
训练中需要调整的参数:
1)输入的尺寸
2)padding 卷积前,给边界额外输入的行列
- 步长,step,输入输出大小计算
3.5.9 卷积神经网络(下)
总结⭐⭐⭐⭐:
1)ReLU激活函数,加快模型收敛,不同与lenet的激活函数
2)裁减翻转,数据增强策略
3)依赖于GPU发展,数据集发展,工程技巧的三个背景
总结⭐⭐⭐⭐:
1)卷积神经工程的反向传播
2)两个具有代表性的卷积神经网络模型
3.5.10 深度学习优化之激活函数与参数初始化
总结⭐⭐⭐⭐:
1)阶跃函数
2)ieLU激活函数
3)S型激活函数
总结⭐⭐⭐⭐:
1)好的初始化,对深度学习至关重要
2)大型模型训练,使用预训练好的模型进行初始化,预训练+微调
3.5.11 深度学习优化之标准化与池化
总结⭐⭐⭐⭐:
1)带步长的卷积替代池化的操作
2)归化/标准化,有助于调整数据分布,有助于模型更好,更快的训练
3)池化在模型训练中,是一种必要的操作,提供泛化的能力
3.5.12 深度学习优化之泛化与正则化
总结⭐⭐⭐⭐:
欠拟合:模型没有得到较好的训练,没有办法拟合数据集,模型表达能力还不行
过拟合:模型学习的太过了,对真实的数据表现不好;在训练集中,误差几乎没有,但曲线过于复杂,面对新数据时,判断会出现误差
好的模型需要控制训练的程度,处于欠拟合和过拟合之间
范化能力的评估,让人工智能更趋近于人的行为模式
因为,一般情况下,人不可能完全正确,对事务的认识,不会具体的很精细的程度
就比如对图片,不会因为一个像素的改变而对其判断错误
正则化方法:增强模型的泛化能力
总结⭐⭐⭐⭐:
1)模型的泛化,模型的泛化能力的影响,以及如何增强模型泛化能力
3.5.13 深度学习优化之最优化
深度学习模型,具有很多的局部最小值,且性能相近
对深度学习模型的优化,其实就是找到性能不错的局部最小值,但局部最小值很多,优化起来有一定难度
选择合适的学习率,才能在合适的时间里,对模型进行优化
总结:
1)最优化基本概念,常见最优化算法,以及一些思考
3.5.14 深度学习优化之优化目标与评估指标
通过损失函数,判断模型的训练状态⭐⭐⭐⭐⭐⭐⭐⭐
总结:
1)分类,回归任务中的常见损失函数和常见的评估指标
3.5.15 深度学习优化之数据增强
总结
1)数据增强的重要性
2)数据增强的经典方法
3)自动增强的数据增强方法
3.5.16 深度学习框架之Pytorch快速入门与实践
总结:
1)知道哪些需要反向传播
2)知道哪些需要计算梯度
总结:
1)scale:缩放;RandomSizedCrop:随机裁减;RandomHorizontalFlip:随机翻转
2)ToTensor:转换为Tensor格式
3)Normalize:标准化函数
具体步骤:
1)数据预处理
2)网络定义
3)优化目标和方法
4)训练迭代
5)可视化
6)测试
3.5.17 深度学习框架之Caffe快速入门与实践
总结:
1)自定义caffe网络层需要深入学习
3.5.18 深度学习框架之Tensorflow快速入门与实践
总结:keras神经网络,抽象层级高,使用简单,但是不适合构建深度的神经网络
图中w,x称为数据,multiple称为算子
3.5.19 从零完成人脸表情分类任务⭐⭐⭐⭐
总结⭐⭐⭐⭐:
可以在AI训练营中进行训练
3.5.20 循环神经网络之RNN及其改进
总结:
1)RNN的基本结构
2)RNN的优化,赶紧,LSTM
3)RNN可以完成的任务
4)更加复杂的数据神经网络,双向循环神经网络,深度循环神经网络
3.5.21 图神经网络基础
总结:
1)图数据应用,图的基本表示
2)图在频域的定义,在空域的定义
3)图滤波的操作,基于图率波定义图卷积操作,基于图卷积,定义图神经网络
3.5.22 模型设计之网络宽度和深度设计
优先深度,90%-95%,深度提升性能有限,更进一步可以选择提升宽度;刚开始粗调提升深度,细条提升宽度⭐⭐
3.5.23 模型设计之残差网络
总结:
1)残差网络设计思想,有效性解释,不同结构的残差网络
2)变种残差网络,残差网络与其他思想的结合
3.5.24 模型设计之分组网络
总结:
1)通道分组的概念
2)不同的分组的策略
3)不同的分组设计思想,基于通道分组的模型设计
4)通道分组,是模型设计中一种重要的策略