improved tests
This commit is contained in:
@@ -59,12 +59,22 @@ if __name__ == "__main__":
|
|||||||
model.save()
|
model.save()
|
||||||
|
|
||||||
# Plot
|
# Plot
|
||||||
fig, axes = plt.subplots(1, len(encoded), figsize=(12, 3))
|
cmap = 'Grays'
|
||||||
|
fig, axes = plt.subplots(3, len(encoded), figsize=(12, 3))
|
||||||
for index, inp in enumerate(encoded):
|
for index, inp in enumerate(encoded):
|
||||||
img = np.reshape(inp, (label_w, label_h))
|
hidden = model.forward(inp)
|
||||||
axes[index].imshow(img)
|
recon = model.backward(hidden)
|
||||||
axes[index].axis('off')
|
img_hidden = np.reshape(hidden, (4, 4))
|
||||||
axes[index].set_title(f'{test_labels[index]}')
|
img_recon = np.reshape(recon, (label_w, label_h))
|
||||||
|
axes[0][index].imshow(img_hidden, cmap=cmap)
|
||||||
|
axes[0][index].axis('off')
|
||||||
|
axes[0][index].set_title(f'{test_labels[index]}')
|
||||||
|
axes[1][index].imshow(img_recon, cmap=cmap)
|
||||||
|
axes[1][index].axis('off')
|
||||||
|
axes[1][index].set_title(f'{test_labels[index]}')
|
||||||
|
axes[2][index].imshow(np.reshape(inp, (label_w, label_h)), cmap=cmap)
|
||||||
|
axes[2][index].axis('off')
|
||||||
|
axes[2][index].set_title(f'{test_labels[index]}')
|
||||||
|
|
||||||
plt.show()
|
plt.show()
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ from rbm.matrix import Mat, np, read_armadillo
|
|||||||
class TestModel(Model):
|
class TestModel(Model):
|
||||||
def __init__(self, name: str, work_dir: str = '.'):
|
def __init__(self, name: str, work_dir: str = '.'):
|
||||||
super().__init__(name, work_dir)
|
super().__init__(name, work_dir)
|
||||||
self.unit1 = Entity((96*96, 16), EntityParams(do_gaussian_visible=True, do_gaussian_hidden=False), TrainingParams(learning_rate=0.000001, momentum=0.9, do_rao_blackwell=True, num_epochs=1000))
|
self.unit1 = Entity((96*96, 16), EntityParams(do_gaussian_visible=True, do_gaussian_hidden=False), TrainingParams(learning_rate=0.000001, momentum=0.9, num_epochs=1000))
|
||||||
|
|
||||||
def forward(self, x: Mat):
|
def forward(self, x: Mat):
|
||||||
x = self.unit1.forward(x)
|
x = self.unit1.forward(x)
|
||||||
@@ -34,9 +34,10 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
# Load train data
|
# Load train data
|
||||||
train_batch = read_armadillo(os.path.join(prj_root, f"{prj_name}.training.dat"))
|
train_batch = read_armadillo(os.path.join(prj_root, f"{prj_name}.training.dat"))
|
||||||
|
test_batch = train_batch
|
||||||
|
|
||||||
# Load test data
|
# Load test data
|
||||||
test_batch = read_armadillo(os.path.join(prj_root, f"{prj_name}.test.dat"))
|
#test_batch = read_armadillo(os.path.join(prj_root, f"{prj_name}.test.dat"))
|
||||||
|
|
||||||
# Train
|
# Train
|
||||||
model.train(train_batch)
|
model.train(train_batch)
|
||||||
|
|||||||
Reference in New Issue
Block a user