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

統計結果の一般化可能性を決定しようとする一般的な手順を指します。交差検証は、特定のモデルの適合が将来の観測を予測する方法を評価する状況で頻繁に発生します。交差検証の方法には、通常、モデルのフィッティング中にデータのランダムなサブセットを差し控え、保留されたデータの予測精度を定量化し、このプロセスを繰り返して予測精度の測定値を取得します。

1
xgboostがsklearn GradientBoostingClassifierよりもずっと速いのはなぜですか?
私は、100個の数値特徴を備えた50kの例で勾配ブースティングモデルをトレーニングしようとしています。XGBClassifier一方、私のマシンで43秒以内に、ハンドル500本の木、GradientBoostingClassifierハンドルのみ10樹木(!)1分2秒:(私は気にしませんでしたでは、それは時間がかかるだろうと500本の木を育てるしようとしている。私は、同じ使用していますlearning_rateし、max_depth設定を、 下記参照。 XGBoostがこれほど速くなったのはなぜですか?sklearnの人が知らない勾配ブースティングのためのいくつかの新しい実装を使用していますか?それとも、「角を切り」、より浅い木を育てるのですか? PS私はこの議論を知っています:https : //www.kaggle.com/c/higgs-boson/forums/t/10335/xgboost-post-competition-surveyが、そこに答えを得ることができませんでした... XGBClassifier(base_score=0.5, colsample_bylevel=1, colsample_bytree=1, gamma=0, learning_rate=0.05, max_delta_step=0, max_depth=10, min_child_weight=1, missing=None, n_estimators=500, nthread=-1, objective='binary:logistic', reg_alpha=0, reg_lambda=1, scale_pos_weight=1, seed=0, silent=True, subsample=1) GradientBoostingClassifier(init=None, learning_rate=0.05, loss='deviance', max_depth=10, max_features=None, max_leaf_nodes=None, min_samples_leaf=1, min_samples_split=2, min_weight_fraction_leaf=0.0, n_estimators=10, presort='auto', random_state=None, subsample=1.0, verbose=0, warm_start=False)
29 scikit-learn  xgboost  gbm  data-mining  classification  data-cleaning  machine-learning  reinforcement-learning  data-mining  bigdata  dataset  nlp  language-model  stanford-nlp  machine-learning  neural-network  deep-learning  randomized-algorithms  machine-learning  beginner  career  xgboost  loss-function  neural-network  software-recommendation  naive-bayes-classifier  classification  scikit-learn  feature-selection  r  random-forest  cross-validation  data-mining  python  scikit-learn  random-forest  churn  python  clustering  k-means  machine-learning  nlp  sentiment-analysis  machine-learning  programming  python  scikit-learn  nltk  gensim  visualization  data  csv  neural-network  deep-learning  descriptive-statistics  machine-learning  supervised-learning  text-mining  orange  data  parameter-estimation  python  pandas  scraping  r  clustering  k-means  unsupervised-learning 

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

2
GridSearchの出力を使用する方法は?
現在、PythonとScikitの学習を分類の目的で使用しています。GridSearchを読んでいると、推定器のパラメーターを最適化して最良の結果を得るのに最適な方法だと思いました。 私の方法論はこれです: データをトレーニング/テストに分割します。 GridSearchと5Fold Cross検証を使用して、推定器(ランダムフォレスト、勾配ブースト、SVCなど)をトレーニングおよびテストし、最適なハイパーパラメーターの組み合わせで最適な推定器を取得します。 次に、テストセットを使用して分類を予測し、実際のクラスラベルと比較して、Precision、Recall、FMeasure、Matthews Correlation Coefficientなどの各推定器のメトリックを計算します。 奇妙な振る舞いを見たのはこの段階であり、どうすればいいかわかりません。GridSearchから.best_estimator_を取得し、これをグリッド検索からの「最適な」出力として使用し、この推定器を使用して予測を実行しますか?これを行うと、すべてのトレーニングデータをトレーニングしてテストセットでテストする場合よりも、ステージ3メトリックが通常はるかに低いことがわかります。または、出力GridSearchCVオブジェクトを新しい推定器として単純に取得しますか?これを行うと、ステージ3メトリックのスコアが向上しますが、目的の分類子(ランダムフォレストなど)の代わりにGridSearchCVオブジェクトを使用すると奇妙に思えます... 編集: 私の質問は、返されたGridSearchCVオブジェクトと.best_estimator_属性の違いは何ですか?これらのどれを使用して、さらにメトリックを計算する必要がありますか?この出力を通常の分類子のように(たとえば、predictを使用して)使用できますか、またはどのように使用する必要がありますか?

3
PySparkで複数のデータフレームを行ごとにマージする
私は10個のデータフレーム持っているpyspark.sql.dataframe.DataFrameから取得した、randomSplitと(td1, td2, td3, td4, td5, td6, td7, td8, td9, td10) = td.randomSplit([.1, .1, .1, .1, .1, .1, .1, .1, .1, .1], seed = 100)今私は9に参加したいtd、私はそれを行うべきか、単一のデータフレームにS」を? 私はすでにを試しましたunionAllが、この関数は2つの引数のみを受け入れます。 td1_2 = td1.unionAll(td2) # this is working fine td1_2_3 = td1.unionAll(td2, td3) # error TypeError: unionAll() takes exactly 2 arguments (3 given) 3つ以上のデータフレームを行ごとに結合する方法はありますか? これを行う目的はCrossValidator、PySpark メソッドを使用せずに手動で10倍のクロス検証を実行することです。したがって、9をトレーニングに、1をテストデータに、それから他の組み合わせで繰り返します。

4
ブートストラップと相互検証の違いは何ですか?
私は以前、機械学習モデルのロバスト評価にK分割交差検証を適用していました。しかし、この目的のためのブートストラップメソッドの存在も知っています。ただし、パフォーマンスの見積もりに関しては、両者の主な違いはわかりません。 私の知る限り、ブートストラップは一定の数のランダムなトレーニング+テストサブセットを(別の方法ではありますが)生成するので、CVよりもこの方法を使用する利点は何ですか?ブートストラップの場合、事実上任意の数のそのようなサブセットを人工的に生成できる可能性があることを私が理解できる唯一のことは、CVの場合、インスタンスの数はこれに対する一種の制限です。しかし、この側面はごくわずかな迷惑のようです。

1
Kerasのfit関数のvalidation_splitパラメーターはどのように機能しますか?
Kerasシーケンシャルモデルフィット関数の検証分割は、https://keras.io/models/sequential/に次のように文書化されています。 validation_split:0から1の間で浮動します。検証データとして使用されるトレーニングデータの割合。モデルは、トレーニングデータのこの部分を分離し、トレーニングを行わず、各エポックの終わりにこのデータの損失とモデルメトリックを評価します。検証データは、シャッフルする前に、提供されたxおよびyデータの最後のサンプルから選択されます。 最後の行に注意してください: 検証データは、シャッフルする前に、提供されたxおよびyデータの最後のサンプルから選択されます。 検証データは常に固定され、メインデータセットの下部から取得されるということですか? メインデータセットから特定の割合のデータをランダムに選択する方法はありますか?

2
検証セットとテストセットの両方を使用する理由
ニューラルネットワークについて考えます。 特定のデータセットについて、トレーニング、検証、テストセットに分割します。古典的な60:20:20の比率でそれを行うと仮定し、検証セットでチェックすることによりネットワークを検証することにより、過剰適合を防ぎます。次に、パフォーマンスを確認するためにテストセットでテストする必要はありますか? ネットワークの場合、検証セットと同じように見えないデータであり、両方の数も同じであるため、テストセットのエラーは検証セットと同じではありませんか? 代わりに、テストセットをマージしてトレーニングセットを増やし、トレーニングデータを増やしてネットワークトレーニングを改善し、検証セットを使用してオーバーフィットを防ぐことはできませんか?なぜこれをしないのですか?

5
シーボーンヒートマップを大きくする
corr()元のdfからdf を作成します。corr()DFは、70 X 70から出てきたし、ヒートマップを可視化することは不可能です... sns.heatmap(df)。を表示しようとするcorr = df.corr()と、テーブルが画面に収まらず、すべての相関関係を確認できます。dfサイズに関係なく全体を印刷する方法ですか、ヒートマップのサイズを制御する方法ですか?
16 visualization  pandas  plotting  machine-learning  neural-network  svm  decision-trees  svm  efficiency  python  linear-regression  machine-learning  nlp  topic-model  lda  named-entity-recognition  naive-bayes-classifier  association-rules  fuzzy-logic  kaggle  deep-learning  tensorflow  inception  classification  feature-selection  feature-engineering  machine-learning  scikit-learn  tensorflow  keras  encoding  nlp  text-mining  nlp  rnn  python  neural-network  feature-extraction  machine-learning  predictive-modeling  python  r  linear-regression  clustering  r  ggplot2  neural-network  neural-network  training  python  neural-network  deep-learning  rnn  predictive-modeling  databases  sql  programming  distribution  dataset  cross-validation  neural-network  deep-learning  rnn  machine-learning  machine-learning  python  deep-learning  data-mining  tensorflow  visualization  tools  sql  embeddings  orange  feature-extraction  unsupervised-learning  gan  machine-learning  python  data-mining  pandas  machine-learning  data-mining  bigdata  apache-spark  apache-hadoop  deep-learning  python  convnet  keras  aggregation  clustering  k-means  r  random-forest  decision-trees  reference-request  visualization  data  pandas  plotting  neural-network  keras  rnn  theano  deep-learning  tensorflow  inception  predictive-modeling  deep-learning  regression  sentiment-analysis  nlp  encoding  deep-learning  python  scikit-learn  lda  convnet  keras  predictive-modeling  regression  overfitting  regression  svm  prediction  machine-learning  similarity  word2vec  information-retrieval  word-embeddings  neural-network  deep-learning  rnn 

2
検証の損失がまだ低下している場合でも、過剰適合は発生しますか?
Kerasには、Kaggleコンテストに使用している畳み込み+ LSTMモデルがあります(参照1)。アーキテクチャを以下に示します。ラベル付けされた11000サンプルのセットでトレーニングしました(2つのクラス、初期有病率は〜9:1であるため、1を約1/1の比率にアップサンプリングしました)。しばらくの間、私はそれがノイズとドロップアウト層で制御下にあると思った。 モデルは見事にトレーニングされているように見え、最終的にトレーニングセット全体で91%を獲得しましたが、テストデータセットでテストすると、絶対ゴミになりました。 注意:検証の精度は、トレーニングの精度よりも高くなっています。これは、「典型的な」過剰適合の反対です。 私の直感では、検証の分割がわずかであるため、モデルは依然として入力セットにあまりにも強く適合し、一般化を失っています。もう1つの手がかりは、val_accがaccよりも大きいことです。これが最も可能性の高いシナリオですか? これが過剰に適合している場合、検証分割を増やすことでこれをまったく軽減できますか、それとも同じ問題に遭遇しますか? モデル: Layer (type) Output Shape Param # Connected to ==================================================================================================== convolution1d_19 (Convolution1D) (None, None, 64) 8256 convolution1d_input_16[0][0] ____________________________________________________________________________________________________ maxpooling1d_18 (MaxPooling1D) (None, None, 64) 0 convolution1d_19[0][0] ____________________________________________________________________________________________________ batchnormalization_8 (BatchNormal(None, None, 64) 128 maxpooling1d_18[0][0] ____________________________________________________________________________________________________ gaussiannoise_5 (GaussianNoise) (None, None, 64) 0 batchnormalization_8[0][0] ____________________________________________________________________________________________________ lstm_16 (LSTM) (None, …


1
LSTMセルはいくつ使用すればよいですか?
使用する必要があるLSTMセルの最小、最大、および「妥当な」量に関する経験則(または実際の規則)はありますか?具体的には、TensorFlowとプロパティのBasicLSTMCellに関連していnum_unitsます。 私が定義する分類問題があると仮定してください: t - number of time steps n - length of input vector in each time step m - length of output vector (number of classes) i - number of training examples たとえば、トレーニングの例の数は次の数よりも多い必要がありますか? 4*((n+1)*m + m*m)*c cセルの数はどこですか?これに基づいています:LSTMネットワークのパラメーターの数を計算する方法?私が理解しているように、これはパラメータの総数を与えるはずであり、トレーニング例の数よりも少なくなければなりません。
12 rnn  machine-learning  r  predictive-modeling  random-forest  python  language-model  sentiment-analysis  encoding  machine-learning  deep-learning  neural-network  dataset  caffe  classification  xgboost  multiclass-classification  unbalanced-classes  time-series  descriptive-statistics  python  r  clustering  machine-learning  python  deep-learning  tensorflow  machine-learning  python  predictive-modeling  probability  scikit-learn  svm  machine-learning  python  classification  gradient-descent  regression  research  python  neural-network  deep-learning  convnet  keras  python  tensorflow  machine-learning  deep-learning  tensorflow  python  r  bigdata  visualization  rstudio  pandas  pyspark  dataset  time-series  multilabel-classification  machine-learning  neural-network  ensemble-modeling  kaggle  machine-learning  linear-regression  cnn  convnet  machine-learning  tensorflow  association-rules  machine-learning  predictive-modeling  training  model-selection  neural-network  keras  deep-learning  deep-learning  convnet  image-classification  predictive-modeling  prediction  machine-learning  python  classification  predictive-modeling  scikit-learn  machine-learning  python  random-forest  sampling  training  recommender-system  books  python  neural-network  nlp  deep-learning  tensorflow  python  matlab  information-retrieval  search  search-engine  deep-learning  convnet  keras  machine-learning  python  cross-validation  sampling  machine-learning 

4
データセットサイズでの過適合/過適合
下のグラフでは、 x軸=> データセットサイズ y軸=> 交差検証スコア 赤い線はトレーニングデータ用です 緑の線はテストデータ用です 私が言及しているチュートリアルで、著者は、赤い線と緑の線が重なる点は、 より多くのデータを収集しても、汎化のパフォーマンスが向上する可能性は低く、データが不足しがちな地域にいます。したがって、より多くの容量を持つモデルを試してみるのは理にかなっています 太字の意味とその意味がよくわかりません。 どんな助けにも感謝します。

2
交差検証:K分割と反復ランダムサブサンプリング
分類問題のためにどのタイプのモデル交差検証を選択するのか、Kフォールドかランダムサブサンプリング(ブートストラップサンプリング)か? 私の推測では、トレーニングにはデータセットの2/3(約1000アイテム)を使用し、検証には1/3を使用します。 この場合、Kフォールドは3回の反復(フォールド)しか提供しないため、安定した平均誤差を確認するには不十分です。 一方、ランダムサブサンプリング機能は好きではありません。一部の項目はトレーニング/検証の対象として選択されず、一部は複数回使用されます。 使用される分類アルゴリズム:ランダムフォレストとロジスティック回帰。

3
数学の畳み込みとCNNの関係
畳み込みの説明を読んである程度理解しました。誰かがこの操作がたたみ込みニューラルネットのたたみ込みにどのように関連しているかを理解するのを手伝ってくれませんか?gウェイトをかけるフィルターのような機能ですか?
10 machine-learning  neural-network  deep-learning  cnn  convolution  machine-learning  ensemble-modeling  machine-learning  classification  data-mining  clustering  machine-learning  feature-selection  convnet  pandas  graphs  ipython  machine-learning  apache-spark  multiclass-classification  naive-bayes-classifier  multilabel-classification  machine-learning  data-mining  dataset  data-cleaning  data  machine-learning  data-mining  statistics  correlation  machine-learning  data-mining  dataset  data-cleaning  data  beginner  career  python  r  visualization  machine-learning  data-mining  nlp  stanford-nlp  dataset  linear-regression  time-series  correlation  anomaly-detection  ensemble-modeling  data-mining  machine-learning  python  data-mining  recommender-system  machine-learning  cross-validation  model-selection  scoring  prediction  sequential-pattern-mining  categorical-data  python  tensorflow  image-recognition  statistics  machine-learning  data-mining  predictive-modeling  data-cleaning  preprocessing  classification  deep-learning  tensorflow  machine-learning  algorithms  data  keras  categorical-data  reference-request  loss-function  classification  logistic-regression  apache-spark  prediction  naive-bayes-classifier  beginner  nlp  word2vec  vector-space-models  scikit-learn  decision-trees  data  programming 

3

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