--- title: Sample Session dataset keywords: fastai sidebar: home_sidebar summary: "Small sample of session dataset." description: "Small sample of session dataset." nb_path: "nbs/datasets/session.ipynb" ---
{% raw %}
{% endraw %} {% raw %}
{% endraw %} {% raw %}

class SampleSessionDataset[source]

SampleSessionDataset(root, column_names={'SESSION_ID': 'session_id', 'ITEM_ID': 'item_id', 'TIMEFRAME': 'timeframe', 'EVENT_DATE': 'eventdate'}) :: SessionDatasetv2

Dataset base class

{% endraw %} {% raw %}
{% endraw %} {% raw %}
ds = SampleSessionDataset(root='/content/samplesession')
Downloading https://github.com/RecoHut-Datasets/sample_session/raw/v1/sample_train-item-views.csv
-- Reading data
Splitting date 1464134400.0
469
47
[('2671', 1451952000.0), ('1211', 1452384000.0), ('3780', 1452384000.0)]
[('1864', 1464220800.0), ('1867', 1464220800.0), ('1868', 1464220800.0)]
-- Splitting train set and test set
310
1205
99
[[1, 2], [1], [4]] [1451952000.0, 1451952000.0, 1452384000.0] [3, 2, 5]
[[282], [281, 308], [281]] [1464220800.0, 1464220800.0, 1464220800.0] [282, 281, 308]
avg length:  3.5669291338582676
Processing...
Done!
{% endraw %} {% raw %}

class GraphData[source]

GraphData(data, shuffle=False, graph=None)

{% endraw %} {% raw %}
{% endraw %} {% raw %}
train_data = pickle.load(open('/content/sample/processed/train.txt', 'rb'))
train_data[0][:10]
[[1, 2], [1], [4], [6], [8, 9], [8], [10, 11, 11], [10, 11], [10], [12]]
{% endraw %} {% raw %}
len(train_data[0])
1205
{% endraw %} {% raw %}
train_data, valid_data = split_validation(train_data, valid_portion=0.1)
test_data = valid_data

train_data = GraphData(train_data, shuffle=True)
test_data = GraphData(test_data, shuffle=False)
{% endraw %} {% raw %}
train_data.generate_batch(10)[:5]
[array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),
 array([10, 11, 12, 13, 14, 15, 16, 17, 18, 19]),
 array([20, 21, 22, 23, 24, 25, 26, 27, 28, 29]),
 array([30, 31, 32, 33, 34, 35, 36, 37, 38, 39]),
 array([40, 41, 42, 43, 44, 45, 46, 47, 48, 49])]
{% endraw %}