SlideShare a Scribd company logo
1 of 28
Download to read offline
Architecting AI Solutions
in Azure for Business
From Concept to Reality
Hybrid AI-Based Recommender
Recommender
System
Architecture
Sample Recommender System
Architecture
Uniquely Identify Users
ā€¢ User has UniqueID regardless of the fact whether they are registered or not. The UniqueID for unregistered
user could be assigned based. Below are a couple of ways of generating such unique ID
BrowserID
ā€¢ Unique id generated from the browsers user agent string.
Browser|BrowserVersion|OS|OSVersion|Processor|MozzilaMajorVersion|GeckoMajorVersion
ComputerID
ā€¢ Generated from users IP Address and HTTPS session key. getISP(requestIP)|getHTTPSClientKey()
FingerPrintID
ā€¢ JavaScript based fingerprinting based on a modified fingerprint.js.FingerPrint.get()
SessionID
ā€¢ Random key generated when user 1st visits site. BrowserID|ComputerID|randombytes(256)
GoogleID
ā€¢ Generated from __utma cookie. getCookie(__utma).uniqueid
Unregistered users
ā€¢ generate uniqueID as above and store it in a cookie.
ā€¢ User actions in the website will be traced: Searches; Views; Likes; View Contact Information
Functional Features
User Profiling
ā€¢ Establish detailed user profiles by collecting information such as industry, preferences, recent
searches, and location.
ā€¢ Encourage users to input additional preferences and requirements to fine-tune
recommendations.
Contextual Awareness
ā€¢ Utilize geolocation data to offer services relevant to the user's location.
ā€¢ Question: Do we have time-sensitive offers, expiring during day or limited time? Consider
temporal factors, such as time of day and day of the week.
Behavioral Analysis
ā€¢ Analyze user behaviour, including clicks, time spent on offer pages and even offer previews
ā€¢ Analyze behaviour of interactions (likes, comments).
Functional Features (Continuedā€¦)
Collaborative Filtering
ā€¢ Implement collaborative filtering to reflect the preferences and feedback of similar users.
Supplier Score
ā€¢ Integrate a supplier scoring system based on user reviews, ratings and purchase history. Suppliers
with high scores should be considered reputable and reliable service providers.
Real-time Feedback
ā€¢ Allow users to provide feedback on recommended services directly through the banner. I.e. ā€œhideā€
and ā€œadd to favoritesā€ with sub options to hide this offer or offers from that supplier
ā€¢ The feedback shall be used to continuously improve the recommendation algorithm output for the
user, but also to affect the collaborative score.
Transparency
ā€¢ Provide user with transparency on why certain services are recommended by highlighting key
factors such as user preferences, location relevance, and supplier scores. (i.e. decomposing score)
ā€¢ The point will also be useful for assessment during development time
Types of Feature Filters
Content-based filtering (similarity between item features)
ā€¢ The underlying assumption of the collaborative filtering approach is that if a person A has the same
opinion as a person B on a set of items, A is more likely to have B's opinion for a given item than that of a
randomly chosen person.
ā€¢ Method makes automatic predictions (filtering) about the interests of a user by collecting preferences
or taste information from many users (collaborating).
Collaborative item filtering (similarity between items based on interactions)
ā€¢ Uses only information about the description and attributes of the items users has previously consumed
to model user's preferences.
ā€¢ Algorithms tries to recommend items that are similar to those that a user liked in the past (or is
examining in the present).
ā€¢ Various candidate items are compared with items previously rated by the user and the best-matching
items are recommended.
Hybrid Feature Filters
Hybrid Filter Recommender
ā€¢ Combining collaborative filtering and content-based filtering could be more effective than pure
approaches in some cases.
ā€¢ These methods can also be used to overcome some of the common problems in recommender
systems such as cold start (no previous history).
RecommenderHybridScore = RecommenderContentScore*ContentWeight
+ RecommenderCollaborativeScore*ContentWeight
Feature Types
# Feature Guest User
Weight
Auth User
Weight
Type
F01 Location 5 5 Content
F02 Trending offers (offer views and interactions score) 5 2 Collaborative
F03 Person/Organization keywords, profile N/A 10 Collaborative
F04 View time (time spent on offer during scrolling)
(most recent = most important)
3 Collaborative
F05 Search history, Type of service 7 7 Collaborative
F06 Promoted offers (a paid service) 10 5 Content
F07 Content (keywords, service type) 10 10 Content
F08 Clicks (most recent = most important) 15 10 Collaborative
F09 Interactions (likes, comments, views of contact
details) (most recent = most important)
N/A 20 Collaborative
F10 Realtime feedback ā€“ hide offer, hide supplier 20 30 Collaborative
Recommender Flow
Identification
ā€¢ Unique User ID - Used for tracking user behaviour on the web site
ā€¢ Anonymous users - Automatically generated from the browser agent and IP location
ā€¢ Authorized users
Incentivisation
ā€¢ The web portal shall support SSO using both Facebook and Google to increase the likelihood to identify users
ā€¢ There shall be certain hidden information when accessing an offer to urge the end user to log in. (i.e. contact
info visible only for registered users, although for free).
Data Collection
ā€¢ User-Based Collaborative Data
ā€¢ Anonymous user, Authenticated user
ā€¢ Authenticated user only
ā€¢ History of purchases
ā€¢ History of visited offers (with more weight on the most recent offers accessed)
ā€¢ History of interactions
Recommender Flow (Continuedā€¦)
ā€¢ Item-Based Collaborative Data
ā€¢ User preferences, behavior, and interactions with the platform - historical ratings, reviews, and any explicit feedback.
ā€¢ Time spent reading an offer. Look at Facebook and Instagram reels, as well as TikTok.
ā€¢ The offer feed may be different for each user and could be implemented with infinite scroll where the user navigates
through a summary view (images changing in a slideshow, title, short description) and the time spent to read the
summary is used as a feature indicating the level of interest of end user
ā€¢ Content-based Data
ā€¢ Information about the items or services being recommended - attributes, features, or content-related information
about each item.
Data Preprocessing
ā€¢ Clean and preprocess the data. Handle missing values, remove duplicates, and format the data for easy processing
User-Based Collaborative Filtering
o Calculate user-based collaborative filtering score
o Build a user-item matrix: Create a matrix where rows represent users, columns represent items, and the cells contain
ratings or interactions.
o Calculate user similarities: Use metrics like cosine similarity or Pearson correlation to measure the similarity between
users based on their preferences.
o Predict ratings for items: Predict the ratings for items that a user has not interacted with based on the ratings of similar
users.
Recommender Flow (Continuedā€¦)
Item-Based Collaborative Filtering
ā€¢ Transpose the user-item matrix: Create an item-user matrix by transposing the user-item matrix.
ā€¢ Calculate item similarities: Measure the similarity between items based on user interactions using techniques like
cosine similarity.
ā€¢ Predict ratings for users: Predict the ratings a user might give to items they haven't interacted with based on the ratings
of similar items.
Content Filtering
ā€¢ Extract features for items: For each item, extract relevant features or attributes. This could include textual data,
categorical data, or any other relevant information.
ā€¢ Build an item-feature matrix where rows represent items, columns represent features, and the cells contain the values
of the features.
ā€¢ Calculate content similarities. Use similarity measures (e.g., cosine similarity) to determine how similar items are
based on their features.
ā€¢ Combine collaborative and content similarities. This could involve weighting each similarity measure based on its
importance.
Hybrid Recommender
ā€¢ Combine the recommendations from collaborative and content filtering, giving appropriate weight to each.
Evaluation and Improvement
Evaluation
ā€¢ Split the data into training and testing sets. Evaluate the performance of your recommender system by comparing
predicted ratings or recommendations with actual user interactions in a testing set.
ā€¢ Utilize metrics such as Root Mean Squared Error (RMSE) ā€“ i.e. the distance between real and predicted score
Continuous Improvement
ā€¢ Implement mechanisms to continuously update and retrain the recommender system as new data becomes available.
Takeaways
ā€¢ Content Based Recommendation System
o https://www.youtube.com/watch?v=9_YdIjGl2m4
ā€¢ Kaggle Music Recommender
o https://www.kaggle.com/code/vatsalmavani/music-recommendation-system-using-spotify-dataset
ā€¢ Kaggle Movie Recommender
o https://www.kaggle.com/code/rounakbanik/movie-recommender-systems
ā€¢ Kaggle E-commerce Recommender
o https://www.kaggle.com/code/shawamar/product-recommendation-system-for-e-commerce
ā€¢ Kaggle Content based Recommender
o https://www.kaggle.com/code/omeroruccelik/content-based-recommendation-systems
ā€¢ Recommender System in Python
o https://www.kaggle.com/code/gspmoreira/recommender-systems-in-python-101
ā€¢ Azure ML Recommender System
o https://azure.microsoft.com/en-us/blog/building-recommender-systems-with-azure-machine-learning-service/
App Service - Hybrid Connection
ā€¢ Access on-premises AZ SQL DB from the cloud
ā€¢ Install Hybrid Connection Manager on-premises
AI-Enabled Cash Register
AI-Enabled
Cash
Register
ā€¢ Snap a photo with food item
ā€¢ Device detects items from photo
ā€¢ App determines item attributes
Azure Service ā€“ to ā€“ Function Mapping
Function App
ā€¢ Receives images for scoring (Flow 1)
ā€¢ Receives prediction to be saved (Flow 2)
ā€¢ Synchronizes device config. with DB
AKS
ā€¢ Hosting AI Models
AZ ML Service
ā€¢ Labeling images
ā€¢ Datasets
ā€¢ Models
ā€¢ Training
ā€¢ Deployments
Function App (Builder)
ā€¢ Builds datasets
ā€¢ Crates ML job
ā€¢ Deploys models
Web App
ā€¢ Show prediction results
ā€¢ Manage known items and daily tasks (menu)
Azure SQL DB
ā€¢ Asset Structure
ā€¢ Menus
ā€¢ Predictions
IoT Hub
ā€¢ Device Configuration
Storage
ā€¢ Store prediction images
Gateway Module Architecture Flow
Camera
captures
image
Deduplication
(Scene has
Changes)
Check Target
- Crop image
to tray area
Deduplication
- Check
image focus
Check for Known
Items (Flow 1)
Deduplication
- Check items
on tray
GDPR Check ā€“
Personal
items
Upload image
to storage
Persist Image
(Flow 2)
Tray Detection
AI Model
GDPR Detection
AI Model
Auxiliary Flows
RPI Device API Management Dynamic Endpoint
AZ ML Deployment
Endpoint
RPI Device Azure Function
Dynamic
Endpoint
Flow 2: Saving Prediction Results
Flow 1: Send Items for Object Detection
Object Scene Deduplication
ā€¢ Deduplication 1: Image must be at least 20% different that the previous one. Comparing image hash values.
ā€¢ Deduplication 2: Image must pass blurriness threshold. Checking pixel variance.
ā€¢ Deduplication 3: Comparing polygons (fingerprint) made of the centroids of the detected foods between
two images.
GDPR Model
Model Application (Good Results)
Detection Issues from Labeling
ā€¢ Too small polygon shape
ā€¢ Too simple polygon shape
ā€¢ Too complex polygon shape
ā€¢ Wrong polygon shape
ā€¢ ML assisted labeling glitch
Detection Issues from Labeling
ā€¢ Too small polygon shape
ā€¢ Too simple polygon shape
ā€¢ Too complex polygon shape
ā€¢ Wrong polygon shape
ā€¢ ML assisted labeling glitch
Detection Issues from Labeling
ā€¢ Too small polygon shape
ā€¢ Too simple polygon shape
ā€¢ Too complex polygon shape
ā€¢ Wrong polygon shape
ā€¢ ML assisted labeling glitch
Detection Issues from Labeling
ā€¢ Too small polygon shape
ā€¢ Too simple polygon shape
ā€¢ Too complex polygon shape
ā€¢ Wrong polygon shape
ā€¢ ML assisted labeling glitch
Detection Issues from Labeling
ā€¢ Too small polygon shape
ā€¢ Too simple polygon shape
ā€¢ Too complex polygon shape
ā€¢ Wrong polygon shape
ā€¢ ML assisted labeling glitch
Summary Reports (Grafana)

More Related Content

Similar to Architecting AI Solutions in Azure for Business

Personalize experience on web understand-implement-evaluate - kumar pritam
Personalize experience on web   understand-implement-evaluate - kumar pritamPersonalize experience on web   understand-implement-evaluate - kumar pritam
Personalize experience on web understand-implement-evaluate - kumar pritamKumar Pritam
Ā 
Modern Perspectives on Recommender Systems and their Applications in Mendeley
Modern Perspectives on Recommender Systems and their Applications in MendeleyModern Perspectives on Recommender Systems and their Applications in Mendeley
Modern Perspectives on Recommender Systems and their Applications in MendeleyKris Jack
Ā 
Real-Time Recommendations with Hopsworks and OpenSearch - MLOps World 2022
Real-Time Recommendations  with Hopsworks and OpenSearch - MLOps World 2022Real-Time Recommendations  with Hopsworks and OpenSearch - MLOps World 2022
Real-Time Recommendations with Hopsworks and OpenSearch - MLOps World 2022Jim Dowling
Ā 
SharePoint 2013 search improvements
SharePoint 2013 search improvementsSharePoint 2013 search improvements
SharePoint 2013 search improvementsKunaal Kapoor
Ā 
Web personalization
Web personalizationWeb personalization
Web personalizationRishi Bhutada
Ā 
Collaborative Filtering Recommendation System
Collaborative Filtering Recommendation SystemCollaborative Filtering Recommendation System
Collaborative Filtering Recommendation SystemMilind Gokhale
Ā 
Study of Recommendation System Used In Tourism and Travel
Study of Recommendation System Used In Tourism and TravelStudy of Recommendation System Used In Tourism and Travel
Study of Recommendation System Used In Tourism and Travelijtsrd
Ā 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation SystemsRobin Reni
Ā 
Recommender System _Module 1_Introduction to Recommender System.pptx
Recommender System _Module 1_Introduction to Recommender System.pptxRecommender System _Module 1_Introduction to Recommender System.pptx
Recommender System _Module 1_Introduction to Recommender System.pptxSatyam Sharma
Ā 
Agent technology for e commerce-recommendation systems
Agent technology for e commerce-recommendation systemsAgent technology for e commerce-recommendation systems
Agent technology for e commerce-recommendation systemsAravindharamanan S
Ā 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender SystemsGirish Khanzode
Ā 
Webinar: Increase Conversion With Better Search
Webinar: Increase Conversion With Better SearchWebinar: Increase Conversion With Better Search
Webinar: Increase Conversion With Better SearchLucidworks
Ā 
Mini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedMini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedBetclic Everest Group Tech Team
Ā 
Recommendation engines
Recommendation enginesRecommendation engines
Recommendation enginesGeorgian Micsa
Ā 
major ppt.pptx
major ppt.pptxmajor ppt.pptx
major ppt.pptxAnushaG52
Ā 
Overview of recommender system
Overview of recommender systemOverview of recommender system
Overview of recommender systemStanley Wang
Ā 
Recommender systems
Recommender systemsRecommender systems
Recommender systemsVivek Murugesan
Ā 
Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...
Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...
Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...Rajasekar Nonburaj
Ā 

Similar to Architecting AI Solutions in Azure for Business (20)

Personalize experience on web understand-implement-evaluate - kumar pritam
Personalize experience on web   understand-implement-evaluate - kumar pritamPersonalize experience on web   understand-implement-evaluate - kumar pritam
Personalize experience on web understand-implement-evaluate - kumar pritam
Ā 
Modern Perspectives on Recommender Systems and their Applications in Mendeley
Modern Perspectives on Recommender Systems and their Applications in MendeleyModern Perspectives on Recommender Systems and their Applications in Mendeley
Modern Perspectives on Recommender Systems and their Applications in Mendeley
Ā 
Real-Time Recommendations with Hopsworks and OpenSearch - MLOps World 2022
Real-Time Recommendations  with Hopsworks and OpenSearch - MLOps World 2022Real-Time Recommendations  with Hopsworks and OpenSearch - MLOps World 2022
Real-Time Recommendations with Hopsworks and OpenSearch - MLOps World 2022
Ā 
SharePoint 2013 search improvements
SharePoint 2013 search improvementsSharePoint 2013 search improvements
SharePoint 2013 search improvements
Ā 
Web personalization
Web personalizationWeb personalization
Web personalization
Ā 
Collaborative Filtering Recommendation System
Collaborative Filtering Recommendation SystemCollaborative Filtering Recommendation System
Collaborative Filtering Recommendation System
Ā 
Study of Recommendation System Used In Tourism and Travel
Study of Recommendation System Used In Tourism and TravelStudy of Recommendation System Used In Tourism and Travel
Study of Recommendation System Used In Tourism and Travel
Ā 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation Systems
Ā 
Recommender System _Module 1_Introduction to Recommender System.pptx
Recommender System _Module 1_Introduction to Recommender System.pptxRecommender System _Module 1_Introduction to Recommender System.pptx
Recommender System _Module 1_Introduction to Recommender System.pptx
Ā 
Agent technology for e commerce-recommendation systems
Agent technology for e commerce-recommendation systemsAgent technology for e commerce-recommendation systems
Agent technology for e commerce-recommendation systems
Ā 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender Systems
Ā 
Webinar: Increase Conversion With Better Search
Webinar: Increase Conversion With Better SearchWebinar: Increase Conversion With Better Search
Webinar: Increase Conversion With Better Search
Ā 
Mini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedMini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation Demystified
Ā 
Recommendation engines
Recommendation enginesRecommendation engines
Recommendation engines
Ā 
major ppt.pptx
major ppt.pptxmajor ppt.pptx
major ppt.pptx
Ā 
Recommender system
Recommender system Recommender system
Recommender system
Ā 
Overview of recommender system
Overview of recommender systemOverview of recommender system
Overview of recommender system
Ā 
B1802021823
B1802021823B1802021823
B1802021823
Ā 
Recommender systems
Recommender systemsRecommender systems
Recommender systems
Ā 
Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...
Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...
Building a Recommender systems by Vivek Murugesan - Technical Architect at Cr...
Ā 

More from Ivo Andreev

Cybersecurity and Generative AI - for Good and Bad vol.2
Cybersecurity and Generative AI - for Good and Bad vol.2Cybersecurity and Generative AI - for Good and Bad vol.2
Cybersecurity and Generative AI - for Good and Bad vol.2Ivo Andreev
Ā 
Cybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadCybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadIvo Andreev
Ā 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIIvo Andreev
Ā 
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for DevelopersHow do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for DevelopersIvo Andreev
Ā 
OpenAI GPT in Depth - Questions and Misconceptions
OpenAI GPT in Depth - Questions and MisconceptionsOpenAI GPT in Depth - Questions and Misconceptions
OpenAI GPT in Depth - Questions and MisconceptionsIvo Andreev
Ā 
Cutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for EveryoneCutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for EveryoneIvo Andreev
Ā 
Collecting and Analysing Spaceborn Data
Collecting and Analysing Spaceborn DataCollecting and Analysing Spaceborn Data
Collecting and Analysing Spaceborn DataIvo Andreev
Ā 
Collecting and Analysing Satellite Data with Azure Orbital
Collecting and Analysing Satellite Data with Azure OrbitalCollecting and Analysing Satellite Data with Azure Orbital
Collecting and Analysing Satellite Data with Azure OrbitalIvo Andreev
Ā 
Language Studio and Custom Models
Language Studio and Custom ModelsLanguage Studio and Custom Models
Language Studio and Custom ModelsIvo Andreev
Ā 
CosmosDB for IoT Scenarios
CosmosDB for IoT ScenariosCosmosDB for IoT Scenarios
CosmosDB for IoT ScenariosIvo Andreev
Ā 
Forecasting time series powerful and simple
Forecasting time series powerful and simpleForecasting time series powerful and simple
Forecasting time series powerful and simpleIvo Andreev
Ā 
Constrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiConstrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiIvo Andreev
Ā 
Azure security guidelines for developers
Azure security guidelines for developers Azure security guidelines for developers
Azure security guidelines for developers Ivo Andreev
Ā 
Autonomous Machines with Project Bonsai
Autonomous Machines with Project BonsaiAutonomous Machines with Project Bonsai
Autonomous Machines with Project BonsaiIvo Andreev
Ā 
Global azure virtual 2021 - Azure Lighthouse
Global azure virtual 2021 - Azure LighthouseGlobal azure virtual 2021 - Azure Lighthouse
Global azure virtual 2021 - Azure LighthouseIvo Andreev
Ā 
Flux QL - Nexgen Management of Time Series Inspired by JS
Flux QL - Nexgen Management of Time Series Inspired by JSFlux QL - Nexgen Management of Time Series Inspired by JS
Flux QL - Nexgen Management of Time Series Inspired by JSIvo Andreev
Ā 
Azure architecture design patterns - proven solutions to common challenges
Azure architecture design patterns - proven solutions to common challengesAzure architecture design patterns - proven solutions to common challenges
Azure architecture design patterns - proven solutions to common challengesIvo Andreev
Ā 
Industrial IoT on Azure
Industrial IoT on AzureIndustrial IoT on Azure
Industrial IoT on AzureIvo Andreev
Ā 
The Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it WorkThe Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it WorkIvo Andreev
Ā 
Flying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer VisionFlying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer VisionIvo Andreev
Ā 

More from Ivo Andreev (20)

Cybersecurity and Generative AI - for Good and Bad vol.2
Cybersecurity and Generative AI - for Good and Bad vol.2Cybersecurity and Generative AI - for Good and Bad vol.2
Cybersecurity and Generative AI - for Good and Bad vol.2
Ā 
Cybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadCybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and Bad
Ā 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AI
Ā 
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for DevelopersHow do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
Ā 
OpenAI GPT in Depth - Questions and Misconceptions
OpenAI GPT in Depth - Questions and MisconceptionsOpenAI GPT in Depth - Questions and Misconceptions
OpenAI GPT in Depth - Questions and Misconceptions
Ā 
Cutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for EveryoneCutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for Everyone
Ā 
Collecting and Analysing Spaceborn Data
Collecting and Analysing Spaceborn DataCollecting and Analysing Spaceborn Data
Collecting and Analysing Spaceborn Data
Ā 
Collecting and Analysing Satellite Data with Azure Orbital
Collecting and Analysing Satellite Data with Azure OrbitalCollecting and Analysing Satellite Data with Azure Orbital
Collecting and Analysing Satellite Data with Azure Orbital
Ā 
Language Studio and Custom Models
Language Studio and Custom ModelsLanguage Studio and Custom Models
Language Studio and Custom Models
Ā 
CosmosDB for IoT Scenarios
CosmosDB for IoT ScenariosCosmosDB for IoT Scenarios
CosmosDB for IoT Scenarios
Ā 
Forecasting time series powerful and simple
Forecasting time series powerful and simpleForecasting time series powerful and simple
Forecasting time series powerful and simple
Ā 
Constrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiConstrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project Bonsai
Ā 
Azure security guidelines for developers
Azure security guidelines for developers Azure security guidelines for developers
Azure security guidelines for developers
Ā 
Autonomous Machines with Project Bonsai
Autonomous Machines with Project BonsaiAutonomous Machines with Project Bonsai
Autonomous Machines with Project Bonsai
Ā 
Global azure virtual 2021 - Azure Lighthouse
Global azure virtual 2021 - Azure LighthouseGlobal azure virtual 2021 - Azure Lighthouse
Global azure virtual 2021 - Azure Lighthouse
Ā 
Flux QL - Nexgen Management of Time Series Inspired by JS
Flux QL - Nexgen Management of Time Series Inspired by JSFlux QL - Nexgen Management of Time Series Inspired by JS
Flux QL - Nexgen Management of Time Series Inspired by JS
Ā 
Azure architecture design patterns - proven solutions to common challenges
Azure architecture design patterns - proven solutions to common challengesAzure architecture design patterns - proven solutions to common challenges
Azure architecture design patterns - proven solutions to common challenges
Ā 
Industrial IoT on Azure
Industrial IoT on AzureIndustrial IoT on Azure
Industrial IoT on Azure
Ā 
The Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it WorkThe Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it Work
Ā 
Flying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer VisionFlying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer Vision
Ā 

Recently uploaded

Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
Ā 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
Ā 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
Ā 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
Ā 
Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)
Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)
Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)jennyeacort
Ā 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
Ā 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
Ā 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
Ā 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
Ā 
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·åŠžē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·umasea
Ā 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
Ā 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
Ā 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
Ā 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
Ā 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
Ā 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
Ā 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
Ā 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
Ā 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
Ā 

Recently uploaded (20)

Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Ā 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Ā 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
Ā 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Ā 
Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)
Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)
Call UsšŸ”>ą¼’+91-9711147426ā‡›Call In girls karol bagh (Delhi)
Ā 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Ā 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
Ā 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
Ā 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
Ā 
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·åŠžē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
Ā 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
Ā 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
Ā 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
Ā 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
Ā 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
Ā 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
Ā 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
Ā 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Ā 
Hot Sexy call girls in Patel NagaršŸ” 9953056974 šŸ” escort Service
Hot Sexy call girls in Patel NagaršŸ” 9953056974 šŸ” escort ServiceHot Sexy call girls in Patel NagaršŸ” 9953056974 šŸ” escort Service
Hot Sexy call girls in Patel NagaršŸ” 9953056974 šŸ” escort Service
Ā 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Ā 

Architecting AI Solutions in Azure for Business

  • 1. Architecting AI Solutions in Azure for Business From Concept to Reality
  • 4. Uniquely Identify Users ā€¢ User has UniqueID regardless of the fact whether they are registered or not. The UniqueID for unregistered user could be assigned based. Below are a couple of ways of generating such unique ID BrowserID ā€¢ Unique id generated from the browsers user agent string. Browser|BrowserVersion|OS|OSVersion|Processor|MozzilaMajorVersion|GeckoMajorVersion ComputerID ā€¢ Generated from users IP Address and HTTPS session key. getISP(requestIP)|getHTTPSClientKey() FingerPrintID ā€¢ JavaScript based fingerprinting based on a modified fingerprint.js.FingerPrint.get() SessionID ā€¢ Random key generated when user 1st visits site. BrowserID|ComputerID|randombytes(256) GoogleID ā€¢ Generated from __utma cookie. getCookie(__utma).uniqueid Unregistered users ā€¢ generate uniqueID as above and store it in a cookie. ā€¢ User actions in the website will be traced: Searches; Views; Likes; View Contact Information
  • 5. Functional Features User Profiling ā€¢ Establish detailed user profiles by collecting information such as industry, preferences, recent searches, and location. ā€¢ Encourage users to input additional preferences and requirements to fine-tune recommendations. Contextual Awareness ā€¢ Utilize geolocation data to offer services relevant to the user's location. ā€¢ Question: Do we have time-sensitive offers, expiring during day or limited time? Consider temporal factors, such as time of day and day of the week. Behavioral Analysis ā€¢ Analyze user behaviour, including clicks, time spent on offer pages and even offer previews ā€¢ Analyze behaviour of interactions (likes, comments).
  • 6. Functional Features (Continuedā€¦) Collaborative Filtering ā€¢ Implement collaborative filtering to reflect the preferences and feedback of similar users. Supplier Score ā€¢ Integrate a supplier scoring system based on user reviews, ratings and purchase history. Suppliers with high scores should be considered reputable and reliable service providers. Real-time Feedback ā€¢ Allow users to provide feedback on recommended services directly through the banner. I.e. ā€œhideā€ and ā€œadd to favoritesā€ with sub options to hide this offer or offers from that supplier ā€¢ The feedback shall be used to continuously improve the recommendation algorithm output for the user, but also to affect the collaborative score. Transparency ā€¢ Provide user with transparency on why certain services are recommended by highlighting key factors such as user preferences, location relevance, and supplier scores. (i.e. decomposing score) ā€¢ The point will also be useful for assessment during development time
  • 7. Types of Feature Filters Content-based filtering (similarity between item features) ā€¢ The underlying assumption of the collaborative filtering approach is that if a person A has the same opinion as a person B on a set of items, A is more likely to have B's opinion for a given item than that of a randomly chosen person. ā€¢ Method makes automatic predictions (filtering) about the interests of a user by collecting preferences or taste information from many users (collaborating). Collaborative item filtering (similarity between items based on interactions) ā€¢ Uses only information about the description and attributes of the items users has previously consumed to model user's preferences. ā€¢ Algorithms tries to recommend items that are similar to those that a user liked in the past (or is examining in the present). ā€¢ Various candidate items are compared with items previously rated by the user and the best-matching items are recommended.
  • 8. Hybrid Feature Filters Hybrid Filter Recommender ā€¢ Combining collaborative filtering and content-based filtering could be more effective than pure approaches in some cases. ā€¢ These methods can also be used to overcome some of the common problems in recommender systems such as cold start (no previous history). RecommenderHybridScore = RecommenderContentScore*ContentWeight + RecommenderCollaborativeScore*ContentWeight
  • 9. Feature Types # Feature Guest User Weight Auth User Weight Type F01 Location 5 5 Content F02 Trending offers (offer views and interactions score) 5 2 Collaborative F03 Person/Organization keywords, profile N/A 10 Collaborative F04 View time (time spent on offer during scrolling) (most recent = most important) 3 Collaborative F05 Search history, Type of service 7 7 Collaborative F06 Promoted offers (a paid service) 10 5 Content F07 Content (keywords, service type) 10 10 Content F08 Clicks (most recent = most important) 15 10 Collaborative F09 Interactions (likes, comments, views of contact details) (most recent = most important) N/A 20 Collaborative F10 Realtime feedback ā€“ hide offer, hide supplier 20 30 Collaborative
  • 10. Recommender Flow Identification ā€¢ Unique User ID - Used for tracking user behaviour on the web site ā€¢ Anonymous users - Automatically generated from the browser agent and IP location ā€¢ Authorized users Incentivisation ā€¢ The web portal shall support SSO using both Facebook and Google to increase the likelihood to identify users ā€¢ There shall be certain hidden information when accessing an offer to urge the end user to log in. (i.e. contact info visible only for registered users, although for free). Data Collection ā€¢ User-Based Collaborative Data ā€¢ Anonymous user, Authenticated user ā€¢ Authenticated user only ā€¢ History of purchases ā€¢ History of visited offers (with more weight on the most recent offers accessed) ā€¢ History of interactions
  • 11. Recommender Flow (Continuedā€¦) ā€¢ Item-Based Collaborative Data ā€¢ User preferences, behavior, and interactions with the platform - historical ratings, reviews, and any explicit feedback. ā€¢ Time spent reading an offer. Look at Facebook and Instagram reels, as well as TikTok. ā€¢ The offer feed may be different for each user and could be implemented with infinite scroll where the user navigates through a summary view (images changing in a slideshow, title, short description) and the time spent to read the summary is used as a feature indicating the level of interest of end user ā€¢ Content-based Data ā€¢ Information about the items or services being recommended - attributes, features, or content-related information about each item. Data Preprocessing ā€¢ Clean and preprocess the data. Handle missing values, remove duplicates, and format the data for easy processing User-Based Collaborative Filtering o Calculate user-based collaborative filtering score o Build a user-item matrix: Create a matrix where rows represent users, columns represent items, and the cells contain ratings or interactions. o Calculate user similarities: Use metrics like cosine similarity or Pearson correlation to measure the similarity between users based on their preferences. o Predict ratings for items: Predict the ratings for items that a user has not interacted with based on the ratings of similar users.
  • 12. Recommender Flow (Continuedā€¦) Item-Based Collaborative Filtering ā€¢ Transpose the user-item matrix: Create an item-user matrix by transposing the user-item matrix. ā€¢ Calculate item similarities: Measure the similarity between items based on user interactions using techniques like cosine similarity. ā€¢ Predict ratings for users: Predict the ratings a user might give to items they haven't interacted with based on the ratings of similar items. Content Filtering ā€¢ Extract features for items: For each item, extract relevant features or attributes. This could include textual data, categorical data, or any other relevant information. ā€¢ Build an item-feature matrix where rows represent items, columns represent features, and the cells contain the values of the features. ā€¢ Calculate content similarities. Use similarity measures (e.g., cosine similarity) to determine how similar items are based on their features. ā€¢ Combine collaborative and content similarities. This could involve weighting each similarity measure based on its importance. Hybrid Recommender ā€¢ Combine the recommendations from collaborative and content filtering, giving appropriate weight to each.
  • 13. Evaluation and Improvement Evaluation ā€¢ Split the data into training and testing sets. Evaluate the performance of your recommender system by comparing predicted ratings or recommendations with actual user interactions in a testing set. ā€¢ Utilize metrics such as Root Mean Squared Error (RMSE) ā€“ i.e. the distance between real and predicted score Continuous Improvement ā€¢ Implement mechanisms to continuously update and retrain the recommender system as new data becomes available. Takeaways ā€¢ Content Based Recommendation System o https://www.youtube.com/watch?v=9_YdIjGl2m4 ā€¢ Kaggle Music Recommender o https://www.kaggle.com/code/vatsalmavani/music-recommendation-system-using-spotify-dataset ā€¢ Kaggle Movie Recommender o https://www.kaggle.com/code/rounakbanik/movie-recommender-systems ā€¢ Kaggle E-commerce Recommender o https://www.kaggle.com/code/shawamar/product-recommendation-system-for-e-commerce ā€¢ Kaggle Content based Recommender o https://www.kaggle.com/code/omeroruccelik/content-based-recommendation-systems ā€¢ Recommender System in Python o https://www.kaggle.com/code/gspmoreira/recommender-systems-in-python-101 ā€¢ Azure ML Recommender System o https://azure.microsoft.com/en-us/blog/building-recommender-systems-with-azure-machine-learning-service/
  • 14. App Service - Hybrid Connection ā€¢ Access on-premises AZ SQL DB from the cloud ā€¢ Install Hybrid Connection Manager on-premises
  • 16. AI-Enabled Cash Register ā€¢ Snap a photo with food item ā€¢ Device detects items from photo ā€¢ App determines item attributes
  • 17. Azure Service ā€“ to ā€“ Function Mapping Function App ā€¢ Receives images for scoring (Flow 1) ā€¢ Receives prediction to be saved (Flow 2) ā€¢ Synchronizes device config. with DB AKS ā€¢ Hosting AI Models AZ ML Service ā€¢ Labeling images ā€¢ Datasets ā€¢ Models ā€¢ Training ā€¢ Deployments Function App (Builder) ā€¢ Builds datasets ā€¢ Crates ML job ā€¢ Deploys models Web App ā€¢ Show prediction results ā€¢ Manage known items and daily tasks (menu) Azure SQL DB ā€¢ Asset Structure ā€¢ Menus ā€¢ Predictions IoT Hub ā€¢ Device Configuration Storage ā€¢ Store prediction images
  • 18. Gateway Module Architecture Flow Camera captures image Deduplication (Scene has Changes) Check Target - Crop image to tray area Deduplication - Check image focus Check for Known Items (Flow 1) Deduplication - Check items on tray GDPR Check ā€“ Personal items Upload image to storage Persist Image (Flow 2) Tray Detection AI Model GDPR Detection AI Model
  • 19. Auxiliary Flows RPI Device API Management Dynamic Endpoint AZ ML Deployment Endpoint RPI Device Azure Function Dynamic Endpoint Flow 2: Saving Prediction Results Flow 1: Send Items for Object Detection
  • 20. Object Scene Deduplication ā€¢ Deduplication 1: Image must be at least 20% different that the previous one. Comparing image hash values. ā€¢ Deduplication 2: Image must pass blurriness threshold. Checking pixel variance. ā€¢ Deduplication 3: Comparing polygons (fingerprint) made of the centroids of the detected foods between two images.
  • 23. Detection Issues from Labeling ā€¢ Too small polygon shape ā€¢ Too simple polygon shape ā€¢ Too complex polygon shape ā€¢ Wrong polygon shape ā€¢ ML assisted labeling glitch
  • 24. Detection Issues from Labeling ā€¢ Too small polygon shape ā€¢ Too simple polygon shape ā€¢ Too complex polygon shape ā€¢ Wrong polygon shape ā€¢ ML assisted labeling glitch
  • 25. Detection Issues from Labeling ā€¢ Too small polygon shape ā€¢ Too simple polygon shape ā€¢ Too complex polygon shape ā€¢ Wrong polygon shape ā€¢ ML assisted labeling glitch
  • 26. Detection Issues from Labeling ā€¢ Too small polygon shape ā€¢ Too simple polygon shape ā€¢ Too complex polygon shape ā€¢ Wrong polygon shape ā€¢ ML assisted labeling glitch
  • 27. Detection Issues from Labeling ā€¢ Too small polygon shape ā€¢ Too simple polygon shape ā€¢ Too complex polygon shape ā€¢ Wrong polygon shape ā€¢ ML assisted labeling glitch