---
title: "init(i_desc:o_desc:rate:seed:control:)"
framework: accelerate
role: symbol
role_heading: Initializer
path: "accelerate/bnnslayerparametersdropout/init(i_desc:o_desc:rate:seed:control:)"
---

# init(i_desc:o_desc:rate:seed:control:)

Returns a new dropout layer parameters structure from the specified parameters.

## Declaration

```swift
init(i_desc: BNNSNDArrayDescriptor, o_desc: BNNSNDArrayDescriptor, rate: Float, seed: UInt32, control: UInt8)
```

## Parameters

- `i_desc`: The descriptor of the input.
- `o_desc`: The descriptor of the output.
- `rate`: The probability that the layer drops out an element or a group of elements.
- `seed`: The seed for the random number generator that the layer ignores if zero.
- `control`: An 8-bit bit mask that indicates the dimension of the grouping of the dropout decision.

## Discussion

Discussion important: Dropout layers only support arrays with a data type of float. The input shape must be equal to the output shape.

## See Also

### Initializers

- [init()](accelerate/bnnslayerparametersdropout/init().md)
