Skip to content

Commit b4d1409

Browse files
preparing generaal models
1 parent df78d88 commit b4d1409

6 files changed

Lines changed: 707 additions & 14 deletions

File tree

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
77

88
[project]
99
name = "spotPython"
10-
version = "0.6.4"
10+
version = "0.6.5"
1111
authors = [
1212
{ name="T. Bartz-Beielstein", email="tbb@bartzundbartz.de" }
1313
]

src/spotPython/data/light_hyper_dict.json

Lines changed: 83 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,85 @@
1-
{
1+
{ "NetLinearBase":
2+
{
3+
"l1": {
4+
"type": "int",
5+
"default": 3,
6+
"transform": "transform_power_2_int",
7+
"lower": 3,
8+
"upper": 8},
9+
"epochs": {
10+
"type": "int",
11+
"default": 4,
12+
"transform": "transform_power_2_int",
13+
"lower": 4,
14+
"upper": 9},
15+
"batch_size": {
16+
"type": "int",
17+
"default": 4,
18+
"transform": "transform_power_2_int",
19+
"lower": 1,
20+
"upper": 4},
21+
"act_fn": {
22+
"levels": ["Sigmoid",
23+
"Tanh",
24+
"ReLU",
25+
"LeakyReLU",
26+
"ELU",
27+
"Swish"],
28+
"type": "factor",
29+
"default": "ReLU",
30+
"transform": "None",
31+
"class_name": "spotPython.torch.activation",
32+
"core_model_parameter_type": "instance()",
33+
"lower": 0,
34+
"upper": 5},
35+
"optimizer": {
36+
"levels": ["Adadelta",
37+
"Adagrad",
38+
"Adam",
39+
"AdamW",
40+
"SparseAdam",
41+
"Adamax",
42+
"ASGD",
43+
"NAdam",
44+
"RAdam",
45+
"RMSprop",
46+
"Rprop",
47+
"SGD"],
48+
"type": "factor",
49+
"default": "SGD",
50+
"transform": "None",
51+
"class_name": "torch.optim",
52+
"core_model_parameter_type": "str",
53+
"lower": 0,
54+
"upper": 11},
55+
"dropout_prob": {
56+
"type": "float",
57+
"default": 0.01,
58+
"transform": "None",
59+
"lower": 0.0,
60+
"upper": 0.25},
61+
"lr_mult": {
62+
"type": "float",
63+
"default": 1.0,
64+
"transform": "None",
65+
"lower": 0.1,
66+
"upper": 10.0},
67+
"patience": {
68+
"type": "int",
69+
"default": 2,
70+
"transform": "transform_power_2_int",
71+
"lower": 2,
72+
"upper": 6
73+
},
74+
"initialization": {
75+
"levels": ["Default", "Kaiming", "Xavier"],
76+
"type": "factor",
77+
"default": "Default",
78+
"transform": "None",
79+
"core_model_parameter_type": "str",
80+
"lower": 0,
81+
"upper": 2}
82+
},
283
"NetLightBase":
384
{
485
"l1": {
@@ -79,7 +160,7 @@
79160
"transform": "None",
80161
"core_model_parameter_type": "str",
81162
"lower": 0,
82-
"upper": 2}
163+
"upper": 2}
83164
},
84165
"LitModel":
85166
{

src/spotPython/fun/hyperlight.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
class HyperLight:
1919
"""
20-
Hyperparameter Tuning for Lightning 2.
20+
Hyperparameter Tuning for Lightning.
2121
2222
Args:
2323
seed (int): seed for the random number generator. See Numpy Random Sampling.

src/spotPython/light/cifar10datamodule.py

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ def __init__(self, batch_size: int, data_dir: str = "./data", num_workers: int =
2929
def prepare_data(self) -> None:
3030
"""Prepares the data for use."""
3131
# download
32-
CIFAR10(self.data_dir, train=True, download=True)
33-
CIFAR10(self.data_dir, train=False, download=True)
32+
CIFAR10(root=self.data_dir, train=True, download=True)
33+
CIFAR10(root=self.data_dir, train=False, download=True)
3434

3535
def setup(self, stage: Optional[str] = None) -> None:
3636
"""
@@ -42,14 +42,21 @@ def setup(self, stage: Optional[str] = None) -> None:
4242
"""
4343
# Assign train/val datasets for use in dataloaders
4444
if stage == "fit" or stage is None:
45-
transform = transforms.Compose([transforms.ToTensor()])
46-
cifar_full = CIFAR10(self.data_dir, train=True, transform=transform)
47-
self.data_train, self.data_val = random_split(cifar_full, [45000, 5000])
45+
transform = transforms.Compose(
46+
[transforms.ToTensor(), transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))]
47+
)
48+
data_full = CIFAR10(root=self.data_dir, train=True, transform=transform)
49+
# self.data_train, self.data_val = random_split(daata_full, [45000, 5000])
50+
test_abs = int(len(data_full) * 0.6)
51+
print("test_abs", test_abs)
52+
self.data_train, self.data_val = random_split(data_full, [test_abs, len(data_full) - test_abs])
4853

4954
# Assign test dataset for use in dataloader(s)
5055
if stage == "test" or stage is None:
51-
transform = transforms.Compose([transforms.ToTensor()])
52-
self.data_test = CIFAR10(self.data_dir, train=False, transform=transform)
56+
transform = transforms.Compose(
57+
[transforms.ToTensor(), transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))]
58+
)
59+
self.data_test = CIFAR10(root=self.data_dir, train=False, transform=transform)
5360

5461
def train_dataloader(self) -> DataLoader:
5562
"""
@@ -59,7 +66,8 @@ def train_dataloader(self) -> DataLoader:
5966
DataLoader: The training dataloader.
6067
6168
"""
62-
return DataLoader(self.data_train, batch_size=self.batch_size, num_workers=self.num_workers)
69+
print("self.batch_size", self.batch_size)
70+
return DataLoader(self.data_train, batch_size=self.batch_size, shuffle=True, num_workers=self.num_workers)
6371

6472
def val_dataloader(self) -> DataLoader:
6573
"""
@@ -70,7 +78,7 @@ def val_dataloader(self) -> DataLoader:
7078
7179
7280
"""
73-
return DataLoader(self.data_val, batch_size=self.batch_size, num_workers=self.num_workers)
81+
return DataLoader(self.data_val, batch_size=self.batch_size, shuffle=False, num_workers=self.num_workers)
7482

7583
def test_dataloader(self) -> DataLoader:
7684
"""
@@ -81,4 +89,4 @@ def test_dataloader(self) -> DataLoader:
8189
8290
8391
"""
84-
return DataLoader(self.data_test, batch_size=self.batch_size, num_workers=self.num_workers)
92+
return DataLoader(self.data_test, batch_size=self.batch_size, shuffle=False, num_workers=self.num_workers)

0 commit comments

Comments
 (0)