---
title: "ClikaRT::nn::GroupNormOptions"
sidebar_label: "GroupNormOptions"
description: "Construction settings of GroupNorm beyond the group and channel counts (a plain aggregate; assign the fields you need)."
---

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

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

**Header:** `ClikaRT/nn/group_norm.h`

Construction settings of [`GroupNorm`](./GroupNorm.md) beyond the group and channel counts (a plain aggregate; assign the fields you need).

## Data members

### eps {#eps}

<div class="api-signature">

`double` **`eps`** `= 1e-5`

</div>

Added to the variance before the square root. Default `1e-5`.

<div class="api-declared">

Declared in `ClikaRT/nn/group_norm.h`, line 42

</div>

### affine {#affine}

<div class="api-signature">

`bool` **`affine`** `= true`

</div>

Declares the per-channel `weight` (scale) and `bias` (shift) parameters. Default `true`.

<div class="api-declared">

Declared in `ClikaRT/nn/group_norm.h`, line 45

</div>

### activation {#activation}

<div class="api-signature">

`std::optional<`[`ops::Activation`](../ops/index.md#Activation)`>` **`activation`**

</div>

A fused activation applied to the normalized result; absent applies none.

<div class="api-declared">

Declared in `ClikaRT/nn/group_norm.h`, line 48

</div>

### dtype {#dtype}

<div class="api-signature">

[`DataType`](../../index.md#DataType) **`dtype`** `=` [`DataType::Float32`](../../index.md#DataType)

</div>

The dtype the declared slots carry; a bound payload casts to it. Default `Float32`.

<div class="api-declared">

Declared in `ClikaRT/nn/group_norm.h`, line 51

</div>

### device {#device}

<div class="api-signature">

[`Device`](../Device.md) **`device`** `=` [`Device::cpu`](../Device.md#cpu)`()`

</div>

The placement of the declared slots. Default cpu.

<div class="api-declared">

Declared in `ClikaRT/nn/group_norm.h`, line 53

</div>
