From 4ab366a805a7678642539465d68ef906b4599aeb Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Mon, 22 Dec 2014 22:35:37 +0000
Subject: [PATCH] some fixes, some other experiments

---
 src/parser.c |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/parser.c b/src/parser.c
index 79d4a3a..d53e87c 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -165,7 +165,9 @@
     }else{
         input =  get_network_output_size_layer(*net, count-1);
     }
-    cost_layer *layer = make_cost_layer(net->batch, input);
+    char *type_s = option_find_str(options, "type", "sse");
+    COST_TYPE type = get_cost_type(type_s);
+    cost_layer *layer = make_cost_layer(net->batch, input, type);
     option_unused(options);
     return layer;
 }
@@ -243,6 +245,12 @@
     if(count == 0){
         net->batch = option_find_int(options, "batch",1);
         input = option_find_int(options, "input",1);
+        float learning_rate = option_find_float(options, "learning_rate", .001);
+        float momentum = option_find_float(options, "momentum", .9);
+        float decay = option_find_float(options, "decay", .0001);
+        net->learning_rate = learning_rate;
+        net->momentum = momentum;
+        net->decay = decay;
     }else{
         input =  get_network_output_size_layer(*net, count-1);
     }
@@ -565,7 +573,7 @@
 
 void print_cost_cfg(FILE *fp, cost_layer *l, network net, int count)
 {
-    fprintf(fp, "[cost]\n");
+    fprintf(fp, "[cost]\ntype=%s\n", get_cost_string(l->type));
     if(count == 0) fprintf(fp, "batch=%d\ninput=%d\n", l->batch, l->inputs);
     fprintf(fp, "\n");
 }

--
Gitblit v1.10.0