39
Enhancing the Umbraco Enhancing the Umbraco experience using machine experience using machine learning learning Steve Temple Technical Director

Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Enhancing the UmbracoEnhancing the Umbracoexperience using machineexperience using machine

learninglearning

Steve TempleTechnical Director

Page 2: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

About meAbout meTechnical Director and co­owner of Gibe

Umbraco MVPUmbraco Certified Master

Organiser of Umbraco Spark conference 

Will be using AI and Machine Learning interchangeablyApproaching Machine Learning as a developer

I am not a data scientistHave been playing with Azure ML since it came outFirst experiments were predicting horse racing results

Page 3: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

UmbracoSpark Developer Conference

Bristol6th March 2020

Page 4: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Point of the talkPoint of the talk

No �nished out of the boxNo �nished out of the boxsolutionssolutions

Intention is to spark ideas and inspire packagesThere is a massive learning curve to some of these

But for some solutions the hard work has been done an it's up to usto figure out how to use it

Page 5: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Machine Learning toolsMachine Learning tools

On the shoulders of giantsOn the shoulders of giants 

Services available from amongst others:

Microsoft Azure, AWS,Microsoft Azure, AWS,Google, IBMGoogle, IBM

  

Page 6: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire
Page 7: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

What can you useWhat can you useMachine Learning for?Machine Learning for?

ClassificationPrediction

Anomaly detection

How can we use these to solve problems inHow can we use these to solve problems inUmbraco sites?Umbraco sites?

Page 8: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Classi�cationClassi�cationCategorising & tagging mediaCategorising & tagging media

or contentor content

Page 9: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire
Page 10: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Problem to solveProblem to solveHow can we use AI to improveHow can we use AI to improve

Umbraco's media section?Umbraco's media section?

Page 11: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

1. No standard location for media2. Doesn't scale to 10,000s of images 3. Hard to find the exact image you want

 

The Media TreeThe Media TreeDoes a tree make sense for Media?

Page 12: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Has some downsides:Needs more information on each image/video/file

Editors would have to tag/categorise all media including existingmedia

Could we searchCould we searchinstead?instead?

Page 13: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Tagging of mediaTagging of mediaUse Azure Vision API to autoUse Azure Vision API to auto

tag/categorise/detect featurestag/categorise/detect featuresin imagesin images

 DEMO

Page 14: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Great demoGreat demoBut rubbish IRLBut rubbish IRL

Page 15: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Custom Vision APICustom Vision APIWe can train our own modelWe can train our own modelwith our own tags which wewith our own tags which we

want to detectwant to detect 

DEMO

  

Page 16: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

What other APIsWhat other APIscould we use?could we use?

Focal point?Video analysis?Image cropper?Visual search?

Page 17: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

What about content?What about content?Auto tagging / subject identification

Automated translation

Optical Character Recognition (OCR)https://our.umbraco.com/packages/backoffice­extensions/translation­manager/

https://our.umbraco.com/packages/backoffice­extensions/ocr­content­app/

Page 18: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

PredictionPredictionRecommending other contentRecommending other content

Page 19: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Problem to solveProblem to solveHow can we use AI toHow can we use AI to

recommend content on a site?recommend content on a site?

Page 20: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Azure Machine Learning StudioAzure Machine Learning Studio

Page 21: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Azure Machine Learning StudioAzure Machine Learning Studio

Page 22: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Azure Machine Learning ServiceAzure Machine Learning Service

Replaces Azure ML StudioCan use VS Code or Jupyter Notebooks

Page 23: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Azure DatabricksAzure Databricks

Very powerfulVery complicated!

Works with Azure ML Services

Page 24: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Solutions/ExamplesSolutions/Examples

https://gallery.azure.ai

Page 25: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

RecommendationsRecommendationsSolutionSolution

Prebuilt solution template that deploys Azure resources pre­configured for performing recommendations

 Needs usage information and catalog information to train the

model 

  

https://github.com/Microsoft/Product­Recommendations

Page 26: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Recommendations solutionRecommendations solution

Needs to be supplied with 2 models to createrecommendations

Page 27: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

UsageUsageModelsModels

How users are using the site

Page 28: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

CatalogCatalogModelsModels

Product or content information

Page 29: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Con�guring and usingCon�guring and usingthe API the API 

REST API with Swagger UIREST API with Swagger UI1. Create a trained model2. Make requests to the API for recommendations

 DEMO

Page 30: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Suggesting media to editorsYou might also like / related content

Estimated time to readPersonalisation

...

How about?How about?

Page 31: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Anomaly DetectionAnomaly DetectionMaking sites more secure andMaking sites more secure and

easier for the userseasier for the users

Page 32: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Problem to solveProblem to solveCan we use AI to makeCan we use AI to make

user/member logins simpleruser/member logins simplerwhile being more securewhile being more secure

Page 33: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

LoginLoginCould we serve different user orCould we serve different user or

member login experiencesmember login experiencesbased on probability of the userbased on probability of the user

being legitimatebeing legitimate

Page 34: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Factors we mightFactors we mightconsiderconsider

IP AddressCountryRegionTime

Browser / cookie recognisedPrevious logins

Recent failed attemptsPrivileges

Page 35: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Score the attemptScore the attempt> 98% 

Auto login?Remember me, etc

75% +Regular login

 < 75%Show RecaptchaRequire 2FA

Page 36: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

This all sounds superThis all sounds supercomplexcomplex

https://giphy.com/embed/5dYeglPmPC5lL7xYhs

Page 37: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

How to get startedHow to get startedSo much potentialSo much potentialGet a free azure account & experiment

There are multiple competitions/challenges all come with brilliantdata sets to get started with

Steep learning curve, but look at sample solutions and work fromthere 

Page 38: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

ResourcesResourceshttps://studio.azureml.net/

https://azure.microsoft.com/en­gb/services/cognitive­services/

https://gallery.azure.ai/

https://github.com/Microsoft/Product­Recommendations

https://docs.microsoft.com/en­us/azure/machine­learning/studio/algorithm­choice

Page 39: Technical Director experience using machineEnhancing the Umbraco experience using machine learning Steve Temple Technical Director. About me ... Intention is to spark ideas and inspire

Thank youThank you