neurostat-develop
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Neurostat-develop] API proposal


From: Fabrice Rossi
Subject: Re: [Neurostat-develop] API proposal
Date: Tue, 09 Apr 2002 17:19:47 +0200

Joseph Rynkiewicz wrote:
> 
> True, but we have only to do the propagation in the right order, and allow
> some layer to share partially the same entries.
> A layer may be constructed with several matrices for each group of
> entries, and one vector for the wheight of the bias and only one output.
> The API have to be changed in  (note the double * before input) :
> 
> int layer_propagate(Layer *lay, double *weights, double ** input,
> double* output, activation * act, activation *dact)
> 
> the function layer propagate become :
> 
> copy vector bias in the output
> loop on matrices relying entries "i" to output
>   output <- multiplication of matrix[i] with vector[i] of entries + output
> (this is a function of blas)
> activation of the output
> 
> The order of the layers is natural,
> the first one have for output the first layer,
> (the entries aren't a layer)
> the second one the second  layer, etc...

Very nice idea. We still have to calculate the offsets for the weights vector,
but I do agree that we have here a nice separation between the global function
(main loop and offset calculation for inputs) and layer function (loop on
inputs and offset calculation for weights). We can simplify layer functions by
removing the act pointer. Indeed, a layer can assume it puts its output into a
output vector, which will be translated into the real output vector or part of
the act struct by the main loop. We can do the same for dact, i.e., it can be
replaced by a double* which will be given by the main loop.

I guess we are getting closer to the solution!

By the way, I plan to do to things: first I plan to write a short paper giving
the precise calculation performed by our model, second I plan to build an
experimental implementation in Java, based on colt an efficient blas like Java
library. More on this later!

Fabrice



reply via email to

[Prev in Thread] Current Thread [Next in Thread]