curiosity-ai/catalyst

🚀 Catalyst is a C# Natural Language Processing library built for speed. Inspired by spaCy's design, it brings pre-trained models, out-of-the box support for training word and document embeddings, and flexible entity recognition models.

解決する課題

Catalyst は C# および .NET 向けの高パフォーマンスな自然言語処理(NLP)ライブラリです。Python ベースの NLP ツールの高速なクロスプラットフォーム代替手段を提供し、エンティティ認識や品詞タグ付けなどの複雑な言語分析を、速度を犠牲にすることなく .NET アプリケーションに直接統合できるようにします。

仕組み

spaCy の設計に着想を得た Catalyst は、テキスト処理にパイプラインベースのアプローチを採用しています。最新の .NET(.NET 9 および 10 をターゲット)と効率的なメモリ管理(ReadOnlySpan<char> など)を活用することで、1 秒あたり 100 万トークンを超えるトークナイゼーション速度などの高スループットを実現しています。このライブラリは NuGet パッケージを介した事前学習モデルの遅延読み込みをサポートし、FastText および StarSpace を使用した単語および文書埋め込みの学習に対する組み込みサポートを提供します。

対象ユーザー

C# 環境内で、名前付きエンティティ認識、レマティゼーション、言語検出などのタスクにプロフェッショナルグレードで高速な NLP ツールキットを必要とする .NET 開発者向けです。

ハイライト

  • 高性能: 破壊的でない、正規表現不使用のトークナイゼーションを備えた純粋な C# 実装。
  • 包括的な NLP ツール: 品詞タグ付け、レマティゼーション、言語検出を含む。
  • 柔軟なエンティティ認識: 地名辞書ベース、ルールベース、パーセプトロンベースの名前付きエンティティ認識(NER)をサポート。
  • 埋め込みサポート: FastText および StarSpace 埋め込みの学習をそのまま利用可能。
  • クロスプラットフォーム: Windows、Linux、macOS、ARM で動作。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト