Skip to content

Commit d74d441

Browse files
49
1 parent 5dc8dd6 commit d74d441

4 files changed

Lines changed: 46 additions & 29 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.48"
10+
version = "0.6.49"
1111
authors = [
1212
{ name="T. Bartz-Beielstein", email="tbb@bartzundbartz.de" }
1313
]

src/spotPython/data/light_hyper_dict.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@
8080
"lower": 0,
8181
"upper": 2}
8282
},
83-
"NetLightBaseMAPK":
83+
"NetLightBase":
8484
{
8585
"l1": {
8686
"type": "int",

src/spotPython/light/netlightbase.py

Lines changed: 28 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22
import torch
33
import torch.nn.functional as F
44
from torch import nn
5-
from torchmetrics.functional import accuracy
6-
from spotPython.torch.mapk import MAPK
5+
6+
# from torchmetrics.regression import MeanAbsoluteError
7+
8+
# from spotPython.torch.mapk import MAPK
79
from spotPython.hyperparameters.optimizer import optimizer_handler
810

911

@@ -123,9 +125,9 @@ def __init__(
123125
raise ValueError("l1 must be at least 4")
124126

125127
hidden_sizes = [self.hparams.l1, self.hparams.l1 // 2, self.hparams.l1 // 2, self.hparams.l1 // 4]
126-
self.train_mapk = MAPK(k=3)
127-
self.valid_mapk = MAPK(k=3)
128-
self.test_mapk = MAPK(k=3)
128+
# self.train_mapk = MAPK(k=3)
129+
# self.valid_mapk = MAPK(k=3)
130+
# self.test_mapk = MAPK(k=3)
129131

130132
# Create the network based on the specified hidden sizes
131133
layers = []
@@ -166,7 +168,8 @@ def forward(self, x: torch.Tensor) -> torch.Tensor:
166168
167169
"""
168170
x = self.layers(x)
169-
return F.softmax(x, dim=1)
171+
# return F.softmax(x, dim=1)
172+
return x
170173

171174
def training_step(self, batch: tuple) -> torch.Tensor:
172175
"""
@@ -194,6 +197,7 @@ def training_step(self, batch: tuple) -> torch.Tensor:
194197
195198
"""
196199
x, y = batch
200+
y = y.view(len(y), 1)
197201
logits = self(x)
198202
# compute cross entropy loss from logits and y
199203
loss = F.cross_entropy(logits, y)
@@ -229,16 +233,18 @@ def validation_step(self, batch: tuple, batch_idx: int, prog_bar: bool = False):
229233
230234
"""
231235
x, y = batch
236+
y = y.view(len(y), 1)
232237
logits = self(x)
233238
# compute cross entropy loss from logits and y
234-
loss = F.cross_entropy(logits, y)
239+
# loss = F.cross_entropy(logits, y)
240+
loss = F.mse_loss(logits, y)
235241
# loss = F.nll_loss(logits, y)
236-
preds = torch.argmax(logits, dim=1)
237-
acc = accuracy(preds, y, task="multiclass", num_classes=self._L_out)
238-
self.valid_mapk(logits, y)
239-
self.log("valid_mapk", self.valid_mapk, on_step=False, on_epoch=True, prog_bar=prog_bar)
242+
# preds = torch.argmax(logits, dim=1)
243+
# acc = accuracy(preds, y, task="multiclass", num_classes=self._L_out)
244+
# self.valid_mapk(logits, y)
245+
# self.log("valid_mapk", self.valid_mapk, on_step=False, on_epoch=True, prog_bar=prog_bar)
240246
self.log("val_loss", loss, prog_bar=prog_bar)
241-
self.log("val_acc", acc, prog_bar=prog_bar)
247+
# self.log("val_acc", acc, prog_bar=prog_bar)
242248
self.log("hp_metric", loss, prog_bar=prog_bar)
243249

244250
def test_step(self, batch: tuple, batch_idx: int, prog_bar: bool = False) -> tuple:
@@ -255,15 +261,18 @@ def test_step(self, batch: tuple, batch_idx: int, prog_bar: bool = False) -> tup
255261
"""
256262
x, y = batch
257263
logits = self(x)
258-
# compute cross entropy loss from logits and y
259-
loss = F.cross_entropy(logits, y)
260-
preds = torch.argmax(logits, dim=1)
261-
acc = accuracy(preds, y, task="multiclass", num_classes=self._L_out)
262-
self.test_mapk(logits, y)
263-
self.log("test_mapk", self.test_mapk, on_step=True, on_epoch=True, prog_bar=prog_bar)
264+
y = y.view(len(y), 1)
265+
# # compute cross entropy loss from logits and y
266+
# loss = F.cross_entropy(logits, y)
267+
loss = F.mse_loss(logits, y)
268+
# preds = torch.argmax(logits, dim=1)
269+
# acc = accuracy(preds, y, task="multiclass", num_classes=self._L_out)
270+
# self.test_mapk(logits, y)
271+
# self.log("test_mapk", self.test_mapk, on_step=True, on_epoch=True, prog_bar=prog_bar)
264272
self.log("val_loss", loss, prog_bar=prog_bar)
265-
self.log("val_acc", acc, prog_bar=prog_bar)
273+
# self.log("val_acc", acc, prog_bar=prog_bar)
266274
self.log("hp_metric", loss, prog_bar=prog_bar)
275+
acc = torch.tensor(0.0)
267276
return loss, acc
268277

269278
def configure_optimizers(self) -> torch.optim.Optimizer:

src/spotPython/light/netlinearbase.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44

55
# import torchmetrics
66
import torch.nn.functional as F
7-
from torchmetrics.functional import accuracy
7+
8+
# from torchmetrics.functional import accuracy
9+
from torchmetrics.regression import MeanAbsoluteError
810
from spotPython.hyperparameters.optimizer import optimizer_handler
911

1012

@@ -141,8 +143,10 @@ def __init__(
141143
self._L_in = _L_in
142144
self._L_out = _L_out
143145
# _L_in and _L_out are not hyperparameters, but are needed to create the network
144-
self._metric = accuracy
145-
self._loss = F.cross_entropy
146+
# self._metric = accuracy
147+
self._metric = MeanAbsoluteError()
148+
# self._loss = F.cross_entropy
149+
self._loss = F.mse_loss
146150
self.save_hyperparameters(ignore=["_L_in", "_L_out", "_metric", "_loss"])
147151
if self.hparams.l1 < 4:
148152
raise ValueError("l1 must be at least 4")
@@ -190,7 +194,8 @@ def forward(self, x: torch.Tensor) -> torch.Tensor:
190194
"""
191195
print("Entering NetLinearBase.forward()")
192196
x = self.layers(x)
193-
return F.softmax(x, dim=1)
197+
# return F.softmax(x, dim=1)
198+
return x
194199

195200
def training_step(self, batch: tuple) -> torch.Tensor:
196201
"""
@@ -262,8 +267,10 @@ def validation_step(self, batch: tuple, batch_idx: int, prog_bar: bool = False):
262267
# compute cross entropy loss from logits and y
263268
loss = self._loss(logits, y)
264269
# loss = F.nll_loss(logits, y)
265-
preds = torch.argmax(logits, dim=1)
266-
metric = self._metric(preds, y, task="multiclass", num_classes=self._L_out)
270+
# metric
271+
metric = self._metric(logits, y)
272+
# preds = torch.argmax(logits, dim=1)
273+
# metric = self._metric(preds, y, task="multiclass", num_classes=self._L_out)
267274
self.log("val_loss", loss, prog_bar=prog_bar)
268275
self.log("val_metric", metric, prog_bar=prog_bar)
269276
self.log("hp_metric", loss, prog_bar=prog_bar)
@@ -285,8 +292,9 @@ def test_step(self, batch: tuple, batch_idx: int, prog_bar: bool = False) -> tup
285292
logits = self(x)
286293
# compute cross entropy loss from logits and y
287294
loss = self._loss(logits, y)
288-
preds = torch.argmax(logits, dim=1)
289-
metric = self._metric(preds, y, task="multiclass", num_classes=self._L_out)
295+
metric = self._metric(logits, y)
296+
# preds = torch.argmax(logits, dim=1)
297+
# metric = self._metric(preds, y, task="multiclass", num_classes=self._L_out)
290298
self.log("val_loss", loss, prog_bar=prog_bar)
291299
self.log("val_metric", metric, prog_bar=prog_bar)
292300
self.log("hp_metric", loss, prog_bar=prog_bar)

0 commit comments

Comments
 (0)