0

テキストの分類に関するタスクを実行しており、教師なし機械学習モデルの 1 つを使用しています。

テキスト クラスタリングを行う前に、ストップ ワードからのクリーニング、テキストから語幹語の抽出、特徴選択の取得など、データ セットが実行する必要があるいくつかの手順があります。

機能選択について読むと、情報ゲイン、ジニ指数、相互情報など、機能選択に適用できる方法がいくつかあります。

これらのメソッドの性質と、コーディング部分でそれらを実装する方法を知りたいのですが、これらのタスクを実行するために使用できるライブラリはありますか?

4

3 に答える 3

0

機能を選択しないでください。

テキストはべき法則に従うので、スキップできる「珍しい単語」や未使用の機能はありません。情報は分布の末尾に隠され、最も頻繁に使用される単語には隠されません。

計算効率のために次元を制限したい場合 (ロイターはテキストに対して小さいと見なされます)、ハッシュベースのアプローチを展開する必要があります。

  • 標準的な TF-IDF 機能表現を使用し、単語を機能として扱うと思います。
于 2013-12-23T11:34:32.917 に答える
0

まず、arffファイルを生成する必要があります。

以下のarffファイル形式:

@RELATION sectionには、前処理後にドキュメント全体に存在するすべての単語が含まれます。tfidf 値は実数値であるため、各単語は実数型になります。

@data section前処理中に計算されたtfidf 値が含まれますたとえば、最初のドキュメントには、最初のドキュメントに存在するすべての単語と最後の列のドキュメント カテゴリの tfidf 値が含まれます

@RELATION filename
@ATTRIBUTE word1 real
@ATTRIBUTE word2 real
@ATTRIBUTE word3 real
.
.
.
.so on
@ATTRIBUTE class {cacm,cisi,cran,med}

@data
0.5545479562,0.27,0.554544479562,0.4479562,cacm
0.5545479562,0.27,0.554544479562,0.4479562,cacm
0.55454479562,0.1619617,0.579562,0.5542,cisi
0.5545479562,0.27,0.554544479562,0.4479562,cisi
0.0,0.2396113617,0.44479562,0.2,cran
0.5545479562,0.27,0.554544479562,0.4479562,carn
0.5545177444479562,0.26196113617,0.0,0.0,med
0.5545479562,0.27,0.554544479562,0.4479562,med

このファイルを生成した後、このファイルを への入力として渡すことができますInfoGainAttributeEval.java。これは私のために働いています。

于 2014-01-30T10:12:09.260 に答える
0

アプリケーション ドメインによっては、特徴選択を使用すると、テキストの分類に役立ちます。経済、政治、スポーツなどのトピック (テーマベースのカテゴリ) では、通常、ステミング、ストップリスト、および単語と単語の n-gram の選択が適切に機能します。スパム検出などの他の問題では、表現にストップ ワードを使用すると精度が向上する可能性があります。

問題は、アプリケーション ドメインではテキストのスタイルが重要かどうかです。はいの場合、ストップ ワードを保持し、ステミングを回避する必要がありますが、情報ゲイン スコアが上位の機能などを使用して、いつでも機能選択を実行できます。

フィルターを介して WEKA でストップリストとステミングを実行できStringToWordVectorます。AttributeSelection検索方法Rankerと評価指標を使用して、フィルターを使用した機能選択に WEKA を使用できますInfoGainAttributeEval。詳細については、WEKA を使用したテキスト マイニングに関する私のページを参照してください(SSP には申し訳ありません)。

于 2013-12-28T18:44:38.837 に答える