SlideShare a Scribd company logo
如何打造高效的機器學習平台
Linker Networks
Evan Lin
關於我
● Linker Networks 雲端架構師
● Golang.tw 共同協辦人
● 碼天狗策展者
兩年前..
摘要
● 何謂機器學習平台
● 為何你應該打造自己的機器學習平台
● 打造機器學習平台經驗談
● 如何打造高效的機器學習平台
● 結論
人工智慧與機器學習的應用
大廠的人工智慧 API
機器學習流程 (機器學習平台)
From “Introduction to Microsoft Azure” by David Chappell
拿人臉辨識為例子....
透過加上特徵點
Example: Face detection - annotation
透過計算產生機器學習模型
透過圖片輸入可以預測你需要的資訊
Azure Face API: https://azure.microsoft.com/zh-tw/services/cognitive-services/face/
為何你需要建置自己的機器學習平台
開源的深度學習套件
開源的深度學習套件: 大數據才是重點
誰有大數據
那.. 我們來自己架機器開發機器學習平台
製作機器學習平台常遇到的問題
● 不易安裝的環境
● 不易同步的訓練資料
● 無法最佳化的訓練排程
● 大量的資料前處理
買數台 Nvidia GTX 1080 Ti
安裝 CUDA8 與 cuDNN v7 與 Tensorflow GPU
Install Nvidia Driver
Install CUDA8 binary
Build CuDNN v7 from source
code
Install Tensorflow GPU
Refer: https://technews.tw/2017/11/07/ai-server-guidance-2-tensorflow/
安裝你常用的工具( console or jupyter notebook)
好不容易裝好
資料科學家跑來跟你說
PyTorch 似乎很好用,可以幫我重裝嗎?
CUDA9 似乎有變快,可以幫我重裝嗎?
混亂的訓練環境
Python2 Python3
混亂的訓練環境 - Docker 似乎可以解決問題
Python2 Python3
每個使用者還是有自己喜歡的環境
numpy
keras
jupyter
Darkflow
CV
numpy
甚至是兩種作業環境
不易同步的訓練資料
龐大的來源訓練資料
每個人的資料處理方式不同
如何共享處理過的資料夾
Refer: Line貼圖 辦公室常用英語 https://store.line.me/stickershop/product/1429804/zh-Hant
無法最佳化的訓練排程
t2:訓練t2:資料清洗
t1:訓練t1:資料清洗 t.4 資料清
洗
t3:訓練t3:資料清洗
下班 上班
大量資料前處理
人臉辨識標記
經過了不斷的點擊...
Dlib 需要至少 68 個特徵點
Kubernetes 讓建制機器學習平台更容易
● 資源抽象化 (Device Plugin)
● 工作排程
製作機器學習平台常遇到的問題
● 不易安裝的環境
● 不易同步的訓練資料
● 無法最佳化的訓練排程
● 大量的資料前處理
如何解決: 不易安裝的環境
提供給使用者客製化的方式
客製化環境準備流程
如何解決: 不易同步的訓練資料
節點間的資料如何共通
透過 Persistent Volume
如何解決: 無法最佳化的訓練排程
Kubernetes 提供良好的排程功能,但是
透過自製工作管理器提供高彈性選擇
具有客製化 pipeline 處理的工作管理員
具有客製化 pipeline 處理的工作管理員
(model convertor)
如何解決: 大量的資料前處理
資料前處理需要大量人工輸入...
但是.. 其實有更容易的方式
Realtime learning and Inference
總結
● 機器學習平台是下個世代的 KillerApp
● 機器學習平台還有些困難點值得討論
● 透過 Kubernetes 有效的整合資源,提升整體效能

More Related Content

PDF
Introduction to MLOps in Azure Machine Learning with Live Demo
Ko Ko
 
PDF
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
Ko Ko
 
PDF
Azure Machine Learning 重頭學
Ko Ko
 
PPTX
ML.NET 在遷移式學習的應用與挑戰
Ko Ko
 
PDF
Bot framework composer---用圖形化介面來建立聊天機器人
Ko Ko
 
PDF
簡介Azure在Chatbot開發上的應用
Ko Ko
 
PDF
用 Azure 快速部署與開發 LINE bot
Ko Ko
 
PDF
2021 MOPCON - 行動化解決方案的技術選型, 交給 Line Bot 來搞定
Kyle Shen
 
Introduction to MLOps in Azure Machine Learning with Live Demo
Ko Ko
 
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
Ko Ko
 
Azure Machine Learning 重頭學
Ko Ko
 
ML.NET 在遷移式學習的應用與挑戰
Ko Ko
 
Bot framework composer---用圖形化介面來建立聊天機器人
Ko Ko
 
簡介Azure在Chatbot開發上的應用
Ko Ko
 
用 Azure 快速部署與開發 LINE bot
Ko Ko
 
2021 MOPCON - 行動化解決方案的技術選型, 交給 Line Bot 來搞定
Kyle Shen
 

Similar to iThome Modern Web 2018: 如何打造高效的機器學習平台 (20)

PPT
信息系统开发平台OpenExpressApp
zhoujg
 
PPTX
2024/11/29 DevOps Taiwan #64 : 從初建到進階:打造符合公司需求的混合雲端 GitLab DevOps 流水線
Freddy Fan
 
PDF
Global Azure Bootcamp @ 廣州 - 智能聊天機器人四代目
Poy Chang
 
PPTX
面對移動化App挑戰的架構設計
Clark
 
PDF
2020 MLaaS 產業介紹.pdf
家弘 周
 
PDF
2024年11月14日的講座《AI 業界應用與未來趨勢》由微軟Azure HPC/AI工程部的主要計劃經理蔡孟儒主講,涵蓋了生成式AI的進展、如何客製化A...
Meng-Ru (Raymond) Tsai
 
PDF
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
Alan Tsai
 
PDF
Azurebootcamp 2018
Ian Chen
 
PDF
初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
Alan Tsai
 
PDF
How to run an AI Project @pixnet
晨揚 施
 
PDF
初窺 Flutter 開發.pdf
gdscnycu
 
PPTX
雲的萬物論 - 讓 AI 為企業所用
Michael Chi
 
PPT
2009/04/19 UI Gathering專題演講-「偽」網站設計-Website Prototype Design的實務應用分享
Justin Lee
 
PDF
PrimeHub by InfuseAI: product overview (Nov 2020)
Liang-Bin Hsueh
 
PDF
啟動你的AI工匠魂
Erhwen Kuo
 
PPT
Our experience to start a startup
Yenwen Feng
 
PDF
20170108 微軟大數據整合解決方案- cortana intelligence suite
Meng-Ru (Raymond) Tsai
 
PDF
物聯網應用全貌以及微軟全球案例
Herman Wu
 
PPTX
2024 Hello World Dev Conference 從觀察到實踐 打造符合公司需求的GitLab DevOps流水線
Freddy Fan
 
PPTX
聊天機器人概論 Introduce to chat bot sevices
Duran Hsieh
 
信息系统开发平台OpenExpressApp
zhoujg
 
2024/11/29 DevOps Taiwan #64 : 從初建到進階:打造符合公司需求的混合雲端 GitLab DevOps 流水線
Freddy Fan
 
Global Azure Bootcamp @ 廣州 - 智能聊天機器人四代目
Poy Chang
 
面對移動化App挑戰的架構設計
Clark
 
2020 MLaaS 產業介紹.pdf
家弘 周
 
2024年11月14日的講座《AI 業界應用與未來趨勢》由微軟Azure HPC/AI工程部的主要計劃經理蔡孟儒主講,涵蓋了生成式AI的進展、如何客製化A...
Meng-Ru (Raymond) Tsai
 
探索 API 開發的挑戰與解決之道 | .NET Conf 2023 Taiwan
Alan Tsai
 
Azurebootcamp 2018
Ian Chen
 
初探 Prompt Flow 開發生成式 AI 應用的利器 | R-Ladies Taipei
Alan Tsai
 
How to run an AI Project @pixnet
晨揚 施
 
初窺 Flutter 開發.pdf
gdscnycu
 
雲的萬物論 - 讓 AI 為企業所用
Michael Chi
 
2009/04/19 UI Gathering專題演講-「偽」網站設計-Website Prototype Design的實務應用分享
Justin Lee
 
PrimeHub by InfuseAI: product overview (Nov 2020)
Liang-Bin Hsueh
 
啟動你的AI工匠魂
Erhwen Kuo
 
Our experience to start a startup
Yenwen Feng
 
20170108 微軟大數據整合解決方案- cortana intelligence suite
Meng-Ru (Raymond) Tsai
 
物聯網應用全貌以及微軟全球案例
Herman Wu
 
2024 Hello World Dev Conference 從觀察到實踐 打造符合公司需求的GitLab DevOps流水線
Freddy Fan
 
聊天機器人概論 Introduce to chat bot sevices
Duran Hsieh
 
Ad

More from Evan Lin (20)

PDF
好書分享: 一人公司 Company Of One
Evan Lin
 
PDF
How to master a programming language: a Golang example"
Evan Lin
 
PDF
Golang taipei #45 10th birthday
Evan Lin
 
PPTX
How I become Go GDE
Evan Lin
 
PPTX
Kubernetes secret introduction
Evan Lin
 
PDF
Consistent hashing algorithmic tradeoffs
Evan Lin
 
PDF
GTG30: Introduction vgo
Evan Lin
 
PDF
Kubernetes v.s. mesos
Evan Lin
 
PDF
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
Evan Lin
 
PDF
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
Evan Lin
 
PDF
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
Evan Lin
 
PDF
Google APAC Machine Learning Expert Day
Evan Lin
 
PDF
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
Evan Lin
 
PDF
Use go channel to write a disk queue
Evan Lin
 
PDF
Gopher Taiwan Gathering #16: Build a smart bot via Golang
Evan Lin
 
PDF
Docker swarm introduction
Evan Lin
 
PDF
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
Evan Lin
 
PDF
Modern Web 2016: Using Golang to build a smart IM Bot
Evan Lin
 
PDF
Docker introduction in Hardware Company
Evan Lin
 
PDF
Host Line Bot with Golang
Evan Lin
 
好書分享: 一人公司 Company Of One
Evan Lin
 
How to master a programming language: a Golang example"
Evan Lin
 
Golang taipei #45 10th birthday
Evan Lin
 
How I become Go GDE
Evan Lin
 
Kubernetes secret introduction
Evan Lin
 
Consistent hashing algorithmic tradeoffs
Evan Lin
 
GTG30: Introduction vgo
Evan Lin
 
Kubernetes v.s. mesos
Evan Lin
 
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
Evan Lin
 
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
Evan Lin
 
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
Evan Lin
 
Google APAC Machine Learning Expert Day
Evan Lin
 
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
Evan Lin
 
Use go channel to write a disk queue
Evan Lin
 
Gopher Taiwan Gathering #16: Build a smart bot via Golang
Evan Lin
 
Docker swarm introduction
Evan Lin
 
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
Evan Lin
 
Modern Web 2016: Using Golang to build a smart IM Bot
Evan Lin
 
Docker introduction in Hardware Company
Evan Lin
 
Host Line Bot with Golang
Evan Lin
 
Ad

iThome Modern Web 2018: 如何打造高效的機器學習平台