[算法] 模型选择 Model Selection

ESL "模型选择"章的中文小结
https://cosx.org/2015/08/some-basic-ideas-and-methods-of-model-selection/

内容补充:

  1. 符号表示汇总:
  • 测试误差test-error(或称泛化误差 generalization error):,其中为已知的训练集,但预测的时候X和Y是新的测试集,可以理解为基于求得了拟合函数,但计算的是新数据集的误差
  • 测试误差期望:
    ,如果有很多个训练集,Err是所有所得的测试误差的期望,同样是对于新的数据集计算loss function
  • 训练误差 Training error:
    ,计算的是训练集上的loss function的平均
  • 样本内误差 in-sample error:

    X还是训练集中的,但Y是新的数据。引入原因:

由于要引入新的有难度,那么退一步看
X 不变动而仅引入新的的预测误差

  • 和 一致
  1. Bias-Variance Decomposition:


    \begin{aligned} E[ (Y - \hat f)^2 ] &= E[(f + \epsilon - \hat f )^2] \\ & = E[\epsilon^2] + E[(f - \hat f)^2] + 2 E[(f - \hat f)\epsilon] \\ & = (E[\epsilon])^2+Var(\epsilon) + E[(f - \hat f)^2] + 2E[(f−\hat{f})ϵ] \\ & = \sigma^2_\epsilon + E[(f - \hat f)^2] + 0 \end{aligned}

\begin{aligned} E[(f - \hat f)^2] & = E[(f + E[\hat f] - E[\hat f] - \hat f)^2] \\ & = E \left[ f - E[\hat f] \right]^2 + E\left[ \hat f - E[ \hat f] \right]^2 \\ & = \left[ f - E[\hat f] \right]^2 + E\left[ \hat f - E[ \hat f] \right]^2 \\ & = Bias^2[\hat f] + Var[\hat f] \end{aligned}

  1. (2.2.2上方公式的错误)

  2. AIC, BIC中的loglik是将MLE代入log likelyhood方程的结果

  3. 解析法和CV之类方法的区别:解析法仅限于线性方法,非解析法跟通用一点,因为他直接估计了extra-sample error,可以适用于任何loss function

  4. CV-一般选5/10折

  5. 正确的进行cross validation的步骤:

  • S1: 获得K-cv groups
  • S2: 对于每个group, 做feature selection找到最佳的subset来拟合
  • S2:得到k个model以后对于全部的数据集求loss function,找到最小的那个

7.
常用模型选择方法

你可能感兴趣的:([算法] 模型选择 Model Selection)