From cf0300ea55538d4ca139d68cd24b0ee452cce015 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Sat, 28 Mar 2015 00:32:01 +0000
Subject: [PATCH] dropout probably ok
---
src/crop_layer_kernels.cu | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/src/crop_layer_kernels.cu b/src/crop_layer_kernels.cu
index 00ecca5..8c97f35 100644
--- a/src/crop_layer_kernels.cu
+++ b/src/crop_layer_kernels.cu
@@ -24,17 +24,22 @@
output[count] = input[index];
}
-extern "C" void forward_crop_layer_gpu(crop_layer layer, float *input)
+extern "C" void forward_crop_layer_gpu(crop_layer layer, network_state state)
{
int flip = (layer.flip && rand()%2);
- int dh = rand()%(layer.h - layer.crop_height);
- int dw = rand()%(layer.w - layer.crop_width);
+ int dh = rand()%(layer.h - layer.crop_height + 1);
+ int dw = rand()%(layer.w - layer.crop_width + 1);
+ if(!state.train){
+ flip = 0;
+ dh = (layer.h - layer.crop_height)/2;
+ dw = (layer.w - layer.crop_width)/2;
+ }
int size = layer.batch*layer.c*layer.crop_width*layer.crop_height;
dim3 dimBlock(BLOCK, 1, 1);
dim3 dimGrid((size-1)/BLOCK + 1, 1, 1);
- forward_crop_layer_kernel<<<cuda_gridsize(size), BLOCK>>>(input, size, layer.c, layer.h, layer.w,
+ forward_crop_layer_kernel<<<cuda_gridsize(size), BLOCK>>>(state.input, size, layer.c, layer.h, layer.w,
layer.crop_height, layer.crop_width, dh, dw, flip, layer.output_gpu);
check_error(cudaPeekAtLastError());
}
--
Gitblit v1.10.0