3

問題: 手動で分類された文字列のセット (または文字列の順序付けられたベクトルのセット) が与えられると、より多くの入力を分類するための categorize 関数が生成されます。私の場合、そのデータ (またはそのほとんど) は自然言語ではありません。

質問: それを行うツールはありますか? ライブラリや脆弱なアカデミック プログラムとは対照的に、合理的に洗練された、ダウンロード、インストール、実行できるようなものを考えています。


(実際の詳細は、あまり一般的ではない回答への回答を制限し、NDA の下にあるため、詳細にこだわらないでください。)

私が見ているものの例として; フィルタリングしたい入力は、ログから取得したコンピューター生成のステータス文字列です。エラー メッセージ (例) は、誰に通知する必要があるか、またはどのようなアクションを実行する必要があるかに基づいてフィルター処理されます。

4

3 に答える 3

3

手作業で行う

エラー メッセージが自動的に生成され、メッセージの背後にある例外のリストがそれほど大きくない場合は、各エラー メッセージの種類を通知が必要な人に直接マップするテーブルが必要になる場合があります。

これにより、誰/どのグループがどのタイプのメッセージを受け取るかを正確に追跡し、一部のメッセージが誤って送信されていると判断した場合にメッセージのルーティングを更新することが容易になります。

通常、エラーの種類のごく一部が、エラー レポートの大部分を占めています。たとえば、Microsoft は、クラッシュの 80% がソフトウェアのバグの 20% によって引き起こされていることに気付きました。したがって、役に立つものを得るために、すべてのタイプのエラー メッセージを網羅した完全な表から始める必要さえありません。代わりに、最も一般的なエラーを適切な担当者にマッピングし、それ以外のすべてのエラーを手動でルーティングする担当者にルーティングするだけのリストから始めることができます。エラーが手動でルーティングされるたびに、ルーティング テーブルにエントリを追加して、そのタイプのエラーが今後自動的に処理されるようにすることができます。

ドキュメントの分類

エラーメッセージが送信者によって編集されていて、ルーティング時にこの情報を使用したい場合を除き、これを文書分類タスクとして扱うことはお勧めしません。ただし、これがやりたい場合は、プログラミング言語ごとに整理されたドキュメントドキュメント分類用の適切なパッケージのリストを次に示します。

Python - Python ベースの自然言語ツールキット (NLTK)を使用してこれを行うには、無料で入手できるNLTK ブックのドキュメント分類セクションを参照してください。

Ruby - Ruby の方が好みなら、 Classifier gemを使用できます。これは、Family Guy の引用が面白いかどうかを検出するサンプル コードです。

C# - C# プログラマーはnBayesを使用できます。プロジェクトのホームページには、単純なスパム/非スパム分類器のサンプル コードがあります。

Java -Java関係者には、 Classifier4JWekaLucene Mahout、および adi92 が言及したMalletがあります。

Weka を使用したルールの学習- ルールが必要な場合は、ルール セット ベースの学習者が含まれているため、Weka は特に興味深いものになる可能性があります。Weka を使用したテキストの分類に関するチュートリアルは、こちらにあります。

于 2010-05-15T20:26:31.927 に答える
1

Malletには、コマンドラインから完全にトレーニングおよび展開できる分類器がたくさんあります.
Wekaも素晴らしいです.

于 2010-05-14T16:39:41.203 に答える
0

スパムまたはメール フィルタを試しましたか? 適切なカテゴリでマークされたテキスト ファイルを使用することで、テキスト入力をさらに分類できるはずです。いずれにせよ、それはそれらのプログラムが行うことですが、出力に「スパム」および「スパムではない」というラベルを付ける代わりに、他のカテゴリを行うことができます。

独自のロールを作成するためのより実践的なアプローチとして、AdaBoost を含む何かを試すこともできます。 Google のこのライブラリは有望に見えますが、すぐにデプロイできる要件を満たしていない可能性があります。

于 2010-05-13T18:40:00.577 に答える