Using neural networks, the technological possibilities on smartphones are infinite, such as the ability to recognize a face. At MyFit Solutions, we have developed a neural network to take digital measurements of a part of the human body (bust, hand, foot, ear…) allowing the error-free recommendation of an orthotic, earpiece or jewelry size. But how does it work? In this article, we give you everything you need to know about using a neural network with your smartphone.
What is a neural network?
Before telling you about the neural network by MyFit Solutions, here are some generic explanations about neural networks.
What is a neural network in AI?
Neural Networks (NN), also called Artificial Neural Networks (ANN), are systems capable of processing information by imitating the functioning of the human brain. Artificial neurons copy the mode of biological neurons to recognize patterns and solve problems very quickly.
The applications of this technology are endless:
- automate tasks,
- classifying, filtering and grouping data,
- generate text,
- identify objects and detect a shape (an ear for example),
- recognize faces for a security system,
- recommend a product size in an online catalog,
What is the link between machine learning, deep learning and artificial intelligence?
Neural networks are part of the fields of Artificial Intelligence (AI), machine learning and deep learning, here are the definitions:
Artificial Intelligence (AI) includes all computer techniques that seek to reproduce the functioning of human intelligence.
Machine learning is a field of AI where a system is programmed to learn to perform tasks by studying a large data set (Big Data). Learning and optimization algorithms are used to continuously adjust the results of the system. The goal is to minimize the errors between the model provided by the machine and the input data.
Deep learning is part of machine learning. Indeed, it has the same goal which is to develop the best model from data. But, deep learning uses a neural network instead of classical programming algorithms, which allows it to handle much more complex tasks.
What is the difference between machine learning and deep learning?
The difference between Machine Learning and Deep Learning lies in the algorithms and data used. While Machine Learning algos analyze structured data, Deep Learning algos use a neural network to process data such as sound, text and images.
What are the components of an artificial network?
The components of a neural network are :
- a layer of several artificial neurons or nodes at the input of the system (input layer),
- one or more hidden layers,
- and an output layer.
The layers are linked together.
How does the neural network work?
Artificial neural networks are designed on the same principle as biological ones.
In our brain, synapses are the points of contact between neurons. Information arrives at the neuron through several dendrites and leaves through an axon. Each neuron analyzes the electrical intensity received by weighting and summing all the incoming signals. When the result obtained is higher than a certain threshold (the activation threshold), it becomes active and sends a discharge to other neurons.
In the same way, programmers design neural networks that are linked to each other and articulated in layers of nodes. Each node, or formal neuron, receives several weighted pieces of information that it processes according to a predefined mathematical function. If the result of its calculation is higher than its activation threshold, it sends data to the next layer. Thus, each neuron has an associated weight and threshold that are adjusted during the “training” of the network.
What are the different types of neural networks?
MLP (multilayer perceptron) or multilayer perceptrons which are networks composed of one or more hidden layers.
CNN (convolutional neural networks) which are generally used in image processing.
RNN (recurrent neural networks) are specific networks used for predictive applications.
LSTM (Long Short-Term Memory) which are part of RNN. These networks are used for text processing.
How to create a neural network?
Keys to success
When the network is created, the different weights of the neurons are not known. This is why the Artificial Intelligence (AI) must be trained to adjust the parameters and minimize the deviations. To do this, the programmer has initial data, for which he knows the expected output result. It then proceeds to a series of optimization.
In the case of the recognition of an object or a body part, such as a hand, a foot or an ear, it is necessary to train the machine on thousands of images. To do this, a set of landmarks is distributed over each image. The set of landmarks creates the dataset that is sent to the server to run the neural network in a replicable way.
Once the program is well trained, you get the first results in identifying the scanned subjects, BUT errors can always occur: they are still machines. We must continue to make them learn. The goal is that the AI recognizes the input image (ear, hand, foot, bust…) and annotates it without error.
3 steps to create a neural network
There are 3 steps in the creation of a neural network.
Step 1: Learning (also called training)
From a database of annotated images, two sets are created:
The first set of annotated pictures is used to train the artificial neural network. During this step, the algorithm learns the logic of placing the landmarks (annotation points) on the training images and creates the model.
The second set of images is used for the validation of the network. In parallel to the training, we test the model on the set of validation images to see how it reacts. Then, we adjust the model accordingly.
Here is a concrete example of how we train our models at MyFit Solutions with a hand scan:
We perform a 3D scan of the hand with our smartphone technology. This step allows us to capture images of hands.
We annotate these images with different annotation points or landmarks.
All the annotated images create a dataset that we send to our server. The images are divided into two groups (training and validation).
We adjust the model so that the Artificial Intelligence (AI) learns what a hand is and where it should place the annotation points.
Step 2: Inference
In this step, the model is not modified since we are not in a learning (or training) phase. The idea here is to submit a random image to our system and observe how it reacts. To do this, we take a visual of a person or an object that can never have been seen by the model before. The model then places the landmarks on the proposed image.
Step 3: Update of the model
Depending on the results of the inference phase, the model is adjusted or not.
When an image has been misunderstood by the Artificial Intelligence (AI), the annotation points are not placed correctly. It is then necessary to annotate new images and to repeat the learning phase until the model is error-free.
The goal is to train its Artificial Intelligence (AI) to be as efficient as possible. We recommend:
diversify the images on which it is trained,
and to use the drifts to make it more and more accurate. The best practice would be to retrain every 100 derived images.
Limits and advantages of neural networks
Deep learning requires:
- A human action. Indeed, even if the algorithms tend to adapt and correct themselves and sometimes even be as efficient as the human brain, there is always a part of human action.
- A large amount of data. To have a robust model, you need to use a large number of images as well as a great diversity. Therefore, you must have a significant heterogeneity of input data: skin color / brightness / zoom…
Using a neural network allows us to obtain a technology :
- and accurate.
Neural networks are extremely powerful tools that offer great perspectives for companies. Let’s see how you can exploit this potential to deliver innovative solutions on smartphones.
The neural network via smartphones at MyFit Solutions
Why create a neural network on smartphones?
With the development of e-commerce and m-commerce, equipping yourself with a mobile solution can boost your business. Indeed, the smartphone is unconditionally the key tool to improve the customer experience.
On the one hand, because it is an everyday object that can be used by anyone, anywhere, 24 hours a day. And on the other hand, because the smartphone is a concentrate of technology capable of embedding innovative solutions like neural networks.
How to take advantage of the Neuronal Network on smartphone?
At MyFit Solutions, we have harnessed the power of neural networks to deliver a unique user experience from a smartphone.
How does it work?
First of all, MyFit Solutions 3D scan allows the digital capture of a part of the body (face, hand, feet, chest, wrist…). This 3D acquisition is made from the optics available on any smartphone. Therefore, accessible by anyone anywhere and anytime. There is no need to invest in an expensive and cumbersome scanner.
Then, beyond the 3D acquisition that MyFit scan provides via smartphones, we have made this technology “intelligent”. Indeed, our trained neural network detects shapes and recognizes a face, an ear, a hand or a foot. The scanned body part is automatically annotated.
Then, our technology is able to output the precise measurements of the concerned limb in order to obtain scaled reconstructions. This allows us to make size recommendations. That is to say, to help the customer or patient to obtain the article corresponding to his morphology.
But that’s not all! The network is also used to improve the 3D reconstructions from our scans for customization. Based on the recognition of a body part and the annotation, we improve the 3D scanned model.
An innovative, reliable and reproducible technology
In order to obtain the best results, we want to limit the so-called “drift” images (those whose results are not what we expected). Thus, we train our Artificial Intelligence (AI) on a very large number of diversified images by mixing different skin colors, sizes, brightness…
Moreover, we take care to provide a complete framework to the user through the UI/UX of our application to avoid any incompatible images with the training of the Artificial Intelligence (AI). Indeed, a bad input is always possible when the solution is put in the hands of anyone. This is why Myfit solutions has structured and systematized the image capture to ensure a functional neural network.
Our solution is replicable on a large scale, from anywhere by anyone!
For which use cases?
Initially, MyFit solutions’ automatic digital measurements were born for the realization of custom earphone tips. Today, our expertise has expanded to meet the needs of the health, luxury and high-tech industries. We accompany them in their project of remote measurements for the recommendation of the size of their products to their customers, and this from smartphones.
For example, MyFit Solutions has developed a technology that allows Alpaca US’s brand – SoundBe, a subsidiary of Sonova in the United States, to recommend the right size earplug to its customers. Based on the neural network developed by MyFit Solutions, 15 measurement points are recorded to determine whether the ear scanned requires a SoundBe earplug size XS, S, M or L.
This process has been duplicated on different parts of the body such as the ear, hand, wrist, torso, foot in order to recommend a size of hearing aid, orthosis, jewelry, clothing, shoes…
Offering your customers the possibility to take their measurements remotely is crucial! The more you are able to recommend the right product size, the more you ensure customer satisfaction and avoid costly product returns.
You have questions about MyFit Solutions technology or would you like to implement a remote size recommendation system?