![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 68
TTTYYZZ
这个作者很懒,什么都没留下…
展开
-
Tensorflow 2 单GPU同时训练多个模型
Tensorflow 2 单GPU同时训练多个模型问题有时我们需要对多个模型进行性能对比。若一次只训练一个模型,我们需要时刻关注训练进度,非常耗费精力。同时进行多个模型的训练能够降低人力成本。代码这里对三个网络进行图像的二值分割训练,它们分别是Unet, Linknet, FPN。利用for循环对整训练集进行遍历。train函数是这段代码的核心,每调用一次train就进行一次迭代。with里面是前向传播形成计算图、xxx_tape.gradient是通过反向自动微分算法求网络的梯度、xxx_opti原创 2021-06-22 01:44:32 · 1911 阅读 · 0 评论 -
对Dice loss的理解
对Dice loss的理解Dice loss适用于图像的二值分割,且一定程度上能缓解正负样本在数量上不平衡的问题。相比的其它的代价函数,Dice loss显得非常的抽象,所以本文将解释Dice loss为什么能够解决正负样本不平衡的问题。论文原文:V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image SegmentationDice loss的表达式为:其中 yi\rm{y}_{\rm{i}}yi与y^i\原创 2021-05-24 23:49:44 · 4054 阅读 · 0 评论 -
Tensorflow 2 修改模型隐藏层的方法
Tensorflow 2 修改模型隐藏层的方法1.问题2.解决方法对于一些现有的预训练模型,由于它们存在大量跳连接,对它们进行模型的修改是非常不方便的。本文采用一些方法,将U-Net(Resnet-34编码器)内部的全部Relu激活函数替换为了LeakyRelu激活函数。1.问题对于一些简单模型(不含跳连接),可用以下代码对模型的每层进行遍历,从而对模型后半部分进行截取,或者对模型的隐藏层进行修改。layer_input = tf.keras.layers.Input(shape=(128,128,原创 2021-05-18 01:42:09 · 1260 阅读 · 0 评论