联合多重时间序列本身是一件挑战性十足的事,数据样本的不均衡导致了不同时间序列对于模型的影响程度是不同的。拿商品销售为例,销售数量多一个数量级,商品数量就少一个数量级,每个月卖10个的商品如果有100,000种,每个月卖100个的商品就只有10,000种,每个月卖1000个的商品就只有1000种。(假定此时销售状况满足幂律分布:y = 1,000,000 / x)这种不均衡样本导致输入值的量级差异,商品A每天销售数百个,商品B每天销售数万个,两个商品共同训练时商品A的信息会被忽略掉,因为相对于B而言,A对神经网络参数的影响太低。但是,A时间序列中隐含的信息是有价值的,数百个销售额仍然能够反映季节性和趋势性的变化。

而对于这种样本量级差异的解决方法,需要对商品销售量进行缩放,对应到神经网络中,即输入到神经网络前除以v, 输出后乘以v。(需要确保输入值除以v,进入神经网络在每一个节点计算以及每次迭代后,输出后乘以v,与不进行乘除操作是等价的。)如何选择为每一个商品选择对应的v是一个挑战,实践发现使用商品的历史销量均值是一个不错的选择。

本文转载自:https://amazonaws-china.com/cn/blogs/china/time-series-prediction-with-deep/?nc1=b_rp

  • 小结:
    不同量级的序列除以其均值,均变为在1附近波动的序列,则变为同一量级;如果乘以其均值,则返回到原来的量级和波动性等统计量。

  • 常用数据缩放方法,在特征工程中经常会用到

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn import preprocessingdef plot(data, title):sns.set_style('dark')f, ax = plt.subplots()ax.set(ylabel='frequency')ax.set(xlabel='height(blue) / weight(green)')ax.set(title=title)sns.distplot(data[:, 0:1], color='blue')sns.distplot(data[:, 1:2], color='green')plt.savefig(title + '.png')plt.show()np.random.seed(42)
height = np.random.normal(loc=168, scale=5, size=1000).reshape(-1, 1)
weight = np.random.normal(loc=70, scale=10, size=1000).reshape(-1, 1)original_data = np.concatenate((height, weight), axis=1)
plot(original_data, 'Original')standard_scaler_data = preprocessing.StandardScaler().fit_transform(original_data)
plot(standard_scaler_data, 'StandardScaler')min_max_scaler_data = preprocessing.MinMaxScaler().fit_transform(original_data)
plot(min_max_scaler_data, 'MinMaxScaler')max_abs_scaler_data = preprocessing.MaxAbsScaler().fit_transform(original_data)
plot(max_abs_scaler_data, 'MaxAbsScaler')normalizer_data = preprocessing.Normalizer().fit_transform(original_data)
plot(normalizer_data, 'Normalizer')robust_scaler_data = preprocessing.RobustScaler().fit_transform(original_data)
plot(robust_scaler_data, 'RobustScaler')

举个例子来看看它们之间的区别,假设一个数据集包括「身高」和「体重」两个特征,它们都满足正态分布,画出原始数据图像为:
使用1.StandardScaler()缩放,结果为:

使用2.MinMaxScaler()缩放,结果为:

使用3.MaxAbsScaler()缩放,结果为:

使用4.Normalizer()缩放,结果为:

作者:thothsun
链接:https://www.zhihu.com/question/20467170/answer/839255695
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
https://www.zhihu.com/question/20467170

  • 其他(0,1)归一化的方法:

    上图里f1(x)是普通的(0,1)归一化,每个元素xi之间的相对关系没有被改变;f2(x)又叫softmax,会将较大的元素所占比例继续放大,当x>0时会使各元素的区分度更明显;f3(x)会将较大的元素所占比例压缩,当x>0时会使各元素的区分度更小,差距更小。

将不同量级的序列转化为同一量级,及常用的数据缩放的方法相关推荐

  1. MATLAB与图像处理(四):将图片序列转化为视频文件,将视频文件转化为图片

    一,将图片序列转化为视频文件 [cpp] view plain copy

  2. 将图片序列转化为视频文件

    原文  http://blog.csdn.net/jxlijunhao/article/details/19981237  原文  https://blog.csdn.net/awakeljw/art ...

  3. 将一维数据(序列)转化为二维数据(图像)的方法汇总GAFS, MTF, Recurrence plot,STFT

    将一维序列数据转化为二维图像数据的方法汇总 详细 全面 一.背景 二.方法介绍 格拉米角场 GAFs 原理 实现步骤 调用示例 马尔可夫变迁场 MTF 原理 实现步骤 调用示例 递归图 Recurre ...

  4. 将顺序二叉树存储序列转化为链式存储序列-c语言

    将顺序二叉树存储序列转化为链式存储序列 - 题目描述: 将给定顺序二叉树存储序列转换为链式二叉树存储序列显示 char data[13] = {'0','A','B','C','0','D','E', ...

  5. R语言使用单个向量创建矩阵数据、通过byrow参数指定从向量转化为矩阵的过程中的数据排布方式

    R语言使用单个向量创建矩阵数据.通过byrow参数指定从向量转化为矩阵的过程中的数据排布方式 目录 R语言使用单个向量创建矩阵数据.通过byrow参数指定从向量转化为矩阵的过程中的数据排布方式 R语言 ...

  6. pandas使用strftime函数将dataframe的日期格式数据列按照指定格式(format)转化为日期(时间)字符串数据列

    pandas使用strftime函数将dataframe的日期格式数据列按照指定格式(format)转化为日期(时间)字符串数据列 目录

  7. python lncrna_一种基于序列组成,结构信息及理化特征的lncRNA鉴定方法与流程

    本发明属于生物信息领域,尤其涉及lncRNA的鉴定. 背景技术: : 在人类基因组中,有80%的序列具有生物学功能,而编码蛋白质的序列只占基因组的不到 2%.我们将长度大于200碱基,不能编码蛋白质的 ...

  8. 第五章---字符串+序列转化

    1."""判断回文数""" s = "123321" if s == s[::-1]:print("是回文数& ...

  9. (C++)判断一个序列是non-increasing/non-decreasing还是两者都不的两个方法

    思路:根据前两个值预设类型,再遍历后面的pair,看是否推翻预设 int judgeType(vector<int> vi){//-1 递减 0 啥也不是 1 递增 if(vi.size( ...

最新文章

  1. 在MAC下安装redis以及其PHP扩展
  2. kotlin内联函数let、with、run、apply、also
  3. Mac OS X 修复基本命令失效的问题
  4. .net core 技术栈 网站收集
  5. 关于iis中的网站,在ie下点击服务器控件无反应的问题
  6. 关于C语言static定义函数类型的具体解释
  7. [转载]MySQL开发中常用的查询语句总结
  8. js表单提交,面向对象
  9. c语言浪漫烟花表白,C语言实战之浪漫烟花表白程序.pdf
  10. 基于飞桨PaddlePaddle实现BigGAN生成动漫图像——为艺术创作赋能
  11. ul1581标准_ul1581燃烧标准
  12. 性能测试基础知识-测试指标(转载自阿里云)
  13. 彻底清除计算机病毒的方式是,彻底清除电脑病毒的小方法
  14. 【数据结构】 树与二叉树的基本概念、结构特点及性质
  15. 小迪安全|第08天:信息收集-架构,搭建,WAF等
  16. 团队任务3每日立会(2018-10-22)
  17. [区间dp]涂色 洛谷P4170
  18. PDPS软件:工装夹具机械装置运动操作的创建方法
  19. C语言实现 扫雷游戏 | 简单项目
  20. solidworks画螺纹

热门文章

  1. matlab非线性最小二乘拟合
  2. 我的2013 一名计算机教师的高开低走
  3. $.get()调用php_jquery get ($.get) 事件用法与分析
  4. excel表格怎么在滚动拖动时行列固定不动?
  5. iphone计算机快捷键,PC 上的 iTunes 键盘快捷键
  6. Spring Security使用记录
  7. css多行文本省略号不生效
  8. 【哈佛学习力10:使命感】
  9. 数据标注丨关于3D点云的这些知识,你知道几个?
  10. extjs .net core开发的私有网盘管理系统