自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(234)
  • 资源 (1)
  • 收藏
  • 关注

原创 JAVA细节/小技巧

实现Callable类,然后实例化一个对象传递给FutureTask,然后把FutureTask对象传递给Thread对象,执行start即可开始多线程。FutureTask对象执行get函数可以获得Callable类中call函数的返回值,前提是call执行完毕了。如果call函数执行时间特别长,例如你强行sleep20秒,那么底下主线程的打印部分就要20秒后才会执行。因此,假如call运行时间特别长,执行start后没执行完,此时在另一个线程里执行get语句,整个线程就会开始停止,等待。

2023-08-09 15:39:44 194

原创 常考的技巧类算法题(一):下一个排列

技巧类算法题是我随口提的一个概念,意思就是这道题有自己独特的思考思路,仅仅知道它所涉及的最基础的知识点(如宽泛的双指针,动规或深度优先搜索),然后自行推理解题套路十分困难。因此在此做一个整理,面试前过一遍。

2023-07-17 15:37:59 423

原创 c++模板

模板的发明是为了避免过多无用的重复劳动或重复代码,在某一个函数或类中,要处理许多不同的数据类型,但处理方式和逻辑大同小异,此时,使用模板,将数据类型暂时抽象表示,等到实际使用时在明确数据类型,即可节约大量工作量。

2023-07-13 16:41:43 220

原创 常量指针和指针常量

被注释掉的语句就是错误的。此时输出的值为4.

2023-07-12 10:20:35 133

原创 精读UNSUPERVISED SEMANTIC SEGMENTATION BY DISTILLING FEATURE CORRESPONDENCES

无监督语义分割因为训练时没有标注,所以需要让特征具有充分的语义信息的同时,让同一类物体对应的像素的特征足够紧凑。因此本文根据这两个特点,没有采用以往端到端的方式,而是将无监督语义分割拆分为提取特征和聚类两步。作者认为,目前的特征提取模块已经能很好地将同类特征放在一起了,因此本文创新点是通过全新的损失函数,鼓励模型将特征变得更加紧凑的同时不破坏不同分类之间的关系(大白话就是不能为了聚类而聚类,不能把不同类的特征聚到一起去了)

2022-11-03 16:58:35 1615 1

原创 粗读SELF-SUPERVISED LEARNING IS MORE ROBUST TO DATASET IMBALANCE

作者通过一个大的实验证明自监督从数值上收到数据不平衡的影响较小,又通过两个实验,论证自监督方法能够让网络学习到全局的,可迁移的特征,提高了面对数据不平衡的性能。

2022-11-01 19:19:34 273

原创 精读Learning Topological Interactions for Multi-Class Medical Image Segmentation

在医学图像中,一个数据集中,不同类之间总是遵循着一些拓扑关系,例如骨髓在骨头内部,心脏不可能与膀胱接触,毕竟现实中这两玩意挨一起了,那画面直接过不了审,大多数数据集不可能采用这类样本做数据。于是,作者从这一点出发,研究GT中的拓扑关系,并找出分割结果中,不满足这类拓扑关系的点,计算一个额外的损失,以此来提高模型性能。

2022-09-23 15:16:24 1011 2

原创 精读A Study of Face Obfuscation in ImageNet

现在的数据集中,许多涉及现实生活的数据集会不可避免地收集到人脸,不论该张图片是否属于人脸类。以往的做法是直接拿图片进行训练,但这有可能侵害他人隐私,面临纠纷。本文便将人脸模糊的技术用于数据集后,观察模糊人脸的数据集训练出的模型是否与原始的模型有差距,最后发现准确率只下降了不到百分之一,且训练出的模型能够迁移到下游任务中去。

2022-09-02 10:05:10 780

原创 精读Blurs Behave Like Ensembles:Spatial Smoothings to Improve Accuracy, Uncertainty, and Robustness

放了防止过拟合,人们设计出了贝叶斯网络,这种结构因为参数不是确定的,而是每次都是基于高斯分布随机生成一个数作为参数。为了减少高斯分布采样的小概率事件影响结果,所以每次要生成多个数字,每个数字根据节点的输出x计算y,最后求多个y的平均值。这样一来每个连接都要计算多次输出,整个网络的计算量会非常大。本文探讨了利用空间上的平滑防止过拟合的能力,从经验上得出结论,空间平滑能很好地提高CNN的鲁棒性和准确率,降低不确定性,达到提高性能的目的。...

2022-08-30 19:51:30 764

原创 粗读DS-TransUNet: Dual Swin Transformer U-Net for Medical Image Segmentation

本文的用了双胞胎网络,通过不同的patch_size,关注不同尺寸的信息,然后利用TIF模块进行融合,解决ViT无法兼顾局部和全局的问题

2022-06-23 15:03:19 1398

原创 粗读Targeted Supervised Contrastive Learning for Long-Tailed Recognition

相比于直接对图像进行分类,本文更关注特征提取部分,通过令提取的不同类特征在超球面上尽可能远离,让属于同一类的特征尽可能靠近彼此,同时靠近分配到的一个锚点,来提高模型面对样本不平衡时的分类性能。...

2022-06-20 16:35:38 967

原创 粗读TransFuse: Fusing Transformers and CNNs for Medical Image Segmentation

整个网络架构挺简单的,一边是传统的ViT,另一边是CNN,创新点主要在于融合两者的特征图并做出预测,同时融合的信息还会回过头影响CNN的预测。最后把三种预测的结果求损失,并乘以一个超参数后相加,便得到了最终损失。...

2022-06-07 10:21:37 409

原创 精读Representation Compensation Networks for Continual Semantic Segmentation

摘要在连续语义分割训练过程中,模型需要不断地应付新加入的类,因此有可能会遗忘很久之前输入的训练图像。作者提出了一种重新参数化机制,名为Representation Compensation,以避免灾难性的遗忘现象,同时以及一种蒸馏方式,提高模型的稳定性和可塑性。方法本文的训练过程是分为许多步(step),每一步都会面对一个全新的数据集,数据集中有一个模型未曾见过的类。模型在第t步训练时,是无法接触到前t-1步的数据的。架构上图涵盖了本文的两个创新点,中间的是蒸馏模块,右边的是重参数化

2022-05-28 10:34:04 767

原创 粗读Learning multi-level structural information for small organ segmentation

分割损失函数主要有区域,边界和像素三种,本文将三种损失结合,指导模型训练。region关注正确分割与错误分割面积之比,例如IoU损失和Dice损失,boundary关注边界距离,如HD损失,而pixel-wise关注每个像素分类正确与否,如交叉熵损失。本文通过三个模块提取不同的信息,不同方向的信息依次与不同的GT做比较,最后综合三种信息得到最终分类结果。为了方便展示,在显示损失函数这一块只展示了一个ASPP模块。本文提出的计算三个损失的方法名为MLL。整个网络的实际架构如上图所示,ASP..

2022-05-19 10:01:04 212

原创 精读Tree Energy Loss: Towards Sparsely Annotated Semantic Segmentation

摘要首先解释一下Sparsely Annotated Semantic Segmentation(SASS),这种训练顾名思义就是标注地十分稀疏,只在画面的极少的像素上进行标注,模型要根据这稀少的标注学习分割。而本文提出了一种方法,先让模型进行传统的分割,计算一种传统的损失函数,将分割结果结合高层和低层信息进行修改,比较修改前后的分割结果计算损失函数。将两个损失函数相加可以方便快捷地训练模型,在SASS的情况下不用多阶段训练或是额外的监督数据。相关知识SASS传统的标记都是b,会把每个像

2022-05-12 16:21:06 1765 3

原创 粗读UPI-Net: Semantic Contour Detection in Placental Ultrasound

本文研究的目标为胎盘的语义轮廓检测,即不分割出整个胎盘,而是只标注出边缘位置。本文的方法是在简单的多尺度特征融合的基础上增加了两个新的模块,一个关注全局信息,一个关注局部信息。先来看看传统的多尺度特征融合方法 在这些方法中,多尺度的特征往往经过简单的直接拼接或经过1*1卷积后拼接得到。即使是最复杂的DS-FPN,也只是将信息分为两路,一路进行了累加。本文提出的模型结构如下该方法中,无论是...

2022-05-06 09:50:14 134

原创 python数组字典牵一发而动全身问题

今天写了段代码,功能为保存每个人获得每种评级的次数,程序经过大幅度简化后基本如下:keys_dict = ['a', 'b', 'c']padding_vector = [0, 0, 0]pairs = [['a', 1], ['b', 2], ['c', 3]]dict = {}for key in keys_dict: dict[key] = padding_vectorfor pair in pairs: dict[pair[0]][pair[1] - ...

2022-05-04 21:38:51 623

原创 粗读PraNet: Parallel Reverse AttentionNetwork for Polyp Segmentation

本文架构如上图,十分简单明了。通过RA模块,将深层的特征图做sigmoid处理,使其接近但不是二值图像,然后转变灰度,并将处理后的特征图直接与浅一层的特征图相乘。这样做是因为模型在经过基层处理和深度监督后,已经基本能学会大致分割出病灶了,此时特征图中病灶为白,背景为黑。翻转灰度后,病灶为黑,背景为白。两种特征图相乘,要么是病灶分割得太小,导致翻转后的特征图的黑色部分太小,白色部分太大,那么相乘后的图像就会保留病灶边缘部分(这一点可以自己画图想象一下...

2022-04-30 10:25:59 858 1

原创 粗读Reducing Flipping Errors in Deep Neural Networks

在训练一个模型的过程中,每个epoch不仅会跑训练集,还要跑一下验证集或者说测试集(有的训练只有训练集和测试集,有的会加上一个验证集)。在考虑评价指标时,一般是以最后一个epoch的结果计算评价指标。但在最后一个epoch被错误分类的样本很有可能在之前被正确的分类过,作者边开始思考,如何让模型在更新参数时不要把已经正确分类的样本给弄错了。作者的灵感是针对测试集,但做法是针对训练集。在第k个epoch时,针对一个训练集样本,假设其在前面的k-1轮epoch中被正确地预测了j...

2022-04-14 15:44:45 132

原创 精读Fully Attentional Network for Semantic Segmentation

摘要以往的注意力机制,要么只关注同一空间不同通道的信息,要么只关注不同空间同一通道的信息,这会导致模型容易忽略小的对象,并错误分割较大的对象。本文提出了一种新的注意力机制,综合考虑两方面的信息。NL=non-local,全局的方法架构用ResNet-101或HRNetV2-W48提取特征图X,其中ResNet-101的最后两层为空洞卷积。X经过一个卷积处理减少通道数得到Fin,Fin经过全注意力模块(Fully Attentional block,FLA)处理得到Fo...

2022-04-11 21:20:19 1403

原创 粗读Active Boundary Loss for Semantic Segmentation

本文通过让一个损失函数关注边界相关的信息,来提高在边界处的分割效果。整个思路麻烦且不直观,我直接讲方法吧。第一步,将GT中边界部分设为0,然后运算distance transform函数,让其他非0的像素计算自己距离最近的0的曼哈顿距离(好怪哦,bushi),得到一个大小为H*W,成员为整数的矩阵。第二步,让模型输出一个预测图P,大小为C*H*W,C为类别数量,每个通道对应一个类的物体的分割结果。然后,根据这个预测图计算BB的计算方...

2022-04-04 12:08:15 4613 2

原创 精读DiNTS: Differentiable Neural Network Topology Search for 3D Medical Image Segmentation

摘要神经结构搜索(NAS)是一种让计算机自行计算出网络应有的结构的方法,但传统的NAS要么需要大量的搜索时间,要么是局限于已有的结构,如Unet结构或单路结构,即信息从头到尾没有分开和汇合,最多有个残差链接。这样的网络要么训练耗时,要么缺少灵活性,而本文提出一种全新的网络结构,能同时具有灵活的多路拓扑结构,高搜索效率而低显存占用三个优点,并在MSD,一个医学图像分割挑战赛上取得了SOTA方法架构首先解释一下模型名字中“可微”的含义。NAS是通过计算,在一定拓扑结构空间里选择特...

2022-03-22 21:04:23 922

原创 粗读Every Annotation Counts: Multi-label Deep Supervision for Medical Image Segmentation

本文的采用了知识蒸馏的方法。学生模型有两个输出头,一个输出头为伪标签输出头,其输出与教师的输出做匹配,另一个则是常规的输出头,与GT做匹配。教师模型被称为mean-teacher,是因为教师模型的结构与学生模型的结构完全一致,教师模型的参数更新方法如下: 这也是为什么示意图中教师模型输出部分上面一个箭头打了把叉,因为教师模型的伪标签头输出不需要去匹配他人。...

2022-03-21 20:56:09 353

原创 粗读MST: Masked Self-Supervised Transformer for Visual Representation

本文的大致思路是结合知识蒸馏和对比学习,在对比学习时提出一种新的遮罩方法。示意图中,学生模型的MLP输出会尽量接近教师的MLP输出,这一部分是知识蒸馏,没太多要说的。而下面那个decoder则是还原图像。在ViT中,图像会被分块然后输入Transformer主体中,而学生模型内部Mask Strategy中,一部分图像块被遮罩了,即变为一块纯黑色图像了。以往的方法在选择要遮罩的图像块时是纯随机的。而在本文方法中,模型会根据教师的attention ...

2022-03-10 21:23:14 527

原创 粗读Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

模型首先用卷积神经网络提取出一个特征图,然后使用RPN模块计算出一些可能是要检测的目标的框框。最后分类器会综合特征图和RPN的输出,判断哪些框框住了真实物体以及这个物体的类别。...

2022-03-09 15:27:43 3305

原创 粗读SegFix: Model-Agnostic Boundary Refinement for Segmentation

本文提出了一种理论上和机制上能够提高所有模型分割效果的一种后处理方法。众所周知,分割出错的地方一般都是边界区域,本文从这一点下手,训练两个网络,能够判断哪里是边界以及该像素所处主体的中心在哪个方向。如图,boundary branch判断边界地带,direction branch判断边界地带的像素所处的主体在哪个方向。两者的GT由下图得出。对于每个主体,分别计算这个主题中每个像素到最近边界的距离,然后利用sobel算子求出方...

2022-02-26 15:02:48 478

原创 精读Focal Attention for Long-Range Interactions in Vision Transformers

摘要之前的Vision Transformer中,在映射图像块时,大多数会平等地考虑整个图像,即每一个图像块(patch)在输入到注意力之前都是平等的,没有详略之分。但实际上,在观察图像中得分某一区域时,越靠近该区域的图像块所包含的信息越重要,越需要详尽的观察和考虑,而距离这块区域较远的图像块则相对不那么重要,也就没必要同样仔细地去观察分析。这导致这些方法在面对高分辨率图像时增加了许多不必要的计算,费时费力。基于这一点,作者提取了一种新的注意力机制,来提高对图像信息的利用。方法...

2022-02-24 09:56:02 2108

原创 粗读Attention Bottlenecks for Multimodal Fusion

本文提出的模型针对的是视频分类。众所周知,视频中,画面和声音往往是互相联系的,比如音频出现爆炸声时,视频一般会出现火光。在此之前,视频分类中,信息只在每帧视频的不同区域之间通过ViT互相传递,音频信息也只通过AST互相传递影响,不会综合考虑两种信息。上图第一张小图即为传统的视频分类方式。作者提出了两种方式,一种是在靠后的层中(later layers),将两部分信息进行相互传递,另一种是两种信息不直接互相传递,而是借助一个bottleneck模块。将这两种思路融合(不...

2022-02-21 11:04:22 365

原创 精读Hard-Attention for Scalable Image Classification

摘要大多数深度学习神经网络往往是针对特定分辨率编写的,例如224*224。当这些网络面对分辨率增加的图片时,计算量会激增,同时性能也没啥变化甚至退步。作者设计了一个递归网络,不断地从低分辨率图像中确认信息丰富的区域,然后从这些信息丰富的区域裁剪出图像块,继续分析,直到确定原始分辨率图像中哪一处信息最丰富,最终依照这些信息丰富的区域进行分类。方法架构架构部分就是摘要部分的具象化展示。图中,LVL1是原图像长宽缩小到1/4得到的图像。一个特征提取模块分析将图像...

2021-12-30 16:24:22 347 1

原创 粗读Attention over learned object embeddings enables complex visual reasoning

神经网络往往难以应对包含高级的逻辑推理的问题,例如CLEVRER和ARCE数据集中,图像都是一堆立方体,任务有的是回答选择题,选择题选项为一些可能会发生的事件,如红色正方形撞上蓝色三角形等,模型要判断那些事可能发生或不可能发生。 为了解决这些问题,往往需要编写专门的模块,但这种做法对程序员要求高,而且只能应付某一类推理任务。本文将自注意力,自离散化和自监督三种已有方法结合,获得了表现良好的模型,该模型的表现甚至超过了含有专门模块的模型。...

2021-12-28 20:19:01 461

原创 粗读Global Filter Networks for Image Classification

在传统的图像处理领域,傅里叶变换将图像从空间域转换到频率域,并在频率域上进行处理,完成去噪,锐化等。 因为傅里叶变换中,计算变换后某一位置的信息时可能会计算变换前多个位置的信息,有综合考虑整个图像的效果,这一点与transformer有异曲同工之处,于是作者在傅里叶变换之后的图像上用可学习的全局滤波器进行处理,更好地处理图像信息。...

2021-12-27 14:55:29 2096

原创 虚拟机中,安装tensorflow时killed解决办法

解决办法,提高虚拟机内存,我原本只分配了4G内存,拉到16G后直接解决。也可以在pip指令后面加上'--no-cache-dir',但这要重新下一遍whl文件,适合内存不大但网好的情形

2021-12-24 14:51:10 2070

原创 粗读EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks

对于已有的网络进行加深,加宽或提高输入图像分辨率可以提高模型的性能。本文在自己提出的EfficientNet-B0的基础上,进行网络结构搜索,让模型自行找出合适的三种调整的组合方案。 用d,w和r分别表示模型变深,变宽和图像分辨率提高的比例,则三者计算公式为 一开始令=1,搜索α,β和γ的值,最后确定为1.2,1.1和1.15,确定了B0的结构。之后,固定这三个值,选择不同的值,并对B0进行调整,得到了B1到B7。我这个只是...

2021-12-23 09:33:24 1042

原创 精读AutoBalance: Optimized Loss Functions for Imbalanced Data

为了解决样本不平衡问题,已经有研究提出可以用带参数的损失函数来减轻该问题对模型性能的影响,例如带权CE损失。本文提出了一种通过训练自动调整损失函数的参数的方法,先训练模型权重,再训练损失函数参数,最后重新初始化整个模型的参数,用已经训练好的损失函数训练最终的模型。

2021-12-20 15:27:10 612

原创 粗读Pay Attention to MLPs

感觉大佬的方法都是简单有效,比如Resnet,比如Unet,再比如本文。本文重点就是上图,左边是流程图,右边是伪代码。里面的所有projection都是线性的。通过多个相同结构和尺寸的左图模块堆叠就能形成所需要的网络模型。...

2021-12-17 19:41:52 213

原创 精读FREE: Feature Refinement for Generalized Zero-Shot Learning

作者提出,目前的零样本学习(Generalized zero-shot learning, GZSL)方法,在特征提取问题上都是使用的在ImageNet数据集上预训练的各种模型,但由于没处理ImageNet和GZSL跨数据集之间的偏差(cross-dataset bias),导致模型在应对zero-shot任务和处理未见过的类时提取的特征不佳。作者提出了特征改良模块(feature refinement, FR),来改善一个本质为生成器的映射所提取出的特征。

2021-12-14 21:58:56 3050

原创 精读Learning Representations by Humans, for Humans

摘要大多数深度网络,都是直接给出结果,如分类结果。但现实中,人们更多的还是将AI的结果作为决策的辅助,而不是唯一依据,例如医学诊断领域,AI只能判断有无疾病或分割病灶,最后如何用药如何手术如何治疗还是由人决定的。因此,本文训练一个模型,让模型能够更好地总结面向人的辅助信息,而不是提取面向下游任务的表征。方法架构左图为要得到的网络,网络提取的表征z在可视化得到ρ后,可以帮助一个真正的人进行优秀的决策。 为了得到这样一个模型,训练流程如右图。...

2021-12-07 15:36:53 1871

原创 粗读Bladder Wall Segmentation in MRI Images via Deep Learning andAnatomical Constraints

模型分为两部分,左边是常规的分割网络,用的损失函数也是传统方法。但传统的损失函数只关注整体,不会关注边缘细节,导致性能难以进一步提升。所以作者提出了右半部分,将预测的标签图像和GT图像分别和原图像级联,得到新的图像,将两幅新的图像分别输入一个AC编码器,得到各自的特征,然后让特征尽可能接近。...

2021-11-25 21:29:58 545

原创 粗读An Interactive Automation for Human Biliary Tree Diagnosis UsingComputer Vision

医学图像分类标准四步走:增强,分割,提取特征,分类。增强用了去噪时常用的DcCNN,以及其他一些操作。分割部分没细说,提取出的特征见上图Feature Extraction部分。最后用了好几种方法各自独立进行分类,结果显示随机森林效果最好。 让我有所收获的倒不是论文的方法,而是论文提到了胆管研究的一些现状,如目前大多数研究使用CT图像等。...

2021-11-24 19:26:14 1847

原创 精读Slot Machines: Discovering Winning Combinations of Random Weights in Neural Networks

本文从网络的初始化和优化上下手,提出一种不是改变权值,而是选择权值的方法。作者发现,只需要给每层连接提供少量选择,如8个,便可取得十分具有竞争力的结果,而且再微调这些权值组合后,便可超过baseline

2021-11-22 10:34:08 2145

C++贪吃蛇,海量注释,VS2017,需要graphics.h

贪吃蛇,c++,VS2017环境写的。本人自己也才大一,如有疏漏不便或BUG,欢迎指出。可以穿墙,可以变长,可选择固定难度,自己测试时无太多BUG,除了偶尔会吃食物没反应 建议根据注释,删掉我的某一些代码,来更好地理解,方便写出报告

2018-07-12

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

TA关注的人

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