relu

kaggele-Unet-steel-defeat-detection

旧巷老猫 提交于 2019-11-26 10:34:17
brief  今天算是正式第一次打kaggle比赛,记录一下学习成功。这个比赛是用于检测钢铁是否存在缺陷,给出的训练数据集中有四类的缺陷情形,当然也存在没有划痕的情形。我一个打酱油的先是研读了一份开源的kernel代码,今天对同组的同学的Unet深入的学习的一下,说一下具体思路。训练是采取的两次训练的方法,第一次先是在所有的数据集上进行训练一次,第二次再在全是缺陷的数据集上进行测试;细节方面提一下最后的Loss那里采取的是4个channel的输出,然后对每一个的channel表示一个二分类,采用交叉熵为损失函数。 代码部分 model.py from keras.layers import Conv2D, MaxPooling2D, Input, BatchNormalization, Deconv2D, Lambda import keras.backend as K from keras.models import Model from keras.optimizers import Adam import tensorflow as tf def downsampling_conv_block(net, filters, kernel=3):#U-net下采样部分 net = Conv2D(filters, kernel, padding='same', activation