Will Tensorflow for Swift be a Machine Learning Framework on Android and iPhone?
There were over a billion iPhones and Android smartphones sold in 2018 worldwide. There are about 1.8 million apps in iStore. There are 270,000 iStore developers. Many of the iStore developer’s program in Swift.
Most of the world’s Machine Learning research and Web-based deployment currently occur on PyTorch and Tensorflow. The economic payoff will be huge if one or both of them deploy on smartphones.
Google’s Tensorflow for Swift Project
Swift is a statically typed language. Benchmarks show that compiled it is almost as fast as GNU C and GNU C++.
Tensorflow for Python is the leading open-source machine learning platform.
Python is an excellent language for development. It is dynamically-typed, interpretative, but about 10x slower than Swift. It is not ideal for production rollout.
Chris Lattner, the creator of LLVM, states:
Swift for TensorFlow: Swift for TensorFlow rethinks machine learning development by opening the programming language to extension and change — allowing us to solve old problems in new ways. This project includes a combination of compiler, runtime, and programming language design and implementation work. I imagined, advocated for, coded the initial prototype and many of the subsystems after that; recruited, hired and trained an exceptional engineering team; we drove it to an open source launch as well as many subsequent milestones (including internal launches that I cannot discuss).
Chris Lattner maybe not be a Deep Learner researcher, but arguably is one of the best language and compiler professionals to lead Swift for TensorFlow.
Some facts to consider about Apple and Google and the trend to exploit Machine Learning
The GPU chip is critical to the performance of Machine Learning. The release of the A13/12 Bionic GPU has the fastest GPU for the iPhone. It is 2x-4x faster than the Nvidia Tegra X1 Maxwell GPU.
Smartphone Graphics Cards - Benchmark List
Sort and filter through all currently available smartphone and tablet graphics cards by performance or specification.
Apple's Imagination Technologies deal is all about ray tracing and AR
Apple sent Imagination Technologies' stock into a tailspin when it decided in 2017 to end its licensing contract with…
Intel's latest acquisition is a $2 billion push into AI
Habana Labs makes programmable deep learning accelerators. Its Gaudi AI Training Processor, for instance, is expected…
Google Translate, Gmail, and Maps are well-known apps enhanced with Machine Learning neural nets.
iPhone and iTablet use Machine Learning in text-to-speech and Siri.
Facebook uses Machine Learning to detect fake news and fake images.
Netflix, Amazon, HBO, Home Depot, Disney, Zillow, Tinder, Snapchat, and other sites (I am not going to name them because of NDA) and almost any consumer service site are using Recommendation Engines.
What happens when Machine Learning is prevalent on your smartphone?
What happens if you had a Recommendation engine on your iPhone or Android phone? One obvious benefit is you could now keep your preference data (private to the 1st order).
What is apparent is that in the future, only you could retain your data and perhaps (non-obvious option) sell this data.
Another non-obvious item is that Machine Learners on your smartphone silently forward your data. Hopefully, there will be an on/off toggle for this “feature. “
Just think if you had outlier detection on your smartphone — it could learn your behavioral patterns. It can catch your mistakes before you execute them.
Your smartphone will adapt and learn with Reinforcement Learning. It will create personalization at such a level that it will anticipate your intent.
There is tremendous pressure to put current and future Machine Learning frameworks such as Tensorflow on smartphones. Already, GPU hardware is being put into these smartphones. You can expect Apple’s iPhone and google’s Android offerings to grow and evolve in the future.
Some blog posts that might interest you.
Build a Taylor Swift detector with the TensorFlow Object Detection API, ML Engine, and Swift
Note: as of this writing there is no official TensorFlow library for Swift, I used Swift to build the client app for…
Will Swift take over Python as the go to language for ML?
Machine Learning in swift why, what, how
An Overview of Convolutional Neural Networks, Swift, and iOS 12
I recently did a talk for the Swift User Group at Lyft last week, covering some of the challenges that come up when…
I have learned and wrote applications in Fortran, Lisp, C, PL/1, SQL, C++, Java, and Python.
The next language I am learning is Swift. I am betting that Swift will be to the smartphone, what Java is to the enterprise.
The primary point for me is the attraction of developing in one language for several hardware platforms, especially when the language has Apple behind it with a large number of supporting tools.