Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Create an API Key
/ 25
Create a request to Classify a news article
/ 25
Check the Entity Analysis response
/ 25
Create a new Dataset and table for categorized text data
/ 25
Cloud Natural Language API 可從文字中擷取實體、執行情緒和語法分析,並將文字分類。本實驗室的重點是文字分類。這項 API 功能使用超過 700 個類別的資料庫,可輕鬆分類大量文字資料集。
本實驗室的學習內容包括:
請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。
您將在真正的雲端環境完成實作實驗室活動,而不是模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。
為了順利完成這個實驗室,請先確認:
點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」。
接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
如有必要,請將下方的 Username 貼到「登入」對話方塊。
您也可以在「Lab Details」窗格找到 Username。
點選「下一步」。
複製下方的 Password,並貼到「歡迎使用」對話方塊。
您也可以在「Lab Details」窗格找到 Password。
點選「下一步」。
按過後續的所有頁面:
Google Cloud 控制台稍後會在這個分頁開啟。
Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。
點按 Google Cloud 控制台頂端的「啟用 Cloud Shell」圖示 。
系統顯示視窗時,請按照下列步驟操作:
連線建立完成即代表已通過驗證,而且專案已設為您的 Project_ID:
gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。
輸出內容:
輸出內容:
gcloud 的完整說明,請前往 Google Cloud 參閱 gcloud CLI 總覽指南。
展開畫面左上方的「導覽選單」圖示 。
依序選取「API 和服務」>「已啟用的 API 和服務」。
在搜尋框中輸入「語言」。
點按「Cloud Natural Language API」。
如果 API 尚未啟用,您會看到「啟用」按鈕。
啟用 API 後,Google Cloud 會顯示下列 API 資訊:
您將使用 curl 向 Natural Language API 傳送要求,因此必須產生 API 金鑰來傳遞要求網址。
建立 API 金鑰的步驟如下:在控制台依序點選「導覽選單」>「API 和服務」>「憑證」。
接著點按「建立憑證」。
在下拉式選單中,選取「API 金鑰」。
接著,複製剛才產生的金鑰,然後點按「關閉」。
點選「Check my progress」確認目標已達成。
您現在已擁有 API 金鑰,儲存為環境變數後,就不需要為每個要求插入 API 金鑰值。
為執行後續步驟,請透過 SSH 連線至為您佈建的執行個體。
linux-instance 執行個體。點按「SSH」按鈕,即可前往互動式殼層。
在指令列輸入下列指令,並將 <YOUR_API_KEY> 替換成先前複製的金鑰。
只要呼叫一次 Natural Language API 的 classifyText 方法,就能將文字資料分類。這個方法會傳回文字文件的內容類別清單。
這些類別的涵蓋範圍不一,從廣泛的 /Computers & Electronics 類別到 /Computers & Electronics/Programming/Java (Programming Language) 等細分類別都有。如要查看 700 多種類別的完整清單,請前往「內容類別」頁面。
首先請試著分類單一文章,接著再看看如何使用這個方法來分析大量新聞語料庫。
A Smoky Lobster Salad With a Tapa Twist. This spin on the Spanish pulpo a la gallega skips the octopus, but keeps the sea salt, olive oil, pimentón and boiled potatoes.
request.json 的檔案,並加入下列程式碼。您可以使用偏好的指令列編輯器 (例如 nano、vim、emacs) 來建立檔案。curl 指令,將這段文字傳送至 Natural Language API 的 classifyText 方法:查看回應:
您已建立 Speech API 要求並呼叫 Speech API。
result.json 檔案:API 針對這段文字傳回了 2 個類別:
/Food & Drink/Cooking & Recipes/Food & Drink/Food/Meat & Seafood雖然文字並未明確提及是食譜,甚至沒提到包含海鮮,API 仍能將文字正確歸類。分類單一文章確實很有趣,但這項功能真正的強大之處,在於分類大量文字資料。
為瞭解 classifyText 方法如何協助您分析含有大量文字的資料集,接著要使用這個 BBC 新聞報導的公開資料集。這個資料集包含 2004 年至 2005 年間的 2,225 篇文章,涵蓋五個主題領域:商業、娛樂、政治、體育、科技。這些文章的子集儲存在公開的 Cloud Storage bucket,每篇文章都是 .txt 檔案。
為了檢視資料並將其傳送至 Natural Language API,您將編寫 Python 指令碼,從 Cloud Storage 讀取每個文字檔案,再傳送到 classifyText 端點,並將結果儲存在 BigQuery 資料表中。BigQuery 是 Google Cloud 的大型資料倉儲工具,可讓您輕鬆儲存及分析大型資料集。
gsutil 提供 Cloud Storage 的指令列介面),瞭解要處理的文字類型:下一步是為資料建立 BigQuery 資料表。
將文字傳送至 Natural Language API 前,您需要一個位置來儲存每篇文章的文字和類別。
在控制台依序前往「導覽選單」 >「BigQuery」。
點按「完成」。
點選專案 ID 旁邊的「查看動作」圖示,然後選取「建立資料集」。
將資料集命名為 news_classification_dataset,然後點選「建立資料集」。
點按 news_classification_dataset 旁的「查看動作」圖示,然後選取「建立資料表」,即可建立資料表。
使用下列設定建立新資料表:
在「結構定義」下方,點選「新增欄位」,然後新增下列 3 個欄位:
| 欄位名稱 | 類型 | 模式 |
|---|---|---|
article_text |
STRING | NULLABLE |
category |
STRING | NULLABLE |
confidence |
FLOAT | NULLABLE |
目前資料表是空的。在下一個步驟,您將從 Cloud Storage 讀取文章、將文章傳送至 Natural Language API 進行分類,並將結果儲存在 BigQuery。
點選「Check my progress」確認目標已達成。
為執行下一個步驟,請連線至 Cloud Shell。如果出現提示訊息,請點選「繼續」。
編寫將新聞資料傳送至 Natural Language API 的指令碼前,您需要建立服務帳戶,這樣編寫 Python 指令碼後,才能驗證 Natural Language API 和 BigQuery。
現在,您可以將文字資料傳送至 Natural Language API 了!
另外還有許多不同的雲端用戶端程式庫,因此您可以使用任一種語言完成這項作業。
classify-text.py 的檔案,並將下列程式碼複製到檔案中。您可以使用偏好的指令列編輯器 (nano、vim、emacs) 建立檔案。現在您可以開始分類文章,並將文章匯入 BigQuery 了。
指令碼大約需要兩分鐘才能執行完畢,您可利用這段期間閱讀以下程序說明。
您正使用 Google Cloud Python 用戶端程式庫存取 Cloud Storage、Natural Language API 和 BigQuery。首先,系統會為每個服務建立用戶端,然後建立 BigQuery 資料表的參照物件。files 是公開 bucket 中每個 BBC 資料集檔案的參照物件。系統會查看檔案,將文章下載為字串,然後透過 classify_text 函式將每篇文章傳送至 Natural Language API。對於 Natural Language API 傳回類別的所有文章,文章和類別資料會儲存至 rows_for_bq 清單。完成每篇文章的分類後,系統會使用 insert_rows() 方法將資料插入 BigQuery。
指令碼執行完畢後,請確認文章資料已儲存至 BigQuery。
article_data 資料表,然後點選「查詢」來查詢資料表:查詢完成後,頁面就會顯示資料。
category 欄會顯示 Natural Language API 為文章傳回的第一個類別名稱,confidence 則是介於 0 到 1 的值,表示 API 對文章分類準確性的信心程度。
在下一個步驟,您將學到如何對資料執行更複雜的查詢。
首先,請查看資料集中最常見的類別。
點按 BigQuery 控制台中的「+ SQL 查詢」。
輸入下列查詢:
查詢結果應如下所示:
如果想找出 /Arts & Entertainment/Music & Audio/Classical Music 這類較冷門類別的文章,可以編寫下列查詢:
或者,您也可以只擷取 Natural Language API 傳回可信度分數大於 90% 的文章:
如要對資料執行更多查詢,請參閱 BigQuery 說明文件。BigQuery 也與多種視覺化工具整合。如果想將分類後的新聞資料製成圖表,可以使用 BigQuery 適用的 Looker Studio。
您已學會如何使用 Natural Language API 文字分類方法分類新聞報導。您先分類了一篇文章,接著使用 Natural Language API 和 BigQuery 分類及分析大型新聞資料集,最後建立了 BigQuery 資料表,對資料執行查詢。
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2025 年 3 月 21 日
實驗室上次測試日期:2025 年 3 月 21 日
Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。
This content is not currently available
We will notify you via email when it becomes available
Great!
We will contact you via email if it becomes available
One lab at a time
Confirm to end all existing labs and start this one