We live and work in the era of “Software 2.0”, when artificial intelligence (AI) technologies are widely used in desktop and mobile application development. According to a Gartner report, 85 percent of customer interactions in 2020 are non-human. Artificial neural networks (ANNs), advanced analytics based on big data, machine learning (ML), and deep learning change the way of creating and functioning digital products and their users’ lives.
However, AI app development is one of the most time-consuming tasks in the software industry. It takes software engineers, data scientists, and others’ collective effort to make the finished product cost-effective, customer-centric, and truly innovative.
We have compiled a consolidated guide that will introduce you to the main challenges, technical aspects of development and help you figure out how to create an AI application — from scratch to success.
How AI Gains a Foothold in the Mobile App Market?
Android and iOS apps that use AI have long been the object of scrutiny from startups and company owners. The market value of AI is estimated to have exceeded US$17 billion at the end of 2020 (globally) and will be around US$90 billion by 2025. The number of companies adopting artificial intelligence solutions is growing at 37 percent a year. Even giants like Google proclaim that “AI is first.”
Among all areas of artificial intelligence, machine and deep learning are of particular interest. The Relevancy Group found that 38 percent of top executives chose ML to build data management platforms. More than 70 percent of US companies have exceeded target sales due to the introduction of machine learning. Other relevant AI applications are text and image recognition, identification and automatic detection of objects (including geophysical ones), and client analytics.
Depending on the complexity and purpose, different types of artificial intelligence can be used in mobile apps: narrow, general, and super (so-called NAI, AIG, and ASI). These solutions are most actively developed and implemented in the following industries:
- B2C business. Customer-focused organizations are forced to adopt AI in one way or another to keep up with the competition. Analytics and CRM platforms are using ML to collect data and analyze user profiles. AI-powered chatbots are increasingly replacing call center employees, reducing staff costs, and improving customer satisfaction.
- Manufacturing. Industrial companies are at the forefront of introducing robots into the workflow. AI helps automate and optimize tasks previously performed by humans, increasing production volumes and reducing labor costs.
- Healthcare. ML algorithms are used in most medical and health insurance applications. AI helps doctors make better diagnoses (including remotely, which has become crucial in 2020) and predict patient outcomes. Chatbots make it easy to schedule appointments, give users answers to general questions, and even provide basic virtual diagnostics.
- E-Learning. AI tools automate grading, allowing teachers to focus on key aspects of education. Innovative apps use AR/VR experience to visualize content, assess students as they learn, and help them work at their pace. Among the AI products, there are even digital tutors that make it easier to adapt to the learning environment.
The Best Mobile Apps that Use AI
We’ll provide examples from different areas to give you a better idea of what the artificial intelligence app is capable of.
Virtual voice assistants are one of the most well-known artificial intelligence implementations. Almost all the most significant digital companies have developed their system: Microsoft has Cortana, Google offers Google Assistant, and Amazon answers their challenge with Alexa.
Siri is an Apple product that embodies all the features and benefits of AI-powered voice assistants. It is one of the most used apps available on macOS, tvOS, and all iOS gadgets, including wearables. The assistants’ functioning is based on a natural language user interface (UI). The app can:
- Make and answer calls,
- Answer queries and do the internet search, and
- Offer recommendations and adapt to the user’s language or preferences.
Of course, to reach all these features (and even more functions), you must have an Apple product because Siri doesn’t run Android and other similar platforms.
A popular education app that helps learn English and put the proper accent is based on AI tools such as voice recognition and machine learning. It self-learns from speech data, continuously improves the users’ pronunciation, and gives instant feedback.
Voice recognition implementation is aimed to listen to students’ speaking in short dialogs, define the accent, and mark it green, yellow, or red depending on the level. The app also:
- Presents tips, such as tongue or lips positioning to better articulate;
- Tracks the user’s progress and assesses language proficiency; and
- Offers bot-aided coaching, personalized curriculums, lessons, etc.
The mobile app runs both on Android and iOS, and you can use it freely. But, there are only seven days of the chargeless trial period, and then you have to buy the Pro version.
It is an example of AI-powered apps for expenses’ intelligent management. Many large companies (e.g., Royal Enfield) use the convenient system that directly integrates with Microsoft Office 365, Google G Suite, HRMS, accounting, and ERP software. AI tools help to create a unified cost management space where the user can:
- Extract the real-time data and get finances’ analytics;
- Receive expenses reports (including email receipts) in one click;
- Track corporate cards and check policies;
- Execute approval workflows; and
- Send travel requests.
The app runs on Android/iOS, and there is a desktop version too.
A healthcare app is aimed to assist patients to maintain emotional and mental health. It is an AI-based chatbot therapist that uses artificial intelligence for offering empathetic and mindfulness support. The app is the first emotional assistant worldwide, demonstrating the great combination of technologies, mental wellbeing practices, and the latest scientific approaches to the brain’s work.
The core features are:
- Quick conversations with chatbot therapist to control the emotional state;
- Breathing calming technology and personalized meditations;
- Mood tracker and screening for anxiety and depression symptoms; and
- Additional tools for professional mental health therapists.
An app runs on iOS and Android platforms, and it is entirely free of charge.
The last one to mention is the dating AI app for Android and iOS. The well-known global platform uses ML algorithms and data analysis for couples matching, inappropriate content identifying, and personalized offering. Machine learning, image and text recognition, and other AI powers are also used to prevent harassment cases and increase users’ safety.
The main features are:
- Super Like swipes based on matching algorithms,
- Photo uploading and analyzing,
- Messaging with AI-based moderation, and
- Push notifications.
The core app’s functionality is free, but some features (e.g., Boost to appear on the top of the matching list) are paid.
What are the Benefits of Implementing AI in Mobile Apps?
The essential question that entrepreneurs ask themselves is not how to create an AI-based app, but why do it. The answer is a wide range of benefits that innovations give to businesses.
First of all, we are talking about improving consumer analytics and predicting customer behavior. High-quality, adaptable learning models and effective management of vast data amounts allow companies to reduce the research cost and make it deep and comprehensive. AI-powered consumer analytics helps to:
- Carefully study consumer behavior patterns and accurately predict them in the future by adjusting marketing and sales policies (like Amazon, Netflix, and JJ food service do);
- Increase the level of personalization of offers using precise targeting based on ML models and offer high-quality, relevant product recommendations; and
- Increase ad personalization and, as a result, sales and customer satisfaction.
Another reason to create an AI app is its higher security. With the rise of cybercrimes, the safety of sensitive data and money has become a major concern for digital product users. And AI systems have a significant advantage here, providing fast and secure multi-factor authentication (including Face ID) and data loss prevention tools.
Other benefits of integrating AI into applications:
- Improving overall application performance — for example, Microsoft Delve quickly analyzes vast amounts of data and finds the information you need in seconds;
- Continuous improvement of user experience through self-learning models;
- Optimizing customer searches with hints, spelling corrections, and voice assistants;
- Effective integration with IoT devices (for example, Siri, Alexa, and other assistants control smart home appliances);
- Reducing the risks associated with human factors, etc.
Tech Stack Variations for AI Application Development
To make an AI-based app, you need to choose technologies and solutions that will be implemented because many things depend on them (development time and costs, features, etc.).
Programming Languages, AI Platforms and Libraries
Typically, programming languages such as Python, Java, and C ++ are used to build applications based on artificial intelligence. In some cases, program engineers use other languages, for example, C#, R, Lisp, or Prolog, depending on the solution.
To reduce hardware and development costs, software engineers use third-party AI and ML platforms and access them as a service (AIaaS). Among the most famous and commonly used platforms are:
Google TensorFlow. The open-source software library is an innovative data science environment for numerical computation using dataflow graphs and creating AI-based projects from idea to launch. The functional and portable TensorFlow has a flexible architecture that allows computing to be deployed across multiple processors using a common API. If you want to cover as many use cases as possible when developing your AI/ML application, TensorFlow Mobile is for you.
Microsoft Azure. The company has created its ML Studio to create, train, and deploy models. The platform’s advantages are a wide range of algorithms, advanced analytical mechanisms, and high-quality multilingual documentation. AI/ML capabilities include predictive modeling, recommendations mechanism, natural language processing, pattern recognition, and other services. You can use the service anonymously for 8 hours to check the capabilities without creating an account.
Amazon Machine Learning (AML). The platform helps to create, train, and deploy models and intelligent apps of any complexity. The service is based on simple, scalable, and flexible ML technology, which is used, among other things, by scientists from the Amazon community. AML delivers out-of-the-box analytics, simplifies app-building and routine procedures, supports multiple data sources, and helps identify human speech and visual objects via deep learning.
There are some other AI platforms such as:
- IBM Watson,
- Oracle AI cloud services,
- An open-source Melissa platform,
- A low-code Mendix platform,
- H2O, Api.ai, Wit.ai, etc.
Frameworks and Application Programming Interfaces (APIs)
AI, ML, and deep learning frameworks greatly simplify the development of complex, high-tech products and allow you to use third-party functionality through integration with the app. The most popular options include:
- Microsoft Cognitive Toolkit (CNTK). A toolbox helps to create various ML models, including recurrent and convolutional neural networks. Using a framework, you can quickly process arrays of unstructured data, choose metrics and algorithms, and train machines to think almost like people.
- Amazon Machine Learning (AML). The toolbox allows you to develop highly complex applications with high performance. AML can connect applications to cloud services and create forecasts using API.
- PyTorch. Combining the ML library, pre-trained models, and scientific computing structure allows you to quickly build complex systems such as deep neural networks. The Python-powered framework provides excellent flexibility and efficiency.
- Core ML/Create ML. Apple’s machine learning framework and application are domain-specific and well-suited for developing AI products for iOS.
- Caffe2. This option is well suited for building modular deep learning environments. ML’s open-source and set of algorithms allows engineers to experiment with different models.
- Other frameworks such as Keras, Accord.NET, Scikit-learn, SparkMLlib, etc. — you can choose the one that suits your solution the most.
To build an AI app that uses powerful technologies like speech to text and vice versa, face recognition, big data analysis, you need serious power. Third-party APIs and software development kits (SDKs) help to simplify the task and speed up the development. It can be Azure Topic Detection API, Microsoft Face API, Google Vision API, Apple’s SiriKit, and other AI use products.
How to Create AI-based Application: Key Steps
To develop an AI app, you need to follow the basic pipeline that can be represented as:
- Discovery, requirements’ definition, and planning;
- Data mining and modeling;
- Minimum viable product (MVP) and final app’s development; and
- Testing, delivery, and further maintenance.
1. Discovery, Requirements’ Definition, and Planning
To understand how to build an AI app, you need to identify the issue first. Think about the processes and functions of the application in which you want to use the AI stack technologies, what result you should get from it, and how you will benefit.
Once the idea and problem are defined, you can create a clear list of product requirements and document them. Properly written and structured requirements help developers understand the purpose of creating a product and identify technologies and tools for working.
At the planning stage, you also need:
- Determine the composition of the team of technical and non-technical specialists – from business analysts and project manager to data engineers and backend programmers;
- Draw up a work schedule with experts; and
- Begin exploring the data required to create an AI/ML model.
2. Data Mining and Modeling
Typically, AI-powered applications require large amounts of data to operate, and it has to be collected and appropriately prepared to receive an accurate model. Sometimes data needs labeling by a special labeling team of experts, and you can find them in a software company that concentrates on AI and ML-based solutions. Therefore, software engineers carefully study the input information and its sources to prepare the dataset (data for implementation) for further usage. Most often, they use the Cross-Industry Standard Process for Data Mining (CRISP-DM) for it.
Next, you have to check input data for errors, missing values, or incorrect labels, and then you can go to the data preparation. It consists of:
- Selecting and uploading raw data,
- Picking annotation tools,
- Highlighting and labeling data blocks, and
- Selecting and saving file formats.
The collected dataset allows us to compare the solution options and go to the modeling stage. Previously collected data is used to train ML models via various methods. For instance, we at CHI Software apply deep learning or reinforcement learning techniques. When the model is trained, we have to test, evaluate, and deploy it. Once you have a model, you can load it into a mobile app.
3. MVP and Final App’s Development
MVP allows you to present the product in several versions, evaluate the basic functionality and the viability of the application. You can limit yourself to the MVP by collecting the first feedback and reducing one-time costs and the risk of loss of investment. Still, only a full-fledged app with advanced functionality can give you a competitive advantage.
In general, creating an AI-driven application is no different from other software development (except for CRISP-DM). You have to:
- Think over the architecture of the solution,
- Design the user interface, and
- Create the frontend and backend.
On the development stage, you can also optimize performance, improve and expand functionality, adapt the product to updates of various operating systems, etc.
4. Testing, Delivery, and Maintenance
After developing the MVP with improvements, you need to test the finished product with QA engineers’ help. They can use manual, automated tools or their combinations. When our system is thoroughly tested, you can deliver it or place the application in app stores. For native apps, you can use the Play Market guide for Android applications and AppStore recommendations for products for iOS.
It is also recommended to update the system regularly (so that it supports the latest OS versions) and improve the models by adjusting and supplementing the previously collected data.
The Development Cost
The artificial intelligence app development cost depends on the features of AI tools implementation since the complexity and tech stack of a chatbot and, for instance, a corporate data analysis system can be very different. In the first case, the software will cost you from US$6,000, in the second one at least, US$35,000.
How have these numbers been calculated? In addition to the solution complexity, the price depends on the time costs of the project’s technical and non-technical specialists. Here’s a rough estimate of the time to build a mobile app:
|Expert||Approximate work time (hours)|
|Mobile apps developer||170|
|Quality assurance engineer||130|
In general, a simple AI app develops in about three months. However, if you want to create an end-to-end solution with rich functionality, it will take about twice as long. Development time (and therefore cost) is increased by additional factors such as data visualization, the minimum accuracy rate for predictions, and dashboard requirements.
To estimate the total cost, you need to know the hourly rate of your developers. It can be very different: for example, you will pay from US$10 per hour if you hire specialists in India or Southeast Asia to US$200 per hour if working with Americans.
In general, we can say that when developing AI software, you will spend at least US$10,000, but the actual numbers vary between US$30,000 and US$100,000 depending on MVP size and complexity. Keep in mind that you will also have to spend about 30 percent of this amount to support the app in the first year, and each next year this figure will remain at 15-25 percent of the total development cost. Therefore, you need to make a budget for at least the first year of the system’s functioning.
Artificial Intelligence App Development with CHI Software: Our Advice
We at the company are actively engaged in creating apps based on artificial intelligence and are constantly deepening our expertise in innovation. We will illustrate our approach and tips in several cases where AI/ML solutions are implemented.
Computer Vision Solution for a Cosmetic Retailer
The client company has a wide range of beauty product items and sells them without the shop assistants consulting. Therefore, consumers confuse a lot and buying the wrong products decreases the company’s profits and clients’ loyalty.
We have solved the issue by developing a mobile-based application based on Artificial Intelligence, Computer Vision, and photo face recognition. The app analyses unique facial features and adopts the user profile. The AI technologies applied help to create a tool for selecting the needed skincare.
- Analyzes all collected data;
- Makes recommendations on beauty products;
- Offers hints and advice for the buyers to simplify the selection of items in the catalog.
Our app helps users better navigate items and buy cosmetics according to skin type and preferences. The selection of cosmetic products has become a simple, convenient automated process that increases consumers’ loyalty.
Swift 4.2, Alamofire, REST, AVFoundation, Core Graphics, CoreImage, Multithreading, Design patterns (Singleton, Delegation, Factory), NSNotificationCenter, User Defaults, Firebase analytics, Core Animation, Safari Services(API), PHP 7.2.12, Laravel framework v5.6.35, MySQL Ver15.1 Distrib10.3.8 -MariaDB(AI) C++, OpenCV, Dlib, Caffe, MySQL (AWS) EC2, S3, RDS.
Vehicle Hail Scanning System
Our client, the automotive company with 20+ years of experience in the 3D scanning industry, needed a vehicle hail scanning system to automate the detriment detection process, acquire real-time images, and identify defects.
Our R&D center has provided a solution that defines all hail damages on the vehicle, including small scratches. All process takes 3 minutes approximately:
- Vehicles pass through a light tunnel equipped with optical cameras;
- The software identifies the spots and generates a report based on the damage level of the vehicle;
- The scanned data about the condition of compresses and accumulates in the safe cloud storage; and
- A customer gets an offline or online report in just a few minutes.
Data received can be used for other purposes. A solution is a helpful tool for insurance cases as it determines the extent of damage after a hailstorm in the shortest time. A customer can transfer reports to insurance companies online via cloud services.
- Python, C++;
- Artificial neural networks: CNN, YOLOv3, MobileNet;
- Machine Learning: K-Means, K-NN, SVM Computer Vision, OpenCV, Keras, TensorFlow in Python to build CNN-RNN networks.
If you are ready to say, “It’s time to start my own AI app,” get ready for a journey full of surprises and challenges. But don’t give up on difficulties: all you need is to arm yourself with the knowledge and help of an experienced developer of AI-based digital products.
Its practical experience will help you choose the cost-effective and shortest way to implement your idea. Broad expertise will allow you to find the right tools from a vast tech stack of artificial intelligence. Therefore, as the hero of a magic quest, gather a team — and forward to success!