help-octave
[Top][All Lists]
Advanced

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

Re: address@hidden: Re: automatic differentiation]


From: Thomas Kasper
Subject: Re: address@hidden: Re: automatic differentiation]
Date: Wed, 25 Jan 2006 20:00:23 +0100 (MET)

> --- Ursprüngliche Nachricht ---
> Von: Etienne Grossmann <address@hidden>
> An: address@hidden
> Kopie: address@hidden
> Betreff: address@hidden: Re: automatic differentiation]
> Datum: Wed, 25 Jan 2006 11:54:05 -0500

>   Hi Thomas,
> 
> thanks for this contribution, it seems interesting and I'm looking
> into it. But, w/ my octave 2.9.3, ad_example croaks during 'newton'.
> 
> ======================================================================
> octave:2> help newton
> help: sorry, `newton'is not documented
> octave:3> which newton
> newton is a user-defined function
> octave:4> [x, steps] = newton ('F', x0, 1e-9)
> *** glibc detected *** free(): invalid pointer: 0x08c33da8 ***
> panic: Aborted -- stopping myself...
> attempting to save variables to òctave-core'...
> save to òctave-core'complete
> GNU Octave, version 2.9.3 (i686-pc-linux-gnu).
> ======================================================================

Sorry for this. I will look at my code and I try to figure out what might
cause the problem. For the time being I do not have a clue. 
The fact that I do not have 2.9.3 does not make it any easier.

I tested on 2.9.4 and did not incur any error-messages. The same for 2.1.72,
provided you compile with -DNO_SPARSE and have some necessary prerequisites
from octave-forge (dispatch.oct and isequal.m)

> I am unsure about what your functions do. What kind of object does
> gradinit return? 

It should return a structure with two members, that is: 
value and partial derivatives, the latter organized as a jacobian

octave:1> x = gradinit([1;2;3])
x =

value =

  1
  2
  3

(partial) derivative(s) =

  1  0  0
  0  1  0
  0  0  1


octave:2> x.' * x
ans =

value = 14
(partial) derivative(s) =

  2  4  6


> Does your code do algorithmic differentiation and
> fast hessian-vector products, as in
> 
>   Nicol N. Schraudolph.  Fast Curvature Matrix-Vector Products for
>   Second-Order Gradient Descent. Neural Computation, 14(7):17231738,
>   2002. http://nic.schraudolph.org/bib2html/index.html

No, before you can do any of these beautiful things, you have to have 
the Jacobian, right? That is what I am concerned with. Of course you may
choose numeric differentiation (unless I get my code running on 2.9.3, 
it is probably the only option available to you; I can hardly call it a
choice then). But you might just as well give automatic differentiation a
try.

If you are not too concerned with wasting your time, would you terribly mind
trying it on 2.9.4? If the problem persists, let me know.

Thank you anyway and sorry again for the trouble

Thomas


For further information on AD you might have a look at
http://www-sop.inria.fr/tropics/ad/whatisad.html

-- 
Lust, ein paar Euro nebenbei zu verdienen? Ohne Kosten, ohne Risiko!
Satte Provisionen für GMX Partner: http://www.gmx.net/de/go/partner



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

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