What is Bender?

Bender is an abstraction layer over MetalPerformanceShaders which is used to work with neural networks. It is of growing interest in the AI environment to execute neural networks on mobile devices even if the training process has been done previously. We want to make it easier for everyone to execute pretrained networks on iOS.

Bender allows you to easily define and run neural networks using the most common layers like Convolution, Pooling, FullyConnected and some normalizations among others. It is also flexible in the way it receives the parameters for these layers.

We also want to support loading models trained on other frameworks such as TensorFlow or Caffe2. Currently Bender includes an adapter for TensorFlow that loads a graph with variables and “translates” it to Bender layers. This feature supports a subset of TensorFlow’s operations but we plan to enhance it to cover more cases.

Overview

  • Pricing: Free
  • Resource Link: https://github.com/xmartlabs/Bender
  • Resource Maker on Twitter: xmartlabs
  • Mobile Platform Destination: iOS Apps
  • Mobile Platform Support: Native iOS
  • Programming Languages: Swift
  • iOS Versions Supported: iOS 10.0+, iOS 11.0+, iOS 12.0+
  • CocoaPods: MetalBender
  • Carthage: xmartlabs/Bender