官术网_书友最值得收藏!

  • Machine Learning in Java
  • AshishSingh Bhatia Bostjan Kaluza
  • 327字
  • 2021-06-10 19:30:05

Underfitting and overfitting

Predictor training can lead to models that are too complex or too simple. The model with low complexity (the leftmost models in the following diagram) can be as simple as predicting the most frequent or mean class value, while the model with high complexity (the rightmost models) can represent the training instances. Modes that are too rigid, shown on the left-hand side, cannot capture complex patterns; while models that are too flexible, shown on the right-hand side, fit to the noise in the training data. The main challenge is to select the appropriate learning algorithm and its parameters, so that the learned model will perform well on the new data (for example, the middle column):

The following diagram shows how errors in the training set decreases with model complexity. Simple rigid models underfit the data and have large errors. As model complexity increases, it describes the underlying structure of the training data better and, consequentially, the error decreases. If the model is too complex, it overfits the training data and its prediction error increases again:

Depending on the task complexity and data availability, we want to tune our classifiers toward more or less complex structures. Most learning algorithms allow such tuning, as follows:

  • Regression: This is the order of the polynomial
  • Naive Bayes: This is the number of the attributes
  • Decision trees: This is the number of nodes in the tree—pruning confidence
  • K-nearest neighbors: This is the number of neighbors—distance-based neighbor weights
  • SVM: This is the kernel type; cost parameter
  • Neural network: This is the number of neurons and hidden layers

With tuning, we want to minimize the generalization error; that is, how well the classifier performs on future data. Unfortunately, we can never compute the true generalization error; however, we can estimate it. Nevertheless, if the model performs well on the training data but performance is much worse on the test data, then the model most likely overfits.

主站蜘蛛池模板: 保靖县| 仁化县| 田阳县| 信阳市| 朝阳区| 黄骅市| 加查县| 桂阳县| 加查县| 靖宇县| 常宁市| 周至县| 桐梓县| 绥阳县| 乃东县| 万源市| 平罗县| 前郭尔| 红桥区| 梁河县| 迁西县| 缙云县| 商都县| 张北县| 伊川县| 凤阳县| 聂拉木县| 武陟县| 灵台县| 延吉市| 平昌县| 敖汉旗| 泉州市| 岳池县| 精河县| 长春市| 辽宁省| 南平市| 胶州市| 阿拉善左旗| 安阳县|