多元回归

探索性数据分析

对数据作分析和建模之前,先进行探索性数据分析,使用尽量原始的数据作图

思考:
1. 单变量的分布,是否需要log转换
2. 变量之间关系的散点图:线性还是非线性关系
3. 识别离群点:数据质量问题

pairs()

绘制散点图矩阵,查看数据分布情况及变量的关系

col <- c(rgb(1,0,0),rgb(0,1,0),rgb(0,0,1))

# as.numeric 可将 factor 转为数字
mycol <- col[as.numeric(iris$Species)]

pairs(iris,col = mycol,col.axis = "red")

回归模型

其中模型假设是回归的精髓:变量是线性关系,且误差项是独立正态分布,通过残差图可以很好的展示模型假设的合理性

高维回归

\(Y = \beta_0+\beta_1X_1+\cdot\cdot\cdot+\beta_pX_p+\epsilon\)

在不满足样本点n远大于变量个数p时,最小二乘估计值波动性较大,导致过拟合,预测能力差

压缩估计方法1:岭回归 ridge regression

最小二乘估计最小化RSS

\(RSS=\sum_{i=1}^n\Bigg(y_i-\beta_0-\sum_{j=1}^p\beta_jx_{ij}\Bigg)^2\)

岭回归最小化

\(\sum_{i=1}^n\Bigg(y_i-\beta_0-\sum_{j=1}^p\beta_jx_{ij}\Bigg)^2+\lambda\sum_{j=1}^p\beta_j^2 = RSS + \lambda\sum_{j=1}^p\beta_j^2\)

对回归系数进行约束或加罚,将系数估计值向0压缩,减少估计值的方差

\(\lambda\ge0\)是调节参数,控制RSS和压缩惩罚项对回归系数估计的相对影响程度

\(\beta_0\)不在压缩处罚项中,它估计当\(x_j\)都是0时,响应变量的均值

压缩方法2:Lasso

Lasso最小化

\(\sum_{i=1}^n\Bigg(y_i-\beta_0-\sum_{j=1}^p\beta_jx{ij}\Bigg)^2+\lambda\sum_{j=1}^p\left|\beta_j\right|\)

交叉验证CV调节参数

通过MSE(均方误差)图和变量系数图来选择合适\(\lambda\)

压缩方法总结

对高维数据的拟合

  • 对样本个数n远小于变量个数p时,能拟合模型,避免过拟合
  • 通过压缩系数估计,牺牲了偏差但减小了估计量方差(样本点的波动导致的系数估计的波动),提高对测试数据的预测准确率

提高模型解释力

  • 没有预测能力的噪声变量,系数被 lasso压缩为0(变量选择)

模型选择

  • Lasso适合:一小部分预测变量是真实有效的,其他变量系数非常小或等于0(如基因组数据)
  • 岭回归适合:响应变量是很多预测变量的函数,且这些变量的系数大致相等

弹性网络回归 Elastic net regression

综合Lasso 和 岭回归

\(\lambda\sum_{j=1}^p\Bigg(\alpha\beta_j^2+(1-\alpha)\left|\beta_j\right|\Bigg)\)

量化模型拟合数据的程度

残差标准误 RSE
响应值偏离真正回归的直线的平均量
$RSE== $

\(R^2\)统计量

Y 中的差异能被 X 解释的部分所占的比例

评价统计模型对数据集的预测精度

对一个给定的观测,测量预测的响应值与真实响应值间的接近程度

\(MSE= \frac{1}{n}\sum_{i=1}^n\Bigg(y_i-\hat{f}(x_i)\Bigg)^2\)

存在的问题: MSE 使用训练数据计算(training MSE),而训练数据也用来估计\(\hat{f}\),可能会低估误差

更关心将模型用于测试时的预测精度(test MSE)

过拟合

模型灵活性低,将随机误差也引入模型中

解决方法: 交叉验证
在拟合过程中,保留出训练数据的一个子集不用作训练模型,而用来估计 test MSE

验证集 (validation set) 方法
直接对样本进行随机抽样,如 30%的数据集用作测试数据

留一交叉验证法 (LOOCV)
使用n-1个样本点训练,偏差较小,不容易高估测试 MSE

k折交叉验证(K-fold CV)
1. LOOCV拟合n次模型,计算量大。K-fold CV 拟合 K (5或10) 次模型
2. 每个模型使用(k-1)/k样本点,相比验证集方法,更接近使用全部样本点的模型

主成分分析和聚类

PCA 寻找尽可能包含足够多数据集中的差异信息的低维投影方向

注意:PCA前对每个变量进行标准化,使得均值为0,且方差为1

\(X_i = \frac{x_i-\mu_x}{\sigma_x}\)
其中,\(\mu_x=\frac{1}{n}\sum_{i=1}^nx_i\),\(\sigma_x=\sqrt{\frac{\sum_{i=1}^{n}(x_i-\mu_x)^2}{n-1}}\)

PCA让高维空间的数据点投影到二维平面,并且让点在二维空间的 variation尽量大。在低维平面,就有可能看到点之间聚类的关系,而且这个关系可能反映高维点之间本身的关系

主成分分析对二维矩阵的行和列都可以做,还可以引出 Eigengene/Metagene

a sample point X = (gene 1,gene 2,gene 3,..gene n) a gene point X = (sample 1,sample 2,…sample p)

主成分回归 PCR

用主成分得分向量作为预测变量进行回归分析

降维方法 (Dimension Reduction)

无监督: PCA、MDS、SOM

有监督: LDA

聚类分析 (clustering)

PCA 试图寻找观测点的一个低维表示来解释大部分方差

聚类分析试图从观测点中寻找同质子类

聚类分析的考虑因素

  • 观测点或变量是否需要标准化 ?

  • K均值聚类 ++ K 如何选择
    ++ 合并类时的连接方式(Linkage): Singel Linkage(最小距离),Complete Linkage(最大距离),Average Linkage(平均距离)

  • 层次聚类
    ++ 距离、连接方法如何选择
    ++ 在谱系图中哪个位置切割出不同的类