# tensorflow::ops::LRN Class Reference

# tensorflow::ops::LRN

`#include <nn_ops.h>`

Local Response Normalization.

## Summary

The 4-D `input` tensor is treated as a 3-D array of 1-D vectors (along the last dimension), and each vector is normalized independently. Within a given vector, each component is divided by the weighted, squared sum of inputs within `depth_radius`. In detail,

```
sqr_sum[a, b, c, d] =
    sum(input[a, b, c, d - depth_radius : d + depth_radius + 1] ** 2)
output = input / (bias + alpha * sqr_sum) ** beta
```

<br />

For details, see [Krizhevsky et al., ImageNet classification with deep convolutional neural networks (NIPS 2012)](http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks).

Arguments:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- input: 4-D.

<br />

Optional attributes (see `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs#structtensorflow_1_1ops_1_1_l_r_n_1_1_attrs`):

- depth_radius: 0-D. Half-width of the 1-D normalization window.
- bias: An offset (usually positive to avoid dividing by 0).
- alpha: A scale factor, usually positive.
- beta: An exponent.

<br />

Returns:

- `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output`: The output tensor.

<br />

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1adbadf9462bc6ae9916f535bb2aa2762f(const ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input input)` ||
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1ab702d3657c46710fcf7a63f7c712c5df(const ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input input, const https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs#structtensorflow_1_1ops_1_1_l_r_n_1_1_attrs & attrs)` ||

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1a001e6e41e5fb3ff78b42decdd680ea82` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1a69396918e55e1de00f68a1113ef173b0` | `::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1aa28d07232c5df13dad811653f1276a2a() const ` | `::tensorflow::Node *` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1aa00d48e5a8ca805aa2532b7155b8c28b() const ` | ` `` ` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1ae58da447d50c92abb12785d8ab7b618b() const ` | ` `` ` |

| ### Public static functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1a7788a93182ddfbf8bb5bd1820b081392(float x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs#structtensorflow_1_1ops_1_1_l_r_n_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1a6bbb26306e2265f6e2368f5dfb39ef13(float x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs#structtensorflow_1_1ops_1_1_l_r_n_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1ac8da24639c0d90ef6e68df756f3e345f(float x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs#structtensorflow_1_1ops_1_1_l_r_n_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n_1ac579054901f30ab7fd4989ca39237a0e(int64 x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs#structtensorflow_1_1ops_1_1_l_r_n_1_1_attrs` |

| ### Structs ||
|---|---|
| [tensorflow::ops::LRN::Attrs](https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/l-r-n/attrs) | Optional attribute setters for [LRN](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/l-r-n#classtensorflow_1_1ops_1_1_l_r_n). |

## Public attributes

### operation

```
Operation operation
```

### output

```
::tensorflow::Output output
```

## Public functions

### LRN

```
 LRN(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input
)
```

### LRN

```
 LRN(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  const LRN::Attrs & attrs
)
```

### node

```
::tensorflow::Node * node() const 
```

### operator::tensorflow::Input

```
 operator::tensorflow::Input() const 
```

### operator::tensorflow::Output

```
 operator::tensorflow::Output() const 
```

## Public static functions

### Alpha

```
Attrs Alpha(
  float x
)
```

### Beta

```
Attrs Beta(
  float x
)
```

### Bias

```
Attrs Bias(
  float x
)
```

### DepthRadius

```
Attrs DepthRadius(
  int64 x
)
```