CategoricalCrossentropy

lớp công khai Phân loạiCrossentropy

Tính toán tổn thất entropy chéo giữa các nhãn và dự đoán.

Sử dụng hàm mất entropy chéo này khi có hai hoặc nhiều lớp nhãn. Chúng tôi mong đợi các nhãn sẽ được cung cấp ở dạng one_hot. Nếu bạn muốn cung cấp nhãn dưới dạng số nguyên, vui lòng sử dụng tính năng mất SparseCategoricalCrossentropy . Cần có # classes giá trị dấu phẩy động cho mỗi đối tượng.

Cách sử dụng độc lập:

    Operand<TFloat32> labels =
        tf.constant(new float[][] { {0, 1, 0}, {0, 0, 1} });
    Operand<TFloat32> predictions =
        tf.constant(new float[][] { {0.05f, 0.95f, 0f}, {0.1f, 0.8f, 0.1f} });
    CategoricalCrossentropy cce = new CategoricalCrossentropy(tf);
    Operand<TFloat32> result = cce.call(labels, predictions);
    // produces 1.177
 

Gọi với trọng lượng mẫu:

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f});
    Operand<TFloat32> result = cce.call(labels, predictions, sampleWeight);
    // produces 0.814f
 

Sử dụng loại giảm SUM :

    CategoricalCrossentropy cce = new CategoricalCrossentropy(tf, Reduction.SUM);
    Operand<TFloat32> result = cce.call(labels, predictions);
    // produces 2.354f
 

Sử dụng loại giảm NONE :

    CategoricalCrossentropy cce =
        new CategoricalCrossentropy(tf, Reduction.NONE);
    Operand<TFloat32> result = cce.call(labels, predictions);
    // produces [0.0513f, 2.303f]
 

Hằng số

int DEFAULT_AXIS
boolean FROM_LOGITS_DEFAULT
trôi nổi LABEL_SMOOTHING_DEFAULT

Trường kế thừa

Nhà xây dựng công cộng

Phân loạiCrossentropy (Ops tf)
Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho nhãn Làm mịn, Giảm tổn thất là REDUCTION_DEFAULT và trục DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, Tên chuỗi)
Tạo Mất entropy chéo được phân loại bằng cách sử dụng FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho làm mịn nhãn, Giảm tổn thất là REDUCTION_DEFAULT và trục DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, Giảm thiểu )
Tạo mất mát entropy chéo phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho nhãn Làm mịn và trục DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, Tên chuỗi, Giảm thiểu)
Tạo mức mất entropy chéo được phân loại FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho làm mịn nhãn và trục DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, boolean fromLogits)
Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, LABEL_SMOOTHING_DEFAULT cho làm mịn nhãn, Giảm tổn thất là REDUCTION_DEFAULT và trục DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, Tên chuỗi, boolean fromLogits)
Tạo Mất entropy chéo được phân loại bằng cách sử dụng LABEL_SMOOTHING_DEFAULT để làm mịn nhãn, Giảm tổn thất là REDUCTION_DEFAULT và trục kênh là DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)
Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, Giảm tổn thất là REDUCTION_DEFAULT và trục kênh là DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, Tên chuỗi, boolean fromLogits, nhãn floatLàm mịn)
Tạo Mất mát entropy chéo được phân loại bằng cách sử dụng Giảm tổn thất REDUCTION_DEFAULT và trục kênh DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, boolean fromLogits, nhãn floatLàm mịn, Giảm giảm)
Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát và trục kênh của DEFAULT_AXIS
Phân loạiCrossentropy (Ops tf, Tên chuỗi, boolean fromLogits, nhãn floatLàm mịn, Giảm thiểu, trục int)
Tạo ra một sự mất mát entropy chéo phân loại

Phương pháp công khai

<T mở rộng TNumber > Toán hạng <T>
gọi ( Toán hạng <? mở rộng TNumber > nhãn, dự đoán Toán hạng <T>, Trọng lượng mẫu Toán hạng <T>)
Tạo một toán hạng tính toán tổn thất.

Phương pháp kế thừa

Hằng số

int tĩnh cuối cùng DEFAULT_AXIS

Giá trị không đổi: -1

boolean tĩnh cuối cùng công khai FROM_LOGITS_DEFAULT

Giá trị không đổi: sai

float cuối cùng tĩnh công khai LABEL_SMOOTHING_DEFAULT

Giá trị không đổi: 0,0

Nhà xây dựng công cộng

công khai Phân loạiCrossentropy (Ops tf)

Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho nhãn Làm mịn, Giảm tổn thất là REDUCTION_DEFAULT và trục DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow

public CategoricalCrossentropy (Ops tf, Tên chuỗi)

Tạo Mất entropy chéo được phân loại bằng cách sử dụng FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho làm mịn nhãn, Giảm tổn thất là REDUCTION_DEFAULT và trục DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
tên tên của sự mất mát này

công khai Phân loạiCrossentropy (Ops tf, Giảm thiểu )

Tạo mất mát entropy chéo phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho nhãn Làm mịn và trục DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
sự giảm bớt Loại Giảm áp dụng cho tổn thất.

public CategoricalCrossentropy (Ops tf, Tên chuỗi, Giảm thiểu)

Tạo mức mất entropy chéo được phân loại FROM_LOGITS_DEFAULT cho fromLogits, LABEL_SMOOTHING_DEFAULT cho làm mịn nhãn và trục DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
tên tên của sự mất mát này
sự giảm bớt Loại Giảm áp dụng cho tổn thất.

công khai CategoricalCrossentropy (Ops tf, boolean fromLogits)

Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, LABEL_SMOOTHING_DEFAULT cho làm mịn nhãn, Giảm tổn thất là REDUCTION_DEFAULT và trục DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
từNhật ký Có nên diễn giải các dự đoán dưới dạng tenxơ của các giá trị logit hay không

public CategoricalCrossentropy (Ops tf, Tên chuỗi, boolean fromLogits)

Tạo Mất entropy chéo được phân loại bằng cách sử dụng LABEL_SMOOTHING_DEFAULT để làm mịn nhãn, Giảm tổn thất là REDUCTION_DEFAULT và trục kênh là DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
tên tên của sự mất mát này
từNhật ký Có nên diễn giải các dự đoán dưới dạng tenxơ của các giá trị logit hay không

public CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)

Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát, Giảm tổn thất là REDUCTION_DEFAULT và trục kênh là DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
từNhật ký Có nên diễn giải các dự đoán dưới dạng tenxơ của các giá trị logit hay không
nhãnLàm mịn Nổi trong [0, 1] . Khi > 0 , các giá trị nhãn được làm mịn, nghĩa là độ tin cậy trên các giá trị nhãn được giảm bớt. ví dụ: labelSmoothing=0.2 có nghĩa là chúng tôi sẽ sử dụng giá trị 0.1 cho nhãn 00.9 cho nhãn 1

public CategoricalCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing)

Tạo Mất mát entropy chéo được phân loại bằng cách sử dụng Giảm tổn thất REDUCTION_DEFAULT và trục kênh DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
tên tên của sự mất mát này
từNhật ký Có nên diễn giải các dự đoán dưới dạng tenxơ của các giá trị logit hay không
nhãnLàm mịn Nổi trong [0, 1] . Khi > 0 , các giá trị nhãn được làm mịn, nghĩa là độ tin cậy trên các giá trị nhãn được giảm bớt. ví dụ: labelSmoothing=0.2 có nghĩa là chúng tôi sẽ sử dụng giá trị 0.1 cho nhãn 00.9 cho nhãn 1

public CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelLàm mịn, Giảm thiểu)

Tạo Mất entropy chéo được phân loại bằng cách sử dụng getSimpleName() làm tên mất mát và trục kênh của DEFAULT_AXIS

Thông số
tf hoạt động của TensorFlow
từNhật ký Có nên diễn giải các dự đoán dưới dạng tenxơ của các giá trị logit hay không
nhãnLàm mịn Nổi trong [0, 1] . Khi > 0 , các giá trị nhãn được làm mịn, nghĩa là độ tin cậy trên các giá trị nhãn được giảm bớt. ví dụ: x=0.2 có nghĩa là chúng tôi sẽ sử dụng giá trị 0.1 cho nhãn 00.9 cho nhãn 1
sự giảm bớt Loại Giảm áp dụng cho tổn thất.

public CategoricalCrossentropy (Ops tf, Tên chuỗi, boolean fromLogits, nhãn floatLàm mịn, Giảm thiểu, trục int)

Tạo ra một sự mất mát entropy chéo phân loại

Thông số
tf hoạt động của TensorFlow
tên tên của sự mất mát này
từNhật ký Có nên diễn giải các dự đoán dưới dạng tenxơ của các giá trị logit hay không
nhãnLàm mịn Nổi trong [0, 1] . Khi > 0 , các giá trị nhãn được làm mịn, nghĩa là độ tin cậy trên các giá trị nhãn được giảm bớt. ví dụ: labelSmoothing=0.2 có nghĩa là chúng tôi sẽ sử dụng giá trị 0.1 cho nhãn 00.9 cho nhãn 1
sự giảm bớt Loại Giảm áp dụng cho tổn thất.
trục Trục kênh. axis=-1 tương ứng với định dạng dữ liệu "Kênh cuối cùng" và axis=1 tương ứng với định dạng dữ liệu "Kênh đầu tiên". CHANNELS_LASTCHANNELS_FIRST
Ném
Ngoại lệ Đối số bất hợp pháp nếu nhãn Làm mịn không nằm trong phạm vi bao gồm 0. - 1.

Phương pháp công khai

lệnh gọi Toán hạng công khai <T> ( Toán hạng <? mở rộng nhãn TNumber >, dự đoán Toán hạng <T>, Toán hạng <T> sampleWeights)

Tạo một toán hạng tính toán tổn thất.

Nếu chạy ở chế độ Biểu đồ, quá trình tính toán sẽ đưa ra TFInvalidArgumentException nếu các giá trị dự đoán nằm ngoài phạm vi o [0. đến 1.]. Trong Chế độ háo hức, lệnh gọi này sẽ đưa ra IllegalArgumentException , nếu các giá trị dự đoán nằm ngoài phạm vi o [0. đến 1.]

Thông số
nhãn các giá trị thật hoặc nhãn
phỏng đoán dự đoán, giá trị phải nằm trong khoảng [0. đến 1.] bao gồm.
mẫuTrọng lượng Khối lượng mẫu tùy chọn đóng vai trò như một hệ số hao hụt. Nếu một đại lượng vô hướng được cung cấp thì tổn thất chỉ được tính theo giá trị đã cho. Nếu SampleWeights là một tenxơ có kích thước [batch_size] thì tổng tổn thất cho mỗi mẫu của lô sẽ được điều chỉnh lại tỷ lệ theo phần tử tương ứng trong vectơ SampleWeights. Nếu hình dạng của SampleWeights là [batch_size, d0, .. dN-1] (hoặc có thể được phát tới hình dạng này), thì mỗi phần tử tổn thất của dự đoán sẽ được chia tỷ lệ theo giá trị tương ứng của SampleWeights. (Lưu ý trên dN-1: tất cả các hàm mất mát đều giảm đi 1 chiều, thường là trục=-1.)
Trả lại
  • sự mất mát
Ném
Ngoại lệ Đối số bất hợp pháp nếu dự đoán nằm ngoài phạm vi [0.-1.].