徐idealxuideal@163.comKNN算法•距离度量•KNN算法•底层代码实现•优化算法•代码实战目录2课前甜点3•距离度量•闵可夫斯基距离•带权平均值•KNN算法•底层代码实现•优化算法•代码实战目录4闵可夫斯基距离•假设有两个样本点x1,x2,它们两者间的闵可夫斯基距离Lp定义为•当p=1时,称为曼哈顿距离(Manhattandistance),即•当p=2时,称为欧氏距离(Euclideandistance),即5ppnlljlipxxxxL11)()(21||),(nlljlipxxxxL1)()(21||),(nlljlipxxxxL12)()(21)(),(闵可夫斯基距离•当p=∞时,称为切比雪夫距离6||max),()()(21ljlilpxxxxL带权平均数7321332211321321,,,,pppapapapapppaaa则别是三个数,对应的权重分假设有•距离度量•KNN算法•概述•直观理解•三大基本要素•标准化思考•底层代码实现•优化算法•代码实战目录8概述•KNN算法k-NearestNeighborK近邻算法•有监督学习算法•处理类型•分类•回归•算法类型•距离度量•所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表9直观理解•K近邻法(k-NearestNeighbor)是一种很基本的机器学习方法,能做分类和回归任务10直观理解•假设有训练集,请根据训练集训练一个KNN模型,预测最后一部影片的电影类型。11•第一步:将训练集中的所有样例画入坐标系,也将待测样例画入12直观理解•第二步:计算待测分类的电影与所有已知分类的电影的欧式距离•第三步:将这些电影按照距离升序排序,取前k个电影,假设k=3,那么我们得到的电影依次是《He'sNotReallyIntoDudes》、《BeautifulWoman》和《CaliforniaMan》。而这三部电影全是爱情片,因此我们判定未知电影是爱情片。13直观理解•kNN的三个基本要素:距离度量、k值的选择和决策规则•(1)距离度量•在引例中所画的坐标系,可以叫做特征空间。特征空间中两个实例点的距离是两个实例点相似程度的反应(距离越近,相似度越高)。kNN模型使用的距离一般是欧氏距离,但也可以是其他距离如:曼哈顿距离14三大基本要素•(2)k值的选择•k值的选择会对kNN模型的结果产生重大影响。选择较大的k值,相当于用较大邻域中的训练实例进行预测,模型会考虑过多的邻近点实例点,甚至会考虑到大量已经对预测结果没有影响的实例点,会让预测出错;选择较小的k值,相当于用较小邻域中的训练实例进行预测,会使模型变得敏感(如果邻近的实例点恰巧是噪声,预测就会...