[发明专利]一种基于t-SNE的成绩聚类分析方法有效
申请号: | 202010410844.9 | 申请日: | 2020-05-15 |
公开(公告)号: | CN111625576B | 公开(公告)日: | 2023-03-24 |
发明(设计)人: | 李波;白双霞;翟玉媛;何瑞寅 | 申请(专利权)人: | 西北工业大学 |
主分类号: | G06F18/23213 | 分类号: | G06F18/23213;G06F18/2135;G06N7/01;G06Q50/20 |
代理公司: | 西安凯多思知识产权代理事务所(普通合伙) 61290 | 代理人: | 刘新琼 |
地址: | 710072 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sne 成绩 聚类分析 方法 | ||
1.一种基于t-SNE的成绩聚类分析方法,其特征在于包括下述步骤:
步骤一:导入原始数据;
步骤二:对高维成绩数据进行t-SNE降维;
(2-1)计算不同学生成绩的欧氏距离;
设所有学生成绩为一个m×n的矩阵,即有m名同学,n科成绩,行向量xi=[xi1 xi2 ... xin]表示第i名同学的各科成绩,xj同理;利用公式||xi-xj||2,计算每两个行向量之间的欧氏距离,得到m×m矩阵:
dij表示第i名同学和第j名同学成绩行向量的欧氏距离,矩阵中其他元素同理;
(2-2)计算高维成绩条件分布概率pj|i;
将行向量xi与xj之间的高维欧氏距离转换为表示相似性的条件概率pj|i,pj|i表示在以xi为中心的高斯分布下,如果按高维数据点之间概率密度的比例选取邻点时,xi会选择xj作为它的邻点的概率;pj|i计算公式如下:
σi是以数据点xi为中心的正态分布的方差;
(2-3)计算困惑度Px和最优高维成绩条件分布概率pj|i;
引入困惑度Px,以便寻找最优的单个值σi,定义困惑度如下:
该分布具有随着σi增加而增加的熵,其中H(Pi)为香农熵,定义为:
H(Pi)=-∑pj|ilog2pj|i (3)
定义Px的标准值为初始化σi,带入式(1)和式(2),求得概率分布pj|i和困惑度Px,将困惑度与标准值做差,进行二分法迭代,更新σi和Px;当Px与的差值小于设定的限值sxb,或迭代次数大于idd时,停止迭代,并求得此时的σi,即为最优σi;将该σi值带入式(1),求得最优高维成绩条件分布概率pj|i;
(2-4)初始化低维成绩矩阵Y,计算低维成绩条件分布概率qij;
低维成绩矩阵Y是高维成绩的低维映射,随机初始化低维学生成绩矩阵Y,行向量yi=[yi1 yi2]表示低维成绩中第i名同学的成绩,yj同理;
低维成绩条件分布概率采用t分布,设为qij,计算公式如下:
(2-5)对称化pj|i,求pij;
由于低维成绩分布采用t分布,对pj|i对称化:
(2-6)计算损失函数L和梯度
定义Pi为xi与其他所有点之间的条件概率构成的条件概率分布,同理在低维空间存在一个条件概率分布Qi且应该与Pi一致;用KL距离衡量两个分布之间的相似性,最终目标就是对所有数据点最小化KL距离;
定义降维前后损失函数为:
损失函数求梯度如下:
(2-7)基于梯度下降算法最小化代价函数,更新低维成绩矩阵Y;
根据式(7)求得梯度函数进行梯度下降最小化损失函数L,不断更新低维学生成绩矩阵Y,并在损失函数L最小时,得到最终降维后的成绩数据,具体公式如下:
其中,更新后的低维成绩定义为Y(t),η表示步长,上一次迭代产生的低维成绩矩阵为Y(t-1),上上次迭代产生的低维成绩矩阵Y(t-2),学习率为α(t);α(t)(Y(t-1)-Y(t-2))是为了增强梯度下降效果的而加上的动量梯度,α(t)由用户自己设定,第一次迭代时Y(t-1)-Y(t-2)默认为0;
步骤三:利用公式(8)得到t-SNE降维后的成绩数据Y(t),并对Y(t)进行K-Means聚类处理:
(3-1)确定初始聚类中心;
确定需要划分簇的个数k,并随机选择成绩数据中k个样本点Yi,即随机选k行,作为初始聚类中心,标记为向量Yc=(y1,y2),c=0,1,2,3,…,k-1;
(3-2)依据初始聚类中心Yc划分簇;
(a)计算样本中各个样本点Yi与每个聚类中心Yc的欧式距离dy;
设样本点为向量Yi=(yi1,yi2),yi1,yi2为样本点中每个特征的值,设l为样本点的标号,用向量表示为l=[0,1,2,…,m-1],m为学生人数,计算欧式距离的公式为:dy=||Yi-Yc||2,其中i=0,1,2,3,...,m-1,c=0,1,2,...,k-1;
(b)更新样本标号;
找出与每个样本点Yi最近的聚类中心,以距离每个样本点最近的聚类中心的中心标记c代替原本样本标号l,以此更新样本标号,进而划分簇;
(3-3)更新聚类中心;
计算各簇中所有样本点的平均值作为新的聚类中心,其中每个簇中样本点个数为vc,c=0,1,2,…,k-1,同一簇中所有向量和为Sc,c=0,1,2,…,k-1;
新聚类中心的公式如下:
(3-4)依据新的聚类中心,重新划分簇;依据步骤(3-3)中计算出的新的聚类中心,采用步骤(3-2)中的方法更新簇;
(3-5)重复步骤(3-3)与(3-4)直到聚类中心不再变化,得到此时的聚类结果。
2.根据权利要求1所述的一种基于t-SNE的成绩聚类分析方法,其特征在于:
所述步骤(2-3)中,的取值范围为30.0-50.0。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010410844.9/1.html,转载请声明来源钻瓜专利网。