2022/5/27
在计算神经网络的层数时,只计算具有计算能力的层,而输入层只是将数据进行输入,无计算过程,所以层数:隐藏层层数+1个输出层。
Linear output units with Mean Squared Error Loss is usually used for regression tasks.
https://blog.csdn.net/edward_zcl/article/details/85224833
全面理解softmax与交叉熵
理解泛化的一个重要概念是泛化鸿沟(generalization gap),即模型在训练数据上的性能与其在从同一分布中提取的未见过的数据上的性能之间的差异。
Bilibili 计算机视觉
python基本操作
图像视频基本操作
基于OpenCV库的操作
使用notebook 读的时候需要将程序和图放在同一文件夹下
灰度、读取、显示、def定义。视频读取,vc = cv2.VideoCapture(‘test.mp4’),通道分离,通道融合。数值填充,数值计算(可以增加固定通道的灰度值),重新定义图像大小,图像融合两张融合在一起 cv2.addWeighted(img_cat,0.4,img_dog,0.6,0),最后的0是偏置项。
图像基本操作和项目
形态学腐蚀操作erode,图像去毛刺,形态学膨胀操作dilate
开运算与逆运算:开运算是先腐蚀再膨胀,闭运算是先膨胀再腐蚀,最终都是使得图像更加圆滑
梯度运算:膨胀-腐蚀 得到边界。图像滤波:去噪点用中值滤波好一点,边缘检测:Canny算法,设置双阈值。图像金字塔。得到轮廓,轮廓特征。模板匹配,例如一个脸的模板在一个大的照片上找到它。
目标匹配项目,银行卡卡号提取。文件字符识别。文档扫描。
深度学习
深度学习阶段:特征工程比较重要。怎么样选特征非常重要。直接影响模型的性能。介绍基础机器学习算法:K近邻(缺点是不能学习哪些是重要的),CIFAR-10是一个比较使用的数据集。正则化惩罚项是优化权重参数的,防止过拟合,如何更新模型呢? 反向传播。有时候损失函数会有一个常数项(这是为了让真实值和错的产生更大的差别,提升准确率)。如何比避免过拟合? 初始化权重,等等 吴恩达机器学习学过了,dropout等等。神经网络最核心就是求权重矩阵。
Pytorch 基本理论
这个框架已经帮我们把反向传播计算好了。loss.backward()是不更新参数的。 如何更新呢?optimizer.step()一下就完事了。
强大的hub模块。非常强,包含了常见的论文和框架。
输入得转成tensor模式 用 x = torch.tensor()函数
分类任务: 用到 torch.nn.function和nn.Module 模块
使用TensorDataset 和 DataLoader来简化数据输入
model.train()一般是在训练模型中加的,一般会使用Batch Normalization 和 Dropout
model.eval()一般是测试用的,这样就不会使用Batch Normalization 和 Dropout
train_dl变量一般指一个一个训练的batch
卷积神经网络应用
用别人的模型的时候,先训练最后一层,然后在把所有的训练一遍。因为自己的模型往往数据量小,网络非常大会容易不产生收敛如果直接训练所有。
预测的时候:加载训练好的模型 initialize_model,一般是加载进来check point,将待测试的数据进行和训练模型一致的数据预处理。 transpose是更换通道的操作。
AI mathematics of Machine Learning
Statistical Learning I
计算机组成原理MIT
熵、
Transformer为什么比CNN好!
https://www.bilibili.com/video/BV1Pu411Q7jD?spm_id_from=333.337.search-card.all.click
最适合新手入门的【YOLOV5目标实战】
https://www.bilibili.com/video/BV1rt4y1W7Dc?spm_id_from=333.999.0.0