Use 'num_' in all variable names
This commit is contained in:
parent
e7e6bf9173
commit
72e064338c
@ -24,10 +24,10 @@ if __name__ == "__main__":
|
||||
batch_size=150)
|
||||
|
||||
# Hyperparameters
|
||||
nclasses = 3
|
||||
num_classes = 3
|
||||
prototypes_per_class = 2
|
||||
hparams = dict(
|
||||
distribution=(nclasses, prototypes_per_class),
|
||||
distribution=(num_classes, prototypes_per_class),
|
||||
lr=0.01,
|
||||
)
|
||||
|
||||
|
@ -13,7 +13,7 @@ if __name__ == "__main__":
|
||||
args = parser.parse_args()
|
||||
|
||||
# Dataset
|
||||
train_ds = pt.datasets.Spiral(n_samples=600, noise=0.6)
|
||||
train_ds = pt.datasets.Spiral(num_samples=600, noise=0.6)
|
||||
|
||||
# Dataloaders
|
||||
train_loader = torch.utils.data.DataLoader(train_ds,
|
||||
@ -21,10 +21,10 @@ if __name__ == "__main__":
|
||||
batch_size=256)
|
||||
|
||||
# Hyperparameters
|
||||
nclasses = 2
|
||||
num_classes = 2
|
||||
prototypes_per_class = 20
|
||||
hparams = dict(
|
||||
distribution=(nclasses, prototypes_per_class),
|
||||
distribution=(num_classes, prototypes_per_class),
|
||||
transfer_function="sigmoid_beta",
|
||||
transfer_beta=10.0,
|
||||
lr=0.01,
|
||||
|
@ -22,10 +22,10 @@ if __name__ == "__main__":
|
||||
num_workers=0,
|
||||
batch_size=150)
|
||||
# Hyperparameters
|
||||
nclasses = 3
|
||||
num_classes = 3
|
||||
prototypes_per_class = 1
|
||||
hparams = dict(
|
||||
distribution=(nclasses, prototypes_per_class),
|
||||
distribution=(num_classes, prototypes_per_class),
|
||||
input_dim=x_train.shape[1],
|
||||
latent_dim=x_train.shape[1],
|
||||
proto_lr=0.01,
|
||||
|
@ -41,12 +41,12 @@ if __name__ == "__main__":
|
||||
batch_size=256)
|
||||
|
||||
# Hyperparameters
|
||||
nclasses = 10
|
||||
num_classes = 10
|
||||
prototypes_per_class = 2
|
||||
hparams = dict(
|
||||
input_dim=28 * 28,
|
||||
latent_dim=28 * 28,
|
||||
distribution=(nclasses, prototypes_per_class),
|
||||
distribution=(num_classes, prototypes_per_class),
|
||||
proto_lr=0.01,
|
||||
bb_lr=0.01,
|
||||
)
|
||||
@ -61,7 +61,7 @@ if __name__ == "__main__":
|
||||
# Callbacks
|
||||
vis = pt.models.VisImgComp(
|
||||
data=train_ds,
|
||||
nrow=5,
|
||||
num_columns=5,
|
||||
show=False,
|
||||
tensorboard=True,
|
||||
random_data=20,
|
||||
|
@ -24,10 +24,10 @@ if __name__ == "__main__":
|
||||
test_loader = torch.utils.data.DataLoader(test_ds, batch_size=32)
|
||||
|
||||
# Hyperparameters
|
||||
nclasses = 2
|
||||
num_classes = 2
|
||||
prototypes_per_class = 2
|
||||
hparams = dict(
|
||||
distribution=(nclasses, prototypes_per_class),
|
||||
distribution=(num_classes, prototypes_per_class),
|
||||
input_dim=100,
|
||||
latent_dim=2,
|
||||
proto_lr=0.001,
|
||||
|
@ -31,9 +31,9 @@ class PrototypeImageModel(pl.LightningModule):
|
||||
def on_train_batch_end(self, outputs, batch, batch_idx, dataloader_idx):
|
||||
self.proto_layer.components.data.clamp_(0.0, 1.0)
|
||||
|
||||
def get_prototype_grid(self, nrow=2, return_channels_last=True):
|
||||
def get_prototype_grid(self, num_columns=2, return_channels_last=True):
|
||||
from torchvision.utils import make_grid
|
||||
grid = make_grid(self.components, nrow=nrow)
|
||||
grid = make_grid(self.components, nrow=num_columns)
|
||||
if return_channels_last:
|
||||
grid = grid.permute((1, 2, 0))
|
||||
return grid.cpu()
|
||||
|
@ -58,9 +58,9 @@ class MarginLoss(torch.nn.modules.loss._Loss):
|
||||
|
||||
|
||||
class ReasoningLayer(torch.nn.Module):
|
||||
def __init__(self, num_components, num_classes, n_replicas=1):
|
||||
def __init__(self, num_components, num_classes, num_replicas=1):
|
||||
super().__init__()
|
||||
self.n_replicas = n_replicas
|
||||
self.num_replicas = num_replicas
|
||||
self.num_classes = num_classes
|
||||
probabilities_init = torch.zeros(2, 1, num_components,
|
||||
self.num_classes)
|
||||
@ -122,8 +122,8 @@ class CBC(SiameseGLVQ):
|
||||
x, y = batch
|
||||
# x = x.view(x.size(0), -1)
|
||||
y_pred = self(x)
|
||||
nclasses = self.reasoning_layer.num_classes
|
||||
y_true = torch.nn.functional.one_hot(y.long(), num_classes=nclasses)
|
||||
num_classes = self.reasoning_layer.num_classes
|
||||
y_true = torch.nn.functional.one_hot(y.long(), num_classes=num_classes)
|
||||
loss = MarginLoss(self.margin)(y_pred, y_true).mean(dim=0)
|
||||
return y_pred, loss
|
||||
|
||||
|
@ -246,14 +246,14 @@ class VisImgComp(Vis2DAbstract):
|
||||
*args,
|
||||
random_data=0,
|
||||
dataformats="CHW",
|
||||
nrow=2,
|
||||
num_columns=2,
|
||||
add_embedding=False,
|
||||
embedding_data=100,
|
||||
**kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
self.random_data = random_data
|
||||
self.dataformats = dataformats
|
||||
self.nrow = nrow
|
||||
self.num_columns = num_columns
|
||||
self.add_embedding = add_embedding
|
||||
self.embedding_data = embedding_data
|
||||
|
||||
@ -278,7 +278,7 @@ class VisImgComp(Vis2DAbstract):
|
||||
size=self.random_data,
|
||||
replace=False)
|
||||
data = self.x_train[ind]
|
||||
grid = torchvision.utils.make_grid(data, nrow=self.nrow)
|
||||
grid = torchvision.utils.make_grid(data, nrow=self.num_columns)
|
||||
tb.add_image(tag="Data",
|
||||
img_tensor=grid,
|
||||
global_step=None,
|
||||
@ -288,7 +288,7 @@ class VisImgComp(Vis2DAbstract):
|
||||
tb = pl_module.logger.experiment
|
||||
|
||||
components = pl_module.components
|
||||
grid = torchvision.utils.make_grid(components, nrow=self.nrow)
|
||||
grid = torchvision.utils.make_grid(components, nrow=self.num_columns)
|
||||
tb.add_image(
|
||||
tag="Components",
|
||||
img_tensor=grid,
|
||||
@ -302,7 +302,8 @@ class VisImgComp(Vis2DAbstract):
|
||||
|
||||
if self.show:
|
||||
components = pl_module.components
|
||||
grid = torchvision.utils.make_grid(components, nrow=self.nrow)
|
||||
grid = torchvision.utils.make_grid(components,
|
||||
nrow=self.num_columns)
|
||||
plt.imshow(grid.permute((1, 2, 0)).cpu(), cmap=self.cmap)
|
||||
|
||||
self.log_and_display(trainer, pl_module)
|
||||
|
Loading…
Reference in New Issue
Block a user