【自然語言處理 - 概念篇】 詞性標注POS在NLP的世界扮演什麼樣的角色呢?

更新於 發佈於 閱讀時間約 7 分鐘

Part-of-Speech Tagging, POS是詞性標注的全名, 主要為詞彙標上語言中的語法類別或用途, 再進行後續的分析與處理, 就想像成文件歸檔的動作, 每個文件貼上一個標籤類別, 而透過這些標籤類別進行關聯性的分類歸檔。

一個句子最基本的組成單位是「詞」這在我們之前幾個篇章都有談過,如果還不熟悉的朋友可以複習一下:

但上述的基礎知識都是將「詞」進行量化處理, 以統計的方式估算出相鄰的詞彙, 進行組合, 但這樣缺少了我們人類語言學的一些特徵, 因此才需要針對「詞」加入一些我們語言學的元素, 像是「詞性」就是一個例子, 「看」是一個動詞, 那什麼詞性可以去修飾動詞或者相互依賴就是我們下一個篇章「【自然語言處理 - spaCy】 拆解語句組成的規則, 何謂依存句法分析(Dependency Parsing)?」在介紹的部分, 而這邊主要在說明中文詞性標注POS的部分。

詞性標注(Part-of-Speech Tagging, POS) 提供了什麼價值?

  • 語法分析:詞性標注是進行語法分析的重要步驟之一,通過將詞彙標註為相應的詞性,可以幫助理解句子的結構和句法關係,比如主語、動詞、賓語等,從而更好地理解句子的語法。
  • 語義理解:詞性標注有助於理解詞彙的語義,不同的詞性標籤可以指示詞彙在句子中的角色和含義。通過詞性標注,可以更準確地捕捉詞彙的語義信息,進而進行更精確的文本理解和意義提取。
  • 上下文分析:詞性標注可以幫助理解詞彙在特定上下文中的含義和用法,同一個詞彙在不同的句子或上下文中可能有不同的詞性,詞性標注可以幫助區分這種差異,從而提供更準確的上下文理解。
  • 詞彙處理:詞性標注有助於進行詞彙級別的處理和分析,不同詞性的詞彙在語法結構、語義和用法上可能有所不同,詞性標注可以幫助對詞彙進行分類、聚類和相關性分析,從而進行更深入的詞彙處理。
  • 文本分類和信息檢索:詞性標注可以作為文本分類和信息檢索的特徵之一,將詞彙的詞性作為特徵,可以幫助構建更準確的文本分類模型或搜索引擎,從而提升分類和檢索的效果。

總的來說, 中文詞性標注為中文文本分析提供了重要的基礎信息, 可以幫助我們更好地理解語法結構、詞彙語義和上下文含義, 從而支持多種NLP任務, 包括語法分析、語義理解、文本分類。

看完基本觀念後, 我們用spaCy來玩玩看唄

spaCy是一套處理NLP的框架, 讓我們除了學習以外, 還可以進行一些NLP基礎的任務, 除此之外也提供了基礎任務模型的微調甚至再訓練的方式, 提高目標精準度。

安裝套件並載入模型

!pip install spacy

# 下載Transfromer技術的中文語言模型
!python -m spacy download zh_core_web_trf

import spacy

# 載入模型
nlp_zh = spacy.load('zh_core_web_trf')

實際來標注一下吧

POS有哪些標籤呢? 請參考「https://universaldependencies.org/u/pos/

import spacy
import random
import pandas as pd
from IPython.display import display, HTML


sentence = '我昨天看了一本有趣的書。'

doc = nlp_zh(sentence)

# 建立空的資料框架
data = {"詞語": [], "詞性": []}

# 建立詞性與顏色的對應字典
pos_colors = {}

for token in doc:
# 詞性標籤
pos_tag = token.pos_

# 將詞語和詞性加入資料框架
data["詞語"].append(token.text)
data["詞性"].append(pos_tag)

# 如果詞性標籤尚未有對應的顏色,則賦予一個隨機顏色
if pos_tag not in pos_colors:
color = "#%06x" % random.randint(0, 0xFFFFFF)
pos_colors[pos_tag] = color

df = pd.DataFrame(data)

# 定義自訂函式來設定詞性欄位的顏色
def set_pos_color(pos):
color = pos_colors.get(pos, "#000000") # 若詞性未在字典中,則預設為黑色
return f"background-color: {color}"

styles = df.style.applymap(lambda x: set_pos_color(x), subset=["詞性"])

html = styles.to_html(index=False)

display(HTML(html))
raw-image

今天的範例都在這裡「📦 spacy_pos.ipynb」歡迎自行取用。

如何使用請參閱「【Google Colab系列】台股分析預備式: Colab平台與Python如何擦出火花?」。

結語

透過上述的基礎處理, 我們可以知道一段話由哪些詞所組成, 這些詞的詞性又是被標注上哪些呢? 有了這些資訊我們就可以進行下一章的「【自然語言處理 - spaCy】 拆解語句組成的規則, 何謂依存句法分析(Dependency Parsing)?」。

我們在後續的章節也會針對如何訓練出POS的模型進行解說, 就讓我們一步步地把玩NLP吧。

------------------------------------------------------------------------------------------------

喜歡撰寫文章的你,不妨來了解一下:

Web3.0時代下為創作者、閱讀者打造的專屬共贏平台 - 為什麼要加入?

歡迎加入一起練習寫作,賺取知識!

留言
avatar-img
留言分享你的想法!
avatar-img
阿Han的沙龍
130會員
288內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
阿Han的沙龍的其他內容
2025/04/23
我們在「【🤖 cursor AI】如何在ubuntu 24.04安裝」有分享如何在Ubuntu安裝cursro這套AI編輯器, 使用起來大幅度的提昇開發效率, 但仍有些問題點需要克服, 比如說: LLM壓根不知道我們的數據庫長怎樣啊? 怎麼分析結構呢? 假設文檔又不足的狀況下更是艱辛, 如果LLM
Thumbnail
2025/04/23
我們在「【🤖 cursor AI】如何在ubuntu 24.04安裝」有分享如何在Ubuntu安裝cursro這套AI編輯器, 使用起來大幅度的提昇開發效率, 但仍有些問題點需要克服, 比如說: LLM壓根不知道我們的數據庫長怎樣啊? 怎麼分析結構呢? 假設文檔又不足的狀況下更是艱辛, 如果LLM
Thumbnail
2025/03/12
我們在「【語音合成技術 - GPT-SoVITS】讓機器說人話的語音生成服務」分享了語音合成技術, 該套GPT-SoVITS也非常的出色, 但效能有點不是非常理想, 加上需要GPU才能達到較佳的體驗, 如此一來成本就會有點高了, 因此我們找了另外一套MeloTTS, 這一套強調CPU推理非常的快!
Thumbnail
2025/03/12
我們在「【語音合成技術 - GPT-SoVITS】讓機器說人話的語音生成服務」分享了語音合成技術, 該套GPT-SoVITS也非常的出色, 但效能有點不是非常理想, 加上需要GPU才能達到較佳的體驗, 如此一來成本就會有點高了, 因此我們找了另外一套MeloTTS, 這一套強調CPU推理非常的快!
Thumbnail
2025/03/05
我們在「【語音合成技術 - GPT-SoVITS】如何架設API伺服器」分享如何架設API V3版本的TTS服務, 但發音的部份似乎只有早期的API版本才使用到g2pw這類的技術, 因此我們可能會需要將API退回舊版, 在這裡我們也整理了早期版本api與api_v2的一些差異, 期望幫助到正在面臨選
Thumbnail
2025/03/05
我們在「【語音合成技術 - GPT-SoVITS】如何架設API伺服器」分享如何架設API V3版本的TTS服務, 但發音的部份似乎只有早期的API版本才使用到g2pw這類的技術, 因此我們可能會需要將API退回舊版, 在這裡我們也整理了早期版本api與api_v2的一些差異, 期望幫助到正在面臨選
Thumbnail
看更多
你可能也想看
Thumbnail
沙龍一直是創作與交流的重要空間,這次 vocus 全面改版了沙龍介面,就是為了讓好內容被好好看見! 你可以自由編排你的沙龍首頁版位,新版手機介面也讓每位訪客都能更快找到感興趣的內容、成為你的支持者。 改版完成後可以在社群媒體分享新版面,並標記 @vocus.official⁠ ♥️ ⁠
Thumbnail
沙龍一直是創作與交流的重要空間,這次 vocus 全面改版了沙龍介面,就是為了讓好內容被好好看見! 你可以自由編排你的沙龍首頁版位,新版手機介面也讓每位訪客都能更快找到感興趣的內容、成為你的支持者。 改版完成後可以在社群媒體分享新版面,並標記 @vocus.official⁠ ♥️ ⁠
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
這次來介紹一下NLP自然語言處理中重要的一個任務「命名實體識別(Named Entity Recognition)」, 這個任務主要識別出「人名」、「地名」、「公司」…等實體, 透過這些實體辨識結果, 可以近一步的理解意圖, 甚至判斷出該文章主要在講什麼重點…等。 關於更多NER的細節歡迎閱讀: 「
Thumbnail
這次來介紹一下NLP自然語言處理中重要的一個任務「命名實體識別(Named Entity Recognition)」, 這個任務主要識別出「人名」、「地名」、「公司」…等實體, 透過這些實體辨識結果, 可以近一步的理解意圖, 甚至判斷出該文章主要在講什麼重點…等。 關於更多NER的細節歡迎閱讀: 「
Thumbnail
前面我們介紹了「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」, 我們都知道「詞」是NLP世界中的最小單元, 關於詞的知識歡迎參考: 簡單來說,主要的目的是將文本轉換為模型可以處理的數據, But…, 他主要的任務並不是像jieba…等斷詞器一樣, 而是很單純的扮演文字與模型的橋
Thumbnail
前面我們介紹了「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」, 我們都知道「詞」是NLP世界中的最小單元, 關於詞的知識歡迎參考: 簡單來說,主要的目的是將文本轉換為模型可以處理的數據, But…, 他主要的任務並不是像jieba…等斷詞器一樣, 而是很單純的扮演文字與模型的橋
Thumbnail
Part-of-Speech Tagging, POS是詞性標注的全名, 主要為詞彙標上語言中的語法類別或用途, 再進行後續的分析與處理, 就想像成文件歸檔的動作, 每個文件貼上一個標籤類別, 而透過這些標籤類別進行關聯性的分類歸檔。 一個句子最基本的組成單位是「詞」這在我們之前幾個篇章都有談過,如
Thumbnail
Part-of-Speech Tagging, POS是詞性標注的全名, 主要為詞彙標上語言中的語法類別或用途, 再進行後續的分析與處理, 就想像成文件歸檔的動作, 每個文件貼上一個標籤類別, 而透過這些標籤類別進行關聯性的分類歸檔。 一個句子最基本的組成單位是「詞」這在我們之前幾個篇章都有談過,如
Thumbnail
我們有想過嗎? 一句簡單的話語, 竟然隱含著豐富的句法結構與規則, 而句法就是依著這樣的規則組合而成, 形成一個完整的句子, 隨著資料量越大, 透過規則與關聯性, 機器就能夠根據我們的話語進行拆解, 並試圖理解我們的意圖進行更貼心的服務, 隨著Chatgpt的興起, 我們也見證到AI的新里程碑, 資
Thumbnail
我們有想過嗎? 一句簡單的話語, 竟然隱含著豐富的句法結構與規則, 而句法就是依著這樣的規則組合而成, 形成一個完整的句子, 隨著資料量越大, 透過規則與關聯性, 機器就能夠根據我們的話語進行拆解, 並試圖理解我們的意圖進行更貼心的服務, 隨著Chatgpt的興起, 我們也見證到AI的新里程碑, 資
Thumbnail
所謂TF-IDF是由兩個名詞所組成的, 分別是「詞頻(Term Frequency,TF)」和「逆文檔頻率(Inverse Document Frequency,IDF)。 表示詞在文檔中出現的頻率, 就統計學而言, 只要這個詞在文本中出現越多次代表越值得關注, 因此它會具有一個重要的統計評估指標之
Thumbnail
所謂TF-IDF是由兩個名詞所組成的, 分別是「詞頻(Term Frequency,TF)」和「逆文檔頻率(Inverse Document Frequency,IDF)。 表示詞在文檔中出現的頻率, 就統計學而言, 只要這個詞在文本中出現越多次代表越值得關注, 因此它會具有一個重要的統計評估指標之
Thumbnail
詞跟詞之間的距離有多近呢? 如果一個詞在相對的空間內都佔有一席之地的話, 試想, 每個詞都是一個獨立的個體, 就如同我們人類一般, 相同興趣的、相同頻率的就容易被歸納在一起,某些詞可能是相近的意思, 因此我們只需要給每個詞標上一個向量值, 並進行統計,而這些詞在這批資料集之中所佔的位置依照距離都能夠
Thumbnail
詞跟詞之間的距離有多近呢? 如果一個詞在相對的空間內都佔有一席之地的話, 試想, 每個詞都是一個獨立的個體, 就如同我們人類一般, 相同興趣的、相同頻率的就容易被歸納在一起,某些詞可能是相近的意思, 因此我們只需要給每個詞標上一個向量值, 並進行統計,而這些詞在這批資料集之中所佔的位置依照距離都能夠
Thumbnail
常常我們在進行NLP討論時,不管哪一種NLP任務都會偶爾聽到BOW這個詞,原來全名就是「Bag-of-words」由名稱就可以知道這是在處理NLP任務之前的基礎工事,將一整篇文章切碎成一段語句,甚至是最小單位的「詞」,而這些詞又如何表述關係或者進一步的使用,試圖讓機器可以理解我們人類的詞語,就是基於
Thumbnail
常常我們在進行NLP討論時,不管哪一種NLP任務都會偶爾聽到BOW這個詞,原來全名就是「Bag-of-words」由名稱就可以知道這是在處理NLP任務之前的基礎工事,將一整篇文章切碎成一段語句,甚至是最小單位的「詞」,而這些詞又如何表述關係或者進一步的使用,試圖讓機器可以理解我們人類的詞語,就是基於
Thumbnail
「大概就是中文、閩南語、英語,還有一點點西班牙文。」 喂,不是 但要怎麼解釋語言學志不在精通十八國語言,而是研究語言背後的機制,包含六大子領域:語音學、音韻學、構詞學、句法學、語意學,以及語用學? 上大學前的我同樣對語言學毫無概念,以為外文系就是讀讀外國經典文學,增強英語
Thumbnail
「大概就是中文、閩南語、英語,還有一點點西班牙文。」 喂,不是 但要怎麼解釋語言學志不在精通十八國語言,而是研究語言背後的機制,包含六大子領域:語音學、音韻學、構詞學、句法學、語意學,以及語用學? 上大學前的我同樣對語言學毫無概念,以為外文系就是讀讀外國經典文學,增強英語
Thumbnail
這篇文章能帶你的收穫將超乎你的想像,除了可以避免你或你所在的公司浪費無數時間、金錢在一些沒有意義的事情上面虛耗(譬如調參數、重新訓練,採用錯誤的機器學習方法或架構),也可以讓你或你的公司在獲得相關知識之後,能更正確的理解當前的環境與制定出更好的市場戰略。LSTM技術的致命缺陷也在此顯現出來!
Thumbnail
這篇文章能帶你的收穫將超乎你的想像,除了可以避免你或你所在的公司浪費無數時間、金錢在一些沒有意義的事情上面虛耗(譬如調參數、重新訓練,採用錯誤的機器學習方法或架構),也可以讓你或你的公司在獲得相關知識之後,能更正確的理解當前的環境與制定出更好的市場戰略。LSTM技術的致命缺陷也在此顯現出來!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News