Newer
Older
import dataloader
import model
import test
if __name__ == "__main__":
config_file = open("config.yml")
cfg = yaml.load(config_file)
use_cuda = torch.cuda.is_available()
trainpath = cfg["Dataset"]["_DEFAULT_TRAIN_FILEPATH"]
num_days = cfg["Dataset"]["num_days"]
batch_size = cfg["Dataset"]["batch_size"]
num_workers = cfg["Dataset"]["num_workers"]
valid_ratio = cfg["Dataset"]["valid_ratio"]
max_num_samples = cfg["Dataset"]["max_num_samples"]
train_loader, valid_loader = dataloader.get_dataloaders(
trainpath,
num_days,
batch_size,
num_workers,
use_cuda,
valid_ratio,
overwrite_index=True,
max_num_samples=max_num_samples,
)
if use_cuda :
device = torch.device('cuda')
else :
device = toch.device('cpu')
model = model.build_model(cfg, input_size)
f_loss = losses.RMSLE.RMSLE()
optimizer = models.choose_optimizer.optimizer(cfg)
train(model = model, loader = train_loader, f_loss = f_loss, optimizer = optimizer, device = device)
logdir = generate_unique_logpath(top_logdir, "linear")
print("Logging to {}".format(logdir))
# -> Prints out Logging to ./logs/linear_1
if not os.path.exists(logdir):