タグ付けされた質問 「caret」

Caretは、予測モデルの作成プロセスを合理化しようとする一連の関数を含むRパッケージです。

3
R:データセットにNaNがないにもかかわらず、「Forest function call」エラーでNaN / Infをスローするランダムフォレスト[非公開]
キャレットを使用して、データセットに対してクロス検証されたランダムフォレストを実行しています。Y変数は要因です。データセットにNaN、Inf、またはNAはありません。ただし、ランダムフォレストを実行すると、 Error in randomForest.default(m, y, ...) : NA/NaN/Inf in foreign function call (arg 1) In addition: There were 28 warnings (use warnings() to see them) Warning messages: 1: In data.matrix(x) : NAs introduced by coercion 2: In data.matrix(x) : NAs introduced by coercion 3: In data.matrix(x) : NAs introduced by …

3
RキャレットとNA
パラメーターの調整機能と統一されたインターフェイスは非常に気に入っていますが、適用された "裸の"モデルでNAが許可されていても、常に完全なデータセット(つまりNAなし)が必要です。そもそも必要ではない面倒な代入法を適用する必要があるという点で、これは非常に面倒です。代入を回避し、キャレットの利点をどのように使用できますか?

2
キャレットでcvとrepeatedcvの本当の違いは何ですか?
これは、質問キャレットの再サンプリング方法に似ていますが、同意された方法で質問のこの部分に実際に答えたことはありません。 キャレットの鉄道機能の提供cvとrepeatedcv。言うことの違いは何ですか: MyTrainControl=trainControl( method = "cv", number=5, repeats=5 ) 対 MyTrainControl=trainControl( method = "repeatedcv", number=5, repeats=5 ) cvセットをk分割(パラメーターnumber)に分割してから、最初からやり直してパラメーターrepeatsを何回も実行することを理解しています。 私は考えることができる唯一の事は、多分規則的であるcvとのrepeatsそれぞれの時間を折るために使用するのと同じ正確な指標?基本的にcv毎回同じ正確なフォールドで実行しますが、おそらくrepeatedcv新しいフォールドを毎回選択しますか? 誰か明確にできますか?

5
オーバーフィッティング:特効薬はありませんか?
私の理解では、適切な相互検証とモデル選択手順を踏んだとしても、モデルの複雑さ、期間に制限を課さない限り、モデルを十分に検索すると過適合が発生します。さらに、多くの場合、人々は、提供できる保護を損なうデータからモデルの複雑さに対する罰則を学ぼうとします。 私の質問は次のとおりです。上記の声明にはどれほど真実がありますか? MLの専門家は、「私の会社/研究室では、利用可能なすべてのモデル(キャレットやscikit-learnなどのライブラリから)を常に試して、どれが最適かを確認します」とよく耳にします。私はしばしば、このアプローチは交差検証に真剣であり、任意の方法でホールドアウトセットを保持している場合でも簡単にオーバーフィットできると主張します。さらに、検索が難しくなればなるほど、オーバーフィットする可能性が高くなります。言い換えれば、過剰な最適化は本当の問題であり、体系的にそれと戦うのに役立つ経験則はありません。このように考えるのは間違っていますか?

3
キャレットを使用したモデルのスタック/アンサンブル
caretRを使用していくつかの異なる予測モデルをトレーニングすることがよくあります。すべてを同じクロス検証フォールドでトレーニングし、を使用してcaret::: createFolds、クロス検証エラーに基づいて最適なモデルを選択します。 ただし、いくつかのモデルからの予測の中央値は、独立したテストセットで最良の単一モデルを上回ることがよくあります。同じクロス検証フォールドでトレーニングされたキャレットモデルをスタック/アンサンブルするための関数を書くことを考えています。たとえば、各フォールドの各モデルから中央値予測を取得したり、「メタモデル」をトレーニングしたりします。 もちろん、これには外側の相互検証ループが必要になる場合があります。キャレットモデルをアセンブルするための既存のパッケージ/オープンソースコードを知っている人はいますか?
21 r  caret  ensemble 

2
キャレットの再サンプリング方法
caretR のライブラリを使用して、さまざまなモデリング手順をテストしています。 trainControlオブジェクトは、1つの再サンプリング方法を指定することを可能にします。方法は、に記載されている文書のセクション2.3を含む:boot、boot632、cv、LOOCV、LGOCV、repeatedcvおよびoob。これらのいくつかは推測が容易ですが、これらの方法のすべてが明確に定義されているわけではありません。 これらのリサンプリング方法に対応する手順は何ですか?
20 r  resampling  caret 

2
glmnetのキャレットトレーニング関数は、アルファとラムダの両方を相互検証しますか?
Rのいcaretの両方の上にパッケージクロス検証をalphaしてlambdaためglmnetのモデル?このコードを実行すると、 eGrid <- expand.grid(.alpha = (1:10) * 0.1, .lambda = (1:10) * 0.1) Control <- trainControl(method = "repeatedcv",repeats = 3,verboseIter =TRUE) netFit <- train(x =train_features, y = y_train, method = "glmnet", tuneGrid = eGrid, trControl = Control) トレーニングログは次のようになります。 Fold10.Rep3: alpha=1.0, lambda=NA どういうlambda=NA意味ですか?

1
キャレットと係数(glmnet)
キャレットを使用して、特定のデータセットの推論を行うことに興味があります。以下を行うことは可能ですか? キャレットでトレーニングしたglmnetモデルの係数を生成します。glmにあるとは思わないので、固有の機能選択のためにglmnetを使用したいと思いますか? ROCメトリック以外に、モデルの適合を評価するために利用できる別のメトリックはありますか?調整済み?R2R2R^2 この分析の目的は、予測ではなく、特定の変数の影響に関する推論を導き出すことです。キャレットパッケージは、これまでマトリックスを使用して簡単に操作できたため、気に入っています。
19 caret  glmnet 

1
キャレット-繰り返されるKフォールド交差検証とネストされたKフォールド交差検証、n回繰り返される
キャレットパッケージには、複数の機械学習モデルを構築するための華麗なRライブラリで、モデル構築および評価のためのいくつかの機能を持っています。パラメーターの調整とモデルのトレーニングのために、キャレットパッケージはメソッドの1つとして 'repeatedcv'を提供します。 良いプラクティスとして、次のように機能するネストされたKフォールドクロス検証を使用してパラメーターチューニングを実行できます。 トレーニングセットを「K」個のサブセットに分割する 各反復で、モデルトレーニング用に 'K-1'サブセットを取得し、モデルテスト用に1サブセット(ホールドアウトセット)を保持します。 さらに、「Kマイナス1」トレーニングセットを「K」サブセットに分割し、パラメータ調整(グリッド検索)に新しい「Kマイナス1」サブセットと「検証セット」を繰り返し使用します。このステップで特定された最適なパラメーターは、ステップ2で設定されたホールドアウトでテストするために使用されます。 一方、繰り返しのKフォールド交差検証は、モデルの分散を見つけるために選択した回数だけ、ステップ1と2を繰り返し繰り返す可能性があると思います。 ただし、キャレットマニュアルのアルゴリズムを実行すると、 'repeatedcv'メソッドは、クロス検証の繰り返しに加えて、ネストされたKフォールドクロス検証も実行する可能性があるようです。 私の質問は: キャレットの 'repeatedcv'メソッドについての私の過小評価は正しいですか? そうでない場合は、キャレットパッケージを使用した 'repeatedcv'メソッドを使用して、ネストされたKフォールドクロス検証を使用した例を教えてください。 編集: この方法論の記事では、さまざまなクロス検証戦略について説明し、比較しています。 Krstajic D、Buturovic LJ、Leahy DE、Thomas S:回帰および分類モデルを選択および評価する際の交差検証の落とし穴。Journal of Cheminformatics 2014 6(1):10。doi:10.1186 / 1758-2946-6-10 キャレットパッケージを使用した「アルゴリズム2:階層化されたネストされたクロス検証の繰り返し」と「アルゴリズム3:変数選択とパラメーターチューニングのためのグリッド検索のクロス検証の繰り返し」に興味があります。

2
RのキャレットパッケージでのPCAおよびk分割交差検証
Courseraの機械学習コースの講義を再視聴しました。教授が教師あり学習アプリケーションでデータを前処理するためのPCAについて説明しているセクションでは、PCAはトレーニングデータに対してのみ実行し、マッピングを使用して相互検証とテストセットを変換します。PCAおよびtrain / test splitも参照してください。 ただし、caretRパッケージでは、train()関数に渡すトレーニングデータは既にPCAによって処理されています。そうする際、アルゴリズムが実行クロスバリデーションをK倍クロスバリデーションセットが既に介してPCAを用いて処理されているpreProcess()とpredict()「フィッティング」と実際にPCAに使用されます。 状況に対する私の理解は正しいですか?つまり、データの前処理がトレーニングセットと同様にクロス検証セットで実行されるため、PCA(または実際には、任意の再スケーリング/センタリング方法)でのクロス検証のキャレットの手順は「間違っています」か?もしそうなら、これは結果にどれほど大きな影響を与えるでしょうか?

4
勾配ブースティングマシンの精度は、反復回数が増えると低下します
caretR のパッケージを介して勾配ブースティングマシンアルゴリズムを試しています。 小さな大学入学データセットを使用して、次のコードを実行しました。 library(caret) ### Load admissions dataset. ### mydata <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv") ### Create yes/no levels for admission. ### mydata$admit_factor[mydata$admit==0] <- "no" mydata$admit_factor[mydata$admit==1] <- "yes" ### Gradient boosting machine algorithm. ### set.seed(123) fitControl <- trainControl(method = 'cv', number = 5, summaryFunction=defaultSummary) grid <- expand.grid(n.trees = seq(5000,1000000,5000), interaction.depth = 2, shrinkage …
15 machine-learning  caret  boosting  gbm  hypothesis-testing  t-test  panel-data  psychometrics  intraclass-correlation  generalized-linear-model  categorical-data  binomial  model  intercept  causality  cross-correlation  distributions  ranks  p-value  z-test  sign-test  time-series  references  terminology  cross-correlation  definition  probability  distributions  beta-distribution  inverse-gamma  missing-data  paired-comparisons  paired-data  clustered-standard-errors  cluster-sample  time-series  arima  logistic  binary-data  odds-ratio  medicine  hypothesis-testing  wilcoxon-mann-whitney  unsupervised-learning  hierarchical-clustering  neural-networks  train  clustering  k-means  regression  ordinal-data  change-scores  machine-learning  experiment-design  roc  precision-recall  auc  stata  multilevel-analysis  regression  fitting  nonlinear  jmp  r  data-visualization  gam  gamm4  r  lme4-nlme  many-categories  regression  causality  instrumental-variables  endogeneity  controlling-for-a-variable 

3
CARETのパラメーターチューニング(グリッド)機能を無効にする方法はありますか?
CARETは、事前に指定されたチューニンググリッドを使用してさまざまなモデルを自動的に構築してから、最終モデルを選択し、完全なトレーニングデータで最終モデルをトレーニングします。パラメーターの組み合わせを1つだけ使用して、独自のチューニンググリッドを提供できます。ただし、この場合でも、CARETは(この場合は1つしかありませんが)調整パラメーターから最適なモデルを「選択」し、最終モデルをすべてのトレーニングデータに適合させます。これは私が避けたい余分なステップです。 チューニンググリッドのバリエーション全体でモデル検索ステップをスキップし、すべてのトレーニングデータに基づいてCARETを強制するにはどうすればよいですか(基礎となるモデルライブラリを直接呼び出す以外)。
15 r  caret 

2
キャレットと基本的なrandomForestパッケージを介したrandomForestからの異なる結果
私は少し混乱しています:キャレットを介してトレーニングされたモデルの結果は、元のパッケージのモデルとどう違うのですか?キャレットパッケージでRandomForestのFinalModelを使用して予測する前に前処理が必要かどうかを読みました。ただし、ここでは前処理を使用しません。 キャレットパッケージを使用して、さまざまなmtry値を調整することにより、さまざまなランダムフォレストをトレーニングしました。 > cvCtrl = trainControl(method = "repeatedcv",number = 10, repeats = 3, classProbs = TRUE, summaryFunction = twoClassSummary) > newGrid = expand.grid(mtry = c(2,4,8,15)) > classifierRandomForest = train(case_success ~ ., data = train_data, trControl = cvCtrl, method = "rf", metric="ROC", tuneGrid = newGrid) > curClassifier = classifierRandomForest mtry = …

1
キャレットglmnetとcv.glmnet
glmnetwithin caretを使用して最適なラムダを検索cv.glmnetし、同じタスクを実行するために使用することの比較には、多くの混乱があるようです。 次のような多くの質問が提起されました。 分類モデルtrain.glmnet対cv.glmnet? キャレットでglmnetを使用する適切な方法は何ですか? 「キャレット」を使用して「glmnet」を相互検証する しかし、答えはありません。これは、質問の再現性による可能性があります。最初の質問に続いて、非常に似た例を挙げますが、同じ質問があります:推定されるラムダはなぜそんなに違うのですか? library(caret) library(glmnet) set.seed(849) training <- twoClassSim(50, linearVars = 2) set.seed(849) testing <- twoClassSim(500, linearVars = 2) trainX <- training[, -ncol(training)] testX <- testing[, -ncol(testing)] trainY <- training$Class # Using glmnet to directly perform CV set.seed(849) cvob1=cv.glmnet(x=as.matrix(trainX),y=trainY,family="binomial",alpha=1, type.measure="auc", nfolds = 3,lambda = seq(0.001,0.1,by = …

2
キャレットパッケージを使用すると、特定のしきい値の混同マトリックスを取得できますか?
trainバイナリ応答のロジスティック回帰モデル(を介して)を取得し、confusionMatrixin を介してロジスティック混同行列を取得しましたcaret。ロジスティックモデルの混同マトリックスが得られますが、それを取得するためにどのしきい値が使用されているのかはわかりません。confusionMatrixin を使用して特定のしきい値の混同マトリックスを取得するにはどうすればよいcaretですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.