Mercurial > pylearn
changeset 1102:e7c52923f122
api_optimization: Couple replies
author | Olivier Delalleau <delallea@iro> |
---|---|
date | Mon, 13 Sep 2010 15:03:40 -0400 |
parents | b422cbaddc52 |
children | 56c5f0990869 |
files | doc/v2_planning/api_optimization.txt |
diffstat | 1 files changed, 12 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/v2_planning/api_optimization.txt Mon Sep 13 13:42:26 2010 -0400 +++ b/doc/v2_planning/api_optimization.txt Mon Sep 13 15:03:40 2010 -0400 @@ -114,6 +114,17 @@ JB replies: Yes, but that's not the interface used by other minimize() routines (e.g. in scipy). Maybe another list-based interface is required? +OD replies: I think most people would prefer to use a list-based interface, so + they don't have to manually pack / unpack multiple arrrays of parameters. So I + would vote in favor or having both (where the main reason to also provide a + non-list interface would be to allow one to easily switch e.g. to scipy's + minimize). + I would guess the reason scipy's interface is like this is because it makes + it easier for the optimization algorithm, and the packing / unpacking is + typically done only once for non-iterative algorithms. However, the first + point does not matter if we are just wrapping a theano-based algorithm that + already has to handle multiple parameters (and the second may not hold if + we allow iterative algorithms). OD asks: Why make a difference between iterative and one-shot versions? A one-shot algorithm can be seen as an iterative one that stops after its first @@ -127,7 +138,7 @@ There is room for an iterative numpy interface, but I didn't make it yet. Would that answer your question? - +OD replies and asks: Partly. Do we really need a non-iterative interface? Examples --------