Skip to content

Latest commit

 

History

History
452 lines (329 loc) · 31.7 KB

README-ZH-TW.md

File metadata and controls

452 lines (329 loc) · 31.7 KB

令人讚嘆的自然語言處理 Awesome

專門用於自然語言處理的精選資源列表

Awesome NLP Logo

請在提交之前閱讀 貢獻指南 。請隨時創建 拉取請求.

內容

研究摘要和趨勢

教學

返回頂部

閱讀內容

通用機器學習

自然語言處理介紹與指南

部落格與簡報

影片和課程

深度學習與自然語言處理

用於自然語言處理的詞嵌入, 遞歸神經網絡, 長短期記憶神經網絡與卷積神經網路 | 返回頂部

經典自然語言處理

自然語言處理的貝葉斯,統計和語言學方法| | 返回頂部

書籍

函式庫

返回頂部

  • Node.js and Javascript - 用於自然語言的 Node.js 函式庫 | 返回頂部

    • Twitter-text - 使用 JavaScript 實現的 Twitter 文本處理庫。
    • Knwl.js - JS中的自然語言處理器。
    • Retext - 用於分析和操縱自然語言的可​​擴展系統。
    • NLP Compromise - 瀏覽器中的自然語言處理。
    • Natural - 節點的一般自然語言設施。
    • Poplar - 一種基於 Web 的自然語言處理註釋工具(NLP)。
  • Python - 用於自然語言的 Python 函式庫 | 返回頂部

    • TextBlob - 為專研常見的自然語言處理(NLP)任務提供一致的 API。 站在自然語言工具包 (NLTK)模式膀上,並與兩者很好地配合 👍

    • spaCy - 使用 Python 與 Cython 產業強度的自然語言處理 👍

      • textacy - 在spaCy上構建的更高級別的自然與儼處理。
    • gensim - 用於從純文本進行無監督語義建模的 函式庫 👍

    • scattertext - 用於生成語料庫之間語言差異的 d3 可視化的 Python 函式庫。

    • AllenNLP - 一個架構在 PyTorch 上的自然語言處理函式庫,用於開發各種語言任務最先進的深度學習模型。

    • PyTorch-NLP - 自然語言處理研究工具包設計來支援快速建立更好的數據加載器,詞向量加載器,神經網路層表示,常見的自然語言處理指標(如BLEU)原型。

    • Rosetta - 文本處理工具和包裝 (例如: Vowpal Wabbit)

    • PyNLPl - Python 自然語言處理函式庫. 適用於 Python 的通用自然語言處理函式庫。 還包含一些用於解析常見自然語言處理格式的特定模塊, 最常見的是用於 FoLiA,還包括 ARPA 語言模型,Moses 短語表,GIZA ++對齊。

    • jPTDP - 用於聯合詞性(POS)標記和依賴性解析的工具包。jPTDP 提供40多種語言的預訓練模型。

    • BigARTM - 一個用於主題建模的快速函式庫。

    • Snips NLU - 用於意圖解析的產品就緒函式庫。

    • Chazutsu - 用於下載和解析標準自然語言處理研究數據集的函式庫。

    • Word Forms - Word forms 可以準確生成所有可能的英語單詞形式。

    • Multilingual Latent Dirichlet Allocation (LDA) - 一種多語言和可擴展的文檔聚類管道。

    • NLP Architect - 用於探索 NLP 和 NLU 最先進的深度學習拓撲和技術的函式庫。

    • Flair - 一個非常簡單的框架,用於在 PyTorch 上構建最先進的多語言 NLP。包括 BERT,ELMo 和 Flair 嵌入。

    • Kashgari - 簡單的,基於 Keras 的多語言自然語言處理框架,允許您在5分鐘內構建模型,用於命名實體識別(NER),詞性標註(PoS)和文本分類任務。 包括 BERT 和 word2vec 嵌入。

  • C++ - C++ 函式庫 | 返回頂部

    • MIT 資訊提取工具包 - 用於命名實體識別和關係提取的 C,C++ 和Python 工具。
    • CRF++ - 條件隨機場(CRF)的開源專案,用於實現分割/標記順序數據和其他自然語言處理任務。
    • CRFsuite - CRFsuite 實現用於標記順序數據的條件隨機字段(CRF)。
    • BLLIP Parser - BLLIP 自然語言解析器(也稱為 Charniak-Johnson 解析器)
    • colibri-core - C++ 函式庫,命令行工具和 Python 綁定用於快速且內存有效的方式提取和使用基本語言結構,如 n-gram 和 skipgrams。
    • ucto - 適用於各種語言的基於 Unicode 的常規表達式標記生成器。工具和 C++函式庫。支持 FoLiA 格式。
    • libfolia - 用於 FoLiA 格式的 C++ 函式庫。
    • frog - 為荷蘭語開發的基於內存的自然語言處理套件:PoS 標記器,lemmatiser,依賴解析器,NER,淺層解析器,形態分析器。
    • MeTA - MeTA : ModErn Text Analysis 是一個 C++ 數據科學工具包,可以幫助挖掘大文本數據。
    • Mecab (日文)
    • Moses
    • StarSpace - 一個來自 Facebook 的函式庫用於創建單詞級,段級,文檔級和文本分類的嵌入
  • Java - Java 自然語言處理函式庫 | 返回頂部

    • 斯坦福大學 NLP
    • OpenNLP
    • NLP4J
    • Java 中的 Word2vec
    • ReVerb Web-Scale 開放信息提取。
    • OpenRegex 一種高效靈活的基於 token 的正則表達式語言和引擎。
    • CogcompNLP - 在伊利諾伊大學的認知計算組開發的核心函式庫。
    • MALLET - 用於 LanguagE Toolkit 的機器學習 - 用於統計自然語言處理,文檔分類,聚類,主題建模,資訊提取和其他機器學習應用程序的文本包。
    • RDRPOSTagger - 一個穩健的 POS 標記工具包(包括 Java 和 Python)以及40多種語言的預訓練模型。
  • Kotlin - Kotlin 自然語言處理函式庫 | 返回頂部

    • Lingua 適用於 Kotlin 和 Java 的語言檢測函式庫,適用於長文本和短文本。
    • Kotidgy — 一種用 Kotlin 編寫基於索引的文本數據生成器。
  • Scala - Scala 自然語言處理函式庫 | 返回頂部

    • Saul - 用於開發自然語言處理系統的函式庫,包括內置模塊,如 SRL,POS 等。
    • ATR4S - 具有最先進的自動術語識別方法的工具包。
    • tm - 基於正則化多語言 PLSA 的主題建模實現。
    • word2vec-scala - word2vec 模型的 Scala 接口; 包括對詞距離和詞類比等向量的操作。
    • Epic - Epic 是一個用 Scala 編寫的高性能統計解析器,以及用於構建複雜結構化預測模型的框架。
  • R - R 自然語言處理函式庫 | 返回頂部

    • text2vec - R 中的快速矢量化,主題建模,距離和 GloVe 字嵌入。
    • wordVectors - 用於創建和探索 word2vec 和其他單詞嵌入模型的 R 包。
    • RMallet - 與 Java 機器學習工具 MALLET 接口的 R 包。
    • dfr-browser - 創建用於在 Web 瀏覽器中瀏覽文本主題模型的 d3 可視化。
    • dfrtopics - 用於探索文本主題模型的 R 包。
    • sentiment_classifier - 使用Word Sense Disambiguation 和 WordNet Reader 的情感分類。
    • jProcessing - 日本自然語言處理庫,具有日語情感分類。
  • Clojure | 返回頂部

    • Clojure-openNLP - Clojure 中的自然語言處理(opennlp)。
    • Infections-clj - 用於 Clojure 和 ClojureScript 的類似 Rails 的變形函式庫。
    • postagga - 用於解析 Clojure 和 ClojureScript 中的自然語言的函式庫。
  • Ruby | 返回頂部

  • Rust | 返回頂部

    • whatlang — 基於三元組的自然語言識別函式庫。
    • snips-nlu-rs - 用於意圖解析的生產就緒等級函示庫。

服務

自然語言處理作為具有更高級功能的 API,例如 NER,主題標記等 | 返回頂部

註釋工具

  • GATE - 通用架構和文本工程已有15年歷史,免費開源。
  • Anafora 是免費的開源,基於 Web 的原始文本註釋工具。
  • brat - brat 快速註解工具是一個用於協作文本註釋的在線環境。
  • tagtog, 需花 $。
  • prodigy 是一個由主動學習驅動的註釋工具,需花 $。
  • LightTag - 為團隊提供託管和管理的文本註釋工具,需花 $。

技術

文本嵌入

返回頂部

文本嵌入允許深度學習在較小的數據集上有效。這些通常是深入學習的第一步輸入和自然語言處理中最流行的遷移學習方式。嵌入只是簡單的向量,比實際值的字符串表示更為通用的方式。Word嵌入被認為是大多數深度NLP任務的一個很好的起點。

單詞嵌入中最流行的名字是 Google(Mikolov)的 word2vec 和史丹佛的 PenVe(Pennington,Socher 和Manning)。fastText 似乎是一種非常流行的多語言子詞嵌入。

詞嵌入

返回頂部

嵌入 論文 組織 gensim - 培訓支援 部落格
word2vec 官方實作, T.Mikolove et al. 2013. 分散式詞語表達及其組合性。pdf Google 是 ✔️ colah 在深度學習,自然語言處理和陳述中的視覺會解釋; gensim 的理解 word2vec
GloVe Jeffrey Pennington, Richard Socher 與 Christopher D. Manning. 2014. GloVe: 全局向量的字詞表示 pdf 史丹佛 否 ❎ acoyler 的 GloVe 早報
fastText 官方實作, T. Mikolov et al. 2017. 使用子詞資訊豐富單詞向量。 pdf Facebook 是 ✔️ Fasttext: 深入解析

給初學者的筆記:

基於句子和語言模型的詞嵌入

返回頂部

回答問題與知識提取

返回頂部

資料集

返回頂部

多語言自然語言處理框架

返回頂部

  • UDPipe 是一個可訓練的管道,用於標記,標記,解釋和解析通用樹庫和其他 CoNLL-U 文件。主要用 C++ 編寫,為多語言NLP處理提供快速可靠的解決方案。
  • NLP-Cube : 自然語言處理流水線 - 句子分裂,標記化,詞形還原,詞性標註和依賴性分析。用 Dynet 2.0 用 Python 編寫的新平台。提供獨立(CLI / Python 綁定)和服務器功能(REST API)。

自然語言處理-韓文

返回頂部

函式庫

  • KoNLPy - 用於韓語自然語言處理的Python包。
  • Mecab (Korean) - 韓文的自然語言處理 C++ 函式庫
  • KoalaNLP - 韓國自然語言處理的 Scala 函式庫。
  • KoNLP - 韓文的自然語言處理 R 包。

部落格與教學

資料集

自然語言處理-阿拉伯語

返回頂部

函式庫

  • goarabic - Go包用於阿拉伯語文本處理。
  • jsastem - 用於阿拉伯詞幹的Javascript。
  • PyArabic - 阿拉伯語的 Python 函式庫。

資料集

  • 多域數據集 - 阿拉伯語情感分析的最大可用多域資源。
  • LABR - LArge阿拉伯書籍評論數據集。
  • Arabic 停用詞 - 來自各種資源的阿拉伯語停用詞列表。

自然語言處理-中文

返回頂部

函式庫

  • jieba - 中文詞彙分割實用程序的 Python 包。
  • SnowNLP - 中文自然語言處理 Python 包。
  • FudanNLP - 用於中文文本處理的 Java 函式庫。

自然語言處理-德文

返回頂部

自然語言處理-西班牙語

返回頂部

資料

自然語言處理-印度語

返回頂部

印地語

資料, 文集與樹庫

自然語言處理-泰語

返回頂部

函式庫

  • PyThaiNLP - Python 包中的泰語自然語言處理。
  • JTCC - Java 中的字符集群庫。
  • CutKum - 在 TensorFlow 中使用深度學習進行分詞。
  • 泰語工具包 - 基於 Wirote Aroonmanakun 於2002年撰寫的一篇論文,其中包括數據集。
  • SynThai - 在 Python 中使用深度學習進行分詞和 POS 標記。

資料

自然語言處理-丹麥語

返回頂部

自然語言處理-越南語

返回頂部

函式庫

  • underthesea - 越南自然語言處理工具包。
  • vn.vitk - 越南文本處理工具包。
  • VnCoreNLP - 越南自然語言處理工具包。

資料

自然語言處理-印度尼西亞

返回頂部

資料集

函式庫與嵌入

其他語言

返回頂部

  • 俄語: pymorphy2 - - 俄語好的詞性標記。
  • 亞洲語言: ElasticSearch 中的泰語,老撾語,中文,日語和韓語 ICU Tokenizer 實現。
  • 古代語言: CLTK: 古典語言工具包是一個 Python 函式庫和用於在古代語言中進行自然語言處理的文本集合。
  • Dutch: python-frog - Python 綁定到 Frog,一個荷蘭語的自然語言處理套件。(pos 標記,詞形還原,依賴解析,NER
  • 希伯來語: NLPH_Resources - 希伯來語自然語言處理的論文,語料庫和語言資源的集合。

貢獻

初始策展人和來源的貢獻