CN107958266A - 一种基于mpi并行将连续属性进行离散化的方法 - Google Patents

一种基于mpi并行将连续属性进行离散化的方法 Download PDF

Info

Publication number
CN107958266A
CN107958266A CN201711164678.3A CN201711164678A CN107958266A CN 107958266 A CN107958266 A CN 107958266A CN 201711164678 A CN201711164678 A CN 201711164678A CN 107958266 A CN107958266 A CN 107958266A
Authority
CN
China
Prior art keywords
attribute
data
parallel
communication
class
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711164678.3A
Other languages
English (en)
Inventor
胡峰
胡宗容
刘柯
张清华
高延雨
邓维斌
于洪
邓欣
张其龙
欧阳卫华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201711164678.3A priority Critical patent/CN107958266A/zh
Publication of CN107958266A publication Critical patent/CN107958266A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明请求保护一种基于MPI并行将连续属性进行离散化的方法,涉及粗糙集,离散化,并行计算,聚类等概念。首先,读取信息系统的数据,将信息系统水平划分为m个样本数据子集,通过通信分配给n个节点;其次,每个节点并行对数据进行归一化处理,得到新的数据,再并行对属性进行聚类,通过通信合并聚类结果;最后根据聚类结果进行区间划分,并对不同的区间进行属性编码,从而得到连续属性离散化的结果,构造出属性离散化后的信息系统,从而能利用粗糙集知识进行属性约简等后续工作。本发明结合了粗糙集连续属性离散化方法和MPI并行计算,从而使得连续属性离散化过程可以并行求得,提高算法的效率。

Description

一种基于MPI并行将连续属性进行离散化的方法
技术领域
本发明属于一种数据挖掘,粗糙集,并行计算领域,基于MPI利用聚类并 行将连续属性离散化的方法。
背景技术
随着近年来数据爆炸式增长,并行技术显得越来越重要,并行计算的主要 目的是节省大型复杂问题或海量数据的处理时间,整合“廉价”的计算机资源 组建并行计算平台克服单机计算性能瓶颈和单机存储空间的限制。
并行计算是指在并行计算机或并行计算平台上将一个大型计算任务拆分为 多个子任务,分配到各处理器,各处理器之间相互协同完成子任务,从而达到 提高求解效率或完成大规模任务的目的。待处理问题具有并行性是运用并行计 算优化解决方案的关键。并行计算分为时间并行和空间并行,时间并行实际上 指的是流水线技术,空间并行则为多个处理器同时参与计算,是并行计算的主 要研究问题。并行计算又可以分为数据并行和任务并行,让多个处理器参与计 算,提高效率和性能。
消息传递接口(Message Passing Interface,简称MPI)自20世纪90年 代以来一直是高性能计算领域并行程序开发的事实标准,目前大部分高性能计 算平台均提供MPI并行环境。MPI是目前最重要的并行编程工具,它具有移植性 好,功能强大,效率高等多种优点,而且有多种不同的免费高效实用的实现版 本,几乎所有的并行计算机厂商都提供对它的支持,这是其它所有的并行编程 环境都无法比拟的。
MPI于1994年产生,虽然产生时间相对较晚,由于它吸收了其它多种并行 环境的优点,同时兼顾性能功能移植性等特点,在短短的几年内便迅速普及成 为消息传递并行编程模式的标准。这也从一个方面说明了MPI的生命力和优越 性,MPI其实就是一个库,共有上百个函数调用接口,在C语言中可以直接对这 些函数进行调用,MPI提供的调用虽然很多,但最常使用的只有6个,只需通过 使用这6个函数就可以完成几乎所有的通信功能。
MPI的特性:(1)容易使用,可移植性好。几乎所有的并行计算机都支持 MPI框架,任何支持进程间通信的并行计算机都支持MPI的程序设计。(2)有完 善的异步通信机制。每个并行进程有自己独立的内存空间,能够保证在不和其 他并行的进程发生冲突下进行进程间通信,解决数据同步的问题,实现了真正 的异步通信。(3)显式的数据交换。用户必须通过显式的发送和接收消息来实 现并行进程间的消息和数据交换。(4)并行粒度大。消息传递模型的程序设计 需要很好地分解任务,适应计算密集型应用,为减少通信消耗,适用于并行计 算粒度大的大规模可扩展并行算法。
现实生活中信息系统的属性不仅多样化,维度高,而且包含噪音,冗余和 不相关属性,为了解决数据计算的复杂性和准确性问题,消除噪音等对计算过 程和最终结果造成的影响,减少规则抽取算法的计算时间,从而看清反应数据 本质特征的分布情况,属性约简必不可少。但粗糙集只能处理离散数据,故连 续属性离散化显得尤为重要。近年来,粗糙集理论成为处理不确定信息的有效 的数学工具。
粗糙集:该理论由波兰学者Pawlak教授于1982年提出,是一种能有效处 理不精确、不确定和模糊信息的数学理论。目前,粗糙集已成功应用到机器学 习、数据挖掘、智能数据分析和控制算法获取等领域。粗糙集理论的主要思想 是利用已知的知识库,将不精确或不确定的知识用已知知识库中的知识来(近似) 刻画。粗糙集可以不依赖先验知识,根据数据的决策与分布进行知识发现。
连续属性离散化:离散化是处理连续属性最常用的方法,连续属性的离散 化方法也可以被称为分箱法,这种方法将一组连续的值根据一定的规则分别放 到其术语的集合中,即将连续属性的邻近值分组,形成有限个区间。离散化技 术有很多方法可以实现,如等区间宽度、等频率、等熵、或聚类等,可以根据 如何对数据进行离散化加以分类,可以根据是否使用类信息或根据进行方向(即 自顶向下或自底向上)分类。如果离散化过程使用决策信息,则称它为监督离散 化,否则是非监督的。如果首先找出一点或几个点(称作分裂点或割点)来划分 整个属性区间,然后在结果区间上递归地重复这一过程,则称它为自顶向下离 散化或分裂。自底向上离散化或合并正好相反,首先将所有的连续值看作可能 的分裂点,通过合并相邻域的值形成区间,然后递归地应用这一过程于结果区 间。
在进行数据处理时,先对数据进行离散化有很多好处:算法需要,例如粗 糙集本身只能处理离散数据,因此利用粗糙集处理连续数据时,首先要将其离 散化;离散化可以有效地克服数据中隐藏的缺陷,使模型结果更加稳定;有利 于对非线性关系进行诊断和描述,对连续型数据进行离散处理后,自变量和目 标变量之间的关系变得清晰化。
聚类:聚类是数据挖掘中很重要的一个概念,将物理或抽象对象的集合分 成由类似的对象组成的多个类的过程被称为聚类。由聚类所生成的簇是一组数 据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相 异。聚类分析又称群分析,它是研究分类问题的一种统计分析方法。聚类分析 起源于分类学,但是聚类不等于分类。聚类与分类的不同在于,聚类所要求划 分的类是未知的。由于聚类得特征和离散化类似,因此可以用聚类的方法来将 连续属性离散化。
k均值算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指 标,即认为两个对象的距离越近,其相似度就越大,并将它们归为一类。该算 法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目 标。对连续属性进行k均值聚类,进而可以将属性离散化成为不同的类,之后 可以采用粗糙集约减理论进行属性约减。
本发明针对应用粗糙集理论时,只能处理离散数据,不能处理连续数据的 情况,数据离散化是应用粗糙集理论不可或缺的步骤,而且离散化可以有效地 减弱极端值和异常值的影响,也有利于数据的后续处理。信息系统中属性多样 化,维度高,数据量大,现有的连续属性离散化方法普遍存在着计算量大、计 算复杂度高、断点数多、效率低等问题,提出了一种利用聚类基于MPI并行将 连续属性离散化的方法,来解决数据计算的复杂性和准确性问题,提高计算性 能和计算效率。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种解决数据计算的复杂性和 准确性问题,提高计算性能和计算效率的基于MPI并行将连续属性进行离散化 的方法。本发明的技术方案如下:
一种基于MPI并行将连续属性进行离散化的方法,其包括以下步骤:
1)、首先,读取信息系统的数据,将信息系统水平划分为m个样本数据子集, 通过通信分配给n个节点;2)、其次,每个节点并行对数据进行归一化处理, 得到新的数据,再并行对新数据属性进行聚类,通过通信合并聚类结果;3)、 最后根据聚类结果进行区间划分,并对不同的区间进行属性编码,从而得到连 续属性离散化的结果,构造出属性离散化后的信息系统,再利用粗糙集知识进 行属性约简。
进一步的,所述步骤1)的信息系统包含条件属性和决策属性,数据集的条 件属性集,形式为{条件属性1,条件属性2,……条件属性p},信息系统是一 个四元组IS=(U,A,V,f),其中U表示领域问题中所有对象的集合,称为论域;A=C ∪D是属性集合,子集C和D分别表示条件属性集和决策属性集;
Va是属性a的值域;f:U×A→V是一个信息函数,对一个对象的每一个属性 赋予一个信息值,即x∈U,有f(x,a)∈Va。
进一步的,所述步骤1)任务分配时,基于MPI进行并行程序设计时可以根 据各节点间的相互关系将其分为对等程序设计模型和主从程序设计模型,采用 对等程序设计模型进行程序设计时,各个节点相互协同共同完成任务,节点间 不相互依赖;采用主从程序设计模型时,分为主节点和从节点,主节点负责分 配计算任务,协调从节点进度和收集计算结果,从节点接收相应的任务并计算, 协同完成任务。
进一步的,所述归一化方法采用min-max法,也称为离差标准化,是对原 始数据的线性变换,使结果值映射到[0,1]之间,转换函数如下:
其中max为样本数据的最大值,min为样本数据的最小值。
进一步的,所述步骤2)采用k均值算法进行聚类,采用k均值算法以欧式 距离作为相似度测度,它是求对应某一初始聚类中心向量V最优分类,使得评 价指标J最小,k均值算法是采用距离作为相似性的评价指标,即认为两个对象 的距离越近,其相似度就越大;并行对属性聚类时,先设置区间数目,即k值, 选定区间数目后,选择k个类中心,计算样本的属性值到各个类中心的距离, 找出最短距离,即
if l1<l2 样本属于类c1
else 样本属于类c2
从而实现归类,直到所有的属性值都归类,取各个簇类的点的均值作为新的 类中心,循环计算距离并归类,直到样本所属的簇不再发生改变。
进一步的,所述步骤3)合并属性聚类结果后,节点通信采用标准通信模式 和集合通信模式,标准通信模式属于阻塞通信,消息发送方的send调用需要接 收方的recv调用的配合才可以完成MPI集合通信可以将自己创建的节点作为一 个通信子集,让消息和数据只在这个通信子集中进行传递,不同于点对点通信, 集合通信都是阻塞的,因此需要集合中所有并行进程都执行,执行完后才能做 下一个操作,否则会陷入无限等待;集合通信的方向可以分为一对多通信,多 对一通信和多对多通信三种模式,同步功能用来协调进程的执行进度,相当于 设置了一个同步点,直到所有进程都执行到该同步点后才能继续操作,计算功 能是指进程对接收到的数据进行处理。
进一步的,所述步骤3)连续属性离散化阶段,将聚类结果进行合并,聚类 结果的合并操作即根据划分的任务,对各节点归类的结果简单拼接整合;在连 续属性离散化阶段,首先,根据聚类结果,每一个聚类对应一个区间,将属性 值划分成不同的区间,然后对区间进行属性编码,根据区间个数,从0开始编 码,用整数表示各个区间,即0,1,2,…,k,最后,将得到的结果构造出连续属 性离散化后的信息系统。
本发明的优点及有益效果如下:
本发明采用基于等价类水平划分的方式,使得同一个等价类的计算在同一个 节点内,减少节点间的通信开销,从而提高整体的计算效率。将传统的属性约 简方法与MPI相结合,采用并行方式得到一种更有效、精度更高的约简结果, 求属性约简的方法直观、易于实现的同时,解决了效率问题,使之能够处理大 规模数据集。
附图说明
图1是本发明提供优选实施例基于MPI的并行粗糙集属性离散化方法流程 框图;
图2主从模式设计模型;
图3对等模式设计模型。
图4节点任务分配图;
图5并行聚类流程图;
图6MPI通信模式流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
图1为本发明流程框图。包括如下步骤:
(1)获取数据,分配并行任务阶段。
本阶段主要是读入信息系统并将信息系统的数据分块,划分并行任务,步 骤如下:
①读入信息系统。
从UCI实验数据平台(网址:)下载数 据集,数据集的形式为{条件属性1,条件属性2……,条件属性n,决策属性}, 其中条件属性集为{条件属性1,条件属性2……,条件属性n},决策属性集为{决 策属性1,决策属性2,……决策属性p}。
一个四元组IS=(U,A,V,f)是一个信息系统(也叫决策表),其中U表示领域问 题中所有对象的集合,称为论域;A=C∪D是属性集合,子集C和D分别表示条件属 性集和决策属性集。
②数据分块。
根据信息系统的定义,由主节点读入信息系统的数据,根据数据的分布, 将数据分块,将信息系统水平划分为p个数据子集。
③任务分配。
将这p个数据子集分配给不同的节点,以便下一步计算。任务分配时采用 主从模式,由主节点分配数据子集给从节点。
由于样本数据子集的顺序不影响计算结果,故可以采用顺序分配或随机分 配方式,哪一个节点处理的快,就可以多分配样本数据子集,每一次将样本数 据子集分配给空闲的节点,且各节点的结果不分先后顺序。节点任务分配如图4。
下面举一个简单的例子说明如何分配并行任务。
比如,3个节点处理7个样本数据子集,先将其中三个样本数据子集分给三 个节点,节点1,节点2,节点3。若节点2先处理完,还有四个样本数据子集 未处理,则继续给节点2分配任务,若节点3处于空闲,则给节点3分配任务, 以此类推,直到所有样本数据子集处理完。
(2)并行聚类阶段。
本阶段分为归一化、并行属性聚类和合并聚类结果三个步骤:
①归一化。
采用min-max的归一化方法,也称为离差标准化,即对原始数据进行线性 变换使结果值映射到[0,1]之间。转换函数如下:
其中max为样本数据的最大值,min为样本数据的最小值。
②并行属性聚类,流程图如图5。
集群中的每一个节点根据分配到的任务,采用k均值算法对属性并行聚类。 k均值算法是基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两 个对象的距离越近,其相似度就越大。
k均值算法中涉及到的主要参数和计算方法有:k值,即原始数据最终要分 成的类的个数;k个聚类的初始中心,随机选择;对任意一个样本,求其到k个 中心的距离,在计算距离时,在欧氏空间中一般选用欧几里得距离,即:
其中,i=(xi1,xi2,…,xin)和j=(xj1,xj2,…,xjn)是两个n维数据对象。
并行对属性聚类时,先设置区间数目,即k值,选定区间数目后,选择k 个类中心,计算样本的属性值到各个类中心的距离,找出最短距离,即
if l1<l2 样本属于类c1
else 样本属于类c2
从而实现归类,直到所有的属性值都归类,取各个簇类的点的均值作为新 的类中心,循环计算距离并归类,直到样本所属的簇不再发生改变。考虑到样 本属性值之间可能有关联,将明显有关联的属性可以一起计算距离,而相对独 立的属性单独计算距离。
③合并聚类。
各从节点与主节点进行通信,合并属性聚类结果。进程通信方式采用标准 模式。所谓合并聚类结果,即将所有聚类结果进行简单拼接整合,得到整个信 息系统的聚类。
节点通信采用标准通信模式和集合通信模式。标准通信模式属于阻塞通信, 消息发送方的send调用需要接收方的recv调用的配合才可以完成。标准模式 的阻塞通信由MPI环境自身决定是否要对要发送的消息进行缓冲,如果MPI缓 冲了发送的数据,即使接收端尚未启动接收动作,发送动作也可立即返回。处 于性能和资源优化考虑,MPI环境会提供一定数量的缓冲区,超过之后则需阻塞 直到有相应的接收操作收取完毕数据后才可返回。也就是说阻塞通信中,发送 端完成与否不仅取决于本地进程的状态,还要受到远端接收进程的状态左右。
集合通信模式可以将自己创建的节点作为一个通信子集,让消息和数据只 在这个通信子集中进行传递,不同于点对点通信,集合通信都是阻塞的,因此 需要集合中所有并行进程都执行,执行完后才能做下一个操作,否则会陷入无 限等待,相对于点对点通信,集合通信更能发挥并行计算效率。
(3)连续属性离散化阶段。
本阶段分为区间划分、并行属性编码和构造信息系统三个步骤:
①区间划分。
根据聚类结果,每一个聚类对应一个区间,将属性值划分成不同的区间。
②并行属性编码。
对不同区间的数据进行属性编码,根据区间个数,从0开始编码,用整数 表示各个区间,即(0,1,2,…,k)。
③构造信息系统。
将得到的结果构造出连续属性离散化后的信息系统。
以下举例对本发明的实施作进一步说明。本实例在以本发明技术方案为前 提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范 围不限于下述的实例。
表1信息系统IS
步骤(1)获取数据,分配并行任务。读入信息系统并将信息系统的数据分 块,划分并行任务。
①读入信息系统,数据分块。
读入信息系统的数据,将数据分块,如,每三个样本数据子集为一块,则 将信息系统IS水平划分成4块,分为4个样本数据子集,即
表2.1数据子集IS1
表2.2数据子集IS2
表2.3数据子集IS3
表2.4数据子集IS4
②任务分配。
将信息系统水平划分为p个数据子集,并采用主从模式将这p个数据子集 分配给不同的节点。假设将IS每三个数据对象划分为一个数据子集,则共有4 个数据子集IS1,IS2,IS3,IS4,分配给3个节点,计算时采用对等模式,即主 节点也分配任务,这样,节点1为主节点,先分配IS1给节点2,IS2给节点3, IS3给节点1,IS4给节点2,完成任务的分配。
步骤(2)并行聚类。根据前一阶段分配好的任务,各个计算节点并行将数 据进行归一化处理,然后对属性并行聚类,最后对各节点的计算结果进行整合, 得到原信息系统的属性聚类结果。
①归一化。
采用min-max的归一化方法,转换函数如下:
其中xmax为样本数据的最大值,即xmax=120,xmin为样本数据的最小值,即xmin=20。则
那么,样本数据的a属性值分别为:
同理,
x4 *=0.35 x5 *=0.75 x6 *=1.00 x7 *=0.35
x8 *=0.50 x9 *=0.00 x10 *=0.65
即各个样本数据子集如下:
表3.1数据子集IS1 *
表3.2数据子集IS2 *
表3.3数据子集IS3 *
表3.4数据子集IS4 *
②并行属性聚类。
集群中的每一个节点根据分配到的任务,采用k均值算法对属性并行聚类。 并行对属性聚类时,先设置区间数目,即k值,选定区间数目后,选择k个类 中心,计算样本的属性值到各个类中心的距离,找出最短距离,当各个属性之 间相互独立时,对各个属性分别进行聚类即可。如对a属性进行聚类,k=2,选 定2个类中心C1=0.20,C2=0.50,则计算每一个样本中a属性的值与类中心的距 离,并将样本归类。
则x1与类中心C1的距离
l1=|0.20-0.20|=0.00
与类中心C2的距离
l1’=|0.20-0.50|=0.30
l1<l1’,故x1属于C1类。
x2与类中心C1的距离
l2=|0.40-0.20|=0.20
与类中心C2的距离
l2’=|0.40-0.50|=0.10
l2<l2’,故x2属于C2类。
同理,x3属于C2类,x4属于C2类,x5属于C2类,x6属于C2类,x7属于C2类, x8属于C2类,x9属于C1类,x10属于C2类。
更新类中心,即
计算各个样本中a属性的值与新的类中心的距离,并将样本归类。则x1与 类中心C1 *的距离
l1=|0.20-0.10|=0.10
与类中心C2 *的距离
l1’=|0.20-0.6125|=0.4125
l1<l1’,故x1属于C1 *类。
x2与类中心C1 *的距离
l2=|0.40-0.10|=0.30
与类中心C2 *的距离
l2’=|0.40-0.6125|=0.2125
l2<l2’,故x2属于C2 *类。
同理,x3属于C2 *类,x4属于C1 *类,x5属于C2 *类,x6属于C2 *类,x7属于C1 *类,x8属于C2 *类,x9属于C1 *类,x10属于C2 *类。
更新类中心,即
计算各个样本中a属性的值与新的类中心的距离,并将样本归类。则x1与 类中心C1 *的距离
l1=|0.20-0.225|=0.025
与类中心C2 *的距离
l1’=|0.20-0.70|=0.50
l1<l1’,故x1属于C1 *类。
x2与类中心C1 *的距离
l2=|0.40-0.225|=0.175
与类中心C2 *的距离
l2’=|0.40-0.70|=0.3
l2>l2’,故x2属于C1 *类。
同理,x3属于C2 *类,x4属于C1 *类,x5属于C2 *类,x6属于C2 *类,x7属于C1 *类,x8属于C2 *类,x9属于C1 *类,x10属于C2 *类。
更新类中心,即
计算各个样本中a属性的值与新的类中心的距离,并将样本归类。则x1与 类中心C1 *的距离
l1=|0.20-0.26|=0.06
与类中心C2 *的距离
l1’=|0.20-0.76|=0.56
l1<l1’,故x1属于C1 *类。
x2与类中心C1 *的距离
l2=|0.40-0.26|=0.14
与类中心C2 *的距离
l2’=|0.40-0.76|=0.36
l2>l2’,故x2属于C1 *类。
同理,x3属于C2 *类,x4属于C1 *类,x5属于C2 *类,x6属于C2 *类,x7属于C1 *类,x8属于C1 *类,x9属于C1 *类,x10属于C2 *类。
更新类中心,即
计算各个样本中a属性的值与新的类中心的距离,并将样本归类。则x1与 类中心C1 *的距离
l1=|0.20-0.30|=0.10
与类中心C2 *的距离
l1’=|0.20-0.825|=0.625
l1<l1’,故x1属于C1 *类。
x2与类中心C1 *的距离
l2=|0.40-0.30|=0.10
与类中心C2 *的距离
l2’=|0.40-0.825|=0.425
l2>l2’,故x2属于C1 *类。
同理,x3属于C2 *类,x4属于C1 *类,x5属于C2 *类,x6属于C2 *类,x7属于C1 *类,x8属于C1 *类,x9属于C1 *类,x10属于C2 *类,样本分类未发生改变,循环结束, 最终得到类C1 *和C2 *
③合并聚类结果。
采用主从模式,由主节点收集各从节点的聚类结果,因此得到整个信息系 统的聚类。
步骤(3)连续属性离散化。先根据聚类结果划分区间、再各个节点并行对 属性进行编码从而构造新的信息系统。
①区间划分。
根据聚类结果,以每一个聚类的最小值为分界点,将a属性的属性值划分 成不同的区间。C1 *类的最小值为0.00,C2 *类的最小值为0.65,即划分为两个区 间,[0.00,0.65],(0.65,1.00]。
②并行属性编码。
对不同区间的数据进行属性编码,根据区间个数,从0开始编码,用整数 表示各个区间,即(0,1,2,…,k)。则在区间[0.00,0.65]内的数据编码为0, 在区间(0.65,1.00]内的数据编码为1。即各个样本数据子集如下:
表4.1数据子集IS1
表4.2数据子集IS2
表4.3数据子集IS3
表4.4数据子集IS4
③构造信息系统。
由主节点将各个从节点得到的结果进行整合,构造出连续属性离散化后的 信息系统。如下:
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范 围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或 修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。

Claims (7)

1.一种基于MPI并行将连续属性进行离散化的方法,其特征在于,包括以下步骤:
1)、首先,读取信息系统的数据,将信息系统水平划分为m个样本数据子集,通过通信分配给n个节点;2)、其次,每个节点并行对数据进行归一化处理,得到新的数据,再并行对新数据属性进行聚类,通过通信合并聚类结果;3)、最后根据聚类结果进行区间划分,并对不同的区间进行属性编码,从而得到连续属性离散化的结果,构造出属性离散化后的信息系统,再利用粗糙集知识进行属性约简。
2.根据权利要求1所述的基于MPI并行将连续属性进行离散化的方法,其特征在于,所述步骤1)的信息系统包含条件属性和决策属性,数据集的条件属性集,形式为{条件属性1,条件属性2,……条件属性p},信息系统是一个四元组IS=(U,A,V,f),其中U表示领域问题中所有对象的集合,称为论域;A=C∪D是属性集合,子集C和D分别表示条件属性集和决策属性集;
<mrow> <mi>V</mi> <mo>=</mo> <munder> <mrow> <mi></mi> <mo>&amp;cup;</mo> </mrow> <mrow> <mi>a</mi> <mo>&amp;Element;</mo> <mi>A</mi> </mrow> </munder> <msub> <mi>V</mi> <mi>a</mi> </msub> </mrow>
Va是属性a的值域;f:U×A→V是一个信息函数,对一个对象的每一个属性赋予一个信息值,即x∈U,有f(x,a)∈Va。
3.根据权利要求1或2所述的基于MPI并行将连续属性进行离散化的方法,其特征在于,所述步骤1)任务分配时,基于MPI进行并行程序设计时可以根据各节点间的相互关系将其分为对等程序设计模型和主从程序设计模型,采用对等程序设计模型进行程序设计时,各个节点相互协同共同完成任务,节点间不相互依赖;采用主从程序设计模型时,分为主节点和从节点,主节点负责分配计算任务,协调从节点进度和收集计算结果,从节点接收相应的任务并计算,协同完成任务。
4.根据权利要求3所述的基于MPI并行将连续属性进行离散化的方法,其特征在于,所述归一化方法采用min-max法,也称为离差标准化,是对原始数据的线性变换,使结果值映射到[0,1]之间,转换函数如下:
<mrow> <msup> <mi>x</mi> <mo>*</mo> </msup> <mo>=</mo> <mfrac> <mrow> <mi>x</mi> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>x</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> </msub> </mrow> </mfrac> </mrow>
其中max为样本数据的最大值,min为样本数据的最小值。
5.根据权利要求4所述的基于MPI并行将连续属性进行离散化的方法,其特征在于,所述步骤2)采用k均值算法进行聚类,采用k均值算法以欧式距离作为相似度测度,它是求对应某一初始聚类中心向量V最优分类,使得评价指标J最小,k均值算法是采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大;并行对属性聚类时,先设置区间数目,即k值,选定区间数目后,选择k个类中心,计算样本的属性值到各个类中心的距离,找出最短距离,即
<mrow> <msub> <mi>l</mi> <mn>1</mn> </msub> <mo>=</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mi>u</mi> <mn>1</mn> </msub> <mo>|</mo> <mo>|</mo> <mo>=</mo> <msqrt> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>d</mi> </munderover> <msup> <mrow> <mo>|</mo> <mrow> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mi>u</mi> <mn>1</mn> </msub> </mrow> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> </mrow>
<mrow> <msub> <mi>l</mi> <mn>2</mn> </msub> <mo>=</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mi>u</mi> <mn>2</mn> </msub> <mo>|</mo> <mo>|</mo> <mo>=</mo> <msqrt> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>d</mi> </munderover> <msup> <mrow> <mo>|</mo> <mrow> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mi>u</mi> <mn>2</mn> </msub> </mrow> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> </mrow>
if l1<l2 样本属于类c1
else 样本属于类c2
从而实现归类,直到所有的属性值都归类,取各个簇类的点的均值作为新的类中心,循环计算距离并归类,直到样本所属的簇不再发生改变。
6.根据权利要求4所述的基于MPI并行将连续属性进行离散化的方法,其特征在于,所述步骤3)合并属性聚类结果后,节点通信采用标准通信模式和集合通信模式,标准通信模式属于阻塞通信,消息发送方的send调用需要接收方的recv调用的配合才可以完成MPI集合通信可以将自己创建的节点作为一个通信子集,让消息和数据只在这个通信子集中进行传递,不同于点对点通信,集合通信都是阻塞的,因此需要集合中所有并行进程都执行,执行完后才能做下一个操作,否则会陷入无限等待;集合通信的方向可以分为一对多通信,多对一通信和多对多通信三种模式,同步功能用来协调进程的执行进度,相当于设置了一个同步点,直到所有进程都执行到该同步点后才能继续操作,计算功能是指进程对接收到的数据进行处理。
7.根据权利要求6所述的基于MPI并行将连续属性进行离散化的方法,其特征在于,所述步骤3)连续属性离散化阶段,将聚类结果进行合并,聚类结果的合并操作即根据划分的任务,对各节点归类的结果简单拼接整合;在连续属性离散化阶段,首先,根据聚类结果,每一个聚类对应一个区间,将属性值划分成不同的区间,然后对区间进行属性编码,根据区间个数,从0开始编码,用整数表示各个区间,即0,1,2,…,k,最后,将得到的结果构造出连续属性离散化后的信息系统。
CN201711164678.3A 2017-11-21 2017-11-21 一种基于mpi并行将连续属性进行离散化的方法 Pending CN107958266A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711164678.3A CN107958266A (zh) 2017-11-21 2017-11-21 一种基于mpi并行将连续属性进行离散化的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711164678.3A CN107958266A (zh) 2017-11-21 2017-11-21 一种基于mpi并行将连续属性进行离散化的方法

Publications (1)

Publication Number Publication Date
CN107958266A true CN107958266A (zh) 2018-04-24

Family

ID=61965050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711164678.3A Pending CN107958266A (zh) 2017-11-21 2017-11-21 一种基于mpi并行将连续属性进行离散化的方法

Country Status (1)

Country Link
CN (1) CN107958266A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111178380A (zh) * 2019-11-15 2020-05-19 腾讯科技(深圳)有限公司 数据分类方法、装置及电子设备
CN111522662A (zh) * 2020-04-23 2020-08-11 柴懿晖 一种用于金融分析的节点系统及其实现方法
CN111624985A (zh) * 2020-06-10 2020-09-04 上海工业自动化仪表研究院有限公司 燃气轮机控制系统传感器故障诊断方法
CN112364897A (zh) * 2020-10-27 2021-02-12 曙光信息产业(北京)有限公司 分布式训练方法及装置、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101963983A (zh) * 2010-09-28 2011-02-02 江苏瑞蚨通软件科技有限公司(中外合资) 一种粗集优化神经网络的数据挖掘方法
CN106055669A (zh) * 2016-06-03 2016-10-26 北京邮电大学 一种数据离散化方法及系统
CN106598743A (zh) * 2016-12-30 2017-04-26 重庆邮电大学 一种基于mpi并行求信息系统属性约简的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101963983A (zh) * 2010-09-28 2011-02-02 江苏瑞蚨通软件科技有限公司(中外合资) 一种粗集优化神经网络的数据挖掘方法
CN106055669A (zh) * 2016-06-03 2016-10-26 北京邮电大学 一种数据离散化方法及系统
CN106598743A (zh) * 2016-12-30 2017-04-26 重庆邮电大学 一种基于mpi并行求信息系统属性约简的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
江洋 等: "基于改进变精度粗糙集的漏洞威胁评估", 《计算机应用》 *
陈贞 等: "粗糙集连续属性离散化的k均值方法", 《辽宁工程技术大学学报(自然科学版)》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111178380A (zh) * 2019-11-15 2020-05-19 腾讯科技(深圳)有限公司 数据分类方法、装置及电子设备
CN111178380B (zh) * 2019-11-15 2023-07-04 腾讯科技(深圳)有限公司 数据分类方法、装置及电子设备
CN111522662A (zh) * 2020-04-23 2020-08-11 柴懿晖 一种用于金融分析的节点系统及其实现方法
CN111522662B (zh) * 2020-04-23 2020-11-27 柴懿晖 一种用于金融分析的节点系统及其实现方法
CN111624985A (zh) * 2020-06-10 2020-09-04 上海工业自动化仪表研究院有限公司 燃气轮机控制系统传感器故障诊断方法
CN112364897A (zh) * 2020-10-27 2021-02-12 曙光信息产业(北京)有限公司 分布式训练方法及装置、存储介质及电子设备
CN112364897B (zh) * 2020-10-27 2024-05-28 曙光信息产业(北京)有限公司 分布式训练方法及装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
Moritz et al. Sparknet: Training deep networks in spark
CN107958266A (zh) 一种基于mpi并行将连续属性进行离散化的方法
Ramírez-Gallego et al. A distributed evolutionary multivariate discretizer for big data processing on apache spark
CN106598743B (zh) 一种基于mpi并行求信息系统属性约简的方法
CN104820708B (zh) 一种基于云计算平台的大数据聚类方法和装置
Sardar et al. Partition based clustering of large datasets using MapReduce framework: An analysis of recent themes and directions
CN107341210B (zh) Hadoop平台下的C-DBSCAN-K聚类算法
CN113515672A (zh) 数据处理方法、装置、计算机可读介质及电子设备
Xiao et al. A survey of parallel clustering algorithms based on spark
Chen et al. Clustering in big data
Ding et al. Parallel incremental efficient attribute reduction algorithm based on attribute tree
Ismaeel et al. An efficient workload clustering framework for large-scale data centers
Arefin et al. kNN-MST-Agglomerative: A fast and scalable graph-based data clustering approach on GPU
He et al. Parallel feature selection using positive approximation based on mapreduce
Amagata et al. Identifying the most interactive object in spatial databases
Li et al. Parallel k-dominant skyline queries over uncertain data streams with capability index
CN114528439B (zh) 基于分布式系统的极大团枚举方法和装置
CN113240089B (zh) 基于图检索引擎的图神经网络模型训练方法和装置
Shalom et al. Hierarchical agglomerative clustering using graphics processor with compute unified device architecture
CN103942235A (zh) 针对大规模数据集交叉比较的分布式计算系统和方法
Tang et al. Shortest-linkage-based parallel hierarchical clustering on main-belt moving objects of the solar system
Zhu et al. A parallel attribute reduction algorithm based on Affinity Propagation clustering.
Fahim Parallel implementation of K-means on multi-core processors
Kulkarni et al. A Survey of Advancements in DBSCAN Clustering Algorithms for Big Data
Yan et al. DVT-PKM: An improved GPU based parallel k-means algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180424

RJ01 Rejection of invention patent application after publication