python 最小距离分类器

机器学习的作业,做最小距离分类器
给了61条数据,然后有6个特征一个结果(1,0)
算法步骤如下

  • 先将61条数据按照结果进行分类(1的是数据集data1,0是数据集data0)

  • 经过分类后,将各个特征的数值进行归一化(将数值缩到0-1之间),对data0和data1求特征中心

  • 求出特征中心后,写一个判断的函数judgesample():对于一个测试样本X,分别求关于两个特征中心的欧氏距离,离哪个近就将测试集划分到哪个类里。

这里做归一化,是因为各个特征的数据值不是一个标准,有的特征可能是布尔型,有的特征可能是0-10之间,有的特征是0-100之间,有的特征是0-20之间,而且分布情况也不一样,都在0-100之间的两个特征,一个可能在20-30之间分布,另一个可能都在90-100之间分布。
归一化的公式:


归一化公式

欧式距离公式
对于点X(x1,x2,...,xn),点Y(y1,y2,...,yn)
这两个点的欧式距离:


欧氏距离公式

python代码放在我的GitHub上了。。。
https://github.com/JerryLoveCoding/Minimum_distance_classification

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容