---
title: BNNSOptimizerFunction
framework: accelerate
role: symbol
role_heading: Structure
path: accelerate/bnnsoptimizerfunction
---

# BNNSOptimizerFunction

A structure that contains optimizer functions.

## Declaration

```swift
struct BNNSOptimizerFunction
```

## Topics

### Adam Optimizer Functions

- [BNNSOptimizerFunctionAdam](accelerate/bnnsoptimizerfunctionadam.md)
- [BNNSOptimizerFunctionAdamWithClipping](accelerate/bnnsoptimizerfunctionadamwithclipping.md)
- [BNNSOptimizerFunctionAdamAMSGrad](accelerate/bnnsoptimizerfunctionadamamsgrad.md)
- [BNNSOptimizerFunctionAdamAMSGradWithClipping](accelerate/bnnsoptimizerfunctionadamamsgradwithclipping.md)

### AdamW Optimizer Functions

- [BNNSOptimizerFunctionAdamW](accelerate/bnnsoptimizerfunctionadamw.md)
- [BNNSOptimizerFunctionAdamWWithClipping](accelerate/bnnsoptimizerfunctionadamwwithclipping.md)
- [BNNSOptimizerFunctionAdamWAMSGrad](accelerate/bnnsoptimizerfunctionadamwamsgrad.md)
- [BNNSOptimizerFunctionAdamWAMSGradWithClipping](accelerate/bnnsoptimizerfunctionadamwamsgradwithclipping.md)

### RMSProp Optimizer Functions

- [BNNSOptimizerFunctionRMSProp](accelerate/bnnsoptimizerfunctionrmsprop.md)
- [BNNSOptimizerFunctionRMSPropWithClipping](accelerate/bnnsoptimizerfunctionrmspropwithclipping.md)

### SGD  Optimizer Functions

- [BNNSOptimizerFunctionSGDMomentum](accelerate/bnnsoptimizerfunctionsgdmomentum.md)
- [BNNSOptimizerFunctionSGDMomentumWithClipping](accelerate/bnnsoptimizerfunctionsgdmomentumwithclipping.md)

### Raw Values

- [rawValue](accelerate/bnnsoptimizerfunction/rawvalue.md)
- [init(_:)](accelerate/bnnsoptimizerfunction/init(_:).md)
- [init(rawValue:)](accelerate/bnnsoptimizerfunction/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)

## See Also

### Optimizers

- [BNNS.AdamOptimizer](accelerate/bnns/adamoptimizer.md)
- [BNNS.AdamWOptimizer](accelerate/bnns/adamwoptimizer.md)
- [BNNS.RMSPropOptimizer](accelerate/bnns/rmspropoptimizer.md)
- [BNNS.SGDMomentumOptimizer](accelerate/bnns/sgdmomentumoptimizer.md)
- [BNNSOptimizer](accelerate/bnnsoptimizer.md)
- [BNNSOptimizerRegularizationFunction](accelerate/bnnsoptimizerregularizationfunction.md)
- [BNNSOptimizerAdamFields](accelerate/bnnsoptimizeradamfields.md)
- [BNNSOptimizerAdamWithClippingFields](accelerate/bnnsoptimizeradamwithclippingfields.md)
- [BNNSOptimizerRMSPropFields](accelerate/bnnsoptimizerrmspropfields.md)
- [BNNSOptimizerRMSPropWithClippingFields](accelerate/bnnsoptimizerrmspropwithclippingfields.md)
- [BNNSOptimizerSGDMomentumFields](accelerate/bnnsoptimizersgdmomentumfields.md)
- [BNNSOptimizerSGDMomentumWithClippingFields](accelerate/bnnsoptimizersgdmomentumwithclippingfields.md)
- [BNNSOptimizerSGDMomentumVariant](accelerate/bnnsoptimizersgdmomentumvariant.md)
- [BNNSOptimizerStep(_:_:_:_:_:_:_:)](accelerate/bnnsoptimizerstep(_:_:_:_:_:_:_:).md)
