自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 收藏
  • 关注

原创 深度学习学习日记5.14

较大的patch size意味着模型的感受野也会增大,即模型在处理图像时能够观察到更广泛的区域。这可能会导致模型更多地关注全局信息,而忽略局部细节,从而降低特征图的分辨率。较大的patch size会导致模型在每个步骤中将更大的区域视为一个单元,这可能导致较大的信息损失。因此,增大patch size会使得图像的特征图分辨率降低,因为模型更多地关注较大的图像区域,而不是局部细节。这是因为更大的patch size意味着模型在每一步处理的区域更大,因此产生的特征图会更为粗糙。

2024-05-14 08:57:33 374

原创 深度学习学习日记5.8

较大的patch size意味着模型的感受野也会增大,即模型在处理图像时能够观察到更广泛的区域。这可能会导致模型更多地关注全局信息,而忽略局部细节,从而降低特征图的分辨率。较大的patch size会导致模型在每个步骤中将更大的区域视为一个单元,这可能导致较大的信息损失。因此,增大patch size会使得图像的特征图分辨率降低,因为模型更多地关注较大的图像区域,而不是局部细节。这是因为更大的patch size意味着模型在每一步处理的区域更大,因此产生的特征图会更为粗糙。

2024-05-08 09:38:36 314

原创 深度学习学习日记(5.6)

在Transformer的self-attention层中,每个位置的图块都会产生自己的查询(Q)、键(K)和值(V)向量。如果输入图像的图块数减少,即图块的数量减少,那么每个图块将捕获更广泛的上下文信息。这意味着在较小的输入图像中,每个位置的图块将覆盖更多的内容。然而,由于图块数的减少,可能会导致每个位置的查询、键和值向量的维度较大,这可能会导致较大的注意力矩阵,从而增加计算成本。为了平衡这一点,可能需要调整Q、K、V向量的维度,以及注意力头的数量,以适应变化的输入大小,并保持计算成本相对较低。

2024-05-06 16:31:18 320

原创 深度学习学习日记4.24(分组卷积)

分组卷积

2024-04-24 11:05:43 103

原创 深度学习学习日记4.22

*它通常用于在模块或类定义之前,向一个注册表中注册模块或类。**在这种情况下,MODELS 是一个注册表,register_module() 是用于向注册表注册模块的方法。:它允许你在一个中心位置注册和管理所有可用的模块,使得模块的使用和查找变得更加方便。:这种注册机制使得其他开发者能够轻松地添加新的模块到系统中,而无需修改现有的代码。:你可以动态地根据需要加载和使用已注册的模块,而不是硬编码地导入和使用它们。

2024-04-23 15:52:45 192

原创 深度学习学习日记4.18——Unet完整网络最基础代码思维导图

Unet完整网络最基础代码思维导图

2024-04-18 16:33:10 125

原创 深度学习学习日记4.17

1.数据加载与预处理: 通过自定义 Dataset 类,可以灵活地组织和加载各种类型的数据,例如图像、文本、时间序列等。你可以在getitem方法中实现数据的加载和预处理逻辑,例如图像的缩放、裁剪、标准化,文本的分词和编码,以及其他任何预处理步骤。2.数据集定制:自定义 Dataset 类允许你根据具体任务和数据集的特点进行定制。可以根据需求定义不同的 Dataset 类,处理不同格式的数据或应用特定的数据增强技术,以满足模型训练的需要。3.与 DataLoader 结合使用。

2024-04-17 11:30:01 692

原创 深度学习学习日记4.15 (面向GPT学习)

分割预测图像的理解在计算损失时,使用 len(trainloader.dataset) 的目的是为了得到整个训练集的样本数量,从而计算出平均损失(average loss)。这是因为损失值通常是单个样本的损失之和,然后再除以样本数量来得到平均损失。在计算 epoch 中的准确率(epoch_acc)时,使用 total(total 是一个累加变量,用于记录已经处理过的样本数量。) 是更加准确的做法,因为它记录了实际处理过的样本数量,而不是简单地依赖于数据集的总样本数。

2024-04-15 11:49:06 883

原创 深度学习学习日记4.14 数据增强 Unet网络部分

transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]):这个操作用于对。它对张量的每个通道进行归一化处理,使得每个通道的均值为 0.485、0.456、0.406,标准差为 0.229、0.224、0.225。nn.sequential序列中写 卷积(输入是输出的2倍(有contact操作))relu ,卷积,relu。nn.sequential序列 中写 卷积,relu(inplce=True节省计算资源),卷积,Relu。

2024-04-14 21:26:38 577 1

原创 深度学习学习日记4.13 灰度图 自定义dataset类 dataloader

虽然灰度图像只有一个通道,但有时候图像数组的形状可能是 (height, width, 1),其中的额外的单通道可能会引起一些问题或不便。这个函数按照索引获取数据集中的样本,并根据需要对样本进行预处理、转换等操作,并返回处理后得样本。num_workers:加载数据时采用单个进程还是多个进程,多进程的话速度相对较快,默认为0(主进程加载)。drop_last:100张牌每次取3张,最后会余下1张,这时剩下的这张牌是舍去还是不舍去。①__init__() 初始化函数,用于设置数据集的基本属性和参数。

2024-04-13 16:38:41 621

原创 深度学习学习日记4.8(下午)

1.softmax 函数的得出的结果是样本被预测到每个类别的概率,所有类别的概率相加总和等于1。单个样本的预测值与真实值的差称为损失。用于计算损失的函数称为损失函数。损失函数是非负实值函数。4️⃣应用需求:对于异常值敏感的任务,使用 Huber Loss 等鲁棒损失函数。1️⃣任务类型:分类任务使用交叉熵损失函数,回归任务使用均方误差MSE损失函数。3️⃣模型特点:需要保证稀疏性的模型,使用L1正则化。如何定义合理的损失函数?2.熵,不确定性,越低越好。5️⃣需要注意的:反复测试。预测越准,交叉熵越小,

2024-04-08 16:32:59 227

原创 深度学习学习日记4.8(上午)信息量,熵,交叉熵,相对熵,交叉熵损失函数

小概率事件有较大的信息量,大概率事件有较小的信息量。当预测结果越接近真实值,损失函数的值越接近于0。熵是概率分布的信息量期望。

2024-04-08 11:29:41 342

原创 深度学习学习日记4.7

L2正则转换的结果是都是0到1之间的数,让所有的数据的平方和为1。作用让数值不要太大,或者让参数的数据分布相对统一一些。反向传播进行训练(每一个参数通过梯度下降进行更新参数),(1前向传播 2求 loss 3反向传播 4梯度更新)损失是真实值和预测值之间的差距(模型训练的目标就是使得损失变小,即真实值和预测值更加接近)能够让损失下降的参数,就是更好的参数。w 新 = w旧 - 学习率×梯度。训练的目的就是让 loss 减小。3.正则化就是对于数据进行纠正。2.前向传播进行预测,

2024-04-07 16:33:11 610

原创 Vit代码

Vit将纯transformer结构引入到CV的基本任务——图像分类中。

2024-04-01 14:05:37 563 2

原创 深度学习网络缝合模块学习

模块和模块之间还可以,进行串行,并行等的连接,模块之间可以有很多组合方式。4在init中进行实例化,注意通道数是上一步forward的通道数。模块和模块之前也可用通过以上方式进行模块间的融合。5在forward中加载init中的实例化。3在forward中查看通道数是多少。6模型实例化测试模块是否加入。1缝合模块只看通道数。2把模块复制到模型中。

2024-03-29 14:13:46 1056 1

原创 transform——迪哥

transformer在CV中:将图像数据转换为序列,就直接可以在transformer中进行套用计算机视觉解决的问题是:如何在原始数据中进行特征提取 ,如何将特征提取的更好,trasnformer相比CNN可以更好的实现VIT 在视觉任务中做transformer。

2024-03-25 17:18:02 1022

转载 self attention和Multi-Head多头注意力机制

Self-Attention机制中全局感知**在Self-Attention机制中,模型在处理输入序列时,每个输出都会考虑到输入序列中的所有元素。这意味着每个元素在生成输出时都会参考整个序列,从而实现了对全局信息的感知。**Self-Attention通过计算序列中每个元素与其他所有元素之间的关联权重来实现这一点。这些权重表明了序列中各个元素对当前元素的重要性。然后,模型会根据这些权重对输入序列进行加权求和,生成考虑了全局信息的输出。

2024-03-19 20:20:54 104

原创 卷积计算公式

2024-03-15 15:59:17 102

原创 图像分割随记

【代码】图像分割随记。

2024-03-11 10:04:13 169

原创 血细胞分类项目

切换模型的运行模式是为了确保在不同阶段使用正确的行为。在训练模式下,模型需要进行梯度计算和参数更新,而在验证/测试模式下,模型不需要进行参数更新,而是专注于性能评估。

2024-01-29 16:41:31 699

原创 MNIST手写数据集项目

def __init__(self): #定义神经网络super(IMNet,self).__init__() #从nn.module中继承一些基本的参数nn.ReLU(),nn.ReLU(),#self.conv1 = nn.Conv2d(1,32,kernel_size=3) #输入通道 卷积核个数 卷积核大小#self.pool = nn.MaxPool2d(2,2) #卷积核大小 步长#self.fc2 = nn.Linear(1024,10) #十分类。

2024-01-26 15:41:48 196

原创 深度学习基础知识

卷积核(算子)用来做图像处理时的矩阵,与原图像做运算的参数。卷积层基本参数(卷积核大小,步长【pytorch默认为1】,padding边缘填充)输出尺寸 = (输入尺寸 - 卷积核尺寸 + 2*padding)/stride +1输入层:批次 通道 图像大小卷积层激活函数:加入非线性因素,提高神经网络对模型的表达能力,解决线性模型所不能解决的问题,CNN较为常用的是Relu。池化层:不会改变三维矩阵(假设是三通道彩色图像)的深度,但是它可以缩小矩阵的大小。

2024-01-25 20:12:00 1203

原创 图像处理python基础

分类:输入[8,3,823,1623] 8为批次 3为通道数 [823,1623]图像大小。一般过程:读取数据np->tensor->model->result->np->画图。分割:输入[8,3,823,1623] 输出[8,823,1623]检测:输入{[8,3,823,1623],[boxes,label]}将在GPU上运行的tensor类型转变成在CPU上运行的np类型。array 读取图片 tensor 模型预测。shape确保图像输入输出尺寸正确。3分类 ,输出[8,3]

2024-01-25 18:34:56 960 1

原创 分割方向API

分割API 以之前的 unet脑肿瘤分割完整代码为例。模型方面不需要写,只需要调用就可以了。

2024-01-24 17:23:33 492

原创 李沐老师 如何读论文

2024-01-24 14:11:53 402

原创 ATTENTION SWIN U-NET: CROSS-CONTEXTUAL ATTENTION MECHANISM FOR SKIN LESION SEGMENTATION

1.现有限制:U-Net 架构中卷积运算的位置限制了其捕捉长距离依赖性的性能2.解决限制:提出了一种,用 Swin Transformer 模块取代 CNN 块来捕获局部和全局表示3.网络模型:Att-SwinU-Net,一种基于注意力的 Swin U-Net 扩展4.关键点:设计跳跃连接路径来提高网络的特征重用性5.改进:在跳跃连接路径中使用的经典连接操作中加入注意机制。

2024-01-16 16:39:13 978

原创 注意力机制

由于57到56、58的距离一样,所以另一种方法是取它们对应体重的平均值 (43+48)/2=0.5。因为57距离56、58最近,我们自然会非常“注意”它们,所以我们分给它们的注意力权重各为0.5。α是任意能刻画相关性的函数,但需要归一化,以高斯核(注意力分数)为例(包括softmax函数)我们想要求腰围为57对应的体重是什么,显然57在56-58之间,所以体重在43-48之间。假设用α(q,ki)来表示q与k对应的注意力权重,则体重预测值f(q)为。q、k、v都为多维的情况也是类似的。

2024-01-15 19:43:59 506

原创 unet脑肿瘤分割完整代码

Unet脑肿瘤分割完整代码

2024-01-14 20:48:15 993 7

原创 Unet——第二课(unet网络)

加权损失函数医学分割指标介绍

2024-01-10 11:01:21 382

原创 U-Net——第一课

unet提出了一个网络和训练策略,使用数据增强,以便更有效的使用可用的带标签样本。

2024-01-09 17:02:04 1056

原创 FCN—第三课(2)

混淆矩阵。

2024-01-08 20:40:59 396

原创 FCN--第三课(1)

FCN代码结构以及相关知识点

2024-01-08 17:30:33 357

原创 FCN——第二课

在以往的分割方法中,主要有两大类缺点:1.基于图像块的分割虽然常见,但是效率低,且往往需要前期或者后期处理(例如超像素、检测框局部预分类等)2. 语义分割面临着语义和位置信息不可兼得的问题。全局信息解决的“是什么”,而局部信息解决的是“在哪里”为了解决上面这两个问题,本文主要有三个创新点1.将分类网络改编为全卷积神经网络,具体包括全连接层转化为卷积层以及通过反卷积进行上采样2.使用迁移学习的方法进行微调3.使用跳跃结构使得语义信息可以和表征信息相结合,产生准确而精细的分割语义信息和表征信息

2024-01-06 16:34:03 834

原创 FCN学习-----第一课

CVPR IEEE国际计算机视觉与模式识别会议PAMI IEEE模式分析与机器智能汇刊需要会的知识点:神经网络:前向传播和反向传播卷积神经网络:CNN,卷积,池化,上采样分类网络:VGG,net,AlexNet,GoogLeNetPytorch基础熟练掌握语义分割常识知识:概念、术语、应用(0.5)熟练掌握FCN算法模型:结构、意义、补充知识点(1天 )熟练掌握FCN模型的代码定义:训练、验证、测试、预处理、模型定义、结果输出(4天)

2024-01-04 09:17:47 968

原创 深度学习分类问题代码框架

2024-01-03 17:31:36 373

原创 深度学习代码20240102

一直报错说是没有正确初始化model属性。问题:构造函数的名称拼写错误,应该是。

2024-01-02 17:01:47 346

原创 深度学习18

inplace是否对原来的位置进行替换,等于false可以防止数据的丢失。最大池化保留了图片信息,神经网络训练的数据量大大减小,可以加快训练。创建实例,使用tensorboard进行显示。非线性激活为神经网络加入了一些非线性的特质。sequential使得代码更加简洁。以上是搭建网络的过程,接着创建网络。使用tensorboard查看。尺寸不变padding=2。flatten将图片展平。

2023-11-27 11:31:01 268

原创 深度学习(小土堆)

drop_last 当取数据有余数时,是舍去还是保留。出现以上问题,需要将numberworks设置为0。将该数据的数据显示在tensorboard中。加载数据集,查看数据集的属性。将图片转换成tensor类型。

2023-11-24 11:39:35 339

原创 深度学习(小土堆)

Image’ 是用于标识图像数据的名称,image_tensor 是添加的图像数据,global_step 是可选参数,用于指定写入的步骤数。需要注意的是,transforms.Resize 操作对于大多数图像分类任务来说都是必需的,因为它可以使所有输入图像都具有相同的尺寸,从而便于将它们传递到深度学习模型中进行训练和推理。在 PyTorch 的 transforms 模块中,我们可以首先创建数据预处理方法的实例,然后将这些实例作为函数来使用,传递需要预处理的数据作为参数。

2023-11-21 17:13:14 156

原创 深度学习(小土堆)

进行上一步需要在pycharm中设置当打开Terminal终端时,自动进入虚拟环境。transform主要对图片进行一些变换。,主要方便后面访问属性或者方法。将图像的数据类型转为numpy。防止与别人冲突可以修改端口号。self代表当前类的实例,

2023-11-20 16:42:15 100

unet脑肿瘤分割完整代码

U-net脑肿瘤分割完整代码 数据集 网络 训练 测试 只跑了20个epoch https://blog.csdn.net/qq_45845375/article/details/135588237

2024-03-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除