跳到主要內容

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

 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時代下為創作者、閱讀者打造的專屬共贏平台 - 為什麼要加入?

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

留言

這個網誌中的熱門文章

java西元民國轉換_各種不同格式

C#資料庫操作(新增、修改、刪除、查詢)

【Excel好好玩】 自己的資產自己管!善用Google Sheet來幫我們評估貸款

這次介紹的主題是關於Excel的貸款還款計畫試算,我們人生中總會遇到需要大筆金額的花費,但當資金不夠時就得進行貸款,而貸款之前如果我們能夠審慎評估,並分析自己的還款能力之後在進行凍作,相信風險會小很多,因此就自己動動手來使用Google Sheet進行試算吧! 基本資料 ● 貸款總額: 1000000 ● 貸款期數: 84月 ● 年利率: 2.11% ● 月利率: 0.18% P.S 月利率 = 年利率 / 12 重要函式 PMT : 這是Google Sheet內建的重要年金計算公式,我們可以善用這個公式來計算固定利率及期數的固定攤還本息。因為PMT函式計算出的結果為負數,所以前面加上-號轉成正數。 動手做 首先我們在Excel表上列出我們的基本資料 圖片來源 其中月利率的部分就使用公式「=B4/12」 接著我們填上第一列的期數跟餘額 圖片來源 =B2 =B3 使用關鍵PMT函數來計算本息的部分 因為PMT函式計算出的結果為負數,所以前面加上-號轉成正數。 -PMT(貸款利率(月利率), 貸款期數, 貸款總額) =-PMT($B$5,$B$3,$B$2) 圖片來源 計算利息 利息 = 貸款餘額 x 月利率 =B8*$B$5 圖片來源 計算本金 本金 = 本息 - 利息 =C8-D8 圖片來源 製作第二列餘額的部分 餘額的部分 = 上一期的餘額 - 上一期的本金 圖片來源 接著拖曳該兩列往下拉,即可查看每一期的利息與本金 圖片來源 結語 雖然市面上已經有很多貸款銀行都提供了試算功能,但如果我們想要進一步管理自己的資產時,就需要將每一期的金額給計算出來,因此才會將公式運用在Excel表,讓我們的資產管理表能夠結合負債,進一步評估我們理財行動的下一步,希望這樣的經驗可以幫助到正在理財道路上打拼的夥伴,讓我們透過有效的管理,幫助荷包長大吧! 喜歡撰寫文章的你,不妨來了解一下: Web3.0時代下為創作者、閱讀者打造的專屬共贏平台 — 為什麼要加入? 歡迎加入一起練習寫作,賺取知識,累積財富!