LRN

Overview

A primitive to perform local response normalization (LRN) across or within channels. More…

// structs

struct dnnl::lrn_backward;
struct dnnl::lrn_forward;

// global functions

dnnl_status_t DNNL_API dnnl_lrn_forward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_prop_kind_t prop_kind,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t src_desc,
    const_dnnl_memory_desc_t dst_desc,
    dnnl_dim_t local_size,
    float alpha,
    float beta,
    float k,
    const_dnnl_primitive_attr_t attr
    );

dnnl_status_t DNNL_API dnnl_lrn_backward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t diff_src_desc,
    const_dnnl_memory_desc_t diff_dst_desc,
    const_dnnl_memory_desc_t src_desc,
    dnnl_dim_t local_size,
    float alpha,
    float beta,
    float k,
    const_dnnl_primitive_desc_t hint_fwd_pd,
    const_dnnl_primitive_attr_t attr
    );

Detailed Documentation

A primitive to perform local response normalization (LRN) across or within channels.

See also:

Local Response Normalization (LRN) in developer guide

Global Functions

dnnl_status_t DNNL_API dnnl_lrn_forward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_prop_kind_t prop_kind,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t src_desc,
    const_dnnl_memory_desc_t dst_desc,
    dnnl_dim_t local_size,
    float alpha,
    float beta,
    float k,
    const_dnnl_primitive_attr_t attr
    )

Creates a primitive descriptor for an LRN forward propagation primitive.

Parameters:

primitive_desc

Output primitive_descriptor.

engine

Engine to use.

prop_kind

Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference.

alg_kind

LRN algorithm kind: either dnnl_lrn_across_channels or dnnl_lrn_within_channel.

src_desc

Source memory descriptor.

dst_desc

Destination memory descriptor.

local_size

Regularization local size.

alpha

The alpha regularization parameter.

beta

The beta regularization parameter.

k

The k regularization parameter.

attr

Primitive attributes (can be NULL).

Returns:

dnnl_success on success and a status describing the error otherwise.

dnnl_status_t DNNL_API dnnl_lrn_backward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t diff_src_desc,
    const_dnnl_memory_desc_t diff_dst_desc,
    const_dnnl_memory_desc_t src_desc,
    dnnl_dim_t local_size,
    float alpha,
    float beta,
    float k,
    const_dnnl_primitive_desc_t hint_fwd_pd,
    const_dnnl_primitive_attr_t attr
    )

Creates a primitive descriptor for an LRN backward propagation primitive.

Parameters:

primitive_desc

Output primitive_descriptor.

engine

Engine to use.

alg_kind

LRN algorithm kind: either dnnl_lrn_across_channels or dnnl_lrn_within_channel.

diff_src_desc

Diff source memory descriptor.

diff_dst_desc

Diff destination memory descriptor.

src_desc

Source memory descriptor.

local_size

Regularization local size.

alpha

The alpha regularization parameter.

beta

The beta regularization parameter.

k

The k regularization parameter.

hint_fwd_pd

Primitive descriptor for a respective forward propagation primitive.

attr

Primitive attributes (can be NULL).

Returns:

dnnl_success on success and a status describing the error otherwise.