En este artículo, vamos a ver cómo medir la entropía cruzada binaria entre el objetivo y las probabilidades de entrada en PyTorch usando Python . Podemos medir esto usando el método BCELoss() del módulo torch.nn.
Método BCELoss()
El método BCELoss() mide la entropía cruzada binaria entre el objetivo y las probabilidades de entrada mediante la creación de un criterio. Este método se utiliza para medir el error de reconstrucción, un codificador automático es un buen ejemplo de ello. La entrada y el objetivo deben ser tensores de cualquier número de dimensiones y el objetivo debe estar entre 0 y 1. antes de continuar, veamos la sintaxis del método dado.
Sintaxis: torch.nn.BCELoss()
Ejemplo 1:
En este ejemplo, medimos la entropía cruzada binaria entre el objetivo y las probabilidades de entrada del tensor 1D.
Python
# Import required library import torch import torch.nn as nn # define input and target tensor input_tens = torch.tensor( [0.4498, 0.9845, 0.4576, 0.3494, 0.2434], requires_grad=True) target_tens = torch.tensor([0.2345, 0.5565, 0.3468, 0.1444, 0.3546]) # display input and target tensor print('\n input tensor: ', input_tens) print('\n target tensor: ', target_tens) # define criterion to measure binary # cross entropy bce_loss = nn.BCELoss() # compute the binary cross entropy output = bce_loss(input_tens, target_tens) output.backward() # display result print('\n Binary Cross Entropy Loss: ', output)
Producción:
Ejemplo 2:
En este ejemplo, medimos la entropía cruzada binaria entre el objetivo y las probabilidades de entrada del tensor 2D.
Python
# Import required library import torch import torch.nn as nn # define input and target tensor input_tens = torch.tensor([[0.4576, 0.6496, 0.6783], [0.4895, 0.9454, 0.5443], [0.9491, 0.3825, 0.7235]], requires_grad=True) target_tens = torch.tensor([[0.2432, 0.1579, 0.0325], [0.3464, 0.2442, 0.3847], [0.4528, 0.0876, 0.0499], ]) # display input and target tensor print('\n input tensor: \n', input_tens) print('\n target tensor: \n', target_tens) # define criterion to measure binary cross entropy bce_loss = nn.BCELoss() # compute the binary cross entropy output = bce_loss(input_tens, target_tens) output.backward() # display result print('\n Binary Cross Entropy Loss: \n', output)
Producción:
Publicación traducida automáticamente
Artículo escrito por mukulsomukesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA