前言
我們繼續 How Google does Machine Learning 的第五章節~
這次鐵人賽的30天中,我目前所寫文章的所有課程目錄如下:
- 【Day 1】準備日 – 註冊coursera與訂閱課程
- Course – How Google does Machine Learning
- 【Day 2】 Chapter 1 – 讓你的ML在Google雲端平台運行的五大階段
- 【Day 3】 Chapter 2(上) – 什麼是ML? 為什麼ML最近才紅起來?
- 【Day 4】 Chapter 2(中) – 我們要怎麼樣設計一個ML問題? 與google提供的好用工具
- 【Day 5】 Chapter 2(下) – ML要成功的秘訣與策略
- 【Day 6】 Chapter 3(上) – ML會失敗的最常見十大陷阱
- 【Day 7】 Chapter 3(下) – ML在企業運行的五大階段與注意事項
- 【Day 8】 Chapter 5(上) – 先來初步認識一下google雲端上執行 python notebook (Cloud Datalab) 的環境
- 【Day 9】 Lab 0 – 每次在google雲端上要開始lab前都要的事前準備與注意事項
- 【Day 10】 Lab 1 – 在google雲端上分析地震資料與製圖,並儲存在雲端
Course – How Google does Machine Learning
第五章節的課程地圖: (紅字標記為本篇文章中會介紹到的章節)
* Python notebooks in the cloud
* Module Introduction
* Cloud Datalab
* Cloud Datalab
* Demo: Cloud Datalab
* Development process
* Demo of rehosting Cloud Datalab
* Working with managed services
* Computation and storage
* Lab: Rent-a-VM
* Intro to Qwiklabs
* Intro to Renting-VM Lab
* Lab: Rent-a-VM to process earthquake data
* Lab debrief <– (昨天到這邊)
* Cloud Shell
* Third wave of cloud
* Third Wave of Cloud: Fully-Managed Services
* Third Wave of Cloud: Serverless Data Analysis
* Third Wave of Cloud: BigQuery and Cloud Datalab
* Datalab and BigQuery
* Lab Intro: Analyzing data using Datalab and BigQuery
* Lab: Analyzing data using Datalab and BigQuery
* Lab Debrief: Analyzing Data using Datalab and BigQuery
* Machine Learning with Sara Robinson
* ML, not rules
* Pre-trained ML APIs
* Vision API in action
* Video intelligence API
* Cloud Speech API
* Translation and NL
* Lab: Machine Learning APIs
* Lab: Pretrained ML APIs Intro
* Lab: Invoking Machine Learning APIs
* Lab Solution
1. Cloud Shell
課程地圖
* Python notebooks in the cloud
* Cloud Shell
我們之前所做的事情是建立一個 Compute Engine VM,他幫我們實現了一些功能。
但其實以這樣的需求來說,這樣做是有點浪費的。
現在我們將來介紹 Google Cloud Shell,
想要執行 Cloud Shell 只需要點選 GCP console 右上角的Activate Google Cloud Shell
,即可開始執行。
我們所開啟的視窗,稱為 Cloud Shell,他是一種小型的VM,
雖然小,但當我們的目的只是嘗試些小事情(跑幾行code、複製東西…),Cloud Shell絕對夠用。
我們看到Cloud Shell的視窗,基本上我們可以做與Compute Engine VM幾乎相同的事情,
此外,Cloud Shell更適合給developers使用,
在Compute Engine VM中,我們可能還需要安裝一些軟體(因為是全新的環境),
但這些在Cloud Shell幾乎都不用,已經都裝好了。
這邊以git
,git clone
作為示範,可以看到我們能直接使用。
但要注意的事情就是 Cloud Shell 是一個很短暫的 VM,
也就是說大概一陣子(可能大約一小時)沒使用,這VM的內容會被自動回收。
但我們也能隨時重新在啟動新的 Cloud Shell,
或者我們也可以按新的tab啟動另外一個 Cloud Shell (下圖”+”號),這仍是相同的VM。
當有兩個tab的時候,你可以執行其他指令在另外一個tab,
讓每個 Cloud Shell 所做的事情更清楚。
注意:仍是在同個VM下執行指令。
2. Third Wave of Cloud: Fully-Managed Services
課程地圖
* Python notebooks in the cloud
* Third wave of cloud
* Third Wave of Cloud: Fully-Managed Services
這邊講一點歷史,三波google雲的變化:
1. 原先的 Data lab 是由本機電腦拓展到雲端處理服務,
google從MapReduce,後來意識到困難(也可能是因應時代變化)。
1. 改為開發了Dremel和Colossus,Dremel是做SQL查詢用的,
Colossus是一個允許大量資料讀取的文件系統,
Dremel和Colossus作為BigQuery和Google Cloud Storage,
在Google Cloud Platform上提供,這就是指google的第二波雲。
1. 當然,這樣的事情不只google在做,所以就會有第三波雲。
最大的差別就是在,第二波雲主要在做的是租用基礎設施(之前lab在做的事情)。
第三波雲重點放在完全彈性的服務。
如果要處理比較新的項目,請使用第三波雲的Managed Services,
這個服務能提供open source軟體的標準使用方法,而且也不須擔心基礎結構。
3. Third Wave of Cloud: Serverless Data Analysis
課程地圖
* Python notebooks in the cloud
* Third wave of cloud
* Third Wave of Cloud: Serverless Data Analysis
而上面這些內容實際上對應到的是什麼,這邊我們做一個範例,
我們開啟BigQuery console,BigQuery是一個存放data的倉庫。
我們現在想查詢醫療保險索賠的public dataset,我想要查2014年的Medicare索賠。