---
title: "ClikaRT::nn::CrossEntropyLossOptions"
sidebar_label: "CrossEntropyLossOptions"
description: "Settings of CrossEntropyLoss: chain the setters, or assign the fields."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--struct">struct</span>

**Header:** `ClikaRT/nn/generated/loss.h`

Settings of [`CrossEntropyLoss`](./CrossEntropyLoss.md): chain the setters, or assign the fields.

## Member functions

### weight(OptionalTensor) {#weight}

<div class="api-signature">

[`CrossEntropyLossOptions`](./CrossEntropyLossOptions.md)`&` **`weight`**([`OptionalTensor`](../../index.md#OptionalTensor) `v`)

</div>

Sets [`weight`](./CrossEntropyLossOptions.md#weight), a per-class weight `[C]`; unset weighs every class 1.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 370

</div>

### weight() {#weight-2}

<div class="api-signature">

`const` [`OptionalTensor`](../../index.md#OptionalTensor)`&` **`weight`**() `const`

</div>

Reads [`weight`](./CrossEntropyLossOptions.md#weight).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 375

</div>

### ignore\_index(optional\<int64\_t\>) {#ignore_index}

<div class="api-signature">

[`CrossEntropyLossOptions`](./CrossEntropyLossOptions.md)`&` **`ignore_index`**(`std::optional<std::int64_t>` `v`)

</div>

Sets [`ignore_index`](./CrossEntropyLossOptions.md#ignore_index), a target value whose positions contribute no loss; unset masks nothing.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 381

</div>

### ignore\_index() {#ignore_index-2}

<div class="api-signature">

`const std::optional<std::int64_t>&` **`ignore_index`**() `const`

</div>

Reads [`ignore_index`](./CrossEntropyLossOptions.md#ignore_index).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 386

</div>

### reduction(ops::Reduction) {#reduction}

<div class="api-signature">

[`CrossEntropyLossOptions`](./CrossEntropyLossOptions.md)`&` **`reduction`**([`ops::Reduction`](../ops/index.md#Reduction) `v`)

</div>

Sets [`reduction`](./CrossEntropyLossOptions.md#reduction), how the per-position losses reduce.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 392

</div>

### reduction() {#reduction-2}

<div class="api-signature">

[`ops::Reduction`](../ops/index.md#Reduction) **`reduction`**() `const`

</div>

Reads [`reduction`](./CrossEntropyLossOptions.md#reduction).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 394

</div>

## Data members

### weight\_ {#weight_}

<div class="api-signature">

[`OptionalTensor`](../../index.md#OptionalTensor) **`weight_`** `= {}`

</div>

A per-class weight `[C]`; unset weighs every class 1. Default `{}`.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 377

</div>

### ignore\_index\_ {#ignore_index_}

<div class="api-signature">

`std::optional<std::int64_t>` **`ignore_index_`** `= std::nullopt`

</div>

A target value whose positions contribute no loss; unset masks nothing. Default `std::nullopt`.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 389

</div>

### reduction\_ {#reduction_}

<div class="api-signature">

[`ops::Reduction`](../ops/index.md#Reduction) **`reduction_`** `=` [`ops::Reduction::Mean`](../ops/index.md#Reduction)

</div>

How the per-position losses reduce. Default [`ops::Reduction::Mean`](../ops/index.md#Reduction).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/loss.h`, line 396

</div>
