Python机器学习应用之监督学习-人体运动状态信息评级

本文介绍了使用Python进行机器学习的监督学习方法,通过可穿戴设备的传感器数据,针对人体运动状态进行分类。讲解了K近邻(KNN)和决策树两种分类算法的原理及sklearn库中的实现。KNN中探讨了K值的选择对模型的影响,而决策树则解释了如何根据信息增益构建分类树。
摘要由CSDN通过智能技术生成

背景介绍

  • 可穿戴式设备的流行,让我们可以更便利地使用传感器获取人体的各项数据,甚至生理数据。
  • 当传感器采集到大量数据后,我们就可以通过对数据进行分析和建模,通过各项特征的数值进行用户状态的判断,根据用户所处的状态提供给用户更加精准、便利的服务。

数据介绍

  • 我们现在收集了来自A,B,C,D,E 5位用户的可穿戴设备上的传感器数据,每位用户的数据集包含一个特征文件(a.feature)和一个标签文件(a.label)。
  • 特征文件中每一行对应一个时刻的所有传感器数值,标签文件中每一行记录了和特征文件中对应时刻的标记过的用户姿态,两个文件的行数相同,相同行之间互相对应。

数据介绍- feature

我们的特征文件共包含41列特征,数据内容。
这里写图片描述
特征文件的各项特征,如下表所示:
这里写图片描述

数据介绍- label

标签文件内容如图所示,每一个代表与特征文件中对应行的用户姿态类别。总共有0-24种共25种身体姿态,如,无活动状态、坐态、跑态等。标签文件作为训练集的标准参考准则,可以进行特征的监督学习。
这里写图片描述

任务介绍

  • 假设现在出现了一个新用户,但我们只有传感器采集的数据,那么该如何得到这个新用户的姿态呢?
  • 又或者对同一个用户如果传感器采集了新的数据,怎么样根据新的数据判断当前用户处于什么样的姿态呢?
  • 在明确这是一个分类问题的情况下,我们可以选定某种分类模型(或者说是算法),通过使用训练数据进行模型学习,然后对每个测试样本给出对应的分类结果。
  • 机器学习的分类算法众多,在接下来的学习中我们将会详细介绍经典的分类算法,如K近邻、决策树和朴素贝叶斯的原理和实现。

K近邻分类器(KNN)

原理:

通过计算待分类数据点,与已有数据集中的所有数据点的距离。取距离最小的前k个点,根据“少数服从多数”的原则,将这个数据点划分为出现次数最多的那个类别。
这里写图片描述

sklearn中的KNN

在sklearn库中,可以使用sklearn.neighbors.KNeighborsClassifier创建一个K近邻分类器,主要参数有:

  • n_neighbors:用于指定分类器中K的大小(默认值为5)
  • weights:设置选中的K个点对分类结果影响的权值(默认值为平均权值“uniform”,可以选择“distance”代表越近的点权重越高,或者传入自己编写的以距离为参数的权重计算函数)。

KNN的使用

  • 使用import语句导入K近邻分类器:
from sklearn.neighbors 
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值