Loss Elbo Log Cosh#
elbo_log_cosh
#
| CLASS | DESCRIPTION |
|---|---|
ELBOLogCoshLoss |
Variational Autoencoder Log-Cosh loss function. |
| FUNCTION | DESCRIPTION |
|---|---|
elbo_log_cosh_loss |
Compute ELBO log-cosh loss for variational autoencoders. |
Classes#
ELBOLogCoshLoss(log_cosh_weight: float = 100.0, kl_div_weight: float = 10.0, reduce_mse: Literal['sum', 'mean'] = 'mean', reduce_kl_div: Literal['sum', 'mean'] = 'mean', sign: float = 1.0, context_prefix: str | None = None, **kwargs)
#
Bases: Loss
Variational Autoencoder Log-Cosh loss function.
Combines log-cosh reconstruction loss with KL divergence for VAE training. Log-cosh provides a smooth alternative to MSE that is less sensitive to outliers.
| PARAMETER | DESCRIPTION |
|---|---|
log_cosh_weight
|
Log-cosh scaling parameter.
TYPE:
|
kl_div_weight
|
KL divergence weighting factor.
TYPE:
|
reduce_mse
|
Reduction method for reconstruction loss.
TYPE:
|
reduce_kl_div
|
Reduction method for KL divergence.
TYPE:
|
sign
|
Loss sign multiplier.
TYPE:
|
| METHOD | DESCRIPTION |
|---|---|
forward |
Compute ELBO log-cosh loss. |
Source code in spectre/loss/elbo_log_cosh.py
Functions#
forward(context: dict, **kwargs) -> torch.Tensor
#
Compute ELBO log-cosh loss.
Arguments
kwargs: dict Additional keyword arguments.
| RETURNS | DESCRIPTION |
|---|---|
loss
|
ELBO log-cosh loss.
TYPE:
|
Source code in spectre/loss/elbo_log_cosh.py
Functions#
elbo_log_cosh_loss(X: torch.Tensor, Y: torch.Tensor, mean: torch.Tensor, logvar: torch.Tensor, weights: torch.Tensor | None = None, log_cosh_weight: float = 100, kl_div_weight: float = 10, reduce_mse: Literal['sum', 'mean'] = 'mean', reduce_kl_div: Literal['sum', 'mean'] = 'mean', sign: float = 1.0) -> torch.Tensor
#
Compute ELBO log-cosh loss for variational autoencoders.
Combines log-cosh reconstruction loss with KL divergence. Log-cosh provides a smooth alternative to MSE that is less sensitive to outliers.
| PARAMETER | DESCRIPTION |
|---|---|
X
|
Input data tensor.
TYPE:
|
Y
|
Reconstructed data tensor (same shape as X).
TYPE:
|
mean
|
Mean of latent Gaussian distribution.
TYPE:
|
logvar
|
Log variance of latent Gaussian distribution (same shape as mean).
TYPE:
|
weights
|
Sample weights.
TYPE:
|
log_cosh_weight
|
Log-cosh scaling parameter.
TYPE:
|
kl_div_weight
|
KL divergence weighting factor.
TYPE:
|
reduce_mse
|
Reduction method for reconstruction loss.
TYPE:
|
reduce_kl_div
|
Reduction method for KL divergence.
TYPE:
|
sign
|
Loss sign multiplier.
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
Tensor
|
ELBO log-cosh loss value. |
Source code in spectre/loss/elbo_log_cosh.py
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 | |