【AI幫幫忙】機器如何識別我們的特徵?關鍵的Named Entity Recognition(NER)技術

【AI幫幫忙】機器如何識別我們的特徵?關鍵的Named Entity Recognition(NER)技術

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

Named Entity Recognition(NER)是一種自然語言處理技術,它的目的是識別文本中的具有特定意義的實體(也稱為命名實體)。這些命名實體可以是人名、地名、組織名、日期、時間、數量等等。

這項技術可以幫助機器更好地理解文本,提高自然語言處理的精度和效率,也可以用於許多應用場景,例如搜索引擎、機器翻譯、自動摘要、問答系統等。

舉例來說

● 台灣疫情近日爆發,中央流行疫情指揮中心每天都會公布最新的確診數字。在這個句子中,「台灣"」和 「中央流行疫情指揮中心"」都是命名實體,「確診數字」 則是一個數量實體。

● 台積電是一家全球知名的半導體公司,總部位於新竹科學園區。在這個句子中,「台積電」 和 「新竹科學園區」 都是命名實體,而「半導體公司」則為組織實體。

過NER的技術就能夠很明確的從一段語句中得出一些重要的關鍵資訊, 而透過這些重要的關鍵資訊, 我們可以猜測意圖、情緒、甚至做出對應的處理, 就如同我們人與人交流的過程中, 從對方的對話中嘗試理解對方的意圖一樣, 而NER就是很簡單的將這些實體辨識出來, 至於應該做什麼處理就是另一篇故事囉。

幾個重要的步驟


數據收集

首先,你需要從可靠來源收集大量的標註好的文本數據。這些數據需要包含實體類別的標記信息,例如人名、地名、組織名等等。可以使用現成的標註好的語料庫,或者自己標註數據。

數據預處理

在訓練之前,你需要對數據進行預處理,例如斷詞、分句、標註等等。可以使用現成的斷詞工具、分句工具和標註工具來實現。

特徵設計

接下來,你需要設計一組特徵來表示每個詞語。常用的特徵包括詞向量、詞性標記、上下文特徵、字形特徵等等。你可以根據實際情況選擇不同的特徵,也可以組合多種特徵。

模型設計

在特徵設計完成後,你需要選擇一個合適的模型來進行訓練。常見的模型包括最大熵模型、隱馬爾可夫模型、條件隨機場模型和深度學習模型等。你可以根據實際情況選擇不同的模型,也可以使用集成學習方法組合多個模型。

模型訓練

在模型設計完成後,你需要使用訓練數據來訓練模型。訓練過程中需要調節模型的參數,以達到最好的效果。可以使用交叉驗證等方法來選擇最優的參數。

模型評估

在模型訓練完成後,你需要使用測試數據來評估模型的性能。常見的評估指標包括準確率、召回率、F1 值等等。

工具庫

以下是幾個著名的NER工具庫:

SpaCy: SpaCy是一個流行的Python NLP庫,其中包括一個高效的NER模型,支持多種語言,包括英語、德語、西班牙語、法語等。SpaCy的NER模型可以快速且準確地識別文本中的實體,同時還支持自定義實體類別和擴充詞庫等功能。

Stanford NLP: Stanford NLP是另一個著名的NLP工具庫,其中包括一個強大的NER模型,支持多種語言,包括英語、漢語等。Stanford NLP的NER模型基於深度學習技術,能夠進行高精度的實體識別,同時還支持自定義實體類別和擴充詞庫等功能。

AllenNLP:AllenNLP是一個基於PyTorch的NLP庫,其中包括一個高效的NER模型,支持多種語言,包括英語、德語、西班牙語等。AllenNLP的NER模型基於深度學習技術,能夠進行高精度的實體識別,同時還支持自定義實體類別和擴充詞庫等功能。

常見的幾種方法

目前常見的方法包括規則法和機器學習法,後來發展深度學習技術甚至到近期的遷移式學習。


規則法是通過設計一系列規則來識別文本中的實體,這些規則可以基於語法、語義等方面進行設計,也可以利用正則表達式等工具進行匹配。規則法的優點是易於理解和調整,適用於處理特定領域的數據,但是需要手動編寫規則,對數據的泛化能力較差。

機器學習法則是基於標註好的數據集進行訓練,建立統計模型對實體進行識別和標記。機器學習法的優點是可以自動學習規律,具有較好的泛化能力,但需要標註大量的數據集,訓練和調優較為耗時。

深度學習技術在NER領域也有了廣泛的應用,如基於循環神經網絡(RNN)的模型和基於Transformer的模型,這些模型在大規模數據下具有很好的效果,但需要較大的計算資源和訓練時間。

結語

有了Named Entity Recognition之後讓機器更讀得懂我們的特徵,而藉由這些特徵搭配龐大的數據量,可以快速的統計出可能的意圖,藉由這些意圖進行後續的分析甚至聰明的推薦,進而發展更多的AI以更快更準確的角色輔助我們完成繁瑣工作,至於AI會有思考意識嗎? 至少目前尚未有大幅度的感受,基本上還是在統計過去數據推估未來概率上發展,確實ChatGPT的出現讓我們眼睛為之一亮,也可能是AI發展史上的重大里程碑,唯一不變的是我們人類也要不斷的精進,不要讓繁瑣的工作成為我們唯一的技能,導致被淘汰的命運。

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

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

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

avatar-img
阿Han的沙龍
127會員
281內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言
avatar-img
留言分享你的想法!
阿Han的沙龍 的其他內容
我們在「【🤖 cursor AI】如何在ubuntu 24.04安裝」有分享如何在Ubuntu安裝cursro這套AI編輯器, 使用起來大幅度的提昇開發效率, 但仍有些問題點需要克服, 比如說: LLM壓根不知道我們的數據庫長怎樣啊? 怎麼分析結構呢? 假設文檔又不足的狀況下更是艱辛, 如果LLM
我們在「【語音合成技術 - GPT-SoVITS】讓機器說人話的語音生成服務」分享了語音合成技術, 該套GPT-SoVITS也非常的出色, 但效能有點不是非常理想, 加上需要GPU才能達到較佳的體驗, 如此一來成本就會有點高了, 因此我們找了另外一套MeloTTS, 這一套強調CPU推理非常的快!
我們在「【語音合成技術 - GPT-SoVITS】如何架設API伺服器」分享如何架設API V3版本的TTS服務, 但發音的部份似乎只有早期的API版本才使用到g2pw這類的技術, 因此我們可能會需要將API退回舊版, 在這裡我們也整理了早期版本api與api_v2的一些差異, 期望幫助到正在面臨選
我們在「【🤖 cursor AI】如何在ubuntu 24.04安裝」有分享如何在Ubuntu安裝cursro這套AI編輯器, 使用起來大幅度的提昇開發效率, 但仍有些問題點需要克服, 比如說: LLM壓根不知道我們的數據庫長怎樣啊? 怎麼分析結構呢? 假設文檔又不足的狀況下更是艱辛, 如果LLM
我們在「【語音合成技術 - GPT-SoVITS】讓機器說人話的語音生成服務」分享了語音合成技術, 該套GPT-SoVITS也非常的出色, 但效能有點不是非常理想, 加上需要GPU才能達到較佳的體驗, 如此一來成本就會有點高了, 因此我們找了另外一套MeloTTS, 這一套強調CPU推理非常的快!
我們在「【語音合成技術 - GPT-SoVITS】如何架設API伺服器」分享如何架設API V3版本的TTS服務, 但發音的部份似乎只有早期的API版本才使用到g2pw這類的技術, 因此我們可能會需要將API退回舊版, 在這裡我們也整理了早期版本api與api_v2的一些差異, 期望幫助到正在面臨選