我想使用一天中的小时 (0-23) 作为连续特征,因此模型将知道 12pm 出现在 13:00 之前,并且 8:00 离 21:00 比 10:00 更远。我如何设计此功能,以便它也能理解 0:00 在 23:00 之后?
如何使用一天中的几个小时作为连续特征?
数据挖掘
特征选择
特征工程
2021-10-04 11:00:27
2个回答
请注意,如果您想建立一个循环的顺序关系,您最终会遇到矛盾。事实上,你得到:0:00 < 23:59 < 0:00。
如果您只想计算距离而放弃连续性,您可以按如下方式进行。
首先,您以分钟为单位转换域 hh:mm,然后线性映射为 0 到 0 之间的整数 . 转换函数可能是
您可以选择 . 使用比精确表示时间所需的位更少的位可能会更好(如果不使用秒,则精确时间需要 11 位,但不是全部 使用配置)。
然后,你编码 带有格雷码。格雷码确保以最多一位改变的方式对连续数字进行编码;此外,代码是循环的,因为 和编码 仅相差一位。
最后,您可以通过按位汉明距离来评估两个时刻之间的距离,该距离计算两个代码之间不同位的数量。
如果您想要更精确,您可以相应地使用秒数。