關閉
極密曝光! GCP架構實戰! - AI學習應用

提起大眾對於Google的印象,不外乎是最先進的研發能量與創新精神,可以說是各種開源新技術的先驅,從K8S,再到TensorFlow的開源,幾乎都有Google的蹤影。尤其又以AI (Artificial Intellience)技術所為人稱道,現在市場上所使用的Google產品,大部分也是透過GCP的AI技術來搭建的。可是GCP提供的AI技術與產品究竟有那些呢?

本文將會先探索AI究竟是怎樣的技術,並且討論關於GCP AI服務的類別以及差異之處,最後是GCP的「Vision API」實作。

 

AI是什麼?

AI(Artificial Intelligence),人工智慧。被發展為一項透過機器自主學習,使電腦能夠模擬人類的思維過程,或者展現特定行為,比如說:判別問題、提供預測、語音與圖片辨識、翻譯等。我們現在常見的聊天機器人、Google翻譯、圖片自動偵測、以及疫情之下最夯的人臉辨識,都是AI的應用;而最為人所知的則是Google AlphaGo 打敗世界棋王的案例。
那麼AI真的可以像電影演的那樣?成為有感情的機器「人」嗎?

美國哲學家John Searle將AI分為「強AI (Strong AI)」與「弱AI (Weak AI)」。前者具備自我意識、情感等人類的特質;而後者則是展現出人類某種特有的行為能力,例如辨識圖片、辨識語音等等。而目前所有發展的AI都是所謂的弱AI,真正具備心智的強AI,大家可以參考電影「脫稿玩家 (Free Guy)」中對人類產生情感的蓋伊。

AI學習的過程?

AI人工智慧的核心基礎是「機器學習」,也就是常聽到的Machine Learning(ML)。而機器學習,就是讓機器學會判斷特徵(Feature)的一個過程 (Training),在這個過程需要透過演算法產生的訓練模型(Training Model)來進行學習,同時又分成兩種學習方式:監督式學習(Supervised Learning)、非監督式學習(Unsupervised Learning)。
若我們今天要讓機器學會判斷狗和貓的圖片,以監督式學習的角度而言,我們必須先透過人為篩選出貓和狗的圖片,並且各自加上標籤(Label),並加以訓練;而非監督式學習,則是將大量資料匯入,並且讓機器自己判讀跟學習不同圖片的差異。甚至有時候我們希望AI能夠幫我們判別貓狗,結果AI在非監督式學習的過程中,還自己學會判別毛色,這就是所謂的非監督式學習。

 
AI的三大範疇

AI的三大範疇可以參考下圖,AI人工智慧包含了Machine Learning機器學習,而機器學習又包含了深度學習。AI是透過程式碼來運作軟體,來讓這個軟體能夠感知、辨識等的類人類行為。而支撐著AI的是ML機器學習,主要包含了演算法、數據等。最後則是深度學習(Deep Learning),算是機器學習的其中一個分支,通過模擬大腦神經網路,建立不同分層,可分為輸入層、隱藏層、輸出層,也稱為神經網絡。而在隱藏層的部分會比起傳統機器學習的模型還需要更多的資料;並且深度學習會將這些大數據的特徵自行提取、分類,最後取得最靠近正確答案的解答。例如前述提到的AlphaGo,即為基於Deep Learning所建構的人工智慧,通過大量棋譜的輸入、自我訓練,最終擊敗世界棋王。

極密曝光!GCP架構實戰! - AI學習應用

 
GCP AI 服務 
  1. Vertax AI:

屬於整合式的AI平台,這項產品適合接觸過AI,且能夠理解AI技術所帶來效益的人使用。在這個產品中,使用者可以快速建構自己的訓練模型,就算不具備撰寫演算法的技術資源,也能夠輕鬆搭建自己的AI Training Model。需要注意的是,Vertax AI的前身是GCP的AI Platform,目前仍支援AI Platform的介面,但大部分功能皆已整合進Vertax AI,可以直接使用Vertax AI進行相關作業即可!

適合對象:資料科學家、想使用AI的工程師、資料分析師

 
  1. Natural Language API:

Natural Language為自然語言分析的AI應用,可以擷取非結構化、半結構化的文字資料來進行探索,並取得深入的文字分析結果。可以分析出情緒、文法結構、單字組合等等。適合需要進行大量文字探勘的工作。

適合對象:進行大量文獻探勘者、醫療照護者(心理治療相關應用)、資料科學家

 
  1. Speech-to-Text API:

Speech-to-Text是大家相當熟悉的一款服務,主要是做語音轉文字的AI辨識。例如Google Map中,透過語音轉文字的服務,讓司機只需要念出地址,而不用手動Key入文字。或者是現在短影音創作的市場興起,透過語音轉文字的方式快速產生字幕,堪稱是創作者的福音!

適合對象:開發導航、語音相關服務產業

 
  1. Translation API:

Translation顧名思義就是透過AI來進行文字翻譯,不曉得各位有沒有注意到,在2006年Google翻譯剛推出的時候,那時候的翻譯並沒有那麼正確,也不容易讀懂翻譯後的文字。但是到了現在,由於大量資料的累積,Google翻譯有越來越精準的趨勢。而Google也將其大量訓練後的模型發布為Translation API,提供使用者能夠快速進行AI翻譯的任務。

適合對象:語言翻譯應用、跨國平台開發、結合Speech-to-Text的語音等等。

 
  1. Video Intelligence:

隨著影音產業的興起如Youtube、Netflix、TikTok等,專門分析影片的AI技術也發展成熟,Video Intelligence,就是一個可以用來辨析影片內容的AI服務,同時擷取不同片段、鏡頭,透過建立不同的標籤,來提升觀影者的使用體驗。

適合對象:影音產業、影音資料分析者。

 
  1. Vision API:

Vision API即是本次要操作的AI工具,主要功能是針對圖片進行辨識,包含手寫文字、偵測圖片中的物件與臉孔。最常見的應用就是人臉辨識系統、手寫表格的內容偵測,在現在發展Fintech的金融業中是相當熱門的一種AI應用。

適合對象:金融科技業、人臉辨識、製造業(判別產品良率)等等。
 

Vision API實作篇

本次實作目標:輸入貓、狗圖片,並添加Tag後訓練,並測試模型是否能準確判斷其餘貓狗的圖片。
資料集:Kaggle Cats & Dogs Dataset(https://www.microsoft.com/en-us/download/details.aspx?id=54765)

 
  1.  從主頁點選VisionAPI進入頁面,在這之前跟著步驟啟用Vision API即可

極密曝光!GCP架構實戰! - AI學習應用







 
  1.  選擇新增資料集

極密曝光!GCP架構實戰! - AI學習應用

 
  1.  根據自己的需求選擇模型目標

極密曝光!GCP架構實戰! - AI學習應用

 
  1.   選擇從電腦上傳圖片,並將本次實作準備的貓狗圖片zip檔上傳

極密曝光!GCP架構實戰! - AI學習應用

 
  1. 等待資料集匯入完成

極密曝光!GCP架構實戰! - AI學習應用

 
  1.   資料匯入完成後,添加標籤,也可點選標籤統計資料查看

極密曝光!GCP架構實戰! - AI學習應用

 
  1.  選擇訓練,並查看自己的圖片是否足夠,一個標籤最少需要10張。確定沒問題後選擇開始訓練。本次僅示範實作,因此最終供機器學習的圖片張數為貓貓狗狗各24張

極密曝光!GCP架構實戰! - AI學習應用

 
  1.  選擇訓練模型要應用在雲端上還是邊緣機器上

極密曝光!GCP架構實戰! - AI學習應用

 
  1.  選擇節點時數運算,如果設定越高,訓練效率越高。但同時價格也會越高。確認沒問題,即可選擇開始訓練

極密曝光!GCP架構實戰! - AI學習應用

 
  1. 訓練完成後,點選評估查看訓練情況

極密曝光!GCP架構實戰! - AI學習應用

 
  1.  由於之前沒有點選部署模型,因此選擇測試及使用,然後部署模型

極密曝光!GCP架構實戰! - AI學習應用

 
  1. 部署位置決定了可以同時支持多少個運算請求,如果是需要大量供終端使用者進行圖片識別,可以將部署位置調高

極密曝光!GCP架構實戰! - AI學習應用

 
  1. 部署完成後,可以直接使用,點選UPLOAD IMAGES

極密曝光!GCP架構實戰! - AI學習應用

 
  1. 放入醜醜貓貓照,沒問題,0.99的機率是貓貓

極密曝光!GCP架構實戰! - AI學習應用

 
  1.  放入萌萌狗狗照,是貓貓的機率降至0.69,若訓練圖片數再更多一些,預測會更準確

極密曝光!GCP架構實戰! - AI學習應用
 

  1. 最後如果有需要,可以透過REST API、Python Code來部署模型!

 極密曝光!GCP架構實戰! - AI學習應用

一般的軟體工程師,即使不會撰寫演算法,也能透過GCP的AI服務快速部署一個AI模型,同時在預測上也經過優化與調整,不必負擔開發AI演算法的時間與金錢成本。
 



撰寫人
極密曝光!GCP架構實戰! - AI學習應用

解決方案架構師
吳祐德 Ted Wu