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

閱讀時間約 6 分鐘
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))
今天的範例都在這裡「📦 spacy_pos.ipynb」歡迎自行取用。

結語

透過上述的基礎處理, 我們可以知道一段話由哪些詞所組成, 這些詞的詞性又是被標注上哪些呢? 有了這些資訊我們就可以進行下一章的「【自然語言處理 - spaCy】 拆解語句組成的規則, 何謂依存句法分析(Dependency Parsing)?」。
我們在後續的章節也會針對如何訓練出POS的模型進行解說, 就讓我們一步步地把玩NLP吧。
------------------------------------------------------------------------------------------------
喜歡撰寫文章的你,不妨來了解一下:
歡迎加入一起練習寫作,賺取知識!
即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
avatar-img
118會員
263內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
阿Han的沙龍 的其他內容
我們有想過嗎? 一句簡單的話語, 竟然隱含著豐富的句法結構與規則, 而句法就是依著這樣的規則組合而成, 形成一個完整的句子, 隨著資料量越大, 透過規則與關聯性, 機器就能夠根據我們的話語進行拆解, 並試圖理解我們的意圖進行更貼心的服務, 隨著Chatgpt的興起, 我們也見證到AI的新里程碑, 資
上一篇「【Hugging Face】Ep.2 初探新手村, 打造專屬的翻譯官」我們學習到如何架設起Hugging Face的環境了,接下來我們就介紹一下重要的Datasets吧! AI模型訓練最重要的燃料就是「資料」了, 而HuggingFace的Dataset也公開了不少的資料集, 非常適合我們進
我們已經介紹過關於Transformer模型的平台「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」,而這次就來實際動手進行開發,讓我們自己的AI自己做。 由於AI模型的訓練往往都會比較耗時, 因此建議需要有GPU環境會比較有效率一些, 否則訓練模行動輒好幾個小時才能看到結果, 一
它到底是什麼? 簡單說Hugging Face是人工智慧開源平台,開發者發表和共享預訓練模型、資料庫和示範檔案等。Hugging Face共享超過10萬個預訓練模型,上萬資料庫,包括微軟、Google、彭博、英特爾等各行業上萬機構都有使用Hugging Face。 理念與目標 我們都知道最近火紅的O
正常來說這種大型LLM公司都會有內容審查功能, 照理說不應該讓AI回答有害的、暴力的…等負面回應, 以Chatgpt來說經實驗後確實是如此, 但仍可以透過欺騙的方式讓它間接的回答, 有一點挖坑給AI跳的概念…。 好人形象的ChatGPT 非常聰明的閃避掉違法的問題, 看來內部已經經過嚴格的審查過程,
雖然ChatGPT這種基於大型語言模型(LLM)的助手, 在大部分的場景都能滿足我們的需求, 但也並非完美, 在使用時仍需注意一些隱患。 以下是LLM的一些缺陷及需要注意的點。 弱弱的數學造成明顯錯誤 過份樂觀帶來錯誤資訊 相信常常使用ChatGPT的朋友應該都有發現到, 不論我們怎麼提問, Cha
我們有想過嗎? 一句簡單的話語, 竟然隱含著豐富的句法結構與規則, 而句法就是依著這樣的規則組合而成, 形成一個完整的句子, 隨著資料量越大, 透過規則與關聯性, 機器就能夠根據我們的話語進行拆解, 並試圖理解我們的意圖進行更貼心的服務, 隨著Chatgpt的興起, 我們也見證到AI的新里程碑, 資
上一篇「【Hugging Face】Ep.2 初探新手村, 打造專屬的翻譯官」我們學習到如何架設起Hugging Face的環境了,接下來我們就介紹一下重要的Datasets吧! AI模型訓練最重要的燃料就是「資料」了, 而HuggingFace的Dataset也公開了不少的資料集, 非常適合我們進
我們已經介紹過關於Transformer模型的平台「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」,而這次就來實際動手進行開發,讓我們自己的AI自己做。 由於AI模型的訓練往往都會比較耗時, 因此建議需要有GPU環境會比較有效率一些, 否則訓練模行動輒好幾個小時才能看到結果, 一
它到底是什麼? 簡單說Hugging Face是人工智慧開源平台,開發者發表和共享預訓練模型、資料庫和示範檔案等。Hugging Face共享超過10萬個預訓練模型,上萬資料庫,包括微軟、Google、彭博、英特爾等各行業上萬機構都有使用Hugging Face。 理念與目標 我們都知道最近火紅的O
正常來說這種大型LLM公司都會有內容審查功能, 照理說不應該讓AI回答有害的、暴力的…等負面回應, 以Chatgpt來說經實驗後確實是如此, 但仍可以透過欺騙的方式讓它間接的回答, 有一點挖坑給AI跳的概念…。 好人形象的ChatGPT 非常聰明的閃避掉違法的問題, 看來內部已經經過嚴格的審查過程,
雖然ChatGPT這種基於大型語言模型(LLM)的助手, 在大部分的場景都能滿足我們的需求, 但也並非完美, 在使用時仍需注意一些隱患。 以下是LLM的一些缺陷及需要注意的點。 弱弱的數學造成明顯錯誤 過份樂觀帶來錯誤資訊 相信常常使用ChatGPT的朋友應該都有發現到, 不論我們怎麼提問, Cha
你可能也想看
Google News 追蹤
情感分析是一種自然語言處理技術,用於自動識別和分析文本中的情感傾向,通常是正向、負向或中性。 我們可以使用 NLTK 來實現一個基於單純貝斯分類器的情感分析模型。
Thumbnail
本文介紹了流行的Python套件NLTK(Natural Language Toolkit)的主要特點、功能和在中文和英文語料上的應用。從安裝到實際應用,深入介紹了分詞、停用詞去除、詞性標註、命名實體識別等NLP任務的具體實現和步驟,幫助讀者理解和應用NLTK。
  貴安,在轉品修辭時有簡單介紹各種詞性,其他地方也提及過標題三個字的重要性,但很表面,所以直接做個詳細整理。   【前言】   首先,要理解詞性,主要詞性有名詞、動詞、形容詞、副詞、結構助詞。介詞語助詞狀聲詞等等不在此次討論內,因為無關。   名詞(N):代表一個人、事、物,可實可虛。如:一
Thumbnail
這篇文章討論了自然語言處理技術的發展歷程,從語言模型的引入到深度學習的應用。作者觀察到現今GPT在產出中文國學內容時的深度不足,並提出了自然語言處理領域的倫理使用和版權問題,以及對大眾的影響。最後,作者探討了個人在自然語言領域的發展可能性。
Thumbnail
1.0 從函數到函算語法 1.1 句子成份 本書關注的是句子成份的分析。 如前述,詞類和句子成份是兩個很不一樣的概念。 詞類的劃分屬歸類性的描述。我們先有一個給定的詞彙,然後劃分若干詞類,比如名詞﹑動詞﹑形容詞等,再進而對詞彙中的每一個詞進行分類,即說某詞屬名詞﹑某詞屬動詞﹑某詞可以是名
  ※轉品法:   轉品的概念很簡單,但要自創會比較難,現成的倒是很多。   轉品與「詞性」息息相關,因為就是「改變字詞的詞性」,從A詞類變成了B詞類。   最常見的就是顏色的轉品,形容詞轉動詞了。   那怕有超可愛的小萌新不懂詞性,我就先介紹一下詞性!我們主要談名詞、動詞、形容詞、副詞。
Thumbnail
本文介紹了Python中的物件導向程式設計的重要概念,包括類別、繼承、多型、封裝、介面、抽象類別、靜態類別、列舉、委派、Lambda表達式、泛型和反射。每個概念都有對應的程式碼範例來說明其用法和功能。這些概念對於理解和使用Python進行物件導向程式設計至關重要。
Thumbnail
語言模型與文字表示以不同的方式來分析自然語言的詞語分佈及語意關係。本文章簡要介紹了語言模型、Word2vec、FastText、GloVe和Transformer等技術,並提供了實際的應用參考點,幫助讀者深入理解自然語言處理的技術。
Thumbnail
這是一篇討論「日常使用」詞語意義與定義的文章,從多個角度探討了定義的來源、日常使用詞語的定義及解釋力等議題。文章中提到了詞語定義的主觀性,以及透過不同詮釋方式帶來的影響。
Thumbnail
在日常中我們都會將很多事物定上了一個標籤,例如將商品標記價格,替孩子取姓名,公司上冠上職稱等等。 在Python中也有這種方法,就是字典的形式{ 'name' : 'crab', 'apple', 1000 }去呈現
情感分析是一種自然語言處理技術,用於自動識別和分析文本中的情感傾向,通常是正向、負向或中性。 我們可以使用 NLTK 來實現一個基於單純貝斯分類器的情感分析模型。
Thumbnail
本文介紹了流行的Python套件NLTK(Natural Language Toolkit)的主要特點、功能和在中文和英文語料上的應用。從安裝到實際應用,深入介紹了分詞、停用詞去除、詞性標註、命名實體識別等NLP任務的具體實現和步驟,幫助讀者理解和應用NLTK。
  貴安,在轉品修辭時有簡單介紹各種詞性,其他地方也提及過標題三個字的重要性,但很表面,所以直接做個詳細整理。   【前言】   首先,要理解詞性,主要詞性有名詞、動詞、形容詞、副詞、結構助詞。介詞語助詞狀聲詞等等不在此次討論內,因為無關。   名詞(N):代表一個人、事、物,可實可虛。如:一
Thumbnail
這篇文章討論了自然語言處理技術的發展歷程,從語言模型的引入到深度學習的應用。作者觀察到現今GPT在產出中文國學內容時的深度不足,並提出了自然語言處理領域的倫理使用和版權問題,以及對大眾的影響。最後,作者探討了個人在自然語言領域的發展可能性。
Thumbnail
1.0 從函數到函算語法 1.1 句子成份 本書關注的是句子成份的分析。 如前述,詞類和句子成份是兩個很不一樣的概念。 詞類的劃分屬歸類性的描述。我們先有一個給定的詞彙,然後劃分若干詞類,比如名詞﹑動詞﹑形容詞等,再進而對詞彙中的每一個詞進行分類,即說某詞屬名詞﹑某詞屬動詞﹑某詞可以是名
  ※轉品法:   轉品的概念很簡單,但要自創會比較難,現成的倒是很多。   轉品與「詞性」息息相關,因為就是「改變字詞的詞性」,從A詞類變成了B詞類。   最常見的就是顏色的轉品,形容詞轉動詞了。   那怕有超可愛的小萌新不懂詞性,我就先介紹一下詞性!我們主要談名詞、動詞、形容詞、副詞。
Thumbnail
本文介紹了Python中的物件導向程式設計的重要概念,包括類別、繼承、多型、封裝、介面、抽象類別、靜態類別、列舉、委派、Lambda表達式、泛型和反射。每個概念都有對應的程式碼範例來說明其用法和功能。這些概念對於理解和使用Python進行物件導向程式設計至關重要。
Thumbnail
語言模型與文字表示以不同的方式來分析自然語言的詞語分佈及語意關係。本文章簡要介紹了語言模型、Word2vec、FastText、GloVe和Transformer等技術,並提供了實際的應用參考點,幫助讀者深入理解自然語言處理的技術。
Thumbnail
這是一篇討論「日常使用」詞語意義與定義的文章,從多個角度探討了定義的來源、日常使用詞語的定義及解釋力等議題。文章中提到了詞語定義的主觀性,以及透過不同詮釋方式帶來的影響。
Thumbnail
在日常中我們都會將很多事物定上了一個標籤,例如將商品標記價格,替孩子取姓名,公司上冠上職稱等等。 在Python中也有這種方法,就是字典的形式{ 'name' : 'crab', 'apple', 1000 }去呈現