問題タブ [fselector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - エラー: protect(): 機能抽出中の保護スタック オーバーフロー
4755 行と 27199 列のデータフレームがあります。これは実際には文書用語マトリックスであり、「FSelector」パッケージを使用して機能選択を実行しようとしています。以下にコードの一部を示します。
これを行うたびに、エラーが発生します
24GB の RAM があり、データフレームのサイズは約 500Mb です。それで、何が問題なのか、どうすれば修正できるのかわかりませんか?
r - RにおけるOneRアルゴリズムの手順
FSelecter パッケージの OneR アルゴリズムを使用して、エラー率が最も低い属性を見つけました。私のクラスの属性は「はい」と「いいえ」です。属性の私の特徴もイエスとノーです。
OneR アルゴリズムの結果は次のとおりです。
ただし、同じデータ フレームで相関関数を使用すると、最良の属性は属性よりもエラー率が低くなり、oneR 関数で得られます。
OneR アルゴリズムが CO4 属性を (エラー率に基づいて) 最良の属性として表示しない理由を教えてください。
OneR アルゴリズムはどの基準を使用しますか?
--- 私の質問をよりよく理解するための追加 ---
完全なデータは大きすぎて表示できません。同じ効果を持つ新しいデータプールを構築しました
遅延 - OR1 - CO4 ..
1 ----------1--------1--
0 -------0--------0--
0 ----------0--------1--
1 ----------0--------1--
0 -------0--------0--
1 ----------0--------1--
0 -------0--------0--
1 ----------0--------1--
単一の属性のエラー率を表示するためのコード:
print(table(datapool_stackoverflow$DELAYED, datapool_stackoverflow$OR1))
OneR 関数のコード:
ライブラリ(FSelector)
oneR_stackoverflow <- oneR(DELAYED~., datapool_stackoverflow)
subset_stackoverflow <- cutoff.k(oneR_stackoverflow, 2)
印刷 (subset_stackoverflow)
相関のコード:
cor(as.numeric(datapool_stackoverflow$DELAYED), as.numeric(datapool_stackoverflow$OR1))
この場合、結果は次のようになります。
エラー率: OR1 マトリックス: ------ 0 (属性特性) -- 1 (属性特性)
0(クラス):---------------------4----------------------- --0
1(クラス: ----------------------3------------------------ -1
マヌエルが計算したエラー率: 3(0 + 3)
エラー率: CO4 マトリックス: ------ 0 (属性特性) -- 1 (属性特性)
0(クラス):-------------------------------------3--------------------- --1
1(クラス: -----------------------0---------------------- -4
エラー率: 1(1 + 0)
相関: 属性 OR1: 0.377 属性 CO4: 0.77
OneR: 「OR1」、「CO4」
なぜ、OneR 関数は分類するのに最適な属性として OR1 属性を提供するのですか?
r - R の information.gain での数式の使用
FSelector information.gain 関数の関数定義では、
information.gain(式、データ)
式の目的は何ですか?関数を使用して、分類タスクの特徴選択を実行しようとしています。私がオンラインで見たいくつかの例では、数式がクラス ラベルとデータセット内のフィーチャとの間の何らかの関係を定義しているように見えます。ただし、この場合、分類タスクを実行しているため、特徴とラベルの間の正確な線形関係がわからないので、式はどうなるでしょうか?
r - 「rpart」オブジェクト エラーの無効な予測
アイリス データセットを使用する、この CRAN ドキュメント ( https://cran.r-project.org/web/packages/FSelector/FSelector.pdf ) の 4 ページから最適な最初の検索の正確なコードを使用しています。虹彩データセットでは問題なく動作しますが、自分の ndata では動作しません。私のデータには 37 の予測変数 (数値とカテゴリの両方) があり、38 番目の列はクラス予測です。
エラーが発生します:
私はこの行から来ていると思います:
デバッグとトレースバックを試しましたが、このエラーが発生する理由がわかりません (前述のように、虹彩データでは再現できません)。
ここに私のデータの一部を示しますので、私が取り組んでいるものを見ることができます:
java - Mac OS X El Capitan の R で FSelector パッケージを使用できない
現在、OS X El Capitan バージョン 10.11.3 を使用しています。
R で使用しようとすると、次のようlibrary(FSelector)
なエラーが表示されます。
library(Rweka)
また、とを試したときにも同じことが起こりましたlibrary(Rwekajars)
。
なぜこれが起こり、どのように解決するのですか?
r - FSelector パッケージですべての重みを適切に計算する方法は?
FSelector パッケージを使用して、R でデータセットの重みを計算しようとしています。データはこの場所から取得されます。
すべての重みを計算することはできません。gain.ratio
関数を使用すると、Age
重みは NaN になります。chi.squared
代わりに関数を使用すると、Age
との両方A/G Ratio
がゼロになります。から最初の 200 要素を取得しdata
て重みを計算すると、そのうちの 5 つだけが正確に計算され、その他はゼロまたは NaN です。
データから間違った要素を削除しようとしましdata <- na.omit(data)
たが、結果は変わりませんでした。
重みを正しく計算するにはどうすればよいですか?
以下はウェイト印刷の例です。
r - RでSparseMatrixマトリックスで特徴選択を行う方法
20,000 を超える機能、300 万を超えるオブジェクト、および 3,000 を超えるクラスでテキスト分類の問題が発生しています。データは非常にまばらです。私は R でプログラムを書きました。sparseMatrix オブジェクトのデータ マトリックス。このデータの特徴を選択するにはどうすればよいですか? パッケージ FSelector を見つけましたが、sparseMatrix では動作せず、data.frame のみで動作し、メモリの制限によりデータを変換できません。
r - カイ二乗検定を使用したドキュメント機能マトリックスでの機能選択
自然言語処理を利用したテキストマイニングを行っています。パッケージを使用quanteda
してドキュメント機能マトリックス (dfm) を生成しました。ここで、カイ 2 乗検定を使用して特徴選択を行いたいと思います。すでに多くの人がこの質問をしていたことを知っています。ただし、それに関連するコードが見つかりませんでした。(答えは、次のような簡単な概念を示しただけです: https://stats.stackexchange.com/questions/93101/how-can-i-perform-a-chi-square-test-to-do-feature-selection- in-r )
chi.squared
パッケージで使用できることを知りましたが、この関数を dfm クラス オブジェクト (以下)FSelector
に適用する方法がわかりません。trainingtfidf
(マニュアルに示されています。予測変数に適用されます)
誰かヒントをくれませんか?それは有り難いです!
コード例:
r - Fselector パッケージの入力としての疎行列の使用について
私は information.gain()、chi.squared() および gain を使用しています。特徴選択のために Fselector パッケージによって提供される Ratio() 関数。
200161 (行)、323 (列) のデータ セットの次元のマトリックスを使用しているため、これらの関数はすべてデータ フレームを入力として受け入れています。
8 GB RAM を搭載した xeon プリオセッサーがあり、メモリ制限を最大に拡張した後、コマンドを使用してアサートします
結果は 8026 になりますが、これも十分ではありません
メモリ効率のために、データフレームをスパース行列に変換しました
ここで問題は、疎行列を関数 information.gain()、chi.squared()、gain.ratio() への入力として使用できるかどうかです。
これに関して誰か助けてください、
前もって感謝します