雲端服務 Google Cloud Platform (1)

基本介紹

教學目標

學會透過 Google APIs Explorer 以 Google Predict API 進行片語的偵測分析。

問題描述

試想您的公司收到來自不同語言的信件,需要轉給不同語言的客服專員進行處理,因此問題就是如何偵測片語屬於英文、西班牙文或法文。

使用教學

上傳檔案

  1. 下載預測專用的訓練檔案,命名為 language_id.txt。
  2. 透過 Google Developer Console 在 Google Storage 服務中新增 Bucket ,命名為 predict 。
  3. 接著上傳 language_id.txt 檔案至 predict 的 Bucket 中。

訓練系統

  1. 選擇 Google APIs Explorer 的 Predict API 服務。
  2. 啟用 OAuth 2.0 的請求授權設定。
  3. 選擇 trainedmodels.insert 的方法。
  4. 在編輯器中分別輸入專案的 ID 和自訂預測專用 Model 的 ID ,以及輸入訓練檔案的儲存位置為 predict/language_id.txt。
  5. 按下「Execute」開始訓練系統。

請求 API (參考)

1
2
3
4
5
6
7
8
9
10
POST https://www.googleapis.com/prediction/v1.6/projects/12345678910/trainedmodels?key={YOUR_API_KEY}

Content-Type: application/json
Authorization: Bearer ya29.vgCC-6j0XIAY6FSB2ttSxjm2T1t24-GEnZ18H2Do7i8eUPzM39ni0VP7
X-JavaScript-User-Agent: Google APIs Explorer

{
"id": "languageidentifier",
"storageDataLocation": "predict/language_id.txt"
}

此外還可以透過 trainedmodels.get 的方法確認訓練的狀態。

輸出結果 (參考)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"kind": "prediction#training",
"id": "languageidentifier",
"storageDataLocation": "mybucket/language_id.txt",
"selfLink": "https://www.googleapis.com/prediction/v1.6/projects/12345678910/trainedmodels/languageidentifier",
"created": "2013-04-10T21:54:08.840Z",
"trainingComplete": "2013-04-10T21:54:11.504Z",
"modelInfo": {
"numberInstances": "420",
"modelType": "classification",
"numberLabels": "3",
"classificationAccuracy": "0.95"
}
,

"trainingStatus": "DONE"
}

傳送查詢

  1. 選擇 trainedmodels.insert 的方法。
  2. 在編輯器中分別輸入專案的 ID 、自訂預測專用 Model 的 ID ,以及輸入片語內容。
  3. 按下「Execute」開始進行片語的偵測分析,產生結果會包括該片語屬於英文、西班牙文或法文可能的分數,並且選擇最有可能的語言。

請求 API (參考)

1
2
3
4
5
6
7
8
9
10
11
12
13
POST https://www.googleapis.com/prediction/v1.6/projects/12345678910/trainedmodels/languageidentifier/predict?key={YOUR_API_KEY}

Content-Type: application/json
Authorization: Bearer ya29.vgBE39w_gICm0Wj76DHov_PrNxtOj7a9B2TPG-LRBeULxtdsol9md4gx
X-JavaScript-User-Agent: Google APIs Explorer

{
"input": {
"csvInstance": [
"Hello"
]
}
}

輸出結果 (參考)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"kind": "prediction#output",
"id": "languageidentifier",
"selfLink": "https://www.googleapis.com/prediction/v1.6/projects/12345678910/trainedmodels/languageidentifier/predict",
"outputLabel": "Spanish",
"outputMulti": [
{
"label": "English",
"score": "1.000000"
},{

"label": "French",
"score": "0.000000"
},

{
"label": "Spanish",
"score": "0.000000"
}

]
}

相關資源