常用无监督降维方法简述

简介: Unsupervised Dimension ReductionData with high dimension is always difficult to tackle. One hand is that it requires tremendous computation resource. On the other hand, it is not so objec

Unsupervised Dimension Reduction

Data with high dimension is always difficult to tackle. One hand is that it requires tremendous computation resource. On the other hand, it is not so objective as the one with low dimension. Therefore, dimension reduction is one of the key tricks to tackle it.

Linear Dimension Reduction

In order to reduce the dimension of samples, such as transform {xi}ni=1 into {zi}ni=1 with little lose of information, we can use linear transformation :

zi=Txi

Before doing that, it is necessary to make sure the average of training set {xi}ni=1 to be zero, i.e. centralization. So if it were not true, we should move the frame :
xixi1ni=1nxi

Principal Component Analysis, PCA

PCA, as you can see in the following contents, is the simplest linear dimension reduction method. Suppose that zi is the orthogonal projection of xi . Then we require that TTT=Im . By the same way in LS methods we try to reduce the lose of information as little as possible, i.e. we try to minimize:

i=1nTTTxixi2=tr(TCTT)+tr(C)

where C is the covariance of training set:
C=i=1nxixTi

In summary, PCA is defined as
maxTRm×dtr(TCTT)s.t.TTT=Im

Consider the eigenvalues of C :
Cξ=λξ

Define the eigenvalues and corresponded eigen vectors as λ1λ2λd0 and ξ1,,ξd respectively. Then we get :
T=(ξ1,,ξm)T

Here is a simple example:

n=100;
%x=[2*randn(n,1) randn(n,1)];
x=[2*randn(n,1) 2*round(rand(n,1))-1+randn(n,1)/3];
x=x-repmat(mean(x),[n,1]);
[t,v]=eigs(x'*x,1);

figure(1); clf; hold on; axis([-6 6 -6 6]);
plot(x(:,1),x(:,2),'rx');
plot(9*[-t(1) t(1)], 9*[-t(2) t(2)]);

这里写图片描述

Locality Preserving Projections

In PCA, the structure of clusters in origin training set may be changed, which is not true in locality preserving projections. It is another version of linear dimension reduction.
Define the similarity between xi and xi as Wi,i0 . When they are similar to large degree Wi,i is of a large value and vice versa. Since similarity is symmetric, we require Wi,i=Wi,i . There are several normal forms of similarity, such as the Gaussian Similarity:

Wi,i=exp(xixi22t2)

where t>0 is a tunable parameter.
For the purpose of holding the structure of clusters, it is necessary to hypothesis that similar xi would be transformed to similar zi . That is to say, we ought to minimize:
12i,i=1nWi,iTxiTxi2

However, to avoid the solution T=0 , we require
TXDXTTT=Im

where X=(x1,,xn)Rd×n , D is a diagonal matrix:
Di,i=i′′=1nWi,i′′0(i=i)(ii)

If we set L=DW , then we can represent our optimization goal as
minTRm×dtr(TXLXTTT)s.t.TXDXTTT=Im

So how to solve it? Consider the method we use in PCA:
XLXTξ=λXDXTξ

Then define the generalized eigenvalues and eigen vectors as λ1λ2λd0 and ξ1,,ξd respectively. Therefore
T=(ξd,ξd1,,ξdm+1)T
.
n=100;
%x=[2*randn(n,1) randn(n,1)];
x=[2*randn(n,1) 2*round(rand(n,1))-1+randn(n,1)/3];
x=x-repmat(mean(x),[n,1]);
x2=sum(x.^2,2);
W=exp(-(repmat(x2,1,n)+repmat(x2',n,1)-2*x*x'));
D=diag(sum(W,2)); L=D-W;
z=x'*D*x;
z=(z+z')/2;
[t,v]=eigs(x'*L*x,z,1,'sm');

figure(1); clf; hold on; axis([-6 6 -6 6]);
plot(x(:,1),x(:,2),'rx');
plot(9*[-t(1) t(1)], 9*[-t(2) t(2)]);

这里写图片描述

Kernalized PCA

Let us turn to methods of nonlinear dimension reduction. Due to the time limit, we may not analyze it as deep as the linear one.
When it comes to nonlinearity, kernal functions are sure to be highlighted. Take the Gaussian Kernal function for example:

K(x,x)=exp(xx22h2)

Here we will not take the eigenvalues of C into account as we did in PCA, but the eigenvalues of kernal matrix Kα=λα , where the (i,i) th element is K(xi,xi) . Hence KRn×n . Note that dimension of the kernal matrix K depends only on the number of samples.
However, centralization is necessary:
KHKH

where
H=In1n×n/n

1n×n is a matrix with all the elements to be one. The final outcome of kernalized PCA is:
(z1,.zn)=(1λ1α1,,1λmαm)THKH

where α1,,αm are m eigen vectors corresponded with m largest eigenvalues of HKH .
相关文章
|
存储 对象存储
使用Ceph对象存储的Amazon S3接口(基于nautilus版本)
使用Ceph对象存储的Amazon S3接口(基于nautilus版本)
953 0
|
10月前
|
云安全 监控 安全
AWS 云安全深度剖析:如何有效监测 SSH 暴力攻击
云基础设施多由基于Linux的机器主导,因其开源、低成本、可靠性和灵活性。然而,这些机器易受黑客攻击,尤其是通过SSH通道。SSH(安全外壳协议)用于加密连接,确保远程登录和文件传输的安全性。在AWS中,管理员通过SSH保护Linux实例的远程访问,但暴露SSH服务会增加暴力破解风险。攻击者利用暴力破解程序尝试获取访问权限,进而感染主机或窃取数据。为防御此类攻击,建议使用SIEM解决方案监控日志,检测异常登录行为,并阻止可疑IP地址。此外,避免公开暴露SSH服务,添加双因素身份验证等额外安全层,以增强云安全性。
229 17
|
11月前
|
机器学习/深度学习 存储 人工智能
【AI系统】TVM 实践案例
本文探讨了如何利用AI编译器在新硬件上部署神经网络,重点介绍了TVM的工作流程,包括模型导入、转换为Relay、TE和TIR、自动调优、编译为机器码等步骤。文章还讨论了算法层面上的算子优化、量化技术,以及编译层面对量化模型的解析和计算图优化。此外,还介绍了TVM的BYOC框架,允许硬件加速器供应商通过即插即用的方式集成代码工具,实现高效编译和优化。最后,文章提及了算子和网络仿真的重要性,确保新硬件平台上的模型正确性和性能。
295 2
|
机器人
北大推出全新机器人多模态大模型!面向通用和机器人场景的高效推理和操作
【6月更文挑战第29天】北京大学研发的RoboMamba是新型机器人多模态大模型,融合Mamba SSM的高效推理与视觉编码器,提升复杂任务处理能力。通过微调策略,仅用少量参数即可快速习得操作技能,实现在通用及机器人场景的高效运行,推理速度提升7倍。尽管面临泛化和可解释性挑战,RoboMamba展示了多模态模型的新潜力。[论文链接:](https://arxiv.org/abs/2406.04339)
344 1
|
JavaScript 前端开发 API
vue改变数组页面重新渲染的操作/那些操作不会重新渲染页面以及解决方法
vue改变数组页面重新渲染的操作/那些操作不会重新渲染页面以及解决方法
494 2
|
Dart 前端开发 测试技术
【Flutter前端技术开发专栏】Flutter开发中的代码质量与重构实践
【4月更文挑战第30天】随着Flutter在跨平台开发的普及,保证代码质量成为开发者关注的重点。优质代码能确保应用性能与稳定性,提高开发效率。关键策略包括遵循最佳实践,编写可读性强的代码,实施代码审查和自动化测试。重构实践在项目扩展时尤为重要,适时重构能优化结构,降低维护成本。开发者应重视代码质量和重构,以促进项目成功。
221 0
【Flutter前端技术开发专栏】Flutter开发中的代码质量与重构实践
|
存储 算法 Java
【JAVA】Java 中 Set集合常用方法
【JAVA】Java 中 Set集合常用方法
|
机器学习/深度学习 人工智能 搜索推荐
新商业模式创新下AIGC的发展
【1月更文挑战第13天】新商业模式创新下AIGC的发展
243 2
新商业模式创新下AIGC的发展
|
敏捷开发 设计模式 测试技术
【软件设计师备考 专题 】软件过程改进:提升软件开发效率和质量
【软件设计师备考 专题 】软件过程改进:提升软件开发效率和质量
684 0
|
BI 数据格式
如何快速将txt类型的日志文件转换为excel表格并进行数据分析报表统计图(如:饼图、折线图、柱状图)?
如何快速将txt类型的日志文件转换为excel表格并进行数据分析报表统计图(如:饼图、折线图、柱状图)?