写点什么

13.7 分类聚类算法

用户头像
张荣召
关注
发布于: 2020 年 12 月 21 日

1.KNN 分类算法

KNN 算法:也叫 K 近邻(K Nearest Neighbour)算法。


对于一个需要分类的数据,将其和一组已经分类标注好的样本集合比较,得到距离最近的 K 个样本,K 个样本最多归属的类别,就是这个需要分类数据的类别。


2.数据的距离算法

对于数据 xi 和 xj,若其特征空间为 n 维实数想象空间 Rn,即 xi=(xi1,xi2,......,xin),xj=(xj1,xj2,.....,xjn)


(空间距离计算公式)欧氏距离计算公式:


余弦相似度计算公式:   

3.提取文本的特征值 TF-IDF 算法

TF 是词频(Term Frequency),表示某个单词在文档中出现的错误。

TF=某个词在文档中出现的次数/文档总词数。


IDF 是逆文档频率(Inverse Document Frequency),表示这个单词在所有文档中的稀缺程度。

IDF=log(所有的文档总数/出现该词的文档数)


TF-IDF=TF*IDF.

4.贝叶斯分类算法

贝叶斯公式:条件概率。当条件 A 发生时,B 的概率是多少。

P(B|A)=(P(A|B)*P(B))/(p(A)).


例:假设一所学校男生 60%,女生 40%。男生总穿长裤,女生则一半穿长裤,一半穿裙子。假设碰到穿长裤的学生,是男生的概率是多少?

解析:A=穿长裤。B=是男生。P(B|A)=当穿长裤条件发生时,是男生的概率是多少。

          P(A|B)=男生穿长裤的概率。

          代入:P(B|A)=(100%*60%)/(60%+40%*50%)=(60%)/(80%)=75%


利用贝叶斯分类算法:75%



5.K-means 聚类算法

KNN 分类特点:已知数据的几种类别,新的数据应该分到哪个类别里面去。

KNN 算法特点:通过计算距离,把它划分到其中之一的类别里面去。

KNN 算法举例:垃圾邮件分类,男生,女生两个类别。代入贝叶斯公式计算。


K-means 聚类:已经给了一组数据,如何把数据聚成几类,每类中包含哪些数据呢?

第一步:随机在途中选取 K 个种子点,图中 K=2,即图中的实心小圆点。

第二步:求图中所有点到这 K 个种子点的距离,假如一个点离种子点 X 最近,那么这个点属于 X 点群。

             图中,可以看到 AB 属于上方的种子点,CDE 属于中部的种子点。

第三步: 对已经分好的两组数据,分别求其中心点。对于图中二维平面上的数据,

            求中心点最简单暴力的算法就是对当前同一个分组中所有点的 X 坐标和 Y 坐标分别求平均值,得到的就是中心点。

第四步:重复第 2 步和第三步,直到每个中心点不在移动。这时候,距离每个中心点最近的点数据聚类为同一类数据。


用户头像

张荣召

关注

还未添加个人签名 2018.05.02 加入

还未添加个人简介

评论

发布
暂无评论
13.7分类聚类算法