我在我的智能设备上实现k-最近邻算法,以便从识别数据识别人类活动。我将解释我将如何实施它。你们能否告诉我我正在采取的措施有什么改进,并回答我可能会在途中询问的任何问题?k-最近邻算法
这些步骤如下:
- 我下载一个labelled dataset它们一起由来自加速度计的三轴加速度的与描述性的标签。我将选择这些数据集中的一些数据,仅记录那些我希望认识的活动(在我的例子中是走路,坐着,站立)。
- 然后,我将从每个加速度计数据窗口(即从包含128个加速度计数据的数据集中的每个单个记录)中提取特征(来自我的情况的幅度加速度的平均值,最小值,最大值,标准偏差)数据集,我会将这些特征与JSON格式的窗口标签(作为一条记录)一起存储在设备上的文本文件中。因此,训练数据集中的一个记录/样本将由以下组成:平均值,最小值,最大值,标准偏差和标签在分类步骤中,从收集的数据中,我还将获得一个加速度计数据窗口,上面提到的4个功能。因此,我需要将收集的数据的4个特征与训练数据中的每个样本进行比较。我应该如何找到它们之间的相似性,因为一个记录将包含4个特征?
作为第(3)点问题的一个解决方案,我想通过计算它们之间的差异,然后从每个特征中挑出大多数来考虑每个特征的k-最近邻。你觉得怎么样?你可以提出任何优化?谢谢:)
特征空间是4维,你可能想要在4D中采用欧几里得距离之前对每个轴进行归一化。不是每个维度的距离。 – Memming 2013-03-22 14:21:26
你是什么意思?@Memming – user1135357 2013-03-22 14:26:01
也许你可以'zscore'。 (或者,您可以使用Mahalanobis距离而不是标准化)。 – Memming 2013-03-22 16:36:05