CN111625576A - 一种基于t-SNE的成绩聚类分析方法 - Google Patents
一种基于t-SNE的成绩聚类分析方法 Download PDFInfo
- Publication number
- CN111625576A CN111625576A CN202010410844.9A CN202010410844A CN111625576A CN 111625576 A CN111625576 A CN 111625576A CN 202010410844 A CN202010410844 A CN 202010410844A CN 111625576 A CN111625576 A CN 111625576A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- data
- score
- distribution
- clustering
- 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.)
- Granted
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 26
- 238000009826 distribution Methods 0.000 claims abstract description 69
- 230000009467 reduction Effects 0.000 claims abstract description 30
- 238000000034 method Methods 0.000 claims abstract description 19
- 230000000694 effects Effects 0.000 claims abstract description 6
- 238000003064 k means clustering Methods 0.000 claims abstract description 6
- 239000011159 matrix material Substances 0.000 claims description 40
- 239000013598 vector Substances 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000013079 data visualisation Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
- G06F18/21355—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis nonlinear criteria, e.g. embedding a manifold in a Euclidean space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Entrepreneurship & Innovation (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Evolutionary Computation (AREA)
- Probability & Statistics with Applications (AREA)
- General Business, Economics & Management (AREA)
- Bioinformatics & Computational Biology (AREA)
- Marketing (AREA)
- Educational Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Primary Health Care (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于t‑SNE的成绩聚类分析方法,导入原始数据,对高维成绩数据进行t‑SNE降维,对t‑SNE降维后的成绩数据进行K‑Means聚类处理,得到聚类结果。本发明对原始数据进行预处理之后,利用t‑SNE算法将高维空间上的数据降维后,再用K‑Means算法对原始数据进行聚类,有效的解决了数据维度过高带来的聚类效果不理想的问题。由于t‑sne降维法较完整的保留了高维数据的分布特征,用降维后数据的聚类结果还原得到高维数据的聚类结果。通过比较先降维后聚类和直接对高维数据的聚类的结果,可以看出降维算法在学生成绩分析算法上的优越性。
Description
技术领域
本发明涉及成绩分析领域,尤其是一种聚类算法的成绩分析方法。
背景技术
成绩分析是学校评估在校学生学习情况的重要手段之一。学校一般采用及格率、平均分、总分排名等指标进行分析,希望通过这些指标反应学生近期的各科学习状况。但这些指标所反映的内容之间缺乏关联性,难以得出学生的综合表现情况。如今,随着大数据分析技术快速发展,学校可以利用数据挖掘技术和数据可视化技术对学生学习情况进行更高效、准确的分析。
现有一些基于数据挖掘的成绩分析方法。专利《基于粗糙集的学生单科成绩决策分析方法及分析器》(中国专利公布号:CN 105677854 A,公开时间2016.06.15)使用了粗糙集理论对成绩进行分析,减小了传统成绩平均值计算带来的较大误差,模糊了在计算成绩时影响微小的因素,提高了成绩分析的科学性和准确性。但是,此发明只涉及分析单科成绩,在分析学生整体成绩,把握学生整体学习情况等方面有一定的局限性。专利《一种基于改进的C4.5算法的学生成绩分析方法》(中国专利公布号:CN 109409644 A,公开时间2019.03.01)使用了改进的C4.5算法,能够对多个科目成绩进行分析,实现学生分类,从而减轻了教学管理工作。但是C4.5算法作为一种有监督学习方法,需要对所有非类别属性计算信息增益率,并从中选择信息增益率最大的属性作为测试属性。在选择分类属性的过程中可能会出现漏选等情况,影响分类准确性。同时,C4.5需要对数据集进行多次的顺序扫描和排序,当数据集较大时,会严重影响分类效率。
发明内容
为了克服现有技术的不足,本发明提供一种基于t-SNE的成绩聚类分析方法。本发明为一种基于t-SNE降维和K-Means聚类的成绩分析方法,t-SNE是由Laurens van derMaaten和Geoffrey Hinton在2008年提出的一种高维数据降维的算法,K-Means是一种经典的无监督聚类分析方法,结合两者,可以提升数据分析的效果并便于可视化。本发明为解决多科成绩分析和多维数据可视化的问题并克服现有技术中的不足,提出一种基于t-SNE的成绩聚类分析方法,将学生成绩先通过t-SNE算法降维再通过K-Means算法聚类,以提高多科成绩分析的效率和效果。
本发明解决其技术问题所采用的技术方案是:
步骤一:导入原始数据;
步骤二:对高维成绩数据进行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|ilog2 pj|i (3)
定义Px的标准值为取值范围为30.0-50.0,初始化σi,带入式(1)和式(2),求得概率分布pj|i和困惑度Px,将困惑度与标准值做差,进行二分法迭代,更新σi和Px;当Px与的差值小于设定的限值sxb,或迭代次数大于idd时,停止迭代,并求得此时的σi,即为最优σi;将该σi值带入式(1),求得最优高维成绩条件分布概率pj|i;
(2-4)初始化低维成绩矩阵Y,计算低维成绩条件分布概率qij;
低维成绩矩阵Y是高维成绩的低维映射,随机初始化低维学生成绩矩阵Y,
低维成绩条件分布概率采用t分布,设为qij,计算公式如下:
(2-5)对称化pj|i,求pij;
由于低维成绩分布采用t分布,对pj|i对称化:
定义Pi为xi与其他所有点之间的条件概率构成的条件概率分布,同理在低维空间存在一个条件概率分布Qi且应该与Pi一致;用KL距离衡量两个分布之间的相似性,最终目标就是对所有数据点最小化KL距离;
定义降维前后损失函数为:
损失函数求梯度如下:
(2-7)基于梯度下降算法最小化代价函数,更新低维成绩矩阵Y;
其中,更新后的低维成绩定义为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)直到聚类中心不再变化,得到此时的聚类结果。
本发明的有益效果在于对原始数据进行预处理之后,利用t-SNE算法将高维空间上的数据降维后,再用K-Means算法对原始数据进行聚类,有效的解决了数据维度过高带来的聚类效果不理想的问题。由于t-sne降维法较完整的保留了高维数据的分布特征,用降维后数据的聚类结果还原得到高维数据的聚类结果。通过比较先降维后聚类和直接对高维数据的聚类的结果,可以看出降维算法在学生成绩分析算法上的优越性。
附图说明
图1为基于t-SNE的成绩聚类分析方法的总框架。
图2为t-SNE的算法流程图。
图3为K-Means的算法流程图。
图4为基于t-SNE的成绩聚类分析方法的结果图。
图5为对成绩直接聚类的结果图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
本发明解决其技术问题所采用的技术方案是:
步骤一:导入原始数据;
步骤二:对高维成绩数据进行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相对较高,而对于广泛分离的数据点,pj|i几乎是无穷小的;pj|i计算公式如下:
σi是以数据点xi为中心的正态分布的方差;
(2-3)计算困惑度Px和最优高维成绩条件分布概率pj|i;
对于以每一个高维数据点xi为中心的高斯分布的方差参数σi,因为数据的密度可能是变化的,所以不可能只存在一个单独的σi对于数据列表中的所有数据点来说都是最优的;相比于数据稀疏的区域,较小的σi通常更适用于数据密集的区域;任何一个特定的σi值都会诱发一个相对于其他所有数据点的概率分布Pi,分布Pi的熵随着σi的增加而增加;
引入困惑度Px,以便寻找最优的单个值σi,定义困惑度如下:
该分布具有随着σi增加而增加的熵,其中H(Pi)为香农熵,定义为:
H(Pi)=-∑pj|ilog2 pj|i (3)
由公式(2)可知,困惑度随着熵增而变大,如果概率分布Pi的熵较大,那么其分布的形状就相对平坦,该分布中每个元素pji更相近,即以xi为中心的点的数量更多。在应用的过程中,我们将困惑度参数等同于所需要的邻近数量。定义Px的标准值为取值范围为30.0-50.0,初始化σi,带入式(1)和式(2),求得概率分布pj|i和困惑度Px,将困惑度与标准值做差,进行二分法迭代,更新σi和Px;当Px与的差值小于设定的限值sxb,或迭代次数大于idd时,停止迭代,并求得此时的σi,即为最优σi;最终求得符合所有数据点之间的距离分布关系的最优σi,使得困惑度趋近于一个稳定的值;将该σi值带入式(1),求得最优高维成绩条件分布概率pj|i;
(2-4)初始化低维成绩矩阵Y,计算低维成绩条件分布概率qij;
低维成绩矩阵Y是高维成绩的低维映射,随机初始化低维学生成绩矩阵Y,
低维成绩条件分布概率采用t分布,设为qij,计算公式如下:
(2-5)对称化pj|i,求pij;
由于低维成绩分布采用t分布,对pj|i对称化:
定义Pi为xi与其他所有点之间的条件概率构成的条件概率分布,同理在低维空间存在一个条件概率分布Qi且应该与Pi一致;用KL距离衡量两个分布之间的相似性,最终目标就是对所有数据点最小化KL距离;
定义降维前后损失函数为:
损失函数求梯度如下:
(2-7)基于梯度下降算法最小化代价函数,更新低维成绩矩阵Y;
其中,更新后的低维成绩定义为Y(t),η表示步长,上一次迭代产生的低维成绩矩阵为Y(t-1),上上次迭代产生的低维成绩矩阵Y(t-2),学习率为α(t);η由用户自己通过多次试验,选择适当的值进行设定;在选择时应注意,η既不能太大也不能太小,太小会使拟合时间过长,太大则会导致过拟合;α(t)(Y(t-1)-Y(t-2))是为了增强梯度下降效果的而加上的动量梯度,也可以不设置,它引入了上一次迭代产生的Y(t-1)和上上次迭代产生的Y(t-2)和学习率α(t),其中α(t)的选择与已进行的迭代次数有关,即刚开始迭代时设为较大参数值,随着迭代的进行,应适当减小,以提高拟合精度;与η类似,α(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)直到聚类中心不再变化,得到此时的聚类结果。
步骤(3-5)的聚类结果实际上相当于把学生依据成绩之间的相似性进行了分类,每一个簇代表了一类学生;根据步骤(3-5)得到的低维聚类结果,如果反向找到对应的高维数据点,就找到高维数据中对应低维数据每一个簇的数据,进而进行分析每一个簇的特点。对于高维数据中相对应的簇,从不同的角度对成绩进行分析,可以挖掘出更多有价值的信息,全面地了解不同类别学生的成绩特点,从而实现对不同类别的学生个性化指导和学校教学方案的改进。例如分析不同类别学生的优势和弱势学科,进而根据不同类别同学的特点进行针对性的指导来帮助学生提升成绩。
下面结合附图和表,对本发明的技术方案作进一步清晰和完整的描述。
步骤一:导入原始数据,数据包含535名同学,16科成绩,如下表:
表1基于t-SNE的成绩聚类分析方法的结果图
学号 | C理论 | 概率论 | 高数上 | 高数下 | ... | 线代 | 数电 | 模电 |
2011301845 | 64 | 45 | 33 | 33 | ... | 78 | 28 | 73 |
2011301857 | 66 | 53 | 40 | 62 | ... | 70 | 49 | 65 |
2011301871 | 74 | 53 | 32 | 44 | ... | 76 | 78 | 79 |
2011301877 | 35 | 60 | 37 | 30 | ... | 75 | 49 | 60 |
... | ... | ... | ... | ... | ... | ... | ... | ... |
2011301890 | 23 | 43 | 76 | 32 | ... | 66 | 37 | 63 |
2011301892 | 32 | 38 | 25 | 42 | ... | 74 | 41 | 63 |
步骤二:对高维成绩数据进行t-SNE降维:
(2-1)计算不同学生成绩的欧氏距离
导入学生成绩,转换为一个535×16的矩阵,即有m=535名同学,n=16科成绩。行向量xi=[xi1 xi2 ... xi16]表示第i名同学的各科成绩,xj同理。利用公式:||xi-xj||2,计算每两个行向量之间的欧氏距离,得到535×535矩阵:
矩阵中第i行j列的值表示第i名同学和第j名同学成绩行向量的欧氏距离,矩阵中其他元素同理。
(2-2)计算高维成绩条件分布概率pj|i
设高维成绩条件分布概率为pj|i,它表示如果邻域被选择与在以xi为中心的正态分布的概率密度成比例,xi将选择xj作为其邻域的概率。pj|i计算公式如下:
σi以数据点xi为中心的正态分布的方差。
(2-3)计算困惑度Px和最优高维成绩条件分布概率pj|i
引入困惑度Px的概念,以便寻找最优的σi。定义困惑度:
该分布具有随着σi增加而增加的熵。其中H(Pi)为香农熵,定义为:
H(Pi)=-Σpj|ilog2 pj|i (3)
Pi为xi与其他所有点之间的条件概率构成的条件概率分布。设Px的标准值为初始化σi,令σi=1。将σi=1带入式(1),求得初始概率分布pj|i和困惑度Px,将困惑度Px与标准值取对数后,前者减后者得进行二分法迭代,更新σi。由于是的减函数。因此,当时,σi用替代当时,σi用替代。当Px与的差值小于设定的限值sxb=10-5,或迭代次数大于idd,取idd=50时,停止迭代,并求得此时的σi带入式(1),求得最优高维成绩条件分布概率pj|i:
(2-4)初始化降维后学生成绩矩阵Y,计算低维成绩条件分布概率qij
随机初始化降维后学生成绩矩阵Y
低维成绩条件分布概率采用t分布,设为qij,计算公式如下:
(2-5)对称化pj|i,求pij
由于低维成绩分布采用t分布,因此需要对pj|i对称化:
Pi为xi与其他所有点之间的条件概率构成的条件概率分布。同理在低维空间存在一个条件概率分布Qi且应该与Pi一致。用KL距离衡量两个分布之间的相似性,最终目标就是对所有数据点最小化这个KL距离。
定义降维前后损失函数:
针对损失函数求梯度如下:
(2-7)梯度下降算法最小化代价函数,更新低维成绩矩阵Y
其中,更新后的低维成绩定义为Y(t),η表示步长,上一次迭代产生的低维成绩矩阵为Y(t-1),上上次迭代产生的低维成绩矩阵Y(t-2),学习率为α(t)。我们设定步长η的初值为5,并引入调整因子g(初值为0.01)与η相乘,当和(Y(t-1)-Y(t-2))均为正时,g=0.8,否则g=g+0.2。同时规定,当迭代次数小于20次时,α(t)=0.5此后α(t)=0.8。
最终得到以下结果:
步骤三:对进行过t-SNE降维后的成绩数据Y进行K-Means聚类处理:
(3-1)确定初始聚类中心
首先确定需要划分簇的个数k=5,而后随机选择成绩数据中5个样本点Yi作为初始聚类中心,即随机选5行作为初始聚类中心,标记为向量Yc=(y1,y2),c=0,1,2,3,4。把初始聚类中心合并成矩阵C得到:
(3-2)依据初始聚类中心Yc划分簇
(a)计算样本中各个样本点Yi与每个聚类中心Yc的欧式距离dy:
设样本点为向量Yi=(yi1,yi2),yi1,yi2为样本点中每个特征的值,设l为样本点的标号,用向量表示为l=[0,1,2,…,534],计算欧式距离的公式为:dy=||Yi-Yc||2,其中i=0,1,2,3,…,534,c=0,1,2,3,4;得到结果l=[2 3 1 1 1 4 ... 0 0 4 4 3 0];
(b)更新样本标号。找出与每个样本点Yi最近的聚类中心,以此中心标记c标记样本点,更新样本标号l,进而划分簇。
(3-3)更新聚类中心
计算各簇中所有样本点的平均值作为新的聚类中心,其中每个簇中样本点个数为vc,c=0,1,2,3,4,同一簇中所有向量和为Sc,c=0,1,2,3,4;
(3-4)依据新的聚类中心,重新划分簇。依据(3-3)中计算出的新的聚类中心,采用(2)中的方法更新簇。
(3-5)重复步骤(3-3)与(3-4)1000次,聚类中心不再变化,得到最后的聚类结果:l=[1 3 1 1 1 4 ... 0 0 4 4 4 0]。
根据步骤(3-5)得到的低维聚类结果,根据成绩之间的相似性,学生被分成了五类。如果反向找到对应的原始成绩数据点,就可以针对不同的学生类别,进行不同的角度的数据分析,从数据中挖掘出更多有价值的信息,全面地了解不同类别学生的成绩特点,从而实现对不同类别的学生个性化指导和学校教学方案的改进。例如对这五类同学的各科成绩进行可视化处理,直观地观察不同类学生在各科成绩中的表现,方便教师们进行分析和指导。
Claims (2)
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;
低维成绩条件分布概率采用t分布,设为qij,计算公式如下:
(2-5)对称化pj|i,求pij;
由于低维成绩分布采用t分布,对pj|i对称化:
定义Pi为xi与其他所有点之间的条件概率构成的条件概率分布,同理在低维空间存在一个条件概率分布Qi且应该与Pi一致;用KL距离衡量两个分布之间的相似性,最终目标就是对所有数据点最小化KL距离;
定义降维前后损失函数为:
损失函数求梯度如下:
(2-7)基于梯度下降算法最小化代价函数,更新低维成绩矩阵Y;
其中,更新后的低维成绩定义为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)直到聚类中心不再变化,得到此时的聚类结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010410844.9A CN111625576B (zh) | 2020-05-15 | 2020-05-15 | 一种基于t-SNE的成绩聚类分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010410844.9A CN111625576B (zh) | 2020-05-15 | 2020-05-15 | 一种基于t-SNE的成绩聚类分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111625576A true CN111625576A (zh) | 2020-09-04 |
CN111625576B CN111625576B (zh) | 2023-03-24 |
Family
ID=72271855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010410844.9A Active CN111625576B (zh) | 2020-05-15 | 2020-05-15 | 一种基于t-SNE的成绩聚类分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111625576B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113347181A (zh) * | 2021-06-01 | 2021-09-03 | 上海明略人工智能(集团)有限公司 | 异常广告流量检测方法、系统和计算机设备和存储介质 |
CN113741364A (zh) * | 2021-08-26 | 2021-12-03 | 上海应用技术大学 | 一种基于改进t-SNE的多模态化工过程故障检测方法 |
CN113918785A (zh) * | 2021-10-11 | 2022-01-11 | 广东工业大学 | 一种基于聚类集成学习的企业数据分析方法 |
CN114545167A (zh) * | 2022-02-23 | 2022-05-27 | 四川大学 | 一种基于t-SNE算法的电缆终端局放脉冲分类方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106096066A (zh) * | 2016-08-17 | 2016-11-09 | 盐城工学院 | 基于随机近邻嵌入的文本聚类方法 |
US20170161606A1 (en) * | 2015-12-06 | 2017-06-08 | Beijing University Of Technology | Clustering method based on iterations of neural networks |
CN110458187A (zh) * | 2019-06-27 | 2019-11-15 | 广州大学 | 一种恶意代码家族聚类方法和系统 |
-
2020
- 2020-05-15 CN CN202010410844.9A patent/CN111625576B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161606A1 (en) * | 2015-12-06 | 2017-06-08 | Beijing University Of Technology | Clustering method based on iterations of neural networks |
CN106096066A (zh) * | 2016-08-17 | 2016-11-09 | 盐城工学院 | 基于随机近邻嵌入的文本聚类方法 |
CN110458187A (zh) * | 2019-06-27 | 2019-11-15 | 广州大学 | 一种恶意代码家族聚类方法和系统 |
Non-Patent Citations (3)
Title |
---|
孟晓辰等: "基于t分布邻域嵌入算法的流式数据自动分群方法", 《生物医学工程学杂志》 * |
徐森等: "一种基于T-分布随机近邻嵌入的聚类集成方法", 《电子与信息学报》 * |
黄莹: "聚类技术在学生成绩分析中的应用", 《无线互联科技》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113347181A (zh) * | 2021-06-01 | 2021-09-03 | 上海明略人工智能(集团)有限公司 | 异常广告流量检测方法、系统和计算机设备和存储介质 |
CN113741364A (zh) * | 2021-08-26 | 2021-12-03 | 上海应用技术大学 | 一种基于改进t-SNE的多模态化工过程故障检测方法 |
CN113918785A (zh) * | 2021-10-11 | 2022-01-11 | 广东工业大学 | 一种基于聚类集成学习的企业数据分析方法 |
CN114545167A (zh) * | 2022-02-23 | 2022-05-27 | 四川大学 | 一种基于t-SNE算法的电缆终端局放脉冲分类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111625576B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111625576B (zh) | 一种基于t-SNE的成绩聚类分析方法 | |
CN108846259B (zh) | 一种基于聚类和随机森林算法的基因分类方法及系统 | |
US8489531B2 (en) | Identification of co-regulation patterns by unsupervised cluster analysis of gene expression data | |
CN110795564B (zh) | 一种缺少负例的文本分类方法 | |
CN101859383A (zh) | 基于时间序列重要点分析的高光谱遥感图像波段选择方法 | |
CN115512772A (zh) | 一种基于标记基因和集成学习的高精度单细胞聚类方法及系统 | |
Vengatesan et al. | The performance analysis of microarray data using occurrence clustering | |
CN105139037B (zh) | 基于最小生成树的集成多目标进化自动聚类方法 | |
Sadeghi et al. | Deep clustering with self-supervision using pairwise data similarities | |
Suresh et al. | Data clustering using multi-objective differential evolution algorithms | |
Peker et al. | A hybrid modified deep learning data imputation method for numeric datasets | |
CN110060735B (zh) | 一种基于k-mer组群分割的生物序列聚类方法 | |
Aleskerova et al. | Handwritten Chinese characters recognition using two-stage hierarchical convolutional neural network | |
Bawankar et al. | Implementation of ensemble method on dna data using various cross validation techniques | |
Zuk et al. | Ranking under uncertainty | |
Wong et al. | A probabilistic mechanism based on clustering analysis and distance measure for subset gene selection | |
Priscilla et al. | A semi-supervised hierarchical approach: Two-dimensional clustering of microarray gene expression data | |
CN112347162A (zh) | 一种基于在线学习的多元时序数据规则挖掘方法 | |
CN112967755A (zh) | 一种面向单细胞rna测序数据的细胞类型识别方法 | |
CN112308151A (zh) | 基于加权的旋转森林高光谱图像分类方法 | |
CN112487816B (zh) | 一种基于网络分类的命名实体识别方法 | |
Ma et al. | A Deep Embedded Clustering Method Based on $\beta $-Variational Autoencoder for Single-Cell RNA Sequencing Data | |
Khan et al. | Data Mining Clustering Analysis is a Source of Finding Similar Function of Genetic Factor, Genome and Protein | |
Arnaud et al. | Bayesian mixtures of multiple scale distributions | |
Miri et al. | Sparse Representation for High-dimensional Multiclass Microarray Data Classification |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |