Newer
Older
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<img width=\"800px\" src=\"../fidle/img/00-Fidle-header-01.svg\"></img>\n",
"# <!-- TITLE --> [IMDB3] - Text embedding/LSTM model with IMDB\n",
"<!-- DESC --> Still the same problem, but with a network combining embedding and LSTM\n",
"<!-- AUTHOR : Jean-Luc Parouty (CNRS/SIMaP) -->\n",
"## Objectives :\n",
" - The objective is to guess whether film reviews are **positive or negative** based on the analysis of the text. \n",
" - Use of a model combining embedding and LSTM\n",
"\n",
"Original dataset can be find **[there](http://ai.stanford.edu/~amaas/data/sentiment/)** \n",
"Note that [IMDb.com](https://imdb.com) offers several easy-to-use [datasets](https://www.imdb.com/interfaces/) \n",
"For simplicity's sake, we'll use the dataset directly [embedded in Keras](https://www.tensorflow.org/api_docs/python/tf/keras/datasets)\n",
"\n",
"## What we're going to do :\n",
"\n",
" - Retrieve data\n",
" - Preparing the data\n",
" - Build a Embedding/LSTM model\n",
" - Train the model\n",
" - Evaluate the result\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 1 - Init python stuff"
]
},
{
"cell_type": "code",
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
"outputs": [
{
"data": {
"text/html": [
"<style>\n",
"\n",
"div.warn { \n",
" background-color: #fcf2f2;\n",
" border-color: #dFb5b4;\n",
" border-left: 5px solid #dfb5b4;\n",
" padding: 0.5em;\n",
" font-weight: bold;\n",
" font-size: 1.1em;;\n",
" }\n",
"\n",
"\n",
"\n",
"div.nota { \n",
" background-color: #DAFFDE;\n",
" border-left: 5px solid #92CC99;\n",
" padding: 0.5em;\n",
" }\n",
"\n",
"div.todo:before { content:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1My44OTEyIiBoZWlnaHQ9IjE0My4zOTAyIiB2aWV3Qm94PSIwIDAgNTMuODkxMiAxNDMuMzkwMiI+PHRpdGxlPjAwLUJvYi10b2RvPC90aXRsZT48cGF0aCBkPSJNMjMuNDU2OCwxMTQuMzAxNmExLjgwNjMsMS44MDYzLDAsMSwxLDEuODE1NywxLjgyNEExLjgyMDksMS44MjA5LDAsMCwxLDIzLjQ1NjgsMTE0LjMwMTZabS0xMC42NjEyLDEuODIyQTEuODI3MiwxLjgyNzIsMCwxLDAsMTAuOTgsMTE0LjMsMS44MiwxLjgyLDAsMCwwLDEyLjc5NTYsMTE2LjEyMzZabS03LjcwNyw0LjU4NzR2LTVzLjQ4NjMtOS4xMjIzLDguMDIxNS0xMS45Njc1YTE5LjIwODIsMTkuMjA4MiwwLDAsMSw2LjA0ODYtMS4yNDU0LDE5LjE3NzgsMTkuMTc3OCwwLDAsMSw2LjA0ODcsMS4yNDc1YzcuNTM1MSwyLjgzNDcsOC4wMTc0LDExLjk2NzQsOC4wMTc0LDExLjk2NzR2NS4wMjM0bC4wMDQyLDcuNjgydjIuNGMuMDE2Ny4xOTkyLjAzMzYuMzkyMS4wMzM2LjU4NzEsMCwuMjEzOC0uMDE2OC40MTA5LS4wMzM2LjYzMzJ2LjA1ODdoLS4wMDg0YTguMzcxOSw4LjM3MTksMCwwLDEtNy4zNzM4LDcuNjU0N3MtLjk5NTMsMy42MzgtNi42OTMzLDMuNjM4LTYuNjkzNC0zLjYzOC02LjY5MzQtMy42MzhhOC4zNyw4LjM3LDAsMCwxLTcuMzcxNi03LjY1NDdINS4wODQzdi0uMDU4N2MtLjAxODktLjIyLS4wMjk0LS40MTk0LS4wMjk0LS42MzMyLDAtLjE5MjkuMDE2Ny0uMzgzNy4wMjk0LS41ODcxdi0yLjRtMTguMDkzNy00LjA0YTEuMTU2NSwxLjE1NjUsMCwxLDAtMi4zMTI2LDAsMS4xNTY0LDEuMTU2NCwwLDEsMCwyLjMxMjYsMFptNC4wODM0LDBhMS4xNTk1LDEuMTU5NSwwLDEsMC0xLjE2MzYsMS4xN0ExLjE3NSwxLjE3NSwwLDAsMCwyNy4yNjE0LDEyNC4zNzc5Wk05LjM3MzksMTE0LjYzNWMwLDMuMTA5MywyLjQxMzIsMy4zMSwyLjQxMzIsMy4zMWExMzMuOTI0MywxMzMuOTI0MywwLDAsMCwxNC43MzQ4LDBzMi40MTExLS4xOTI5LDIuNDExMS0zLjMxYTguMDc3Myw4LjA3NzMsMCwwLDAtMi40MTExLTUuNTUxOWMtNC41LTMuNTAzMy05LjkxMjYtMy41MDMzLTE0Ljc0MTEsMEE4LjA4NTEsOC4wODUxLDAsMCwwLDkuMzczOSwxMTQuNjM1WiIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxjaXJjbGUgY3g9IjMzLjE0MzYiIGN5PSIxMjQuNTM0IiByPSIzLjgzNjMiIHN0eWxlPSJmaWxsOiMwMTAxMDEiLz48cmVjdCB4PSIzNS42NjU5IiB5PSIxMTIuOTYyNSIgd2lkdGg9IjIuMDc3IiBoZWlnaHQ9IjEwLjU0NTgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIxLjYgMjQxLjExMjEpIHJvdGF0ZSgtMTU1Ljc0NikiIHN0eWxlPSJmaWxsOiMwMTAxMDEiLz48Y2lyY2xlIGN4PSIzOC44NzA0IiBjeT0iMTEzLjQyNzkiIHI9IjIuNDA4NSIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxjaXJjbGUgY3g9IjUuMjI0OCIgY3k9IjEyNC41MzQiIHI9IjMuODM2MyIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxyZWN0IHg9IjEuNDE2NCIgeT0iMTI0LjYzMDEiIHdpZHRoPSIyLjA3NyIgaGVpZ2h0PSIxMC41NDU4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0LjkwOTcgMjU5LjgwNikgcm90YXRlKC0xODApIiBzdHlsZT0iZmlsbDojMDEwMTAxIi8+PGNpcmNsZSBjeD0iMi40MDkxIiBjeT0iMTM3LjA5OTYiIHI9IjIuNDA4NSIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxwYXRoIGQ9Ik0xOC4wNTExLDEwMC4xMDY2aC0uMDE0NlYxMDIuNjFoMi4zdi0yLjQyNzlhMi40MjI5LDIuNDIyOSwwLDEsMC0yLjI4NTQtLjA3NTVaIiBzdHlsZT0iZmlsbDojMDEwMTAxIi8+PHBhdGggZD0iTTM5LjQyMTQsMjcuMjU4djEuMDVBMTEuOTQ1MiwxMS45NDUyLDAsMCwwLDQ0LjU5NTQsNS43OWEuMjQ0OS4yNDQ5LDAsMCwxLS4wMjM1LS40MjI3TDQ2Ljc1LDMuOTUxNWEuMzg5Mi4zODkyLDAsMCwxLC40MjYyLDAsMTQuODQ0MiwxNC44NDQyLDAsMCwxLTcuNzU0MywyNy4yNTkxdjEuMDY3YS40NS40NSwwLDAsMS0uNzA0Ny4zNzU4bC0zLjg0MTktMi41MWEuNDUuNDUsMCwwLDEsMC0uNzUxNmwzLjg0MTktMi41MWEuNDUuNDUsMCwwLDEsLjY5NDYuMzc1OFpNNDMuMjMsMi41ODkyLDM5LjM4NzguMDc5NGEuNDUuNDUsMCwwLDAtLjcwNDYuMzc1OHYxLjA2N2ExNC44NDQyLDE0Ljg0NDIsMCwwLDAtNy43NTQzLDI3LjI1OTEuMzg5LjM4OSwwLDAsMCwuNDI2MSwwbDIuMTc3Ny0xLjQxOTNhLjI0NS4yNDUsMCwwLDAtLjAyMzUtLjQyMjgsMTEuOTQ1MSwxMS45NDUxLDAsMCwxLDUuMTc0LTIyLjUxNDZ2MS4wNWEuNDUuNDUsMCwwLDAsLjcwNDYuMzc1OGwzLjg1NTMtMi41MWEuNDUuNDUsMCwwLDAsMC0uNzUxNlpNMzkuMDUyMywxNC4yNDU4YTIuMTIwNiwyLjEyMDYsMCwxLDAsMi4xMjA2LDIuMTIwNmgwQTIuMTI0LDIuMTI0LDAsMCwwLDM5LjA1MjMsMTQuMjQ1OFptNi4wNzMyLTQuNzc4MS44MjU0LjgyNTVhMS4wNTY4LDEuMDU2OCwwLDAsMSwuMTE3NSwxLjM0MjFsLS44MDIsMS4xNDQyYTcuMTAxOCw3LjEwMTgsMCwwLDEsLjcxMTQsMS43MTEybDEuMzc1Ny4yNDE2YTEuMDU2OSwxLjA1NjksMCwwLDEsLjg3NTcsMS4wNHYxLjE2NDNhMS4wNTY5LDEuMDU2OSwwLDAsMS0uODc1NywxLjA0bC0xLjM3MjQuMjQxNkE3LjExLDcuMTEsMCwwLDEsNDUuMjcsMTkuOTNsLjgwMTksMS4xNDQyYTEuMDU3LDEuMDU3LDAsMCwxLS4xMTc0LDEuMzQyMmwtLjgyODguODQ4OWExLjA1NywxLjA1NywwLDAsMS0xLjM0MjEuMTE3NGwtMS4xNDQyLS44MDE5YTcuMTMzOCw3LjEzMzgsMCwwLDEtMS43MTEzLjcxMTNsLS4yNDE2LDEuMzcyNGExLjA1NjgsMS4wNTY4LDAsMCwxLTEuMDQuODc1N0gzOC40Njg0YTEuMDU2OCwxLjA1NjgsMCwwLDEtMS4wNC0uODc1N2wtLjI0MTYtMS4zNzI0YTcuMTM1NSw3LjEzNTUsMCwwLDEtMS43MTEzLS43MTEzbC0xLjE0NDEuODAxOWExLjA1NzEsMS4wNTcxLDAsMCwxLTEuMzQyMi0uMTE3NGwtLjgzNTUtLjgyNTVhMS4wNTcsMS4wNTcsMCwwLDEtLjExNzQtMS4zNDIxbC44MDE5LTEuMTQ0MmE3LjEyMSw3LjEyMSwwLDAsMS0uNzExMy0xLjcxMTJsLTEuMzcyNC0uMjQxNmExLjA1NjksMS4wNTY5LDAsMCwxLS44NzU3LTEuMDRWMTUuNzgyNmExLjA1NjksMS4wNTY5LDAsMCwxLC44NzU3LTEuMDRsMS4zNzU3LS4yNDE2YTcuMTEsNy4xMSwwLDAsMSwuNzExNC0xLjcxMTJsLS44MDItMS4xNDQyYTEuMDU3LDEuMDU3LDAsMCwxLC4xMTc1LTEuMzQyMmwuODI1NC0uODI1NEExLjA1NjgsMS4wNTY4LDAsMCwxLDM0LjMyNDUsOS4zNmwxLjE0NDIuODAxOUE3LjEzNTUsNy4xMzU1LDAsMCwxLDM3LjE4LDkuNDUxbC4yNDE2LTEuMzcyNGExLjA1NjgsMS4wNTY4LDAsMCwxLDEuMDQtLjg3NTdoMS4xNjc3YTEuMDU2OSwxLjA1NjksMCwwLDEsMS4wNC44NzU3bC4yNDE2LDEuMzcyNGE3LjEyNSw3LjEyNSwwLDAsMSwxLjcxMTIuNzExM0w0My43NjY2LDkuMzZBMS4wNTY5LDEuMDU2OSwwLDAsMSw0NS4xMjU1LDkuNDY3N1ptLTIuMDMsNi44OTg3QTQuMDQzMyw0LjA0MzMsMCwxLDAsMzkuMDUyMywyMC40MWgwQTQuMDQ2NSw0LjA0NjUsMCwwLDAsNDMuMDk1NSwxNi4zNjY0WiIgc3R5bGU9ImZpbGw6I2UxMjIyOSIvPjxwb2x5Z29uIHBvaW50cz0iMzkuNDEzIDM0Ljc1NyAzOS41MzcgMzQuNzU3IDM5LjY3NSAzNC43NTcgMzkuNjc1IDEwOS41MSAzOS41MzcgMTA5LjUxIDM5LjQxMyAxMDkuNTEgMzkuNDEzIDM0Ljc1NyAzOS40MTMgMzQuNzU3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojOTk5O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO3N0cm9rZS13aWR0aDowLjMwODg1NDQ1MDU2MDE2MThweDtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjwvc3ZnPg==);\n",
" float:left;\n",
" margin-right:20px;\n",
" margin-top:-20px;\n",
" margin-bottom:20px;\n",
"}\n",
"div.todo{\n",
" font-weight: bold;\n",
" font-size: 1.1em;\n",
" margin-top:40px;\n",
"}\n",
"div.todo ul{\n",
" margin: 0.2em;\n",
"}\n",
"div.todo li{\n",
" margin-left:60px;\n",
" margin-top:0;\n",
" margin-bottom:0;\n",
"}\n",
"\n",
"\n",
"</style>\n",
"\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"FIDLE 2020 - Practical Work Module\n",
"Version : 0.57 DEV\n",
"Run time : Thursday 10 September 2020, 16:39:27\n",
"TensorFlow version : 2.2.0\n",
"Keras version : 2.3.0-tf\n",
"Current place : Fidle at IDRIS\n",
"Dataset dir : /gpfswork/rech/mlh/commun/datasets\n",
"Update keras cache : Done\n"
]
}
],
"source": [
"import numpy as np\n",
"\n",
"import tensorflow as tf\n",
"import tensorflow.keras as keras\n",
"import tensorflow.keras.datasets.imdb as imdb\n",
"\n",
"import matplotlib.pyplot as plt\n",
"import matplotlib\n",
"import seaborn as sns\n",
"\n",
"import os,sys,h5py,json\n",
"\n",
"from importlib import reload\n",
"\n",
"sys.path.append('..')\n",
"import fidle.pwk as ooo\n",
"\n",
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 2 - Retrieve data\n",
"\n",
"**From Keras :**\n",
"This IMDb dataset can bet get directly from [Keras datasets](https://www.tensorflow.org/api_docs/python/tf/keras/datasets) \n",
"\n",
"Due to their nature, textual data can be somewhat complex.\n",
"\n",
"### 2.1 - Data structure : \n",
"The dataset is composed of 2 parts: **reviews** and **opinions** (positive/negative), with a **dictionary**\n",
"\n",
" - dataset = (reviews, opinions)\n",
" - reviews = \\[ review_0, review_1, ...\\]\n",
" - review_i = [ int1, int2, ...] where int_i is the index of the word in the dictionary.\n",
" - opinions = \\[ int0, int1, ...\\] where int_j == 0 if opinion is negative or 1 if opinion is positive.\n",
" - dictionary = \\[ mot1:int1, mot2:int2, ... ]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.2 - Get dataset\n",
"For simplicity, we will use a pre-formatted dataset. \n",
"See : https://www.tensorflow.org/api_docs/python/tf/keras/datasets/imdb/load_data \n",
"\n",
"However, Keras offers some usefull tools for formatting textual data. \n",
"See : https://www.tensorflow.org/api_docs/python/tf/keras/preprocessing/text"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": [
"vocab_size = 10000\n",
"\n",
"# ----- Retrieve x,y\n",
"#\n",
"# Choose if you want to load dataset directly from keras (small size <20M)\n",
"(x_train, y_train), (x_test, y_test) = imdb.load_data( num_words = vocab_size,\n",
" skip_top = 0,\n",
" maxlen = None,\n",
" seed = 42,\n",
" start_char = 1,\n",
" oov_char = 2,\n",
" index_from = 3, )\n",
"# Or you can use the same pre-loaded dataset if at GRICAD or IDRIS\n",
"#place, dataset_dir = ooo.good_place( { 'GRICAD' : f'{os.getenv(\"SCRATCH_DIR\",\"\")}/PROJECTS/pr-fidle/datasets/IMDB',\n",
"# 'IDRIS' : f'{os.getenv(\"WORK\",\"\")}/datasets/IMDB',\n",
"# 'HOME' : f'{os.getenv(\"HOME\",\"\")}/datasets/IMDB'} )\n",
"#with h5py.File(f'{dataset_dir}/dataset_imdb.h5','r') as f:\n",
"# x_train = f['x_train'][:]\n",
"# y_train = f['y_train'][:]\n",
"# x_test = f['x_test'][:]\n",
"# y_test = f['y_test'][:]\n"
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Max(x_train,x_test) : 9999\n",
" x_train : (25000,) y_train : (25000,)\n",
" x_test : (25000,) y_test : (25000,)\n",
"\n",
"Review example (x_train[12]) :\n",
"\n",
" [1, 14, 22, 1367, 53, 206, 159, 4, 636, 898, 74, 26, 11, 436, 363, 108, 7, 14, 432, 14, 22, 9, 1055, 34, 8599, 2, 5, 381, 3705, 4509, 14, 768, 47, 839, 25, 111, 1517, 2579, 1991, 438, 2663, 587, 4, 280, 725, 6, 58, 11, 2714, 201, 4, 206, 16, 702, 5, 5176, 19, 480, 5920, 157, 13, 64, 219, 4, 2, 11, 107, 665, 1212, 39, 4, 206, 4, 65, 410, 16, 565, 5, 24, 43, 343, 17, 5602, 8, 169, 101, 85, 206, 108, 8, 3008, 14, 25, 215, 168, 18, 6, 2579, 1991, 438, 2, 11, 129, 1609, 36, 26, 66, 290, 3303, 46, 5, 633, 115, 4363]\n"
]
}
],
"source": [
"print(\" Max(x_train,x_test) : \", ooo.rmax([x_train,x_test]) )\n",
"print(\" x_train : {} y_train : {}\".format(x_train.shape, y_train.shape))\n",
"print(\" x_test : {} y_test : {}\".format(x_test.shape, y_test.shape))\n",
"\n",
"print('\\nReview example (x_train[12]) :\\n\\n',x_train[12])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.3 - Have a look for humans (optional)\n",
"When we loaded the dataset, we asked for using \\<start\\> as 1, \\<unknown word\\> as 2 \n",
"So, we shifted the dataset by 3 with the parameter index_from=3"
]
},
{
"cell_type": "code",
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
"metadata": {},
"outputs": [],
"source": [
"# ---- Retrieve dictionary {word:index}, and encode it in ascii\n",
"\n",
"word_index = imdb.get_word_index()\n",
"\n",
"# ---- Shift the dictionary from +3\n",
"\n",
"word_index = {w:(i+3) for w,i in word_index.items()}\n",
"\n",
"# ---- Add <pad>, <start> and unknown tags\n",
"\n",
"word_index.update( {'<pad>':0, '<start>':1, '<unknown>':2} )\n",
"\n",
"# ---- Create a reverse dictionary : {index:word}\n",
"\n",
"index_word = {index:word for word,index in word_index.items()} \n",
"\n",
"# ---- Add a nice function to transpose :\n",
"#\n",
"def dataset2text(review):\n",
" return ' '.join([index_word.get(i, '?') for i in review])"
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Dictionary size : 88587\n",
"\n",
"Review example (x_train[12]) :\n",
"\n",
" [1, 14, 22, 1367, 53, 206, 159, 4, 636, 898, 74, 26, 11, 436, 363, 108, 7, 14, 432, 14, 22, 9, 1055, 34, 8599, 2, 5, 381, 3705, 4509, 14, 768, 47, 839, 25, 111, 1517, 2579, 1991, 438, 2663, 587, 4, 280, 725, 6, 58, 11, 2714, 201, 4, 206, 16, 702, 5, 5176, 19, 480, 5920, 157, 13, 64, 219, 4, 2, 11, 107, 665, 1212, 39, 4, 206, 4, 65, 410, 16, 565, 5, 24, 43, 343, 17, 5602, 8, 169, 101, 85, 206, 108, 8, 3008, 14, 25, 215, 168, 18, 6, 2579, 1991, 438, 2, 11, 129, 1609, 36, 26, 66, 290, 3303, 46, 5, 633, 115, 4363]\n",
"\n",
"In real words :\n",
"\n",
" <start> this film contains more action before the opening credits than are in entire hollywood films of this sort this film is produced by tsui <unknown> and stars jet li this team has brought you many worthy hong kong cinema productions including the once upon a time in china series the action was fast and furious with amazing wire work i only saw the <unknown> in two shots aside from the action the story itself was strong and not just used as filler to find any other action films to rival this you must look for a hong kong cinema <unknown> in your area they are really worth checking out and usually never disappoint\n"
]
}
],
"source": [
"print('\\nDictionary size : ', len(word_index))\n",
"print('\\nReview example (x_train[12]) :\\n\\n',x_train[12])\n",
"print('\\nIn real words :\\n\\n', dataset2text(x_train[12]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.4 - Have a look for neurons"
]
},
{
"cell_type": "code",
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(12, 6))\n",
"ax=sns.histplot([len(i) for i in x_train],bins=60)\n",
"ax.set_title('Distribution of reviews by size')\n",
"plt.xlabel(\"Review's sizes\")\n",
"plt.ylabel('Density')\n",
"ax.set_xlim(0, 1500)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 3 - Preprocess the data\n",
"In order to be processed by an NN, all entries must have the same length. \n",
"We chose a review length of **review_len** \n",
"We will therefore complete them with a padding (of \\<pad\\>\\) "
]
},
{
"cell_type": "code",
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Review example (x_train[12]) :\n",
"\n",
" [ 1 14 22 1367 53 206 159 4 636 898 74 26 11 436\n",
" 363 108 7 14 432 14 22 9 1055 34 8599 2 5 381\n",
" 3705 4509 14 768 47 839 25 111 1517 2579 1991 438 2663 587\n",
" 4 280 725 6 58 11 2714 201 4 206 16 702 5 5176\n",
" 19 480 5920 157 13 64 219 4 2 11 107 665 1212 39\n",
" 4 206 4 65 410 16 565 5 24 43 343 17 5602 8\n",
" 169 101 85 206 108 8 3008 14 25 215 168 18 6 2579\n",
" 1991 438 2 11 129 1609 36 26 66 290 3303 46 5 633\n",
" 115 4363 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n",
" 0 0 0 0]\n",
"\n",
"In real words :\n",
"\n",
" <start> this film contains more action before the opening credits than are in entire hollywood films of this sort this film is produced by tsui <unknown> and stars jet li this team has brought you many worthy hong kong cinema productions including the once upon a time in china series the action was fast and furious with amazing wire work i only saw the <unknown> in two shots aside from the action the story itself was strong and not just used as filler to find any other action films to rival this you must look for a hong kong cinema <unknown> in your area they are really worth checking out and usually never disappoint <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad>\n"
]
}
],
"source": [
"review_len = 256\n",
"\n",
"x_train = keras.preprocessing.sequence.pad_sequences(x_train,\n",
" value = 0,\n",
" padding = 'post',\n",
" maxlen = review_len)\n",
"\n",
"x_test = keras.preprocessing.sequence.pad_sequences(x_test,\n",
" value = 0 ,\n",
" padding = 'post',\n",
" maxlen = review_len)\n",
"\n",
"print('\\nReview example (x_train[12]) :\\n\\n',x_train[12])\n",
"print('\\nIn real words :\\n\\n', dataset2text(x_train[12]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Save dataset and dictionary (can be usefull but not mandatory if at GRICAD or IDRIS)"
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Saved.\n"
]
}
],
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
"source": [
"os.makedirs('./data', mode=0o750, exist_ok=True)\n",
"\n",
"with h5py.File('./data/dataset_imdb.h5', 'w') as f:\n",
" f.create_dataset(\"x_train\", data=x_train)\n",
" f.create_dataset(\"y_train\", data=y_train)\n",
" f.create_dataset(\"x_test\", data=x_test)\n",
" f.create_dataset(\"y_test\", data=y_test)\n",
"\n",
"with open('./data/word_index.json', 'w') as fp:\n",
" json.dump(word_index, fp)\n",
"\n",
"with open('./data/index_word.json', 'w') as fp:\n",
" json.dump(index_word, fp)\n",
"\n",
"print('Saved.')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 4 - Build the model\n",
"Few remarks :\n",
"1. We'll choose a dense vector size for the embedding output with **dense_vector_size**\n",
"2. **GlobalAveragePooling1D** do a pooling on the last dimension : (None, lx, ly) -> (None, ly) \n",
"In other words: we average the set of vectors/words of a sentence\n",
"3. L'embedding de Keras fonctionne de manière supervisée. Il s'agit d'une couche de *vocab_size* neurones vers *n_neurons* permettant de maintenir une table de vecteurs (les poids constituent les vecteurs). Cette couche ne calcule pas de sortie a la façon des couches normales, mais renvois la valeur des vecteurs. n mots => n vecteurs (ensuite empilés par le pooling) \n",
"Voir : https://stats.stackexchange.com/questions/324992/how-the-embedding-layer-is-trained-in-keras-embedding-layer\n",
"\n",
"A SUIVRE : https://www.liip.ch/en/blog/sentiment-detection-with-keras-word-embeddings-and-lstm-deep-learning-networks\n",
"### 4.1 - Build\n",
"More documentation about :\n",
" - [Embedding](https://www.tensorflow.org/api_docs/python/tf/keras/layers/Embedding)\n",
" - [GlobalAveragePooling1D](https://www.tensorflow.org/api_docs/python/tf/keras/layers/GlobalAveragePooling1D)"
]
},
{
"cell_type": "code",
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
"metadata": {},
"outputs": [],
"source": [
"def get_model(dense_vector_size=128):\n",
" \n",
" model = keras.Sequential()\n",
" model.add(keras.layers.Embedding(input_dim = vocab_size, \n",
" output_dim = dense_vector_size, \n",
" input_length = review_len))\n",
" model.add(keras.layers.LSTM(128, dropout=0.2, recurrent_dropout=0.2))\n",
" model.add(keras.layers.Dense(1, activation='sigmoid'))\n",
"\n",
" model.compile(optimizer = 'adam',\n",
" loss = 'binary_crossentropy',\n",
" metrics = ['accuracy'])\n",
" return model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 5 - Train the model\n",
"### 5.1 - Get it"
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:Layer lstm will not use cuDNN kernel since it doesn't meet the cuDNN kernel criteria. It will use generic GPU kernel as fallback when running on GPU\n",
"Model: \"sequential\"\n",
"_________________________________________________________________\n",
"Layer (type) Output Shape Param # \n",
"=================================================================\n",
"embedding (Embedding) (None, 256, 128) 1280000 \n",
"_________________________________________________________________\n",
"lstm (LSTM) (None, 128) 131584 \n",
"_________________________________________________________________\n",
"dense (Dense) (None, 1) 129 \n",
"=================================================================\n",
"Total params: 1,411,713\n",
"Trainable params: 1,411,713\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model = get_model()\n",
"\n",
"model.summary()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.2 - Add callback"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": [
"os.makedirs('./run/models', mode=0o750, exist_ok=True)\n",
"save_dir = \"./run/models/best_model.h5\"\n",
"savemodel_callback = tf.keras.callbacks.ModelCheckpoint(filepath=save_dir, verbose=0, save_best_only=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.1 - Train it\n",
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/10\n",
"49/49 [==============================] - 37s 758ms/step - loss: 0.6913 - accuracy: 0.5230 - val_loss: 0.6871 - val_accuracy: 0.5364\n",
"Epoch 2/10\n",
"49/49 [==============================] - 37s 754ms/step - loss: 0.6752 - accuracy: 0.5610 - val_loss: 0.6785 - val_accuracy: 0.5394\n",
"Epoch 3/10\n",
"49/49 [==============================] - 37s 757ms/step - loss: 0.6375 - accuracy: 0.5919 - val_loss: 0.7197 - val_accuracy: 0.5734\n",
"Epoch 4/10\n",
"49/49 [==============================] - 38s 776ms/step - loss: 0.4910 - accuracy: 0.7900 - val_loss: 0.8804 - val_accuracy: 0.6802\n",
"Epoch 5/10\n",
"49/49 [==============================] - 37s 764ms/step - loss: 0.5418 - accuracy: 0.7373 - val_loss: 0.4988 - val_accuracy: 0.7914\n",
"Epoch 6/10\n",
"49/49 [==============================] - 38s 774ms/step - loss: 0.4422 - accuracy: 0.8261 - val_loss: 0.4817 - val_accuracy: 0.8059\n",
"Epoch 7/10\n",
"49/49 [==============================] - 38s 780ms/step - loss: 0.4258 - accuracy: 0.8367 - val_loss: 0.5204 - val_accuracy: 0.7898\n",
"Epoch 8/10\n",
"49/49 [==============================] - 38s 767ms/step - loss: 0.4136 - accuracy: 0.8440 - val_loss: 0.5543 - val_accuracy: 0.7444\n",
"Epoch 9/10\n",
"49/49 [==============================] - 39s 805ms/step - loss: 0.4160 - accuracy: 0.8400 - val_loss: 0.4742 - val_accuracy: 0.8111\n",
"Epoch 10/10\n",
"49/49 [==============================] - 39s 789ms/step - loss: 0.3917 - accuracy: 0.8554 - val_loss: 0.4772 - val_accuracy: 0.8118\n",
"CPU times: user 11min 43s, sys: 51.1 s, total: 12min 34s\n",
"Wall time: 6min 25s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"n_epochs = 10\n",
"\n",
"history = model.fit(x_train,\n",
" y_train,\n",
" epochs = n_epochs,\n",
" batch_size = batch_size,\n",
" validation_data = (x_test, y_test),\n",
" verbose = 1,\n",
" callbacks = [savemodel_callback])\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 6 - Evaluate\n",
"### 6.1 - Training history"
]
},
{
"cell_type": "code",
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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sHV9w8clIlINJQci4fLdQtiZ6rZbtYFxp7htjRyISCOn5EAkHKyFj98I7o8/zSUIAL37BY+nboLCggYNTUSkOkoOmpH4+PhKz23atImhQ1Vwp8GsWQEbf3LbUdEw8azguTZtoUsPt11Y4FYtiIg0IkoORMIhdNRgzERo36ns+dBHC6p3ICKNjCok1tQVp4Tv3s9+XOHhW265heTkZHw+HwB33XUXxhjmzZtHeno6BQUF/P3vf+fMM8+s1Y/Lzc3lN7/5DUuWLCEqKoqHHnqICRMm8MMPP3DZZZeRn59PcXExb731Fr169eK8884jJSWFoqIi7rjjDn71q18d9K/crKVshBWL3bYxMGnKz69JGgDfLnDbm9fB8ZMbLj4RkWooOWjEzj//fG688cbS5OD111/n448/5qabbqJdu3bs2bOHY445hjPOOANTUlinBp544gkAVqxYwerVq5k0aRJr1qzhqaee4oYbbuCiiy4iPz+foqIiZs6cSa9evfjwww8ByMjIqP9ftLkJXaEwagz0SPz5NRo5EJFGTI8VGrFRo0axa9cutm3bxvLly+nYsSM9e/bktttuY/jw4UycOJHU1FR27txZq/suWLCASy65BIDBgweTnJzMmjVrOPbYY7nnnnu477772Lx5M61atWLYsGF89tln3HLLLcyfP5/27duH41dtPtJ2wTdzgvunnFvxdb37B7e3bnDLHkVEGgmNHNRUJUP/4TZ16lTefPNNduzYwfnnn8/LL7/M7t27+fbbb4mOjqZPnz7k5tauBK+1tsLjF154IUcffTQffvghkydP5tlnn+XEE0/k22+/ZebMmdx6661MmjSJO++8sz5+teZp1ttQFHijHzQM+g2u+Lr2HV1RpPQ9kJ8HO1KhV1LDxSkiUgWNHDRy559/Pq+++ipvvvkmU6dOJSMjg27duhEdHc3s2bPZvHlzre85btw4Xn75ZQDWrFnDli1bOOSQQ9iwYQP9+vXj+uuv54wzzuD7779n27ZttG7dmosvvpjf//736vZYlaxMmP9RcL+yUYMSoaMHerQgIo2IRg4aucMOO4zMzEwSEhLo2bMnF110EaeffjpHHnkkI0eOZPDgSj6ZVsHn83HNNdcwbNgwoqKieO6554iNjeW1117jpZdeIjo6mh49enDnnXeyePFibr75ZiIiIoiOjubJJ58Mw2/ZTMz5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\n",
"text/plain": [
"<Figure size 576x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ooo.plot_history(history)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 6.2 - Reload and evaluate best model"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:Layer lstm will not use cuDNN kernel since it doesn't meet the cuDNN kernel criteria. It will use generic GPU kernel as fallback when running on GPU\n",
"x_test / loss : 0.4742\n",
"x_test / accuracy : 0.8111\n"
]
},
{
"data": {
"text/markdown": [
"#### Accuracy donut is :"
],
"text/plain": [
"<IPython.core.display.Markdown object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"model = keras.models.load_model('./run/models/best_model.h5')\n",
"\n",
"# ---- Evaluate\n",
"score = model.evaluate(x_test, y_test, verbose=0)\n",
"\n",
"print('x_test / loss : {:5.4f}'.format(score[0]))\n",
"print('x_test / accuracy : {:5.4f}'.format(score[1]))\n",
"\n",
"values=[score[1], 1-score[1]]\n",
"ooo.plot_donut(values,[\"Accuracy\",\"Errors\"], title=\"#### Accuracy donut is :\")\n",
"\n",
"# ---- Confusion matrix\n",
"\n",
"#y_pred = model.predict_classes(x_test) Deprecated after 01/01/2021 !!\n",
"\n",
"y_sigmoid = model.predict(x_test)\n",
"y_pred = np.argmax(y_sigmoid, axis=-1)\n",
"\n",
"ooo.display_confusion_matrix(y_test,y_pred,labels=range(2),color='orange',font_size='20pt')\n"
]
},
{
"<img width=\"80px\" src=\"../fidle/img/00-Fidle-logo-01.svg\"></img>"
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
}
},
"nbformat": 4,
"nbformat_minor": 4
}