knn算法,利用numpy简单实现
首先明确概念:
回归:预测体重、预测房价、预测损失。 结果是不容易确定的。
分类:预测男女、预测是否能通过考试 结果是容易确定的。
我的理解:回归针对连续的数据、分类针对离散的数据。 回归连续、分类离散。
classfication和regression的区别:
回归的是求topk的value求平均值;
分类是求topk中出现最多的类别。
例子:预测房价(回归例子)
根据经度、维度->预测房屋价格
numpy中数组的特性:广播效应
减法时会自动匹配每一行/列
例如:
思路:
拿到feature(影响结果的影响因子)与预测的作差平方和 开方 得到欧式距离 然后利用argsort得到下标的升序排序,通过label访问下标的值+k值预测 求得平均值。
包装成函数看看:
注意:不管是feature/label还是predictPoint这些都是np下的数组 才能使用广播响应。
为什么这里不使用归一化?
因为数据之间差异太大,使得处理后的数据不集中 不好获得理想预测结果。
可以使用标准化来解决一下:
数据标准化的格式,仔细看看有点复杂 但是Python的第三库已经写好了!
# mean std 再到result。。。
最后的最后,分享给大家:
数学的学习方法:
试着去理解原理、理解数学背后的原理;
避免抽象数学和理论数学;
结论不靠数学公式证明,靠的是编写程序实验证明。
原理->应用
knn算法,利用numpy简单实现相关推荐
- KNN算法原理与简单实现
KNN算法原理与简单实现 K最近邻(k-Nearest Neighbor,KNN)分类算法,是最简单的机器学习算法之一,涉及高等数学知识近乎为0,虽然它简单,但效果很好,是入门机器学习的首选算法.但很 ...
- KNN算法原理及简单改进
KNN算法 1. 什么是KNN算法 简单来说,就是根据周围几个邻居的类别来判断自己的类别 1.1 KNN概念 KNN算法全称K Nearest Neighbor 定义:如果一个样本在特征空间中的k个最 ...
- knn算法python理解与预测_理解KNN算法
KNN主要包括训练过程和分类过程.在训练过程上,需要将训练集存储起来.在分类过程中,将测试集和训练集中的每一张图片去比较,选取差别最小的那张图片. 如果数据集多,就把训练集分成两部分,一小部分作为验证 ...
- 计算机视觉--KNN算法和稠密SIFT实现图像识别(手势识别)
KNN算法 一.KNN算法概述 kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性.该方法在确定分类决策上只依 ...
- knn算法python代码iris_KNN算法原理及代码实现
如何选择K值 首先让我们理解K值到底如何影响KNN算法.如果我们 有很多蓝色点和红色点数据,使用不同K值,最终的分类效果大概如下图.我们发现随着K值的增大,分界面越来越平滑. 一般在机器学习中我们要将 ...
- KNN算法详解及实现
KNN算法详解及实现 k近邻法(k-nearest neighbor,k-NN)是一种基本的分类和回归方法,是监督学习方法里的一种常用方法.k近邻算法假设给定一个训练数据集,其中的实例类别已定.分类时 ...
- kNN算法与手写数字识别
kNN算法简介 kNN算法采用测量不同特征值之间的距离来进行分类. 工作原理:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别.存在一个 ...
- knn算法python代码_KNN 算法原理及代码实现
在本文中,我们将讨论一种广泛使用的分类技术,称为K最近邻(KNN).我们的重点主要集中在算法如何工作以及输入参数如何影响预测结果. 内容包括: 何时使用KNN算法? KNN算法原理 如何选择K值 KN ...
- 【机器学习】KNN算法实现手写板字迹识别
文章目录 [机器学习]KNN算法实现手写板字迹识别 1. 前言 2. 实验背景 3. 测试过程 3.1 手写板及测试数据的制作 3.2 加载训练数据并进行KNN模型搭建 3.3 结果预测 4. 总结 ...
最新文章
- 不能跳过的《程序员的职业素养》(The Clean Coder)中的一个章节
- 小菜学习Lucene.Net(更新3.0.3版本使用)
- java 调用 ictclas50_1-Ictclas50分词系统ForJava
- 计算机系统账户被锁定,帐号已经被系统锁定是什么意思
- (05)Verilog HDL时序逻辑:always
- LeetCode之验证二叉搜索树
- Python爬虫面试题170道:2019版【1】
- android java程序中调用shell命令
- Delphi -- 农历算法
- 天涯明月刀罗技鼠标自由弹奏脚本
- java集成kettle 8.2 获取转换的执行日志与步骤度量
- macpro如何清理磁盘空间_Mac怎么清理磁盘空间, 如何清理Mac内存?
- idea 复制java文件_IDEA复制项目Module出现java文件夹source root解决方法
- 用友公司来访,一些关于用友最新旗舰产品U9的一些介绍(图文)
- 笔试中怎么答产品设计类题目
- FLOPS, FLOPs and MACs
- 计算机无法播放器,完美解决Win7系统Windows Media Player(媒体播放器)无法开启、错误、死机等问题...
- 1688官网以图搜图爬虫案例
- 制造企业如何从0到1进行信息化建设?
- 虚幻引擎C++开发学习(二)上