過学習
メニューを表示するにはスワイプしてください
過学習
以下の2つの回帰直線を考える。どちらが優れているか?
指標によれば2番目のモデルの方が優れているため、X_new = [0.2, 0.5, 2.7] の予測に使用する。しかし、予測値と実際の値を比較すると、1番目のモデルの方が良い結果となる。
これは2番目のモデルが過学習しているために起こる。モデルが複雑すぎて訓練データに過度に適合し、新しいデータに対して一般化できなくなっている。
アンダーフィッティング
アンダーフィッティングは、モデルが単純すぎて訓練データさえもうまく適合できない場合に発生し、未知のデータに対する予測精度も低下する現象。
モデルがアンダーフィットしているかオーバーフィットしているかを視覚的に判断することも可能。
高次元のモデルは可視化できないため、オーバーフィッティングやアンダーフィッティングを検出する別の方法が必要。
訓練データとテストデータの分割
未知のデータに対する性能を推定するため、データセットを既知のターゲットを持つ訓練セットとテストセットに分割。
訓練セットで学習を行い、訓練セットとテストセットの両方で指標を計算して性能を比較。
分割はランダムである必要がある。一般的に、テストセットには20~30%、訓練セットには70~80%を使用。Scikit-learnはこの処理を簡単に実行可能。
例えば、トレーニングセットを70%トレーニング/30%テストに分割するには、次のコードを使用します:
from sklearn.model_selection import train_test_split # import the function
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
すべて明確でしたか?
フィードバックありがとうございます!
セクション 4. 章 2
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 4. 章 2