{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Structured and time series data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This notebook contains an implementation of the third place result in the Rossman Kaggle competition as detailed in Guo/Berkhahn's [Entity Embeddings of Categorical Variables](https://arxiv.org/abs/1604.06737).\n", "\n", "The motivation behind exploring this architecture is it's relevance to real-world application. Most data used for decision making day-to-day in industry is structured and/or time-series data. Here we explore the end-to-end process of using neural networks with practical structured data problems." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "%reload_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from fastai.structured import *\n", "from fastai.column_data import *\n", "np.set_printoptions(threshold=50, edgeitems=20)\n", "\n", "PATH='data/rossmann/'" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true, "heading_collapsed": true, "scrolled": false }, "source": [ "## Create datasets" ] }, { "cell_type": "markdown", "metadata": { "hidden": true }, "source": [ "In addition to the provided data, we will be using external datasets put together by participants in the Kaggle competition. You can download all of them [here](http://files.fast.ai/part2/lesson14/rossmann.tgz).\n", "\n", "For completeness, the implementation used to put them together is included below." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "hidden": true }, "outputs": [], "source": [ "def concat_csvs(dirname):\n", " path = f'{PATH}{dirname}'\n", " filenames=glob(f\"{PATH}/*.csv\")\n", "\n", " wrote_header = False\n", " with open(f\"{path}.csv\",\"w\") as outputfile:\n", " for filename in filenames:\n", " name = filename.split(\".\")[0]\n", " with open(filename) as f:\n", " line = f.readline()\n", " if not wrote_header:\n", " wrote_header = True\n", " outputfile.write(\"file,\"+line)\n", " for line in f:\n", " outputfile.write(name + \",\" + line)\n", " outputfile.write(\"\\n\")" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "hidden": true }, "outputs": [], "source": [ "# concat_csvs('googletrend')\n", "# concat_csvs('weather')" ] }, { "cell_type": "markdown", "metadata": { "hidden": true }, "source": [ "Feature Space:\n", "* train: Training set provided by competition\n", "* store: List of stores\n", "* store_states: mapping of store to the German state they are in\n", "* List of German state names\n", "* googletrend: trend of certain google keywords over time, found by users to correlate well w/ given data\n", "* weather: weather\n", "* test: testing set" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "hidden": true }, "outputs": [], "source": [ "table_names = ['train', 'store', 'store_states', 'state_names', \n", " 'googletrend', 'weather', 'test']" ] }, { "cell_type": "markdown", "metadata": { "hidden": true }, "source": [ "We'll be using the popular data manipulation framework `pandas`. Among other things, pandas allows you to manipulate tables/data frames in python as one would in a database.\n", "\n", "We're going to go ahead and load all of our csv's as dataframes into the list `tables`." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "hidden": true }, "outputs": [], "source": [ "tables = [pd.read_csv(f'{PATH}{fname}.csv', low_memory=False) for fname in table_names]" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "hidden": true }, "outputs": [], "source": [ "from IPython.display import HTML" ] }, { "cell_type": "markdown", "metadata": { "hidden": true }, "source": [ "We can use `head()` to get a quick look at the contents of each table:\n", "* train: Contains store information on a daily basis, tracks things like sales, customers, whether that day was a holdiay, etc.\n", "* store: general info about the store including competition, etc.\n", "* store_states: maps store to state it is in\n", "* state_names: Maps state abbreviations to names\n", "* googletrend: trend data for particular week/state\n", "* weather: weather conditions for each state\n", "* test: Same as training table, w/o sales and customers\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "hidden": true }, "outputs": [ { "data": { "text/html": [ "
\n", " | Store | \n", "DayOfWeek | \n", "Date | \n", "Sales | \n", "Customers | \n", "Open | \n", "Promo | \n", "StateHoliday | \n", "SchoolHoliday | \n", "
---|---|---|---|---|---|---|---|---|---|
0 | \n", "1 | \n", "5 | \n", "2015-07-31 | \n", "5263 | \n", "555 | \n", "1 | \n", "1 | \n", "0 | \n", "1 | \n", "
1 | \n", "2 | \n", "5 | \n", "2015-07-31 | \n", "6064 | \n", "625 | \n", "1 | \n", "1 | \n", "0 | \n", "1 | \n", "
2 | \n", "3 | \n", "5 | \n", "2015-07-31 | \n", "8314 | \n", "821 | \n", "1 | \n", "1 | \n", "0 | \n", "1 | \n", "
3 | \n", "4 | \n", "5 | \n", "2015-07-31 | \n", "13995 | \n", "1498 | \n", "1 | \n", "1 | \n", "0 | \n", "1 | \n", "
4 | \n", "5 | \n", "5 | \n", "2015-07-31 | \n", "4822 | \n", "559 | \n", "1 | \n", "1 | \n", "0 | \n", "1 | \n", "
\n", " | Store | \n", "StoreType | \n", "Assortment | \n", "CompetitionDistance | \n", "CompetitionOpenSinceMonth | \n", "CompetitionOpenSinceYear | \n", "Promo2 | \n", "Promo2SinceWeek | \n", "Promo2SinceYear | \n", "PromoInterval | \n", "
---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "1 | \n", "c | \n", "a | \n", "1270.0 | \n", "9.0 | \n", "2008.0 | \n", "0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
1 | \n", "2 | \n", "a | \n", "a | \n", "570.0 | \n", "11.0 | \n", "2007.0 | \n", "1 | \n", "13.0 | \n", "2010.0 | \n", "Jan,Apr,Jul,Oct | \n", "
2 | \n", "3 | \n", "a | \n", "a | \n", "14130.0 | \n", "12.0 | \n", "2006.0 | \n", "1 | \n", "14.0 | \n", "2011.0 | \n", "Jan,Apr,Jul,Oct | \n", "
3 | \n", "4 | \n", "c | \n", "c | \n", "620.0 | \n", "9.0 | \n", "2009.0 | \n", "0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
4 | \n", "5 | \n", "a | \n", "a | \n", "29910.0 | \n", "4.0 | \n", "2015.0 | \n", "0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
\n", " | Store | \n", "State | \n", "
---|---|---|
0 | \n", "1 | \n", "HE | \n", "
1 | \n", "2 | \n", "TH | \n", "
2 | \n", "3 | \n", "NW | \n", "
3 | \n", "4 | \n", "BE | \n", "
4 | \n", "5 | \n", "SN | \n", "
\n", " | StateName | \n", "State | \n", "
---|---|---|
0 | \n", "BadenWuerttemberg | \n", "BW | \n", "
1 | \n", "Bayern | \n", "BY | \n", "
2 | \n", "Berlin | \n", "BE | \n", "
3 | \n", "Brandenburg | \n", "BB | \n", "
4 | \n", "Bremen | \n", "HB | \n", "
\n", " | file | \n", "week | \n", "trend | \n", "
---|---|---|---|
0 | \n", "Rossmann_DE_SN | \n", "2012-12-02 - 2012-12-08 | \n", "96 | \n", "
1 | \n", "Rossmann_DE_SN | \n", "2012-12-09 - 2012-12-15 | \n", "95 | \n", "
2 | \n", "Rossmann_DE_SN | \n", "2012-12-16 - 2012-12-22 | \n", "91 | \n", "
3 | \n", "Rossmann_DE_SN | \n", "2012-12-23 - 2012-12-29 | \n", "48 | \n", "
4 | \n", "Rossmann_DE_SN | \n", "2012-12-30 - 2013-01-05 | \n", "67 | \n", "
\n", " | file | \n", "Date | \n", "Max_TemperatureC | \n", "Mean_TemperatureC | \n", "Min_TemperatureC | \n", "Dew_PointC | \n", "MeanDew_PointC | \n", "Min_DewpointC | \n", "Max_Humidity | \n", "Mean_Humidity | \n", "... | \n", "Max_VisibilityKm | \n", "Mean_VisibilityKm | \n", "Min_VisibilitykM | \n", "Max_Wind_SpeedKm_h | \n", "Mean_Wind_SpeedKm_h | \n", "Max_Gust_SpeedKm_h | \n", "Precipitationmm | \n", "CloudCover | \n", "Events | \n", "WindDirDegrees | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "NordrheinWestfalen | \n", "2013-01-01 | \n", "8 | \n", "4 | \n", "2 | \n", "7 | \n", "5 | \n", "1 | \n", "94 | \n", "87 | \n", "... | \n", "31.0 | \n", "12.0 | \n", "4.0 | \n", "39 | \n", "26 | \n", "58.0 | \n", "5.08 | \n", "6.0 | \n", "Rain | \n", "215 | \n", "
1 | \n", "NordrheinWestfalen | \n", "2013-01-02 | \n", "7 | \n", "4 | \n", "1 | \n", "5 | \n", "3 | \n", "2 | \n", "93 | \n", "85 | \n", "... | \n", "31.0 | \n", "14.0 | \n", "10.0 | \n", "24 | \n", "16 | \n", "NaN | \n", "0.00 | \n", "6.0 | \n", "Rain | \n", "225 | \n", "
2 | \n", "NordrheinWestfalen | \n", "2013-01-03 | \n", "11 | \n", "8 | \n", "6 | \n", "10 | \n", "8 | \n", "4 | \n", "100 | \n", "93 | \n", "... | \n", "31.0 | \n", "8.0 | \n", "2.0 | \n", "26 | \n", "21 | \n", "NaN | \n", "1.02 | \n", "7.0 | \n", "Rain | \n", "240 | \n", "
3 | \n", "NordrheinWestfalen | \n", "2013-01-04 | \n", "9 | \n", "9 | \n", "8 | \n", "9 | \n", "9 | \n", "8 | \n", "100 | \n", "94 | \n", "... | \n", "11.0 | \n", "5.0 | \n", "2.0 | \n", "23 | \n", "14 | \n", "NaN | \n", "0.25 | \n", "7.0 | \n", "Rain | \n", "263 | \n", "
4 | \n", "NordrheinWestfalen | \n", "2013-01-05 | \n", "8 | \n", "8 | \n", "7 | \n", "8 | \n", "7 | \n", "6 | \n", "100 | \n", "94 | \n", "... | \n", "10.0 | \n", "6.0 | \n", "3.0 | \n", "16 | \n", "10 | \n", "NaN | \n", "0.00 | \n", "7.0 | \n", "Rain | \n", "268 | \n", "
5 rows × 24 columns
\n", "\n", " | Id | \n", "Store | \n", "DayOfWeek | \n", "Date | \n", "Open | \n", "Promo | \n", "StateHoliday | \n", "SchoolHoliday | \n", "
---|---|---|---|---|---|---|---|---|
0 | \n", "1 | \n", "1 | \n", "4 | \n", "2015-09-17 | \n", "1.0 | \n", "1 | \n", "0 | \n", "0 | \n", "
1 | \n", "2 | \n", "3 | \n", "4 | \n", "2015-09-17 | \n", "1.0 | \n", "1 | \n", "0 | \n", "0 | \n", "
2 | \n", "3 | \n", "7 | \n", "4 | \n", "2015-09-17 | \n", "1.0 | \n", "1 | \n", "0 | \n", "0 | \n", "
3 | \n", "4 | \n", "8 | \n", "4 | \n", "2015-09-17 | \n", "1.0 | \n", "1 | \n", "0 | \n", "0 | \n", "
4 | \n", "5 | \n", "9 | \n", "4 | \n", "2015-09-17 | \n", "1.0 | \n", "1 | \n", "0 | \n", "0 | \n", "
\n", " | Store | \n", "DayOfWeek | \n", "Date | \n", "Sales | \n", "Customers | \n", "Open | \n", "Promo | \n", "StateHoliday | \n", "SchoolHoliday | \n", "
---|---|---|---|---|---|---|---|---|---|
count | \n", "1.01721e+06 | \n", "1.01721e+06 | \n", "NaN | \n", "1.01721e+06 | \n", "1.01721e+06 | \n", "1.01721e+06 | \n", "1.01721e+06 | \n", "NaN | \n", "1.01721e+06 | \n", "
mean | \n", "558.43 | \n", "3.99834 | \n", "NaN | \n", "5773.82 | \n", "633.146 | \n", "0.830107 | \n", "0.381515 | \n", "NaN | \n", "0.178647 | \n", "
std | \n", "321.909 | \n", "1.99739 | \n", "NaN | \n", "3849.93 | \n", "464.412 | \n", "0.375539 | \n", "0.485759 | \n", "NaN | \n", "0.383056 | \n", "
min | \n", "1 | \n", "1 | \n", "NaN | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "NaN | \n", "0 | \n", "
25% | \n", "280 | \n", "2 | \n", "NaN | \n", "3727 | \n", "405 | \n", "1 | \n", "0 | \n", "NaN | \n", "0 | \n", "
50% | \n", "558 | \n", "4 | \n", "NaN | \n", "5744 | \n", "609 | \n", "1 | \n", "0 | \n", "NaN | \n", "0 | \n", "
75% | \n", "838 | \n", "6 | \n", "NaN | \n", "7856 | \n", "837 | \n", "1 | \n", "1 | \n", "NaN | \n", "0 | \n", "
max | \n", "1115 | \n", "7 | \n", "NaN | \n", "41551 | \n", "7388 | \n", "1 | \n", "1 | \n", "NaN | \n", "1 | \n", "
counts | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "1017209 | \n", "
uniques | \n", "1115 | \n", "7 | \n", "942 | \n", "21734 | \n", "4086 | \n", "2 | \n", "2 | \n", "4 | \n", "2 | \n", "
missing | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "
types | \n", "numeric | \n", "numeric | \n", "categorical | \n", "numeric | \n", "numeric | \n", "bool | \n", "bool | \n", "categorical | \n", "bool | \n", "
\n", " | Store | \n", "StoreType | \n", "Assortment | \n", "CompetitionDistance | \n", "CompetitionOpenSinceMonth | \n", "CompetitionOpenSinceYear | \n", "Promo2 | \n", "Promo2SinceWeek | \n", "Promo2SinceYear | \n", "PromoInterval | \n", "
---|---|---|---|---|---|---|---|---|---|---|
count | \n", "1115 | \n", "NaN | \n", "NaN | \n", "1112 | \n", "761 | \n", "761 | \n", "1115 | \n", "571 | \n", "571 | \n", "NaN | \n", "
mean | \n", "558 | \n", "NaN | \n", "NaN | \n", "5404.9 | \n", "7.2247 | \n", "2008.67 | \n", "0.512108 | \n", "23.5954 | \n", "2011.76 | \n", "NaN | \n", "
std | \n", "322.017 | \n", "NaN | \n", "NaN | \n", "7663.17 | \n", "3.21235 | \n", "6.19598 | \n", "0.500078 | \n", "14.142 | \n", "1.67494 | \n", "NaN | \n", "
min | \n", "1 | \n", "NaN | \n", "NaN | \n", "20 | \n", "1 | \n", "1900 | \n", "0 | \n", "1 | \n", "2009 | \n", "NaN | \n", "
25% | \n", "279.5 | \n", "NaN | \n", "NaN | \n", "717.5 | \n", "4 | \n", "2006 | \n", "0 | \n", "13 | \n", "2011 | \n", "NaN | \n", "
50% | \n", "558 | \n", "NaN | \n", "NaN | \n", "2325 | \n", "8 | \n", "2010 | \n", "1 | \n", "22 | \n", "2012 | \n", "NaN | \n", "
75% | \n", "836.5 | \n", "NaN | \n", "NaN | \n", "6882.5 | \n", "10 | \n", "2013 | \n", "1 | \n", "37 | \n", "2013 | \n", "NaN | \n", "
max | \n", "1115 | \n", "NaN | \n", "NaN | \n", "75860 | \n", "12 | \n", "2015 | \n", "1 | \n", "50 | \n", "2015 | \n", "NaN | \n", "
counts | \n", "1115 | \n", "1115 | \n", "1115 | \n", "1112 | \n", "761 | \n", "761 | \n", "1115 | \n", "571 | \n", "571 | \n", "571 | \n", "
uniques | \n", "1115 | \n", "4 | \n", "3 | \n", "654 | \n", "12 | \n", "23 | \n", "2 | \n", "24 | \n", "7 | \n", "3 | \n", "
missing | \n", "0 | \n", "0 | \n", "0 | \n", "3 | \n", "354 | \n", "354 | \n", "0 | \n", "544 | \n", "544 | \n", "544 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "0% | \n", "0.27% | \n", "31.75% | \n", "31.75% | \n", "0% | \n", "48.79% | \n", "48.79% | \n", "48.79% | \n", "
types | \n", "numeric | \n", "categorical | \n", "categorical | \n", "numeric | \n", "numeric | \n", "numeric | \n", "bool | \n", "numeric | \n", "numeric | \n", "categorical | \n", "
\n", " | Store | \n", "State | \n", "
---|---|---|
count | \n", "1115 | \n", "NaN | \n", "
mean | \n", "558 | \n", "NaN | \n", "
std | \n", "322.017 | \n", "NaN | \n", "
min | \n", "1 | \n", "NaN | \n", "
25% | \n", "279.5 | \n", "NaN | \n", "
50% | \n", "558 | \n", "NaN | \n", "
75% | \n", "836.5 | \n", "NaN | \n", "
max | \n", "1115 | \n", "NaN | \n", "
counts | \n", "1115 | \n", "1115 | \n", "
uniques | \n", "1115 | \n", "12 | \n", "
missing | \n", "0 | \n", "0 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "
types | \n", "numeric | \n", "categorical | \n", "
\n", " | StateName | \n", "State | \n", "
---|---|---|
count | \n", "16 | \n", "16 | \n", "
unique | \n", "16 | \n", "16 | \n", "
top | \n", "Hamburg | \n", "BB | \n", "
freq | \n", "1 | \n", "1 | \n", "
counts | \n", "16 | \n", "16 | \n", "
uniques | \n", "16 | \n", "16 | \n", "
missing | \n", "0 | \n", "0 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "
types | \n", "unique | \n", "unique | \n", "
\n", " | file | \n", "week | \n", "trend | \n", "
---|---|---|---|
count | \n", "NaN | \n", "NaN | \n", "2072 | \n", "
mean | \n", "NaN | \n", "NaN | \n", "63.8142 | \n", "
std | \n", "NaN | \n", "NaN | \n", "12.6502 | \n", "
min | \n", "NaN | \n", "NaN | \n", "0 | \n", "
25% | \n", "NaN | \n", "NaN | \n", "55 | \n", "
50% | \n", "NaN | \n", "NaN | \n", "64 | \n", "
75% | \n", "NaN | \n", "NaN | \n", "72 | \n", "
max | \n", "NaN | \n", "NaN | \n", "100 | \n", "
counts | \n", "2072 | \n", "2072 | \n", "2072 | \n", "
uniques | \n", "14 | \n", "148 | \n", "68 | \n", "
missing | \n", "0 | \n", "0 | \n", "0 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "0% | \n", "
types | \n", "categorical | \n", "categorical | \n", "numeric | \n", "
\n", " | file | \n", "Date | \n", "Max_TemperatureC | \n", "Mean_TemperatureC | \n", "Min_TemperatureC | \n", "Dew_PointC | \n", "MeanDew_PointC | \n", "Min_DewpointC | \n", "Max_Humidity | \n", "Mean_Humidity | \n", "... | \n", "Max_VisibilityKm | \n", "Mean_VisibilityKm | \n", "Min_VisibilitykM | \n", "Max_Wind_SpeedKm_h | \n", "Mean_Wind_SpeedKm_h | \n", "Max_Gust_SpeedKm_h | \n", "Precipitationmm | \n", "CloudCover | \n", "Events | \n", "WindDirDegrees | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
count | \n", "NaN | \n", "NaN | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "... | \n", "15459 | \n", "15459 | \n", "15459 | \n", "15840 | \n", "15840 | \n", "3604 | \n", "15840 | \n", "14667 | \n", "NaN | \n", "15840 | \n", "
mean | \n", "NaN | \n", "NaN | \n", "14.6441 | \n", "10.389 | \n", "6.19899 | \n", "8.58782 | \n", "6.20581 | \n", "3.62614 | \n", "93.6596 | \n", "74.2829 | \n", "... | \n", "24.0576 | \n", "12.2398 | \n", "7.02516 | \n", "22.7666 | \n", "11.9722 | \n", "48.8643 | \n", "0.831718 | \n", "5.55131 | \n", "NaN | \n", "175.897 | \n", "
std | \n", "NaN | \n", "NaN | \n", "8.64601 | \n", "7.37926 | \n", "6.52639 | \n", "6.24478 | \n", "6.08677 | \n", "6.12839 | \n", "7.67853 | \n", "13.4866 | \n", "... | \n", "8.9768 | \n", "5.06794 | \n", "4.9806 | \n", "8.98862 | \n", "5.87284 | \n", "13.027 | \n", "2.51351 | \n", "1.68771 | \n", "NaN | \n", "101.589 | \n", "
min | \n", "NaN | \n", "NaN | \n", "-11 | \n", "-13 | \n", "-15 | \n", "-14 | \n", "-15 | \n", "-73 | \n", "44 | \n", "30 | \n", "... | \n", "0 | \n", "0 | \n", "0 | \n", "3 | \n", "2 | \n", "21 | \n", "0 | \n", "0 | \n", "NaN | \n", "-1 | \n", "
25% | \n", "NaN | \n", "NaN | \n", "8 | \n", "4 | \n", "1 | \n", "4 | \n", "2 | \n", "-1 | \n", "90.75 | \n", "65 | \n", "... | \n", "14 | \n", "10 | \n", "3 | \n", "16 | \n", "8 | \n", "39 | \n", "0 | \n", "5 | \n", "NaN | \n", "80 | \n", "
50% | \n", "NaN | \n", "NaN | \n", "15 | \n", "11 | \n", "7 | \n", "9 | \n", "7 | \n", "4 | \n", "94 | \n", "76 | \n", "... | \n", "31 | \n", "11 | \n", "7 | \n", "21 | \n", "11 | \n", "48 | \n", "0 | \n", "6 | \n", "NaN | \n", "202 | \n", "
75% | \n", "NaN | \n", "NaN | \n", "21 | \n", "16 | \n", "11 | \n", "13 | \n", "11 | \n", "8 | \n", "100 | \n", "85 | \n", "... | \n", "31 | \n", "14 | \n", "10 | \n", "27 | \n", "14 | \n", "55 | \n", "0.25 | \n", "7 | \n", "NaN | \n", "256 | \n", "
max | \n", "NaN | \n", "NaN | \n", "39 | \n", "31 | \n", "24 | \n", "25 | \n", "20 | \n", "19 | \n", "100 | \n", "100 | \n", "... | \n", "31 | \n", "31 | \n", "31 | \n", "101 | \n", "53 | \n", "111 | \n", "58.93 | \n", "8 | \n", "NaN | \n", "360 | \n", "
counts | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "15840 | \n", "... | \n", "15459 | \n", "15459 | \n", "15459 | \n", "15840 | \n", "15840 | \n", "3604 | \n", "15840 | \n", "14667 | \n", "11889 | \n", "15840 | \n", "
uniques | \n", "16 | \n", "990 | \n", "51 | \n", "45 | \n", "40 | \n", "40 | \n", "36 | \n", "40 | \n", "53 | \n", "71 | \n", "... | \n", "24 | \n", "32 | \n", "24 | \n", "44 | \n", "29 | \n", "47 | \n", "41 | \n", "9 | \n", "21 | \n", "362 | \n", "
missing | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "... | \n", "381 | \n", "381 | \n", "381 | \n", "0 | \n", "0 | \n", "12236 | \n", "0 | \n", "1173 | \n", "3951 | \n", "0 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "... | \n", "2.41% | \n", "2.41% | \n", "2.41% | \n", "0% | \n", "0% | \n", "77.25% | \n", "0% | \n", "7.41% | \n", "24.94% | \n", "0% | \n", "
types | \n", "categorical | \n", "categorical | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "... | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "numeric | \n", "categorical | \n", "numeric | \n", "
13 rows × 24 columns
\n", "\n", " | Id | \n", "Store | \n", "DayOfWeek | \n", "Date | \n", "Open | \n", "Promo | \n", "StateHoliday | \n", "SchoolHoliday | \n", "
---|---|---|---|---|---|---|---|---|
count | \n", "41088 | \n", "41088 | \n", "41088 | \n", "NaN | \n", "41077 | \n", "41088 | \n", "NaN | \n", "41088 | \n", "
mean | \n", "20544.5 | \n", "555.9 | \n", "3.97917 | \n", "NaN | \n", "0.854322 | \n", "0.395833 | \n", "NaN | \n", "0.443487 | \n", "
std | \n", "11861.2 | \n", "320.274 | \n", "2.01548 | \n", "NaN | \n", "0.352787 | \n", "0.489035 | \n", "NaN | \n", "0.496802 | \n", "
min | \n", "1 | \n", "1 | \n", "1 | \n", "NaN | \n", "0 | \n", "0 | \n", "NaN | \n", "0 | \n", "
25% | \n", "10272.8 | \n", "279.75 | \n", "2 | \n", "NaN | \n", "1 | \n", "0 | \n", "NaN | \n", "0 | \n", "
50% | \n", "20544.5 | \n", "553.5 | \n", "4 | \n", "NaN | \n", "1 | \n", "0 | \n", "NaN | \n", "0 | \n", "
75% | \n", "30816.2 | \n", "832.25 | \n", "6 | \n", "NaN | \n", "1 | \n", "1 | \n", "NaN | \n", "1 | \n", "
max | \n", "41088 | \n", "1115 | \n", "7 | \n", "NaN | \n", "1 | \n", "1 | \n", "NaN | \n", "1 | \n", "
counts | \n", "41088 | \n", "41088 | \n", "41088 | \n", "41088 | \n", "41077 | \n", "41088 | \n", "41088 | \n", "41088 | \n", "
uniques | \n", "41088 | \n", "856 | \n", "7 | \n", "48 | \n", "2 | \n", "2 | \n", "2 | \n", "2 | \n", "
missing | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "11 | \n", "0 | \n", "0 | \n", "0 | \n", "
missing_perc | \n", "0% | \n", "0% | \n", "0% | \n", "0% | \n", "0.03% | \n", "0% | \n", "0% | \n", "0% | \n", "
types | \n", "numeric | \n", "numeric | \n", "numeric | \n", "categorical | \n", "bool | \n", "bool | \n", "bool | \n", "bool | \n", "
\n", " | Date | \n", "Store | \n", "AfterSchoolHoliday | \n", "BeforeSchoolHoliday | \n", "AfterStateHoliday | \n", "BeforeStateHoliday | \n", "AfterPromo | \n", "BeforePromo | \n", "SchoolHoliday_bw | \n", "StateHoliday_bw | \n", "Promo_bw | \n", "SchoolHoliday_fw | \n", "StateHoliday_fw | \n", "Promo_fw | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "2015-07-31 | \n", "1 | \n", "0 | \n", "0 | \n", "57 | \n", "0 | \n", "0 | \n", "0 | \n", "5.0 | \n", "0.0 | \n", "5.0 | \n", "1.0 | \n", "0.0 | \n", "1.0 | \n", "
1 | \n", "2015-07-30 | \n", "1 | \n", "0 | \n", "0 | \n", "56 | \n", "0 | \n", "0 | \n", "0 | \n", "4.0 | \n", "0.0 | \n", "4.0 | \n", "2.0 | \n", "0.0 | \n", "2.0 | \n", "
2 | \n", "2015-07-29 | \n", "1 | \n", "0 | \n", "0 | \n", "55 | \n", "0 | \n", "0 | \n", "0 | \n", "3.0 | \n", "0.0 | \n", "3.0 | \n", "3.0 | \n", "0.0 | \n", "3.0 | \n", "
3 | \n", "2015-07-28 | \n", "1 | \n", "0 | \n", "0 | \n", "54 | \n", "0 | \n", "0 | \n", "0 | \n", "2.0 | \n", "0.0 | \n", "2.0 | \n", "4.0 | \n", "0.0 | \n", "4.0 | \n", "
4 | \n", "2015-07-27 | \n", "1 | \n", "0 | \n", "0 | \n", "53 | \n", "0 | \n", "0 | \n", "0 | \n", "1.0 | \n", "0.0 | \n", "1.0 | \n", "5.0 | \n", "0.0 | \n", "5.0 | \n", "
\n", " | 0 | \n", "1 | \n", "2 | \n", "3 | \n", "4 | \n", "
---|---|---|---|---|---|
index | \n", "0 | \n", "1 | \n", "2 | \n", "3 | \n", "4 | \n", "
Store | \n", "1 | \n", "2 | \n", "3 | \n", "4 | \n", "5 | \n", "
DayOfWeek | \n", "5 | \n", "5 | \n", "5 | \n", "5 | \n", "5 | \n", "
Date | \n", "2015-07-31 00:00:00 | \n", "2015-07-31 00:00:00 | \n", "2015-07-31 00:00:00 | \n", "2015-07-31 00:00:00 | \n", "2015-07-31 00:00:00 | \n", "
Sales | \n", "5263 | \n", "6064 | \n", "8314 | \n", "13995 | \n", "4822 | \n", "
Customers | \n", "555 | \n", "625 | \n", "821 | \n", "1498 | \n", "559 | \n", "
Open | \n", "1 | \n", "1 | \n", "1 | \n", "1 | \n", "1 | \n", "
Promo | \n", "1 | \n", "1 | \n", "1 | \n", "1 | \n", "1 | \n", "
StateHoliday | \n", "False | \n", "False | \n", "False | \n", "False | \n", "False | \n", "
SchoolHoliday | \n", "1 | \n", "1 | \n", "1 | \n", "1 | \n", "1 | \n", "
Year | \n", "2015 | \n", "2015 | \n", "2015 | \n", "2015 | \n", "2015 | \n", "
Month | \n", "7 | \n", "7 | \n", "7 | \n", "7 | \n", "7 | \n", "
Week | \n", "31 | \n", "31 | \n", "31 | \n", "31 | \n", "31 | \n", "
Day | \n", "31 | \n", "31 | \n", "31 | \n", "31 | \n", "31 | \n", "
Dayofweek | \n", "4 | \n", "4 | \n", "4 | \n", "4 | \n", "4 | \n", "
Dayofyear | \n", "212 | \n", "212 | \n", "212 | \n", "212 | \n", "212 | \n", "
Is_month_end | \n", "True | \n", "True | \n", "True | \n", "True | \n", "True | \n", "
Is_month_start | \n", "False | \n", "False | \n", "False | \n", "False | \n", "False | \n", "
Is_quarter_end | \n", "False | \n", "False | \n", "False | \n", "False | \n", "False | \n", "
Is_quarter_start | \n", "False | \n", "False | \n", "False | \n", "False | \n", "False | \n", "
Is_year_end | \n", "False | \n", "False | \n", "False | \n", "False | \n", "False | \n", "
Is_year_start | \n", "False | \n", "False | \n", "False | \n", "False | \n", "False | \n", "
Elapsed | \n", "1438300800 | \n", "1438300800 | \n", "1438300800 | \n", "1438300800 | \n", "1438300800 | \n", "
StoreType | \n", "c | \n", "a | \n", "a | \n", "c | \n", "a | \n", "
Assortment | \n", "a | \n", "a | \n", "a | \n", "c | \n", "a | \n", "
CompetitionDistance | \n", "1270 | \n", "570 | \n", "14130 | \n", "620 | \n", "29910 | \n", "
CompetitionOpenSinceMonth | \n", "9 | \n", "11 | \n", "12 | \n", "9 | \n", "4 | \n", "
CompetitionOpenSinceYear | \n", "2008 | \n", "2007 | \n", "2006 | \n", "2009 | \n", "2015 | \n", "
Promo2 | \n", "0 | \n", "1 | \n", "1 | \n", "0 | \n", "0 | \n", "
Promo2SinceWeek | \n", "1 | \n", "13 | \n", "14 | \n", "1 | \n", "1 | \n", "
Promo2SinceYear | \n", "1900 | \n", "2010 | \n", "2011 | \n", "1900 | \n", "1900 | \n", "
PromoInterval | \n", "None | \n", "Jan,Apr,Jul,Oct | \n", "Jan,Apr,Jul,Oct | \n", "None | \n", "None | \n", "
State | \n", "HE | \n", "TH | \n", "NW | \n", "BE | \n", "SN | \n", "
file | \n", "Rossmann_DE_HE | \n", "Rossmann_DE_TH | \n", "Rossmann_DE_NW | \n", "Rossmann_DE_BE | \n", "Rossmann_DE_SN | \n", "
week | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "
trend | \n", "85 | \n", "80 | \n", "86 | \n", "74 | \n", "82 | \n", "
file_DE | \n", "Rossmann_DE | \n", "Rossmann_DE | \n", "Rossmann_DE | \n", "Rossmann_DE | \n", "Rossmann_DE | \n", "
week_DE | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "2015-08-02 - 2015-08-08 | \n", "
trend_DE | \n", "83 | \n", "83 | \n", "83 | \n", "83 | \n", "83 | \n", "
Date_DE | \n", "2015-08-02 00:00:00 | \n", "2015-08-02 00:00:00 | \n", "2015-08-02 00:00:00 | \n", "2015-08-02 00:00:00 | \n", "2015-08-02 00:00:00 | \n", "
\n", " | Store | \n", "DayOfWeek | \n", "Year | \n", "Month | \n", "Day | \n", "StateHoliday | \n", "CompetitionMonthsOpen | \n", "Promo2Weeks | \n", "StoreType | \n", "Assortment | \n", "... | \n", "Max_Wind_SpeedKm_h | \n", "Mean_Wind_SpeedKm_h | \n", "CloudCover | \n", "trend | \n", "trend_DE | \n", "AfterStateHoliday | \n", "BeforeStateHoliday | \n", "Promo | \n", "SchoolHoliday | \n", "Sales | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Date | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
2015-07-31 | \n", "1 | \n", "5 | \n", "2015 | \n", "7 | \n", "31 | \n", "False | \n", "24 | \n", "0 | \n", "c | \n", "a | \n", "... | \n", "24.0 | \n", "11.0 | \n", "1.0 | \n", "85.0 | \n", "83.0 | \n", "57.0 | \n", "0.0 | \n", "1.0 | \n", "1.0 | \n", "5263 | \n", "
2015-07-31 | \n", "2 | \n", "5 | \n", "2015 | \n", "7 | \n", "31 | \n", "False | \n", "24 | \n", "25 | \n", "a | \n", "a | \n", "... | \n", "14.0 | \n", "11.0 | \n", "4.0 | \n", "80.0 | \n", "83.0 | \n", "67.0 | \n", "0.0 | \n", "1.0 | \n", "1.0 | \n", "6064 | \n", "
2 rows × 39 columns
\n", "\n", " | Store | \n", "DayOfWeek | \n", "Year | \n", "Month | \n", "Day | \n", "StateHoliday | \n", "CompetitionMonthsOpen | \n", "Promo2Weeks | \n", "StoreType | \n", "Assortment | \n", "... | \n", "Min_Humidity | \n", "Max_Wind_SpeedKm_h | \n", "Mean_Wind_SpeedKm_h | \n", "CloudCover | \n", "trend | \n", "trend_DE | \n", "AfterStateHoliday | \n", "BeforeStateHoliday | \n", "Promo | \n", "SchoolHoliday | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Date | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
2015-07-31 | \n", "1 | \n", "5 | \n", "3 | \n", "7 | \n", "31 | \n", "1 | \n", "25 | \n", "1 | \n", "3 | \n", "1 | \n", "... | \n", "-1.620066 | \n", "0.149027 | \n", "-0.142774 | \n", "-1.844823 | \n", "1.732492 | \n", "1.724334 | \n", "0.604461 | \n", "1.111827 | \n", "1.113717 | \n", "2.04105 | \n", "
2015-07-31 | \n", "2 | \n", "5 | \n", "3 | \n", "7 | \n", "31 | \n", "1 | \n", "25 | \n", "26 | \n", "1 | \n", "1 | \n", "... | \n", "-1.264031 | \n", "-0.960613 | \n", "-0.142774 | \n", "-0.488722 | \n", "1.294578 | \n", "1.724334 | \n", "0.926957 | \n", "1.111827 | \n", "1.113717 | \n", "2.04105 | \n", "
2 rows × 38 columns
\n", "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " 59%|█████▉ | 3925/6597 [00:50<00:34, 78.42it/s, loss=0.133] " ] } ], "source": [ "m.lr_find()" ] }, { "cell_type": "code", "execution_count": 93, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=3), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " 10%|█ | 673/6597 [00:05<00:52, 113.50it/s, loss=0.0324]\n", " 11%|█ | 699/6597 [00:06<00:51, 113.92it/s, loss=0.0326]" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Exception in thread Thread-4:\n", "Traceback (most recent call last):\n", " File \"/home/paperspace/anaconda3/envs/fastai/lib/python3.6/threading.py\", line 916, in _bootstrap_inner\n", " self.run()\n", " File \"/home/paperspace/anaconda3/envs/fastai/lib/python3.6/site-packages/tqdm/_tqdm.py\", line 144, in run\n", " for instance in self.tqdm_cls._instances:\n", " File \"/home/paperspace/anaconda3/envs/fastai/lib/python3.6/_weakrefset.py\", line 60, in __iter__\n", " for itemref in self.data:\n", "RuntimeError: Set changed size during iteration\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss exp_rmspe \n", " 0 0.014263 0.000139 0.011843 \n", " 1 0.01102 0.004146 0.06236 \n", " 2 0.009234 0.00016 0.012563 \n", "\n" ] }, { "data": { "text/plain": [ "[array([ 0.00016]), 0.012563288901677318]" ] }, "execution_count": 95, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m.fit(lr, 3, metrics=[exp_rmspe])" ] }, { "cell_type": "code", "execution_count": 96, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "5fac79e4084b4fdfa1e5a9c578e25803", "version_major": 2, "version_minor": 0 }, "text/html": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=5), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss exp_rmspe \n", " 0 0.006969 1e-05 0.003207 \n", " 1 0.007287 0.00012 0.011032 \n", " 2 0.006732 0.000544 0.023599 \n", " 3 0.007267 0.000478 0.022109 \n", " 4 0.007106 0.000533 0.023349 \n", "\n" ] }, { "data": { "text/plain": [ "[array([ 0.00053]), 0.02334926432063833]" ] }, "execution_count": 96, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m.fit(lr, 5, metrics=[exp_rmspe], cycle_len=1)" ] }, { "cell_type": "code", "execution_count": 97, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "112ba6e363664fd8b444bc3752b5c80c", "version_major": 2, "version_minor": 0 }, "text/html": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=8), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss exp_rmspe \n", " 0 0.00776 1e-05 0.003209 \n", " 1 0.007136 0.000492 0.022438 \n", " 2 0.005963 3.2e-05 0.005661 \n", " 3 0.005697 0.000341 0.018628 \n", " 4 0.007375 0.000179 0.013285 \n", " 5 0.006432 0.0 0.000582 \n", " 6 0.005697 0.000734 0.027468 \n", " 7 0.00545 0.001149 0.034479 \n", "\n" ] }, { "data": { "text/plain": [ "[array([ 0.00115]), 0.034479439570524843]" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m.fit(lr, 2, metrics=[exp_rmspe], cycle_len=4)" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": true }, "source": [ "### All" ] }, { "cell_type": "code", "execution_count": 94, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "m = md.get_learner(emb_szs, len(df.columns)-len(cat_vars),\n", " 0.04, 1, [1000,500], [0.001,0.01], y_range=y_range)\n", "lr = 1e-3" ] }, { "cell_type": "code", "execution_count": 95, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "15d0c7d5e9634030a624fb91c90b081c", "version_major": 2, "version_minor": 0 }, "text/plain": [ "A Jupyter Widget" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[ 0. 0.01456 0.01544 0.1148 ] \n", "\n" ] } ], "source": [ "m.fit(lr, 1, metrics=[exp_rmspe])" ] }, { "cell_type": "code", "execution_count": 93, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "58bd52a856754c359eae9fa25f951dd6", "version_major": 2, "version_minor": 0 }, "text/html": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=3), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[ 0. 0.01418 0.02066 0.12765] \n", "[ 1. 0.01081 0.01276 0.11221] \n", "[ 2. 0.00976 0.01233 0.10987] \n", "\n" ] } ], "source": [ "m.fit(lr, 3, metrics=[exp_rmspe])" ] }, { "cell_type": "code", "execution_count": 94, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "738899f6b0574b50be6d3f6efff9e578", "version_major": 2, "version_minor": 0 }, "text/html": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=3), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[ 0. 0.00801 0.01081 0.09899] \n", "[ 1. 0.00714 0.01083 0.09846] \n", "[ 2. 0.00707 0.01088 0.09878] \n", "\n" ] } ], "source": [ "m.fit(lr, 3, metrics=[exp_rmspe], cycle_len=1)" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": true }, "source": [ "### Test" ] }, { "cell_type": "code", "execution_count": 185, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "m = md.get_learner(emb_szs, len(df.columns)-len(cat_vars),\n", " 0.04, 1, [1000,500], [0.001,0.01], y_range=y_range)\n", "lr = 1e-3" ] }, { "cell_type": "code", "execution_count": 102, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "74827eff47794b5eb8d09982d30202fe", "version_major": 2, "version_minor": 0 }, "text/html": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=3), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[ 0. 0.01413 0.0063 0.07628] \n", "[ 1. 0.01022 0.00859 0.08851] \n", "[ 2. 0.00932 0.00001 0.00243] \n", "\n" ] } ], "source": [ "m.fit(lr, 3, metrics=[exp_rmspe])" ] }, { "cell_type": "code", "execution_count": 103, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "07f0b0fea31c4afa8c6770085d233230", "version_major": 2, "version_minor": 0 }, "text/html": [ "Failed to display Jupyter Widget of type HBox
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=3), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[ 0. 0.00748 0. 0.00167] \n", "[ 1. 0.00717 0.00009 0.00947] \n", "[ 2. 0.00643 0.00013 0.01147] \n", "\n" ] } ], "source": [ "m.fit(lr, 3, metrics=[exp_rmspe], cycle_len=1)" ] }, { "cell_type": "code", "execution_count": 105, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "m.save('val0')" ] }, { "cell_type": "code", "execution_count": 186, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "m.load('val0')" ] }, { "cell_type": "code", "execution_count": 187, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "x,y=m.predict_with_targs()" ] }, { "cell_type": "code", "execution_count": 188, "metadata": { "hidden": true }, "outputs": [ { "data": { "text/plain": [ "0.01147316926177568" ] }, "execution_count": 188, "metadata": {}, "output_type": "execute_result" } ], "source": [ "exp_rmspe(x,y)" ] }, { "cell_type": "code", "execution_count": 189, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "pred_test=m.predict(True)" ] }, { "cell_type": "code", "execution_count": 190, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "pred_test = np.exp(pred_test)" ] }, { "cell_type": "code", "execution_count": 192, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "joined_test['Sales']=pred_test" ] }, { "cell_type": "code", "execution_count": 193, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "csv_fn=f'{PATH}tmp/sub.csv'" ] }, { "cell_type": "code", "execution_count": 200, "metadata": { "collapsed": true, "hidden": true }, "outputs": [], "source": [ "joined_test[['Id','Sales']].to_csv(csv_fn, index=False)" ] }, { "cell_type": "code", "execution_count": 202, "metadata": { "hidden": true }, "outputs": [ { "data": { "text/html": [ "data/rossmann/tmp/sub.csv