Skip to content

Commit b6aea90

Browse files
committed
update
1 parent 451fe3b commit b6aea90

3 files changed

Lines changed: 30 additions & 3 deletions

File tree

src/dataloaders/types.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import random
12
from typing import NotRequired, TypedDict
23

34
import torch
@@ -30,6 +31,8 @@ def dummy(cls, batch: int | None = None) -> "DatasetOutput":
3031
DatasetOutput with dummy values.
3132
"""
3233
if batch is None:
33-
return cls(data=torch.randn(3, 224, 224), label=torch.randint(0, 1000, (1,)).item())
34+
return cls(data=torch.randn(8), label=random.randint(0, 1000))
3435
else:
35-
return cls(data=torch.randn(batch, 3, 224, 224), label=torch.randint(0, 1000, (batch,)))
36+
return cls(
37+
data=torch.randn(batch, 8), label=[random.randint(0, 1000) for _ in range(batch)]
38+
)

src/runner/base_trainer.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -427,14 +427,38 @@ def save_state(self, epoch: int, output_dir: Path) -> dict[str, Path]:
427427
create_symlink(weight_path, final_model_path)
428428

429429
save_optimizer(self.optimizer, optimizer_path)
430+
# 保存したoptimizer_path以外のoptimizerファイルを削除
431+
optimizer_dir = Path(output_dir) / "optimizers"
432+
for optimizer_file in optimizer_dir.glob("optimizer_epoch_*.pth"):
433+
if (
434+
str(optimizer_file) != optimizer_path
435+
and str(optimizer_file) != final_optimizer_path
436+
):
437+
optimizer_file.unlink()
430438
create_symlink(optimizer_path, final_optimizer_path)
431439

432440
if self.epoch_lr_scheduler:
433441
save_lr_scheduler(self.epoch_lr_scheduler, epoch_scheduler_path)
442+
# 保存したschedulerファイル以外のschedulerファイルを削除
443+
scheduler_dir = Path(output_dir) / "schedulers"
444+
for scheduler_file in scheduler_dir.glob("epoch_scheduler_epoch_*.pth"):
445+
if (
446+
str(scheduler_file) != epoch_scheduler_path
447+
and str(scheduler_file) != final_epoch_scheduler_path
448+
):
449+
scheduler_file.unlink()
434450
create_symlink(epoch_scheduler_path, final_epoch_scheduler_path)
435451

436452
if self.iter_lr_scheduler:
437453
save_lr_scheduler(self.iter_lr_scheduler, iter_scheduler_path)
454+
# 保存したschedulerファイル以外のschedulerファイルを削除
455+
scheduler_dir = Path(output_dir) / "schedulers"
456+
for scheduler_file in scheduler_dir.glob("iter_scheduler_epoch_*.pth"):
457+
if (
458+
str(scheduler_file) != iter_scheduler_path
459+
and str(scheduler_file) != final_iter_scheduler_path
460+
):
461+
scheduler_file.unlink()
438462
create_symlink(iter_scheduler_path, final_iter_scheduler_path)
439463

440464
def load_state(

test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def do_test(
2929
logger.info("Loading Dataset...")
3030
transform = build_transforms(cfg.dataset.test.transforms)
3131
if cfg.dataset.test.batch_transforms is not None:
32-
batched_transform = build_batched_transform(cfg.dataset.test.batch_transforms)
32+
batched_transform = build_batched_transform(cfg.dataset.test.batch_transforms).to(device)
3333
else:
3434
batched_transform = None
3535
dataset = build_dataset(cfg.dataset.test, transform)

0 commit comments

Comments
 (0)