SlideShare a Scribd company logo
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

PPTX
Movie Recommender System Using Artificial Intelligence
PDF
Recsys2016 Tutorial by Xavier and Deepak
PDF
Machine-Learning-for-Personalization[1].pdf
PPTX
Recommendation Systems Basics
PPTX
Recommender system
PPT
Cs548 s15 showcase_web_mining
PDF
Recommendation
PDF
Recommending the Appropriate Products for target user in E-commerce using SBT...
Movie Recommender System Using Artificial Intelligence
Recsys2016 Tutorial by Xavier and Deepak
Machine-Learning-for-Personalization[1].pdf
Recommendation Systems Basics
Recommender system
Cs548 s15 showcase_web_mining
Recommendation
Recommending the Appropriate Products for target user in E-commerce using SBT...

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

PPTX
Web usage mining
PPTX
Personalize experience on web understand-implement-evaluate - kumar pritam
PDF
Modern Perspectives on Recommender Systems and their Applications in Mendeley
PDF
Real-Time Recommendations with Hopsworks and OpenSearch - MLOps World 2022
PPTX
SharePoint 2013 search improvements
PPTX
Web personalization
PPTX
Collaborative Filtering Recommendation System
PDF
Study of Recommendation System Used In Tourism and Travel
PPTX
Recommendation Systems
PPTX
Recommender System _Module 1_Introduction to Recommender System.pptx
PPT
Agent technology for e commerce-recommendation systems
PPTX
Recommender Systems
PDF
Webinar: Increase Conversion With Better Search
PPTX
Mini-training: Personalization & Recommendation Demystified
PDF
Recommendation engines
PPTX
major ppt.pptx
PPTX
Recommender system
PDF
Overview of recommender system
PDF
B1802021823
PDF
Recommender systems
Web usage mining
Personalize experience on web understand-implement-evaluate - kumar pritam
Modern Perspectives on Recommender Systems and their Applications in Mendeley
Real-Time Recommendations with Hopsworks and OpenSearch - MLOps World 2022
SharePoint 2013 search improvements
Web personalization
Collaborative Filtering Recommendation System
Study of Recommendation System Used In Tourism and Travel
Recommendation Systems
Recommender System _Module 1_Introduction to Recommender System.pptx
Agent technology for e commerce-recommendation systems
Recommender Systems
Webinar: Increase Conversion With Better Search
Mini-training: Personalization & Recommendation Demystified
Recommendation engines
major ppt.pptx
Recommender system
Overview of recommender system
B1802021823
Recommender systems
Ad

More from Ivo Andreev (20)

PDF
Multi-Agent Era will Define the Future of Software
PDF
LLM-based Multi-Agent Systems to Replace Traditional Software
PDF
LLM Security - Smart to protect, but too smart to be protected
PDF
What are Phi Small Language Models Capable of
PDF
Autonomous Control AI Training from Data
PDF
Autonomous Systems for Optimization and Control
PDF
Cybersecurity and Generative AI - for Good and Bad vol.2
PDF
Cybersecurity Challenges with Generative AI - for Good and Bad
PDF
JS-Experts - Cybersecurity for Generative AI
PDF
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
PDF
OpenAI GPT in Depth - Questions and Misconceptions
PDF
Cutting Edge Computer Vision for Everyone
PDF
Collecting and Analysing Spaceborn Data
PDF
Collecting and Analysing Satellite Data with Azure Orbital
PDF
Language Studio and Custom Models
PDF
CosmosDB for IoT Scenarios
PDF
Forecasting time series powerful and simple
PDF
Constrained Optimization with Genetic Algorithms and Project Bonsai
PDF
Azure security guidelines for developers
PDF
Autonomous Machines with Project Bonsai
Multi-Agent Era will Define the Future of Software
LLM-based Multi-Agent Systems to Replace Traditional Software
LLM Security - Smart to protect, but too smart to be protected
What are Phi Small Language Models Capable of
Autonomous Control AI Training from Data
Autonomous Systems for Optimization and Control
Cybersecurity and Generative AI - for Good and Bad vol.2
Cybersecurity Challenges with Generative AI - for Good and Bad
JS-Experts - Cybersecurity for Generative AI
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
OpenAI GPT in Depth - Questions and Misconceptions
Cutting Edge Computer Vision for Everyone
Collecting and Analysing Spaceborn Data
Collecting and Analysing Satellite Data with Azure Orbital
Language Studio and Custom Models
CosmosDB for IoT Scenarios
Forecasting time series powerful and simple
Constrained Optimization with Genetic Algorithms and Project Bonsai
Azure security guidelines for developers
Autonomous Machines with Project Bonsai
Ad

Recently uploaded (20)

PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
Computer Software and OS of computer science of grade 11.pptx
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Patient Appointment Booking in Odoo with online payment
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
AutoCAD Professional Crack 2025 With License Key
PDF
Nekopoi APK 2025 free lastest update
PDF
Autodesk AutoCAD Crack Free Download 2025
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Design an Analysis of Algorithms II-SECS-1021-03
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Design an Analysis of Algorithms I-SECS-1021-03
Wondershare Filmora 15 Crack With Activation Key [2025
Digital Systems & Binary Numbers (comprehensive )
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
CHAPTER 2 - PM Management and IT Context
Computer Software and OS of computer science of grade 11.pptx
How to Choose the Right IT Partner for Your Business in Malaysia
Patient Appointment Booking in Odoo with online payment
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Odoo Companies in India – Driving Business Transformation.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
Adobe Illustrator 28.6 Crack My Vision of Vector Design
AutoCAD Professional Crack 2025 With License Key
Nekopoi APK 2025 free lastest update
Autodesk AutoCAD Crack Free Download 2025

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