{ "cells": [ { "cell_type": "code", "execution_count": 3, "id": "9286e0b8-3c78-4b0f-943c-d219e9840dfe", "metadata": { "ExecuteTime": { "end_time": "2023-11-20T17:41:55.983705200Z", "start_time": "2023-11-20T17:41:55.204565400Z" }, "papermill": { "duration": 0.01496, "end_time": "2024-01-31T17:49:55.553639", "exception": false, "start_time": "2024-01-31T17:49:55.538679", "status": "completed" }, "tags": [] }, "outputs": [], "source": [ "# Import to be able to import python package from src\n", "import sys\n", "sys.path.insert(0, '../src')" ] }, { "cell_type": "code", "execution_count": 4, "id": "2028eed7-b1c3-4c9e-b6a0-00433caa7d0f", "metadata": { "ExecuteTime": { "end_time": "2023-11-20T17:42:07.848983200Z", "start_time": "2023-11-20T17:41:55.983705200Z" }, "papermill": { "duration": 2.469376, "end_time": "2024-01-31T17:49:58.027391", "exception": false, "start_time": "2024-01-31T17:49:55.558015", "status": "completed" }, "tags": [] }, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import ontime as on" ] }, { "cell_type": "markdown", "id": "41296cc6-9d84-47c5-8a92-2d292f6f3c4a", "metadata": { "papermill": { "duration": 0.012158, "end_time": "2024-01-31T17:49:55.532894", "exception": false, "start_time": "2024-01-31T17:49:55.520736", "status": "completed" }, "tags": [] }, "source": [ "# Models" ] }, { "cell_type": "markdown", "id": "327dc997-5a25-462f-bb35-185e39302edd", "metadata": {}, "source": [ "This class implement a generic way to load models in onTime. It is compatible with Darts and Scikit-learn with an aime to add other librairies and models soon. Let's see how to use it." ] }, { "cell_type": "markdown", "id": "e24da8ab-6a83-4c2f-9ff0-c633d4693a91", "metadata": { "papermill": { "duration": 0.002768, "end_time": "2024-01-31T17:49:58.033371", "exception": false, "start_time": "2024-01-31T17:49:58.030603", "status": "completed" }, "tags": [] }, "source": [ "## Let's generate of random TimeSeries" ] }, { "cell_type": "code", "execution_count": 7, "id": "e9a96d79-0423-4d79-b01d-726193216238", "metadata": { "ExecuteTime": { "end_time": "2023-11-20T17:42:07.874183800Z", "start_time": "2023-11-20T17:42:07.848983200Z" }, "papermill": { "duration": 0.01143, "end_time": "2024-01-31T17:49:58.047455", "exception": false, "start_time": "2024-01-31T17:49:58.036025", "status": "completed" }, "tags": [] }, "outputs": [], "source": [ "# Start and end dates\n", "start_date = pd.Timestamp('2022-01-01')\n", "end_date = pd.Timestamp('2022-12-31')\n", "\n", "# Make a random walk\n", "ts = on.generators.random_walk().generate(start=start_date, end=end_date)\n", "ts = ts.astype(np.float32)" ] }, { "cell_type": "markdown", "id": "8e991124-59fd-4bde-84d0-c1622e37173a", "metadata": { "papermill": { "duration": 0.002717, "end_time": "2024-01-31T17:49:58.063640", "exception": false, "start_time": "2024-01-31T17:49:58.060923", "status": "completed" }, "tags": [] }, "source": [ "## Using a Darts models" ] }, { "cell_type": "markdown", "id": "a37651ba-6a09-467e-b630-395d004e3051", "metadata": {}, "source": [ "The model can be loaded from the desired library" ] }, { "cell_type": "code", "execution_count": 2, "id": "a1b679c1-4334-4d10-9ef1-019e81a36b90", "metadata": { "ExecuteTime": { "end_time": "2023-11-20T17:42:07.896443200Z", "start_time": "2023-11-20T17:42:07.880829500Z" }, "papermill": { "duration": 0.005851, "end_time": "2024-01-31T17:49:58.072240", "exception": false, "start_time": "2024-01-31T17:49:58.066389", "status": "completed" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "The `LightGBM` module could not be imported. To enable LightGBM support in Darts, follow the detailed instructions in the installation guide: https://github.com/unit8co/darts/blob/master/INSTALL.md\n", "The `Prophet` module could not be imported. To enable Prophet support in Darts, follow the detailed instructions in the installation guide: https://github.com/unit8co/darts/blob/master/INSTALL.md\n" ] } ], "source": [ "from darts.models import BlockRNNModel" ] }, { "cell_type": "markdown", "id": "7f6fed70-29f9-4c88-9860-7f0df3c59282", "metadata": {}, "source": [ "Then, it can be used with this generic interface." ] }, { "cell_type": "code", "execution_count": 11, "id": "85663124-29d5-4da0-8cee-e10639eb8c32", "metadata": {}, "outputs": [], "source": [ "model = on.Model(BlockRNNModel,\n", " input_chunk_length=12,\n", " output_chunk_length=6,\n", " n_rnn_layers=2,\n", " n_epochs=50\n", " )" ] }, { "cell_type": "markdown", "id": "6752ec5f-4384-4dc2-91e7-1f895cbb483b", "metadata": {}, "source": [ "Finally, the training and inference functions are the same than in Scikit Learn for instance :" ] }, { "cell_type": "code", "execution_count": 13, "id": "a83733e8-fb76-4d6d-94c0-bc5b255d2951", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "darts.models.forecasting.torch_forecasting_model INFO Train dataset contains 348 samples.\n", "GPU available: True (mps), used: True\n", "TPU available: False, using: 0 TPU cores\n", "IPU available: False, using: 0 IPUs\n", "HPU available: False, using: 0 HPUs\n", "\n", " | Name | Type | Params\n", "---------------------------------------------------\n", "0 | criterion | MSELoss | 0 \n", "1 | train_metrics | MetricCollection | 0 \n", "2 | val_metrics | MetricCollection | 0 \n", "3 | rnn | RNN | 2.0 K \n", "4 | fc | Sequential | 156 \n", "---------------------------------------------------\n", "2.2 K Trainable params\n", "0 Non-trainable params\n", "2.2 K Total params\n", "0.009 Total estimated model params size (MB)\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2414fb8b17c1478f92fbdf7af0aff093", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Training: | | 0/? [00:00" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# To train the model\n", "model.fit(ts)" ] }, { "cell_type": "code", "execution_count": 14, "id": "9f7f91dc-5cb0-4ee4-885e-2d7ea16e4762", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "GPU available: True (mps), used: True\n", "TPU available: False, using: 0 TPU cores\n", "IPU available: False, using: 0 IPUs\n", "HPU available: False, using: 0 HPUs\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "7d5cf5c561b54ec6b04f4861a9df5857", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Predicting: | | 0/? [00:00\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<TimeSeries (DataArray) (time: 5, component: 1, sample: 1)>\n",
       "array([[[-19.62056 ]],\n",
       "\n",
       "       [[-19.278965]],\n",
       "\n",
       "       [[-19.425938]],\n",
       "\n",
       "       [[-19.654451]],\n",
       "\n",
       "       [[-19.767109]]], dtype=float32)\n",
       "Coordinates:\n",
       "  * time       (time) datetime64[ns] 2023-01-01 2023-01-02 ... 2023-01-05\n",
       "  * component  (component) object 'random_walk'\n",
       "Dimensions without coordinates: sample\n",
       "Attributes:\n",
       "    static_covariates:  None\n",
       "    hierarchy:          None
" ], "text/plain": [ "\n", "array([[[-19.62056 ]],\n", "\n", " [[-19.278965]],\n", "\n", " [[-19.425938]],\n", "\n", " [[-19.654451]],\n", "\n", " [[-19.767109]]], dtype=float32)\n", "Coordinates:\n", " * time (time) datetime64[ns] 2023-01-01 2023-01-02 ... 2023-01-05\n", " * component (component) object 'random_walk'\n", "Dimensions without coordinates: sample\n", "Attributes:\n", " static_covariates: None\n", " hierarchy: None" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# To make a prediction\n", "model.predict(5)" ] }, { "cell_type": "markdown", "id": "2534d1df-b474-4b09-a471-a66cfa211880", "metadata": { "papermill": { "duration": 0.003354, "end_time": "2024-01-31T17:50:11.980851", "exception": false, "start_time": "2024-01-31T17:50:11.977497", "status": "completed" }, "tags": [] }, "source": [ "## Using a Scikit-learn API compatible models" ] }, { "cell_type": "code", "execution_count": 6, "id": "73778d5b-e8d1-4df9-b0dd-b877e2670323", "metadata": { "ExecuteTime": { "end_time": "2023-11-20T17:42:14.274895900Z", "start_time": "2023-11-20T17:42:14.221186200Z" }, "execution": { "iopub.execute_input": "2024-01-31T17:50:11.987988Z", "iopub.status.busy": "2024-01-31T17:50:11.987848Z", "iopub.status.idle": "2024-01-31T17:50:11.991181Z", "shell.execute_reply": "2024-01-31T17:50:11.990954Z" }, "papermill": { "duration": 0.007998, "end_time": "2024-01-31T17:50:11.992053", "exception": false, "start_time": "2024-01-31T17:50:11.984055", "status": "completed" }, "tags": [] }, "outputs": [], "source": [ "from sklearn.neural_network import MLPRegressor" ] }, { "cell_type": "code", "execution_count": 7, "id": "f712c297-579a-4ede-88a6-198ed7b17ca0", "metadata": { "ExecuteTime": { "end_time": "2023-11-20T17:42:14.996697600Z", "start_time": "2023-11-20T17:42:14.243220Z" }, "execution": { "iopub.execute_input": "2024-01-31T17:50:12.001738Z", "iopub.status.busy": "2024-01-31T17:50:12.001621Z", "iopub.status.idle": "2024-01-31T17:50:12.296382Z", "shell.execute_reply": "2024-01-31T17:50:12.292440Z" }, "papermill": { "duration": 0.303338, "end_time": "2024-01-31T17:50:12.299191", "exception": false, "start_time": "2024-01-31T17:50:11.995853", "status": "completed" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/fred.montet/Library/Caches/pypoetry/virtualenvs/ontime-FpQu8-YN-py3.10/lib/python3.10/site-packages/sklearn/neural_network/_multilayer_perceptron.py:691: ConvergenceWarning: Stochastic Optimizer: Maximum iterations (200) reached and the optimization hasn't converged yet.\n", " warnings.warn(\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<TimeSeries (DataArray) (time: 5, component: 1, sample: 1)>\n",
       "array([[[31.41836973]],\n",
       "\n",
       "       [[30.42709606]],\n",
       "\n",
       "       [[30.61009553]],\n",
       "\n",
       "       [[30.309712  ]],\n",
       "\n",
       "       [[29.84004834]]])\n",
       "Coordinates:\n",
       "  * time       (time) datetime64[ns] 2023-01-01 2023-01-02 ... 2023-01-05\n",
       "  * component  (component) object 'pred'\n",
       "Dimensions without coordinates: sample\n",
       "Attributes:\n",
       "    static_covariates:  None\n",
       "    hierarchy:          None
" ], "text/plain": [ "\n", "array([[[31.41836973]],\n", "\n", " [[30.42709606]],\n", "\n", " [[30.61009553]],\n", "\n", " [[30.309712 ]],\n", "\n", " [[29.84004834]]])\n", "Coordinates:\n", " * time (time) datetime64[ns] 2023-01-01 2023-01-02 ... 2023-01-05\n", " * component (component) object 'pred'\n", "Dimensions without coordinates: sample\n", "Attributes:\n", " static_covariates: None\n", " hierarchy: None" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model = on.Model(MLPRegressor,\n", " lags=30)\n", "model.fit(ts)\n", "model.predict(5)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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", "version": "3.10.10" }, "papermill": { "default_parameters": {}, "duration": 21.99495, "end_time": "2024-01-31T17:50:16.963941", "environment_variables": {}, "exception": null, "input_path": "docs/user_guide/0_core/0.4-modelling.ipynb", "output_path": "docs/user_guide/0_core/0.4-modelling.ipynb", "parameters": {}, "start_time": "2024-01-31T17:49:54.968991", "version": "2.5.0" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "007b13deca0141eea670cd4ab30a7a31": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_ed88472606b046a2b36494edc92d33b7", "placeholder": "​", "style": "IPY_MODEL_f8ec3a45ffc6465f9937b66c3e97a1c8", "tabbable": null, "tooltip": null, "value": "Predicting DataLoader 0: 100%" } }, "00d880c4ff144597ab4f4b27bbd48648": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null } }, "266c614cf97a4643a449978ab6c20ef8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null } }, "287802ce0cd2419aa600f096393748c5": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "36e47658259148c8846687a980950ef1": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "100%" } }, "48e94174d3e7426386fc77689882565f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_287802ce0cd2419aa600f096393748c5", "placeholder": "​", "style": "IPY_MODEL_00d880c4ff144597ab4f4b27bbd48648", "tabbable": null, "tooltip": null, "value": " 11/11 [00:00<00:00, 49.70it/s, train_loss=83.30]" } }, "4af28ba7da104f918f509ce58d6af332": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_a87b4923c6ec401384788598f2614110", "placeholder": "​", "style": "IPY_MODEL_aa7abb12d08c4cc1bf75c5fccb0aef2a", "tabbable": null, "tooltip": null, "value": "Epoch 49: 100%" } }, "566a752cee3b4c1ab6e8072032b93dd3": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "100%" } }, "5b0796a9c0bc496a9c5ce424fc19b4ec": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_f5e873e0e63843b2a289152d45ce8663", "max": 11, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_8bb217768a424ceaa3660e34622eef03", "tabbable": null, "tooltip": null, "value": 11 } }, "8bb217768a424ceaa3660e34622eef03": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "987b2456fb024e03a47f5e9e608c4f87": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_eba6b511c3f34cf88f94aa99df7986df", "placeholder": "​", "style": "IPY_MODEL_266c614cf97a4643a449978ab6c20ef8", "tabbable": null, "tooltip": null, "value": " 1/1 [00:00<00:00, 3.03it/s]" } }, "a07b01c878ca4d74b4c89fd137ff29a0": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_4af28ba7da104f918f509ce58d6af332", "IPY_MODEL_5b0796a9c0bc496a9c5ce424fc19b4ec", "IPY_MODEL_48e94174d3e7426386fc77689882565f" ], "layout": "IPY_MODEL_566a752cee3b4c1ab6e8072032b93dd3", "tabbable": null, "tooltip": null } }, "a511eb5708d6401fa2ba0f969235c16f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_007b13deca0141eea670cd4ab30a7a31", "IPY_MODEL_eb65e8a306c84558b3734fc937e95a2a", "IPY_MODEL_987b2456fb024e03a47f5e9e608c4f87" ], "layout": "IPY_MODEL_36e47658259148c8846687a980950ef1", "tabbable": null, "tooltip": null } }, "a87b4923c6ec401384788598f2614110": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "aa7abb12d08c4cc1bf75c5fccb0aef2a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null } }, "af7d5cc036b04255b90a4900e9bab6cf": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "bb81cd5776644f20a4d095f06bd4786f": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "eb65e8a306c84558b3734fc937e95a2a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_bb81cd5776644f20a4d095f06bd4786f", "max": 1, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_af7d5cc036b04255b90a4900e9bab6cf", "tabbable": null, "tooltip": null, "value": 1 } }, "eba6b511c3f34cf88f94aa99df7986df": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ed88472606b046a2b36494edc92d33b7": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "f5e873e0e63843b2a289152d45ce8663": { "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "f8ec3a45ffc6465f9937b66c3e97a1c8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }