タグ付けされた質問 「cross-validation」

保留されたデータのサブセットでのモデルのパフォーマンスを定量化するために、モデルのフィッティング中にデータのサブセットを繰り返し保留する。

1
Anova()とdrop1()がGLMMに異なる回答を提供したのはなぜですか?
次の形式のGLMMがあります。 lmer(present? ~ factor1 + factor2 + continuous + factor1*continuous + (1 | factor3), family=binomial) 私が使用している場合drop1(model, test="Chi")、私は私が使用している場合とは異なる結果を得るAnova(model, type="III")車のパッケージからかsummary(model)。後者の2つは同じ答えを与えます。 大量の偽造データを使用して、これらの2つの方法は通常違いがないことがわかりました。それらは、平衡線形モデル、不平衡線形モデル(異なるグループでnが等しくない場合)、および平衡一般化線形モデルに対して同じ答えを示しますが、平衡一般化線形混合モデルに対しては同じ答えを与えません。したがって、ランダムな要素が含まれている場合にのみ、この不一致が現れます。 これらの2つの方法の間に違いがあるのはなぜですか? GLMMを使用する場合は必要がありますAnova()かdrop1()使用できますか? これらの2つの違いは、少なくとも私のデータでは、かなりわずかです。どちらを使用するかは問題ですか?
10 r  anova  glmm  r  mixed-model  bootstrap  sample-size  cross-validation  roc  auc  sampling  stratification  random-allocation  logistic  stata  interpretation  proportion  r  regression  multiple-regression  linear-model  lm  r  cross-validation  cart  rpart  logistic  generalized-linear-model  econometrics  experiment-design  causality  instrumental-variables  random-allocation  predictive-models  data-mining  estimation  contingency-tables  epidemiology  standard-deviation  mean  ancova  psychology  statistical-significance  cross-validation  synthetic-data  poisson-distribution  negative-binomial  bioinformatics  sequence-analysis  distributions  binomial  classification  k-means  distance  unsupervised-learning  euclidean  correlation  chi-squared  spearman-rho  forecasting  excel  exponential-smoothing  binomial  sample-size  r  change-point  wilcoxon-signed-rank  ranks  clustering  matlab  covariance  covariance-matrix  normal-distribution  simulation  random-generation  bivariate  standardization  confounding  z-statistic  forecasting  arima  minitab  poisson-distribution  negative-binomial  poisson-regression  overdispersion  probability  self-study  markov-process  estimation  maximum-likelihood  classification  pca  group-differences  chi-squared  survival  missing-data  contingency-tables  anova  proportion 


4
Rで変数/機能の選択を行うために相互検証を使用する方法はありますか?
削減したい約70の変数を含むデータセットがあります。私が探しているのは、次の方法でCVを使用して最も有用な変数を見つけることです。 1)ランダムに言う20変数を選択します。 2)stepwise/ LASSO/ lars/ etcを使用して、最も重要な変数を選択します。 3)〜50xを繰り返し、どの変数が最も頻繁に選択されている(削除されていない)かを確認します。 これはa randomForestが何をするかという線に沿っていrfVarSelますが、パッケージは因子/分類に対してのみ機能するようであり、連続従属変数を予測する必要があります。 私はRを使用しているので、あらゆる提案が理想的にそこで実装されます。


1
cv.glmnet(RでのLASSO回帰)との相互検証を行う方法は?
Rでglmnetを使用してLASSOモデルを適切にトレーニングおよびテストする方法を知りたいのですが? 具体的には、外部テストデータセットがないために交差検証(または他の同様のアプローチ)を使用してLASSOモデルをテストする必要がある場合に、どうすればよいのかと思います。 私のシナリオを分解してみましょう: glmnetモデルに通知してトレーニングするデータセットは1つだけです。その結果、モデルをテストする方法を生成するために、データを分割するために交差検証を使用する必要があります。 私はすでに使用cv.glmnetしていますが、パッケージの詳細によると: glmnetのk分割交差検証を実行し、プロットを生成して、ラムダの値を返します。 交差検証はcv.glmnet、最良のラムダを選択するためだけに実行されますか、それともより一般的な交差検証手順としても機能していますか? 言い換えれば、モデルを「テスト」するために別の相互検証ステップを実行する必要がありますか? 私は「そうです」という前提で作業しています。 その場合、モデルをクロス検証する方法はありcv.glmnetますか? 手動で行う必要がありますか、それともこのcaret関数はglmnetモデルに役立ちますか? ?私は、クロスバリデーションの二つの同心「ループ」を使用しています...ドゥ私は経由CVの「内部ループ」を使用してcv.glmnet最良のラムダ値を決定するために内の各k個のk倍クロスバリデーション処理の「外部ループ」のひだ? すでに相互検証しているcv.glmnetモデルの相互検証を行う場合cv.glmnet、交差検証のその他の「外部ループ」の各フォールド内の各モデルから(「最良の」ラムダ値から)「最良の」モデルを分離するにはどうすればよいですか? 注:「最良の」モデルは、最小値の1 SE以内のMSEを生成するラムダに関連付けられたモデルとして定義しています。これはモデル$lambda.1se内のcv.glmnetです。 環境: 木の直径( "D")、D ^ 2、および種( "factor(SPEC)")に基づいて樹齢( "age")を予測しようとしています。[結果の方程式:Age ~ D + factor(SPEC) + D^2]。私は約5万行のデータを持っていますが、データは縦方向であり(時間を通じて個人を追跡します)、約65種で構成されています。

1
ランダムフォレストでのモデリングには交差検証が必要ですか?
私が見た限りでは、これについては意見が異なる傾向があります。ベストプラクティスは、クロス検証の使用を確実に指示します(特に、同じデータセットでRFを他のアルゴリズムと比較する場合)。一方、元のソースでは、OOBエラーがモデルトレーニング中に計算されるという事実は、テストセットのパフォーマンスの指標として十分であると述べています。Trevor Hastieでさえ、比較的最近の講演で、「ランダムフォレストは無料の相互検証を提供する」と述べています。直感的に、これは、1つのデータセットでRFベースのモデルをトレーニングおよび改善しようとする場合、私には理にかなっています。 これについてどう思いますか?

2
入れ子の交差検証-トレーニングセットのkfold CVによるモデル選択とどう違うのですか?
5x2相互検証について、ネストされた相互検証の特別なケースとして話している人がよくいます。 最初の数(ここでは:5)は内側のループの折り目の数を指し、2番目の数(ここでは:2)は外側のループの折り目の数を指していると思いますか?では、これは「従来の」モデルの選択と評価のアプローチとどう違うのでしょうか。「伝統的」とは データセットを個別のトレーニング(80%など)とテストセットに分割する トレーニングセットでのハイパーパラメーター調整とモデル選択にk分割交差検証(たとえば、k = 10)を使用する テストセットを使用して、選択したモデルの汎化性能を評価する 5 = 2は、k = 2の場合にテストとトレーニングセットのサイズが等しいことを除いて、まったく同じではありませんか?

2
入れ子の交差検証の実装
私は入れ子の交差検証の私の理解が正しいかどうかを把握しようとしています。したがって、このおもちゃの例を書いて、私が正しいかどうかを確認します。 import operator import numpy as np from sklearn import cross_validation from sklearn import ensemble from sklearn.datasets import load_boston # set random state state = 1 # load boston dataset boston = load_boston() X = boston.data y = boston.target outer_scores = [] # outer cross-validation outer = cross_validation.KFold(len(y), n_folds=3, shuffle=True, …

4
Rの離散時間イベント履歴(生存)モデル
Rに離散時間モデルを適合させようとしていますが、その方法がわかりません。 従属変数を時間監視ごとに1つずつ異なる行に編成し、glm関数をlogitまたはcloglogリンクで使用できることを読みました。この意味で、私は3つの列があります:ID、Event(各time-obsで1または0)およびTime Elapsed(観測の開始以降)、および他の共変量。 モデルに合うようにコードを書くにはどうすればよいですか?従属変数はどれですか?Event従属変数として使用できTime Elapsed、共変量に含めることができると思います。しかし、どうなりIDますか?必要ですか? ありがとう。
10 r  survival  pca  sas  matlab  neural-networks  r  logistic  spatial  spatial-interaction-model  r  time-series  econometrics  var  statistical-significance  t-test  cross-validation  sample-size  r  regression  optimization  least-squares  constrained-regression  nonparametric  ordinal-data  wilcoxon-signed-rank  references  neural-networks  jags  bugs  hierarchical-bayesian  gaussian-mixture  r  regression  svm  predictive-models  libsvm  scikit-learn  probability  self-study  stata  sample-size  spss  wilcoxon-mann-whitney  survey  ordinal-data  likert  group-differences  r  regression  anova  mathematical-statistics  normal-distribution  random-generation  truncation  repeated-measures  variance  variability  distributions  random-generation  uniform  regression  r  generalized-linear-model  goodness-of-fit  data-visualization  r  time-series  arima  autoregressive  confidence-interval  r  time-series  arima  autocorrelation  seasonality  hypothesis-testing  bayesian  frequentist  uninformative-prior  correlation  matlab  cross-correlation 

2
予測エラーをテストするためのGAM交差検証
私の質問は、mgcv RパッケージのGAMを扱います。サンプルサイズが小さいため、1対1の交差検証を使用して予測エラーを特定したいと思います。これは妥当ですか?どうすればこれを行うことができるパッケージまたはコードがありますか?ipredパッケージのerrorest()関数は機能しません。簡単なテストデータセットは次のとおりです。 library(mgcv) set.seed(0) dat <- gamSim(1,n=400,dist="normal",scale=2) b<-gam(y~s(x0)+s(x1)+s(x2)+s(x3),data=dat) summary(b) pred <- predict(b, type="response") ご協力ありがとうございます!
10 r  cross-validation  gam  mgcv 

1
相互検証を使用する場合の予測間隔の計算
標準偏差の推定値は次の方法で計算されますか? sN=1N∑Ni=1(xi−x¯¯¯)2−−−−−−−−−−−−−√.sN=1N∑i=1N(xi−x¯)2. s_N = \sqrt{\frac{1}{N} \sum_{i=1}^N (x_i - \overline{x})^2}. (http://en.wikipedia.org/wiki/Standard_deviation#Sample_standard_deviation) 10分割交差検証からサンプリングされた予測精度について (予測セットは独立していますが)トレーニングセット間の実質的なオーバーラップのため、各フォールド間で計算される予測精度が依存しているのではないかと心配しています。これについて説明しているリソースがあれば非常に役立ちます。

2
Rで多変量の結果をシミュレートする方法は?
ほとんどの状況では、ような1つの結果/応答変数のみを扱います。ただし、一部のシナリオ、特に臨床データでは、結果変数は高次元/多変量になる可能性があります。など、含ま、と変数を、これらの結果は、すべて相関しています。治療を受けることを表す場合(はい/いいえ)、Rでこのタイプのデータをどのようにシミュレートできますか?Y = β X + ε Y Y 1 Y 2 Y 3、Xy= a + b x + ϵy=a+bバツ+εy = a + bx +\epsilonY =βバツ + ϵY=βバツ+ε\mathsf{Y} = \beta{x} + \mathsf{\epsilon}YY\mathsf{Y}Y1Y1Y_1Y2Y2Y_2Y3Y3Y_3バツバツx 実際の例では、各患者は2種類のバイパス手術のいずれかを受け取り、研究者はバイパス手術後に痛み、腫れ、疲労などについて各患者を測定します(各症状の発生率は0〜10)。私は結果(症状の重症度)が多変量正常であると「想定」しています。この実例が私の質問を明確にしてくれることを願っています。よろしくお願いします。

1
どのようにして、リーブワンアウト相互検証のROC曲線を生成しますか?
(たとえば)5分割交差検証を実行する場合、通常は5分割ごとに個別のROC曲線を計算し、多くの場合stdで平均ROC曲線を計算します。開発者。曲線の太さとして表示されます。 ただし、各フォールドに単一のテストデータポイントしかないLOO交差検証の場合、この単一のデータポイントのROC "曲線"を計算することは意味がありません。 私はすべてのテストデータポイントを(個別に計算されたp値と共に)取得し、それらを1つの大きなセットにプールして単一のROC曲線を計算しましたが、これは統計的に正確な方法ですか? (LOO相互検証の場合のように)各フォールドのデータポイントが1つである場合にROC分析を適用する正しい方法は何ですか?

2
時系列相互検証からの最終モデル
モデル調整のための「通常の」K分割交差検証の経験があり、時系列モデルのアプリケーションに少し混乱しています。 時系列モデルの場合、相互検証の当然の結果は、Hyndmanによって記述された「ローリングフォワードオリジン」手順であることが私の理解です。これは私には十分に理にかなっており、以下のコードtsCVは、HydmanのブログからのR での関数の使用を示し、エラーがCVとデータセット全体とで一度にどのように異なるかを示しています。 library(fpp) e <- tsCV(dj, rwf, drift=TRUE, h=1) sqrt(mean(e^2, na.rm=TRUE)) ## [1] 22.68249 sqrt(mean(residuals(rwf(dj, drift=TRUE))^2, na.rm=TRUE)) ## [1] 22.49681 さて、上記のリンクでは、ドリフトパラメータが新しい予測の起点ごとに再推定されると述べています。「通常の」CVでは、使用する最適なパラメーターを決定するために平均を取得できるように、各フォールドに対して評価するパラメーターのグリッドを用意します。次に、これらの「最適な」パラメーターを使用して完全なトレーニングセットに適合させ、それを私の最終モデルとして使用して、以前に実施したテストセットを評価します。これは入れ子の交差検証であるため、どの時点でもテストセットのトレーニングは行っていません。 これは明らかに「ローリング・フォワード起源」プロシージャの場合ではないパラメータが各折り目のために最適化された(のようなR法のための少なくともbats、tbats、auto.arima、など)。モデルパラメーターの調整に関してこの方法を誤解しているのでしょうか、または使用される最終モデルに設定する時系列モデルパラメーターをどのように選択するのですか?または、パラメーターの調整は、最適化がモデルのフィッティングの一部であると思われる時系列モデルの問題を考慮せず、CVの結果は、各モデルの全体的なパフォーマンスを示すだけです。そして、最後に大部分のデータを使用して構築された最終的なモデルは、私が使用するモデルですか? これはもっと簡単な質問に言い換えることができると思います。クロス検証(「ローリングフォワードオリジン」)の後、最後に作成されたモデル(最大のスーパーセットを最終的なフィットモデルとして)を使用するだけですか?または、何を提案しますか?


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