这里有一些反馈/提示/技巧/意见:
问题设置
包括需求分析。必须决定系统/解决方案应该如何工作,如何知道我们做得如何,然后如何到达那里。
模型评估。
有一种定量的方法来评估我们的模型性能是非常可取的。为此,我们需要一些标记数据。计算每所房屋的 ON 事件(给定假设)的数量非常快。房子1、4次。房子2、3次。房子3、2次。那么至少我们可以将其用作评估指标。还可以标记数据集中的时间以计算开启时间的百分比。这将是一个更细粒度/更精确的评估指标。最强的评估是检查每个事件时间是否也是正确的(在一定的公差范围内)。
概括
在 N 台电视/房屋上训练的模型也将适用于看不见的房屋。非常理想,因为允许将相同的模型用于所有房屋,包括未来的房屋。
出于这个原因,一个应该做的可能是按 house 分组的交叉验证。可能还想使用时间序列拆分,但在这么小的数据集上有点困难。
系统行为假设
我们假设Power(ON) >> Power(Standby) > Power(Off).
但是,每台电视可能具有不同的功率级别,以及三个级别之间的差异/比率。不同的房屋在打开/关闭时也可能具有不同的行为模式。
最少准时。
假设/设置电视开/关的最短时间是合理的。可以从数据中得知,也可以根据您对电视的了解进行设置。也许10秒可以吗?
技术反馈
EDA
真的错过了功率水平的直方图!
去噪
KNearestNeighbours 对此过于复杂/固执己见。运行平均值或运行中位数会更合适。
分类器
GradientBoostingClassifier 很复杂。你有一个单一的特征和少量的数据。
GaussianMixtureModel 非常相关,因为这是隐藏状态和转换的经典案例。但是,仍然不清楚复杂性是否合理 - 即问题是否不能仅通过与状态无关的阈值来解决
报告反馈
您的笔记本表明正在进行大量工作,它不具备报告的质量。当然,如果你是现场、现场或在非常紧迫的期限内完成的,那是很自然的。但如果你有几个小时来完成这项任务,我希望你的笔记本更干净。
- 介绍应该定义/重新陈述问题。使报告是独立的
- 探索性数据分析部分应该在模型之前。问题 -> 数据探索 -> 发现。
- 应该删除所有不感兴趣的发现或探索!
- 全局变量使用少,函数使用合理。模型应在适当的情况下使用管道
- 使用 pandas 时间序列功能。所有时间序列图都应该在轴上有时间!
- 在 EDA 和模型、结果之后,然后是讨论/结论
- 您可能还希望将最重要的发现/结论汇总在顶部