Bergvca/string_grouper
Super Fast String Matching in Python
何を解決するか
1つ以上のリスト内の類似した文字列を検出し、グループ化するプロセスを簡素化し、高速化します。これは、わずかな変化(曖昧マッチング)があるものの同じエンティティを表す文字列を含む大規模データセットの重複削除に特に役立ちます。
動作方法
このライブラリは、文字列間のコサイン類似度を計算するためにtf-idfを使用します。大規模データセットでの高速処理を実現するために、Rustベースの疎行列乗算バックエンド(sp_matmul_rs)を活用しており、数10万件の文字列を数秒で処理できます。
対象ユーザー
大規模なテキストデータセットを扱い、効率的な曖昧マッチングと文字列の重複削除が必要なデータサイエンティストや開発者です。
特徴
- 高速性: 消費者向けハードウェアで663,000件の名前を18秒未満で曖昧マッチング可能。
- グラフベースのグループ化: 文字列間の間接的な関連を解消し、一貫性のあるグループを形成可能。
- 重心の特定: 各グループの代表的な「重心」文字列を決定可能。
- 柔軟なバックエンド: 現代的なRust実装と元の
sparse_dot_topnバックエンドの両方をサポート。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト