Calcula la pérdida de entropía cruzada entre etiquetas verdaderas y etiquetas predichas.
Utilice esta pérdida de entropía cruzada cuando solo haya dos clases de etiquetas (se supone que son 0 y 1). Para cada ejemplo, debe haber un único valor de punto flotante por predicción.
Uso independiente:
Operand<TFloat32> labels =
tf.constant(new float[][] { {0.f, 1.f}, {0.f, 0.f} });
Operand<TFloat32> predictions =
tf.constant(new float[][] { {0.6f, 0.4f}, {0.4f, 0.6f} });
BinaryCrossentropy bce = new BinaryCrossentropy(tf);
Operand<TFloat32> result = bce.call(labels, predictions);
// produces 0.815
Llamar con peso de muestra:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f});
Operand<TFloat32> result = bce.call(labels, predictions, sampleWeight);
// produces 0.458f
Usando el tipo de reducción SUM :
BinaryCrossentropy bce = new BinaryCrossentropy(tf, Reduction.SUM);
Operand<TFloat32> result = bce.call(labels, predictions);
// produces 1.630f
Usando NONE tipo de reducción:
BinaryCrossentropy bce = new BinaryCrossentropy(tf, Reduction.NONE);
Operand<TFloat32> result = bce.call(labels, predictions);
// produces [0.916f, 0.714f]
Constantes
| booleano | FROM_LOGITS_DEFAULT | |
| flotar | LABEL_SMOOTHING_DEFAULT |
Campos heredados
Constructores Públicos
Cruzentropía binaria (Ops tf) Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing y una reducción de pérdida de REDUCTION_DEFAULT | |
BinaryCrossentropy (Ops tf, reducción de reducción ) Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits y LABEL_SMOOTHING_DEFAULT para labelSmoothing. | |
BinaryCrossentropy (Ops tf, booleano deLogits) Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, labelSmoothing de LABEL_SMOOTHING_DEFAULT , una reducción de REDUCTION_DEFAULT . | |
BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits) Crea una pérdida de entropía cruzada binaria utilizando labelSmoothing de LABEL_SMOOTHING_DEFAULT una reducción de REDUCTION_DEFAULT . | |
BinaryCrossentropy (Ops tf, booleano fromLogits, etiqueta flotante Suavizado) Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida y una reducción de REDUCTION_DEFAULT . | |
BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits, etiqueta flotanteSuavizado) Crea una pérdida de entropía cruzada binaria utilizando una reducción de REDUCTION_DEFAULT . | |
BinaryCrossentropy (Ops tf, booleano fromLogits, suavizado de etiquetas flotantes, reducción ) Crea una pérdida de entropía cruzada binaria | |
BinaryCrossentropy (Ops tf, nombre de cadena, booleano fromLogits, etiqueta flotanteSuavizado, reducción de reducción ) Crea una pérdida de entropía cruzada binaria |
Métodos públicos
| <T extiende TNumber > Operando <T> | llamada ( Operando <? extiende etiquetas TNumber >, predicciones de operando <T>, pesos de muestra de operando <T>) Genera un Operando que calcula la pérdida. |
Métodos heredados
Constantes
booleano final estático público FROM_LOGITS_DEFAULT
flotador final estático público LABEL_SMOOTHING_DEFAULT
Constructores Públicos
Cruzentropía binaria pública (Ops tf)
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing y una reducción de pérdida de REDUCTION_DEFAULT
Parámetros
| tf | las operaciones de TensorFlow |
|---|
pública BinaryCrossentropy (Ops tf, reducción de reducción )
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits y LABEL_SMOOTHING_DEFAULT para labelSmoothing.
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| reducción | Tipo de Reducción a aplicar sobre la pérdida. |
pública BinaryCrossentropy (Ops tf, booleano deLogits)
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, labelSmoothing de LABEL_SMOOTHING_DEFAULT , una reducción de REDUCTION_DEFAULT .
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
pública BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits)
Crea una pérdida de entropía cruzada binaria utilizando labelSmoothing de LABEL_SMOOTHING_DEFAULT una reducción de REDUCTION_DEFAULT .
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| nombre | el nombre de la perdida |
| desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
pública BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida y una reducción de REDUCTION_DEFAULT .
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
| etiquetaSuavizado | Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso. |
pública BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits, etiqueta flotanteSmoothing)
Crea una pérdida de entropía cruzada binaria utilizando una reducción de REDUCTION_DEFAULT .
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| nombre | el nombre de la perdida |
| desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
| etiquetaSuavizado | Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso. |
public BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, Reducción de reducción )
Crea una pérdida de entropía cruzada binaria
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
| etiquetaSuavizado | Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso. |
| reducción | Tipo de Reducción a aplicar sobre la pérdida. |
public BinaryCrossentropy (Ops tf, nombre de cadena, booleano fromLogits, etiqueta flotanteSuavizado, reducción de reducción )
Crea una pérdida de entropía cruzada binaria
Parámetros
| tf | las operaciones de TensorFlow |
|---|---|
| nombre | el nombre de la perdida |
| desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
| etiquetaSuavizado | Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso. |
| reducción | Tipo de Reducción a aplicar sobre la pérdida. |
Lanza
| Excepción de argumento ilegal | si labelSmoothing no está en el rango inclusivo de 0. - 1. |
|---|
Métodos públicos
Llamada pública al operando <T> ( el operando <? extiende las etiquetas TNumber >, las predicciones del operando <T>, los pesos de muestra del operando <T>)
Genera un Operando que calcula la pérdida.
Si se ejecuta en modo Gráfico, el cálculo generará TFInvalidArgumentException si los valores de las predicciones están fuera del rango o [0. a 1.]. En modo ansioso, esta llamada generará IllegalArgumentException , si los valores de las predicciones están fuera del rango o [0. a 1.]
Parámetros
| etiquetas | los valores o etiquetas de verdad |
|---|---|
| predicciones | las predicciones, los valores deben estar en el rango [0. a 1.] inclusive. |
| pesos de muestra | SampleWeights opcional actúa como un coeficiente de pérdida. Si se proporciona un escalar, entonces la pérdida simplemente se escala según el valor dado. Si SampleWeights es un tensor de tamaño [batch_size], entonces la pérdida total de cada muestra del lote se vuelve a escalar mediante el elemento correspondiente en el vector SampleWeights. Si la forma de SampleWeights es [batch_size, d0, .. dN-1] (o se puede transmitir a esta forma), entonces cada elemento de pérdida de las predicciones se escala según el valor correspondiente de SampleWeights. (Nota sobre dN-1: todas las funciones de pérdida se reducen en 1 dimensión, generalmente eje = -1). |
Devoluciones
- la perdida
Lanza
| Excepción de argumento ilegal | si las predicciones están fuera del rango [0.-1.]. |
|---|