From 5b496677ea1db59a6718e5c9b2958177c76cb25f Mon Sep 17 00:00:00 2001 From: Alex Auvolat Date: Tue, 5 May 2015 10:56:21 -0400 Subject: Refactor architecture so that embedding sizes can be easily changed. --- config/simple_mlp_0.py | 19 ------------------- config/simple_mlp_2_cs.py | 25 +++++++++++++++++++++++++ config/simple_mlp_2_noembed.py | 22 ++++++++++++++++++++++ config/simple_mlp_tgtcls_0.py | 25 ------------------------- config/simple_mlp_tgtcls_0_cs.py | 29 +++++++++++++++++++++++++++++ config/simple_mlp_tgtcls_1.py | 25 ------------------------- config/simple_mlp_tgtcls_1_cs.py | 29 +++++++++++++++++++++++++++++ 7 files changed, 105 insertions(+), 69 deletions(-) delete mode 100644 config/simple_mlp_0.py create mode 100644 config/simple_mlp_2_cs.py create mode 100644 config/simple_mlp_2_noembed.py delete mode 100644 config/simple_mlp_tgtcls_0.py create mode 100644 config/simple_mlp_tgtcls_0_cs.py delete mode 100644 config/simple_mlp_tgtcls_1.py create mode 100644 config/simple_mlp_tgtcls_1_cs.py (limited to 'config') diff --git a/config/simple_mlp_0.py b/config/simple_mlp_0.py deleted file mode 100644 index 61ddbfd..0000000 --- a/config/simple_mlp_0.py +++ /dev/null @@ -1,19 +0,0 @@ -import model.simple_mlp as model - -n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday -n_dom = 31 -n_hour = 24 - -n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory -n_end_pts = 5 - -n_valid = 1000 - -dim_embed = 10 -dim_input = n_begin_end_pts * 2 * 2 + dim_embed + dim_embed -dim_hidden = [200, 100] -dim_output = 2 - -learning_rate = 0.0001 -momentum = 0.99 -batch_size = 32 diff --git a/config/simple_mlp_2_cs.py b/config/simple_mlp_2_cs.py new file mode 100644 index 0000000..692d325 --- /dev/null +++ b/config/simple_mlp_2_cs.py @@ -0,0 +1,25 @@ +import model.simple_mlp as model + +import data + +n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday +n_dom = 31 +n_hour = 24 + +n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory +n_end_pts = 5 + +n_valid = 1000 + +dim_embeddings = [ + ('origin_call', data.n_train_clients+1, 10), + ('origin_stand', data.n_stands+1, 10) +] + +dim_input = n_begin_end_pts * 2 * 2 + sum(x for (_, _, x) in dim_embeddings) +dim_hidden = [200, 100] +dim_output = 2 + +learning_rate = 0.0001 +momentum = 0.99 +batch_size = 32 diff --git a/config/simple_mlp_2_noembed.py b/config/simple_mlp_2_noembed.py new file mode 100644 index 0000000..bc300e7 --- /dev/null +++ b/config/simple_mlp_2_noembed.py @@ -0,0 +1,22 @@ +import model.simple_mlp as model + +import data + +n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday +n_dom = 31 +n_hour = 24 + +n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory +n_end_pts = 5 + +n_valid = 1000 + +dim_embeddings = [] # do not use embeddings + +dim_input = n_begin_end_pts * 2 * 2 + sum(x for (_, _, x) in dim_embeddings) +dim_hidden = [200, 100] +dim_output = 2 + +learning_rate = 0.0001 +momentum = 0.99 +batch_size = 32 diff --git a/config/simple_mlp_tgtcls_0.py b/config/simple_mlp_tgtcls_0.py deleted file mode 100644 index 91770c2..0000000 --- a/config/simple_mlp_tgtcls_0.py +++ /dev/null @@ -1,25 +0,0 @@ -import cPickle - -import data - -import model.simple_mlp_tgtcls as model - -n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday -n_dom = 31 -n_hour = 24 - -n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory -n_end_pts = 5 - -n_valid = 1000 - -with open(data.DATA_PATH + "/arrival-clusters.pkl") as f: tgtcls = cPickle.load(f) - -dim_embed = 10 -dim_input = n_begin_end_pts * 2 * 2 + dim_embed + dim_embed -dim_hidden = [] -dim_output = tgtcls.shape[0] - -learning_rate = 0.0001 -momentum = 0.99 -batch_size = 32 diff --git a/config/simple_mlp_tgtcls_0_cs.py b/config/simple_mlp_tgtcls_0_cs.py new file mode 100644 index 0000000..b174517 --- /dev/null +++ b/config/simple_mlp_tgtcls_0_cs.py @@ -0,0 +1,29 @@ +import cPickle + +import data + +import model.simple_mlp_tgtcls as model + +n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday +n_dom = 31 +n_hour = 24 + +n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory +n_end_pts = 5 + +n_valid = 1000 + +with open(data.DATA_PATH + "/arrival-clusters.pkl") as f: tgtcls = cPickle.load(f) + +dim_embeddings = [ + ('origin_call', data.n_train_clients+1, 10), + ('origin_stand', data.n_stands+1, 10) +] + +dim_input = n_begin_end_pts * 2 * 2 + sum(x for (_, _, x) in dim_embeddings) +dim_hidden = [] +dim_output = tgtcls.shape[0] + +learning_rate = 0.0001 +momentum = 0.99 +batch_size = 32 diff --git a/config/simple_mlp_tgtcls_1.py b/config/simple_mlp_tgtcls_1.py deleted file mode 100644 index 8d6c37b..0000000 --- a/config/simple_mlp_tgtcls_1.py +++ /dev/null @@ -1,25 +0,0 @@ -import cPickle - -import data - -import model.simple_mlp_tgtcls as model - -n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday -n_dom = 31 -n_hour = 24 - -n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory -n_end_pts = 5 - -n_valid = 1000 - -with open(data.DATA_PATH + "/arrival-clusters.pkl") as f: tgtcls = cPickle.load(f) - -dim_embed = 10 -dim_input = n_begin_end_pts * 2 * 2 + dim_embed + dim_embed -dim_hidden = [500] -dim_output = tgtcls.shape[0] - -learning_rate = 0.0001 -momentum = 0.99 -batch_size = 32 diff --git a/config/simple_mlp_tgtcls_1_cs.py b/config/simple_mlp_tgtcls_1_cs.py new file mode 100644 index 0000000..6bf82e1 --- /dev/null +++ b/config/simple_mlp_tgtcls_1_cs.py @@ -0,0 +1,29 @@ +import cPickle + +import data + +import model.simple_mlp_tgtcls as model + +n_dow = 7 # number of division for dayofweek/dayofmonth/hourofday +n_dom = 31 +n_hour = 24 + +n_begin_end_pts = 5 # how many points we consider at the beginning and end of the known trajectory +n_end_pts = 5 + +n_valid = 1000 + +with open(data.DATA_PATH + "/arrival-clusters.pkl") as f: tgtcls = cPickle.load(f) + +dim_embeddings = [ + ('origin_call', data.n_train_clients+1, 10), + ('origin_stand', data.n_stands+1, 10) +] + +dim_input = n_begin_end_pts * 2 * 2 + sum(x for (_, _, x) in dim_embeddings) +dim_hidden = [500] +dim_output = tgtcls.shape[0] + +learning_rate = 0.0001 +momentum = 0.99 +batch_size = 32 -- cgit v1.2.3