基本概念

 利用K-近邻算法对约会网站中匹配对象进行快速归类。

基本思路步骤

 手机数据:提供文本文件;准备数据:使用Python解析文本文件;分析数据:使用Matplotlib画二维扩散图;训练算法:设计分类算法;测试算法:使用部分数据作为测试样本,观测错误率;使用算法:产生简单的程序,输入特征数据判断对象是否为喜欢类型。手机数据:提供文本文件;准备数据:使用Python解析文本文件;分析数据:使用Matplotlib画二维扩散图;训练算法:设计分类算法;测试算法:使用部分数据作为测试样本,观测错误率;使用算法:产生简单的程序,输入特征数据判断对象是否为喜欢类型。

解析文本数据

利用NumPy库对文本文件进行处理解析,编写文本读取文件程序并验证。
文本处理方法:

进行验证:

分析数据

使用Matplotlib制作数据的散点图,包括原始数据散点图(2&3 *)和加入色彩与信息的比对散点图。
函数代码:


散点图效果图如下:

进行比对分析,相比于取2&3、1&2,1&3可以更好的展示效果进行分类。
归一化处理
由于特征值之间数值差距太大,从而导致数值距离计算中比重不同,导致每个特征值对计算结果影响不同,所以进行归一化处理,提高准确率。
归一化特征值程序:
测试算法
编写完整程序进行分类器验证:

测试结果:

涉及的Python函数功能介绍

1、Python x[:,0]的含义
X[:,0]为numpy中数组的一种方法,代表的是对一个二维的数组,取该二维数组第一维中的所有数据,简单表述就是取每行的第0个数据。
举例说明:

结果如下:

2、Python中numpy数组切片

3、scatter()函数作用
https://blog.csdn.net/u013634684/article/details/49646311
4、Python中for i in range ()作用https://blog.csdn.net/weixin_38705903/article/details/79238226

机器学习(3)——K-近邻算法改进约会网站的配对效果实例相关推荐

  1. k-近邻算法1(kNN)使用kNN算法改进约会网站的配对效果

    最近边看NG老师的机器学习课程和西瓜书,无奈交织着各种数学推导,有些晦涩难懂,看到网上推荐了<machine learning in action>比较适合新手入门, 书中数据和源码在此  ...

  2. 使用k-近邻算法改进约会网站的配对效果

    2.2 使用k-近邻算法改进约会网站的配对效果 Helen交往过三种类型的人: 不喜欢的人 魅力一般的人 极具魅力的人 示例:在约会网站上使用k-近邻算法 (1)收集数据:提供文本文件: dating ...

  3. 【机器学习】机器学习从零到掌握之三 -- 教你使用K近邻算法改进约会网站

    本文是<机器学习从零到掌握>系列之第3篇 机器学习从零到掌握之一 -- 教你理解K近邻算法 机器学习从零到掌握之二 -- 教你实现K近邻算法 本篇使用的数据存放在文本文件datingTes ...

  4. k-近邻算法-优化约会网站的配对效果

    KNN原理 1. 假设有一个带有标签的样本数据集(训练样本集),其中包含每条数据与所属分类的对应关系. 2. 输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较. a. 计算新 ...

  5. 【机器学习实战】k-近邻算法案例——改进约会网站的配对效果

    上一篇:k-近邻算法实战概述 文章目录 背景: 步骤: 准备数据:从文本文件中解析数据 分析数据:使用Matplotlib创建散点图 准备数据:归一化数值 测试算法:作为完整程序验证分类器 使用算法: ...

  6. 《机器学习实战》kNN算法及约会网站代码详解

    使用kNN算法进行分类的原理是:从训练集中选出离待分类点最近的kkk个点,在这kkk个点中所占比重最大的分类即为该点所在的分类.通常kkk不超过202020 kNN算法步骤: 计算数据集中的点与待分类 ...

  7. 机器学习之k近邻算法

    本文的代码基于书本<机器学习实战> 概念 k-近邻算法采用测量不同特征值之间距离的方法进行分类.工作原理是:存在一个样本数据集合,称作训练样本集,样本中每个数据都存在标签.输入没有标签的新 ...

  8. 机器学习实战2.2. k-近邻算法例子-优化约会网站的配对效果

    k-近邻算法例子-优化约会网站的配对效果 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多机器学习干货 csdn:https://blog.csdn.net/baidu_ ...

  9. 【机器学习实验二】k-NN算法—改进约会网站以及手写体数字识别

    目录 一.改进约会网站 1.项目背景 2.数据收集 3.在约会网站中使用k-近邻算法的流程 4.代码实现 二.手写体数字识别 1.了解手写体数字识别 2.手写体数字识别思路 3.1.导入模块 3.2. ...

  10. 机器学习:K近邻算法

    一.K-近邻算法简介 1 什么是K-近邻算法 根据你的"邻居"来推断出你的类别 1.1 K-近邻算法(KNN)概念 K Nearest Neighbor算法又叫KNN算法,这个算法 ...

最新文章

  1. linux+任务默认优先级,uclinux内核的任务优先级及其load_weight
  2. 设置VS2017背景图片
  3. mysql数据库别名_MySQL数据库表名、列名、别名区分大小写的问题
  4. timimg学习数据删了_如何评价Timing这个督促人学习的软件?
  5. Mysql内连接和外连接的区别
  6. Windows下硬盘存储情况可视化工具--WinDirStat
  7. 用Java实现图像识别_只需要这三步,用Java也能图片识别
  8. thinkphp6-学习记录-应用手册
  9. 日常运维工作的知识体系
  10. [Unity-26] AnimationClip压缩-动画文件压缩
  11. 2018云南-华为软件产业峰会成功举办 加快构建数字中国
  12. Python入门笔记(三)
  13. poj3255次短路
  14. ios 点生成线路 百度地图_百度地图iOS SDK
  15. 项目经理,你在推卸责任吗?
  16. 用Java模拟post请求(也有hutool的HttpUtil使用)
  17. 再也不怕自己用江苏图采上传证件照了(亲测有效)
  18. 基于JSP的网上购物系统的设计与实现(论文+源码)_kaic
  19. c语言 不定参数printf的实现
  20. 菜鸟也谈js(一)——ES6解构对象篇

热门文章

  1. MySQL实验: 实践索引对全列匹配、最左前缀匹配、范围查询等条件的影响以及了解脏读、幻读等...
  2. 细粒度图像分析进展综述(转)
  3. NGINX优化之路(一)
  4. 国内首款 FPGA 云服务器,性能是通用 CPU 服务器 30 倍以上
  5. [转载]Hadoop 2.X 日志文件和MapReduce的log文件研究心得
  6. aws s3 连接建立
  7. python基础学习笔记4--抽象
  8. 如何利用OUTLOOK提高你的工作效率
  9. Widget实例可以添加多个并独立更新
  10. 招生网上报名程序090512.rar