Print

发布时间: 2018-09-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.170570
2018 | Volume 23 | Number 9




    图像分析和识别    




  <<上一篇 




  下一篇>> 





低秩稀疏图嵌入的半监督特征选择
expand article info 万源, 陈晓丽, 张景会, 欧卓玲
武汉理工大学理学院, 湖北武汉 430070

摘要

目的 特征降维是机器学习领域的热点研究问题。现有的低秩稀疏保持投影方法忽略了原始数据空间和降维后的低维空间之间的信息损失,且现有的方法不能有效处理少量有标签数据和大量无标签数据的情况,针对这两个问题,提出基于低秩稀疏图嵌入的半监督特征选择方法(LRSE)。方法 LRSE方法包含两步:第1步是充分利用有标签数据和无标签数据分别学习其低秩稀疏表示,第2步是在目标函数中同时考虑数据降维前后的信息差异和降维过程中的结构信息保持,其中通过最小化信息损失函数使数据中有用的信息尽可能地保留下来,将包含数据全局结构和内部几何结构的低秩稀疏图嵌入在低维空间中使得原始数据空间中的结构信息保留下来,从而能选择出更有判别性的特征。结果 将本文方法在6个公共数据集上进行测试,对降维后的数据采用KNN分类验证本文方法的分类准确率,并与其他现有的降维算法进行实验对比,本文方法分类准确率均有所提高,在其中的5个数据集上本文方法都有最高的分类准确率,其分类准确率分别在Wine数据集上比次高算法鲁棒非监督特征选择算法(RUFS)高11.19%,在Breast数据集上比次高算法RUFS高0.57%,在Orlraws10P数据集上比次高算法多聚类特征选择算法(MCFS)高1%,在Coil20数据集上比次高算法MCFS高1.07%,在数据集Orl64上比次高算法MCFS高2.5%。结论 本文提出的基于低秩稀疏图嵌入的半监督特征选择算法使得降维后的数据能最大限度地保留原始数据包含的信息,且能有效处理少量有标签样本和大量无标签样本的情况。实验结果表明,本文方法比现有算法的分类效果更好,此外,由于本文方法基于所有的特征都在线性流形上的假设,所以本文方法只适用于线性流形上的数据。

关键词

特征选择; 半监督学习; 低秩表示; 稀疏表示; 结构嵌入; 图像分类

Semi-supervised feature selection based on low-rank sparse graph embedding
expand article info Wan Yuan, Chen Xiaoli, Zhang Jinghui, Ou Zhuoling
College of Science, Wuhan University of Technology, Wuhan 430070, China
Supported by: National Natural Science Foundation of China (61573012)

Abstract

Objective With the widespread use of high-dimensional data, dimensionality reduction has become an important research direction in both machine learning and data mining. High-dimensional data require additional storage space, cause high complexity in calculating, and are time consuming. Given that the large number of redundant features indicates a minimal effect on data analysis, the sparse preserving project method is proposed, and this method maintains the sparse reconstruction relations of data by minimizing an objective function including $l$1 norm regularization term. Thus, the approach can obtain intrinsic geometric structure information of data without any parameter setting. The traditional SPP neglects the potential global structure because it computes sparse representation of each sample separately; thus, SPP is not robust to noise. Another dimension reduction method, which is called low-rank sparse preserving projection, has advantages in preserving global structure and local linear structure of the data by constructing a low-rank sparse graph. However, this method ignores the loss of information between the original high-dimensional data and the reduced lower dimensional data. Furthermore, the method fails to address the situation that involves a small number of labeled samples and a large number of unlabeled samples. Thus, to solve these two problems, a semi-supervised feature selection method based on low-rank sparse graph embedding (LRSE) is proposed in this paper. Method The proposed LRSE consists of two steps. The first is to learn the low-rank sparse representation of original data from a small amount of labeled data and a large amount of unlabeled data. Next, we consider the difference of information between high-and low-dimensional data and structural information preservation in a union model. Thus, the useful information in the data is preserved as much as possible by minimizing the information loss function. Furthermore, the structural information in the original data space is preserved by embedding the low-rank sparse graph that contains a data global structure and internal geometric structure into lower-dimensional data space. Therefore, this method can select a larger number of discriminative features. The solution process of the objective function is presented in detail in Section 4, where we use the alternating optimization method to convert non-convex problems into two convex optimization subproblems. Then, the Lagrange multiplier method is adopted to solve these two subproblems. Result To validate the performance of the proposed algorithm, we conduct five experiments on six public datasets. The first two experiments involve dimensionality reduction on dataset Wine and face dataset Orl64. Then, we visualize the obtained features. The features selected by the proposed method indicate strong discrimination ability and less redundant information from visual graphics 1 and 2. The second two experiments conduct feature selection on six datasets, and we adopt KNN classification on the lower-dimensional data to verify the effectiveness of the proposed method. Table 2 shows that the average classification accuracy (ACC) of our method LRSE on the five datasets is the highest except for datasets WarpPIE10P compared with four other feature selection methods and baseline. In particular, the ACC increases by 11.19% in the Wine dataset. The classification accuracy is better than that of the original high-dimensional data in most cases. A reasonable explanation is that our method eliminates redundant features in dimensionality reduction. Thus, the conclusions of experiment 1 and 2 can also be proven by these results. The last experiment is parameter sensitivity analysis. The experimental results show that the classification accuracy is more stable for most datasets when $\alpha $=1. Conclusion This study proposes a semi-supervised feature selection method based on low-rank sparse graph embedding; the method learns the low-rank sparse representation of labeled data and unlabeled data and embeds it in the lower-dimensional data space. Thus, the information contained in the original data can be preserved as much as possible. Moreover, the information loss in dimensionality reduction can be minimized by adding reconstruction error of data in the objective function. The combination of these two strategies can improve the efficiency of our dimensionality reduction method. We conduct a series of comparative analyses with several existing methods on multiple datasets to prove that the proposed method is more efficient than the existing dimensionality reduction methods. Furthermore, the method applied in this study is based on the assumption that all of the features are on linear manifolds. Thus, our method is not suitable for all types of data. Future research will focus on expanding the applicability of the method to a wider range of data with kernel trick.

Key words

feature selection; semi-supervised learning; low rank representation; sparse representation; structural embedding; image classification

0 引言

随着大数据时代的到来,高维数据大量地出现在各个领域,比如生物科学[1]、图像处理[2]等等。高维数据不仅需要更大的存储空间,在研究分析中由于计算量的增加也使得处理过程更加耗时,且大量的冗余特征对数据分析产生消极影响[3],所以数据降维已经成为机器学习领域的一个热点研究问题。

降维方法主要分为两大类:特征提取和特征选择。特征提取即学习一个投影矩阵将高维数据变换到低维空间,这个过程会产生新的特征,最经典的特征提取方法有主成分分析(PCA)[4]。特征选择方法[5-6]是根据一定的准则从原始特征空间中选出一个最有代表性的特征子集。

根据训练过程是否利用标签信息,降维方法又分为有监督学习和无监督学习,经典的监督方法有卡方检验[7]和信息增益[8]等。由于实际问题中没有大量的标签信息用于训练,半监督学习和非监督降维方法近些年来一直都是研究重点。He等人[9]提出的Laplacian score (LS)根据每个特征的局部保持能力对其进行打分是一个经典的非监督特征选择方法。然而,由于这种打分方法独立地计算每个特征的分数,忽略了不同特征间可能的联系从而不能产生最优的特征子集。为了解决这个问题,通常的做法是利用聚类分析生成伪聚类标签。Cai等人[10]提出的多聚类特征选择(MCFS),先进行谱聚类以得到数据的多聚类结构,再利用1范数正则回归模型进行特征选择。Qian等人[11]提出的鲁棒非监督特征选择(RUFS)通过局部学习正则化的鲁棒非负矩阵分解得到伪聚类标签,同时用2-1范数最小化进行特征选择。以上这些方法根据K近邻准则构建权重矩阵,而这种基于图的降维方法同时面临以下几个问题:1)Zhu[12]指出最近邻准则不能得到丰富的判别信息;2)近邻参数和核函数的参数不好确定,尽管可以进行交叉验证,但是这样却非常耗时。Cheng等人[13]受到稀疏编码思想的启发,提出了基于$l$1图的子空间学习,这个$l$1图能表征数据的近邻重构关系且具有稀疏性,对数据噪声鲁棒性也更强。Qiao等人[14]提出了稀疏保持投影(SPP),通过最小化一个与1范数正则项相关的目标函数来保持数据的稀疏重构关系,不需要设定任何参数就能得到数据内部的几何结构信息。但是由于这种方法是分别计算每个样本的稀疏表示而忽略了潜在的全局结构,从而导致该方法对噪声不具有鲁棒性。Liu等人[15]提出的低秩表示(LR)方法学习数据的最低秩表示,能更好地抓住数据的全局信息。Du等人[16]将稀疏表示和低秩表示进行结合,提出了低秩稀疏保持投影(LRSPP),通过构建一个低秩稀疏图能保持数据的全局结构和局部线性结构。

基于低秩稀疏保持投影方法忽略了降维前后信息的损失,且不能处理少量有标签样本和大量无标签样本的情况。为了解决以上问题,提出基于低秩稀疏图嵌入的半监督特征选择方法(LRSE),在目标函数中不仅加入了降维前后的信息损失,还将半监督学习到的数据的低秩稀疏表示矩阵嵌入在降维过程中,从而将数据的全局结构信息和内部几何信息保留在低维空间中以获得足够的判别信息。进行有效的特征选择,通过与几个特征选择方法进行实验比较,验证了本文方法的有效性。

1 低秩稀疏表示

在降维方法中,最经典的局部结构保持方法有局部保持投影(LPP)[17]和近邻保持嵌入(NPE)[18],这些方法都是基于K近邻构建一个Laplacian图[19],并将这个包含原始数据结构信息的图嵌入在低维子空间中。但是近邻个数的选择和超参数的最优值分配仍然是个问题,基于这些问题,Qiao等人提出的稀疏保持投影(SPP),先用稀疏表示学习原始数据的一个“近邻”权重矩阵为

$ \begin{array}{*{20}{c}} {\mathop {\min }\limits_{{s_i}} {{\left\| {{\mathit{\boldsymbol{s}}_i}} \right\|}_1}}\\ {{\rm{s}}.\;{\rm{t}}.\;\;\;{\mathit{\boldsymbol{x}}_i} = \mathit{\boldsymbol{X}}{\mathit{\boldsymbol{s}}_i}{\bf{1}} = {{\bf{1}}^{\rm{T}}}{\mathit{\boldsymbol{s}}_i}} \end{array} $ (1)

式中,$\mathit{\boldsymbol{X}} = {\left[{{\mathit{\boldsymbol{x}}_1}, \cdots, {\mathit{\boldsymbol{x}}_{i-1}}, 0, {\mathit{\boldsymbol{x}}_{i + 1}}, \cdots, {\mathit{\boldsymbol{x}}_n}} \right]^{\rm{T}}} \in {{\bf{R}}^{n \times d}}$是训练数据,${\mathit{\boldsymbol{x}}_i} \in {{\bf{R}}^d}\left( {i = 1, 2, \cdots, n} \right)$是单个样本,$n$是样本数量。${\mathit{\boldsymbol{s}}_i} = \left[{{s_{i1}}, \cdots, {s_{i, i-1}}, 0, {s_{i, i + 1}}, \cdots, {s_{i, n}}} \right] \in {{\bf{R}}^n}$是样本${\mathit{\boldsymbol{x}}_i}$的稀疏表示,${\left\| \cdot \right\|_1}$是向量的1范数,即向量元素的绝对值之和,用于代替原始稀疏表示中的0范数,由于l0最小化问题是一个NP难问题,而Baraniuk[20]指出如果解${\mathit{\boldsymbol{s}}_i}$足够稀疏,则l0最小化问题的解等价于l1最小化问题的解。${\bf{1}} \in {{\bf{R}}^n}$是元素均为1的向量,以上第1个约束条件能保证${\mathit{\boldsymbol{s}}_i}$的旋转不变性和尺度缩放不变性,第2个约束条件保证${\mathit{\boldsymbol{s}}_i}$的平移不变性。这样得到的稀疏权重矩阵能反映数据内部的几何特性,也能够自然地判别信息,通过下面的式子将这些特性保留在低维空间中,即

$ \mathop {\min }\limits_\mathit{\boldsymbol{W}} \sum\limits_{i = 1}^n {\left\| {{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{x}}_i} - {\mathit{\boldsymbol{W}}^{\rm{T}}}\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{s}}_i}} \right\|_2^2} $ (2)

式中,${\bf{W}} \in {{\bf{R}}^{d \times k}}$是将高维样本变换成低维样本的投影矩阵,$k$是低维样本的维数。$\left\| \cdot \right\|_2^2$是向量2范数的平方。然而,由于SPP是独立地计算每个样本的稀疏表示,忽略了数据的全局结构,从而导致该方法对噪声不具有鲁棒性,为了更好地学习数据的全局结构,Liu等人[15]提出低秩表示

$ \begin{array}{l} \mathop {\min }\limits_\mathit{\boldsymbol{Z}} {\rm{rank}}\left( \mathit{\boldsymbol{Z}} \right)\\ {\rm{s}}.\;{\rm{t}}.\;\;\mathit{\boldsymbol{X}} = \mathit{\boldsymbol{XZ}} \end{array} $ (3)

式中,$\mathit{\boldsymbol{Z}}$是原始数据的低秩表示,rank($\mathit{\boldsymbol{Z}}$)是矩阵的秩函数,由于秩函数是非凸的,Candes等人[21]指出当$\mathit{\boldsymbol{Z}}$的秩足够小,上述的NP难问题可以用核范数优化求解。又考虑到观测数据通常含有噪声,故可以将式(3)中的等式约束松弛为目标函数

$ \begin{array}{l} \mathop {\min }\limits_{\mathit{\boldsymbol{Z}},\mathit{\boldsymbol{E}}} {\left\| \mathit{\boldsymbol{Z}} \right\|_ * } + \lambda {\left\| \mathit{\boldsymbol{E}} \right\|_{2,1}}\\ {\rm{s}}.\;{\rm{t}}.\;\;\mathit{\boldsymbol{X}} = \mathit{\boldsymbol{XZ}} + \mathit{\boldsymbol{E}} \end{array} $ (4)

式中,${\left\| \cdot \right\|_*}$是矩阵的核范数,即矩阵的奇异值之和,$\mathit{\boldsymbol{E}}$是模拟的噪声矩阵,${\left\| \mathit{\boldsymbol{E}} \right\|_{2, 1}} = \sum\limits_{j = 1}^n {\sqrt {\sum\limits_{i = 1}^d {{{\left( {{\mathit{\boldsymbol{E}}_{ij}}} \right)}^2}} } } $是l2, 1混合范数,$\lambda $是平衡秩函数和噪声之间的平衡参数。基于以上两个方法的优势,Du等人[16]将稀疏保持投影和低秩表示结合起来提出了低秩稀疏保持投影

$ \begin{array}{l} \mathop {\min }\limits_{\mathit{\boldsymbol{Z}},\mathit{\boldsymbol{E}}} {\left\| \mathit{\boldsymbol{Z}} \right\|_ * } + \lambda {\left\| \mathit{\boldsymbol{E}} \right\|_{2,1}} + \gamma {\left\| \mathit{\boldsymbol{Z}} \right\|_1}\\ {\rm{s}}.\;{\rm{t}}.\;\;\mathit{\boldsymbol{X}} = \mathit{\boldsymbol{XZ}} + \mathit{\boldsymbol{E}},{\rm{diag}}\left( \mathit{\boldsymbol{Z}} \right) = 0 \end{array} $ (5)

即对系数矩阵同时进行低秩约束和稀疏约束,从而得到数据的全局结构和内部几何结构,diag($\mathit{\boldsymbol{Z}}$)=0是用于约束矩阵$\mathit{\boldsymbol{Z}}$的对角元素为0,$\lambda $$\gamma $均是平衡参数,为防止出现平凡解,需要将每个样本在表示其本身的时候去掉,故约束系数矩阵的对角元素为0。得到低秩稀疏表示后,寻找低维投影矩阵, 即

$ \mathop {\min }\limits_\mathit{\boldsymbol{W}} \sum\limits_{i = 1}^n {\left\| {{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{x}}_i} - {\mathit{\boldsymbol{W}}^{\rm{T}}}\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{z}}_i}} \right\|_2^2} $ (6)

式中,${\mathit{\boldsymbol{z}}_i}$是样本${\mathit{\boldsymbol{x}}_i}$对应的低秩稀疏表示,$\mathit{\boldsymbol{W}}$是投影矩阵,${\mathit{\boldsymbol{W}}^{\rm{T}}}\mathit{\boldsymbol{X}}$即为降维后的低维空间。

2 本文方法

低秩稀疏保持投影虽然能保持数据的全局和局部结构,但却忽略了原始数据空间和低维空间之前的重构误差,且只能处理非监督情况。本文将其扩展到半监督学习上,并考虑在低秩稀疏保持投影上加入重构误差,从而降低降维过程中的信息损失,其中本文的低秩稀疏表示是分别从有标签数据和无标签数据中学习到的,下面给出具体的目标函数。

2.1 目标函数

$\mathit{\boldsymbol{X}} = {\left[{{\mathit{\boldsymbol{X}}_N}, {\mathit{\boldsymbol{X}}_N}} \right]^{\rm{T}}} = {\left[{{\mathit{\boldsymbol{x}}_1}, {\mathit{\boldsymbol{x}}_2}, \cdots, {\mathit{\boldsymbol{x}}_m}, {\mathit{\boldsymbol{x}}_{m + 1}}, \cdots, {\mathit{\boldsymbol{x}}_{m + n}}} \right]^{\rm{T}}} \in {{\bf{R}}^{\left( {m + n} \right) \times d}}$是给定的训练样本,其中${\mathit{\boldsymbol{X}}_M}$是有标签数据,${\mathit{\boldsymbol{X}}_N}$是无标签数据,${\mathit{\boldsymbol{x}}_i} \in {{\bf{R}}^d}$是第$i$个样本,$\mathit{\boldsymbol{Y}} = {\left[{{y_1}, {y_2}, \cdots, {y_m}} \right]^{\rm{T}}}$${\mathit{\boldsymbol{X}}_M}$对应的标签矩阵,其中${y_i} \in \left\{ {1, 2, \cdots, c} \right\}$,目的是要学习一个特征选择矩阵$\mathit{\boldsymbol{W}} \in {{\bf{R}}^{d \times k}}$,使得${\mathit{\boldsymbol{z}}_i} = {\mathit{\boldsymbol{x}}_\mathit{\boldsymbol{i}}}\mathit{\boldsymbol{W}}$${\mathit{\boldsymbol{x}}_i}$的低维表示。本文特征选择矩阵的学习过程中加入了数据的全局重构误差,解决了低秩稀疏保持投影中忽略了降维前后的重构误差。还对有标签数据和无标签数据分别学习低秩稀疏表示,最后将其整合为一个整体的低秩稀疏表示矩阵,将原始数据的全局结构和内部几何结构嵌入低维空间中,保证原始数据间的结构信息最大化地保留下来。本文的目标函数为

$ \begin{array}{*{20}{c}} {\mathop {\min }\limits_{\mathit{\boldsymbol{W}},\mathit{\boldsymbol{P}}} \frac{1}{2}\left\| {\mathit{\boldsymbol{X}} - \mathit{\boldsymbol{XWP}}} \right\|_{\rm{F}}^2 + \frac{\alpha }{2}\left\| {\mathit{\boldsymbol{XW}} - \mathit{\boldsymbol{XWU}}} \right\|_{\rm{2}}^2}\\ {{\rm{s}}.\;{\rm{t}}.\;\;\mathit{\boldsymbol{W}} \in {\bf{R}}_ + ^{d \times k},\mathit{\boldsymbol{P}} > 0} \end{array} $ (7)

式中,第1项是数据的重构误差,用欧氏距离度量原始数据空间与降维之后的子空间之间的距离,$\mathit{\boldsymbol{P}}$是用低维空间重构原始数据的系数矩阵,$\mathit{\boldsymbol{XW}}$即为降维后的低维子空间。用这样的重构方式可以最小化数据在降维过程中的信息损失。第2项是结构信息嵌入,即将所学习到的原始数据的低秩稀疏表示$\mathit{\boldsymbol{U}}$嵌入在低维空间$\mathit{\boldsymbol{XW}}$中,使得低维样本仍具有原始数据空间的结构信息,从而将结构信息有效地保留下来,$\alpha $是平衡参数,平衡重构误差和结构保持项。$\mathit{\boldsymbol{U}}$的构造方式见下节。

2.2 半监督的低秩稀疏表示

本文采用低秩稀疏表示方法学习数据的结构信息,由于本文要处理的是半监督问题,故将有标签数据和无标签数据分开处理,其中有标签数据按不同类别分开处理,故可将输入数据$\mathit{\boldsymbol{X}}$分块为$\mathit{\boldsymbol{X}} = {\left[{{\mathit{\boldsymbol{X}}_1}, {\mathit{\boldsymbol{X}}_j} \cdots, {\mathit{\boldsymbol{X}}_c}, {\mathit{\boldsymbol{X}}_N}} \right]^{\rm{T}}} \in {{\bf{R}}^{\left( {m + n} \right) \times d}}$,其中${\mathit{\boldsymbol{X}}_j}$${\mathit{\boldsymbol{X}}_M}$中所有属于第j类的样本集合,分别学习每块数据的低秩稀疏表示, 即

$ \begin{array}{*{20}{c}} {\mathop {\min }\limits_{{\mathit{\boldsymbol{U}}_i},{\mathit{\boldsymbol{E}}_i}} {{\left\| {{\mathit{\boldsymbol{U}}_i}} \right\|}_ * } + \lambda {{\left\| {{\mathit{\boldsymbol{E}}_i}} \right\|}_{2,1}} + \mu {{\left\| {{\mathit{\boldsymbol{U}}_i}} \right\|}_1}}\\ {{\rm{s}}.\;{\rm{t}}.\;\;\;{\mathit{\boldsymbol{X}}_i} = {\mathit{\boldsymbol{X}}_i}{\mathit{\boldsymbol{U}}_i} + {\mathit{\boldsymbol{E}}_i},\;\;\;\;{\rm{diag}}\left( {{\mathit{\boldsymbol{U}}_i}} \right) = 0} \end{array} $ (8)

式中,$i \in \left\{ {1, \cdots, c, \mathit{N}} \right\}$,通过式(8)可计算出每块数据的系数矩阵为$\left\{ {{\mathit{\boldsymbol{U}}_1}, \cdots, {\mathit{\boldsymbol{U}}_j} \cdots, {\mathit{\boldsymbol{U}}_c}, {\mathit{\boldsymbol{U}}_N}} \right\}$,则原始数据的低秩稀疏表示为

$ \mathit{\boldsymbol{U}} = {\rm{diag}}\left( {{\mathit{\boldsymbol{U}}_1}, \cdots ,{\mathit{\boldsymbol{U}}_j}, \cdots ,{\mathit{\boldsymbol{U}}_c},{\mathit{\boldsymbol{U}}_N}} \right) $ (9)

该处求出的$\mathit{\boldsymbol{U}}$用于2.1节中的低秩稀疏图嵌入。式(8)的求解可参照文献[22],本文不作详细描述。

3 模型求解

由于同时优化目标函数中的$\mathit{\boldsymbol{W}}$$\mathit{\boldsymbol{P}}$,该问题是非凸的,这样很难找到一个全局最小值,但是优化函数分别关于$\mathit{\boldsymbol{W}}$或者$\mathit{\boldsymbol{P}}$是凸的,那么交替优化$\mathit{\boldsymbol{W}}$$\mathit{\boldsymbol{P}}$就会存在全局最优解。首先,将目标函数写成迹的形式为

$ \begin{array}{*{20}{c}} {F = \frac{1}{2}{\rm{tr}}\left( {\left( {\mathit{\boldsymbol{X}} - \mathit{\boldsymbol{XWP}}} \right){{\left( {\mathit{\boldsymbol{X}} - \mathit{\boldsymbol{XWP}}} \right)}^{\rm{T}}}} \right) + }\\ {\frac{\alpha }{2}\left( {\left( {\mathit{\boldsymbol{XW}} - \mathit{\boldsymbol{XWU}}} \right){{\left( {\mathit{\boldsymbol{XW}} - \mathit{\boldsymbol{XWU}}} \right)}^{\rm{T}}}} \right) = }\\ {\frac{1}{2}{\rm{tr}}\left( {\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{X}}^{\rm{T}}} - 2\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{X}}^{\rm{T}}} + \mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{P}}^{\rm{T}}}{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}} \right) + }\\ {\frac{\alpha }{2}\left( {\mathit{\boldsymbol{XWL}}{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}} \right)} \end{array} $ (10)

式中,$\mathit{\boldsymbol{L}} = \left( {\mathit{\boldsymbol{I}}-\mathit{\boldsymbol{U}}} \right){\left( {\mathit{\boldsymbol{I}}-\mathit{\boldsymbol{U}}} \right)^{\rm{T}}}$$\mathit{\boldsymbol{I}}$是单位矩阵。给定$\mathit{\boldsymbol{X}}$$\mathit{\boldsymbol{P}}$,先考虑优化$\mathit{\boldsymbol{W}}$。则式(7)关于$\mathit{\boldsymbol{W}}$的拉格朗日函数为

$ \begin{array}{*{20}{c}} {f = \frac{1}{2}{\rm{tr}}\left( {\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{X}}^{\rm{T}}} - 2\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{X}}^{\rm{T}}} + \mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{P}}^{\rm{T}}}{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}} \right) + }\\ {\frac{\alpha }{2}\left( {\mathit{\boldsymbol{XWL}}{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}} \right) + {\rm{tr}}\left( {{\mathit{\boldsymbol{\omega }}^{\rm{T}}}\mathit{\boldsymbol{W}}} \right)} \end{array} $ (11)

式中,$\mathit{\boldsymbol{\omega }}$是拉格朗日乘子,按照文献[23-24]中的求解方法,对$f$关于$\mathit{\boldsymbol{W}}$求偏导,并令求导结果等于0,得

$ \begin{array}{*{20}{c}} {\frac{{\partial f}}{{\partial \mathit{\boldsymbol{W}}}} = - {\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{P}}^{\rm{T}}} + {\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{P}}^{\rm{T}}} + }\\ {\alpha {\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWL + \omega }} = 0} \end{array} $ (12)

根据KKT条件${\mathit{\boldsymbol{\omega }}_{ij}}{\mathit{\boldsymbol{W}}_{ij}} = 0$,可以得到

$ \begin{array}{*{20}{c}} { - {{\left( {{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{P}}^{\rm{T}}}} \right)}_{ij}}{\mathit{\boldsymbol{W}}_{ij}} + {{\left( {{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{P}}^{\rm{T}}}} \right)}_{ij}}{\mathit{\boldsymbol{W}}_{ij}} + }\\ {{{\left( {\alpha {\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWL}}} \right)}_{ij}}{\mathit{\boldsymbol{W}}_{ij}} = 0} \end{array} $ (13)

根据上式推导出$\mathit{\boldsymbol{W}}$

$ {\mathit{\boldsymbol{W}}_{ij}} = {\mathit{\boldsymbol{W}}_{ij}}\frac{{{{\left( {{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{P}}^{\rm{T}}}} \right)}_{ij}}}}{{{{\left( {{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{P}}^{\rm{T}}} + \alpha {\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWL}}} \right)}_{ij}}}} $ (14)

现在固定$\mathit{\boldsymbol{W}}$来优化$\mathit{\boldsymbol{P}}$,则关于$\mathit{\boldsymbol{P}}$的拉格朗日函数为

$ \begin{array}{*{20}{c}} {f = \frac{1}{2}{\rm{tr}}\left( {\mathit{\boldsymbol{X}}{\mathit{\boldsymbol{X}}^{\rm{T}}} - 2\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{X}}^{\rm{T}}} + } \right.}\\ {\left. {\mathit{\boldsymbol{XWP}}{\mathit{\boldsymbol{P}}^{\rm{T}}}{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}} \right) + {\rm{tr}}\left( {{\mathit{\boldsymbol{\sigma }}^{\rm{T}}}\mathit{\boldsymbol{P}}} \right)} \end{array} $ (15)

同样对$f$关于$\mathit{\boldsymbol{P}}$求偏导,并令偏导数等于0,得

$ \frac{{\partial f}}{{\partial \mathit{\boldsymbol{P}}}} = - {\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{X}} + {\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWP}} + \mathit{\boldsymbol{\sigma }} = 0 $ (16)

根据KKT条件${\mathit{\boldsymbol{\sigma }}_{ij}}{\mathit{\boldsymbol{P}}_{ij}} = 0$可得

$ - {\left( {{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{X}}} \right)_{ij}}{\mathit{\boldsymbol{P}}_{ij}} + {\left( {{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWP}}} \right)_{ij}}{\mathit{\boldsymbol{P}}_{ij}} = 0 $ (17)

由此可推导出$\mathit{\boldsymbol{P}}$的迭代公式为

$ {\mathit{\boldsymbol{P}}_{ij}} = {\mathit{\boldsymbol{P}}_{ij}}\frac{{{{\left( {{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{X}}} \right)}_{ij}}}}{{{{\left( {{\mathit{\boldsymbol{W}}^{\rm{T}}}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{XWP}}} \right)}_{ij}}}} $ (18)

根据以上求得的迭代公式,总结本文LRSE算法的具体步骤如下:

输入:高维训练样本$\mathit{\boldsymbol{X}} \in {{\bf{R}}^{\left( {m + n} \right) \times d}}$,要选择的特征个数$k$,参数$\alpha $

输出:所选特征的下标集I

过程:

1) 参照文献[22]中的方法计算$\mathit{\boldsymbol{U}}$

2) 计算$\mathit{\boldsymbol{L}} = \left( {\mathit{\boldsymbol{I}}-\mathit{\boldsymbol{U}}} \right){\left( {\mathit{\boldsymbol{I}}-\mathit{\boldsymbol{U}}} \right)^{\rm{T}}}$

3) 根据式(14)更新投影矩阵$\mathit{\boldsymbol{W}}$

4) 根据式(18)更新系数矩阵$\mathit{\boldsymbol{P}}$

5) 如果满足停止准则${\left\| {{W_{t + 1}}-{W_t}} \right\|_F} \le \varepsilon {\left\| {{\mathit{\boldsymbol{W}}_1}-{\mathit{\boldsymbol{W}}_0}} \right\|_F}$,则进入下一步;否则,回到步骤3);

6) 对$\mathit{\boldsymbol{W}}$的每一列进行归一化处理;

7) 计算$\mathit{\boldsymbol{W}}$每个行向量的二范数${\left\| {{\mathit{\boldsymbol{w}}^i}} \right\|_2}, i = 1, \cdots, d$并排序,找出前$k$个对应的特征下标$\mathit{\boldsymbol{I}}$返回。

4 实验及结果分析

设计5个实验来验证本文算法的性能和效果。

4.1 实验数据和实验设置

选择6个数据集对本文方法进行验证,表 1给出了所选的数据集信息,其中Wine和Breast来自UCI数据集[25],WarpPIE10P,Orlraws10P,Coil20和Orl64都是人脸数据集[26]

表 1 实验数据集
Table 1 Experimental datasets

下载CSV
数据集 样本 特征 类别
Wine 178 13 3
Breast 699 10 2
WarpPIE10P 210 2 420 10
Orlraws10P 100 10 304 10
Coil20 1 440 1 024 20
Orl64 400 4 096 40

为了验证本文方法的有效性,将本文方法与下面几个方法进行对比分析:

1) Fisher score(FS),经典的打分方法,判别每个特征的重要性,根据特征的重要性进行选择;

2) 多聚类特征选择(MCFS),多聚类特征选择先用谱嵌入进行聚类分析,再用1范数正则回归模型进行特征选择,这样所选择的特征尽可能地保持数据的多聚类结构;

3) Laplacian score(LS),LS基于属于同一类样本彼此接近的假设,根据每个特征的局部保持能力对其进行打分;

4) 鲁棒非监督特征选择(RUFS),鲁棒非监督特征选择方法通过局部学习正则鲁棒非负矩阵分解得到伪聚类标签,同时用鲁棒2-1范数最小化模型进行了特征选择;

5) 稀疏保持投影(SPP),最小化一个与1范数正则项相关的目标函数来保持数据的稀疏重构关系;

6) 低秩稀疏保持投影(LPSPP),将稀疏表示与低秩表示结合构建一个低秩稀疏图,将其嵌入在低维空间中进行特征选择;

7) All features,用所有的特征进行分类,计算分类准确率。

MCFS, LS和RUFS中的近邻个数$k$均设置为5。SPP和LRSPP方法降维时先对数据用PCA投影进行预处理,本文LRSE方法的结构保持项系数$\alpha $设置为1。由于数据集中样本量不大,本文对每个数据集选择50%样本作为有标签的数据,50%样本为无标签样本,对于有监督方法FS和MCFS,用50%的有标签样本用于训练,对于非监督方法LS和RUFS,用所有的样本进行训练。对降维后的数据采用KNN分类器进行分类,分类器的近邻参数设置为3,用5折交叉验证得到最终的准确率。

4.2 实验设计及结果分析

1) 实验1。Wine是UCR数据集中的一个实际生活中的数据集,该数据集包括13个特征,3种类别,178个样本。通常的降维方法实验[13]是从这13个特征中选择2个特征作为纵横坐标,再画出这178个样本的散点图。

图 1是所有样本基于不同方法所选择出的特征的散点图。其中,图 1(a)是RUFS方法降维后选择出的特征,即特征3和特征8,图 1(a)中3类样本都重叠在一起,说明RUFS方法所选择的特征对于样本间的区分度较低。图 1(b)是MCFS和LS降维后选择出的特征,即特征5和特征13,可以看出,类2样本和类3样本大量重叠,这也说明MCFS和LS方法所选的两个特征对数据的鉴别能力较差。图 1(c)是FS方法选择出的特征7和特征13,图 1(d)是本文LRSE方法选择出的特征13和特征1,这两幅图中3类样本之间明显分开,说明所选择特征具有较强的判别能力,样本间区分度较高。

图 1 不同方法在wine数据集上选择两个特征后对样本的可视化结果,每张图的纵横指标是对应方法选出的2个特征
Fig. 1 The visualization of Wine samples with two features that selected by all methods, the vertical and horizontal index of each graph are the 2 features selected by the corresponding methods
((a) RUFS; (b) MCFS and LS; (c) FS; (d) LRSE)

2) 实验2。用所有的方法在Orl64人脸数据集上选择100个特征,并将由不同方法选择的100个特征可视化在人脸图像上。

图 2是所有方法在Orl64人脸数据集中的一张图片上选择100个特征的可视化图像,其中图 2(a)是原始的人脸图像,图 2(b)是FS方法降维的结果,能看到选择的特征集中在人脸的一个局部区域内,且在图像边缘,有效特征较少,说明该方法对人脸图像较为不适用。图 2(d)中LS方法选择的特征集中在两块局部区域,选择出了过多的冗余特征使得该方法判别性较弱,这是由于FS和LS都是独立地对所有特征进行打分,没有考虑到特征间的相关性。图 2(c) MCFS方法选择的特征集中在眼睛,图 2(e) RUFS方法选择的特征集中在眼睛和嘴巴,但是特征过于集中从而选择了较多的冗余特征。图 2(f)是本文的LRSE方法,选择的特征分布在五官这种判别性较强的地方且相对来说更为分散,这样能获得更多的判别信息,因而本文的分类效果更好。

图 2 所有方法在Orl64上选择的100个特征在人脸图像上的可视化结果。
Fig. 2 The visualization of 100 features that selected by different methods on Orl64 image dataset
((a) original; (b) FS; (c) MCFS; (d) LS; (e) RUFS; (f) LRSE)

3) 实验3。由于SPP和LRSPP方法都适用于人脸识别,本文选取2个人脸图像数据集Orl64和Coil20进行对比,在每个数据集上分别选取{20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120}个特征,计算不同方法的分类准确率。

图 3是不同方法在不同特征数下分类准确率的趋势图,其中图 3(a)是在数据集Orl64上的准确率趋势图,可见,随着所选特征数量的增加,本文方法的分类准确率呈现平稳上升趋势,当所选特征为50, 60, 80, 90, 100, 110, 120时,本文方法都有最高的分类准确率,且当特征数大于80时,本文方法的准确率基本趋于稳定;图 3(b)是在数据集Coil20上的准确率趋势图,可见,本文方法在所选特征为40, 70, 80, 90, 100, 110, 120时的准确率都是最高,且都优于未进行降维的分类准确率,说明了本文方法剔除了冗余特征的影响进而提高了分类准确率。此外,本文方法较LRSPP方法准确率的提高,说明了本文模型加入低维样本重构高维样本间的重构误差项的有效性。

图 3 不同方法在不同特征数下分类准确率的趋势图
Fig. 3 The tendency chart of the classification accuracy of different methods under
different number of features((a) Orl64; (b)Coil20)

4) 实验4。不同方法在Wine和Breast数据集上分别选择{2, 3, 4, 5, 6, 7, 8}个特征,对于其他4个人脸数据集,分别选择{20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120}个特征,计算不同方法在不同特征个数下的最高分类准确率。

表 2是每个方法在所选特征范围内最高的分类准确率。由表 2可知,除了数据集WarpPIE10P,本文LRSE方法在其余5个数据集上的分类准确率都是最高的,甚至优于未进行特征选择的分类准确率,在Wine和Breast数据集上尤其明显,在人脸数据集Coil20的准确率甚至接近100%,由此证明本文提出的LRSE特征选择方法有助于提高数据的分类性能。

表 2 所有方法在6个数据集上的分类准确率
Table 2 The classification accuracy of different methods on six datasets

下载CSV
Datasets ALL feature FS MCFS LS RUFS LRSE
Wine 0.713 3 0.702 7 0.724 8 0.702 7 0.753 3 0.865 2
Breast 0.619 4 0.915 6 0.616 5 0.632 3 0.917 0 0.922 7
WarpPIE10P 0.990 5 0.923 8 0.966 7 0.690 5 0.733 3 0.866 7
Orlraws10P 0.930 0 0.870 0 0.940 0 0.800 0 0.820 0 0.950 0
Coil20 0.965 4 0.951 8 0.980 3 0.890 3 0.949 3 0.9910
Orl64 0.837 5 0.735 0 0.862 5 0.585 0 0.785 0 0.887 5
注:其中粗体表示最高的准确率,下划线表示第2高的准确率。

5) 实验5。在数据集Breast和Coil20上对本文LRSE方法进行参数的灵敏度分析,其中本文结构项系数$\alpha $的范围设定为{0.000 1, 0.001, 0.01, 0.1, 1, 10},计算不同参数和不同特征数下的分类准确率。

图 4给出了本文的LRSE方法在数据集Breast和Coil20上关于不同参数$\alpha $和不同特征数的分类准确率。由图 4可知,样本关于参数$\alpha $的分类性能随着数据集的不同而变化,在数据集Breast上,数据的分类准确率关于$\alpha $和特征个数都很不稳定,值得注意的是,当$\alpha $=1时,准确率比较稳定。在数据集Coil20上,分类准确率相当稳定,尤其是当$\alpha $=1时,准确率稍微高一些,这说明当$\alpha $=1时,对大部分数据集来说都更为稳定。

图 4 本文方法的参数灵敏度分析
Fig. 4 Parameter sensitivity analysis of the proposed method
((a)Breast; (b)Coil20)

5 结论

本文提出基于低秩稀疏图嵌入的半监督特征选择方法(LRSE)。该方法分别学习有标签样本和无标签样本的低秩稀疏表示,并将其嵌入在低维空间中使得原始数据中的信息被尽可能地保留下来,此外,在低秩稀疏表示嵌入的目标函数中加入了数据的重构误差,可以最小化降维过程中的信息损失,这两个策略的结合可以保证本文降维方法的有效性。通过与几个现有方法在多个数据集上的对比分析,证明了本文方法比现有的降维方法更有效。由于本文方法是基于所有的特征都在线性流形上的假设,所以本文方法不适合所有类型的数据,下一步的研究目标是用核方法拓展本文的方法使其适用于更广泛的数据。

参考文献

  • [1] Ritchie M D, Hahn L W, Moore J H. Power of multifactor dimensionality reduction for detecting gene-gene interactions in the presence of genotyping error, missing data, phenocopy, and genetic heterogeneity[J]. Genetic Epidemiology, 2003, 24(2): 150–157. [DOI:10.1002/gepi.10218]
  • [2] Wang X S, Gao Y, Cheng Y H. A non-negative sparse semi-supervised dimensionality reduction algorithm for hyperspectral data[J]. Neurocomputing, 2016, 188: 275–283. [DOI:10.1016/j.neucom.2014.12.127]
  • [3] Wu J, Xie Y F, Yang C H, et al. An unsupervised reduction method for the selection of flotation froth image characters and its application[J]. Information and Control, 2014, 43(3): 314–317, 333. [吴佳, 谢永芳, 阳春华, 等. 一种无监督约简的浮选泡沫图像特征选择方法及应用[J]. 信息与控制, 2014, 43(3): 314–317, 333. ] [DOI:10.3724/SP.J.1219.2014.00314]
  • [4] Lipovetsky S. PCA and SVD with nonnegative loadings[J]. Pattern Recognition, 2009, 42(1): 68–76. [DOI:10.1016/j.patcog.2008.06.025]
  • [5] Bishop C M. Neural Networks for Pattern Recognition[M]. New York: Oxford University Press, 1996: 1235-1242.
  • [6] Li K T, Peng H, Zhou X F, et al. Feature selection algorithm based on multiple correlation measures[J]. Journal of Chinese Computer Systems, 2017, 38(4): 696–700. [李开拓, 彭慧, 周晓锋, 等. 基于多种相关性度量的特征选择方法研究[J]. 小型微型计算机系统, 2017, 38(4): 696–700. ] [DOI:10.3969/j.issn.1000-1220.2017.04.007]
  • [7] Yang Y M, Pedersen J O. A comparative study on feature selection in text categorization[C]//Proceedings of the 14th International Conference on Machine Learning. San Francisco: Morgan Kaufmann Publishers Inc., 1997: 412-420.
  • [8] Cover T M, Thomas J A. Elements of Information Theory[M]. 2nd ed. New Jersey: Wiley-Blackwell, 2006: 1600-1601.
  • [9] He X F, Cai D, Niyogi P. Laplacian score for feature selection[C]//Proceedings of the 18th International Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2005: 507-514.
  • [10] Cai D, Zhang C Y, He X F. Unsupervised feature selection for multi-cluster data[C]//Proceedings of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Washington, DC: ACM, 2010: 333-342. [DOI:10.1145/1835804.1835848]
  • [11] Qian M J, Zhai C X. Robust unsupervised feature selection[C]//Proceedings of the 23rd International Joint Conference on Artificial Intelligence. Beijing: AAAI Press, 2013: 1621-1627.
  • [12] Zhu X J. Semi-supervised learning literature survey[D]. Madison: University of Wisconsin, 2005: 63-77.
  • [13] Cheng B, Yang J C, Yan S C, et al. Learning with $\ell$1-graph for image analysis[J]. IEEE Transactions on Image Processing, 2010, 19(4): 858–866. [DOI:10.1109/TIP.2009.2038764]
  • [14] Qiao L S, Chen S C, Tan X Y. Sparsity preserving projections with applications to face recognition[J]. Pattern Recognition, 2010, 43(1): 331–341. [DOI:10.1016/j.patcog.2009.05.005]
  • [15] Liu G C, Lin Z C, Yu Y. Robust subspace segmentation by low-rank representation[C]//Proceedings of the 27th International Conference on International Conference on Machine Learning. Haifa: ACM, 2010: 663-670.
  • [16] Du S Q, Wang W L, Ma Y D. Low rank sparse preserve projection for face recognition[C]//Proceedings of 2016 Chinese Control and Decision Conference. Yinchuan: IEEE, 2016: 3822-3826. [DOI:10.1109/CCDC.2016.7531651]
  • [17] He X F, Niyogi P. Locality preserving projections[J]. Advances in Neural Information Processing Systems, 2004, 16: 153–160.
  • [18] He X F, Cai D, Yan S C, et al. Neighborhood preserving embedding[C]//Proceedings of the 10th IEEE International Conference on Computer Vision. Beijing: IEEE, 2005: 1208-1213. [DOI:10.1109/ICCV.2005.167]
  • [19] Chung F R K. Spectral Graph Theory[M]. Providence: California State University at Fresno, 1997: 212.
  • [20] Baraniuk R G. A lecture on compressive sensing[J]. IEEE Signal Processing Magazine, 2007, 24(4): 118–121. [DOI:10.1109/MSP.2007.4286571]
  • [21] Candès E J, Recht B. Exact matrix completion via convex optimization[J]. Foundations of Computational Mathematics, 2009, 9(6): 717–772. [DOI:10.1007/s10208-009-9045-5]
  • [22] Zhuang L S, Gao H Y, Huang J J, et al. Semi-supervised classification via low rank graph[C]//Proceedings of the 6th International Conference on Image and Graphics. Hefei: IEEE, 2011: 511-516. [DOI:10.1109/ICIG.2011.86]
  • [23] Lee D D, Seung H S. Algorithms for non-negative matrix factorization[C]//Proceedings of 13th International Conference on Neural Information Processing Systems. Denver: MIT Press, 2000: 535-541.
  • [24] Hoyer P O. Non-negative sparse coding[C]//Proceedings of the 200212th IEEE Workshop on Neural Networks for Signal Processing. Martigny: IEEE, 2002: 557-565. [DOI:10.1109/NNSP.2002.1030067]
  • [25] Dua D, Karra T E. UCI machine learning repository[DB/OL]. 2018-03-29]. http://archive.ics.uci.edu/ml/datasets.html.
  • [26] Cai D. Four face databases in matlab format[DB/OL]. 2018-03-29]. http://www.cad.zju.edu.cn/home/dengcai/Data/FaceData.htm.