《AI-900》自然語言處理NLP(含心智圖+實作範例)

更新 發佈閱讀 21 分鐘
raw-image

本文章Microsoft 對應網頁:中文英文

自然語言處理 心智圖(自製)

自然語言處理 心智圖(自製)

簡介

自然語言處理Natural Language Processing(NLP),是訓練用來分析特定語言的AI模型,專門研究如何讓電腦理解、解釋、生成人類語言(相對於程式語言)。現在大多數的NLP都是透過生成式AI進行,但在特定領域中,使用比較簡單的傳統NLP模型更省成本。

註:自然語言(Natural Language)是指在人類文化中自然演化而成的語言,如中文、英文,相較於人工語言(如程式語言Python、C++ 或特定目的的人工語言如世界語)。

使用場景

  • 實體擷取(Entity extraction):辨識文件中提到的人名、地名、組織等實體。
  • 文本分類(Text classification):將文件歸類到特定的分類中。
  • 情感分析(Sentiment analysis):判斷文本內容的情緒傾向(正面、負面或中性),並推測其情緒或觀點,如社交媒體摘要分析,偵測網路行銷活動的情緒反應(detects sentiment)。
  • 語言偵測(Language detection):辨識文本所使用的語言。
  • 文件搜尋服務,產生摘要、整理目錄

Microsoft Azure中的NLP

  • Azure Speech Studio中的Azure AI 語音
  • Azure Language Studio中的Azure AI 翻譯工具,使用類神經機器翻譯 (NMT) 模型進行翻譯

考題重點

  • 情感分析:屬於Azure語言,使用機器學習的分類(如:社群媒體發言屬正向or負向)
  • Embedding:向量化、可分析單詞間的關聯性
  • 具名實體辨識:辨別人名、地名。包含實體鏈接,提供外部連結(wiki百科)
  • Azure語音:文字轉語音、語音轉文字、語音識別。例如自動生成影片字幕。
  • Azure AI translator:只能翻譯文字,不能轉語音。

文字分析Text Analytics

傳統早期的文字分析,主要使用統計分析方法分析文字主體(corpus),例如統計文字出現的頻率,藉以推論文本語意。

Tokenization 詞元化

  • 分析語料庫,讓機器能夠閱讀的第一步,是將其分解為詞元(tokens),先將文字轉換成數字。
  • 一個token可以是一個單字、部分單字或單字與標點的組合。
    詞元化 (Tokenization) 是將單字轉換為詞元,然後再將其轉換為數字(標籤label)。
  • 例如:"we choose to go to the moon"
    分解成token
    {"we": 0, "choose": 1, "to": 2, "go": 3, "the", 4 ...}
    注意"to”(編碼2)使用了兩次,未重複編碼

補充中文範例⁠我去學校

  • 字級別 token(character-level):
    ⁠{"我": 0, "去": 1, "學": 2, "校": 3}
  • 詞級別 token(word-level):
    ⁠{"我": 0, "去": 1, "學校": 2}
  • 中文沒有空格區分單字,所以需先經過斷詞(分詞),拆解成有語意的單位(tokens)
    (斷詞,在此處可略等於tokenization,但英文不須經過斷詞,意思有點不同)

其他tokenization方法

  • 文字正規化Text normalization
    在詞元化前,先清理、統一文字格式,例如移除標點符號,或者全部轉換成小寫。
    若只關心文字頻率,此方式可提升效能,但可能犧牲語意細節。
  • 停用詞移除Stop word removal
    Stop words 指的是一些在語意上貢獻不大的常見單字,例如:
    the、a、it、is、of (英文)
    的、了、是、在 (中文)
    這些字幫助人類閱讀,但是對某些分析(如主題分類、關鍵字提取)來說是雜訊。
  • n-grams (n元語法)
    N-gram 是指連續出現的 多詞短語(multi-term phrases)
    單字片語是 unigram、雙字片語是 bi-gram、三字片語是tri-gram等。
    使用 n-gram 可以保留語境資訊,例如「New York」作為一個 bigram 比單獨分析「New」和「York」更有意義。
  • 詞幹提取Stemming
    將詞彙還原為詞幹(字根)
    例如:"power"、"powered"、"powerful" → 都會被歸為同一詞幹"power"
    可在字形不同但語意相近的詞之間建立統一性,讓模型更容易聚合統計資訊。

詞頻分析Frequency analysis

  • 去除停用詞後,最常出現的詞彙往往可以提供文本主題的線索,用以推斷文章主題。
  • 簡單的詞頻統計(即:統計每個詞元出現次數)是一種有效的基本分析方法;但如需在同一語料庫中的多份文件之間進行區別比較,就需要使用進一步的方法來判斷哪些詞在某篇文件中特別重要。
  • 例如:TF-IDF (Term frequency - inverse document frequency)(詞頻-逆文件頻率)
    根據某個詞在單一文件中出現的頻率,相較於它在整個語料庫中出現的普遍性 來進行加權評分。
    如果某個詞在某篇文件中經常出現,但在其他文件中很少出現,那麼它對該文件就具有高度代表性與關聯性。

文字分類的機器學習Machine learning for text classification

  • 分類演算法(例如邏輯迴歸 logistic regression),訓練一個機器學習模型,根據已知的分類標籤來對文字進行分類。
  • 常見應用:訓練模型來判斷文字的情感傾向(sentiment analysis),例如將評論分類為正面或負面,用於情緒分析或意見探勘。
  • 舉例
    1 = 正面,0 = 負面。「服務好氣氛佳」標籤為1,「體驗極差」標籤為0
    將足夠多的評論標註好1或0
    → tokenization (作為訓練的特稱features)
    →情感標籤(0 或 1)作為標籤(label)
    →訓練模型

語意語言模型Semantic language models

語言模型(Language Models)是較新、較強大的NLP模型,能夠學習並捕捉詞元之間語意關係。此類模型的核心是:embeddings (詞嵌入、內嵌)

詞嵌入Word Embeddings

  • 詞嵌入是為了解決傳統方法難以定義詞語之間語意關係(semantic relationship)的問題。
  • 將語言中的詞元(tokens)編碼成向量(vector),也就是一組多維數值陣列。這是讓電腦「理解」詞語語意關聯的數學方法,將詞轉換為向量,使語言能被量化與計算。
  • 想像成在一個多維空間中的座標軸,這樣每個token佔據語意空間中的一個具體「位置」。語意相近的詞元會落在彼此更接近的位置
  • 詞嵌入是在深度學習模型訓練過程中建立,
    在訓練階段,模型會分析句子中詞語的共現模式(co-occurrence patterns),並學會用向量(vectors)來表示每個詞。這些向量位於n維空間(n-dimensional space),每個向量就像是一條從原點延伸出去的「線」,代表一個詞的位置與方向。

例如:

- 4 ("dog"): [10.3.2]
- 5 ("bark"): [10,2,2]
- 8 ("cat"): [10,3,1]
- 9 ("meow"): [10,2,1]
- 10 ("skateboard"): [3,3,1]
用三維空間表示這些token的位置,如下圖,可以看到"skateboard" 的token遠離其他語意較接近的token。

raw-image
  • 向量關係與計算
    向量表示的是多維空間中的方向與距離(可稱為振幅 amplitude 與大小 magnitude)判斷兩個詞是否語意相近,會使用一種稱為 餘弦相似度(cosine similarity) 的計算方法:即使距離不同,只要方向相近,就代表語意相近。

我們常用的語言模型也是以此為基礎,只是複雜度更高(例如維度更多)。

語言模型支援的功能包括:

  • 文字分析(Text analysis),擷取關鍵詞或識別文字中的具名實體。
  • 情感分析(Sentiment analysis)和意見採礦(opinion mining),將文字分類為 正面 或 負面
  • 機器翻譯(Machine translation)
  • 對大量文字內容進行總結(Summarization),摘取其中的主要點。
  • 對話式 AI (Conversational AI),例如 Bot 或 數位助理

Azure AI語言

Azure AI 語言的文字分析功能包括:

  • 具名實體辨識 Named entity recognition
    識別人員、地點、事件等等。可自定義此功能以擷取自定義類別。
  • 實體鏈接 Entity linking
    識別已知實體,並提供指向維基百科的連結。
  • 個人識別資訊偵測 Personal identifying information (PII) detection
    識別個人敏感性資訊,包括個人健康資訊(personal health information, PHI)。
  • 語言偵測 Language detection
    識別文字的語言,並傳回語言代碼,例如英文的 “en”。
    回傳:語言名稱、ISO 639-1 程式代碼和分數
  • 情感分析和意見採礦Sentiment analysis and opinion mining
    會識別文字是正面還是負面。
  • 摘要Summarization 可藉由識別最重要的資訊來總結文字。
  • 關鍵詞組擷取Key phrase extraction 會列出非結構化文字的主要概念。

Azure AI 語言的資源:
若只要使用Azure AI 語言的服務,可以只訂閱Language服務,若還有要使用其他Azure 服務,則可訂閱整個Azure AI。

實體辨識和鏈接Entity recognition and linking

提供非結構化文字給Azure AI語言,傳回文字中的實體清單 (實體是某種類型的類別或項目),
舉例如下:

raw-image

Azure AI語言也支援實體鏈接,可以連接特定的參考來源(如維基百科)
例如:我上週在西雅圖的餐廳吃飯

raw-image

語言偵測 Language detection

可以一次輸入多份文件進行分析,針對每份文件,輸出三項內容:語言名稱、ISO639-1語言代碼、表示語言偵測的信心水平分數。

例如:

Review 1: "A fantastic place for lunch. The soup was delicious."
Review 2: "Comida maravillosa y gran servicio."
Review 3: "The croque monsieur avec frites was terrific. Bon appetit!"

分析結果如下:

raw-image

注意Review 3有混合法文和英文,但偵測為英文。此服務會著重於主要的語言(predominant language),例如片語長度、某語言的文字總數。信心水平分數可能小於1。

模稜兩可或者混合語言內容的文字,例如只有標點符號的文字「;-..」,會產生語言名稱和語言識別碼 未知unknown 的值,以及 NaN 的信心分數(表示「不是數值」Not a Number)。

情感分析和意見採礦Sentiment analysis and opinion mining

  • 評估文字內容並針對每一句話給出情感分數與情感標籤。可用於社交媒體、論壇、顧客評論等。
  • Azure AI 語言使用預建的機器學習分類模型來評估文字,傳回三個類別的情感分數:正面、中性和負數。每個類別的分數範圍為 0 到 1,表示文字屬於該情感的可能性(機率)
  • 除了句子級的分析外,系統也會提供整份文件的總體情感判斷(document sentiment)

關鍵詞組擷取Key phrase extraction

  • 目的是從文本中識別出主要內容或重點。
  • 若逐一閱讀每篇評論非常耗時,可以透過 Azure 語言服務 的關鍵詞語擷取功能,快速彙整出每篇評論的重點。

練習 - 分析 Azure AI Foundry 入口網站中的文字

https://microsoftlearning.github.io/mslearn-ai-fundamentals/Instructions/Labs/06-text-analysis.html

建立專案

  1. 使用微軟Azure帳號登入:https://ai.azure.com
  2. 前往 https://ai.azure.com/managementCenter/allResources
  3. 建立專案
    (1)點選Create new,點選建立Azure AI 中樞資源 (AI hub resource)
    (2)輸入專案名稱(英文或數字)
    點選進階選項,設定區域為以下任一:
    East US
    France Central
    Korea Central
    West Europe
    West US
  4. 專案建立好之後,可看到總覽頁面,在左側選單中點選Playgrounds,在該頁面中點選Language playground
建立Azure AI 中樞資源

建立Azure AI 中樞資源

Language playground

Language playground

擷取具名實體Extract named entities

(使用Firefox瀏覽器發生無法選取網頁內容的情形,改用Chrome後可正常選取)

  1. 具名實體(Named Entities)是指用來描述人名、地名、機構名稱、專有名詞等具體對象的詞彙。
  2. 選擇分頁擷取資訊Extract information,接著點選擷取具名實體Extract named entities。
  3. 將以下示範文字貼到範例欄位中,點選「執行」,即可看到擷取實體的結果,也有顯示信賴度%。
Tired hotel with poor service
The Royal Hotel, London, United Kingdom 5/6/2018
This is an old hotel (has been around since 1950) and the room furnishings are average - becoming a bit old now and require changing. The internet didn't work and had to come to one of their office rooms to check in for my flight home. The website says it's close to the British Museum, but it's too far to walk.
擷取具名實體

擷取具名實體

擷取具名實體-執行結果

擷取具名實體-執行結果

擷取關鍵片語 Extract key phrases

  1. 關鍵詞語(Key phrases)文本中最重要的資訊片段。
  2. 選擇分頁擷取資訊Extract information,接著點選擷取關鍵片語Extract key phrases
  3. 將以下評論內容貼到範例欄位中,點選「執行」,擷取的內容會出現在右邊的詳細資料中,這些擷取出的詞語是對整段文字意義貢獻最大的關鍵片語。
     Good Hotel and staff

    The Royal Hotel, London, UK 3/2/2018
    Clean rooms, good service, great location near Buckingham Palace and Westminster Abbey, and so on. We thoroughly enjoyed our stay. The courtyard is very peaceful and we went to a restaurant which is part of the same group and is Indian ( West coast so plenty of fish) with a Michelin Star. We had the taster menu which was fabulous. The rooms were very well appointed with a kitchen, lounge, bedroom and enormous bathroom. Thoroughly recommended.
擷取關鍵片語-執行結果

擷取關鍵片語-執行結果

摘要文字Summarize text

  1. 選擇分頁摘要資訊Summarize information,接著點選摘要文字Summarize text
  2. 將以下內容貼到範例欄位中,點選「執行」,摘要內容會出現在右邊的詳細資料中,其中列出了每個句子的排名分數(rank score),代表它們在整段文字中的重要程度。
     Very noisy and rooms are tiny
    The Lombard Hotel, San Francisco, USA 9/5/2018
    Hotel is located on Lombard street which is a very busy SIX lane street directly off the Golden Gate Bridge. Traffic from early morning until late at night especially on weekends. Noise would not be so bad if rooms were better insulated but they are not. Had to put cotton balls in my ears to be able to sleep--was too tired to enjoy the city the next day. Rooms are TINY. I picked the room because it had two queen size beds--but the room barely had space to fit them. With family of four in the room it was tight. With all that said, rooms are clean and they've made an effort to update them. The hotel is in Marina district with lots of good places to eat, within walking distance to Presidio. May be good hotel for young stay-up-late adults on a budget
摘要文字-執行結果

摘要文字-執行結果

清除資料

  1. 當不再使用此功能時,記得刪除資源,以避免產生費用。
  2. 開啟Azure Portal,登入後,選擇下方的資源群組,點擊剛剛建立的資源名稱,點選「刪除資源群組」,輸入群組名稱後確認刪除。
刪除資源群組

刪除資源群組

AI-900系列文章目錄:
《AI-900》證照考試準備心得與筆記分享 - 系列文章

留言
avatar-img
留言分享你的想法!
avatar-img
快半拍成長日誌
43會員
114內容數
快半拍是小小的進步,每天前進一點點,發現微小進步中的光芒。
快半拍成長日誌的其他內容
2025/09/24
AI900 X 電腦視覺基本概念 X 考題重點 本筆記包含:總整理心智圖、電腦視覺基本概念、考題重點,以及Azure操作練習範例。 簡介常見的電腦視覺模型原理,如卷積神經網路(CNN)、Transformer 從微軟實作範例,教你一步步用Azure玩電腦視覺。
Thumbnail
2025/09/24
AI900 X 電腦視覺基本概念 X 考題重點 本筆記包含:總整理心智圖、電腦視覺基本概念、考題重點,以及Azure操作練習範例。 簡介常見的電腦視覺模型原理,如卷積神經網路(CNN)、Transformer 從微軟實作範例,教你一步步用Azure玩電腦視覺。
Thumbnail
2025/09/21
有GPT幫忙,從完全零經驗,到成功打造「LINE 傳圖→自動寄 Gmail」的流程,中間踩過哪些坑? 這不是教學,而是一場真實的自動化實驗記錄。 如果你也好奇 AI + 自動化怎麼改變日常工作流程,來看看我這趟折磨又充滿成就感的初體驗!
Thumbnail
2025/09/21
有GPT幫忙,從完全零經驗,到成功打造「LINE 傳圖→自動寄 Gmail」的流程,中間踩過哪些坑? 這不是教學,而是一場真實的自動化實驗記錄。 如果你也好奇 AI + 自動化怎麼改變日常工作流程,來看看我這趟折磨又充滿成就感的初體驗!
Thumbnail
2025/09/20
AI900 X Azure ML 實作流程 X 考題重點 Microsoft Azure Machine Learning是微軟的雲端平台,用於訓練、部屬、管理機器學習模型,本文透過微軟的學習範例,一步步帶你建立自動化機器學習。
Thumbnail
2025/09/20
AI900 X Azure ML 實作流程 X 考題重點 Microsoft Azure Machine Learning是微軟的雲端平台,用於訓練、部屬、管理機器學習模型,本文透過微軟的學習範例,一步步帶你建立自動化機器學習。
Thumbnail
看更多
你可能也想看
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
最近要來考證照,把準備過程跟大家分享 此處提供 Microsoft Azure AI 900 證照考古題,資料來源:https://reurl.cc/4rVvE3 對於以下每個語句,如果該語句為真,請選擇「是」。否則,選擇「否」 對於以下每個語句,如果該語句為真,請選擇「是」。否則,選
Thumbnail
最近要來考證照,把準備過程跟大家分享 此處提供 Microsoft Azure AI 900 證照考古題,資料來源:https://reurl.cc/4rVvE3 對於以下每個語句,如果該語句為真,請選擇「是」。否則,選擇「否」 對於以下每個語句,如果該語句為真,請選擇「是」。否則,選
Thumbnail
最近要來考證照,把準備過程跟大家分享 此處提供 Microsoft Azure AI 900 證照考古題,資料來源:https://reurl.cc/4rVvE3 將 AI 工作負載類型與適當的場景相匹配。若要回答,請將適當的工作負載類型從左側列拖曳到右側的場景。每種工作負載類型可以使用一次
Thumbnail
最近要來考證照,把準備過程跟大家分享 此處提供 Microsoft Azure AI 900 證照考古題,資料來源:https://reurl.cc/4rVvE3 將 AI 工作負載類型與適當的場景相匹配。若要回答,請將適當的工作負載類型從左側列拖曳到右側的場景。每種工作負載類型可以使用一次
Thumbnail
這篇文章討論了自然語言處理技術的發展歷程,從語言模型的引入到深度學習的應用。作者觀察到現今GPT在產出中文國學內容時的深度不足,並提出了自然語言處理領域的倫理使用和版權問題,以及對大眾的影響。最後,作者探討了個人在自然語言領域的發展可能性。
Thumbnail
這篇文章討論了自然語言處理技術的發展歷程,從語言模型的引入到深度學習的應用。作者觀察到現今GPT在產出中文國學內容時的深度不足,並提出了自然語言處理領域的倫理使用和版權問題,以及對大眾的影響。最後,作者探討了個人在自然語言領域的發展可能性。
Thumbnail
本篇文章分享了對創意和靈感來源的深入思考,以及如何將其轉化為實際的成果或解決方案的過程。透過學習、資料收集、練習、創新等方法,提出了將創意落實的思路和技巧。同時介紹了AI在外顯知識的自動化應用,以及對其潛在發展方向的討論。最後探討了傳統機器學習技術在模擬中的應用案例和對AI世界的影響。
Thumbnail
本篇文章分享了對創意和靈感來源的深入思考,以及如何將其轉化為實際的成果或解決方案的過程。透過學習、資料收集、練習、創新等方法,提出了將創意落實的思路和技巧。同時介紹了AI在外顯知識的自動化應用,以及對其潛在發展方向的討論。最後探討了傳統機器學習技術在模擬中的應用案例和對AI世界的影響。
Thumbnail
在學習描寫文的過程中,將思維視覺化是一個重要的教學策略。通過使用AI生成圖片功能,教師能夠幫助學生將抽象的描述轉化為具體的圖像。
Thumbnail
在學習描寫文的過程中,將思維視覺化是一個重要的教學策略。通過使用AI生成圖片功能,教師能夠幫助學生將抽象的描述轉化為具體的圖像。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News