【技术实现步骤摘要】
基于云计算的大规模高光谱数据张量环分解随机抽样方法
[0001]本专利技术属于高光谱数据处理领域,特别是一种基于云计算的大规模高光谱数据张量环分解随机抽样方法。
技术介绍
[0002]张量数据分解是高光谱数据应用的一个重要研究方向。高光谱数据的处理和分解多采用张量形式数据表示,这种表示方法可以最大限度的保留原始数据的时空特征。但由于张量数据多模态、维度高的特性,往往在实际的张量数据分解中存在单机瓶颈,常规计算机难以处理大规模的高光谱张量数据。张量数据tucker分解是大规模高光谱张量数据常用的方法。这种方法将张量数据分解为若干个低秩核心张量,其结果可以更好地反映张量数据的维度特征,便于人们进一步对张量数据进行处理。与小规模矩阵数据相比,大规模高光谱张量数据tucker分解有着以下难点:1)数据量大,不易读入内存进行全局的分解;2)数据维度高,处理过程计算次数多;3)数据索引大,往往超过单个文件系统最大文件大小;4)分解结果不唯一,张量数据tucker分解的结果多样,收敛判定较为困难;5)张量秩分布未定。因此针对常规矩阵的方法处理张量数据不能满足大规模高光谱张量数据处理的需要,需要针对大规模高光谱张量数据的特点,在云计算,分布式文件系统,随机化方法等技术的基础上,进一出发展分布式大规模高光谱张量数据分解技术,进而更有效处理和存储传统矩阵中很难处理的大规模张量高光谱数据。
[0003]近几年来,随着计算机存储技术和计算能力的发展,分布式计算技术作为大规模高光谱张量数据存储和处理的有效技术,是一种并行分块进行分解计 ...
【技术保护点】
【技术特征摘要】
1.一种基于云计算的大规模高光谱数据张量环分解随机抽样方法,其特征在于,包括以下步骤:步骤1,读取大规模高光谱张量数据,对其进行格式转换和划分;生成张量数据头文件,对数据文件进行分块部署到云平台;步骤2,根据头文件计算抽样数据的数量J,高斯分布初始化n个初始核心张量coreInitialize,将J和coreInitialize广播至每一个计算节点;步骤3,抽样张量数据;在计算节点中直方图抽样J次生成张量数据坐标idx1,将idx1坐标按数据存储排序为idx2,按idx2的顺序读取并映射为idx1顺序生成抽样张量步骤4,根据idx1对核心张量G抽样生成抽样张量根据计算节点确定未抽样核心张量Z,最小二乘法计算更新核心张量G;步骤5,判断是否达到迭代停止条件,若达到则停止迭代,将此次迭代的计算结果核心张量G作为最终结果存储在云计算平台;若未达到,将核心张量G广播作为coreInitialize,跳到步骤2继续计算。2.根据权利要求1所述的基于云计算的大规模高光谱数据张量环分解随机抽样方法,其特征在于,步骤1中,张量数据头文件的数据格式包括:数据文件数“file”、张量阶数“order”、张量每一阶的维度“dim”、张量每一阶的秩“rank”、数据类型“type”。3.根据权利要求1所述的基于云计算的大规模高光谱数据张量环分解随机抽样方法,其特征在于,步骤1所述读取大规模高光谱张量数据,对其进行格式转换和划分;生成张量数据头文件,对数据文件进行分块部署到云平台,具体如下:(1.1)对于n阶大规模高光谱张量数据A,其维度为I1×
I2×…×
I
n
,张量秩分布rank为{r1,r2,
…
,r
n
},生成的张量数据头文件格式为:分布式存储张量数据的文件数“file”=张量数据大小/4GB+1张量数据的阶数“order”=n张量数据每一阶的维度“dim”=I1,I2,
…
,I
n
张量每一阶的秩“rank”=r1,r2,
…
,r
n
或“null”张量数据的数据类型“type”=double、float、int、short、unsigned int;(1.2)对于张量数据A,数据划分方式具体如下:令张量数据A中的元素的第i个索引坐标为dim[i
‑
1]∈[0,I
i
),则张量数据A中元素坐标为(dim[n
‑
1],dim[n
‑
2],
…
,dim[0]),保持dim[1]和dim[0]坐标不变进行切片,将元素坐标转化为(idx,dim[1],dim[0]);其中,将张量数据A划分为file个文件,前file
‑
1个文件中第k个文件包含的数据范围为第file个文件中包含的数据范围为
(1.3)在分布式系统中上传命名规则和抽样数据方法,具体如下:头文件命名为“数据名.hdr”,数据文件命名为“数据名_文件序号”,头文件和数据文件上传至分布式文件系统同一目录下;抽样数据时,先根据头文件获取张量数据信息计算出所需数据的索引和文件序号,通过文件序号和索引抽取张量数据的特定元素。4.根据权利要求1所述的基于云计算的大规模高光谱数据张量环分解随机抽样方法,其特征在于,步骤2所述的根据头文件计算抽样数量J,J表示根据头文件中张量秩rank和张量阶数n计算的读取张量数据的元素数量,高斯分布初始化n个初始核心张量coreInitialize,将J和coreInitialize广播至每一个计算节点,具体步骤如下:(2.1)根据头文件中的张量阶数order、张量维度dim、张量秩rank三个参量,若则确定的抽样元素J数量为:若头文件中张量秩为空时,采用预估秩分布;预估张量秩分布采用固定系数和张量维度的乘积确定,系数第i次迭代计算生成的张量秩分布(2.2)通过高斯分布初始化n个核心张量coreInitialize,第i个核心张量大小为r
mod(i+n
‑
1,n)
×
J
×
r
i
;(2.3)广播数据至每一个计算节点,具体广播数据如下:broadcast1=(dim,rank,max(rank...
【专利技术属性】
技术研发人员:吴泽彬,宁伟凯,张毅,孙晋,徐洋,
申请(专利权)人:南京理工大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。