banner
hughie

hughie

热爱技术的小菜鸟, 记录一下所学所感

HanLP-一個面向生產環境的多語種自然語言處理工具包

前言#

​ 本文簡單記錄介紹一下 HanLP。

​ HanLP 是一個多語種自然語言處理工具包,支持中文和拼音簡繁轉換、文本處理以及語義相關分析。

17-hanlp


正文#

一、什麼是 HanLP#

HanLP 是一個面向生產環境的多語種自然語言處理工具包,支持中文分詞、詞性標註、命名實體識別、依存句法分析、成分句法分析、語義依存分析、語義角色標註、指代消解、風格轉換、語義相似度、新詞發現、關鍵詞短語提取、自動摘要、文本分類聚類、拼音簡繁轉換等多種任務。HanLP 具備功能完善、精度準確、性能高效、語料時新、架構清晰、可自定義的特點。

二、HanLP 功能#

HanLP 具有功能完備、精度準確、效率高、語料庫更新、結構清晰、可定制性強等特點。在全球最大的多語種語料庫的支持下,HanLP2.1 支持 130 種語言(包括簡體中文、繁體中文、英語、日語、俄語、法語和德語)的十種聯合任務和多項單一任務。HanLP 已經在十幾項任務上預訓練了數十個模型,並不斷迭代語料庫和模型。

三、HanLP 使用與訓練#

HanLP 提供 RESTful 和 native 兩種 API,分別面向輕量級和海量級兩種場景。無論何種 API 何種語言,HanLP 接口在語義上保持一致,在代碼上堅持開源。可以在 CPU 上運行,推薦 GPU/TPU。安裝 PyTorch 版:Native API 的輸入單位為句子,需使用多語種分句模型或基於規則的分句函數先行分句。RESTful 和 native 兩種 API 的語義設計完全一致,用戶可以無縫互換。

native api 其實就是本地 python 運行:

# pip install hanlp
import hanlp
HanLP = hanlp.load(hanlp.pretrained.mtl.CLOSE_TOK_POS_NER_SRL_DEP_SDP_CON_ELECTRA_SMALL_ZH)
# 根據需要的任務,比如分詞使用tok,命名實體識別使用ner,每種任務都有多個模型可選,對應不同自然語言標準集
hanlp_outs = HanLP(t, tasks=['tok/fine','ner/msra'])

四、總結#

最近,在處理相關的子任務時,我研究了 HanLP 並發現它具有廣泛的功能並表現良好。然而,它需要基於特定項目的參數調整。

話雖如此,自 ChatGPT 發布以來,傳統的 NLP 項目無疑受到了極大的影響。基本上,ChatGPT 可以完成傳統 NLP 可以完成的任務,甚至更簡單、更多功能(搞 NLP 的很愁呀)。

儘管如此,傳統 NLP 仍然有其用途,出於各種原因並不是所有項目都可以利用 ChatGPT 或其他 LLM。


最後#

參考文章:

官方主頁


聲明#

本文僅作為個人學習記錄。

本文與HBlog保持同步。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。