iT邦幫忙

2022 iThome 鐵人賽

DAY 23
1
AI & Data

[GCP BigQuery] - 探索資料倉儲,開啟你的數位轉型之旅系列 第 23

Day 23: Google Cloud Platform (GCP) 上的機器學習地圖,讓你知道你有什麼選擇!

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20221007/20152529UUAswk5I4N.png

前言:

資料存放在 BigQuery之後,我們後續的應用通常有兩種: BI or ML。

BI: 主要是使用 Dashboard 來呈現,我們在 Day 15 - Day 18 實作過。
ML: 這個是我們今天想要介紹的內容,主要是先介紹在GCP上,有哪些機器學習的方法,不過因為本次主題是 BigQuery,最後的實作會專注在 BigQuery ML。

先驗知識:

機器學習

在 GCP 的世界中,我們可以使用的 ML,可以概略分為以下三大類:

https://ithelp.ithome.com.tw/upload/images/20221007/20152529rMNYEqj0fT.png

  • BigQuery ML
  • Vertex AI
  • Pre-built APIs

BigQuery ML:

這個是我們這次主題的主軸,因此後續也會用他來實作。

BigQuery ML 是一種用 SQL 語法來實現機器學習的功能,好處主要有兩點:

  • 存放在 BigQuery 中的數據不需要匯出,在查詢中直接執行 BigQuery ML 建置機器學習模型。
  • 因為是使用 SQL語法,開發人員無需會新的程式語言 (一般機器學常用 python),即可以快速實現部件模型的想法。

建置模型語法的長相如下:

https://ithelp.ithome.com.tw/upload/images/20221007/20152529IP16Nrlt5A.png

使用BigQuery ML 範例: Create machine learning models in BigQuery ML

*註: BigQuery 也可以結合 Vertex AI 一起使用。

Vertex AI:

Vertex AI 是將 AutoMLAI platform結合的一站式服務,通過 Vertex AI這項服務,我們能夠從匯入資料、建立模型、模型佈署到端點和後續的模型調參,而且身為使用者,並不需要從頭到尾按步驟才能使用,我們也能夠只上傳先前就訓練好的模型去佈署。

https://ithelp.ithome.com.tw/upload/images/20221007/20152529BVGmOiiSuL.png

AutoML:

是一種無須編寫程式就可以訓練模型的方式。

使用 AutoML 範例: Hello image data

AI platform:

則是讓使用者能夠自定義訓練的模型。

使用自定義訓練的模型範例: Hello custom training

因為目前 Google 已經將這兩者整合到 Vertex AI了,無論使用何種方式,訓練完成之後,都可以進行後續的模型保存、預測和佈署。

Vertex AI workbench

Vertex AI 底下還有一個特別的功能叫做 Vertex AI workbench,他的好處是我們前面講的匯入資料、建立模型、模型佈署到端點和後續的模型調參通通只要透過 jupyterlab 就能夠完成。不僅如此,也能選擇預設的 container 或是 自定義的 container 來訓練模型。

使用Vertex AI workbench範例: Getting started with Notebooks for machine learning

Pre-built APIs:

Pre-built APIs 是 Google 已經幫我們訓練好的 API,身為使用者只需要呼叫這個 API,即可做預測。 我們都知道好的機器學習模型常常需要大量的資料和時間來建置,使用這個方法的好處在於,他幫我們節省了資料收集、模型訓練和維運的時間,甚至在缺乏數據的情況下,他都是一個很不錯的選擇。 以下是幾個常用的 API:

Vision API:

透過 AutoML Vision 從圖片中取得深入分析結果。使用預先訓練的 Vision API 模型來偵測情緒及解讀文字。

試用範例

Text to speech API:

將文字轉換為自然流暢的語音。

試用範例

cloud natural language API

從非結構化的文字內容中取得深入分析結果。

試用範例

Speech-to-Text API:

將語音準確轉換為文字。

試用範例

Video Intelligence API:

精準分析及辨識影片中的物件、地點和動作。

Cloud Translation API:

快速的動態機器翻譯,提供多種語言的內容與應用程式。

Summary:

比較 BigQuery ML Vertex AI Pre-built APIs
使用方法 類似 SQL 語法 python, jupyterlab call API
支援的資料型態 結構化 結構化、影像、文字、聲音 結構化、影像、文字、聲音
ML 知識/ code 技能 AutoML: 低 / 自訂義訓練: 高
好處 不需轉移數據/ 不需會寫python 一站式服務/ 使用 Vertex AI workbench 可在 jupyterlab 底下完成一條龍機器學習專案。 無需自己訓練即可使用/ 缺乏資料的情況下非常合適。
範例 Create machine learning models in BigQuery ML 使用 AutoML 範例: Hello image data / 使用自定義訓練的模型範例: Hello custom training/ 使用Vertex AI workbench範例: Getting started with Notebooks for machine learning Vision API: 試用範例 / Text to speech API:試用範例 / cloud natural language API: 試用範例 / Speech-to-Text API: 試用範例

到這裡,我們已經看完 GCP 上能夠做機器學習的選擇了。

下一篇,我們將針對 BigQuery ML 做介紹!

Reference:

What is BigQuery ML?

Introduction to Vertex AI

Introduction to Vertex AI Workbench


上一篇
Day 22: 優化你的BigQuery 查詢,建立 Partitioned 和 Clustered table (實作)
下一篇
Day 24: BigQuery ML: 圖解三種寫法 + 常用指令介紹
系列文
[GCP BigQuery] - 探索資料倉儲,開啟你的數位轉型之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言