def evaluation_RBM(self, dr, scale, k): rbm = RBM(self.layers[k], self.layers[k+1], self.weightLayers[k], 0) for i in range(scale): im = dr.readOne(i) for p in range(len(im)): if im[p] >= 128: rbm.v_layer.outs[p] = 1.0 else: rbm.v_layer.outs[p] = 0.0 rbm.update_total_error() #just for testing size = [28, 28] image = Image.new("L", size) for p in range(len(self.layers[k].outs)): if self.layers[k].outs[p] == 1.0: image.putpixel([p%28, p/28], 255) else: image.putpixel([p%28, p/28], 0) image.show() rbm.print_average_error(k)