监督学习算法1: K-近邻(KNN)
先解释几个概念 机器学习主要分为:监督学习和无监督学习。 · 监督学习: 从已知类别的数据集中学习出一个函数,这个函数可以对新的数据集进行预测或分类,数据集包括特征值和目标值,即有标准答案;常见算法类型可以分为:分类和回归。 分类问题常见算法:K-近邻(KNN)、朴素贝叶斯、决策树、随机森林、逻辑回归、神经网络 回归常用于预测,比如房价,常见算法:线性回归、岭回归 · 无监督学习: 与监督学习的主要区别是,数据集中没有人为标注的目标值,即没有标准答案;常见算法有:聚类,生成对抗网络。 K-近邻算法 这是机器学习中最简单的一个算法,先看定义 定义:如果一个样本与特征空间中的K个样本 距离 最近,这K个样本中的大多数属于A类别,那么该样本也属于A类别。 通俗说就是通过你最近的K个邻居来求出你的类别; 比如现在要求你所在的区域,A在朝阳区,B在海淀区,C在海淀区,D在房山区,你与ABC的距离分别是:20,28,23,35;K值取3,那么这三个离你最近的邻居是A、B、C,这三个中有两个属于海淀区,按照K-近邻算法,你所在的区域就是海淀区;如果K取1,就是朝阳区; 由此也说明了K近邻算法的结果很大程度上受K取值的影响,通常K值取不大于20的整数。 K-近邻中的距离如何计算? 这里的距离一般使用欧式距离,公式如下: 比如有两个样本:A (a1,a2,a3) ,B (b1,b2,b3)