零基础学习深度学习以及模块缝合总结

Python基础知识

  • 工具和资源:PyTorch、Zotero、谷歌学术、Github、B站、ChatGPT等。

深度学习基本知识

张量维度表示

  • (N, C, H, W):表示数据张量的形状,其中N是批量大小,C是通道数(如RGB图像中的3个通道),H是高度,W是宽度。
  • (h, w, c):表示图像数据的形状,h是高度,w是宽度,c是通道数。
  • (B, N, C):表示批量处理的数据,其中B是批量大小,N是样本数量,C是通道数。

张量维度转换

  • 如何在3D和4D张量之间进行转换。通过rearrange函数可以实现这种转换。
  • 例如,将形状为(B, H*W, C)的3D张量转换为(B, C, H, W)的4D张量时,需要提供高度H和宽度W的信息。

torch.shape和torch.size()

  • output.shape返回张量的形状元组。
  • output.size()返回一个torch.Size对象,可以用于类似的操作。

np.reshape和torch.reshape

  • np.reshape用于改变NumPy数组的形状。
  • torch.reshape用于改变PyTorch张量的形状,类似于NumPy的用法。

torch.rand()和torch.randn()的区别

  • torch.rand()生成从均匀分布[0, 1)中抽取的随机数。
  • torch.randn()生成从标准正态分布中抽取的随机数。

模型训练与评估

训练模型

  • 训练过程中详细的步骤,如数据预处理、模型定义、损失函数计算、反向传播和参数更新。
  • 损失函数:以交叉熵损失为例,如何计算模型的损失。
  • 反向传播:通过链式法则计算损失对模型参数的梯度,并更新参数以最小化损失。

评估指标

  • TP(True Positive):正确预测为正类的样本数。
  • FP(False Positive):错误预测为正类的样本数。
  • TN(True Negative):正确预测为负类的样本数。
  • FN(False Negative):错误预测为负类的样本数。
  • Recall(召回率):TP / (TP + FN)。
  • IoU(Intersection over Union):用于目标检测,表示预测框与实际框的交集与并集的比例。
  • Accuracy(准确率):正确预测样本数 / 总样本数。
  • F1 Score:精确率和召回率的调和平均数。

训练可视化

  • 使用TensorBoardX记录和可视化训练过程中的损失、准确率等指标。

数据预处理

reshape()、resize()和squeeze()

  • reshape():用于改变张量的形状。
  • resize():用于调整张量的大小。
  • squeeze():用于删除张量中大小为1的维度。

unsqueeze()

  • 用于在指定位置增加一个新的维度。例如x.unsqueeze(0)会在第0维前增加一个新维度。

transforms.Compose()

  • 用于将多个数据变换操作组合在一起。例如,将图像缩放、裁剪、转换为张量等操作组合。

模型结构和模块缝合

U-Net、ResNet、ResNeXt、ResNeSt

  • 这些网络结构的组成部分及其在实际中的应用。
  • U-Net:用于图像分割,包含卷积层、上采样和跳跃连接。
  • ResNet:引入了残差块,以解决深层网络的梯度消失问题。
  • ResNeXt和ResNeSt:在ResNet的基础上进一步改进,引入了更多的并行卷积路径和注意力机制。

Transformer

  • 编码器(Encoder)解码器(Decoder)的结构及其工作原理。
  • 注意力机制:包括自注意力和多头注意力。
  • Vision Transformer (ViT):将Transformer应用于计算机视觉任务的结构和示例。

其他实用技巧

优化器

  • 不同优化器的使用,如SGD和Adam。
  • SGD(随机梯度下降):适用于简单的优化任务。
  • Adam(自适应矩估计):结合了动量和自适应学习率的优势,适用于更复杂的优化任务。

超参数调整

  • 学习率迭代次数批量大小等参数的设置和调整方法。
  • 正则化参数:如L1和L2正则化,用于防止模型过拟合。

设备选择

  • 使用torch.device选择在GPU或CPU上执行操作,通过torch.cuda.is_available()检查CUDA是否可用。
相关推荐
Lihua奏6 小时前
从单核到多核:CPU为什么不能再只靠提频变快
深度学习
拾年2756 小时前
大模型的"聪明"从哪来?聊聊 AI 数据集的那些事儿
人工智能·深度学习·机器学习
饼干哥哥4 天前
开源Skills|搭建亚马逊动态关键词库系统,每天抓SSS级机会词
人工智能·深度学习·数据分析
武子康6 天前
调查研究-191 SenseVoice 不只是 ASR:把语音从“转文字“升级成“理解状态“
人工智能·深度学习·openai
武子康8 天前
调查研究-189 Kronos 调研:金融 K 线基础模型,是真突破,还是量化圈的新玩具?
人工智能·深度学习·openai
xiao5kou4chang6kai413 天前
MATLAB机器学习、深度学习--从数据预处理到模型训练
深度学习·机器学习·matlab·数据预处理
renhongxia113 天前
世界模型作为AGI落地底层底座的作用
人工智能·深度学习·生成对抗网络·自然语言处理·知识图谱·agi
计算机科研狗@OUC13 天前
(cvpr26) AIMDepth: Asymmetric Image-Event Mamba for Monocular Depth Estimation
人工智能·深度学习·计算机视觉
β添砖java13 天前
深度学习(22)网络中的网络NiN
人工智能·深度学习
Kobebryant-Manba13 天前
深度学习时候d2l报错和使用问题
人工智能·深度学习