vittoriom / Swift-AI

Highly optimized Artificial Intelligence and Machine Learning library written in Swift.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Swift AI Banner

Swift AI is a high-performance AI and Machine Learning library written entirely in Swift. We currently support iOS and OS X, with support for more platforms coming soon!

Features

Swift AI includes a set of common tools used for machine learning and artificial intelligence research. These tools are designed to be flexible, powerful and suitable for a wide range of applications.

  • Feed-Forward Neural Network
    • 3-layer network with options for customization.
    • Example projects for iOS and OS X.
  • Recurrent Neural Network
  • Convolutional Network
  • GPU-Accelerated Networks
  • Genetic Algorithms
  • Fast Matrix Library
    • Matrix class with common operators
    • SIMD-accelerated operations
  • Fourier Transform Functions

Usage and Examples

We've created example projects to demonstrate the usage and potential applications of Swift AI:

  • iOS:
    • 2D function regression (feed-forward neural network)
    • Handwriting recognition (feed-forward neural network)
    • Evolution simultaion (genetic algorithm)
  • OS X:
    • XOR logic gate modeling (feed-forward neural network)
    • 2D function regression (feed-forward neural network)
  • Swift Playground:
    • Graphing - used in conjunction with OS X regression examples

Installation

Grab the files you need, drag them into your project. That was easy!

Why don't we use CocoaPods/Carthage?

Swift is open-source now, and it remains to be seen how these dependency managers will cooperate with other platforms.

A better alternative will probably be the Swift Package Manager.

Compatibility

Swift AI currently depends on Apple's Accelerate framework for vector/matrix calculations and digital signal processing.

In order to provide support for more platforms (Linux, Windows, etc.), alternative BLAS solutions are being considered. A vanilla Swift implementation is one possibility, but SIMD instructions will be preferred for their significant performance boost. Check back for more updates on this soon.

Care Enough to Donate?

Take a little, give a little. I don't usually like handouts, but time is a big constraint. More donations = less contract work = more time building great open-source projects!

What good will my money do?

Your donation will help a college student get through school, and give you a warm, fuzzy feeling. Every contribution is appreciated.

Donate

About

Highly optimized Artificial Intelligence and Machine Learning library written in Swift.

License:MIT License


Languages

Language:Swift 100.0%