From 352ae7e65b6a74bcd768aa88b866a44c713284c8 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Wed, 26 Oct 2016 15:35:44 +0000
Subject: [PATCH] ADAM
---
src/layer.h | 33 ++++++++++++++++++++++++---------
1 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/src/layer.h b/src/layer.h
index 5e9dc3a..e07ea42 100644
--- a/src/layer.h
+++ b/src/layer.h
@@ -3,6 +3,9 @@
#include "activations.h"
#include "stddef.h"
+#include "tree.h"
+
+struct network_state;
struct layer;
typedef struct layer layer;
@@ -42,6 +45,12 @@
LAYER_TYPE type;
ACTIVATION activation;
COST_TYPE cost_type;
+ void (*forward) (struct layer, struct network_state);
+ void (*backward) (struct layer, struct network_state);
+ void (*update) (struct layer, int, float, float, float);
+ void (*forward_gpu) (struct layer, struct network_state);
+ void (*backward_gpu) (struct layer, struct network_state);
+ void (*update_gpu) (struct layer, int, float, float, float);
int batch_normalize;
int shortcut;
int batch;
@@ -85,6 +94,16 @@
int reorg;
int log;
+ int adam;
+ float B1;
+ float B2;
+ float eps;
+ float *m_gpu;
+ float *v_gpu;
+ int t;
+
+ tree *softmax_tree;
+
float alpha;
float beta;
float kappa;
@@ -105,9 +124,7 @@
int *indexes;
float *rand;
float *cost;
- float *filters;
- char *cfilters;
- float *filter_updates;
+ char *cweights;
float *state;
float *prev_state;
float *forgot_state;
@@ -117,7 +134,7 @@
float *concat;
float *concat_delta;
- float *binary_filters;
+ float *binary_weights;
float *biases;
float *bias_updates;
@@ -194,11 +211,9 @@
float * save_delta_gpu;
float * concat_gpu;
float * concat_delta_gpu;
- float * filters_gpu;
- float * filter_updates_gpu;
float *binary_input_gpu;
- float *binary_filters_gpu;
+ float *binary_weights_gpu;
float * mean_gpu;
float * variance_gpu;
@@ -230,8 +245,8 @@
#ifdef CUDNN
cudnnTensorDescriptor_t srcTensorDesc, dstTensorDesc;
cudnnTensorDescriptor_t dsrcTensorDesc, ddstTensorDesc;
- cudnnFilterDescriptor_t filterDesc;
- cudnnFilterDescriptor_t dfilterDesc;
+ cudnnFilterDescriptor_t weightDesc;
+ cudnnFilterDescriptor_t dweightDesc;
cudnnConvolutionDescriptor_t convDesc;
cudnnConvolutionFwdAlgo_t fw_algo;
cudnnConvolutionBwdDataAlgo_t bd_algo;
--
Gitblit v1.10.0