社区
下载资源悬赏专区
帖子详情
Nonlinear Component Analysis as a Kernel Eigenvalue Problem下载
weixin_39821051
2019-05-09 02:00:18
kernel kmeans算法的最原始文章,不错!
相关下载链接:
//download.csdn.net/download/ppower123456/2136233?utm_source=bbsseo
...全文
36
回复
打赏
收藏
Nonlinear Component Analysis as a Kernel Eigenvalue Problem下载
kernel kmeans算法的最原始文章,不错! 相关下载链接://download.csdn.net/download/ppower123456/2136233?utm_source=bbsseo
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
N
onli
n
ear
Component
Analysis
as a
Kernel
Eigenvalue
Problem
kernel
kmeans算法的最原始文章,不错!
CMatrix Class
Introduction ============ This is a class for symmetric matrix related computations. It can be used for symmetric matrix diagonalization and inversion. If given the covariance matrix, users can utilize the class for principal
component
analysis
(PCA) and fisher discriminant
analysis
(FDA). It can also be used for some elementary matrix and vector computations. Usage ===== It's a C++ program for symmetric matrix diagonalization, inversion and principal
component
anlaysis(PCA). To use it, you need to define an instance of CMatrix class, initialize matrix, call the public funtions, and finally, free the matrix. For example, for PCA, CMarix theMat; // define CMatrix instance float** C; // define n*n matrix C = theMat.allocMat( n ); Calculate the matrix (e.g., covariance matrix from data); float *phi, *lambda; // eigenvectors and
eigenvalue
s int vecNum; // number of eigenvectors (<=n) phi = new float [n*vecNum]; lambda = new float [vecNum]; theMat.PCA( C, n, phi, lambda, vecNum ); delete phi; delete lambda; theMat.freeMat( C, n ); The matrix diagonalization function can also be applied to the computation of singular value decomposition (SVD), Fisher lin
ear
discriminant
analysis
(FLDA) and
kernel
PCA (KPCA) if forming the symmetric matrix appropriately. For data of very high dimensionality (n), the computation of nxn matrix is very expensive on personal computer. But if the number m of samples (vectors) is smaller than dimenionality, the
problem
can be converted to the computation of mxm matrix. The users are recommended to read the paper KPCA for how to form mxm matrix: B. Sch枚lkopf, A. Smola, K.-R. M眉ller. N
onli
n
ear
component
analysis
as a
kernel
eigenvalue
problem
, Neural Computation, 10(5): 1299-1319, 1998. Example ======= Refer to `example' directory for a simple demonstration.
核主元分析KPCA的降维特征提取以及故障检测应用-
Kernel
Principal
Component
Analysis
(KPCA).zip
核主元分析KPCA的降维特征提取以及故障检测应用-
Kernel
Principal
Component
Analysis
.zip 本帖最后由 iqiukp 于 2018-11-9 15:02 编辑 核主元分析(
Kernel
principal
component
analysis
,KPCA)在降维、特征提取以及故障检测中的应用。主要功能有:(1)训练数据和测试数据的非线性主元提取(降维、特征提取) (2)SPE和T2统计量及其控制限的计算 (3)故障检测 参考文献: Lee J M, Yoo C K, Choi S W, et al. N
onli
n
ear
process monitoring using
kernel
principal
component
analysis
[J]. Chemical engineering science, 2004, 59: 223-234. 1. KPCA的建模过程(故障检测): (1)获取训练数据(工业过程数据需要进行标准化处理) (2)计算核矩阵 (3)核矩阵中心化 (4)特征值分解 (5)特征向量的标准化处理 (6)主元个数的选取 (7)计算非线性主成分(即降维结果或者特征提取结果) (8)SPE和T2统计量的控制限计算 function model = kpca_train % DESCRIPTION %
Kernel
principal
component
analysis
% % mappedX = kpca_train % % INPUT % X Training samples % N: number of samples % d: number of features % options Parameters setting % % OUTPUT % model KPCA model % % % Created on 9th November, 2018, by Kepeng Qiu. % number of training samples L = size; % Compute the
kernel
matrix K = computeKM; % Centralize the
kernel
matrix unit = ones/L; K_c = K-unit*K-K*unit unit*K*unit; % Solve the
eigenvalue
problem
[V,D] = eigs; lambda = diag; % Normalize the
eigenvalue
V_s = V ./ sqrt'; % Compute the numbers of principal
component
% Extract the n
onli
n
ear
component
if options.type == 1 % fault detection dims = find) >= 0.85,1, 'first'); else dims = options.dims; end mappedX = K_c* V_s ; % Store the results model.mappedX = mappedX ; model.V_s = V_s; model.lambda = lambda; model.K_c = K_c; model.L = L; model.dims = dims; model.X = X; model.K = K; model.unit = unit; model.sigma = options.sigma; % Compute the threshold model.beta = options.beta;% corresponding probabilities [SPE_limit,T2_limit] = comtupeLimit; model.SPE_limit = SPE_limit; model.T2_limit = T2_limit; end复制代码2. KPCA的测试过程: (1)获取测试数据(工业过程数据需要利用训练数据的均值和标准差进行标准化处理) (2)计算核矩阵 (3)核矩阵中心化 (4)计算非线性主成分(即降维结果或者特征提取结果) (5)SPE和T2统计量的计算 function [SPE,T2,mappedY] = kpca_test % DESCRIPTION % Compute the T2 statistic, SPE statistic,and the n
onli
n
ear
component
of Y % % [SPE,T2,mappedY] = kpca_test % % INPUT % model KPCA model % Y test data % % OUTPUT % SPE the SPE statistic % T2 the T2 statistic % mappedY the n
onli
n
ear
component
of Y % % Created on 9th November, 2018, by Kepeng Qiu. % Compute Hotelling's T2 statistic % T2 = diag)*model.mappedX'); % the number of test samples L = size; % Compute the
kernel
matrix Kt = computeKM; % Centralize the
kernel
matrix unit = ones/model.L; Kt_c = Kt-unit*model.K-Kt*model.unit unit*model.K*model.unit; % Extract the n
onli
n
ear
component
mappedY = Kt_c*model.V_s; % Compute Hotelling's T2 statistic T2 = diag)*mappedY'); % Compute the squared prediction error SPE = sum.^2,2)-sum; end复制代码 3. demo1: 降维、特征提取 源代码 % Demo1: dimensionality reduction or feature extraction % ---------------------------------------------------------------------% clc cl
ear
all close all addpath) % 4 circles load circledata % X = circledata; for i = 1:4 scatter:250*i,1),X:250*i,2)) hold on end % Parameters setting options.sigma = 5; %
kernel
width options.dims = 2; % output dimension options.type = 0; % 0:dimensionality reduction or feature extraction % 1:fault detection options.beta = 0.9; % corresponding probabilities options.cpc = 0.85; % Principal contribution rate % Train KPCA model model = kpca_train; figure for i = 1:4 scatter:250*i,1), ... model.mappedX:250*i,2)) hold on end 复制代码(2)结果 (分别为原图和特征提取后的图) demo1-1.png demo1-2.png 4. demo2: 故障检测(需要调节核宽度、主元贡献率和置信度等参数来提高故障检测效果) (1)源代码 % Demo2: Fault detection % X: training samples % Y: test samples % Improve the performance of fault detection by adjusting parameters % 1. options.sigma = 16; %
kernel
width % 2. options.beta % corresponding probabilities % 3. options.cpc ; % principal contribution rate % ---------------------------------------------------------------------% clc cl
ear
all close all addpath) % X = rand; Y = rand; Y = rand 3; Y = rand*3; % Normalization % mu = mean; % st = std; % X = zscore; % Y = bsxfun,st); % Parameters setting options.sigma = 16; %
kernel
width options.dims = 2; % output dimension options.type = 1; % 0:dimensionality reduction or feature extraction % 1:fault detection options.beta = 0.9; % corresponding probabilities options.cpc = 0.85; % principal contribution rate % Train KPCA model model = kpca_train; % Test a new sample Y [SPE,T2,mappedY] = kpca_test; % Plot the result plotResult; plotResult; 复制代码(2)结果(分别是SPE统计量和T2统计量的结果图) demo2-1.png demo2-2.png 附件是基于KPCA的降维、特征提取和故障检测程序源代码。如有错误的地方请指出,谢谢。
Kernel
Principal
Component
Analysis
.zip KPCA
Adaptive
kernel
principal
component
s tracking.pdf
Adaptive
onli
ne algorithms for simultaneously extracting n
onli
n
ear
eigenvectors of
kernel
principal
component
analysis
(KPCA) are de- veloped. KPCA needs all the observed samples to represent basis functions, and the same scale of
eigenvalue
problem
as the number of samples should be solved. This paper reformulates KPCA and deduces an expression in the Euclidean space, where an algorithm for tracking generalized eigenvectors is applicable. The developed algorithm here is least mean squares (LMS)-type and recursive least squares (RLS)-type. Numerical example is then illustrated to sup- port the
analysis
.
核主元分析KPCA的降维特征提取以及故障检测应用-KPCA_v2.zip
核主元分析KPCA的降维特征提取以及故障检测应用-KPCA_v2.zip 本帖最后由 iqiukp 于 2018-11-9 15:02 编辑 核主元分析(
Kernel
principal
component
analysis
,KPCA)在降维、特征提取以及故障检测中的应用。主要功能有:(1)训练数据和测试数据的非线性主元提取(降维、特征提取) (2)SPE和T2统计量及其控制限的计算 (3)故障检测 参考文献: Lee J M, Yoo C K, Choi S W, et al. N
onli
n
ear
process monitoring using
kernel
principal
component
analysis
[J]. Chemical engineering science, 2004, 59: 223-234. 1. KPCA的建模过程(故障检测): (1)获取训练数据(工业过程数据需要进行标准化处理) (2)计算核矩阵 (3)核矩阵中心化 (4)特征值分解 (5)特征向量的标准化处理 (6)主元个数的选取 (7)计算非线性主成分(即降维结果或者特征提取结果) (8)SPE和T2统计量的控制限计算 function model = kpca_train % DESCRIPTION %
Kernel
principal
component
analysis
% % mappedX = kpca_train % % INPUT % X Training samples % N: number of samples % d: number of features % options Parameters setting % % OUTPUT % model KPCA model % % % Created on 9th November, 2018, by Kepeng Qiu. % number of training samples L = size; % Compute the
kernel
matrix K = computeKM; % Centralize the
kernel
matrix unit = ones/L; K_c = K-unit*K-K*unit unit*K*unit; % Solve the
eigenvalue
problem
[V,D] = eigs; lambda = diag; % Normalize the
eigenvalue
V_s = V ./ sqrt'; % Compute the numbers of principal
component
% Extract the n
onli
n
ear
component
if options.type == 1 % fault detection dims = find) >= 0.85,1, 'first'); else dims = options.dims; end mappedX = K_c* V_s ; % Store the results model.mappedX = mappedX ; model.V_s = V_s; model.lambda = lambda; model.K_c = K_c; model.L = L; model.dims = dims; model.X = X; model.K = K; model.unit = unit; model.sigma = options.sigma; % Compute the threshold model.beta = options.beta;% corresponding probabilities [SPE_limit,T2_limit] = comtupeLimit; model.SPE_limit = SPE_limit; model.T2_limit = T2_limit; end复制代码2. KPCA的测试过程: (1)获取测试数据(工业过程数据需要利用训练数据的均值和标准差进行标准化处理) (2)计算核矩阵 (3)核矩阵中心化 (4)计算非线性主成分(即降维结果或者特征提取结果) (5)SPE和T2统计量的计算 function [SPE,T2,mappedY] = kpca_test % DESCRIPTION % Compute the T2 statistic, SPE statistic,and the n
onli
n
ear
component
of Y % % [SPE,T2,mappedY] = kpca_test % % INPUT % model KPCA model % Y test data % % OUTPUT % SPE the SPE statistic % T2 the T2 statistic % mappedY the n
onli
n
ear
component
of Y % % Created on 9th November, 2018, by Kepeng Qiu. % Compute Hotelling's T2 statistic % T2 = diag)*model.mappedX'); % the number of test samples L = size; % Compute the
kernel
matrix Kt = computeKM; % Centralize the
kernel
matrix unit = ones/model.L; Kt_c = Kt-unit*model.K-Kt*model.unit unit*model.K*model.unit; % Extract the n
onli
n
ear
component
mappedY = Kt_c*model.V_s; % Compute Hotelling's T2 statistic T2 = diag)*mappedY'); % Compute the squared prediction error SPE = sum.^2,2)-sum; end复制代码 3. demo1: 降维、特征提取 源代码 % Demo1: dimensionality reduction or feature extraction % ---------------------------------------------------------------------% clc cl
ear
all close all addpath) % 4 circles load circledata % X = circledata; for i = 1:4 scatter:250*i,1),X:250*i,2)) hold on end % Parameters setting options.sigma = 5; %
kernel
width options.dims = 2; % output dimension options.type = 0; % 0:dimensionality reduction or feature extraction % 1:fault detection options.beta = 0.9; % corresponding probabilities options.cpc = 0.85; % Principal contribution rate % Train KPCA model model = kpca_train; figure for i = 1:4 scatter:250*i,1), ... model.mappedX:250*i,2)) hold on end 复制代码(2)结果 (分别为原图和特征提取后的图) demo1-1.png demo1-2.png 4. demo2: 故障检测(需要调节核宽度、主元贡献率和置信度等参数来提高故障检测效果) (1)源代码 % Demo2: Fault detection % X: training samples % Y: test samples % Improve the performance of fault detection by adjusting parameters % 1. options.sigma = 16; %
kernel
width % 2. options.beta % corresponding probabilities % 3. options.cpc ; % principal contribution rate % ---------------------------------------------------------------------% clc cl
ear
all close all addpath) % X = rand; Y = rand; Y = rand 3; Y = rand*3; % Normalization % mu = mean; % st = std; % X = zscore; % Y = bsxfun,st); % Parameters setting options.sigma = 16; %
kernel
width options.dims = 2; % output dimension options.type = 1; % 0:dimensionality reduction or feature extraction % 1:fault detection options.beta = 0.9; % corresponding probabilities options.cpc = 0.85; % principal contribution rate % Train KPCA model model = kpca_train; % Test a new sample Y [SPE,T2,mappedY] = kpca_test; % Plot the result plotResult; plotResult; 复制代码(2)结果(分别是SPE统计量和T2统计量的结果图) demo2-1.png demo2-2.png 附件是基于KPCA的降维、特征提取和故障检测程序源代码。如有错误的地方请指出,谢谢。
Kernel
Principal
Component
Analysis
.zip KPCA
下载资源悬赏专区
12,790
社区成员
12,325,324
社区内容
发帖
与我相关
我的任务
下载资源悬赏专区
CSDN 下载资源悬赏专区
复制链接
扫一扫
分享
社区描述
CSDN 下载资源悬赏专区
其他
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章