请教一下,稀疏 典型相关分析(SCCA)的求解方法具体过程什么样子的呀,比如用最小二乘法求解,或者其他方法求解,最主要是求解过程我不知道,自己研究了一个星期,毫无进展,还越来越模糊了,
下面有个用最小二乘法求解的智能机器人的回答,但是公式的显示好像有问题,完全看不懂啊
哪位好心的 qian bei 能否指点一二,给一个简单的推导过程或者思路啥的
SCCA(sparse canonical correlation analysis)是一种用于研究两个高维数据集之间的相关性的方法。用最小二乘法求解SCCA的过程如下:
步骤1:设定问题。
给定两个高维数据矩阵 $X$ 和 $Y$ ,以及要求的第 $k$ 个分量。设 $X$ 的维度为 $n_1\times p_1$ ,$Y$ 的维度为 $n_2\times p_2$ ,第 $k$ 个分量的系数向量为 $\boldsymbol{\alpha}_k\in R^{p_1}$,$\boldsymbol{\beta}_k\in R^{p_2}$。
步骤2:计算相关系数矩阵。
计算数据矩阵 $X$ 和 $Y$ 的相关系数矩阵 $R_X$ 和 $R_Y$。
$$
R_X=\frac{X^\top X}{n_1-1},\quad R_Y=\frac{Y^\top Y}{n_2-1}
$$
步骤3:初始化系数向量。
初始化系数向量 $\boldsymbol{\alpha}_k$ 为随机向量,系数向量 $\boldsymbol{\beta}_k$ 为 $R_Y$ 的第一列向量。
步骤4:迭代求解系数向量。
重复执行以下迭代步骤,直到收敛:
- 计算残差向量 $u_k$ 和 $v_k$:
$$
u_k=X\boldsymbol{\alpha}_k-(X\boldsymbol{\alpha}_k)_{mean},\quad v_k=Y\boldsymbol{\beta}_k-(Y\boldsymbol{\beta}_k)_{mean}
$$
这里 $(X\boldsymbol{\alpha}_k)_{mean}$ 和 $(Y\boldsymbol{\beta}_k)_{mean}$ 分别是 $X\boldsymbol{\alpha}_k$ 和 $Y\boldsymbol{\beta}_k$ 的均值向量。
- 计算系数向量 $\boldsymbol{\alpha}_k$:
$$
\boldsymbol{\alpha}_k=R_X(\frac{1}{1+\lambda\cdot\sqrt{\boldsymbol{\beta}^\top_k R_Y \boldsymbol{\beta}_k}}u_k-\sum_{j(k-1)}\boldsymbol{\alpha}_j\boldsymbol{\beta}^\top_j v_k )
$$
$\lambda$ 是一个正则化参数。
- 计算系数向量 $\boldsymbol{\beta}_k$:
$$
\boldsymbol{\beta}_k=R_Y(\frac{1}{1+\lambda\cdot\sqrt{\boldsymbol{\alpha}^\top_k R_X \boldsymbol{\alpha}_k}}v_k-\sum_{j(k-1)}\boldsymbol{\alpha}_j\boldsymbol{\beta}^\top_j u_k )
$$
步骤5:输出结果。
输出系数向量 $\boldsymbol{\alpha}_k$ 和 $\boldsymbol{\beta}_k$。