KNN算法的matlab学习日志123
K邻近算法——普通的方法入门级通用
本质原理是样本集中的数据与其所属分类存在的对应关系。

首先,了解下K-近邻算法的一般流程:

1、收集数据
2、准备数据
3、分析数据
4、训练算法
5、测试算法
6、使用算法

function [ Result ] = KNN( Data,k )
datasize = size(Data);
Distance = zeros(datasize(1),datasize(1));%距离矩阵
for i = 1:datasize(1)-1    for j = i+1:datasize(1)tempsum = 0;for ci = 1:datasize(2)tempsum = tempsum + (Data(i,ci)-Data(j,ci))*(Data(i,ci)-Data(j,ci));endDistance(i,j) = sqrt(tempsum);Distance(j,i) = sqrt(tempsum);end
endResult = zeros(datasize(1),k);%结果矩阵
for i = 1:datasize(1)for j = 1:datasize(1)if i==jcontinue;endindex = k;while index>0 && Result(i,index)==0index = index-1;end       if index == 0Result(i,1) = j;elseif Distance(i,j)<Distance(i,Result(i,index))while index>0 && Distance(i,j)<Distance(i,Result(i,index))temp = Result(i,index);Result(i,index) = j;if index<kResult(i,index+1) = temp;endindex = index-1;endelseif index<kResult(i,index+1) = j;endendend             end
end
end

备注:返回Result为一个矩阵,第i行为到第i个数据点的欧几里得距离最短的k个数据点序号的排列,列序数越小距离越近。

一般来讲,将样本集数据的特征进行比较时,可以使用KNN算法进行相似数据的提取,近邻的分类标签,而往往选用前K个最相似的数据,出处。
通常K是不大于20的整数。
所以,最终选择的K个最相似的数据中出现次数最多的分类,作为新数据的分类。

KNN算法的matlab学习日志123相关推荐

  1. 分类算法matlab实例,数据挖掘之分类算法---knn算法(有matlab例子)

    knn算法(k-Nearest Neighbor algorithm).是一种经典的分类算法.注意,不是聚类算法.所以这种分类算法 必然包括了训练过程. 然而和一般性的分类算法不同,knn算法是一种懒 ...

  2. python实现knn算法鸢尾花_Python学习之knn实现鸢尾花分类

    # K近邻算法 # 导入相关库文件 import numpy as np import matplotlib.pyplot as plt #import pandas as pd from sklea ...

  3. matlab工序,Matlab学习日志——基于遗传算法的车间调度

    资料来源<Matlab智能算法30个案例分析> 郁磊 史峰 等 著 问题描述:共有6个工件,在10台机器上加工,每个工件序经过6道工序,安排最零件加工方案. 列号,表示零件的标号:行号表示 ...

  4. matlab学习日志20210812

    fix函数:向零取整函数. floor函数:向负无穷取整. ceil函数:向正无穷取整. rand函数:四舍五入函数,rand(pi,3)π取三位有效数字取整. mod函数:取余数函数,mod(13, ...

  5. KNN分类算法及MATLAB程序与结果

    K邻近算法 KNN算法的决策过程 k-Nearest Neighbor algorithm  右图中,绿色圆要被决定赋予哪个类,是红色三角形还是蓝色四方形?如果K=3,由于红色三角形所占比例为2/3, ...

  6. 类聚算法matlab,机器学习实战ByMatlab(一)KNN算法

    KNN 算法其实简单的说就是"物以类聚",也就是将新的没有被分类的点分类为周围的点中大多数属于的类.它采用测量不同特征值之间的距离方法进行分类,思想很简单:如果一个样本的特征空间中 ...

  7. knn算法实例python_kNN算法及其Python实例

    2017 September 10 kNN kNN算法及其Python实例 在2006年12月召开的 IEEE 数据挖掘国际会议上(ICDM, International Conference on ...

  8. KNN算法及KNN的优化算法-加权KNN

    KNN及加权KNN优化算法 文章目录 KNN及加权KNN优化算法 深度学习的常规套路: K-近邻(KNN)算法: 超参数(距离): 调参-训练采用交叉验证: 附:KNN算法实例: KNN算法注意事项: ...

  9. 机器学习 —— KNN算法简单入门

    机器学习 -- KNN算法简单入门 第1关:手动实现简单kNN算法 1 KNN算法简介 1.1 kNN 算法的算法流程 1.2 kNN 算法的优缺点 1.3 编程要求+参数解释 2. 代码实现 3. ...

最新文章

  1. Windows Server 2003防黑小秘决
  2. 模型难复现不一定是作者的错,最新研究发现模型架构要背锅丨CVPR 2022
  3. Android课程设计倒计时app,单片机课程设计-可调倒计时器.doc
  4. Web布局连载——两栏固定布局(五)
  5. 银行推出一年存1万连着存5年,利率4.5%,能存吗?
  6. 如何调查一家公司是否靠谱?
  7. Nginx 禁止猜测路径上传恶意代码
  8. 基于redis的乐观锁实践
  9. 滴滴顺风车回归倒计时!
  10. 几个特别棒的免费可商用字体
  11. ascii码与hex转换c语言,ASCII与HEX对照转换表(示例代码)
  12. C++ Primer 第5版--练习9.31
  13. 十七、面相对象的进阶
  14. Android基础| 1G-4G的介绍
  15. matlab独立t样本检验,matlab与单样本t检验
  16. 何为功能平价?特斯拉「抛弃」多传感融合,背后有哪些门道
  17. 解决npm安装包安装不上的几个方法
  18. 正常情况下如何卸载计算机软件?
  19. 红旗linux 硬件,红旗软硬件兼容性查询 | 中科红旗
  20. 会议室日程安排问题(python贪心算法)

热门文章

  1. 小型商城全新简洁风格全新UI H5移动端购物商城系统源码
  2. 捷联惯导算法(二)位置更新算法的理解
  3. sql server 获取当前日期所在得周一和周日
  4. 马华兴、王鹏《做出好选择》读书笔记
  5. 华兴银行 java 面试题_银行业务面试题,java代码。
  6. 项目管理大会演讲PPT
  7. AdaBoost算法搭建信用卡精准营销模型
  8. 运营商大数据精准营销获客的优点
  9. 专利学习笔记3:专利申请中的从属权利要求
  10. ASP.NET探针,网站被莫名的挂马