問題タブ [random-forest]
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 - クラスタリング用のデータを生成する
人工データを使用してランダム フォレスト クラスタリングをテストしたいと考えています。信頼性が高く、多少のノイズがあるデータセットを生成したかったのです。
A1 と A2 (どちらもバイナリ) の 2 つの属性があります。クラスは、A1 xor A2 として計算されます。ノイズの多いバイナリ属性をいくつか追加しました。
たとえば、次のようなものがあります。
クラスタリングではクラスがないため、ランダム フォレスト クラスタリングでは元のデータを取得して変換します。既存のすべてのケースをクラス 1 でマークし、クラス 2 でマークされた合成データを追加します。合成データは、一部の属性のすべての値からランダム サンプリングによって構築されます。
これが得られるものです:
上の部分は、クラス 1 でマークされた元のデータ (上記のように) です。線の下は、クラス 2 でマークされたランダムにサンプリングされた合成データです。ランダム フォレストは、クラス 1 と 2 を区別する構造 (実データとランダム データ) を見つけようとします。問題は、クラスのない XOR は何も教えてくれず、ここで学ぶことは何もないということです。
最後に、私の質問: 非依存、軽度の依存、または強い依存の属性を使用して、ランダム フォレスト クラスタリングのデータを生成する方法を教えてください。
r - randomForest パッケージの特徴選択のために rfcv() 関数を並列化します
Rパッケージ'randomForest'に実装されているrfcv()関数を並列化する方法を誰かが知っているのだろうか。質問が非常に基本的に聞こえる場合は申し訳ありませんが、「foreach」を使用してこれを実行しようとしましたが、結果はありませんでした。
r - RF の構築中に下付き文字が範囲外です
r のランダム フォレストに基づいて分類器を構築しようとしています。
これを再現するコード:
これは機能します:
これは機能します(もちろん意味はありません):
しかし、ランダムフォレストを構築すると、次のようになります。
グーグルで調べてみると、これは寸法の問題ですが、理由/方法がわかりません。
バージョン:
R.version _
platform i686-pc-linux-gnu
arch i686
os linux-gnu
system i686, linux-gnu
status
major 2
minor 15.1
year 2012
month 06
day 22
svn rev 59600
language R
version.string R version 2.15.1 (2012 -06-22) 愛称 焼きマシュマロ
ライブラリのバージョン:
r - サンプル データのサイズを増やす - R
私の同僚の 1 人は、randomForest()
非常に大きなデータ セットではうまく機能しないことを示しました。今、私はそれが本当かどうかを調べようとしていますが、データセットは共有できないため (機密情報)、大きなデータセットを考えてみようと思いました. 私は以下を試しましたが、エラーメッセージを理解できません:
エラーメッセージ:
誰でも私をここに案内してもらえますか?
r - RrandomForestサブセットは因子レベルを取り除くことができません
重複の可能性:
Rのサブセット化されたデータフレームの因子レベルのドロップ
randomForestを使用して売上を予測しようとしています。3つの変数があり、そのうちの1つはstoreIdの因子変数です。テストセットには、トレーニングセットにはないレベルがあることを知っています。トレーニングセットに存在するレベルのみの予測を取得しようとしていますが、新しい因子レベルを超えて予測することはできません。
これが私がこれまでに試したことです:
この部分は理にかなっています。
だから私はこれを試してみます:
だから私はこれを試してみます:
そして、「11」レベルはまだそこにあります。
次に私はこれを試します:
ここでは問題がないように見えますが、次のようになります。
「11」レベルのない店舗だけで予測するための提案はありますか?
編集:
c++ - C ++:テンプレートコードを再利用する方法
私はランダムなフォレストを構築するためのいくつかのアルゴリズムを書いています、各フォレストは別々の関数を持つ別々のデータでトレーニングされます(各ツリーは固定署名の関数のセットを使用しますが、異なるツリーは異なる関数のセットを使用してトレーニングされます別の署名)、ただし、テンプレートを使用して、ランダムツリーを一度構築するためのコードを記述したいと思います。私は現在次のようなものを持っています:
テンプレートクラスTは、トレーニングデータタイプ(つまり、画像パッチ、またはピクセル)に対応します。テンプレートクラスVは、関数ポインタータイプに対応します。
そして私はそのようにオブジェクトを作成します:
問題は、効率上の理由から、構築しているツリーの1つに対して、関数のセット(function_ptr)がTrainingDataPoint(テンプレートタイプT)だけでなくデータのキャッシュも取り込むようにしたいということです。関数ポインタが次のようになるようにします。
ここで問題となるのは、RandomTreeクラスをジェネリックに保つ方法は考えられませんが、トレーニングポイント(テンプレートタイプT)以上のものを使用する関数セット(テンプレートタイプV)がいくつかあることです。
これまで私は考えてきました:
- 関数がキャッシュにアクセスできるように、キャッシュをグローバルにします
- 各トレーニングデータポイントへのキャッシュへのポインタを追加します(ただし、クリーンアップの責任者は誰ですか?)
- RandomTreeに3番目のテンプレートパラメーターを追加しますが、この場合、この3番目のパラメーターを必要としないツリーを構築している場合、そこに何を配置しますか?
これらのオプションはどれも私には特に魅力的ではないようです。誰かが経験を積んで、より良い方法を教えてくれることを願っています。
ありがとう
machine-learning - scikitで確率分布を学習すると、ランダムフォレストが学習されますか?
状態->アクションペア(s、a)のデータセットがあります。ここで、各sはaの可能な選択肢に対する確率分布を定義し、各aはその確率分布からサンプリングされます。このデータセットの分類器をトレーニングしたいと思います。最尤法を予測することを学習するのではなく、aがサンプリングされた分布を予測します。
たとえば、繰り返しじゃんけんをしている場合、あなたの状態はあなたが行った前の動きと、前の状態がそのアクションを再び選択する可能性を減らす∈{Rock、Paper、Scissors}である可能性があります。その場合、私のデータセットは次のようになります。
scikit-learnでランダムフォレストを持つラベルの確率分布を学習することは可能ですか?
opencv - OpenCV 反復ランダム フォレスト トレーニング
私は論文プロジェクトの分類子としてランダム フォレスト アルゴリズムを使用しています。トレーニング セットは数千の画像で構成され、画像ごとに約 2000 ピクセルがサンプリングされます。ピクセルごとに、何十万もの機能があります。私の現在のハードウェア制限 (8G RAM、おそらく 16G まで拡張可能) では、1 つの画像のサンプル (つまり、ピクセルあたりの特徴) をメモリに収めることができます。私の質問は次のとおりです。毎回異なる画像のサンプルを使用して train メソッドを複数回呼び出し、呼び出しごとに統計モデルを自動的に更新することは可能ですか? 機能セット全体を使用して完全なトレーニング セットをトレーニングした後、機能の数を数十万から約 2000 に減らし、最も重要なものだけを保持することを考えているため、変数の重要度に特に関心があります。
アドバイスをありがとう、ダニエレ
r - RのrandomForestパッケージからのrfimputeを使用したメモリエラー
現在作業中のデータセットに不足している値を入力してみたいと思います。データには、13300の観測値と9つの特徴があります。ランダムフォレストを実行したいので、rfimputeを使用してこれらの欠落している値を埋めてみました。次のエラーが発生します:サイズ678.4Mbのベクトルを割り当てることができません。私はこれを8GBのRAMを搭載したWindowsマシンで実行しています。これは私が行う呼び出しです:
¿ここで何が起こっているのですか?670mbsはそれほど多くないように聞こえます...
r - Rのランダムフォレスト - 多くのクラス
R randomForest でマルチラベル分類を行いたいです。私は 10 のクラス A..J を持っています。
次のような単一のクラスを予測する方法の例を見つけました。
しかし、H、I、J など、より多くのクラスを予測したいと考えています。(つまり、A..G だけに属性が与えられているとします)。どうすればいいですか?
A..G と予測されたクラス (H/I/J) の 1 つだけを保持し、randomForest を 3 回実行するという考えがありますが、もっと良い方法があるでしょうか? 1回の実行でそれを行うには?
よろしくお願いします。