Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Machine learning 什么';在机器学习的价值预测模型中,将一天中的一小时和一周中的一天表示为一项功能的最佳方式是什么?_Machine Learning_Scikit Learn_Feature Selection_Feature Engineering - Fatal编程技术网

Machine learning 什么';在机器学习的价值预测模型中,将一天中的一小时和一周中的一天表示为一项功能的最佳方式是什么?

Machine learning 什么';在机器学习的价值预测模型中,将一天中的一小时和一周中的一天表示为一项功能的最佳方式是什么?,machine-learning,scikit-learn,feature-selection,feature-engineering,Machine Learning,Scikit Learn,Feature Selection,Feature Engineering,当使用机器学习中的功能并在矩阵中表示它们时,建议使用什么方法将一天中的小时数和一周中的某一天表示为价值预测模型的功能 使用0表示所有小时值,使用1表示小时,是否是将这些属性表示为功能的首选方式?星期几也一样吗 谢谢在这种情况下,每周有周期性趋势,长期有上升趋势。因此,您需要对两个时间变量进行编码: 一周中的第二天 绝对时间 一般来说 有几个常见的时间范围,这些时间范围内会出现趋势: 绝对时间 一年中的第二天 一周中的第二天 年月 每天的小时数 每分钟 寻找所有这些方面的趋势 怪异趋势 也

当使用机器学习中的功能并在矩阵中表示它们时,建议使用什么方法将一天中的小时数和一周中的某一天表示为价值预测模型的功能

使用0表示所有小时值,使用1表示小时,是否是将这些属性表示为功能的首选方式?星期几也一样吗


谢谢

在这种情况下,每周有周期性趋势,长期有上升趋势。因此,您需要对两个时间变量进行编码:

  • 一周中的第二天
  • 绝对时间
一般来说

有几个常见的时间范围,这些时间范围内会出现趋势:

  • 绝对时间
  • 一年中的第二天
  • 一周中的第二天
  • 年月
  • 每天的小时数
  • 每分钟
寻找所有这些方面的趋势

怪异趋势

也要注意奇怪的趋势。例如,您可能会看到罕见但持续的基于时间的趋势:

  • 你是复活节吗
  • 是超级碗吗
  • 是国家紧急情况吗 等等
这些通常要求您对照一些将事件映射到时间的外部源交叉引用数据

为什么使用图形?

有两个原因,我认为绘图是如此重要

怪异趋势: 虽然一般趋势可以很容易地自动化(每次只需添加它们),但奇怪的趋势通常需要人眼和世界知识来发现。这就是图形如此重要的原因之一

数据错误: 数据中经常有严重错误。例如,您可能会发现日期编码为两种格式,并且只有一种格式正确加载到您的程序中。有无数这样的问题,他们是惊人的普遍。这是我认为绘图很重要的另一个原因,不仅仅是对于时间序列,而且对于任何数据


答案来自

不,您的选择并不完美,因为这样您将失去循环表示,因为在小时内,机器学习需要知道23:00接近00:00,在工作日也是如此,通常从周一开始为0,周日开始为6,所以如果您使用您的方法,机器学习将每一天或每一小时视为一个独立的实体,与其他实体没有任何关系,这是错误的。 表示此类数据的正确方法是用两个特征表示每个特征(小时、一周中的某一天…)。 这两个特性是值的sin/cos,例如,对于hours,您创建hours\u cos/hours\u sin,然后为每个小时计算sin和cos值,在应用sin和cos之前,您需要计算θ,在python中,您只需从math导入pi即可:

θ=2*pi*小时


然后从数学中导入sin和cos,并计算sin(θ)cos(θ)

您的问题似乎集中在机器学习上,与编程没有直接关系,因此不在这里讨论。您可能会发现或更适合这些问题。