Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

.NET Fest 2018. Оля Гавриш. Машинное обучение для .NET разработчиков с помощью ML.NET

27 views

Published on

А Вы знали, что практически для каждого проекта можно применить машинное обучение? К счастью времена, когда для этого нужно было становится математиком-аналитиком давно прошли. Больше нет необходимасти изучать новый язык программирования (как Python или R) и осваивать численные методы. Теперь, благодаря ML.NET, Вы можете программировать в хорошо знакомой .NET среде и использовать уже реализованные для Вас алгоритмы и методы обработки данных. ML.NET – это расширяемый .NET фреймворк для машинного обучения. В этом докладе Вы узнаете, что уже доступно в ML.NET и что планируется в следующих версиях. Мы вместе напишем в Visual Studio модель для машинного обучения с помощью нескольких строк C# кода и поговорим о том, как улучшать Ваши приложения применяя методы искусственного интеллекта.

Published in: Education
  • Be the first to comment

  • Be the first to like this

.NET Fest 2018. Оля Гавриш. Машинное обучение для .NET разработчиков с помощью ML.NET

  1. 1. Machine Learning for .NET Developers with ML.NET t WITH PASSION TO TECHNOLOGY Olia Gavrysh .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  2. 2. Olia Gavrysh Program Manager Microsoft, .NET team t .NET LEVEL UP KYIV 2018 About me twitter: @oliagavrysh email: oliag@microsoft.com
  3. 3. Тема доклада Тема доклада Тема доклада .NET LEVEL UP How the world sees ML .NET CONFERENCE #1 IN UKRAINE KYIV 2018
  4. 4. Тема доклада Тема доклада Тема доклада .NET LEVEL UP Today we will talk … .NET CONFERENCE #1 IN UKRAINE KYIV 2018 1. About Machine Learning 2. About ML.NET 3. Build ML.NET Hello World example 4. Deep dive in ML.NET current and future
  5. 5. .NET LEVEL UP What can ML do? .NET CONFERENCE #1 IN UKRAINE KYIV 2018
  6. 6. .NET LEVEL UP Machine Learning “Programming the UnProgrammable” .NET CONFERENCE #1 IN UKRAINE KYIV 2018 rooms, bedrooms, bathrooms location, view, near school footage year built garage, basement, patio … {f(x) {f(x)
  7. 7. .NET LEVEL UP Machine Learning “Programming the UnProgrammable” .NET CONFERENCE #1 IN UKRAINE KYIV 2018 f(x) Model Machine Learning creates a using this data {
  8. 8. Many ML Tasks Is this A or B? How much? How many? How is this organized? Regression ClusteringClassification And many more…
  9. 9. .NET LEVEL UP Existing solutions for ML .NET CONFERENCE #1 IN UKRAINE KYIV 2018 1. Python libraries: TensorFlow, scikit-learn, Caffe, ... 2. R, MATLAB, … 3. .NET: Azure Cognitive Services, ML.NET VSPrebuild & Pretrained Custom
  10. 10. Pre-built ML models (i.e. Azure Cognitive Services) Vision Speech Language Knowledge SearchLabs TextAnalyticsAPI client = new TextAnalyticsAPI(); client.AzureRegion = AzureRegions.Westus; client.SubscriptionKey = "1bf33391DeadFish"; client.Sentiment( new MultiLanguageBatchInput( new List<MultiLanguageInput>() { new MultiLanguageInput("en","0", "This is a great vacuum cleaner") })); 96% positive e.g. Sentiment Analysis using Azure Cognitive Services
  11. 11. Limitations with pre-built ML models TextAnalyticsAPI client = new TextAnalyticsAPI(); client.AzureRegion = AzureRegions.Westus; client.SubscriptionKey = "1bf33391DeadFish"; client.Sentiment( new MultiLanguageBatchInput( new List<MultiLanguageInput>() { new MultiLanguageInput("en","0", "This vacuum cleaner sucks so much dirt") })); e.g. Sentiment Analysis using Azure Cognitive Services 9% positive Vision Speech Language Knowledge SearchLabs
  12. 12. How the .NET team uses Demo: GitHub Issue Classification t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  13. 13. What is ML.NET t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  14. 14. Тема доклада Тема доклада Тема доклада .NET LEVEL UP ML.NET .NET CONFERENCE #1 IN UKRAINE KYIV 2018 Open source cross-platform .NET framework for building custom models  Free  Flexible  Available offline
  15. 15. Windows 10 (Windows Defender) Power Point (Design Ideas) Excel (Chart Recommendations) Bing Ads (Ad Predictions) + moreAzure Stream Analytics (Anomaly Detection) Proven at Scale and Enterprise Ready
  16. 16. .NET LEVEL UP Creating ML.NET Model .NET CONFERENCE #1 IN UKRAINE KYIV 2018 Train Evaluate UseBuild
  17. 17. .NET LEVEL UP Building ML.NET Model .NET CONFERENCE #1 IN UKRAINE KYIV 2018 Build 1. Upload Data 2. Prepare Data 3. Choose Algorithm
  18. 18. ML.NET Model for Sentiment Analysis t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  19. 19. .NET LEVEL UP Sentiment Analysis Problem .NET CONFERENCE #1 IN UKRAINE KYIV 2018 Wow... Loved this place Crust is not good The selection on the menu was great and so were the prices Would not go back
  20. 20. .NET LEVEL UP Sentiment Analysis Problem .NET CONFERENCE #1 IN UKRAINE KYIV 2018 Wow... Loved this place Crust is not good The selection on the menu was great and so were the prices Would not go back Waterfront view and 5 course dinner. What else can I wish for?! ?
  21. 21. Is this A or B? Is this a positive review? Yes or No Problem Type - Classification .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  22. 22. Review Positive sentiment? Wow... Loved this place. 1 Crust is not good. 0 The selection on the menu was great and so were the prices. 1 Would not go back. 0 Features (input) Label (output) Data .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  23. 23. Review Wow... Loved this place. Crust is not good. The selection on the menu was great and so were the prices. Would not go back. Text Featurizer Featurized Text [0.76, 0.65, 0.44, …] [0.98, 0.43, 0.54, …] [0.35, 0.73, 0.46, …] [0.39, 0, 0.75, …] Preparing Data .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  24. 24. Demo: Reviews Sentiment Analysis t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  25. 25. .NET LEVEL UP Preview means active development .NET CONFERENCE #1 IN UKRAINE KYIV 2018 - In v0.6 new APIs were introduced More info on .NET Blog
  26. 26. Comment Wow... Loved this place Prediction Function Predicted Label – Positive? 1 Example Main Concepts of new APIs
  27. 27. Demo: Sentiment Analysis with new APIs t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  28. 28. Deep Learning t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  29. 29. • Revolutionizing areas like computer vision and speech recognition • Takes advantage of large amounts of data and compute Deep learning
  30. 30. Deep learning with ML.NET .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  31. 31. Predicting Image classes with ML.NET + TensorFlow
  32. 32. Image Classification Demo: TensorFlow + ML.NET t WITH PASSION TO TECHNOLOGY .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  33. 33. ONNX: Open and interoperable AI .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  34. 34. And more! Samples @ https://github.com/dotnet/machinelearning-samples Customer segmentation Recommendations Predictive maintenance Forecasting Issue Classification Sentiment Analysis Image classification Object detection A few things you can do with ML.NET …
  35. 35. ML.NET 0.1 May 2018 ML.NET 0.2 June 2018 ML.NET 0.4 Aug 2018 ML.NET 0.3 July 2018 ML.NET 0.5 Sept 2018 ML.NET 0.6 Oct 2018
  36. 36. • Additional ML Tasks and Scenarios • GUI to simplify ML tasks • More Deep Learning with TensorFlow • Scale-out on Azure • Improved tooling in Visual Studio • More support for F# • Language innovations for .NET What’s next with ML.NET? .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  37. 37. http://dot.net/ml http://aka.ms/mlnetsamples http://aka.ms/mlnetdocs http://aka.ms/mlnet ML.NET today! .NET CONFERENCE #1 IN UKRAINE KYIV 2018.NET LEVEL UP
  38. 38. Тема доклада Тема доклада Тема доклада KYIV 2018 Thank you! twitter: @oliagavrysh email: oliag@microsoft.com Q&A
  39. 39. AUC: Explanation True positive rate (TPR) = False positive rate (FPR)= The AUC value lies between 0.5 to 1 where 0.5 denotes a bad classifier and 1 denotes an excellent classifier.

×