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. 连续投影算法_出货量第一,专利300+,极米科技如何成为“投影一哥”?
  2. html列表用标记,html标记列表应用
  3. angularjsl路由_AngularJS实现路由实例
  4. MySQL专题—— 从认识索引到理解索引【索引优化】
  5. 微信重大更新,电脑上也可刷朋友圈了!
  6. jquery.treeview.js php mysql,jquery.treeview应用
  7. 【深入浅出etcd系列】3. 日志同步
  8. 查看Linux服务器raid信息笔记整理!
  9. 矩阵手册(四)—— 增广矩阵
  10. jq取第一个子元素为select_Python爬取博客的所有文章并存为带目录的word文档(实例67)...
  11. FreeRTOS可视化追踪软件 —— 破解Tracealyzer 4.2.12
  12. 宝峰BF-888S对讲机写频!Android下的对讲机写频工具!
  13. 姓周取名:周姓漂亮有涵养的女孩名字
  14. 网吧客户信息查询c语言,网吧经营管理之客户定位
  15. 【2020新书推荐】程序员值得一读的机器学习新书
  16. ORA-01017: invalid username/password; logon denied ORA-02063: 紧接着line(源于DBLINKN~~~)
  17. 怎么用一个显示器来显示和控制两台主机
  18. 2021 年软件开发趋势大预测!
  19. 金蝶K3案例教程采购管理前台操作
  20. 地图可视化数据处理技术在银行领域的应用

热门文章

  1. java使用swing窗体,基于rtsp视频监控
  2. 【CTF WriteUp】2020天翼杯Crypto题解
  3. Struts2-16.Struts2国际化
  4. 解决word插入图片移动以及遮挡问题
  5. 2022 蓝桥杯C语言B组
  6. zoj_1203 Swordfish
  7. U盘(auto病毒)类病毒分析与解决方案
  8. 杨幂 AI 换脸:你上传的照片,正在出卖你!
  9. pgi linux安装教程,Ubuntu 10.10下安装PGI Fortran 10.2
  10. c语言图书管理系统 - 链接数据库版(MySQL)