comparison doc/v2_planning/plugin.txt @ 1119:81ea57c6716d

clarification to plugin.txt
author Yoshua Bengio <bengioy@iro.umontreal.ca>
date Tue, 14 Sep 2010 17:22:25 -0400
parents 8cc324f388ba
children a1957faecc9b
comparison
equal deleted inserted replaced
1118:8cc324f388ba 1119:81ea57c6716d
18 Schedule 18 Schedule
19 ======== 19 ========
20 20
21 The schedule is some function that takes two "times", t1 and t2, and 21 The schedule is some function that takes two "times", t1 and t2, and
22 returns True if the plugin should be run in-between these times. The 22 returns True if the plugin should be run in-between these times. The
23 reason why we check a time range [t1, t2] rather than some discrete 23 indices refer to a "timeline" unit described below (e.g. "real time" or
24 time t is that we do not necessarily want to schedule plugins on 24 "iterations"). The reason why we check a time range [t1, t2] rather than
25 iteration numbers. For instance, we could want to run a plugin every 25 some discrete time t is that we do not necessarily want to schedule plugins
26 second, or every minute, and then [t1, t2] would be the start time and 26 on iteration numbers. For instance, we could want to run a plugin every
27 end time of the last iteration - and then we run the plugin whenever a 27 second, or every minute, and then [t1, t2] would be the start time and end
28 new second started in that range (but still on training iteration 28 time of the last iteration - and then we run the plugin whenever a new
29 boundaries). Alternatively, we could want to run a plugin every n 29 second started in that range (but still on training iteration
30 examples seen - but if we use mini-batches, the nth example might be 30 boundaries). Alternatively, we could want to run a plugin every n examples
31 square in the middle of a batch. 31 seen - but if we use mini-batches, the nth example might be square in the
32 middle of a batch.
32 33
33 I've implemented a somewhat elaborate schedule system. `each(10)` 34 I've implemented a somewhat elaborate schedule system. `each(10)`
34 produces a schedule that returns true whenever a multiple of 10 is in 35 produces a schedule that returns true whenever a multiple of 10 is in
35 the time range. `at(17, 153)` produces one that returns true when 17 36 the time range. `at(17, 153)` produces one that returns true when 17
36 or 143 is in the time range. Schedules can be combined and negated, 37 or 143 is in the time range. Schedules can be combined and negated,