【回転】機械学習-Phython自然言語処理ライブラリ

4314 ワード

自然言語処理のライブラリは非常に多く、Pythonに友好的で、簡単で使いやすく、軽量で、機能的なライブラリをいくつか挙げます.
1中国語
中国語自然言語処理ツールの評価:https://github.com/mylovelybaby/chinese-nlp-toolkit-test
awesome: https://github.com/crownpku/Awesome-Chinese-NLP
  • Hanlp

  • アドレス:https://github.com/hankcs/HanLP
  • Jieba

  • アドレス:https://github.com/fxsjy/jieba
  • snownlp

  • https://github.com/isnowfy/snownlp
  • FoolNLTK

  • 最も速いオープンソース中国語分詞ではないかもしれませんが、最も正確なオープンソース中国語分詞である可能性が高いです.
    BiLSTMモデルに基づいて訓練された分詞、語性表示、実体認識を含む、いずれも比較的高い精度がある.
    ユーザー定義辞書
    # segmentation
    import fool
    
    text = "       "
    print(fool.cut(text))
    Out:
    ['  ', '  ', ' ', '  ']
    
    # pos tagging
    import fool
    
    text = "       "
    print(fool.pos_cut(text))
    #[('  ', 'm'), ('  ', 'n'), (' ', 'p'), ('  ', 'ns')]
    
    # NER
    import fool 
    
    text = "       "
    words, ners = fool.analysis(text)
    print(ners)
    #[(5, 8, 'location', '  ')]

    2英語
  • NLTK

  • アドレス:https://www.nltk.org/
  • Textblob

  • アドレス:https://github.com/sloria/TextBlob
    3例
    3.1中国語自然言語処理Pipelineの例
    例:https://github.com/JiaLiangShen/Chinese-Article-Classification-based-on-own-corpus-via-TextCNN-and-GBDT
    3.2英語Pipelineの例
    例:https://github.com/TiesdeKok/Python_NLP_Tutorial/blob/master/NLP_Notebook.ipynb
    ---------------------------------------------------------------------------------------
    1.NLTK
    NLTKはPythonを用いて自然言語を処理するツールの中でリードしている.WordNetという語彙リソースの処理に便利なインタフェースと、分類、分詞、語幹抽出、注釈、文法分析、意味推理などのクラスライブラリを提供しています.
    Webサイト
    http://www.nltk.org/
    NLTKのインストール:sudo pip install-U nltk
    Numpyのインストール(オプション):sudo pip install-U numpy
    インストールテスト:python then type import nltk
    2.Pattern
    Patternは一連の自然言語処理ツール(Part-Of-speech Tagger)、N元検索(n-gram search)、感情分析(sentiment analysis)、WordNetを持っている.機械学習のベクトル空間モデル,クラスタリング,ベクトルマシンもサポートしている.
    Webサイト:
    https://github.com/clips/pattern
    インストール:
    pip install pattern
    3.TextBlob
    TextBlobはテキストデータを処理するPythonライブラリです.品詞表記、名詞フレーズ抽出、感情分析、分類、翻訳など、一般的な自然言語処理タスクを解決するための簡単なapiを提供します.
    Webサイト:
    http://textblob.readthedocs.org/en/dev/
    インストール:
    pip install -U textblob
    4.Gensim
    GensimはPythonライブラリで、大規模なコーパスのトピックモデリング、ファイルインデックス、類似度検索などに使用されます.メモリより大きい入力データを処理できます.著者らは、「純粋なテキスト上で監視されていない意味モデリングで最も丈夫で、効率的で、使いやすいソフトウェア」と述べています.
    Webサイト:
    https://github.com/piskvorky/gensim
    インストール:
    pip install -U gensim
    5.PyNLPI
    そのフルネームは、Pythonナチュラル言語処理ライブラリ(Python Natural Language Processing Library、音発作:pineapple)は、ナチュラル言語処理タスクライブラリです.NLPタスクに役立つ一般的な、一般的ではない、さまざまな独立したモジュールまたはばらばらな相互関連モジュールが集合しています.PyNLPIはN要素探索を処理し,周波数テーブルと分布を計算し,言語モデルを構築するために用いることができる.また、優先キューのようなより複雑なデータ構造や、Beam検索のようなより複雑なアルゴリズムを処理することもできます.
    インストール:
    LInux:sudo apt-get install pymol
    Fedora:yum install pymol
    6.spaCy
    これはビジネスのオープンソースソフトウェアです.PythonとCythonの優れたNLPツールを組み合わせた.迅速で最先端の自然言語処理ツールです.
    Webサイト:
    https://github.com/proycon/pynlpl
    インストール:
    pip install spacy
    7.Polyglot
    Polyglotは、大規模な多言語アプリケーションの処理をサポートします.165言語の分詞、196言語の識別、40言語の固有名詞識別、16言語の語性表示、136言語の感情分析、137言語の埋め込み、135言語の形態分析、69言語の翻訳をサポートしています.
    Webサイト:
    https://pypi.python.org/pypi/polyglot
    インストール
    pip install polyglot
    8.MontyLingua(英語)
    MontyLinguaは無料で、機能が強く、エンドツーエンドの英語処理ツールです.MontyLinguaで元の英語のテキストを入力すると、このテキストの意味解釈が出力されます.情報検索と抽出、リクエスト処理、問答システムに適しています.英語のテキストから、アクティブなゲストグループ、形容詞、名詞、動詞のフレーズ、人名、地名、イベント、日付、時間などの意味情報を抽出することができます.
    Webサイト:
    http://web.media.mit.edu/~hugo/montylingua/
    9.BLLIP Parser
    BLLIP Parser(Charniak-Johnson parserとも呼ばれる)は、生成成分分析器と最大エントロピーソートを統合した統計的自然言語分析器である.コマンドラインとpythonインタフェースが含まれます.
    10.Quepy
    QuepyはPythonフレームワークで、自然言語の問題をデータベースクエリー言語に変換するクエリーを提供しています.自然言語で異なるタイプの問題やデータベース・クエリーを簡単にカスタマイズできます.だから、Quepyを通じて、数行のコードを修正するだけで、自分の自然言語クエリーデータベースシステムを構築することができます.
    Webサイト
    https://github.com/machinalis/quepy
    http://quepy.machinalis.com/
     
    11.HanNLP
    HanLPは生産環境へのNLP技術の普及に力を入れているオープンソースJavaツールパッケージで、中国語分詞(N-最短分詞、CRF分詞、インデックス分詞、ユーザーカスタム辞書、語性表記)をサポートし、命名実体識別(中国人名、音訳人名、日本人名、地名、実体機構名識別)、キーワード抽出、自動要約、フレーズ抽出、ピンイン変換、簡繁変換、テキスト推薦、依存文法分析(MaxEnt依存文法分析、ニューラルネットワーク依存文法分析).ドキュメントの操作説明:Pythonが自然言語処理パッケージHanLPと菜鳥を呼び出してHanNLPを呼び出す方法