ai4med.libs.losses package
-
ce_loss
(logits, labels) Compute CE loss for tf variable
- Parameters
logits (Tensor) – logits outputs of the network
labels (Tensor) – target integer labels
- Returns
cross entropy loss
- Return type
ce
-
binary_classification_loss
(predictions, labels, label_format_info: ai4med.common.label_format.LabelFormatInfo) Compute binary classification loss for tf variable
- Parameters
predictions (Tensor) – outputs of the network
labels (Tensor) – target integer labels
label_format_info – label format information.
- Returns
cross entropy loss
-
multiclass_classification_loss
(predictions, targets, label_format) Compute multiclass classification loss for tf variable
- Parameters
predictions (Tensor) – outputs of the network
targets (Tensor) – target integer labels
label_format – vector of every label’s parameters
- Returns
vector of multiple cross entropy losses
-
weighted_multiclass_classification_loss
(predictions, targets, class_weights, label_format) Compute multiclass classification loss for tf variable
- Parameters
predictions (Tensor) – outputs of the network
targets (Tensor) – target integer labels
class_weights (list) – weight for each class
label_format – vector of every label’s parameters
- Returns
vector of multiple cross entropy losses
-
cross_entropy_loss
(predictions, targets, data_format='channels_first', skip_background=False, smooth=1e-08, is_onehot_targets=False) Compute average cross entropy loss between two tensors.
5D tensors (for 3D images) or 4D tensors (for 2D images).
- Parameters
predictions (Tensor) – outputs of the network
labels (Tensor) – target integer labels
data_format (str) – channels_first (default) or channels_last
skip_background (bool) – skip dice computation on the first channel of the predicted output (skipping dice on background class) or not
smooth (float) – constant to avoid log zero (default 1e-8)
is_onehot_targets (bool) – labels with One-Hot format or not
- Returns
float tensor of cross entropy loss
-
dice_loss
(predictions, targets, data_format='channels_first', skip_background=False, squared_pred=False, jaccard=False, smooth=1e-05, top_smooth=0.0, is_onehot_targets=False) Compute average Dice loss between two tensors.
5D tensors (for 3D images) or 4D tensors (for 2D images).
- Parameters
predictions (Tensor) – Tensor of Predicted segmentation output (e.g NxCxHxWxD)
targets (Tensor) – Tensor of True segmentation values. Usually has 1 channel dimension (e.g. Nx1xHxWxD), where each element is an index indicating class label. Alternatively it can be a one-hot-encoded tensor of the shape NxCxHxWxD, where each channel is binary (or float in interval 0..1) indicating the probability of the corresponding class label
data_format (str) – channels_first (default) or channels_last
skip_background (bool) – skip dice computation on the first channel of the predicted output or not
squared_pred (bool) – use squared versions of targets and predictions in the denominator or not
jaccard (bool) – compute Jaccard Index (soft IoU) instead of dice or not
smooth (float) – denominator constant to avoid zero division (default 1e-5)
top_smooth (float) – experimental, nominator constant to avoid zero final loss when targets are all zeros
is_onehot_targets (bool) – the targets are already One-Hot-encoded or not
- Returns
tensor of one minus average dice loss
-
focal_loss
(predictions, targets, data_format='channels_first', skip_background=False, smooth=1e-08, is_onehot_targets=False, alpha=0.25, gamma=2, use_sigmoid=False, use_for_segmentation=True, use_for_classification=False) Compute average Focal loss between two tensors.
5D tensors (for 3D images) or 4D tensors (for 2D images).
For more details, check the focal loss for segmentation: AnatomyNet: Deep Learning for Fast and Fully Automated Whole-volume Segmentation of Head and Neck Anatomy, Medical Physics, 2018.
- Parameters
predictions (Tensor) – Tensor of Predicted segmentation output (e.g NxCxHxWxD)
targets (Tensor) – Tensor of True segmentation values. Usually has 1 channel dimension (e.g. Nx1xHxWxD), where each element is an index indicating class label. Alternatively it can be a one-hot-encoded tensor of the shape NxCxHxWxD, where each channel is binary (or float in interval 0..1) indicating the probability of the corresponding class label
data_format (str) – channels_first (default) or channels_last
skip_background (bool) – skip dice computation on the first channel of the predicted output or not
smooth (float) – denominator constant to avoid zero division(default 1e-5)
is_onehot_targets (bool) – targets are already One-Hot-encoded or not
alpha (float) – fl = -alpha * (1-p)^gamma * log(p)
gamma (float) – indicating the power of 1-p
use_sigmoid (bool) – add sigmoid layer on predictions or not
use_for_segmentation (bool) – use this Focal loss for segmentation task or not
use_for_classification (bool) – use this Focal loss for classification task or not
- Returns
tensor of focal loss