# HG changeset patch # User bengioy@grenat.iro.umontreal.ca # Date 1209397288 14400 # Node ID e92244f3011640b87c7044f774d831565c0b8480 # Parent 9b68774fcc6b0ed663bd0b1dea143137c806d3d4 Corrected iterator logic errors diff -r 9b68774fcc6b -r e92244f30116 dataset.py --- a/dataset.py Fri Apr 25 16:00:31 2008 -0400 +++ b/dataset.py Mon Apr 28 11:41:28 2008 -0400 @@ -197,7 +197,7 @@ return self.next_row def next(self): - if self.n_batches and self.n_batches_done==self.n_batches + if self.n_batches and self.n_batches_done==self.n_batches: raise StopIteration upper = self.next_row+self.minibatch_size if upper <=self.L: @@ -214,7 +214,7 @@ for name in self.fieldnames]) self.next_row=upper self.n_batches_done+=1 - if upper >= self.L: + if upper >= self.L and self.n_batches: self.next_row -= self.L return minibatch @@ -900,6 +900,7 @@ def next(self): sub_data = self.dataset.data[self.current:self.current+self.minibatch_size] self._values = [sub_data[:,self.dataset.fields_columns[f]] for f in self._names] + self.current+=self.minibatch_size return self return Iterator(self,fieldnames,minibatch_size,n_batches,offset)