Top 10 Machine Learning Frameworks for Mobile Apps By James Tredwell on September 15, 2018 In today’s market machine learning and the associated frameworks and toolkits has made it’s way into quite a number of business concepts, eliminating the need for manual & labor-intensive tasks, and being able to make sense of huge amounts of data in almost no time compared to humans. But while we’ve had the possibility to run neural networks on desktop computers and powerful laptops, the raw processing power of smartphones and tablets used to be too low to seriously run algorithms locally. Therefore, building artificial intelligence into mobile applications used to be done with API requests to a more powerful processing server that ran the actual calculations, and then sent back the output data to the mobile to then act upon. This is why we’ve divided up this list into 2 sections, one that deals with mobile specific frameworks optimized for performance and the more solid and larger frameworks designed to be advanced and powerful. Desktop Computer Based Machine Learning Frameworks This is the list for the normal frameworks designed to run on proper hardware, and able to handle extremely large amount of data-sets. Google’s TensorFlow Used by more than half of all machine learning projects on GitHub, this full version of TensorFlow is easily the most popular set of tools for building anything with ML capabilities. With hundreds of addons, plugins and modules from 3rd party developers, it’s possible to do almost anything with this library, including product recommendations, voice and facial recognition, object detection and more. Amazon Machine Learning Another great resource, and coming from Amazon the community is already full at work with developing tutorials, guides and other resources to help developers building complex and advanced AI. With the usual set of features for training neural networks, AML also comes ready to deploy on the AWS cloud, and has a full API for connecting with Alexa or other Amazon services. The community has also made a large number of contributions in terms of examples and addons. Microsoft Cognitive Toolkit From Microsoft, who recently opened a new 5000 man strong office dedicated solely to the advancement of artificial intelligence, comes this powerful toolkit. Especially popular for enterprise-grade applications, all the most popular types of neural networks, such as feed forward neural networks, recurrent- and concurrent neural networks can be developed within the same code. A number of built-in features allows for easy authentication, setup with API’s and server localisation. MXNet The first of two Apache projects on our list, MXNet is a very promising and active framework. It’s even portable meaning you can train data and run the computed sets on any Android or iOS device, as well as running on Linux and Windows computers. With more than 12,000 stars on GitHub, this is one of the most popular frameworks out there, in part because it’s possible to write in different languages such as Python, Rust, Scala, Go and JavaScript, and in part because of the large amount of community content available. MLlib Apache has been quite active in the world of AI and ML. With a number of tools and kits, this is another framework that allows programmers to build smart applications. Designed to be easy to set up on Hadoop or Apache Spark, this library can do much more than just communicate with API’s. Built with performance in mind, it’s possible to do image classification, linear regression, decision trees and much more. Mobile Machine Learning Frameworks Google’s TensorFlow Lite The most complete solution available for free at the moment, TensorFlow Lite is designed from the start to work with Android phones, and some people have also managed to implement the framework on iOS devices. The key features are low latency for real-time image processing, the option for hardware acceleration on Android devices, and quantized kernels which makes the calculations run faster than with the full version of TensorFlow. Caffe2 Originating from Caffe, described above, Caffe2 uses a modular approach to machine learning. This lite edition makes it possible to pick and choose which models and tools is needed for any given project, and thus no extra bloat is added. The main feature though is mobile deployment, allowing developers to run various different neural network computations real-time on the phones. Bender This promising framework has taken a different approach and Apple’s own Core ML. By using the iPhone’s mobile GPU shaders toolkit known as Metal Performance Shaders, the authors have added to this and allows iPhone users to run machine learning algorithms from their GPU, although it’s still mainly used for running pre-trained data, just like Core ML. Quantized-CNN As the name implies, Quantized is a framework for running concurrent neural networks. Boasting only a small loss in accuracy over the much heavier frameworks built for computers, Quantized offers a lightweight solution for image classification running fully on the device. Apple’s Core ML With the popularity for machine learning and mobile applications, Apple launched their Core ML library which allows mobile app developers to train models on powerful computers, and then save the training models on the phone and run their optimized version there. Conclusion For now it appears most large corporations still use API calls to communicate with powerful servers and only send the minimal amount of information back to the smartphone to calculate. So while we’re seeing some lite editions specifically optimized for mobile phones and tablets, we are probably still a few years away from powerful processors capable of running every calculation locally. Author :– Mark has been developing for the web since 2001, always with a penchant for open-source technologies such as PHP. Since 2010 he has been working full time with app development, these days being employed at nodesagency , a leading European app agency. He also regularly contributes to WordPress and other open-source projects.