VPS
Nikolas Ziartis
Created on September 26, 2024
Over 30 million people build interactive content in Genially.
Check out what others have designed:
SLYCE DECK
Personalized
LET’S GO TO LONDON!
Personalized
ENERGY KEY ACHIEVEMENTS
Personalized
HUMAN AND SOCIAL DEVELOPMENT KEY
Personalized
CULTURAL HERITAGE AND ART KEY ACHIEVEMENTS
Personalized
DOWNFALLL OF ARAB RULE IN AL-ANDALUS
Personalized
ABOUT THE EEA GRANTS AND NORWAY
Personalized
Transcript
Business Goal
Data Aquisition & Pre-processing
Problem
Monitoring & Transfer Learning
6
8
7
5
4
3
2
1
Model Fine-tuning & Automation
Model Deployment
Model Selection & Training
VISUAL POSITIONING SYSTEM (VPS)
Further Optmisations & Improvements
Did you know? We retain 42% more information when the content has movement. It may be the most effective resource for capturing your audience’s attention.
Tip: Interactivity is the key to capturing the interest and attention of your audience. A genially is interactive because your audience explores and engages with it.
Tip: Emotional connection or engagement with your audience increases when they identify with the message you want to communicate.
Tip: Interactivity is the key to capturing the interest and attention of your audience. A genially is interactive because your audience explores and engages with it.
Tip: Interactivity is the key to capturing the interest and attention of your audience. A genially is interactive because your audience explores and engages with it.
Tip: Emotional connection or engagement with your audience increases when they identify with the message you want to communicate.
- Waymap's main objective is to create a mapping/navigation app able to operate with almost zero reliance on GPS.
- This software can be incredibely useful underground, in malls, hospitals - anywhere where GPS fails.
- The flagship project, which is where I mostly worked on was the whole metro system in Washington DC.
Waymap
- Waymap had an existing proprietery algorithm at the time that used various sensor data to track users.
- The biggest porblem was that the tracking software had to know the exact starting position of the user (coordinates and pose).
- To solve this porblem I decided to build a visual positioning system that would take images from the user and predict their exact location and pose.
The Problem
- All the data used to train the ML models was extracted from 3D scans.
- We used LIDAR cameras to scan each vanue/location we wanted to deploy at.
Data Aquisition
- All 3D scans where in .e57, where I extracted 2D images (model input) and venue name, coordinated and pose (model outputs).
- I built 2 datasets, one for a classification model that would point to the venue the user was at, and one for a regression model that would predict the users location and pose.
Data Pre-Processing
- In order to fine-tune the models I tried a variety of different optimisation methods such as grid-search, monte carlo and bayesian optimisation.
- Since a new model had to be built for each venue I automated the training and fine-tuning process so that in one continous session the best model can extracted.
- With further optimisation and scalability in mind, I implemented data parallelism, a form of distributed training, which reduced individual model training times by 40%.
Fine-tuning & Automation
- We monitored:
- Latency
- Precision, Recall & Accuracy for the classification model
- Data Drift
Monitoring
- I set-up transfer learning scprits for the models, where once over 500 new images where collected for each venue the models would retrain and return the best performing model which would be deployed if it outperformed the original.
Tranfer Learning
- The VPS consisted of a combination of 2 models
- Both models had similar architectures with a difference only in the final layers.
- The models where comprised by a classical computer vision method (DENSE Sift) that would extract the important features from the images and a CNN GooglNet architecture that would classify the image to a station or predict the location and pose of the user.
Model Architecture
Model Deployemnt
Deployment Step-by-Step process:
- Registered model to Azure ML Studio, which helps with versioning and documenting model parameters.
- Package 1 classification model and 4-6 predictive models insisde a Docker image.
- Deploy to a local endpoint first to test the models.
- Set-up the main deployment to auto scale resources based on traffic.
- Deploy the docker image to the final endpoint.
- Latency proved to be an issue when we intially deployed, which is what led to the multiple docker image structure I previously mentioned.
- To further reduce latency I employed model pruning during the training process which reducedlatency by almost 50% without reducing accuracy and remaining within the required thresholds.
Further Optimisations
- Object detection, segmentation and text detection where added on to the VPS before the classification model to improve overall system performance and accuracy.
Tranfer Learning