在机器学习中,通常会见到如下两种类型的特征。
数值特征,如房屋面积、收入等。
类别特征,如性别、衬衫尺码等。
然而,还有一种类型特征,在特征工程中需要特殊注意,但却往往被忽视了,那就是循环特征。
与其他连续变化(或没有固有顺序)的特征不同,循环特征表现出周期性行为,并在特定间隔后重复。例如,一天中的小时、星期中的天数和一年中的月份都是常见的循环特征。以一天中的小时为例,其值可以在0到23之间变化。
如果我们不把它们看作循环特征,也不用合适的方法处理它们,那么,我们可能会损失一些关键信息。
对于一天中24小时,最理想的的特征表示是,“0”点和“23”点必须接近。
而且,“0”点和“1”点之间的距离也要和“0”点和“23”点之间的距离相等。
然而,一般的特征表示方法不满足这些属性,‘23’的值与‘0’相距甚远。实际上,距离属性也未得到满足。
现在,请想一想,是不是应该采用特别的特征工程方法来保留其固有的自然属性呢?
循环特征编码