Dzmitry Bahdanau
Dzmitry Bahdanau
@bartvm , ping!
I agree with @adbrebs that these auxiliary variables are redundant, because fetching parameters with `Selector` or `ComputationGraph` and taking `l2_norm` is a piece of cake.
@bartvm , you can just as well factor our this logic in separate file `bricks/debug.py`: ``` def parameter_statistics(parameter): return parameter.mean(), parameter.max(), parameter.min() ... DataStreamMonitoring([cost] + parameter_statistics(linear.W), ...) ``` This makes...
No, calling `parameter_statistics` in application call has the same shortcoming: you add one and only one set of observables every time. Of course you can add various roles to these...
> but there are also cases where people could actually prefer Pylearn2's behavior of just being able to say "monitor everything that could be useful for me, throw it in...
Sorry, forgot to say that I find both `monitor_stats.py` and `monitor_expressions.py` acceptable, though the last one is very long.
> part of a CompositeStep I am not sure we should mix algorithms and their monitoring. Maybe if you share your situation with us we can come up with a...
Okay, I see your point. You want to monitor intermediate results of `CompositeStep.compute_steps`, which is a perfectly legitimate desire. One way we could support it is to save these intermediate...
Sure, such monitoring will have to be activated explicitly. Just to make it clear: I just proposed a way to save the variables should be monitored, all the rest will...
Nice that you agree! @jbornschein , let us know if you have any questions.