matlab knn,matlab自带knn函数
话说matlab的模式识别工具箱非常强大,对于一般应用来说基本不用自己编程,这就给科研带来了极大的便利。
之后估计会利用这个工具箱里的许多分类方法,比如KNN、BP、SVM等等;
现在就利用knn来进行分类。
For the object
of samplify, I only choose 3 classes while 2 samples for each class
,there are 18 features in every sample
.
准备条件:已经把特征数据和样本标号保存为文件。
测试代码为:
1.
train_data=load('sample_feature.txt');
2.
train_label=load('train_label.txt');
3.
test_data=load('features.txt');
4.
k=knnclassify(test_data,train_data,train_label,3,'cosine','random');
train_data保存的是训练样本特征,要求是最能代表本类别的,不一定多,当然不能太少;
train_label保存的是样本标号,如0,1,2等等,随便设置,只有能区分就行,具体格式可以为:
1.
1 1 2 2 3 3
test_data测试文件保存的是测试数据的特征;
关键函数介绍:
knnclassify是利用最近邻进行分类的分类器;
函数调用形式:
1.CLASS =
KNNCLASSIFY(SAMPLE,TRAINING,GROUP)
标号和训练数据必须有相同的行数;训练数据和测试数据必须有相同的列;函数对于无效值或者空值会作为丢失值或者忽略这一行。
2.CLASS =
KNNCLASSIFY(SAMPLE,TRAINING,GROUP,K)
此函数允许你设置距离矩阵形式,如:
'euclidean'欧氏距离,默认的
'cityblock'绝对差的和
'cosine'角度距离
'correlation'相关距离
'Hamming'汉明距离
3.CLASS
=KNNCLASSIFY(SAMPLE,TRAINING,GROUP,K,DISTANCE,RULE)
本函数允许你选择如何对样本进行分类,如你可以选择:
'nearest'最近的K个的最多数
'random'随机的最多数
'consensus'投票法,默认的
而我选择的函数形式是:
k=knnclassify(test_data,train_data,train_label,3,'cosine','random');
大家可以对照看看选择合适的,多试试。
嗯,很简单,就这样就可以得到最后的分类类别了。
对了,还要把最后的分类类别进行保存,之前的一篇已经提到如何保存了,最终代码:
1.
train_data=load('sample_feature.txt');
2.
train_label=load('train_label.txt');
3.
test_data=load('features.txt');
4.
k=knnclassify(test_data,train_data,train_label,3,'cosine','random');
5.
dlmwrite('a.txt',b,'delimiter',' ','newline','pc');
matlab knn,matlab自带knn函数相关推荐
- matlab踩坑 自带surf 函数找不了 surf 作为函数执行
最近在用matlab学习surf函数.运行代码老是报下面的错误. 报错信息 不支持将脚本 surf 作为函数执行: C:\Users\itkey\Documents\MATLAB\surf.mlx 原 ...
- MATLAB自带PCA函数的参数含义及使用方法
目录 1.PCA函数的输入与输出参数 2.PCA函数的使用方法 参考文献: 1.PCA函数的输入与输出参数 function [coeff, score, latent, tsquared, expl ...
- matlab计算绝对值的导数,如何用matlab求带绝对值函数的导数? 你值得一看的技巧...
用matlab求函数的导数:如果一个函数表达式中有绝对值,那对该函数求导就需要注意啦!该函数可能在他的零点处导数不存在,所以我们不能用传统的方法求导,应该在零点处分别求左导数和右导数,如果左导数和右导 ...
- matlab自带滤波器函数小结(图像处理)
matlab自带滤波器函数小结(图像处理) 1 线性平滑滤波器 用MATLAB实现领域平均法抑制噪声程序: I=imread(' c4.jpg '); subplot(231) imshow(I) ...
- matlab自带滤波器函数
matlab自带滤波器函数小结(图像处理) 注:原文链接:http://www.ilovematlab.cn/forum.php?mod=viewthread&tid=215671 1 .线性 ...
- MNIST手写数字体分类--KNN matlab实现
关于数据集神马的,请直接参考:http://blog.csdn.net/wangyuquanliuli/article/details/11606435 这里直接给出KNN matlab的实现 tra ...
- matlab自带函数缺少,matlab函数库缺失 我的matlab的自带的函数库貌似都没有了
matlab函数库缺失 我的matlab的自带的函数库貌似都没有了 mip版 关注:119 答案:4 悬赏:0 解决时间 2021-01-28 19:42 已解决 2021-01-28 03:1 ...
- matlab 多 带阻,matlab程序之——滤波器(带通-带阻
<matlab程序之--滤波器(带通-带阻>由会员分享,可在线阅读,更多相关<matlab程序之--滤波器(带通-带阻(8页珍藏版)>请在人人文库网上搜索. 1.matlab程 ...
- 在Matlab中构建最大带权生成树
题目:在Matlab中构建最大带权生成树 学过数据结构的都知道"最小生成树" (Minimum Spanning Tree),可以使用Prim和Kruskal算法找到完全图的最小生 ...
- matlab ploty,matlab绘制函数 如何利用matlab的ploty
最近有网友提出"matlab绘制函数 如何利用matlab的ploty"等问题,小小知识站提取了各大知名网站有关"matlab绘制函数 如何利用matlab的ploty& ...
最新文章
- antd 侧边栏如何自适应高度
- 解决mysql获取不到连接的问题
- Sources for NFC/RFID inspection ( Soft Materials )
- Python基本类型-列表
- linux获取互联网时间,linux中用shell获取时间,日期
- Linux常用的基本命令vi、ps、kill(四)
- when will ifm open?
- 深度学习笔记 第四门课 卷积神经网络 第三周 目标检测
- Springcloud实战(五)微服务网关gateway整合nacos实战
- python中label组件参数_【Python64-tkinter_label组件】
- clover懒人_懒人气球驱动的互联网毕竟可能不是一个愚蠢的想法
- gitee上传大小超过100M文件
- Java枚举是什么?关于Java枚举的一些理解
- 国际标准刊号,国内统一刊号,刊号的标准格式 分类
- 【转】HTML5斯诺克桌球俱乐部【译】
- Web端访问微信小程序云数据库
- 51单片机汇编学习笔记4——子函数
- python ipaddress模块使用
- NES —— Go 语言开发的任天堂游戏模拟器
- CDN是什么?为什么要使用CDN?
热门文章
- 洛谷——P2006 赵神牛的游戏
- 想为自己设置的软件加一个属于自己的图标吗?使用AWT_Swing_图标解决你的问题(源码解析)
- 方法Method(Java)
- python循环三次跳出循环_Python3 跳出多重循环 for...else...
- perf script 执行时间_在Python中准确地测量代码执行时间
- Numpy,Pandas,Matplotlib
- git常用命令(史上最经典)
- Saltstack远程执行命令(3)
- 关于视频监控线缆的常识
- 【广度优先搜索】一个实例+两张动图彻底理解 BFS | 思路+代码详解 | 用 DFS 自动控制我们的小游戏