7 Watch_dou

尚未进行身份认证

我要认证

你要多努力才能修得一个善良的人啊

等级
TA的排名 3k+

M5 Forecasting - Accuracy:Memory Optimization

进入M5,首先要解决的就是内存问题。我在此过程中感受深刻,也学到了很多,下面说一下我的心路历程。我先列出来几个数字。整个过程(数据处理(不包括EDA)、特征构造、训练、预测)执行时间14hour+。设备30G内存,60G磁盘(保证缓存数据存储),8核CPU,系统CentOS Linux release 7.7.1908 (Core)。总结起来大概就是:(6列id + 1914天销量)*30490个商品,其他的价格和节假日不考虑。我做了什么?最开始我对内存消耗没有概念,觉得我的设备不错,不会存着

2020-08-30 02:45:59

M5 Forecasting - Accuracy:Multi-time series prediction with prophet

文章目录总览细节:数据说明1. 创建数据1.1 导入和重塑销售数据1.2 导入日历数据1.3 导入价格数据2. Building DataFrame3. 聚合LEVELSCOARSER4. Prophet聚合数据预测关于Prophet预测的数据形式和参数含义4.1 预测模型定义4.2 预测一部分按照ID聚合之后的时间序列看看情况4.3 所有聚合时间序列预测5. 重新规划要预测的最细粒度的时间序列数6. 小部分序列细粒度扩展计算结果6.1 结果计算函数6.2 预测一部分时间序列看看结果说明预测的思路6.3 可

2020-08-25 01:36:24

M-Competition历史你值得一读

Makridakis竞赛(又称M竞赛或M-Competitions)是由预测研究员Spyros Makridakis领导的团队组织的一系列公开竞赛,旨在评估和比较不同预测方法的准确性。更多请点击Makridakis Competitions1. 它的存在有点感动第一届M始于1982,比赛至今已有5届了,时间久远令感神圣,持续研究与发现的精神令人敬畏,可以算是神圣的M。由于M的存在,开创了很多新的算法,像M3的Theta method ,再如M4的Slawek Smyl’s Hybrid Expone

2020-08-04 16:41:12

时间序列预测中特征构建

传统统计学习方法: naive approach, moving average, Holt linear, exponential smoothing, ARIMA, and Prophet现代机器学习方法: 树模型等深度学习方法: LSTM、Seq2seq、Transform-XL等树模型需要人为构建特征,同时预测值不可超越区间内取值的上限。深度学习网络,可以发现输入数据之间的交互关系,同时可以发现趋势。根据数据可以尝试不同的方法,选择较优的方法。下面是树模型的构造特征的方法。1. 时间戳特

2020-07-30 21:35:49

KDD Cup 2020 - Debiasing:user-item feature

Written by wanping7from datetime import datetime# data processimport numpy as np, pandas as pdfrom datetime import datetime, timedelta# visualizeimport seaborn as snsimport matplotlib.pyplot as plt%matplotlib inline%config ZMQInteractiveShell.a

2020-07-14 12:38:22

KDD Cup 2020 - Debiasing:user feature

Written by wanping7from datetime import datetime# data processimport numpy as np, pandas as pdfrom datetime import datetime, timedelta# visualizeimport seaborn as snsimport matplotlib.pyplot as plt%matplotlib inlineimport plotly.express as pxi

2020-07-14 12:24:20

KDD Cup 2020 - Debiasing:item feature

Written by wanping7from datetime import datetime# data processimport numpy as np, pandas as pdfrom datetime import datetime, timedelta# visualizeimport seaborn as snsimport matplotlib.pyplot as pltget_ipython().run_line_magic('matplotlib', 'inli

2020-07-14 12:12:15

M5 Forecasting - Accuracy:TimeSeries_Seq2seq

来源https://github.com/JEddy92/TimeSeries_Seq2Seq/blob/master/notebooks/TS_Seq2Seq_Conv_Full_Exog.ipynb假设145063个样本,时间序列2015-2016一共550天。Page2015-07-012015-07-022015-07-032015-07-042015-07-052015-07-062015-07-072015-07-082015-07-09…2016

2020-06-29 15:24:50

M5 Forecasting - Accuracy:EDA

sales_train_validation.csv参考:Python版本EDA+传统时间序列方法:https://www.kaggle.com/tarunpaparaju/m5-competition-eda-modelsmodel:naive approach, moving average, Holt linear, exponential smoothing, ARIMA, and ProphetR版本EDA:https://www.kaggle.com/headsortails/b

2020-06-29 15:17:34

M5 Forecasting - Accuracy:Description

IntroductionWelcome to an extensive Exploratory Data Analysis for the 5th Makridakis forecasting competitions (M5)! This notebook will grow over the coming days and weeks into a deep dive of all the relevant aspects of this challenge. Here’s all you need

2020-06-29 15:17:05

permutation importance

哪些特征对预测的影响最大? 这或许是对一个模型提出的最基本问题之一。这个概念就是所谓得到特征重要性。有多种方法来衡量特征重要性。这篇文章Machine Learning Explainability Home Page采用了permutation importance(在此简称PI)方法。PI思路常规思路,我们或许很容易想到,在训练模型的时候很容易得到特征得到重要性,比如树模型直接可以输出特征重要性,但是这个特征对整体的预测效果有多大影响啊?我们可以这样做,首先让全部特征参与训练然后预测得出scor

2020-06-17 17:31:57

python modin加速

modin参考BASE = '../data/output/grid_part_1.pkl'# Read data with Pandasimport pandas as pdstart_time = time.time()df = pd.read_pickle(BASE)print("Pandas Loading Time = {}".format(time.time() - start_time))# Read data with Modinimport modin.panda

2020-06-15 12:41:12

lightgbm GPU编译以及安装超详细讲解

1. lightgbm GPU编译点击链接 找到Build GPU Version或者直接看如下内容。下面说的内容用到相关测软件确保没问题,1.检查是否安装,2.检查安装版本是否满要求!!!LinuxOn Linux GPU version of LightGBM can be built using OpenCL, Boost, CMake and gcc or Clang.The following dependencies should be installed before compil

2020-06-13 20:51:30

Centos7安装Anaconda3配置jupyter notebook问题攻略

wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.shbash Anaconda3-2020.02-Linux-x86_64.sh这里有一些细节,我安装的最新版anaconda,1)提示路径的时候我是自己指定安装路径2)提示Do you wish the installer to initialize Anaconda3 by running conda init? [yes|no],我选择的no,我自己去添.

2020-06-08 12:11:18

大数据集Hierarchical Indexing优化方案

1. 对比The bad way优化之前:30min跑不出来。prices = prices.set_index(["id", "date"])[["sell_price"]].unstack(level=-1).fillna(False)The Better Way: Pandas MultiIndex优化之后:MultiIndex方案两分钟不到。index = [list(prices.id), list(prices.date)]index = pd.MultiIndex.from_a

2020-05-12 08:38:19

插排之希尔排序算法

步骤将数据分成d = n//2 组,每一趟希尔排序从元素d开始,采用直接插排。每个元素的比较和插入均在同一组内进行。更新d = d//2 。直到d=0时停止,当d=1时,相当于对近乎有序的结果进行一次完整的直接插排。​图解图片来源复杂度时间复杂度:最好的情况,时间复杂度O(n)O(n)O(n)。最差的情况,时间复杂度(n2)(n^2)(n2)。平均的...

2020-03-25 12:59:08

交排之冒泡排序算法

步骤从最后一个元素开始,进行相邻两元素比较,若前后元素是逆序,则实施交换。第一遍下来,排在第一个元素是最小的元素,称为有序区(也是全局有序区),其余的是无序区。之后,按照第一步的方法继续在其余的无序区进行比较、交换。直到所有元素都划分到有序区(即无序区为空)。改进:若元素在一趟冒泡的过程中未发生交换,则说明数据已经全部有序,就无需继续冒泡下去,直接输出即可。图解图片来源...

2020-03-25 12:56:49

交排之快速排序算法

步骤选取基准:从数据中选择一个数作为基准值(pivot),一般选择最左边。分区操作:将数据中小于基准的全部放在pivot的左边位置,其余放在右边位置。该(分区)操作完成之后,原来的基准会在数据的中间某一位置。递归下去,得到有序结果。图解图片来源详情List = [5, 1, 3, 2, 4],s = 0, t = 4基准值tmp = 5,i=s,j=tj从右向左移动,...

2020-03-25 12:53:21

tf.data.Dataset.repeat、batch和shuffle

文章目录结论1. 导入2. 读取数据3. 计数器4. 实验4.1 Shuffle——》Repeat——》Batch4.2 Shuffle——》Batch——》Repeat4.3 Batch——》Repeat——》Shuffle4.4 Repeat——》Batch——》Shuffle结论操作结果先Shuffle每个Repeat的顺序都不一样后Shuffle所有的Re...

2020-03-23 22:48:14

Spark读写parquet

spark的parquet介绍列式存储布局可加速查询,只检查需要的列并对执行计算,也就是只读取一个数据文件或表的小部分数据。Parquet 支持灵活的压缩选项,可以显著减少磁盘上的存储。转换需要时间,时间长了一些。查询性能的提升在某些情况下可能达到 30 倍或更高,存储的节省可高达 75%。如果在 HDFS 上拥有基于文本的数据文件或表,而且正在使用 Spark SQL 对它们执行查...

2020-03-23 22:20:56

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 推荐红人
    推荐红人
    发布高质量Blink获得高赞和评论,进入推荐栏目即可获得
  • 精彩红人
    精彩红人
    发布高质量Blink获得高赞和评论,进入精彩栏目即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。