1、模糊等价矩阵模糊等价矩阵”;英文对照 fuzzy equivalence matrix; ”模糊等价矩阵”;在学术文献中的解释 1、R满足自反性、对称性,且满足:(3)传递性min(r*k,r助)镇r.j称为模糊等价矩阵,根据任意指定的闭值(0耳入蕊1),将R载为普通等价矩阵R,人 文献来源 2、这一矩阵称为模糊等价矩阵.用平方自合成法可以构造出等价矩阵,方法如下:R.R=R.R.R.=R.若R=R.则R为模糊等价矩阵 基于模糊等价关系的模糊聚类分析收藏 假设R是X上的模糊等价关系,则对任意的a,R的a-截集是X上的普通等价关系,因此,可以根据X上的模糊关系,对X进行模糊分类。当取不同的a值,
2、则可以得到不同的分类结果,即分类是动态的。 实际操作中,一般情况下,我们所获得是一系列样本,假设有N个,每个样本可以看作是M维空间中的一个点。可以表示如下,论域:,对第i个元素有 1.数据预处理 考虑到不同的数据可能有不同的量纲,因此,再处理之前,有必要对数据进行相当的变换。常用的变换标准差变换和极差变换: 标准差变换: 经过变换后,每个变量的均值为0,标准差为1,并可以消除量纲的影响,但值不一定在0和1之间。 极差变换: 经过变换后,消除了量纲的影响,并且值在0和1之间。 2 模糊相似矩阵的建立 由已知的数据,可以建立论域上的模糊关系矩阵,其目的是为构造模糊等价矩阵提供数据。 计算模糊关系矩
3、阵由很多方法,如夹角余弦法,相关系数法,算术平均法,几何平均法,最大最小法,以夹角余弦为例,可用下述公式计算: 3 用传递闭包法求模糊等价矩阵 由以上过程所建立的矩阵一般仅具有自反性和对称性,不满度传递性,必须进行变换转换为模糊等价矩阵。常采用传递闭包法,即从上述R矩阵出发,求R2-R4-R8.,直到第一次出现Rk Rk=Rk,这时表明R以具有传递性。 4 根据模糊等价矩阵和某以a得到分类结果。 部分代码实现: *数据的标准差变化* 过程名:Norm_Diff 参数:Data() - Double ,待变换的二维数组 说明:执行改函数后数组中了保存变换的数据 作者: 修改者:laviepbt
4、修改日期:2006-11-1 *数据的标准差变化* Public Sub Norm_Diff(ByRef Data() As Double) Dim m As Integer, N As Integer, i As Integer, j As Integer Dim Ave As Double, s As Double N = UBound(Data, 1): m = UBound(Data, 2) n样品数,m变量数For j = 1 To m Ave = 0 For i = 1 To N Ave = Ave + Data(i, j) Next Ave = Ave / N ave是平均值 s
5、 = 0 For i = 1 To N s = s + (Data(i, j) - Ave) 2 s是标准差 Next s = Sqr(s / N) For i = 1 To N Data(i, j) = (Data(i, j) - Ave) / s Next Next End Sub *数据的极差变换* 过程名:Extre_Diff 参数:Data() - Double ,待变换的二维数组 说明:执行改函数后数组中了保存变换的数据 作者: 修改者:laviepbt 修改日期:2006-11-1 *数据的极差变换* Public Sub Extre_Diff(ByRef Data() As D
6、ouble) Dim m As Integer, N As Integer, i As Integer, j As Integer Dim Max As Double, Min As Double, d As Double N = UBound(Data, 1): m = UBound(Data, 2) N样品数,M变量数For j = 1 To m Max = -10000000000#: Min = 10000000000# For i = 1 To N If Data(i, j) Max Then Max = Data(i, j) If Data(i, j) 100 Then MsgBo
7、x 已进行100次自乘,仍然没有获得传递性, vbCritical, 错误 Exit Sub End If For i = 1 To N For j = 1 To N For k = 1 To N If R(i, k) dMax Then dMax = dMin(k) Next RR(i, j) = dMax Next Next For i = 1 To N For j = 1 To N 判断是否式模糊等价矩阵,若非则继续做 If R(i, j) RR(i, j) Then For i1 = 1 To N For j1 = 1 To N R(i1, j1) = RR(i1, j1) Next Next GoTo 100 End If Next Next End Sub
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1