k邻近算法实例额(一)

改进约会网站的配对效果

应用背景:

某约会网站收集了一些数据放在datingTestSet.txt中,每个样本数据占据一行,总共有1000行。样本主要包含以下3种特征:
□ 每年获得的飞行常客里程数
□ 玩视频游戏所耗时间百分比
□ 每周消费的冰淇淋公升数
在将上述特征数据输人到分类器之前,必须将待处理数据的格式改变为分类器可以接受的格式 。在kNN.py中创建名为file2matrix的函数,以此来处理输人格式问题。该函数的输人为文件名字符串输出为训练样本矩阵和类标签向量。

转换数据生成数据集

在kNN.py 中添加下面的函数:

def file2matrix(filename): # 打开文件fr = open(filename)# 逐行读取arrayOLines = fr.readlines()# 获取总函数numberOfLines = len(arrayOLines) # 初始化矩阵returnMat = zeros((numberOfLines,3)) # 初始化标签数组classLabelVector = []index = 0for line in arrayOLines:# 头尾部格式化line = line.strip()# 根据tab切分listFromLine = line.split('\t')# 矩阵单行赋予元素returnMat[index, :] = listFromLine[0:3]   # 标签数据赋值  classLabelVector.append(int(listFromLine[-1])) index += 1return returnMat,classLabelVector

进入终端:

使用Matplotlib分析数据

使用Matplotlib创建数据集的散点图, 进入终端:

得到绘图:

如上图散点图使用矩阵的第二、第三列数据,分别表示特征值“玩视频游戏所耗时间百分比”(x轴)和 “每周所消费的冰淇淋公升数”(y轴)

由于没有使用上各组数据等标签, 所以我们很难从上图看出有用的信息,Matplotlib库提供了scatter函数支持个性化标记散点图上的点, 所以我们重新进入终端:

获得新的绘图:

未完待续·····

k邻近算法应用实例(一) 改进约会网站的配对效果相关推荐

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

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

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

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

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

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

  4. k邻近算法(KNN)实例

    一 k近邻算法原理 k近邻算法是一种基本分类和回归方法. 原理:K近邻算法,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的K个实例,这K个实例的多数属于某个类,就把该输入实 ...

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

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

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

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

  7. 《机器学习实战》K邻近算法

    K邻近算法 存在一个样本数据集合,样本集中每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系.输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样 ...

  8. 机器学习:k邻近算法(KNN)

    title: 机器学习:k邻近算法(KNN) date: 2019-11-16 20:20:41 mathjax: true categories: 机器学习 tags: 机器学习 什么是K邻近算法? ...

  9. 刻意练习:机器学习实战 -- Task01. K邻近算法

    背景 这是我们为拥有 Python 基础的同学推出的精进技能的"机器学习实战" 刻意练习活动,这也是我们本学期推出的第三次活动了. 我们准备利用8周时间,夯实机器学习常用算法,完成 ...

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

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

最新文章

  1. asp.net获取ip
  2. 零基础学习java------day7------面向对象
  3. 在eclipse中,怎么改变字体大小?
  4. 【Vue】全局过滤器和局部过滤器
  5. matlab求最大公倍数_小学数学最大公因数最小公倍数练习
  6. mongodb安装及可视化工具robomongo安装
  7. Away3D 的实体收集器流程2
  8. Windows电脑生成iOS证书p12及mobileprovision文件文档
  9. Macromedia Studio 8 简体中文正式版激活码
  10. Froala Editor 4.0.11 Crack
  11. 网络安全等级保护二级产品清单整理
  12. 《Dreamweaver CS6 完全自学教程》笔记 第九章:插入多媒体对象
  13. 计算机桌面背景显示方式有几种,如何让计算机自动更改桌面背景
  14. 古琴初学者购琴指南(值得收藏)
  15. 虚拟机安装+win10系统
  16. 启动定时器t0的工作指令是_80c51单片机定时器t0工作于方式1定时时间1ms当晶振为6mhz时求计数初值为多少...
  17. 重邮计算机学院新闻,感知重邮丨重庆邮电大学计算机学院稳固学科建设核心 提升人才培养质量...
  18. matlab画图线型、符号、颜色
  19. 深析SpringCloud与Docker微服务架构
  20. OC10_数组的内存管理

热门文章

  1. 【底层原理】x86-64体系下一个奇怪问题的定位
  2. 图片服务器虚拟路径,springboot2.0图片上传至本地或服务器并配置虚拟路径的方法.pdf...
  3. linux的tar命令压缩26g文件,如何使用Linux上的tar命令压缩和解压缩文件 | MOS86
  4. 传统emmc所用的sdio接口_MMC/SD/SDIO介绍
  5. 加密能抓到吗?怎么抓_网络赌博被抓怎么处罚 网上参与赌博会坐牢吗
  6. linux线程组和进程区别,Linux中进程和线程之间的区别
  7. mysql从库新增_MySQL新增从库
  8. url的地址循环怎么写_电子邮件地址怎么写
  9. getmethodid( android/widget/toast ),Android功能实现-Go语言中文社区
  10. python jupyter notebook 上传文件_使用jupyter notebook将文件保存为Markdown,HTML等文件格式...