【2020 AWS re:Invent 即時新聞】- Machine Learning Keynote
本屆 AWS re:Invent 2020 因疫情改為 online event 的方式讓大家線上參與!這也是第一次將 Machine Learning、Infrastructure 兩大主題拆分為獨立的 Keynote。以下就讓我們一起來看看由 Dr.Swami Sivasubramanian 分享 AWS 在機器學習的最新發展、新服務 DEMO 以及目前客戶的回饋吧!
AWS 將 Machine Learning 機器學習分為三個層級,從底層 Infrastructure 及 Frameworks、中間 Platform level SageMaker 一站式服務、到 SaaS level 的各種 AI 服務,提供不同方式來協助客戶和使用者解決不同的商業問題:
- ML Frameworks & Infrastructure:提供框架、強力的硬體設備給機器學習玩家,搭建出客製化模型結構
- Amazon SageMaker: SageMaker Studio 提供了一站式機器學習服務,大幅簡化許多 Data Scientist 在處理資料流及框架設定的流程
- AI Services: 這些服務提供給對於機器學習領域不熟悉的使用者,也能輕鬆運用機器學習的優勢在各自領域、應用上面,如影像視覺辨識、語意分析、聊天機器人等解決方案
AWS 從五年前開始部署機器學習相關的服務,可以從過去幾年的 release 中看到,使用者每年對於機器學習的期許越來越豐富、Feedback 的速度越來越快,在今年已經更新了超過 250 個 features,迭代的速度非常快。
在網路世代興起約莫 20 年前,產業汲汲營營地專注於硬體上的發展與成長,也造就了硬體效能上爆炸性的等比成長,像現在正在建設的 5G 網路,相比 20 年前撥接年代,56 KiB/s 就已經是飛快的傳輸速度。再者是軟體開發上的突破,在硬體效能越來越好、網路技術日漸成熟的環境、配合著行動網路發展,程式語言的發展與開發自由度,讓隨手可得的行動/網頁應用程式已經是大家習以為常的項目。
雲端服務也同時這個年代逐漸地發展成熟,在軟硬體發展速度越來越快的情況,使用者開始透過雲端服務快速地取得最新一代的資源作利用。市場上的需求,配合雲端服務的彈性與優勢,我們準備迎來下一個世代 – 機器學習應用。
AWS 致力於降低機器學習的入門門檻,不論企業、部門的大小、是否有專業人員如資料科學家,大家都可以透過不同服務,在各自的場景中進行機器學習的訓練、進而應用,更快速地去 invent and reInvent。
TENET 1 – Provide firm foundation
機器學習從準備硬體設備、框架、演算法、資料集…等,乃至於 Model 的複雜度、如何驗證、如何部署等階段,是需要非常多時間去執行的。若是有好的 Infratructure,就可以有效的降低訓練成本。
AWS 提供了非常多種選擇來幫助使用者做機器學習的運算與訓練:
- 多樣的 EC2 Instance Type:針對不同應用場景如 CPU 優化、Memory 優化、以 NVIDIA GPU 作運算、FPGA 客製化硬體加速…等
- AWS Inferentia 和 AWS Trainium:針對機器學習做最佳運算的客製化晶片,支援 TensorFlow、MXNet 和 PyTorch 深度學習架構
- 專為機器學習所打造的 Habana Gaudi-based EC2,採用 Intel Habana Gaudi CPU,在 TensorFlow 及 PyTorch 運算上有相當優良的表現
在訓練針對 Big Data 作大型運算、資料處理或者是模組訓練時,可能需要把 Model 或 Data 作分散式運算、分布在不同 GPU 或是機器上,是極為複雜的工作流程。
因為上述硬體的改動與更新,Sagemaker 整體的分散式運算效能相比之前提升了 40%!大幅度的降低 Model Training 所需要的時間:
TENET 2 – Create the shortest path to success
Machine Learning 機器學習的流程很複雜,耗費的時間與金錢成本也相當高,主要有以下問題:
- Collect and prepare – 收集和準備訓練資料
- Choose and optimize – 選擇及調整 ML 演算法
- Set up and manage – 設定和管理訓練環境
- Train ane tune – 訓練和優化模型 (trial and error)
- Deploy – 佈署模型至服務節點
- Scale and manage – 擴容和管理生產環境
為了讓使用者們更好的去面對上述挑戰,AWS 發布了 SageMaker,而因為 SageMaker 大幅度優化了大家在訓練模型時的體驗,也成為 AWS 成長速度最快的服務!
SageMaker Data Wrangler 可以讓使用者簡單的完成資料前處理的工作,其中包含 data selection、cleaning、exploration 和 visualization 等工作。Sagemaker Data Wrangler 的 data selection tool 可以讓使用者輕鬆選擇要導入 ML 訓練的資料。
SageMaker Data Wrangler 已經支援來自 Athena、S3、Redshift 與 Lake Formation 作為 Data Source,未來也將會支援 snowflake、mongoDB 跟 databircks 等資料來源。
在機器學習做 Model Training 時通常都是用大量的資料集,在某個時間點去訓練,進而用在 Real-time 推論、預測的情境。但當時間拉長或是有新資料進來時,往往會造成 Model 失真,如果要精進推論模型的話,還可能需要重新在推論階段中提取、組織及歸納新的訓練資料,而這也一直是機器學習中一個很大的挑戰。
SageMaker Feature Store
為了避免所謂的 “garbage in, garbage out (GIGO)” 的情況發生,開發者習慣針對訓練資料集作前處理,像是 missing values 怎麼處理、偏離值要不要剔除、需不需要做 data normalize 正規化…等特徵工程 (feature engineering),越高品質的資料集會訓練出越好的模組。
透過 SageMaker Feature Store,使用者可以更輕易地組織、管理訓練資料的特徵和資料。
參考來源至:New – Store, Discover, and Share Machine Learning Features with Amazon SageMaker Feature Store
SageMaker Clarify
「高品質的 feature 是高品質 Model 的基底」,資料中往往會有些 bias 偏差值,在資料前處理時也是令人頭痛、需要處理的問題,所以 AWS 推出 Clarify 來幫助使用者評估、移除偏差值。
- Bias 普遍存在於資料本身,若經過 Labeling 跟 selection 前處理程序後,仍沒被篩選掉的話,容易造成 Model 的偏差
- Clarify 在整個 Sagemaker ML workflow 中對於移除 Bias 提供 end-to-end 一條龍服務
- 使用者可以在訓練前的 EDA (Exploratory Data Analysis) 階段,看到資料的分布情況及偏差量
- 使用者可以在訓練之後對模型進行解釋性分析
- 使用者可以在部署後,分析 model 的輸入及輸出
- 這樣就可以驗證隨時間偏移的偏差值對於特徵的影響程度!
要最大化使用訓練資源也是一個難題,像是不同階段對不同運算資源的依賴性,如資料前處理可能是 CPU bound 及 IO bound、訓練時可能是 GPU bound。要最佳化訓練效能的話就要做好這些管理,因此使用者會希望在訓練時,能夠觀測相關硬體的使用狀況。
Deep Profiling for SageMaker Debugger
SageMaker Debugger 中加入新功能 Deep Profiling!讓使用者可以在訓練過程中,隨時監控、取得相關硬體資源的使用狀況,如 GPU、CPU、Network 以及 I/O Memory,進而分析資源使用狀況,透過優化建議作出相對應的效能調整。
Demo – SageMaker Pipeline
在進行 Machine Learning 機器學習之前,你需要收集很多不同類型的資料。SageMaker Studio 讓使用者可以很輕易地載入資料到 S3 Bucket、Athena 或是 Redshift。
在資料集中尋找特徵可能會花很多時間,據統計大概會花費整體建置 Model 時間的 80% 左右,現在我們可以使用 SageMaker Data Wrangler 來做特徵結合、轉換等工作,節省非常多前處理的時間。
接著使用者可以使用 SageMaker Feature Store 去保存、註記那些被處理過的資料,可以如同 Code repostory 般去針對資料及做 check in、check out,這樣就可以重複利用那些資料了。
使用者可以取回整組資料去訓練,或者是提取某些特徵給部署中的 Model 做推論,而不需要一直重新針對那些特徵作計算。
使用者可以用 Clarify 來確保訓練資料沒有過多的 bias 偏差值,這可以讓整個 Model 更加平衡在不同類別間的分類;以曲風為例,如果 data 有太多 blues 類型的話,會造成 Model 在推薦上會過於偏向 blues。
如果 data 很平均的話,Model 就不會有偏向某個曲風的問題
我們也可以藉由 Clarify 來觀測不同特徵在曲風分類上扮演什麼角色,可以幫助使用者去觀察 Model 有沒有過度依賴某些特徵,造成 Model 效能不好的現象。
有了 Clarify,我們精進 Model 的方式不再只有加入更多 data 了!我們可以更精準的對資料作前處理,更快速的優化 Model 的效能。
以往使用者在做 Model Training 的時候,需要拆分不同階段進行,當有新的資料進來便要重新跑一次訓練、部署的流程;透過 SageMaker Pipeline 和 SageMaker Debugger,使用者可以更輕鬆的執行 Model Training 的流程以達到 CI/CD 自動化流程。
SageMaker 提供很多工具,像是 visualization、debugging、Profiling、CI/CD 等整合工具,可以幫助使用者快速開發 Machine Learning 機器學習專案。
終端設備越來越需要 Machine Learning 的功能,像是機器人、攝影機等設備,部署 AI model 到那些終端設備一直都是一個挑戰,主要是因為硬體、網路等限制。
SagaMaker Edge Manager
在 2018 年 AWS 發布了 SageMaker Neo 讓使用者輕易部署 Machine Learning 到那些終端設備上,但是 Neo 只能部署一個 Model,對於那些大場域的使用者來說要管理太多 Neo。
所以 AWS 今年推出 SagaMaker Edge Manager 來管理和監測那些終端裝置與 Model。
有了 edge device 的 solution 之後,Amazon SageMaker 從資料注入、特徵工程、Model Training、CI/CD 至 Endpoint 服務端點或終端部署,達到 end-to-end 一站式 Machine Learning 機器學習完整流程的偉大成就!
TENET 3 – Expend machine learning to more builders
去年 AWS 發布了 SageMaker Autopilot,幫助使用者自動訓練模型、評估模型以及最後的部署,使用者只要丟資料進去就可以在短時間內得到一個 Model 做利用。
SageMaker Autopilot 讓很多人可以輕易地訓練 ML 模型,更受到許多資料庫開發者及分析師的青睞。相較於過去,資料庫開發者需要自己串 ML 的 invoke endpoint,過程不僅費時費工,也需要對應的背景知識。
然而 AWS 仍在思考要怎麼更進一步的降低機器學習技術的門檻,讓每個人都可以容易的上手、並且訓練與部署應用。
以往要整合 Database 資料庫中的資料,做 Model Training 並部署 AI 服務至應用端,需要 Database administrator (DBA) 跟 Data Scientist 花非常多的時間在以下不同的階段,做溝通、測驗與整合才能有結果:
- 建置模型
- 寫程式從資料庫讀資料
- 正規化資料
- 呼叫 ML 服務去執行正規化之後的資料
- 調整輸出資料
- 把結果輸出到應用程式
因此 AWS 發布了針對不同的 Database service,配合 SQL 語法執行 ML Model,以最簡單的方式達成一樣的效果!
支援以下 Database service:
- Amazon Aurora ML
- Amazon Athena ML
- Amazon Redshift ML
- Amazon Neptune ML
Amazon QuickSight
Amazon QuickSight 有 ML Insights 功能,可以用 Machine Learning 模型幫助使用者找出隱藏在資料集當中的重要資訊。
- 商業 BI 軟體以往需要 Data Scientist 從資料集當中篩選資料、設計圖表來闡述 Data Story,這容易造成隱藏在資料集中的資訊被忽略,如果能用自然語言的方式來篩選,能夠更快地發現隱藏在資料中的商機!
- 以往要取得一個資料分析,可能需要透過 E-mail 聯繫 BI team,等到相關回應,可能都已經過了 2 天、甚至是 2 周後,那便容易喪失市場優先地位
- 有了 QuickSight Q,使用者只需要向 QuickSight 以 Business Language 商業語句發問,QuickSight Q 便會快速回應資料集中的資訊給使用者
TENET 4 – Slove real business problems, end-to-end
QuickSight Q 是個 Machine Learning 在 real business 有顯著幫助的案例,但 AWS 想做的不只這樣!一個好的 ML 問題需要滿足這些需求:
- 夠大量的資料
- 對商業價值具有影響力
- 至今尚未被解決的問題
AWS 在 Machine Learning 機器學習中,解決了很多商業問題: * Contact Center – Amazon Connect 智慧客服 * Intelligent Search – Amazon Kendra 商業智慧搜尋引擎 * Code and DevOps – Amazon Code Guru & DevOps Guru
在工業 4.0、智慧工廠的趨勢之下,常會收集非常多的資料,但卻無法有效的去利用那些資料且伴隨著一些挑戰:
- 高延遲
- 無法有效地偵測
- 高誤報率
- 缺乏可行的結果
- 難以適應即時偵測需求
Amazon Lookout for Metrics
AWS Lookout for Metrics 提供了簡單又快速的方式,讓使用者可以從資料集中感應到異常,進而幫助使用者分析其 root cause,讓使用者可以有效排除並降低風險。AWS Lookout for Metrics 有以下特性:
- 高準確度
- 25 種內建連接方式,讓使用者可以連接至不同的資料集作分析
- 協助查找 root cause 讓使用者更快的排除、反應
- 會隨著時間持續改進
Amazon Monitron
Amazon Monitron 是一個設備監控服務,設置 Amazon Monitron 非常簡單,使用者將 Sensor 安裝好後,透過藍牙將 Sensor 讀取到的資訊發送到附近的 Monitron Gateway;再利用機器學習,可針對工業場景幫助企業進行預測性維護,以減少意外停機的事件發生。
Amazon Monitron 透過 Sensor 及 Gateway 來傳遞資訊,那搜集到 Sensor 傳回的資訊,要怎麼去判斷這個機器維護的時間為何?
Amazon Lookout for Equipment and Vision
所以這個時候就可以借助 AWS Lookout for Equipment 來幫你查找問題,改善設備的意外停機的風險,以機器學習為基礎,可以針對振動頻率、聲音、溫度等資訊進行預測。
除此之外,AWS 同時推出了針對影像瑕疵檢測的服務 — Amazon Lookout for Vision。利用電腦視覺的方法去檢查產線上的產品有沒有漏件或損壞,甚至可以應用在精密的半導體產業或其他 PCB 產業 (printed circuit boards)。
如果要再做更進階的智能判斷,可以透過 AWS Panorama Appliance,此裝置可以連接現有的攝影設備,而且提供 SDK 以利開發第三方應用。
AWS 提供了一系列服務來完成在工業檢測的流程,在這裡就提及了鉛筆工廠的案例:為了打造低成本、高需求的商品,對商品製造過程做即時追蹤、控管,確保整個環節在最完美的狀態。
借助 Amazon Monitron 針對生產設備蒐集大量資料:
透過 AWS Panorama 和 AWS Lookout for Vision 做影像圖像分析,檢測是否符合出廠要求:
透過 AWS Lookout for Equipment,分析 Amazon Monitron 蒐集進來的資料、檢測設備是否良好運行:
利用 AWS Panorama Appliance 去監控每一條產線、檢查作業環境是否異常,人員在不在現場…等工廠運作狀況,優化整個生產過程,降低商品劣質機率發生。
不僅可以應用在工業,而且也可以用在健康照護的環境喔!
Amazon HealthLake
Amazon HealthLake 是一個遵循 HIPAA 合規的服務,提供醫療保健業者、醫療保險公司和製藥公司 PB 等級的資料儲存、轉換、查詢及分析的服務。
透過 OCR 技術,可以分析診斷書上面的專業術語,幫助建立病患檔案,儲存醫療紀錄,而且提供查詢、分析的功能,幫助醫護人員診斷。不僅如此還能用 Quicksight 做資料視覺化。
像是查看血糖濃度,除了有助於醫護人員評估病患的症狀,病患也能更清楚了解自身的狀況,優化醫護流程。
TENET 5 – Learn continuously
Machine Learning 已經與我們生活密不可分,舉凡個人化廣告推播、工業4.0、醫療與健康照護、聊天機器人、影像識別,甚至於程式碼風險分析,都是機器學習的實踐項目,未來將會誕生更多樣化的解決方案,也會面臨更多技術挑戰。
在 Machine Learning 學習之路上沒有盡頭,持續學習新的知識,方能跟上蓬勃發展的未來。
Keep invent and reInvent. – Andy Jassy
Tag:AI Services, Amazon Code Guru, Amazon Connect, Amazon HealthLake, Amazon Kendra, Amazon Lookout for Equipment and Vision, Amazon Monitron, Amazon QuickSight, Amazon SageMaker, Athena, AWS, AWS Inferentia, AWS Lookout for Metrics, AWS Panorama Appliance, AWS Trainium, Big Data, cleaning, data selection, Deep Profiling, DevOps Guru, Dr.Swami Sivasubramanian, EC2 Instance Type, EDA, exploration, Exploratory Data Analysis, GIGO, Habana Gaudi-based EC2, KeyNote, Lake Formation, Machine Learning, Monitron Gateway, Redshift, reinvent, S3, SagaMaker Edge Manager, SageMaker Clarify, Sagemaker Data Wrangler, Sagemaker Feature Store, SageMaker Neo, SageMaker Pipeline, visualization