---
title: BNNS.UnaryLayer
framework: accelerate
role: symbol
role_heading: Class
path: accelerate/bnns/unarylayer
---

# BNNS.UnaryLayer

The base class for layers that accept a single input.

## Declaration

```swift
class UnaryLayer
```

## Topics

### Applying a Unary Layer

- [apply(batchSize:input:output:)](accelerate/bnns/unarylayer/apply(batchsize:input:output:).md)
- [applyBackward(batchSize:input:output:outputGradient:generatingInputGradient:)](accelerate/bnns/unarylayer/applybackward(batchsize:input:output:outputgradient:generatinginputgradient:).md)

## Relationships

### Inherits From

- [BNNS.Layer](accelerate/bnns/layer.md)

### Inherited By

- [BNNS.ActivationLayer](accelerate/bnns/activationlayer.md)
- [BNNS.ConvolutionLayer](accelerate/bnns/convolutionlayer.md)
- [BNNS.DropoutLayer](accelerate/bnns/dropoutlayer.md)
- [BNNS.GramLayer](accelerate/bnns/gramlayer.md)
- [BNNS.PaddingLayer](accelerate/bnns/paddinglayer.md)
- [BNNS.PermuteLayer](accelerate/bnns/permutelayer.md)
- [BNNS.ReductionLayer](accelerate/bnns/reductionlayer.md)
- [BNNS.ResizeLayer](accelerate/bnns/resizelayer.md)

## See Also

### Base Classes

- [BNNS.Layer](accelerate/bnns/layer.md)
- [BNNS.BinaryLayer](accelerate/bnns/binarylayer.md)
