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.

2018 .NET Conf - 利用Machine Learning .NET整合機器學習至應用程式

126 views

Published on

2018 .NET Conf Taiwan Study4 Event
http://study4.tw/Activity/Details/20

AI在生活中漸漸無所不在,市面上也越來越多服務串接及整合AI,
然而AI聰明取決於Prediction Model的建立,但是AI建立模型只能用R、Python嗎?
ML.NET是為.NET開發人員構建的機器學習框架,
使用ML.NET能夠輕鬆的將自定義機器學習整合到您的應用程式之中。
這堂課將直接展示Machine Learning with .NET的威力,AI有夠潮,一起AI吧!

講師介紹:

Alan Tsai
沉浸於.NET 世界的後端工程師,除了最熟悉的Asp .Net MVC之外,喜歡學一些和程式開發有關的東西像Azure、Container、DevOps、Data Science等。
近年開始關注AI相關:Bot Framework (chatbot)、Cognitive Service、IoT Edge等。
樂於分享以及協助翻譯開源軟件,現任Study4成員之一。
除了寫程式以外,就愛看小說。

經歷
Study4 社群成員
2018 北京Azure Bootcamp講師
2017 .NET Conf 講師


相關連結
部落格:Alan Tsai的學習筆記
FB粉絲團:http://fb.alantsai.net
Linkedin:http://linkedin.alantsai.net
Twitter:http://twitter.alantsai.net
Google+:http://plus.alantsai.net



Alan Liu
曾經擔任ASP寫到ASP.NET的開發人員
正在修煉於Azure微軟雲的各式解決方案
參與社群到枕邊人都抓狂的社群狂熱者

經歷
CloudRiches Solution Architect
Microsoft MVP
Study4TW
Azure Taiwan Speaker
Azure Bootcamp Speaker
.NET Conf Speaker

相關連結
部落格:維持熱情不滅

Published in: Software
  • Be the first to comment

  • Be the first to like this

2018 .NET Conf - 利用Machine Learning .NET整合機器學習至應用程式

  1. 1. www.dotnetconf.net
  2. 2. • Alan Tsai 蔡孟玹 • 后端工程师 • 宏富云讯息科技有限公司 • Alan Tsai 的學習筆記 https://blog.alantsai.net • contact@alantsai.net alantsai.blog @alantsi2007 Line@
  3. 3. CloudRiches Solution Architect Microsoft MVP Study4TW Azure Taiwan Speaker Azure Bootcamp Speaker .NET Conf Speaker Web Development Cloud Service
  4. 4. • Triple A • Triple Kill
  5. 5. • 當一切需要“AI” • Machine Learning .NET • Future
  6. 6. 當一切都需要“AI”…
  7. 7. • 如果需要取得訂餐需求……. • 傳統程式開發 • 全部列出來? if(orderString.Contains("漢堡")) { ... } else if() ....
  8. 8. • 有沒有這種東西…. f(x){ 我要一份漢堡餐可樂加大, 然後還要一份蘋果派,在 來2個布丁霜淇淋
  9. 9. • Computer Vision 識別 乖乖 不成功 • 可以用Custom Vision
  10. 10. 真的這麽美好嗎??? 我們接著往下看
  11. 11. Cognitive Service的問題
  12. 12. Vision Speech Language Knowledge SearchLabs e.g. Sentiment Analysis using Azure Cognitive Services 96% positive 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") }));
  13. 13. Full Control / Harder Vision Speech Language Knowledge SearchLabs e.g. Sentiment Analysis using Azure Cognitive Services 9% positive 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") }));
  14. 14. • AI != API • AI != API • AI != API • AI != API • AI != API • AI != API • AI != API • AI != API • AI != API
  15. 15. Machine Learning .NET
  16. 16. Machine Learning “Programming the UnProgrammable” f(x) Model Machine Learning creates a Using this data But it needs a lot of sample training data in order to predict properly… ;)
  17. 17. Is this A or B? How much? How many? How is this organized? Would you like?
  18. 18. • 讓開發Machine Learning Model變得簡單 • Developer也行
  19. 19. • Python , R are great for ML and Data Science • ML.NET complements the experience that AML Studio and Cognitive Service Provide
  20. 20. Machine Learning lifecycle Historic Data Test / Evaluate Build & Train ML model file (Trained) Prepare Data, Build and Train an ML model Run/consume the ML model in app Run / Predict ? Web apps / Services Mobile apps Desktop apps Bots IoT
  21. 21. Machine Learning lifecycle Historic Data Test / Evaluate Build &Train ML model .ZIP file (Trained) Prepare Data, Build and Train an ML model ML.NET API (.NET Console app, etc.) ML.NET Model Builder (UI Desktop Tool) ML Tasks, Data Transforms, Learners/Algorithms ML.NET API (.NET app) API to run the model nuget nuget Business Application (Web/Service/Desktop/Mobile) ML model file .NET Core or .NET Framework Predict: Run/consume the ML model ? Live User’s Data ML.NET API to consume the model Run / Predict .NET Core or .NET Framework .NET Core or .NET Framework .csv files etc.
  22. 22. TensorFlow nuget .NET Standard .NET Core .NET Framework
  23. 23. • 從 2018/05 發佈 • 每個月Release 1個版本 • 目前在 0.5 • 官方repo https://github.com/dotnet/machinelearning
  24. 24. + more! Windows 10 Power Point Excel Bing Ads
  25. 25. 如何使用?
  26. 26. Machine Learning lifecycle Historic Data Test / Evaluate Build & Train Load Data Transform Data Chose Feature and Label data Train using Algorithm Evaluate Model
  27. 27. Is this A or B? Which label should this issue be assigned?
  28. 28. Load Data Transform Data Chose Feature and Label Train using Algorithm Evaluate Model
  29. 29. • 更多資料 • 不同的資料處理方式 • 選擇不同的Feature 調整Data • 不同的演算法 • 不同的參數 調整 Algorithm Load Data Transform Data Chose Feature and Label Train using Algorithm Evaluate Model 80%所花的時間
  30. 30. • 不過可以用第三方的Deep Learning Model • 例如TensorFlow
  31. 31. • 使用TensorFlow的Model作爲開始 • 使用Inception V3 Model • Sample https://github.com/dotnet/machinelearning- samples/tree/master/samples/csharp/examples/DeepLearning_TensorFlowMLN ETInceptionv3ModelScoring • ML.NET 0.5 有問題 -> 要用 0.6 Preview
  32. 32. • 目前的Pipeline不靈活 • 沒有强行別 • 名稱更符合慣用
  33. 33. 結語
  34. 34. • 專門為開發者設計 • 用來建立Custom Model的Framework UI tool, easy to get started for .NET developers (*) To be released .NET code-first approach to build & train custom models
  35. 35. • 新的API • Model Builder (UI) • 更多 Trainer • 工具使用更加方便
  36. 36. AI, ML and DeepLearning technologies Client apps Bots (Bot Framework) Web apps (ASP.NET) Mobile apps and IoT Edge devices (Xamarin) (IoT Edge SDKS) Consume (Pre-built AI: Ready to use) Azure Cognitive Services Pre-trained models (ONNX, CoreML, WindowsML) Visual Studio and .NET Easier / Less control Harder / Full control Build your own (Custom AI) ML.NET TensorFlow, CNTK, Torch, ONNX, etc.. Azure Machine Learning Studio Integration
  37. 37. • ML.NET 相關 https://github.com/dotnet/machinelearning https://github.com/dotnet/machinelearning-samples https://docs.microsoft.com/en-us/dotnet/machine-learning/ https://blogs.msdn.microsoft.com/dotnet/tag/ml-net/ https://channel9.msdn.com/Events/dotnetConf/2018 https://channel9.msdn.com/Events/Build/2018
  38. 38. • Demo的Sample程式碼 https://to.alantsai.net/code-mlnet • Machine Learning / Cognitive Service / Chatbot https://to.alantsai.net/blog-datascience https://to.alantsai.net/blog-chatbot-with-ai https://to.alantsai.net/blog-face-api
  39. 39. Q & A 謝謝大家 幫我填個問卷: http://to.alantsai.net/20180929-event-q

×