From cf32e7e9b843560eb7ec3ed16e5b19f0f7156724 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@burninator.cs.washington.edu>
Date: Sat, 25 Jun 2016 23:12:00 +0000
Subject: [PATCH] colors
---
src/network.c | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/src/network.c b/src/network.c
index 88b7085..a9e5027 100644
--- a/src/network.c
+++ b/src/network.c
@@ -64,6 +64,7 @@
case EXP:
return net.learning_rate * pow(net.gamma, batch_num);
case POLY:
+ if (batch_num < net.burn_in) return net.learning_rate * pow((float)batch_num / net.burn_in, net.power);
return net.learning_rate * pow(1 - (float)batch_num / net.max_batches, net.power);
case RANDOM:
return net.learning_rate * pow(rand_uniform(0,1), net.power);
@@ -253,6 +254,7 @@
int i;
float *original_input = state.input;
float *original_delta = state.delta;
+ state.workspace = net.workspace;
for(i = net.n-1; i >= 0; --i){
state.index = i;
if(i == 0){
@@ -391,6 +393,11 @@
int i;
for(i = 0; i < net->n; ++i){
net->layers[i].batch = b;
+ #ifdef CUDNN
+ if(net->layers[i].type == CONVOLUTIONAL){
+ cudnn_convolutional_setup(net->layers + i);
+ }
+ #endif
}
}
@@ -433,7 +440,7 @@
net->workspace = cuda_make_array(0, (workspace_size-1)/sizeof(float)+1);
#else
free(net->workspace);
- net->workspace = calloc(1, (workspace_size-1)/sizeof(float)+1);
+ net->workspace = calloc(1, workspace_size);
#endif
//fprintf(stderr, " Done!\n");
return 0;
--
Gitblit v1.10.0