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

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

1
トレイン/有効/テストセットの平均の減算に関する質問
私はデータの前処理を行っており、後でデータにConvonetsを構築します。 私の質問は、100個の画像を含む合計データセットがあるとします。100個の画像のそれぞれについて平均を計算し、それを各画像から差し引いて、これをトレーニングセットと検証セットに分割しました。特定のテストセットで処理する手順ですが、このリンクによると、これは正しい方法ではないようです。http://cs231n.github.io/neural-networks-2/#datapre " 一般的な落とし穴。前処理に関して重要なポイントは、前処理の統計情報(データ平均など)はトレーニングデータでのみ計算し、検証/テストデータに適用する必要があることです。たとえば、平均の計算とそれからの減算データセット全体のすべての画像と、データをtrain / val / test分割に分割するのは誤りです。代わりに、平均はトレーニングデータに対してのみ計算され、すべての分割から均等に減算される必要があります(train / val / test)。 」 著者が言っているのは、平均を計算して各画像内で減算せず、画像セット全体の平均(つまり(image1 + ... + image100)/ 100)を計算して平均を減算することだと思いますそれぞれの画像。 だれでも説明できるのかよくわかりません。また、おそらく私がやっていたことが間違っている理由を説明することもできます(実際に間違っている場合)。

1
RのキャレットパッケージでPCAを使用して前処理するときの主成分の数
のcaretパッケージRをバイナリSVM分類器のトレーニングに使用しています。機能を削減するためにpreProc=c("pca")、呼び出し時に組み込み機能を使用してPCAで前処理していtrain()ます。ここに私の質問があります: キャレットはどのように主成分を選択するのですか? 選択された主成分の数は決まっていますか? 主成分は、ある程度の説明された差異(80%など)によって選択されていますか? 分類に使用する主成分の数を設定するにはどうすればよいですか? (PCAは信頼できる予測推定を可能にするために外部相互検証の一部であるべきことを理解しています。)PCAは内部相互検証サイクル(パラメーター推定)にも実装する必要がありますか? キャレットは相互検証でPCAをどのように実装しますか?

1
ランダムなフォレスト回帰でシードを設定して最高の精度を生み出すことは「公正」ですか?
私はsklを使用して構築されたランダムフォレスト回帰を持っていますが、ランダムシードを異なる値に設定すると異なる結果が得られることに注意します。 LOOCVを使用してどのシードが最適に機能するかを確認する場合、これは有効な方法ですか?

1
いつ交差検証を使用しないのですか?
サイトを読んだとき、ほとんどの回答は、相互検証が機械学習アルゴリズムで実行されるべきであることを示唆しています。しかし、「機械学習について」という本を読んでいるときに、相互検証を使用しない方がよい演習があることがわかりました。私は本当に混乱しています。データ全体のトレーニングアルゴリズムが交差検証よりも優れているのはいつですか?実際のデータセットで発生しますか? ましょうはk個の仮説クラスです。あなたが与えられていると仮定メートル例を訓練し、あなたがクラス学びたいIID Hを= ∪ kは、私は= 1 H Iを。2つの代替アプローチを検討してください。H1,...,HkH1,...,HkH_1,...,H_kmmmH=∪ki=1HiH=∪i=1kHiH=\cup^k_{i=1}H_i ERMルールを使用してmの例でを学ぶHHHmmm サイズのトレーニングセットにm個の例を分割及び大きさの検証セットα Mいくつかについて、α ∈ (0 、1 )。次に、検証を使用してモデル選択のアプローチを適用します。すなわち、Fiは各クラスの訓練RST H Iに(1 - α )のmに対するERMルール使用トレーニング例をH Iを、およびlet H 1、... 、Hの kは(1−α)m(1−α)m(1−\alpha)mαmαm\alpha mα∈(0,1)α∈(0,1)\alpha\in(0,1)HiHiH_i(1−α)m(1−α)m(1−\alpha)mHiHiH_ih^1,…,h^kh^1,…,h^k\hat{h}_1,\ldots,\hat{h}_k結果の仮説である。第二は、FIの有限クラスに対してERMルールを適用{ H 1、... 、Hの K }にαのm個の検証例。h^1,…,h^kh^1,…,h^k\hat{h}_1,\ldots,\hat{h}_kαmαm\alpha m 最初の方法が2番目の方法よりも優れているシナリオ、およびその逆のシナリオについて説明します。 quastionのイメージ。

1
時系列予測のためのランダムフォレスト回帰
私は、製紙工場のパフォーマンスを予測するためにRF回帰を利用しようとしています。 私は、入力(木材パルプの速度と量など)と、マシンのパフォーマンス(生成された紙、マシンによって消費された電力)に関する分単位のデータを持ち、10分間の予測を求めています。パフォーマンス変数の先に。 12か月分のデータがあるので、トレーニングセット用に11か月、テスト用に最終月に分けました。 これまでに、パフォーマンス変数ごとに値が1〜10分遅れている10個の新しい機能を作成し、これらの機能と入力を使用して予測を行いました。テストセットのパフォーマンスは非常に良好です(システムはかなり予測可能です)が、アプローチに何か不足しているのではないかと心配しています。 たとえば、このペーパーでは、ランダムフォレストモデルの予測能力をテストする際のアプローチを次のように述べています。 シミュレーションは、新しい週のデータを繰り返し追加し、更新されたデータに基づいて新しいモデルをトレーニングし、翌週の大規模感染の数を予測することで続行されます。 これは、時系列の「後の」データをテストとして利用することとどう違うのですか?このアプローチとテストデータセットでRF回帰モデルを検証する必要がありますか?さらに、ランダムフォレスト回帰に対するこの種の「自己回帰」アプローチは時系列に有効ですか?将来10分の予測に興味がある場合、これだけ多くの遅延変数を作成する必要がありますか?

3
テストエラーのCV推定が実際のテストエラーを過小評価するのはなぜですか?
通常、テストエラーのk分割交差検定推定は実際のテストエラーを過小評価していると私は理解しています。なぜそうなのか、混乱しています。トレーニングエラーが通常テストエラーよりも低い理由がわかります。エラーを推定しているのとまったく同じデータでモデルをトレーニングしているからです。ただし、交差検証の場合はそうではありません。エラーを測定するフォールドは、トレーニングプロセス中は特に除外されます。 また、テストエラーの相互検証推定は下向きにバイアスされていると言って間違いありませんか?

1
パレート平滑化重要度サンプリング(PSIS-LOO)の失敗を防ぐ
私は最近、以下の論文で説明されているパレート平滑化重要度サンプリングのリーブワンアウト相互検証(PSIS-LOO)の使用を開始しました。 Vehtari、A.および&Gelman、A.(2015)。パレート平滑化重要度サンプリング。arXivプレプリント(リンク)。 Vehtari、A.、Gelman、A.、およびGabry、J.(2016)。Leave-one-out交差検証とWAICを使用した実用的なベイズモデル評価。arXivプレプリント(リンク) これは、MCMCを1回実行するだけでLOO-CVを実行できるため、サンプル外のモデル評価に対する非常に魅力的なアプローチを表しており、WAICなどの既存の情報基準よりも優れているとされています。 PSIS-LOOには、近似が信頼できるかどうか、つまり、重要度の経験的分布の裾にフィットするパレート分布の推定指数(データポイントごとに1つの重み)によって与えられるかどうかを診断する機能があります。つまり、推定重量場合、悪いことが発生する可能性があります。k^ik^i\hat{k}_ik^i≳0.7k^i≳0.7\hat{k}_i \gtrsim 0.7 悲しいことに、この方法を私の問題に適用したところ、関心のあるモデルの大部分で、\ hat {k} _i \ gg 0.7の大部分が見つかりましたk^i≫0.7k^i≫0.7\hat{k}_i \gg 0.7。当然のことながら、報告されたLOOの対数尤度の一部は、明らかに他のデータセットと比較して無意味でした。ダブルチェックとして、私は従来の(そして時間のかかる)10分割交差検証を実行しましたが、実際に上記のケースでは、PSIS-LOOがひどく間違った結果を与えていたことがわかりました(良い面では、結果は10と非常によく一致しました)すべてのk^i≪0.7k^i≪0.7\hat{k}_i \ll 0.7)のモデルのCVを折りたたみます。参考までに、Aki VehtariによるPSIS-LOOのMATLAB実装を使用しています。 多分私は、この方法を適用する私の現在の最初の問題がPSIS-LOOにとって「困難」であるという点で非常に不運なだけかもしれませんが、このケースは比較的一般的かもしれないと思います。私のような場合、Vehtary、Gelman&Gabryの論文は単に次のように述べています: PSIS推定値に有限の分散がある場合でも、場合、ユーザーは問題のあるについてから直接サンプリングすることを検討する必要があります倍交差を使用します検証、またはより堅牢なモデルを使用します。k^>0.7k^>0.7\hat{k} > 0.7p(θs|y−i)p(θs|y−i)p(\theta^s |y_{−i})iiikkk これらは明白ですが、時間がかかるか、追加の操作が必要であるため、実際には理想的なソリューションではありません(MCMC とモデルの評価はすべて操作に関するものですが、少ないほど優れています)。 PSIS-LOOの失敗を防ぐために事前に適用できる一般的な方法はありますか?暫定的なアイデアはいくつかありますが、人々が採用している実証的な解決策はすでにあるのでしょうか。

1
グラフカーネルSVMハイパーパラメーターを調整する方法は何ですか?
グラフ存在するデータがあります。頂点はの2つのクラスのいずれかに属しており、2つのクラスを区別するようにSVMをトレーニングすることに興味があります。このための一つの適切なカーネルは、拡散カーネル、あるラプラシアンの及びチューニングパラメータです。G = (V、E)G=(V、E)G=(V,E)y私∈ { - 1 、1 }y私∈{−1、1}y_i\in\{-1,1\}K= exp(- βL )、K=exp⁡(−βL)、K=\exp(-\beta L),LLLGGGββ\beta SVMを調整するにはハイパーパラメーターを選択する必要があるため、を調整する必要があり通常、この問題には交差検証を使用しますが、から頂点を省略するとグラフ全体が変更され、場合によっては接続されているコンポーネントの数も増えるため、これは適切ではないようです。接続されているコンポーネントの数が変化すると、一部の頂点が他の頂点から到達できなくなり、当初とは非常に異なるデータセットに直面します。つまり、削除された頂点が欠落しているだけでなく、その頂点に隣接していたグラフ内の他のすべての頂点に関する情報も欠落しています。θ = (β、C)。θ=(β、C)。\theta=(\beta, C).私私iGGG私私ijjj 交差検証の基本的な概念は、新しいデータが表示されたときのモデルのパフォーマンスを概算したいというものです。標準的な問題では、テスト用のデータの一部を省略しても、残りのトレーニングデータの値は変わりません。ただし、グラフデータの場合、モデルがCV設定で「新しい」データを表示することの意味が明確ではありません。頂点またはエッジを省略すると、データが完全に変更される可能性があります。たとえば、スターグラフであるグラフを想像してください。1つの頂点には頂点から個の頂点があり、他のすべての頂点には1個のエッジがあります。中央の頂点を省略してトレーニングデータS= (VS、ES)S=(VS、ES)S=(V_S,E_S)kkkkkkkkkS∗S∗S^*グラフが完全に切断され、カーネル行列は対角になります!しかし、もちろん、提供されるこのトレーニングデータでモデルをトレーニングすることは可能です。あまり明確でないのは、結果のモデルのサンプル外のパフォーマンスをテストすることの意味です。のカーネルマトリックスを再計算し、それを予測のために提供しますか?S∗S∗S^*SSS または、代わりに、のカーネルマトリックス全体を計算し、必要に応じて行と列を省略してSVMの推定に使用されるカーネルマトリックスを生成することから始めますか?中央ノードを含めることは、すべての頂点が他のすべての頂点から到達可能であり、カーネルマトリックスが密であることを意味するため、これには独自の概念上の問題があります。この包含は、フォールド全体に情報漏えいがあり、交差検証出力にバイアスをかけることを意味しますか?一方で、省略された中央ノードはグラフを接続するため、省略された中央ノードに関するデータはまだ存在しています。一方、ラベルについては何も知りません。SSSSSS yyy このようにCVを実行することで、サンプルからの推定値がかなり偏りのないものになっていることを確認できます。 このタイプの問題のハイパーパラメータをどのように選択しますか?CVは不完全ですが許容できますか、それとも特別な方法が必要ですか?私のコンテキストではハイパーパラメータの調整はまったく可能ですか?

2
小さいサンプルサイズのデータ​​のトレーニング、交差検証、およびテストセットのサイズを選択するにはどうすればよいですか?
サンプルサイズが小さいと仮定します(例:N = 100、2つのクラス)。機械学習のトレーニング、相互検証、テストセットのサイズをどのように選択すればよいですか? 直感的に選ぶ トレーニングセットのサイズは50 相互検証セットサイズ25、および サイズを25としてテストします。 しかし、おそらくこれは多かれ少なかれ理にかなっています。これらの値を実際にどのように決定すればよいですか?別のオプションを試してみてもいいですか(あまり好ましくないと思いますが...過剰学習の可能性が高くなります)? 3つ以上のクラスがある場合はどうなりますか?

1
ホールドアウト検証は、k倍のCVよりも「新しいデータを取得する」ためのより良い近似ですか?
数週間前に私が質問に出した答えを再考してきました ホールドアウト相互検証は、デモンストレーションに繰り返し使用できる単一のテストセットを生成します。これは多くの点で否定的な特徴であることに私たち全員が同意しているように思われます。さらに、トレーニングデータにオーバーフィットできるのと同じ方法で、テストデータにオーバーフィットする可能性があります。 ただし、ホールドアウトされたサンプルの静的な性質は、k倍のCVよりも「より多くのデータを取得する」ためのより良い近似であり、倍数間の平均化の問題を回避しているように思えます。しかし、私はこの感情の統計的根拠を思い付くことができません。私の直感に論理はありますか? たとえば、今後のプロジェクトで私が念頭に置いているのは、最初にホールドアウト検証を使用してモデルを構築およびテストし、次に検証ステップとしてホールドアウトセットを数回再描画して、予測誤差の推定値を示します(テストセット)は、テストセットのサンプリングエラーに対して堅牢です。これは何らかの理由で悪い考えですか?この質問は以前に尋ねられましたが、回答はありませんでした。

2
モデルの相互検証予測エラーの観点から見た、前方選択/後方除去に対するLASSOの優位性
を使用して、元のフルモデルから3つの縮小モデルを取得しました 前方選択 後方消去 L1ペナルティテクニック(LASSO) 順方向選択/逆方向除去を使用して取得したモデルの場合、で利用可能なCVlmパッケージのをDAAG使用して、予測誤差のクロス検証された推定値を取得しましたR。LASSOで選択したモデルにはを使用しましたcv.glm。 LASSOの予測誤差は、他の誤差よりも少なかった。したがって、LASSOを介して取得したモデルは、予測能力と変動性の点で優れているようです。これは常に発生する一般的な現象ですか、それとも問題固有ですか?これが一般的な現象である場合、これの理論的な理由は何ですか?

3
特徴選択は、トレーニングデータのみ(またはすべてのデータ)で実行する必要がありますか?
特徴選択は、トレーニングデータ(またはすべてのデータ)に対してのみ実行する必要がありますか?私はGuyon(2003)やSinghi and Liu(2006)などのいくつかのディスカッションと論文を読みましたが、正しい答えについてはまだわかりません。 私の実験のセットアップは次のとおりです: データセット:50人の健康なコントロールと50人の病気の患者(病気の予測に関連する可能性のある200の機能)。 タスクは、利用可能な機能に基づいて疾患を診断することです。 私がすることは データセット全体を取り、特徴選択(FS)を実行します。今後の処理のために選択した機能のみを保持します テストとトレーニングに分割し、トレーニングデータと選択した機能を使用して分類子をトレーニングします。次に、分類子をテストデータに適用します(ここでも、選択した機能のみを使用します)。Leave-one-out検証が使用されます。 分類精度を取得する 平均化:1)〜3)をN回繰り返します。(100)。N=50N=50N=50 データセット全体でFSを実行するとある程度のバイアスが生じる可能性があることに同意しますが、私の意見では、平均化(ステップ4)中に「平均化」されるということです。あれは正しいですか?(精度の差異は)&lt;2%&lt;2%<2\% 1 Guyon、I.(2003) "An Introduction to Variable and Feature Selection"、The Journal of Machine Learning Research、Vol。1 3、pp。1157-1182 2 Singhi、SKおよびLiu、H.(2006)「分類学習のための特徴サブセット選択バイアス」、Proceeding ICML '06 Proceedings on the 23rd International Conference on Machine Learning、pp。849-856

1
汎化パフォーマンスの分布の比較
分類問題には2つの学習方法とBがあり、交差検証やブートストラップを繰り返して、それらの一般化パフォーマンスを推定するとします。このプロセスから、これらの繰り返しにわたる各メソッドのスコアP AおよびP Bの分布を取得します(たとえば、各モデルのROC AUC値の分布)。あAABBB PあPAP_APBPBP_B これらの分布を見ると、それはその可能性が が、そのσ A ≥ σ B(すなわちの予想汎化性能をAがより高いBが、この見積りの詳細不確実性があること)。μあ≥ μBμA≥μB\mu_A \ge \mu_BσA≥σBσA≥σB\sigma_A \ge \sigma_BAAABBB これは回帰のバイアス分散ジレンマと呼ばれていると思います。 P AとP Bを比較し、最終的にどのモデルを使用するかについて情報に基づいた決定を行うには、どのような数学的な方法を使用できますか?PAPAP_APBPBP_B 注:簡単にするために、ここでは2つの方法とBを参照していますが、約1000の学習方法のスコアの分布を比較するために使用できる方法(たとえばグリッド検索から)に興味があり、最終的に使用するモデルに関する最終決定。AAABBB

1
観測48で革新的な異常値をARIMAモデルに組み込むにはどうすればよいですか?
私はデータセットに取り組んでいます。いくつかのモデル識別手法を使用した後、私はARIMA(0,2,1)モデルを思いつきました。 R detectIOのパッケージの関数を使用して、元のデータセットの48回目の観測で革新的な外れ値(IO)TSAを検出しました。 この外れ値をモデルに組み込んで、予測に使用するにはどうすればよいですか?Rではそれから予測を行うことができない可能性があるため、ARIMAXモデルを使用したくありません。これを行う方法は他にありますか? これが私の値です。 VALUE &lt;- scan() 4.6 4.5 4.4 4.5 4.4 4.6 4.7 4.6 4.7 4.7 4.7 5.0 5.0 4.9 5.1 5.0 5.4 5.6 5.8 6.1 6.1 6.5 6.8 7.3 7.8 8.3 8.7 9.0 9.4 9.5 9.5 9.6 9.8 10.0 9.9 9.9 9.8 9.8 9.9 9.9 9.6 9.4 …
10 r  time-series  arima  outliers  hypergeometric  fishers-exact  r  time-series  intraclass-correlation  r  logistic  glmm  clogit  mixed-model  spss  repeated-measures  ancova  machine-learning  python  scikit-learn  distributions  data-transformation  stochastic-processes  web  standard-deviation  r  machine-learning  spatial  similarities  spatio-temporal  binomial  sparse  poisson-process  r  regression  nonparametric  r  regression  logistic  simulation  power-analysis  r  svm  random-forest  anova  repeated-measures  manova  regression  statistical-significance  cross-validation  group-differences  model-comparison  r  spatial  model-evaluation  parallel-computing  generalized-least-squares  r  stata  fitting  mixture  hypothesis-testing  categorical-data  hypothesis-testing  anova  statistical-significance  repeated-measures  likert  wilcoxon-mann-whitney  boxplot  statistical-significance  confidence-interval  forecasting  prediction-interval  regression  categorical-data  stata  least-squares  experiment-design  skewness  reliability  cronbachs-alpha  r  regression  splines  maximum-likelihood  modeling  likelihood-ratio  profile-likelihood  nested-models 

5
トレーニング、検証、テストのパーセンテージをどのように決定しますか?
ラベル付きのデータをトレーニング、検証、テストセットに分割すると、50/25/25から85/5/10までのすべてが聞こえてきました。これは、モデルをどのように使用するか、学習アルゴリズムを過剰に適合させる傾向があるかどうかに依存すると確信しています。決定する方法はありますか、それとも経験則によるものですか?ELSIIでさえ、この件についてはあいまいなようです。

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