我有一个关于人类日常生活的大量数据。生活的快照每5分钟拍一次。这些数据包括时间、人体位置、加速度计数据、陀螺仪数据等。
这些数据是没有标签的,我知道必须有5个主要的分类:“睡觉”、“吃”、“锻炼”和“工作”。
在我做假设之前,例如,“如果人类的位置是x,如果加速度计的值是y,陀螺仪的值是z,持续时间是k,那么人类就睡着了”。我知道这可能会产生问题,因为有时这些精确的值可能会有不同的标签。因此,我想用时间序列聚类来解决我的问题。
我该怎么接近它?或者我正在使解决方案复杂化,我应该使用我的“如果var1值= x,var2值= x2,那么标签是N"?
正如我提到的,数据没有标签,但我知道应该有5个标签。
我很感激你的帮助能让我走上正轨。
发布于 2022-06-27 18:17:12
我推荐一种降维算法,如t-SNE或UMAP,以便以一种无监督的方式可视化不同的集群。
这是相当容易做到的,只要您首先规范化数据在the的情况下。
%matplotlib inline
import pandas as pd
from sklearn.manifold import TSNE
import matplotlib.pyplot as plt
from matplotlib.colors import ListedColormap
dataset = your_dataset
#(here you normalize each column with their max)
tsne = TSNE(n_components=2, n_iter=5000, random_state=3)
points = tsne.fit_transform(your_dataset[features])
plt.scatter(points[:, 0], points[:, 1])一旦您检测到来自每个集群的值范围,您应该能够定义哪些是睡眠,哪些是运行,等等。
https://datascience.stackexchange.com/questions/112118
复制相似问题