陈海龙,胡晓雪
(新疆财经大学统计与数据科学学院,乌鲁木齐 830012)
聚类研究既是数据划分的一个有效方法,也是数据挖掘的一项主要技术,它能通过数据中相似的信息将数据划分为不同的簇来探究其内在关联及重点信息。但随着科技的发展,数据的密集性逐渐加强,出现了一种具有连续特征的数据,统计学上称之为函数型数据[1]。函数型数据可看作随时间变化的数据,如智能手环检测心率的变化情况、股票市场的波动情况、气象数据的变化情况等。目前函数型数据聚类分析是被广泛关注的研究分支,其主要有四种方法[2]:一是依据原始函数值直接进行聚类,二是两步串联法聚类,三是利用函数间的欧氏距离来实现系统聚类,四是函数主成分聚类。本文将以第四类方法为基础进行改进与讨论。函数型数据本质上具有无限维特征,不能直接运用于聚类研究中,在一般情况下,函数型主成分分析法(Functional Principle Component Analysis,FPCA)可通过寻找恰当类别信息子空间进行聚类分析。
在多元函数型聚类分析中,常通过多元函数型主成分分析方法对多元函数型数据进行投影,以达到降维的目的,从而提高聚类效果。例如,Jacques 和Preda(2014)[3]通过主成分得分构建高斯混合模型,提出了首个基于主成分分析的多元函数型聚类算法;Schmutz 等(2020)[4]通过多元函数型主成分分析将数据拟合到特定群体的函数子空间中,提出了一种新的多元函数型数据聚类技术;Leva 等(2013)[5]通过研究心电图形态曲线,提出了一种多元函数型K-均值的聚类方法。也有学者以函数型主成分分析为主要研究方法,如孟银凤等(2022)[6]通过选择适当的函数主成分个数,对重构样本进行分裂式层次聚类,增强了结果的可解释性;武祺然(2022)[7]基于二维主成分分析提出一种新的多元函数型数据聚类算法。还有学者以多元函数型主成分的聚类方法来探究实际问题,如翟宇申(2018)[8]基于边际函数主成分分析,将提出的多元函数型聚类方法运用于空气污染数据;刘史诗等(2021)[9]通过函数型主成分分析法进行层次聚类,以探究新型冠状病毒的演变特征。以上的函数型主成分分析方法是基于高维线性平面空间对高维数据进行分析建模而提出的方法模型,其有利于解决线性平面空间中的函数型聚类问题。
统计研究中的数据变量已不只是局限于线性空间,其在线性空间中信息的利用性往往也受到限制。为突破这一限制,考虑将LLE 算法运用其中。在现有的聚类分析方法中,LLE 算法是一种有效处理流形降维的方法,本质上是非线性降维技术,也称作局部线性降维技术(Locally Linear Embedding,LLE)。目前对于LLE 算法的研究主要有两类:一是通过降维算法来提高数据集的识别及预测功能,如Yao等(2017)[10]提出了一种基于LLE的滤波器的特征选择方法,可在图像识别中得到应用;Shan 等(2015)[11]提出了基于改进的局部线性嵌入和支持向量机(ILLE-SVM)的软件缺陷预测模型。二是通过LLE算法提高解决实际问题的能力,如Xue和Qian(2010)[12]提出了基于局部线性嵌入(LLE)的语音分析;Singh等(2017)[13]提出了基于LLE-ISOMAP 算法的无线传感器网络定位等。该算法的优势主要有两点:一是其符合流形的算法结构能很好地保证数据集在空间中不受限制,在保留了原有数据特征的情况下又达到了降维的目的;二是LLE算法能通过求解权重矩阵进而约束函数型主成分定义下的求解模型及其数据的拓扑结构。本文以此为突破点,将LLE算法和PCA算法结合,并将LLE 算法的核心要点推广至FPCA 算法中,提出局部线性下的函数型主成分分析模型(LLE Function Principle Component Analysis,LFPCA)。LLE 模型和PCA 模型的结合可以在非线性空间中达到降维目的,进一步提高空间利用率,增强模型的解释力,提升聚类效果。鉴于此,本文先建立新算法下的模型,再结合函数型数据的特点从多个视角进行聚类分析,以展现模型的优势。
在构建函数型主成分分析的聚类模型时,需要考虑两个部分:一是曲线拟合和函数型主成分分析;二是融入LLE算法并改进函数型主成分定义,构建一个非线性空间上的函数型聚类新模型。
假设多元函数型数据集[x1(t),x2(t),…,xn(t)]是在连续集T上独立同分布的,t=[0,T],其中,样本是定义在L2(T) 上的实值曲线,i=1,2,…,n。由于在实际中,观测曲线的函数表达式是不能被直接观测到的,只能在有限的时间集中获得离散的观测结果,因此,在处理函数型数据时,第一个任务就是将这些离散观测值转换为函数,则可计算任何所需的参数值。若假设观测值是无误的,则可使用插值方法。然而,若有一些噪声需要去除,则需要重构函数形式并假设函数曲线,可以将其分解为有限维空间。假设曲线xi(t)可由既定空间下的一组基函数表示,有如下形式:
其中,φi(t)=(φi1(t),φi2(t),…,φip(t))′为一组基函数,ci=(ci1,ci2,…,cip)′为基函数系数向量。
传统的多元统计分析方法(如主成分分析)可以有效地将高维空间转换为低维空间,这种方法利用样本方差-协方差矩阵的特征值进行分解,并以系数向量的形式表示,从而实现降维的目的。在函数型主成分分析中,其特征向量所对应的特征函数记为β(s),s∈(t1,tT),且β(s)平方可积。
将样本函数xi(t)做归一化处理,其函数型主成分得分可定义为:
特征函数需符合单位正则化并与其他函数型主成分相互正交,记xi(s)与xi(t)的协方差函数为:
求解函数型主成分特征函数β(s)可等价于求解式(4)的特征方程:
其中,λ为特征函数的特征值。接下来可得特征函数β(t)的一个积分为:
在式(5)中,Vβ(t)表示通过对β(t)进行积分变换,并使用协方差函数covx(s,t)作为内核来计算得到的结果;V表示协方差算子。因此,可将式(5)表示为:
在多元函数型数据中,基函数展开的矩阵形式可表示为X=CΦ,则方差-协方差函数展开的矩阵形式为:
将特征基函数展开为:
式(7)中,b∈(b1,b2,…,bk)′。定义K阶对称矩阵H=,其中,H为R×R的矩阵,,将式(4)代入式(6)可得:
可将式(8)等式两边的Φ′(s)消去,通过矩阵的特征分解求得投影函数系数b,最终求得特征函数。将多元曲线xi的得分定义为lik,转化为多元函数(fk)的第k个投影特征。受文献[4]的启发,定义多元函数型主成分为:Li=Ci Hb。
LLE算法的目的与主成分分析一致,都是将高维数据转化为低维数据。在主成分分析中,降维的本质是特征分解;而LLE 模型是在流形领域进行研究的,其本质是先通过最近邻搜索构造权重矩阵,再进行部分特征值分解。流形学习本质上是将高维采样统计结果还原为低维流形结构,亦即先找到多维空间上的低维流形,再求出对应的嵌入映射形式,从而达到维数约简或数据可视化的效果[14]。LLE非线性降维技术(局部线性嵌入)的核心思想在于,在整个数据集的某个小范围内,数据是线性的,其中每个数据点xi都可以用其K-近邻数据点的线性组合来表示:
式(9)中,X=(x1,x2,…,xn)∈ℝk×n表示n维列向量的数据矩阵,xi为数据点,ωij为权重系数,ωi是n×n的权重系数矩阵,其中ωij是ωi的第j列。在函数型数据分析中,函数曲线之间的变化差异信息可由基函数系数矩阵C来表达,因此,基函数系数矩阵可分解为如下形式:
在LLE 算法中,先运用KNN 算法得到每个数据xi的k个近邻点。由于每条曲线有不同的观测值,因此为找到同一时间相似的观测值,可用KNN 算法形成多个不同种类的数据集以进行分类,其中Xi表示数据点xi形成的数据集。有如下形式:
此时,数据集还属于高维(无限维)数据集。设置距离参数i,正则化表达空间向量矩阵。由于权重系数矩阵可以反映数据集中的差异化信息,因此,求解权重系数,并提出约束条件来优化问题:
综上,结合式(9)和式(10),函数型主成分得分可表示为:Li=ωix′Hb。
本文主要通过新定义的函数型主成分得分来建立高斯混合模型(GMM),以近似多元函数型数据的概率密度函数[15],并运用EM算法求解GMM模型的待估参数。
在多元函数型聚类算法中,多元函数型数据X的概率密度函数可通过前p个函数型主成分得分的概率密度函数近似表示:
其中,fUj为Uj~N(0,ρj)的概率密度函数,ρj为第j个特征值,N(·)为正态分布,Lj(x)为多元函数型数据第j主成分得分。假设待估样本有q个类别,则该聚类算法的高斯混合模型可表示为:
其中,ak属于第k类概率(系数),pk为第l类保留的主成分个数;ρj,k为第k类对应的第j个特征值;Lj,k(x)为第k类第j主成分得分;θ为高斯混合模型的待估参数,θ={(ak,ρ1,k,…,ρPk,k),1 ≤k≤K};P=(P1,P2,…,PK)′。
通过EM 算法求解高斯混合模型的待估参数,其中,完全数据似然函数为:
通过EM 算法,可以用对数形式来估计参数θ,这可以通过式(13)实现:
接下来,在E步获得Q函数:
为验证实验算法的聚类性能,本文进行模拟实证检验,设置参数后,将本文的LFPCA模型聚类算法与B样条基函数的函数型K-均值聚类方法(Skmeans)[16]、基于特定组函数子空间的多元函数型聚类算法的FunHDDC方法[4]、多元函数主成分分析下的多元聚类算法Funclust方法[3]进行比较。聚类效果采用聚类纯度(Purity)、兰德指数(Rand Index,RI)和聚类精确度(Accuracy)三个指标进行评价。
参照文献[3]的随机模拟实验,模拟生成2种变量、3种类别的函数型数据,该模型使用三角函数和多项式函数构建,公式如下:
其中,Ui是服从N(1,1)的随机变量矩阵,i=1,2,3;ε(t)是服从N(0,1)分布的高斯白噪声;k代表类别数,且1 ≤k≤K,本实验中k分别取1、3、5,表示每个变量生成3类数据;t∈[0,21],每条曲线等距生成1001 个观测点,每类随机生成50条曲线。图1中,左边表示变量X1(t)生成的3类数据,右边表示变量X2(t)生成的3类数据。
图1 随机模拟曲线
实证检验采用3 个数据集,分别是Growth 数据集、Tecator 数据集和加拿大气象(Tem)数据集(见下页图2 和图3)。本文对选取的数据都进行了异常值处理,将数据集应用于算法中以进一步说明算法的可行性及有效性。
图2 Growth和Tecator数据集
图3 加拿大气象日平均温度聚类结果
Growth数据集来源于Berkeley Growth Study[17],其数据是R软件fda包中的一部分数据对象。数据集中共有93个样本,包含39名男孩和54名女孩在1~18岁不同年龄段的身高。不同的个体在不同的年龄段会经历不同的生长阶段,目标是通过聚类的方式体现身高增长曲线是否与性别相关。图2(a)中,横坐标表示年龄,纵坐标表示身高。Tecator 数据集是由UCI 数据库提供的标准数据集,Tecator 数据集旨在研究碎肉样品中的脂肪、水和蛋白质含量。该数据集共有215 个吸光度数据,每个样本包括100 个不同波长的吸光度数值,其中吸光率的波长介于850~1050mm。100 个肉类样品的吸光度曲线如图2(b)所示,图像通过3次B 样条对100 个样本数据进行拟合,其中,横坐标表示波长,纵坐标表示含量。加拿大气象数据是R软件fda包中的“canadian wheather”。数据主要记录加拿大1960—1994年的35 个气象站不同地点的日平均温度和日平均降水量。
在Growth数据集中,通过图像可以清晰地反映性别差异。聚类结果显示,男孩和女孩在不同年龄段的生长速度和生长巅峰时期存在差异。此外,还可以观察到男孩在后期的生长趋势明显优于女孩。
在Tecator 数据集中,标签占比少的类代表了脂肪含量低于20%的肉类样品曲线,占比多的类代表了脂肪含量高于20%的肉类样品曲线。在一般情况下,脂肪含量低于20%的肉类被认为是优质肉类。因此,215个产品中优质的肉类产品占据了大多数。
在Tem数据集中,根据图3(b)的聚类中心结果,可以将加拿大的35 个气象站点分为5 个不同的类别。从中可知,所有地区的年度温度都呈现明显的季节性变化,并且存在一定的趋势。由于地理位置不同,因此不同站点的平均气温数据会呈现不同的结果。
本文评价聚类方法的效果主要是基于聚类纯度(Purity)、兰德指数(Rand Index,RI)和聚类精确度(Accuracy)3个指标。定义如下:
在聚类纯度Purity 的表达式中,N表示样本数量,Ω={w1,w2,…,wk}表示聚类后实际的簇,C={c1,c2,…,cj,}表示真实类别,wk表示聚类后第k个簇中的所有样本,cj表示第j个类别中的真实类别。在兰德指数RI的表达式中,TP表示同类样本点在同一个簇中是同一类别的情况,FP表示两个非同类样本点在同一个簇中的类别关系,TN表示两个非同类样本点在不同簇中的类别关系,FN表示两个同类样本点在两个不同簇中的类别关系。在聚类精确度Accuracy的表达式中,Ncor表示聚类正确的样本个数,N表示总样本个数。3 个聚类指标的取值范围均为(0,1),其值越大表示效果越好。
针对图1 的随机模拟数据,在参数设置一致的基础上,将聚类算法与SKmeans、FunHDDC 和Funclust 进行比较。本文LFPCA 算法的参数设定如下:(1)利用两组随机模拟聚类数据集计算其聚类指标,选取类别数k=3;(2)聚类拟合过程使用3 次等距节点的B 样条基底拟合曲线来调节曲线的平滑程度,同时设置为20 个基底矩阵;(3)权重系数依LLE 降维算法的效果而设定。对于每个数据集,观测值之间的数据关系是直接可用的。针对图2,在进行聚类分析时,算法参数设定如下:(1)通过3次B样条基底拟合曲线,其中,需要控制基底数量来保证曲线的平滑程度,将Growth 数据集、Tecator 数据集、加拿大气象数据集的基底数量分别设置为20、25、20。(2)Growth 数据集中共有两种类别(男、女),取映射矩阵列数k=2;在Tecator数据集中,对于每个肉类样品,数据包括吸光度和水分(水)、脂肪和蛋白质的含量,取映射矩阵列数k=3;在加拿大气象数据集中,加拿大35个气象站分布于北极、大西洋、东部内陆、西部内陆和太平洋,因此,Tem 指标将站点分为5类,取映射矩阵列数k=5。(3)权重系数依据类别数k而确定。聚类评价指标值越大,代表聚类效果越好。
按照聚类方法的模型,结合模拟实验及实例数据得到如表1和表2所示的聚类评价结果。
表1 模拟实验的聚类评价结果
表2 FLPCA模型的聚类评价指标结果
从结果来看,随机模拟实验和3类数据集都表现出良好的聚类效果,但在实际中,聚类效果与k值的选取和数据的变化特征有关。其中,Tecator 数据集函数的连续特征最为明显,展现出了最佳的聚类效果;Growth 数据集从图像上看有一定的增长趋势,在实际的聚类效果上也较为优异;在Tem数据集中,由于地域差异,不同地区的日平均温度会存在差异,但经过算法的验证,其聚类指标展现了不错的聚类效果。
因此,在本文的算法应用中,无论是从聚类纯度(Purity)、兰德指数(RI)还是聚类精确度(Accuracy)的角度来分析,本文所提出的模型都能很好地展现出其聚类效果。综上,LFPCA模型的聚类性能得到了验证。
本文在函数型主成分分析的视角下讨论了函数型聚类问题。首先,在FPCA模型的基础上,运用LLE算法的核心要义对其主成分定义进行改进,提出一种LFPCA 的改进算法;其次,在求解算法的过程中,通过提出函数型主成分得分并结合EM 算法构造出高斯混合模型来近似函数型算法的概率密度函数,并求出待估参数直至收敛;最后,通过随机模拟实验和应用分析表明,相比于传统的PCA算法,新模型的算法适用性更强且应用更广泛,能更直接地表现聚类结果。算法模型的主要优势在于:(1)该算法模型突破了线性空间的限制,提高了数据结构的包容性;(2)构建了非线性空间上的聚类算法模型,实现了对函数型主成分分析中聚类问题的解决。随机模拟实验及应用分析的结果也验证了该算法聚类效果的优越性。
需要说明的是,本文仅讨论了LLE模型下的函数型主成分聚类问题,聚类方法也使用较常规的K-均值聚类方法。在后续的工作中,还有很多值得探讨的问题,例如,通过新算法的改进可以进一步考虑对函数型主成分变量个数的选择;再如,对于无监督学习下的聚类问题,给信息加少量标签,讨论半监督框架下的函数型主成分聚类问题。