{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" }, "gpuClass": "standard", "accelerator": "GPU", "widgets": { "application/vnd.jupyter.widget-state+json": { "99a8b62c0eb9498a801d33b890ff7bed": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_c359659559d34001a3c5efe76f537f02", "IPY_MODEL_6f0e3b497e0841d685447d55249c7090", "IPY_MODEL_0706cf17204148fd984f48cd67918fc1" ], "layout": "IPY_MODEL_eef03577efaa4c059c19ef479dbfd01d" } }, "c359659559d34001a3c5efe76f537f02": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_818c520b7deb43ac943c43db903684b2", "placeholder": "​", "style": "IPY_MODEL_24844abb6eff439aa39fa21170215d62", "value": "Downloading builder script: 100%" } }, "6f0e3b497e0841d685447d55249c7090": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_91ad4f75ac8d45e1b351ca8ae14b6622", "max": 3208, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_ab3de39e3f5c4b7ca46d8951ae66dc2b", "value": 3208 } }, "0706cf17204148fd984f48cd67918fc1": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_23aefac177cb4da1a9185f9cec04389c", "placeholder": "​", "style": "IPY_MODEL_0c7bf18286b4482d88e1fa60d592a41d", "value": " 3.21k/3.21k [00:00<00:00, 39.6kB/s]" } }, "eef03577efaa4c059c19ef479dbfd01d": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "818c520b7deb43ac943c43db903684b2": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "24844abb6eff439aa39fa21170215d62": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "91ad4f75ac8d45e1b351ca8ae14b6622": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ab3de39e3f5c4b7ca46d8951ae66dc2b": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "23aefac177cb4da1a9185f9cec04389c": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "0c7bf18286b4482d88e1fa60d592a41d": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "0b9435ced6e64d5b9a8817c10800df73": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_d93e145562a049b5b78939ddc21deca7", "IPY_MODEL_a6ee0f4a0dfd4db892b7507b613413a2", "IPY_MODEL_b474c2802a5e47b4a64e39caf3d27b49" ], "layout": "IPY_MODEL_ef716218f5584978921c4e60778be480" } }, "d93e145562a049b5b78939ddc21deca7": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_a007cf844ba149e79da42ebb2a8b6919", "placeholder": "​", "style": "IPY_MODEL_eea5d45eb9da447dbfbed71fb2cc98f3", "value": "Downloading metadata: 100%" } }, "a6ee0f4a0dfd4db892b7507b613413a2": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_48d02bab11db43b38d4210896e55499f", "max": 1687, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_3c9d0bf719e74eb28af657c968b2c20d", "value": 1687 } }, "b474c2802a5e47b4a64e39caf3d27b49": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f8b75f9fd51a4f199c885fbcaaa34acb", "placeholder": "​", "style": "IPY_MODEL_313893adfed344e89b8e5ce0d7188c5c", "value": " 1.69k/1.69k [00:00<00:00, 39.4kB/s]" } }, "ef716218f5584978921c4e60778be480": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "a007cf844ba149e79da42ebb2a8b6919": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "eea5d45eb9da447dbfbed71fb2cc98f3": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "48d02bab11db43b38d4210896e55499f": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "3c9d0bf719e74eb28af657c968b2c20d": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "f8b75f9fd51a4f199c885fbcaaa34acb": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "313893adfed344e89b8e5ce0d7188c5c": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "748c273b887042158812dc3ac1491537": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_e2d26ca9cae643fb802d39868c7ad23e", "IPY_MODEL_da93abb3b0874f898e937429e191d9ce", "IPY_MODEL_de3099d6ed254becb67a1b8747b2be25" ], "layout": "IPY_MODEL_2594eae8ea92443c9333ccea900184d4" } }, "e2d26ca9cae643fb802d39868c7ad23e": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_a5fe8d1749db4d78841d39577586b63c", "placeholder": "​", "style": "IPY_MODEL_916ff262c78b4bd1b47509906c41e4ac", "value": "Downloading readme: 100%" } }, "da93abb3b0874f898e937429e191d9ce": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_00b3561bf5414672985d67071613aa6b", "max": 4872, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_707f3adc572043449c373bcb6502772f", "value": 4872 } }, "de3099d6ed254becb67a1b8747b2be25": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_14eda3a4a8824614aca869bb533ba431", "placeholder": "​", "style": "IPY_MODEL_2f84d24236d144c09a04d3a0027d8c51", "value": " 4.87k/4.87k [00:00<00:00, 157kB/s]" } }, "2594eae8ea92443c9333ccea900184d4": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "a5fe8d1749db4d78841d39577586b63c": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "916ff262c78b4bd1b47509906c41e4ac": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "00b3561bf5414672985d67071613aa6b": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "707f3adc572043449c373bcb6502772f": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "14eda3a4a8824614aca869bb533ba431": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "2f84d24236d144c09a04d3a0027d8c51": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "c3f39c4d26334407bf94756b5111bafa": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_3587423fd6034d3598379e602dc52357", "IPY_MODEL_9c9c2fc4d6164af4ae61e863818b7196", "IPY_MODEL_e46bea8d3b7343b9b7f2393339ed2136" ], "layout": "IPY_MODEL_fb5ed36fc0514b5ea9b616cccfebeaf1" } }, "3587423fd6034d3598379e602dc52357": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_3a8cf73db8db4cff8064fec8c59462a1", "placeholder": "​", "style": "IPY_MODEL_c169b6b6b7fc4a11b278650b5894137e", "value": "Downloading data: 100%" } }, "9c9c2fc4d6164af4ae61e863818b7196": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_4bd75cd381894b0bb7ef12f91430337c", "max": 203415, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_a1e8db856f0e4761a9f4068650770795", "value": 203415 } }, "e46bea8d3b7343b9b7f2393339ed2136": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_11b23310fcfa4ea68fb0bbc3715bea2e", "placeholder": "​", "style": "IPY_MODEL_3bf1c3b1c051424988978fff264d0f16", "value": " 203k/203k [00:00<00:00, 1.02MB/s]" } }, "fb5ed36fc0514b5ea9b616cccfebeaf1": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "3a8cf73db8db4cff8064fec8c59462a1": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "c169b6b6b7fc4a11b278650b5894137e": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "4bd75cd381894b0bb7ef12f91430337c": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "a1e8db856f0e4761a9f4068650770795": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "11b23310fcfa4ea68fb0bbc3715bea2e": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "3bf1c3b1c051424988978fff264d0f16": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "52eb6c7623a34694a19e12a88cff244e": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_fef4864729494b99aec966647293a982", "IPY_MODEL_d95d028c83f04010a6812f5457af4539", "IPY_MODEL_60c3df4304814cce8048cb2ceedfabe0" ], "layout": "IPY_MODEL_b3dbe2a8f3d14ccc8bc14eb0c929281f" } }, "fef4864729494b99aec966647293a982": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f12364f248b249f6bd6daddea22e8c4e", "placeholder": "​", "style": "IPY_MODEL_6a37560f11bc47c68b286a27839d7ca7", "value": "Generating train split: 92%" } }, "d95d028c83f04010a6812f5457af4539": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_53e7e18723b942d5a48da59242720c8e", "max": 5574, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_b18c24667e4348389bd0abfbbb84747b", "value": 5574 } }, "60c3df4304814cce8048cb2ceedfabe0": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_3e95b7edd1704ed1b28245c560035492", "placeholder": "​", "style": "IPY_MODEL_ebfffc894e774299b9870c67df0dca0f", "value": " 5119/5574 [00:00<00:00, 8533.09 examples/s]" } }, "b3dbe2a8f3d14ccc8bc14eb0c929281f": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": "hidden", "width": null } }, "f12364f248b249f6bd6daddea22e8c4e": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6a37560f11bc47c68b286a27839d7ca7": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "53e7e18723b942d5a48da59242720c8e": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "b18c24667e4348389bd0abfbbb84747b": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "3e95b7edd1704ed1b28245c560035492": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ebfffc894e774299b9870c67df0dca0f": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "dcd34a760b324e6a94e219a9e10e557b": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_b20d9f84deb5440698b832c8af79d148", "IPY_MODEL_2a561a1680364ab9b7bd4221ff30f98f", "IPY_MODEL_e2ba3f5319a14d65b28d2a401610eee2" ], "layout": "IPY_MODEL_eb1ebdb33f8748b797f45dc6c839ad44" } }, "b20d9f84deb5440698b832c8af79d148": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_481f3e3471a04dc692116ff3eac472b9", "placeholder": "​", "style": "IPY_MODEL_1d3326424eda448a969a913526ff138b", "value": "100%" } }, "2a561a1680364ab9b7bd4221ff30f98f": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f71bbb5a6ec94d05a55bca2c8d9609e6", "max": 1, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_d5901c24329f41f99a7b6ac4901a08c5", "value": 1 } }, "e2ba3f5319a14d65b28d2a401610eee2": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_667aeb90d1be422f991d1a689be3d69e", "placeholder": "​", "style": "IPY_MODEL_6f721a22c07342bc9e9ba850d3bfa261", "value": " 1/1 [00:00<00:00, 24.39it/s]" } }, "eb1ebdb33f8748b797f45dc6c839ad44": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "481f3e3471a04dc692116ff3eac472b9": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1d3326424eda448a969a913526ff138b": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "f71bbb5a6ec94d05a55bca2c8d9609e6": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d5901c24329f41f99a7b6ac4901a08c5": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "667aeb90d1be422f991d1a689be3d69e": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6f721a22c07342bc9e9ba850d3bfa261": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "54ce84849a974330a66e1100086a8fed": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_4efdba3661464381a034ba90eed898dc", "IPY_MODEL_d6e70f45ef8f426e8a9f1646e4bfdb2f", "IPY_MODEL_a6b434b5186341bbb2e3a6b5772f307f" ], "layout": "IPY_MODEL_eb2079320deb4ef5aa5624e164689b4e" } }, "4efdba3661464381a034ba90eed898dc": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_88f741767e6845dda901e2f17fd978e1", "placeholder": "​", "style": "IPY_MODEL_d8bd3441499c405cbea7b6b61f7636ad", "value": "Downloading (…)ve/main/spiece.model: 100%" } }, "d6e70f45ef8f426e8a9f1646e4bfdb2f": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_af6d44105eb8435cbc34fa902e4303b9", "max": 791656, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_e5dc73086a7d48a5a75274ecf7e1e83e", "value": 791656 } }, "a6b434b5186341bbb2e3a6b5772f307f": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_7bad80b954c74f8995f9c572a2831b6f", "placeholder": "​", "style": "IPY_MODEL_6358c42c34a74dfc8df0101076eb2274", "value": " 792k/792k [00:00<00:00, 2.55MB/s]" } }, "eb2079320deb4ef5aa5624e164689b4e": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "88f741767e6845dda901e2f17fd978e1": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d8bd3441499c405cbea7b6b61f7636ad": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "af6d44105eb8435cbc34fa902e4303b9": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "e5dc73086a7d48a5a75274ecf7e1e83e": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "7bad80b954c74f8995f9c572a2831b6f": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6358c42c34a74dfc8df0101076eb2274": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "3806842991b04a19a315223c4f0d05b0": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_0f9e34991e634982a37ed4474939a614", "IPY_MODEL_6fd3d1538419439db78ae1940e6ecd95", "IPY_MODEL_968e624fbe4b49d8b22ba35237f29f04" ], "layout": "IPY_MODEL_490d54e698024024a0376e0c5aa57afa" } }, "0f9e34991e634982a37ed4474939a614": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_9c921a01f9f44ef6b6b0867fbce29d4e", "placeholder": "​", "style": "IPY_MODEL_d932c14e5642431da3490fda711b855a", "value": "Downloading (…)lve/main/config.json: 100%" } }, "6fd3d1538419439db78ae1940e6ecd95": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_e66eea96fb8d467085ff05b14cef41f5", "max": 1208, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_8ff90b6f1b204ceaa41c09c48bdb4a95", "value": 1208 } }, "968e624fbe4b49d8b22ba35237f29f04": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_1c3c1fd4ebbf4363aa9c7b7df4fb96a7", "placeholder": "​", "style": "IPY_MODEL_7febee22767b48ed8ffb31b2e86e2bde", "value": " 1.21k/1.21k [00:00<00:00, 24.3kB/s]" } }, "490d54e698024024a0376e0c5aa57afa": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "9c921a01f9f44ef6b6b0867fbce29d4e": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d932c14e5642431da3490fda711b855a": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "e66eea96fb8d467085ff05b14cef41f5": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "8ff90b6f1b204ceaa41c09c48bdb4a95": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "1c3c1fd4ebbf4363aa9c7b7df4fb96a7": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "7febee22767b48ed8ffb31b2e86e2bde": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "c4238a30a23f4a4995a64596a076f639": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_7008395271204caba9d2a70e886f3fb7", "IPY_MODEL_91fe75c3703e49e2b9200eb32465979a", "IPY_MODEL_605fe093ee154e1eafda5f92c07712ef" ], "layout": "IPY_MODEL_63343a6f0a2a4f66b878afc18d408c1c" } }, "7008395271204caba9d2a70e886f3fb7": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_fc24763fbd70457fbb2a67883ec38a67", "placeholder": "​", "style": "IPY_MODEL_7ba8e63a4e1645ebad9829af1706fb1d", "value": "Downloading (…)"pytorch_model.bin";: 100%" } }, "91fe75c3703e49e2b9200eb32465979a": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_1aeec94f6aed4d6fa9ef94b5e8011f95", "max": 891691430, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_7ab80f2dc4bd4bc4b4d28bff719068e2", "value": 891691430 } }, "605fe093ee154e1eafda5f92c07712ef": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_ab5aa9e15b894bf6aec2ed8d7949d4fb", "placeholder": "​", "style": "IPY_MODEL_5aff4f72159e4187adf00959d8863017", "value": " 892M/892M [00:04<00:00, 219MB/s]" } }, "63343a6f0a2a4f66b878afc18d408c1c": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "fc24763fbd70457fbb2a67883ec38a67": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "7ba8e63a4e1645ebad9829af1706fb1d": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "1aeec94f6aed4d6fa9ef94b5e8011f95": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "7ab80f2dc4bd4bc4b4d28bff719068e2": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "ab5aa9e15b894bf6aec2ed8d7949d4fb": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "5aff4f72159e4187adf00959d8863017": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "52e83e2e748f4c79b789d0354f4e941b": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_ef0f5971cb444d8f8c5c1ace4d8ebe81", "IPY_MODEL_64885f8157264a1297bab372bf8a7fb5", "IPY_MODEL_6b3444ddd6d24f448631e3e86d992241" ], "layout": "IPY_MODEL_7e0aaf3e4b5b4bbc9c8120d9e5c00d8d" } }, "ef0f5971cb444d8f8c5c1ace4d8ebe81": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_51c2d890c6874141a0d5ecc0eb89a282", "placeholder": "​", "style": "IPY_MODEL_1ec01f40f98f47e3aae79a9f871d9df1", "value": "Downloading (…)neration_config.json: 100%" } }, "64885f8157264a1297bab372bf8a7fb5": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f208555568824dd9a800555cc17182be", "max": 147, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_5fd3c6d56ef644ebaff4da4bffa470a5", "value": 147 } }, "6b3444ddd6d24f448631e3e86d992241": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_5167e08d346f47468249d2f40b262792", "placeholder": "​", "style": "IPY_MODEL_904d0e8e3a2b443f9e90652d78ecff95", "value": " 147/147 [00:00<00:00, 5.66kB/s]" } }, "7e0aaf3e4b5b4bbc9c8120d9e5c00d8d": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "51c2d890c6874141a0d5ecc0eb89a282": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1ec01f40f98f47e3aae79a9f871d9df1": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "f208555568824dd9a800555cc17182be": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "5fd3c6d56ef644ebaff4da4bffa470a5": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "5167e08d346f47468249d2f40b262792": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": 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, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "904d0e8e3a2b443f9e90652d78ecff95": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } } } } }, "cells": [ { "cell_type": "markdown", "source": [ "# Instalacja pakietów" ], "metadata": { "id": "ZXsOR6oJOJbd" } }, { "cell_type": "code", "execution_count": 1, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "8l0hzptKNiZS", "outputId": "6d11f1ae-5b12-4e44-b20b-19400c918c5a" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n", "Collecting transformers\n", " Downloading transformers-4.26.1-py3-none-any.whl (6.3 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m6.3/6.3 MB\u001b[0m \u001b[31m18.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting datasets\n", " Downloading datasets-2.9.0-py3-none-any.whl (462 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m462.8/462.8 KB\u001b[0m \u001b[31m27.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: torch in /usr/local/lib/python3.8/dist-packages (1.13.1+cu116)\n", "Collecting sentencepiece\n", " Downloading sentencepiece-0.1.97-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m14.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting huggingface-hub<1.0,>=0.11.0\n", " Downloading huggingface_hub-0.12.0-py3-none-any.whl (190 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m190.3/190.3 KB\u001b[0m \u001b[31m12.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: requests in /usr/local/lib/python3.8/dist-packages (from transformers) (2.25.1)\n", "Collecting tokenizers!=0.11.3,<0.14,>=0.11.1\n", " Downloading tokenizers-0.13.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.6 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m7.6/7.6 MB\u001b[0m \u001b[31m28.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.8/dist-packages (from transformers) (2022.6.2)\n", "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.8/dist-packages (from transformers) (23.0)\n", "Requirement already satisfied: filelock in /usr/local/lib/python3.8/dist-packages (from transformers) (3.9.0)\n", "Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.8/dist-packages (from transformers) (1.21.6)\n", "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.8/dist-packages (from transformers) (6.0)\n", "Requirement already satisfied: tqdm>=4.27 in /usr/local/lib/python3.8/dist-packages (from transformers) (4.64.1)\n", "Requirement already satisfied: pyarrow>=6.0.0 in /usr/local/lib/python3.8/dist-packages (from datasets) (9.0.0)\n", "Requirement already satisfied: dill<0.3.7 in /usr/local/lib/python3.8/dist-packages (from datasets) (0.3.6)\n", "Requirement already satisfied: fsspec[http]>=2021.11.1 in /usr/local/lib/python3.8/dist-packages (from datasets) (2023.1.0)\n", "Requirement already satisfied: pandas in /usr/local/lib/python3.8/dist-packages (from datasets) (1.3.5)\n", "Requirement already satisfied: aiohttp in /usr/local/lib/python3.8/dist-packages (from datasets) (3.8.3)\n", "Collecting multiprocess\n", " Downloading multiprocess-0.70.14-py38-none-any.whl (132 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m132.0/132.0 KB\u001b[0m \u001b[31m8.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting responses<0.19\n", " Downloading responses-0.18.0-py3-none-any.whl (38 kB)\n", "Collecting xxhash\n", " Downloading xxhash-3.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (213 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m213.0/213.0 KB\u001b[0m \u001b[31m12.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: typing-extensions in /usr/local/lib/python3.8/dist-packages (from torch) (4.4.0)\n", "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.8.2)\n", "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (4.0.2)\n", "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.3.3)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (6.0.4)\n", "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.3.1)\n", "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (22.2.0)\n", "Requirement already satisfied: charset-normalizer<3.0,>=2.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (2.1.1)\n", "Requirement already satisfied: chardet<5,>=3.0.2 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (4.0.0)\n", "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (2022.12.7)\n", "Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (1.24.3)\n", "Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (2.10)\n", "Collecting urllib3<1.27,>=1.21.1\n", " Downloading urllib3-1.26.14-py2.py3-none-any.whl (140 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m140.6/140.6 KB\u001b[0m \u001b[31m7.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: python-dateutil>=2.7.3 in /usr/local/lib/python3.8/dist-packages (from pandas->datasets) (2.8.2)\n", "Requirement already satisfied: pytz>=2017.3 in /usr/local/lib/python3.8/dist-packages (from pandas->datasets) (2022.7.1)\n", "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.8/dist-packages (from python-dateutil>=2.7.3->pandas->datasets) (1.15.0)\n", "Installing collected packages: tokenizers, sentencepiece, xxhash, urllib3, multiprocess, responses, huggingface-hub, transformers, datasets\n", " Attempting uninstall: urllib3\n", " Found existing installation: urllib3 1.24.3\n", " Uninstalling urllib3-1.24.3:\n", " Successfully uninstalled urllib3-1.24.3\n", "Successfully installed datasets-2.9.0 huggingface-hub-0.12.0 multiprocess-0.70.14 responses-0.18.0 sentencepiece-0.1.97 tokenizers-0.13.2 transformers-4.26.1 urllib3-1.26.14 xxhash-3.2.0\n" ] } ], "source": [ "!pip install transformers datasets torch sentencepiece" ] }, { "cell_type": "markdown", "source": [ "# Załadowanie datasetu" ], "metadata": { "id": "dhN0rmb5Oi3d" } }, { "cell_type": "code", "source": [ "from datasets import load_dataset" ], "metadata": { "id": "tnaDkwZ2Pbnn" }, "execution_count": 2, "outputs": [] }, { "cell_type": "code", "source": [ "dataset = load_dataset(\"sms_spam\")" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 212, "referenced_widgets": [ "99a8b62c0eb9498a801d33b890ff7bed", "c359659559d34001a3c5efe76f537f02", "6f0e3b497e0841d685447d55249c7090", "0706cf17204148fd984f48cd67918fc1", "eef03577efaa4c059c19ef479dbfd01d", "818c520b7deb43ac943c43db903684b2", "24844abb6eff439aa39fa21170215d62", "91ad4f75ac8d45e1b351ca8ae14b6622", "ab3de39e3f5c4b7ca46d8951ae66dc2b", "23aefac177cb4da1a9185f9cec04389c", "0c7bf18286b4482d88e1fa60d592a41d", "0b9435ced6e64d5b9a8817c10800df73", "d93e145562a049b5b78939ddc21deca7", "a6ee0f4a0dfd4db892b7507b613413a2", "b474c2802a5e47b4a64e39caf3d27b49", "ef716218f5584978921c4e60778be480", "a007cf844ba149e79da42ebb2a8b6919", "eea5d45eb9da447dbfbed71fb2cc98f3", "48d02bab11db43b38d4210896e55499f", "3c9d0bf719e74eb28af657c968b2c20d", "f8b75f9fd51a4f199c885fbcaaa34acb", "313893adfed344e89b8e5ce0d7188c5c", "748c273b887042158812dc3ac1491537", "e2d26ca9cae643fb802d39868c7ad23e", "da93abb3b0874f898e937429e191d9ce", "de3099d6ed254becb67a1b8747b2be25", "2594eae8ea92443c9333ccea900184d4", "a5fe8d1749db4d78841d39577586b63c", "916ff262c78b4bd1b47509906c41e4ac", "00b3561bf5414672985d67071613aa6b", "707f3adc572043449c373bcb6502772f", "14eda3a4a8824614aca869bb533ba431", "2f84d24236d144c09a04d3a0027d8c51", "c3f39c4d26334407bf94756b5111bafa", "3587423fd6034d3598379e602dc52357", "9c9c2fc4d6164af4ae61e863818b7196", "e46bea8d3b7343b9b7f2393339ed2136", "fb5ed36fc0514b5ea9b616cccfebeaf1", "3a8cf73db8db4cff8064fec8c59462a1", "c169b6b6b7fc4a11b278650b5894137e", "4bd75cd381894b0bb7ef12f91430337c", "a1e8db856f0e4761a9f4068650770795", "11b23310fcfa4ea68fb0bbc3715bea2e", "3bf1c3b1c051424988978fff264d0f16", "52eb6c7623a34694a19e12a88cff244e", "fef4864729494b99aec966647293a982", "d95d028c83f04010a6812f5457af4539", "60c3df4304814cce8048cb2ceedfabe0", "b3dbe2a8f3d14ccc8bc14eb0c929281f", "f12364f248b249f6bd6daddea22e8c4e", "6a37560f11bc47c68b286a27839d7ca7", "53e7e18723b942d5a48da59242720c8e", "b18c24667e4348389bd0abfbbb84747b", "3e95b7edd1704ed1b28245c560035492", "ebfffc894e774299b9870c67df0dca0f", "dcd34a760b324e6a94e219a9e10e557b", "b20d9f84deb5440698b832c8af79d148", "2a561a1680364ab9b7bd4221ff30f98f", "e2ba3f5319a14d65b28d2a401610eee2", "eb1ebdb33f8748b797f45dc6c839ad44", "481f3e3471a04dc692116ff3eac472b9", "1d3326424eda448a969a913526ff138b", "f71bbb5a6ec94d05a55bca2c8d9609e6", "d5901c24329f41f99a7b6ac4901a08c5", "667aeb90d1be422f991d1a689be3d69e", "6f721a22c07342bc9e9ba850d3bfa261" ] }, "id": "cCiAuRqrOkvV", "outputId": "87f24c1e-cb25-4b5a-b786-6f3bcbc0b96f" }, "execution_count": 3, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "Downloading builder script: 0%| | 0.00/3.21k [00:005,} test samples'.format(test_size))\n", "print('{:>5,} training samples'.format(train_size))\n", "print('{:>5,} validation samples'.format(val_size))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "Mm6vc6lLVW3l", "outputId": "cfb15fb6-1daa-4b3c-df1b-5d0c862e8821" }, "execution_count": 14, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "1,000 test samples\n", "4,116 training samples\n", " 458 validation samples\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Create train and validation loaders" ], "metadata": { "id": "bmgQOP4EVfA1" } }, { "cell_type": "code", "source": [ "from torch.utils.data import DataLoader, RandomSampler, SequentialSampler" ], "metadata": { "id": "CxnQ3cmIVlNh" }, "execution_count": 15, "outputs": [] }, { "cell_type": "code", "source": [ "batch_size = 16\n", "\n", "train_dataloader = DataLoader(\n", " train_dataset,\n", " sampler = RandomSampler(train_dataset),\n", " batch_size = batch_size\n", " )\n", "\n", "validation_dataloader = DataLoader(\n", " val_dataset,\n", " sampler = SequentialSampler(val_dataset),\n", " batch_size = batch_size\n", " )" ], "metadata": { "id": "0hcpO_onVjEC" }, "execution_count": 16, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Device check" ], "metadata": { "id": "efwhqLyyVu9z" } }, { "cell_type": "code", "source": [ "if torch.cuda.is_available(): \n", " device = torch.device(\"cuda\")\n", "\n", " print('There are %d GPU(s) available.' % torch.cuda.device_count())\n", " print('We will use the GPU:', torch.cuda.get_device_name(0))\n", "\n", "else:\n", " print('No GPU available, using the CPU instead.')\n", " device = torch.device(\"cpu\")" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "ANBCfNGnVwVk", "outputId": "8db82471-22b2-450d-cb9d-ba86ce765fa2" }, "execution_count": 17, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "There are 1 GPU(s) available.\n", "We will use the GPU: Tesla T4\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Load T5 model" ], "metadata": { "id": "okTx_ynMV0rH" } }, { "cell_type": "code", "source": [ "from transformers import T5ForConditionalGeneration" ], "metadata": { "id": "Eu-7Eed8WgN0" }, "execution_count": 18, "outputs": [] }, { "cell_type": "code", "source": [ "model = T5ForConditionalGeneration.from_pretrained('t5-base')\n", "\n", "model.cuda()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000, "referenced_widgets": [ "c4238a30a23f4a4995a64596a076f639", "7008395271204caba9d2a70e886f3fb7", "91fe75c3703e49e2b9200eb32465979a", "605fe093ee154e1eafda5f92c07712ef", "63343a6f0a2a4f66b878afc18d408c1c", "fc24763fbd70457fbb2a67883ec38a67", "7ba8e63a4e1645ebad9829af1706fb1d", "1aeec94f6aed4d6fa9ef94b5e8011f95", "7ab80f2dc4bd4bc4b4d28bff719068e2", "ab5aa9e15b894bf6aec2ed8d7949d4fb", "5aff4f72159e4187adf00959d8863017", "52e83e2e748f4c79b789d0354f4e941b", "ef0f5971cb444d8f8c5c1ace4d8ebe81", "64885f8157264a1297bab372bf8a7fb5", "6b3444ddd6d24f448631e3e86d992241", "7e0aaf3e4b5b4bbc9c8120d9e5c00d8d", "51c2d890c6874141a0d5ecc0eb89a282", "1ec01f40f98f47e3aae79a9f871d9df1", "f208555568824dd9a800555cc17182be", "5fd3c6d56ef644ebaff4da4bffa470a5", "5167e08d346f47468249d2f40b262792", "904d0e8e3a2b443f9e90652d78ecff95" ] }, "id": "JKv9O8kfV2zZ", "outputId": "0d41faa2-6857-4a67-d581-41383ffc0378" }, "execution_count": 19, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "Downloading (…)\"pytorch_model.bin\";: 0%| | 0.00/892M [00:005,} of {:>5,}. Elapsed: {:}.'.format(step, len(train_dataloader), elapsed))\n", "\n", " b_input_ids = batch[0].to(device)\n", " b_input_mask = batch[1].to(device)\n", "\n", " y = batch[2].to(device)\n", " y_ids = y[:, :-1].contiguous()\n", " lm_labels = y[:, 1:].clone().detach()\n", " lm_labels[y[:, 1:] == tokenizer.pad_token_id] = -100\n", "\n", " model.zero_grad() \n", "\n", " outputs = model(\n", " input_ids=b_input_ids,\n", " attention_mask=b_input_mask,\n", " decoder_input_ids=y_ids,\n", " labels=lm_labels\n", " )\n", "\n", " loss = outputs['loss']\n", " total_train_loss += loss.item()\n", "\n", " loss.backward()\n", " torch.nn.utils.clip_grad_norm_(model.parameters(), 1.0)\n", "\n", " optimizer.step()\n", " scheduler.step()\n", "\n", " avg_train_loss = total_train_loss / len(train_dataloader) \n", " training_time = format_time(time.time() - t0)\n", "\n", " print(\"\")\n", " print(\" Average training loss: {0:.2f}\".format(avg_train_loss))\n", " print(\" Training epcoh took: {:}\".format(training_time))\n", " \n", " # ========================================\n", " # Validation\n", " # ========================================\n", "\n", " print(\"\")\n", " print(\"Running Validation...\")\n", "\n", " t0 = time.time()\n", " model.eval()\n", "\n", " total_eval_loss = 0\n", " total_eval_accuracy = 0\n", "\n", " for batch in validation_dataloader:\n", " b_input_ids = batch[0].to(device)\n", " b_input_mask = batch[1].to(device)\n", "\n", " y = batch[2].to(device)\n", " y_ids = y[:, :-1].contiguous()\n", " lm_labels = y[:, 1:].clone().detach()\n", " lm_labels[y[:, 1:] == tokenizer.pad_token_id] = -100\n", " \n", " with torch.no_grad(): \n", "\n", " outputs = model(\n", " input_ids=b_input_ids,\n", " attention_mask=b_input_mask,\n", " decoder_input_ids=y_ids,\n", " labels=lm_labels\n", " )\n", "\n", " loss = outputs['loss']\n", " total_eval_loss += loss.item()\n", "\n", " generated_ids = model.generate(\n", " input_ids = b_input_ids,\n", " attention_mask = b_input_mask, \n", " max_length=2, \n", " num_beams=2,\n", " repetition_penalty=2.5, \n", " length_penalty=1.0, \n", " early_stopping=True\n", " )\n", "\n", " preds = [tokenizer.decode(g, skip_special_tokens=True, clean_up_tokenization_spaces=True) for g in generated_ids]\n", " target = [tokenizer.decode(t, skip_special_tokens=True, clean_up_tokenization_spaces=True) for t in y]\n", " total_eval_accuracy += calculate_accuracy(preds, target) \n", "\n", " avg_val_loss = total_eval_loss / len(validation_dataloader)\n", "\n", " avg_val_accuracy = total_eval_accuracy / len(validation_dataloader)\n", " print(\" Accuracy: {0:.2f}\".format(avg_val_accuracy))\n", " \n", " validation_time = format_time(time.time() - t0)\n", " print(\" Validation took: {:}\".format(validation_time))\n", " print(\" Validation Loss: {0:.2f}\".format(avg_val_loss))\n", "\n", " training_stats.append(\n", " {\n", " 'epoch': epoch_i + 1,\n", " 'Training Loss': avg_train_loss,\n", " 'Valid. Loss': avg_val_loss,\n", " 'Valid. Accur.': avg_val_accuracy,\n", " 'Training Time': training_time,\n", " 'Validation Time': validation_time\n", " }\n", " )\n", "\n", "print(\"\")\n", "print(\"Training complete!\")\n", "\n", "print(\"Total training took {:} (h:mm:ss)\".format(format_time(time.time()-total_t0)))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "xsHxfslka1u5", "outputId": "c1d90548-6d70-4172-e0e2-e916eea141a6" }, "execution_count": 25, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\n", "======== Epoch 1 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:00:46.\n", " Batch 80 of 258. Elapsed: 0:01:32.\n", " Batch 120 of 258. Elapsed: 0:02:17.\n", " Batch 160 of 258. Elapsed: 0:03:02.\n", " Batch 200 of 258. Elapsed: 0:03:47.\n", " Batch 240 of 258. Elapsed: 0:04:33.\n", "\n", " Average training loss: 0.02\n", " Training epcoh took: 0:04:52\n", "\n", "Running Validation...\n", " Accuracy: 0.00\n", " Validation took: 0:00:24\n", " Validation Loss: 0.00\n", "\n", "======== Epoch 2 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:00:45.\n", " Batch 80 of 258. Elapsed: 0:01:31.\n", " Batch 120 of 258. Elapsed: 0:02:16.\n", " Batch 160 of 258. Elapsed: 0:03:01.\n", " Batch 200 of 258. Elapsed: 0:03:46.\n", " Batch 240 of 258. Elapsed: 0:04:32.\n", "\n", " Average training loss: 0.00\n", " Training epcoh took: 0:04:52\n", "\n", "Running Validation...\n", " Accuracy: 0.00\n", " Validation took: 0:00:24\n", " Validation Loss: 0.00\n", "\n", "======== Epoch 3 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:00:45.\n", " Batch 80 of 258. Elapsed: 0:01:30.\n", " Batch 120 of 258. Elapsed: 0:02:15.\n", " Batch 160 of 258. Elapsed: 0:03:01.\n", " Batch 200 of 258. Elapsed: 0:03:46.\n", " Batch 240 of 258. Elapsed: 0:04:31.\n", "\n", " Average training loss: 0.00\n", " Training epcoh took: 0:04:51\n", "\n", "Running Validation...\n", " Accuracy: 0.00\n", " Validation took: 0:00:24\n", " Validation Loss: 0.00\n", "\n", "======== Epoch 4 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:00:45.\n", " Batch 80 of 258. Elapsed: 0:01:30.\n", " Batch 120 of 258. Elapsed: 0:02:16.\n", " Batch 160 of 258. Elapsed: 0:03:01.\n", " Batch 200 of 258. Elapsed: 0:03:46.\n", " Batch 240 of 258. Elapsed: 0:04:31.\n", "\n", " Average training loss: 0.00\n", " Training epcoh took: 0:04:51\n", "\n", "Running Validation...\n", " Accuracy: 0.00\n", " Validation took: 0:00:24\n", " Validation Loss: 0.00\n", "\n", "Training complete!\n", "Total training took 0:21:01 (h:mm:ss)\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Train summary" ], "metadata": { "id": "xIpFPoRb91Or" } }, { "cell_type": "code", "source": [ "import pandas as pd\n", "\n", "pd.set_option('precision', 2)\n", "df_stats = pd.DataFrame(data=training_stats)\n", "\n", "df_stats = df_stats.set_index('epoch')\n", "df_stats" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 206 }, "id": "GjYqBrrO93Oh", "outputId": "4a9cd46d-4c7c-447e-f98d-21f3cdd66c34" }, "execution_count": 26, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " Training Loss Valid. Loss Valid. Accur. Training Time Validation Time\n", "epoch \n", "1 1.84e-02 0.0 0.0 0:04:52 0:00:24\n", "2 1.49e-06 0.0 0.0 0:04:52 0:00:24\n", "3 4.64e-07 0.0 0.0 0:04:51 0:00:24\n", "4 1.43e-07 0.0 0.0 0:04:51 0:00:24" ], "text/html": [ "\n", "
\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Training LossValid. LossValid. Accur.Training TimeValidation Time
epoch
11.84e-020.00.00:04:520:00:24
21.49e-060.00.00:04:520:00:24
34.64e-070.00.00:04:510:00:24
41.43e-070.00.00:04:510:00:24
\n", "
\n", " \n", " \n", " \n", "\n", " \n", "
\n", "
\n", " " ] }, "metadata": {}, "execution_count": 26 } ] }, { "cell_type": "code", "source": [ "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "import seaborn as sns\n", "\n", "sns.set(style='darkgrid')\n", "\n", "sns.set(font_scale=1.5)\n", "plt.rcParams[\"figure.figsize\"] = (12,6)\n", "\n", "plt.plot(df_stats['Training Loss'], 'b-o', label=\"Training\")\n", "plt.plot(df_stats['Valid. Loss'], 'g-o', label=\"Validation\")\n", "\n", "plt.title(\"Training & Validation Loss\")\n", "plt.xlabel(\"Epoch\")\n", "plt.ylabel(\"Loss\")\n", "plt.legend()\n", "plt.xticks([1, 2, 3, 4])\n", "\n", "plt.show()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 427 }, "id": "Xk3gzkeU96v3", "outputId": "fce44153-ea42-4563-e704-d44c8693422d" }, "execution_count": 27, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "source": [ "# Create test loader" ], "metadata": { "id": "UJlKxl0r-W-m" } }, { "cell_type": "code", "source": [ "prediction_dataloader = DataLoader(\n", " test_dataset,\n", " sampler = SequentialSampler(test_dataset),\n", " batch_size = batch_size\n", " )" ], "metadata": { "id": "eQGsEEDh-YxG" }, "execution_count": 28, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Evaluate on test dataset" ], "metadata": { "id": "gHSDNWvA-aq9" } }, { "cell_type": "code", "source": [ "print('Predicting labels for {:,} test sentences...'.format(len(test_dataset)))\n", "\n", "model.eval()\n", "predictions , true_labels = [], []\n", "\n", "for batch in prediction_dataloader:\n", "\n", " b_input_ids = batch[0].to(device)\n", " b_input_mask = batch[1].to(device)\n", " y = batch[2].to(device)\n", " \n", " with torch.no_grad(): \n", "\n", " generated_ids = model.generate(\n", " input_ids = b_input_ids,\n", " attention_mask = b_input_mask, \n", " max_length=2, \n", " num_beams=2,\n", " repetition_penalty=2.5, \n", " length_penalty=1.0, \n", " early_stopping=True\n", " )\n", " \n", " preds = [tokenizer.decode(g, skip_special_tokens=True, clean_up_tokenization_spaces=True) for g in generated_ids]\n", " target = [tokenizer.decode(t, skip_special_tokens=True, clean_up_tokenization_spaces=True) for t in y]\n", "\n", " predictions.append(preds)\n", " true_labels.append(target)\n", "\n", "print(' DONE.')" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "OPcQkHnJ-c9A", "outputId": "9e25d954-7dd6-416a-f350-a06b7a6f6453" }, "execution_count": 29, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Predicting labels for 1,000 test sentences...\n", " DONE.\n" ] } ] }, { "cell_type": "code", "source": [ "results_ok = 0\n", "results_false = 0\n", "for idx, true_labels_batch in enumerate(true_labels):\n", " for bidx, true_label in enumerate(true_labels_batch):\n", " if true_label == predictions[idx][bidx]:\n", " results_ok += 1\n", " else:\n", " results_false += 1\n", "\n", "print(\"Correct predictions: {}, incorrect results: {}, accuracy: {}\".format(results_ok, results_false, float(results_ok) / (results_ok + results_false)))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "ifz56jYW-zBN", "outputId": "0fd7d84a-7f00-4c0a-f125-e4e3f94ac230" }, "execution_count": 30, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Correct predictions: 0, incorrect results: 1000, accuracy: 0.0\n" ] } ] }, { "cell_type": "code", "source": [ "print(\"Sample prediction: {}, expected: {}\".format(predictions[2][0], true_labels[2][0]))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "1LqVo4wW-2g-", "outputId": "0ac57805-e5d3-473d-a679-da032a7016f4" }, "execution_count": 31, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Sample prediction: how, expected: conversation\n" ] } ] }, { "cell_type": "markdown", "source": [ "# MCC Score" ], "metadata": { "id": "dLYc9WXz_B1o" } }, { "cell_type": "code", "source": [ "from sklearn.metrics import matthews_corrcoef\n", "\n", "matthews_set = []\n", "print('Calculating Matthews Corr. Coef. for each batch...')\n", "\n", "for i in range(len(true_labels)):\n", " matthews = matthews_corrcoef(true_labels[i], predictions[i]) \n", " matthews_set.append(matthews)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "hPEPpXXX_DXR", "outputId": "f44695cb-0c76-4373-c8c2-a7c6ce375496" }, "execution_count": 32, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Calculating Matthews Corr. Coef. for each batch...\n" ] } ] }, { "cell_type": "code", "source": [ "ax = sns.barplot(x=list(range(len(matthews_set))), y=matthews_set, ci=None)\n", "\n", "plt.title('MCC Score per Batch')\n", "plt.ylabel('MCC Score (-1 to +1)')\n", "plt.xlabel('Batch #')\n", "\n", "plt.show()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 427 }, "id": "qjtAYcme_EyM", "outputId": "4f105d74-f50e-4b33-ba55-35c2411cbdef" }, "execution_count": 33, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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cOGCDh48aK/pAAAAADgYy4QAAAAAJ1XT1sF+/fpVeKKcnJybLgYAAADArWMzDJw/f15169aVv7//DScqKCiwW1EAAAAAHM9mGLjnnnsUEBCgZcuW3XCiJUuWaOHChXYrDAAAAIBj2dwz0K5dO/3www8VmshkMtmlIAAAAAC3hs0w0LZtW2VlZSklJeWGE919993q0qWL3QoDAAAA4FgmwzCM212EM0hPz1FJCb9qAAAAOIaLi0n163tXboyDagEAAABwh6tyGCgpKdGFCxdUVFRkz3oAAAAA3CJVDgMZGRnq16+fDh8+bM96AAAAANhIYKwAACAASURBVNwiN7VMiO0GAAAAQPXFngEAAADASREGAAAAACdV5TDg4eGhYcOGyd/f3571AAAAALhFeM/ALcJ7BgAAAOBIvGcAAAAAQIWVGwbGjh2rgwcPVnrCvXv3asyYMTdVFAAAAADHq1neAX9/f0VERKht27YaOnSo7r//fjVt2rTMvqdOndJXX32lzZs3KzExUYMHD3ZUvQAAAADsxOaegcOHD2vJkiXas2ePJKlOnTpq1KiRfHx8ZBiGsrOzde7cOeXm5spkMql3796aMmWKOnTocMsuoLpgzwAAAAAcqSp7Biq0gfjcuXPaunWrDh48qKSkJGVkZMhkMsnX11eBgYHq1q2bBgwYoHvuuafKxf/WEQYAAADgSA4LA7h5hAEAAAA4Ek8TAgAAAFBh1TIMFBUVad68eerdu7dCQ0P1yCOPaO/evRUam5qaqmnTpqlLly7q1KmTpkyZouTk5DL7btiwQYMGDVJISIgGDhyoNWvW2PMyAAAAgNuqWi4Tev7557V9+3ZFRkYqICBAsbGxio+PV1RUlDp27FjuuNzcXA0fPly5ubkaP368atasqZUrV8pkMmnTpk2qW7euue+6dev00ksvKTw8XPfee68OHTqkzZs3a+bMmZo4cWKla2aZEAAAABzJKfYMxMXFadSoUZo9e7bGjx8vSSosLNSDDz4of39/m9/ev/fee3rzzTcVExOjtm3bSpKSkpL00EMPafLkyZo2bZokqaCgQH369FHnzp21ZMkS8/gZM2boyy+/1FdffaXatWtXqm7CAAAAABzJKfYMbN26Va6urho1apS5zd3dXSNHjtThw4d18eLFcsdu27ZNHTp0MAcBSWrRooV69uypLVu2mNv279+vrKwsjR071mL8uHHjlJubq127dtnxigAAAIDbo9qFgYSEBDVr1kxeXl4W7aGhoTIMQwkJCWWOKykp0YkTJxQcHGx1LCQkRGfOnFF+fr4k6dixY5Jk1bddu3ZycXExHwcAAACqs2oXBtLS0uTv72/V7ufnJ0nl3hnIyspSUVGRud+vxxqGobS0NPM53Nzc5OPjY9GvtM3W3QcAAACguqhZmc7FxcX65JNP9M033yg9PV0vvPCC2rZtq+zsbP373/9Wz5491aBBA0fVKun6en5XV1erdnd3d0nX9w+UpbTdzc2t3LEFBQU2z1Hat7xz2FLZ9VsAAACAo1U4DOTn52vixIk6cuSIatWqpYKCAmVnZ0uSvL29NX/+fI0YMULTp093WLGS5OHhoatXr1q1l35AL/1g/2ul7UVFReWO9fDwMP9nWf1K+5Z3DlvYQAwAAABHcugG4oULFyo+Pl6LFi3Szp079cuHENWoUUMDBgzQN998U6mTV4Wfn1+Zy3RKl/iUtYRIknx8fOTm5mbu9+uxJpPJvITIz89PV69eVVZWlkW/oqIiZWVllXsOAAAAoDqpcBjYunWrHn30UfXv318mk8nqeJMmTXT+/Hm7FleWoKAgnT59Wrm5uRbt33//vfl4WVxcXBQYGKj4+HirY3FxcQoICFCtWrUkSW3atJEkq77x8fEqKSkxHwcAAACqswqHgYsXL6p169blHq9Vq5bVB3RHCA8P19WrV7VhwwZzW1FRkWJiYtSpUyfznoULFy4oKSnJYuzAgQP13XffWTwN6Mcff9S+ffsUHh5ubuvRo4d8fHy0du1ai/EffvihPD09df/99zvi0gAAAIBbqsJ7Bnx8fJSamlru8cTExFuyfKZ9+/YKDw/X/PnzlZaWpiZNmig2NlYXLlzQ66+/bu43c+ZMHThwQCdOnDC3jR07Vhs2bNCkSZM0YcIE1ahRQytXrpSfn5/5BWbS9T0Df/rTn/TKK69o2rRp6t27tw4dOqSPP/5YM2bMUJ06dRx+nQAAAICjVTgM9OzZUzExMXriiSesjiUnJys6OlpDhgyxa3HlmTt3rhYsWKDNmzcrOztbrVu31rvvvqvOnTvbHOft7a2oqCi99tprWrJkiUpKStS9e3e9+OKL8vX1teg7btw4ubq6avny5dq5c6caNmyoF198UZGRkY68NAAAAOCWMRm/3Alsw9mzZzVixAg1aNBADzzwgBYuXGj+dn3dunVycXHRpk2b1LBhQ0fXXC3xNCEAAAA4UlWeJlThMCBd30D717/+VSdPnrRob9WqlebNm1fu5l0QBgAAAOBYDg8DpU6ePKmkpCQZhqGmTZuqbdu2lZ3C6RAGAAAA4EgOCwO5ubkaMmSIHnvsMYuNtqg4wgAAAAAcyWEvHfPy8lJWVpa8vLyqVBgAAACAO0+F3zPQvn17HT161JG1AAAAALiFKhwGZsyYoa1btyo6OlpV2GYAAAAA4A5T4Q3EkZGRunDhgs6fP6+6deuqSZMm8vDwsJzMZNKqVascUmh1x54BAAAAOFJV9gxU+KVjKSkpkmR+j8ClS5cqdSIAAAAAd5YqPVoUlcedAQAAADiSw54mBAAAAOC3p8LLhErl5ORoz549Sk5OliQ1btxYvXr1krd35VIIAAAAgNurUmFgw4YNeuONN5SXl2d+opDJZJKnp6dmzZqlUaNGOaRIAAAAAPZX4T0DO3fu1DPPPKPGjRsrIiJCrVq1kiQlJibqgw8+UHJyshYvXqywsDCHFlxdsWcAAAAAjlSVPQMVDgNjxozR5cuXtX79eqs3Eefk5OjRRx9VnTp19OGHH1aqAGdBGAAAAIAjOXQD8fHjxzVs2DCrICBJ3t7eGjp0qI4fP16pkwMAAAC4fez2NCGTyWSvqQAAAADcAhUOA61bt1ZsbKzy8vKsjuXm5io2NlZBQUF2LQ4AAACA41T4aUJPPvmkpk6dqmHDhikyMlItWrSQJJ06dUpRUVE6d+6cFi5c6LBCAQAAANhXpd5AvGbNGs2fP1/5+fnmZUGGYahWrVp64YUXNHbsWIcVWt2xgRgAAACO5NCnCZW6fPmydu/erZSUFEnXXzp27733qnbt2pU6sbMhDAAAAMCRbkkYQNUQBgAAAOBIDn206LFjx7RmzZpyj69Zs0YJCQmVOjkAAACA26fCYWDRokX6z3/+U+7xXbt2afHixfaoCQAAAMAtUOEwcPToUXXt2rXc4127dlVcXJxdigIAAADgeBUOA5mZmfLx8Sn3eJ06dZSZmWmXogAAAAA4XoXDQP369ZWYmFju8ZMnT6pu3bp2KQoAAACA41U4DPTq1UsbN24sMxCcOnVK0dHR6tWrl12LAwAAAOA4FX606Llz5zRs2DBdu3ZNI0aMUJs2bSRJCQkJio6OlqurqzZu3KimTZs6st5qi0eLAgAAwJEc/p6Bo0ePavbs2Tp16pRFe6tWrfTaa68pJCSkUid3JoQBAAAAONIte+lYQkKCzpw5I0lq1qyZgoKCKjuF0yEMAAAAwJF4A/EdjDAAAAAAR6pKGKhZ1ZMlJyfrs88+U2pqqlq2bKkRI0bIw8OjqtMBAAAAuMVs3hnYsGGDoqKitGLFCtWvX9/cvnv3bk2dOlUFBQUyDEMmk0ktW7bUunXr5OXldUsKr264MwAAAABHqsqdAZuPFv3Pf/4jLy8viyBgGIb+/ve/q6CgQJMmTdK//vUvDRs2TImJiVq5cmWVCgcAAABw69lcJnT8+HENGjTIou3bb7/V+fPnNXToUE2fPl2S1LdvX50/f147d+7UM88847hqAQAAANiNzTsDGRkZaty4sUXbt99+K5PJZBUS+vTpo7Nnz9q/QgAAAAAOYTMM1KxZU1evXrVoO3r0qCSpQ4cOFu0+Pj4qKiqyc3kAAAAAHMVmGGjUqJGOHDli/rm4uFiHDx9WQECA6tata9E3KytLvr6+jqkSAAAAgN3Z3DMwYMAALVmyRB07dlSPHj0UHR2tjIwMjRgxwqpvXFyc7rnnHocVCgAAAMC+bD5aNCcnRyNGjNC5c+ckXX+SUMOGDRUTE2NxF+DKlSu6//77NX78eE2bNs3xVVdDPFoUAAAAjmT3l455e3srOjpa69ev19mzZ9WkSRONGjVKderUseiXlJSk4cOH64EHHqh81QAAAABuC5t3BmA/3BkAAACAI9n9pWMAAAAAfrsIAwAAAICTIgwAAAAAToowAAAAADipahkGLl++rL/97W/q0aOHOnTooMjISCUkJFR4fFJSkp544gl17NhR3bp108yZM5WRkWHVZ+7cuRoyZIg6duyo3r17a/Lkyfrhhx/sfTkAAADAbVHtniZUUlKisWPH6uTJk5o4caJ8fX21du1apaamKiYmRk2aNLE5/ueff9bQoUNVp04dPfbYY8rLy9Py5cvVqFEjrV+/Xq6urpKkOXPmaOPGjRowYIBCQ0N15coVffTRR7pw4YKWLVumHj16VKpuniYEAAAAR6rK04RshoHi4mK9/fbbatSokcaMGVPuJGvXrtXPP/+s6dOny2QyVaqAyvr88881ffp0LV68WP3795ckZWRkaODAgerbt6/mzp1rc/zLL7+szZs3a+vWrWrQoIEkac+ePZowYYL+53/+RyNHjpQkxcfHq1mzZvLy8jKPzczM1ODBg9WyZUtFRUVVqm7CAAAAABzJ7o8W/fjjj7Vs2TKFhITYnCQ0NFTvvfeePv3000qdvCq2bdsmf39/9evXz9xWr149DRo0SDt27NDVq1dtjt++fbvCwsLMQUCSevXqpaZNm2rLli3mtuDgYIsgIEm+vr7q0qWLkpKS7HQ1AAAAwO1jMwxs2bJFvXr1UnBwsM1JgoOD1bt3b3322Wd2La4sCQkJateundUdiJCQEOXm5urcuXPljk1NTVV6enqZ1xMaGlqhfQdpaWny9fWtfOEAAADAHcZmGPjhhx/Us2fPCk3UvXt3xcfH26UoW9LS0uTv72/VXtp28eLFcseWHvPz87M65ufnp/T0dBUXF5c7/tChQ/ruu+80aNCgypYNAAAA3HFq2jqYnZ2t+vXrV2iievXqKSsrq1InLykpueGynlLu7u6SpIKCArm5uVkdL20rKCgod47CwkKLvuXN/+vlQZKUnp6uP//5z2rSpIkmTpxYoZp/qbLrtwAAAABHsxkGvLy8lJmZWaGJsrKyyvwQbcvBgwcVGRlZob579+5VvXr15OHhoaKiIqvjpW0eHh7lzlH6gb+s8aVBoazxeXl5mjx5svLz87Vs2TJ5enpWqOZfYgMxAAAAHKkqG4hthoGWLVtq9+7dFfomfPfu3WrZsmWlTt68eXO9/vrrFerr7X39wvz8/MpcClTaVtYSolKlx9LS0qyOpaWlqX79+qpRo4ZFe1FRkZ599lmdPHlSy5cvr/Q1AgAAAHcqm2HgD3/4g+bMmaMdO3aYH+NZlp07d2rPnj2aNWtWpU7u5+en4cOHV2pMUFCQjhw5IsMwLDYRx8XFydPT0+Z7Bho0aKB69eqVubchLi5Obdq0sWgrKSnRzJkztXfvXv3zn/9Uly5dKlUrAAAAcCezuYF49OjRatKkiZ577jm9/fbbSklJsTiekpKit99+W88995yaNm2q0aNHO7RYSQoPD9fFixe1c+dOc1tGRoa2bt2qfv36mV8aJknnzp2zerrQgAED9OWXXyo1NdXctnfvXp05c0bh4eEWff/7v/9bn3/+uV566SWbYQgAAACojm74BuKzZ89q8uTJOnPmjEwmk7y9veXl5aXc3Fzl5OTIMAw1a9ZMS5cuveHbf+2huLhYY8eOVWJiovkNxB9++KF++uknxcTEKCAgwNw3LCxMkvTll1+a23766ScNHTpUPj4+5jcQL1u2TA0bNtSGDRvMm4tXrlyp119/XR07dizzhWtDhgypVN3sGQAAAIAj2f0NxKUKCwu1fv16bdu2TYmJicrNzZWXl5cCAwM1YMAAjRo1yubGXXvLzs7W3LlztWPHDhUWFiokJESzZs1Su3btLPqVFQYkKTExUW+88YYOHz4sV1dX/f73v9fs2bNVr149c59Zs2YpNja23BpOnDhRqZoJAwAAAHAkh4UB3DzCAAAAABypKmHA5p4B6fpjNXNzc232yc3NVV5eXqVODAAAAOD2shkGfvzxR3Xr1k1Lly61Ocm7776rbt26WW3WBQAAAHDnshkG1q1bJ19fX02dOtXmJFOmTFG9evX04Ycf2rU4AAAAAI5jMwzs3btXAwcOND9hpzzu7u4KDw/X7t277VocAAAAAMexGQZSUlLUqlWrCk3UokULJScn26UoAAAAAI5nMwyUlJTIxeWGe4yvT+TiopKSErsUBQAAAMDxbH7S9/Pz06lTpyo00alTp+Tn52eXogAAAAA4ns0w0KVLF3366acVerTop59+qq5du9q1OAAAAACOYzMMjBs3ThkZGZo6daqysrLK7JOdna2pU6cqMzNTjz32mEOKBAAAAGB/NW0dDAkJ0TPPPKNFixapX79+GjBggFq3bi1vb2/l5uYqISFBO3bsUE5Ojp599lm1a9fuVtUNAAAA4CaZDMMwbtRp48aNWrBggS5dunR9kMmk0mG/+93vNH36dI0YMcKxlVZz6ek5Kim54a8aAAAAqBIXF5Pq1/eu1JgKhQFJunr1qr799lslJiYqJydH3t7eatWqlTp16iRXV9cqFexMCAMAAABwJIeGAdwcwgAAAAAcqSphoGIvEQAAAADwm2NzA3FkZGSlJjOZTFq1atVNFQQAAADg1rAZBg4cOKCaNWtWeE+AyWSyS1EAAAAAHM9mGKhZ8/rhXr16afjw4erbt69cXFhZBAAAAPwW2NxAnJGRoU2bNik2NlanTp1S/fr1NWTIEI0YMULNmze/lXVWe2wgBgAAgCM59GlCcXFx2rhxo7Zs2aKcnByFhoZq5MiRGjx4sLy8vKpUsDMhDAAAAMCRbsmjRQsLC7Vt2zbFxMRo//798vDw0Msvv6whQ4ZU6sTOhjAAAAAAR6pKGLC5Z6As7u7uevjhh9WoUSO5uLhoz549Sk5Oruw0AAAAAG6zSoWBixcvatOmTYqJidHZs2fl7++vyZMna8SIEY6qDwAAAICD3HCZ0NWrV7Vz507FxMRo9+7dcnFxUVhYmIYPH6777ruPpwtVEMuEAAAA4Eh2Xyb06quv6pNPPtHly5cVGBiomTNn6uGHH5aPj89NFQoAAADg9rN5ZyAoKEgeHh7q37+/2rVrd+PJTCaNHz/envX9ZnBnAAAAAI5k96cJBQUFVW4yk0kJCQmVGuMsCAMAAABwJLsvE1q9evVNFQQAAADgzlXp9wygargzAAAAAEeqyp0BHgUEAAAAOCnCAAAAAOCkCAMAAACAkyIMAAAAAE6KMAAAAAA4KcIAAAAA4KQIAwAAAICTIgwAAAAAToowAAAAADgpwgAAAADgpAgDAAAAgJMiDAAAAABOijAAAAAAOCnCAAAAAOCkCAMAAACAkyIMAAAAAE6KMAAAAAA4qWoZBi5fvqy//e1v6tGjhzp06KDIyEglJCRUeHxSUpKeeOIJdezYUd26ddPMmTOVkZFhc8znn3+u1q1bq0uXLjdbPgAAAHBHMBmGYdzuIiqjpKREY8eO1cmTJzVx4kT5+vpq7dq1Sk1NVUxMjJo0aWJz/M8//6yhQ4eqTp06euyxx5SXl6fly5erUaNGWr9+vVxdXa3GFBQUaNCgQcrKylKNGjV06NChStednp6jkpJq9asGAABANeLiYlL9+t6VGlPTQbU4zNatW3XkyBEtXrxY/fv3lyQNGjRIAwcO1KJFizR37lyb49955x0VFhYqKipKDRo0kCSFhoZqwoQJ2rx5s0aOHGk15r333pObm5vCwsL01Vdf2f+iAAAAgNug2i0T2rZtm/z9/dWvXz9zW7169TRo0CDt2LFDV69etTl++/btCgsLMwcBSerVq5eaNm2qLVu2WPW/cOGC3n//fc2cObPMuwYAAABAdVXtwkBCQoLatWsnk8lk0R4SEqLc3FydO3eu3LGpqalKT09XcHCw1bHQ0NAy9x3MmTNHHTt2VFhY2M0XDwAAANxBql0YSEtLk7+/v1V7advFixfLHVt6zM/Pz+qYn5+f0tPTVVxcbG47cOCAvvjiC82aNetmywYAAADuOLd1z0BJSckNl/WUcnd3l3R9M6+bm5vV8dK2goKCcucoLCy06Fve/F5eXiouLtarr76q4cOHKygoqEI12lLZzRwAAACAo93WMHDw4EFFRkZWqO/evXtVr149eXh4qKioyOp4aZuHh0e5c5R+4C9rfGlQKB3/0UcfKSUlRcuXL69QfTfC04QAAADgSNXuaULNmzfX66+/XqG+3t7XL8zPz6/MpUClbWUtISpVeiwtLc3qWFpamurXr68aNWqoqKhI//znPzV8+HAVFBQoJSVFkpSXl6eSkhKlpKTI09NT9erVq1DtAAAAwJ3otoYBPz8/DR8+vFJjgoKCdOTIERmGYbGJOC4uTp6enjbfM9CgQQPVq1dP8fHxVsfi4uLUpk0bSdeXCmVmZioqKkpRUVFWffv166fBgwfr7bffrlTtAAAAwJ2k2r1nIDw8XNu2bdPOnTvN7xnIyMjQ1q1b1a9fP4vHf5Y+WeiXAWHAgAH6+OOPlZqaan686N69e3XmzBk9+eSTkqRatWpp8eLFVudevXq14uLiNH/+fItHkwIAAADVUbV7A3FxcbHGjh2rxMRE8xuIP/zwQ/3000+KiYlRQECAuW/p40C//PJLc9tPP/2koUOHysfHx/wG4mXLlqlhw4basGFDmZuLS82aNUs7duzgDcQAAAC441Rlz0C1e7RojRo19O6772rQoEGKiorSvHnz5Ovrq9WrV1sEgfI0bNhQH3zwge655x69+eabev/999WnTx+tWLHCZhAAAAAAfmuq3Z2B6oo7AwAAAHAkp7gzAAAAAMA+CAMAAACAkyIMAAAAAE6KMAAAAAA4KcIAAAAA4KQIAwAAAICTIgwAAAAAToowAAAAADgpwgAAAADgpAgDAAAAgJMiDAAAAABOijAAAAAAOCnCAAAAAOCkCAMAAACAkyIMAAAAAE6KMAAAAAA4KcIAAAAA4KQIAwAAAICTIgwAAAAAToowAAAAADgpwgAAAADgpAgDAAAAgJMiDAAAAABOijAAAAAAOCnCAAAAAOCkCAMAAACAkyIMAAAAAE6KMAAAAAA4KcIAAAAA4KQIAwAAAICTIgwAAAAAToowAAAAADgpwgAAAADgpAgDAAAAgJMiDAAAAABOqubtLsBZuLiYbncJAAAA+A2ryudNk2EYhgNqAQAAAHCHY5kQAAAA4KQIAwAAAICTIgwAAAAAToowAAAAADgpwgAAAADgpAgDAAAAgJMiDAAAAABOijAAAAAAOCnCAAAAAOCkCAMAAACAk6p5uwtwNkVFRfrf//1fbd68WZcvX1ZQUJCmT5+unj17WvS7ePGiVq9ere+//17x8fHKy8vT6tWr1b17d4t+cXFxio2N1f79+3XhwgX5+PioY8eOeu655xQQEGDR9+jRo3rnnXd07Ngxpaenq3bt2goKCtIzzzyjTp062az7vffe0/z58xUUFKTNmzeb2/fv36/IyMgyx3z++edq0aKFVb2LFi3SkSNHdO3aNTVu3Fjjx4/X8OHDzX1mzZql2NjYcmvZtWuXGjRoYP75zJkzWrBggb799ltdvnxZd999t4YOHarx48fLzc3N3O+7777T22+/rbi4OLm4uKh79+566qmntHPnzhv+niUpJiZG8+fPV0ZGhiTJMAytWLFCvXr1suj37rvvKiYmRufPn1dRUZEkWc2ZmZmp6Ohobdu2TSdOnNC1a9dkGIZKSkqs+hqGoZdeekkHDx5USkqKua9hGFq+fLnuvfdei/P/8u/O0aNHlZ+fL0natGmT2rRpY+4XFham8+fPW13nAw88oLfeesuq/fTp03rhhRd04sQJ83X16NFDq1atMvex9fdBkp577jn98Y9/lCQVFhZq4cKFWr9+va5cuWK+pjlz5mjo0KEW4/bt26dXX31VP/74o4qLi1WzZk0FBwdr7ty5Vn/PN2zYoAULFig9PV2GYcjT01P33Xef/vznP1v0feeddxQbG6vz58/r6tWrcnNzU//+/S3+3cnPz1dMTIxiY2OVmJiowsJCSVLt2rV17733avr06RZzzp49W//5z3+UlZWlkpIS1ahRQ82bNzf/u/NLpf/u7t27V6dPn5Ykde7cWa+//rrFnBERETpw4IDV77Jhw4ZatWqVRd+4uDht3LhR27dvV1ZWlgzDkLu7uzp37qwFCxaobt26SklJUb9+/cr9Mxo0aJAWLFhg/rmkpERvvfWWNmzYoOzsbIs5X375ZYvzHzlyRLNmzVJycrKKi4vl4uKipk2b6tVXX1Xnzp2t/pzmzZun7OxsSZKHh4c6deqkZ5991uJ/jz7/f+2dd1hU1/b3vwMMHQZQFKQIlkFEBRt2vQSskahJLEGSkCiWGOyKscVrTyQ2iEowGls0doWYGAE1ioAKIoIoShERaVKHAWaYOe8fPGdnzpwzYH43N/e+1/15Hp9Hzlmzy1lnrb12PZcu4ezZs0hJSYFcLodIJEKbNm14vqu+vh4RERE4e/Ys5/m7uLhg/fr16NevH0lzx44duHLlCgoKCqBUKiESiWBiYgIvLy9e/tp+U6FQgGEYLFmyBLNmzWpVT23btkV4eDjPx967dw8rV67Es2fPoFKpIBKJYGNjg6+++grDhg0DgFZ1NXnyZGzcuJGjp+PHj6Ourg4Mw8DQ0BDdu3dHaGgoJ3+FQoFvv/0W0dHRKC0thYODAzp16oT4+HiejweA1NRUbNu2DQ8fPoS5uTmcnZ2RmprKk7106RLi4+Px4MED5Ofnw8nJCc+fP+fIsTYVGxuLJ0+eoK6uDi4uLujQoQNiY2N5ae7YsQM3b95EYWEh6uvr4eDgADs7O9y6dUuwrCwymQzDhg2DXC6Hg4MD4uPjW9UVAME0FQoFoqKicPHiRRQUFECtVsPc3Bzx8fGvZVMSiYSTg7NF7AAAIABJREFUn1qtxk8//YTjx4/j+fPnMDMzg4WFBXJzc3n5JyQk4NNPPxVMV7uNPXr0KDZs2NCq7O7du/Htt9+2KMfq6cyZM8jMzGw1zaVLlyI6Ovq1yvm6cUNLetKWbSnNkydPwtPTs1U9aaepVquxdetWThunS5a1qTNnzqC8vBwikYj4f+0YJy4uDhEREcjOzoa+vj4AQE9PD87OzhzZ48ePIykpCXfv3kV5eTnEYjHEYjEnbmJjifj4eOTm5qKpqQmdO3dGUFAQxo4d22JdNaGdgb+ZFStW4LfffsNHH32Ejh074ty5cwgODsaRI0fQu3dvIpeXl4eoqCh07NgRbm5uuHfvnmB6+/fvR2pqKsaMGQM3NzeUlZXh2LFjmDhxIk6fPs0xQLaBnjx5MmxtbVFbW4vo6GgEBgYiKiqKF1SylJWVYe/evTA1NdVZr48//hgeHh6ca5oBOwBcv34d8+bNg7e3NxYsWAADAwPk5+fj5cuXHLmpU6fyOkcMw2DdunVwcHDgpFtSUoLJkyfDwsICgYGBkEgkuHv3Lr755hs8efIE27ZtA9AcJAUGBsLBwQEhISFQq9X48ccfMXv2bFRXV7f6nK9fv44vvvgCAGBjYwN9fX3yrLU7A4cOHUJ5eTmMjY0hEonAMAwvvbS0NOzcuRM9e/ZEY2MjbGxsoFAoIJPJcP78eU5nQK1WIzMzE25ubsjNzYWNjQ0AoKKiAt9//z1Pb5rvjpGREekMCOHi4oL8/Hy0adMG5ubmePbsGQYOHMiTq6mpwcyZM1FYWAiJRAI7OzsUFBRAJpNx5Dp37ozZs2cjMjKSk2aPHj2QkZHBKeuyZctw5coVqNVqtGnTBmKxGMXFxVi/fj2GDRuGNm3aAACampoQEhKCmpoauLu7o0uXLsjMzERaWhrGjx+P8+fPk/c8KysLa9euhZ6eHvr37w8TExPcvHkTV69exY0bNzg28cMPP6CyshLt27dHTU0NbGxscPv2bY7tPH/+HBs2bIC1tTX09fXh7e2NmpoaZGVlIT4+HtevX+ekef36dcjlcvTp0wcODg7Iy8tDeno6Jk2ahOjoaHTp0oXUn7VdW1tbGBoaQqFQIDs7W9B2jY2NIRaL0atXL9jZ2UEmkyEpKYkn+9133+HatWsQiUQYNmwYDA0NcevWLSQnJ+PRo0cYMGAAbGxs8PXXX+PIkSPIz88naWZkZODx48eIj49HTk4OSXPbtm04cOAAjIyM4O3tDUtLSyQlJeHWrVuYMGECzpw5Q2Q3btyI/Px89OjRA506dUJubi4yMjIwffp0zrualZWFdevWwdjYGD4+PlCr1bh58yaxU01/dPz4caSlpcHU1BRqtRr29vaYMmUKz3c9f/4c+/fvh7W1NQYPHgwbGxtkZWXhyZMnCAwM5OSfkZEBe3t7iEQidOzYETKZDHfv3kVaWhovf02/mZKSguTkZCiVSuzYsQMeHh6cd9ra2hp2dnZwdnaGhYUF6uvrkZmZyUtToVBg9erVKCgoQO/eveHk5ISKigqkpKRg9uzZRNbGxgYBAQG4d+8eJ80bN26gpqYGbdu2JXmzemrfvj28vb1hYGCApKQk3L9/H9OnT8f+/ftJ/osWLUJ8fDzef/99dO/eHcnJyfjll18gFot5tp+VlYWgoCB06dIFK1asQG5uLg4fPkyCGE2OHz+OjIwM9OjRAxUVFXjx4gWv3WBtatCgQQgKCoK5uTni4uIQGxsrmGZGRga8vLwwYcIEGBsb4969ezh79iz09Fpe2LBt2zbI5XKd9zt06ICFCxcCAGpra/H1118LyikUCsycOROPHz/G+PHjcerUKajVagBAQ0MDJBIJsSlNamtrsWXLFjQ1NcHMzIxXtgMHDuCdd97B9OnTUVRUhMjISAAgAw4sERERAICuXbuiR48eKCgoQEpKCkaOHMlpC7OysrB161YAzYM0pqamuH79OqRSKT755BOObFxcHIDmNrq2thZ2dnaYM2cOuQb8oafu3buTNGUyGTIyMtC/f39MnjyZkyY7oOHt7Q0nJye8fPkSycnJ6NixI9q1ayf4bD08PPDkyRMoFAoSQ2jHDW3atMGrV68wdOhQODo6Ami2M1dXV45sU1MTAMDIyAiDBw9G27ZtUVdXh/z8fFhYWAAA0VNOTg4iIyNJmo8fP8a9e/cQGBjISXPbtm2kIzBo0CBYWVkhKSkJNTU1WLhwIUd20aJFiIuLg0gkgqurK8zNzZGeng4TExNOjMPGQW5ubmAYBjY2NiguLkb//v3h4eHBkY2KikJlZSXq6+shEong7u6O9957jxM3sbHE8OHDMXfuXBgYGODy5ctYuHAhcnNzMW/ePMFnz4Oh/G3cv3+fkUqlzMGDB8m1hoYGxs/PjwkICODI1tbWMhUVFQzDMMyVK1cYqVTKJCUl8dJMSUlhGhsbOdfy8vKYHj16MKGhoa2WSS6XM4MHD2ZmzZqlUyY0NJT58MMPmcDAQOadd97h3EtKSmKkUilz5cqVFvOpqalhBg0axGzYsKHVMglx584dRiqVMnv37uVcj4yMZKRSKZOdnc25HhISwnTv3p1RKBQMwzDMjBkzGG9vb6aqqorIlJSUMJ6enszq1asZhmn5OY8bN4555513mPLyco6sm5sbk5eXx5HNzs5mXr16xTAMw/Tq1UswzYKCAqawsJCj599++42RSqWMh4cHU19fzyuD0DshlUpJXtpySUlJjLu7O5F7+PAhR87Hx4cJDg5+rfdszZo1zD/+8Q9S15Zkhco5bNgwZtSoUUSmrKyMkUqlzIYNGwTrdPr0aSL7888/M1KplDl16hQnn08//ZSRSqXM0qVLybWZM2cyAwYMYCorK8m1kydPMlKplOnevTvHJn777TdGLpczDMMw77zzDhMYGMiznVevXjHZ2dk8O1uxYgXRlWaaQvYYFhbGSKVSno2lpKQwjx8/Zjw8PJjw8HBGKpUyx44d49luYGAg4+fn91p2vnbtWqZv375MQUFBi3JCZf34448ZLy8vjqxKpWK8vLyYwMBAjuzjx48ZqVTKuLu7E9m0tDRGKpUy4eHhnHw2btzISKVSJigoiFybOXMmM2zYMEYmk5FrrJ769evHeVZFRUVMU1MTwzB/6Ilh+L6L1ZU2S5cuZaRSKfPhhx/y7mly4MABRiqVMt7e3oL+MDc3l6Orvn37cuSE/KNQORmGYfbt28f069ePoyddskIEBgYybm5uzMyZMxmG+UNPISEhHDlWT56eniRNIT2FhoYyI0aMYNzc3Jhx48Zx0tDWVWhoKDN69GhGKpUyvr6+HFlNXfXr14/p27cv77kI6Sk0NJQZMmQII5VKmbFjx7ZY99DQUMbPz4+RSqUcn6JJbm4u4+bmxrz11luMVCplfHx8eM9Ps0wttXGaumpJTqic/fr1Y7p168b4+/uT60K6Cg0NZd5//31GKpUygwYNItdZXWm3sVu3bmV69OjBlJaWkmus79OUZW3q1q1bnLKxPvXKlSscm9KE1ZN2G8/6Pu13VygWYG0qPT1dUNbd3Z3Yk1AMERgYyPj6+r5WjLFq1SpGKpUyx48fb1FOqKwff/wx06dPH6ahoYHIsHqaPn06R5a1qV27dhFZVk+enp6cGEdIT2wsoRkPbd++nenWrRsvlnj06BGR69u3r2BMx8YSmqjVauajjz5ievXqJRhLCEH3DPyN/PrrrxCLxZg8eTK5ZmRkhPfffx8pKSkoLS0l183NzWFtbd1qmn369OEshQGaR3u7du2KnJycVn9vYmICGxsb1NTUCN5PT0/HxYsXyah4S8hkMtI71yY6Oho1NTVYsGABkWUERsx1ERMTA5FIhPHjx3Ou19XVAQAZRWZp27YtDAwMyEhTamoqhg4dColEQmTatWuHAQMG4OrVqy3m/fTpUzx9+hQBAQG8fBiGwW+//ca51rVrVzJ6rwsnJyc4ODhw9CwSiQAASqVScPmOrneitraWJ2dpaYlNmzZhxIgRLZbDwMAAZmZmLc4e1NTUkBksFxcXNDY2QqlU6pQXKmdJSQn8/f3J3+yMgr29vWCdjI2Nyf9TU1MhEok4vwdA7OjBgwckzVu3bmHKlCmwsrIichMmTICpqSksLCw4NjFy5EiYmJhw0tS2HRsbG3Tt2pVnZyNHjiTl10xTyB579OgBACgoKOBc79OnD8LCwuDj44P+/fsDaH4nhWzX1NQUenp65H0XKqtarUZcXBymTp0KJycnKBQKNDY26vQHmmUtLS1FcnIyxowZw5FtampCfX09unbtyqkXOyLdpk0bIpuamgqgeZmZJu+88w6A5iUvwB96mjhxImfElNWTSCTi+CN7e3vBEWNt38XqSht2qry8vJx3T5MOHToAAMzMzAT94ZYtWzi6srCwEJRramri6Em7nGq1GkeOHMGUKVM4ehKSFaK0tBR3796FhYUFsSNWT5ozBcAfetKsk7aeWB+/ePFiMAzDme3T1hUr+/XXX0NPT4/ne1hdpaeno6amBs7Ozrzya+uJTTM4OBgAf2RcE1Z22rRpAACVSiUox7ZXs2fP1pkW0PzckpOTdbZxmrqqrKzExYsXsWTJkhbT1CxnbW0tbGxsiG9n89TUFSvLpqs548HqioVtY8eNGweFQkFG+Fk9DR06lCP79ttvw9TUFL/88gsnHc12TKVSCbbFQvYkk8nw1ltvAQByc3N11p8tJ2tT2u8JS8+ePYl/bI2GhgadMYZarSbtcNu2bVFZWcmxwZbIz89HUlISRo0aBSMjI3Kd1ZNmzCCTyUjbot1Gsb/RjHHGjh3L0RMbS3Tp0oUTD02cOJFTB5aUlBSOnFKp5OmKjSU0EYlE8PPzQ0NDg2AsIQRdJvQ3kpWVBVdXV96UYa9evcAwDLKysnROp/0ZGIZBeXk5b40yi0wmg0KhQFVVFc6fP4/s7GzBqSSGYbBhwwZMnDiRs9ZciGXLlkEul8PAwAADBgxAaGgo3NzcyP3ExER06tQJ169fx7Zt21BcXAxLS0tMnToVixYtEmzsWZRKJX755Rf07t2bTBOy9O/fH/v27cOqVauwYMECSCQS3LlzhwSvrGNVKBQcQ2cxNjZGWVkZpyOmzcOHDwFA0GlZW1uT+38lQgGyUqlEbW0tGhsbkZaWBgCwtbXlPRMAOHHiBEpKSjBz5kzOWlltEhIS4OXlBZVKxevosNy9excKhQJt27ZFUFAQkpKSSOPW0nPTRjOYd3R0hL29PQ4ePAhXV1d0796dTDN36NCBs65ToVDAwMCAt4RB0xkDIHsvtPVkaGiIbt264cGDB612sFuzHRY2sJTJZHB1deXcU6lUqK6uhlKpxJMnT7Bjxw6IRCLY29tz5K5fv45bt27h0qVLZMpXV/45OTnw8vKCUqmEra0tAgMDERwczJF98uQJysrK0LFjR8yfPx+xsbFQqVTo1asXXr58iZ49e+qsz6VLl6BWqzF+/HgkJCSQNA0NDeHl5YVz587By8sL/fv3R3V1NXbt2oW2bduCYRjyTNl9JMbGxhwfc/LkSQAgU/XaetKUtbS0RHFxMW+ZoOazVSqVyM3NbdF3aaZ5/PhxAOAsw9TUU3V1NR49eoSwsDAYGhrixYsXvD0r169fR0JCAk6cOEE6P0VFRZg0aZJOPbVp0wbjx4+HkZERp5zaemKXyrm5ucHDw6PVOh05cgRqtRo1NTXkOWnrycPDA69evUJERARMTExQXl6OqVOn8vSk6ePZ5SANDQ0kT01dacr26tULpqamHFkWVk4ikfDaOl2yEydOJB1zobZApVKhqqoKa9euxaBBg3D69Gno6+vzfAAAXLt2DWlpaRg9ejRvP5EmOTk58PT0RFNTE4yNjXH9+nVeoMXqytnZGTNnzoRarcaUKVNgZmYGW1vbFuvk4eGB9PR0nl/V1JWnpycOHjwIHx8fHDp0CGKxmBN8sroCuG0sa8ts28PqifVFmrImJia8ToV2miKRCJ9++imv3RaSZdtUXR1WVk5fXx+GhoYwNTXl+eT79++TcrMdtvDwcDg5OfHyLyoqAgBOZ2ngwIFYsWIFkX3y5AnZezR//nzSSTQ3N8f69et5AxTaZWXL8vjxY5Imq6cbN24AaN4TwS7XEYvFHH/K6snZ2ZkT47Dvf0ZGBoA/9FVeXs6Lh0QiEc6dO4cZM2YQG9CMm2QyGWJiYvD777+/VtzEtlGvM6gM0M7A30pZWRlvPRwA4lT+TGDVEhcvXkRJSQkWLVokeH/lypW4fPkyAEAsFmPatGlkvaAm58+fx9OnT3VuNGJ/P3r0aAwfPhzW1tZ4/PgxDhw4gICAAJw+fZo4p2fPnqG4uBgrVqzAzJkz0b17d1y9ehVRUVFobGzEqlWrdOZx8+ZNVFVV8UaGAWDo0KFYsGABIiMjOUHv/PnzOQ2qq6sr0tLSoFarOR2E9PR0AC0/+7KyMgAQdP5WVlZ/md7YkYxu3boJzizcvHmTpychh1BVVYXdu3cjJCSkxX0eUqkU/fr1g4uLCyorKxEVFYVXr14hJiaGs2eBHdFes2YNevToge3bt+PmzZs4c+YMGS01NzcXzIN1yp06deI0zAYGBti9ezeWLFlCNhSzrFq1itPIu7q6QqlUIj09HV5eXuT6iRMnAAB2dnYAWtZTU1MTlEplqxuqWrMdoPm9OXToEFnLqp1mTk4O5121tbUFwzCca0qlEps3b8aHH34IZ2dn0hm4c+cOL38nJycMGDAAbm5upEHYsWMHbt26xZFl9fTNN9/AyckJW7duRX19PcLCwlBTUyO4F0Sz3ra2tigrK+Pl/9VXX2HRokVYtmwZuebi4oKZM2di69atpP6sraempuLy5cvEx7DvJzsSqq0nTX/EbuQV8kcAUFxcjNraWowdO7ZF36WZJtAcFKxZs4Yjo60noPm91E6T1ZWjoyPef/99cn3o0KEcOU097du3DxkZGTh06BD09PQ4aWrrycPDAw8ePCDBiL+//2vVaerUqRw5IT0BfB+vqSeFQkF8POs/NUdeNXWl3R6IxWLBzgArx44KtwQru3PnTsyaNQtGRka82TqArytXV1fBWSClUolVq1ZBX18fq1atIgMM2rC6qqysxMmTJ9GrVy/s2LEDtra2nOCd1dXWrVvR0NCA1atXQywWY8OGDSgoKMCLFy94o7JsnRwdHWFrawtLS0veyDirq+XLlwNoHih0cXGBu7s7pwPA6srT0xNTpkwhbSy7vyA/Px/AH3pq06YNrz3+9ttv8fTpU+Tl5ZH0NNvtPXv2AGieodBut7VlLSwssG7dOlRWVmLdunXo0aMHJ80hQ4YgISEBQLPvb2xshJGREV69egVLS0uio2PHjsHFxQXBwcEoKyvDzp078ezZM17+Tk5OcHZ2Rk5ODjp16oSHDx8iKysLd+7c4ciyehKLxWjXrh1GjhyJgoICXL16FYsXL0abNm04/k+zTvv27cOrV69QUFDAy/+rr77C7NmzkZeXR2bPJRIJlEolPv/8cyLLyhcVFXFinAMHDuDevXtITEzk6KmsrAzl5eUc2bVr1yI3Nxdbt24l8ZBm3CQWi+Hl5QVHR8dW46aqqiqcOnUK3t7era5SYKGdgb+RhoYGwQ1a7Ih1S9Ojr0tOTg7Wr1+Pvn37YsKECYIy8+bNw9SpU1FcXIwLFy5AoVCQ01RYZDIZvvnmG8yaNavF2Yo+ffpwTqnw9fXFW2+9hffeew8RERH45ptvAAByuRzV1dWcEzhGjRoFuVyO48ePY+7cuTpf2piYGIjFYp2BnKOjI7y9vTFy5EhYWVnh2rVrCA8Ph42NDT744AMAQEBAANatW4fVq1fj008/hVqtxt69e4lxCjVqLOw97eUfgO4G8c+iVqtx8OBBAM0nKAjBjiLV1tbi1KlTuHHjhmDeu3fvho2NDaZNm4Zr167pzHPfvn2cvy0tLTF//nycP38ey5cvJyO5bCfF1tYWUVFR0NPTg6GhIc6cOYNXr17hzJkz+PjjjwXzePz4MQDwNlmz+bm7u2Ps2LHo1asXYmNjce7cOYSHh2P48OHkeY8fPx7ffvstVqxYgbVr18LZ2Rnnz58ny7vYoEOXnnJycvDw4UPo6+vrtAmg+ZST1mwHADZs2ICnT5/CxMREUNbR0REHDx6EXC4nG4y7dOnCkTt8+DCqq6t5HaGffvqJl+bmzZs5MpMmTcKMGTNw8+ZNeHh4EFlWTyKRCIcOHYKZmRlycnJIcKe9UZ8lLy8PmZmZmDhxIjZs2MDL39zcnCyVGjBgAMrKyrBnzx58/fXX8PT0JLIjRoyAg4MDtmzZguDgYPj6+iI1NRWnT5+GSCQijam2njT90fbt21FTU8PzRyxt2rRBhw4d8PHHH+v0XZpp7t27F3fu3IGnpydvSQmrpydPniAtLQ1paWmwsLDgpcnqas+ePaivr8etW7ewf/9+0sFk5TT15OzsjPLycmzfvh0ZGRl49eoVkdXWU2FhIcrLy3H//n3s2rULWVlZOus0YsQIrFy5EnZ2dlAqlRw5TT05Ojri+fPniImJQWNjI2QyGZFl9bRp0yYolUpMmzYNd+/exY4dOwCAbI7V1JVKpeK1B3p6ehxZgNtu/Prrrzz96ZLdt28fcnJyBAN8oHl0UyKRYPjw4bC3t0dCQgIUCgVvIIQd0JgzZw7atWunszOwefNmyGQyjBkzBp999hnmzp2LBQsW4NdffyV+D/jDpurr6zF37lwEBgYCaD6dhu3srVy5klenyZMn49ChQwgKChKcOTY3N4eLiwtyc3Ph6+uLvn37IioqCtnZ2XByciJyrK7YkwK7deuGxsZG0u6ws1Ssnnr27EmWUAHN7fH9+/dx7do1Tnus2W4fOXIElpaW2LNnD6/d1pZds2YNKisrsXbtWmzatImXZkREBNLS0iCXy3H//n3ExcUhLy+PI3f48GE0NjYiOjoalpaWSE5OBtB80ty2bds4stq+DwDRk1qtJrKsnszNzREdHU1G5C9fvoz58+dj3bp1nPeRrVNeXh6eP3+OoKAgTJo0iVd/c3NzeHp6YujQocT3RUVFQV9fH0VFRUR2xIgR0NfXR319PSZMmIDJkyfj/v37yMvLg0gkwosXL1BRUUH01NDQwIuHDh06hOzsbE48pBk3fffdd8S/thQ3qdVqLF26FLW1tVi9ejXv+emC7hn4GzE2NhZca812AoSWsfwZysrKMHv2bEgkEuzatUvnaQtubm4YMmQI3nvvPXz//ffIzMzkrZfcu3cvxGIxPvnkkz9djm7dumHQoEFISkoi19iRXu01//7+/lAqlWTdtzZ1dXWIi4vD0KFDBae7fv75Z3z55ZfYuHEjpkyZglGjRmHz5s2YNGkSvv76azJ1+MEHH2DOnDm4ePEi3n77bfj7+6OgoAAzZswAgBans9mya47YsCiVSsGp6j/Lhg0bkJWVBQCcxkATGxsbDB48GKNHjyYO/6uvviIdGgDIzs7GiRMnsGLFChgY/Lm+PtuwKhQKzqlKbP3GjBnDe6fMzMx0TkEDzSPdAHhHtdbW1mL69Ono27cvFi9eDD8/P/j5+QEAHj16hPPnzxNZW1tb7N27F42Njfjkk0/g6+uLiIgI8j6wuhPSE2sTBgYGsLGx0WkTTU1NyM7ObtV29u/fj5MnT5ITRIRkTU1NMXjwYHh6eiIxMRESiQQ5OTnIzs4G0Dx9u2fPHoSEhJDRsqqqKvLblvJn6/TkyRMAXJ2w9ffx8YGZmRmpu7W1Nbp27arzpCz2OEC2rJr5NzU1ISgoCBKJBKtXr8bIkSMxcuRIGBgYQK1Ww9PTk8gaGRkhMjISEokEmzdvxvLly3H27FksXboUenp6JDDT1pOmP+rTpw/UarXOPUrGxsaQSCQt+i42TXYEceHChSgvL+fJsXr6+OOPsWPHDixbtgzZ2dlITU0lspq66tOnD4YMGYLhw4cDaD5tRVc52TqtXbsWQPOoKyurrSdW9rPPPkO3bt1QWFios07s+t9du3Zx6q6tp6CgIKxZswY//fQTlEolEhMTiSyrJ5VKhZqaGhw4cAChoaGYN28eDAwMOO8eW9YTJ07w2gPNWVaWP9NusLJAc3C9ePFizl4fTX744QeYmZlh48aNWLJkCWbOnMk56hf4Q1eWlpY6Z5ZaKit7fKfmWnO2/sbGxpz9B6ampjAyMuL5PjZN9ndCs9msrp49ewZra2ts2rQJAQEBOHjwIBobG8nR1QDXpubNm4e33noLoaGhmD9/PsRiMVmq01IbZWxsDENDQ057LIRQu60J6/sWL16MgIAAQVnWpvz8/LBkyRJ8/vnn5KQwQNj3sTg6OraYPwurJ1dXVyKrbVMso0ePhpmZGZ4/fy6YFuv7/P39efUX8n2snoqLi9GhQwcia2RkRGaILly4QPQ0b948mJubg2EYPHjwgJRTc6CLpbGxEba2tpx46P8SN23YsAE3b97Eli1bdC75EoJ2Bv5GbG1tBZeUsMHcv7JfoLa2FsHBwaitrcX+/ft1rmfURiwWw9fXF7/99hvptZaWluLQoUMICAhAeXk5CgsLUVhYSDaOFhYWkiBbF/b29hwZtjy6NrjpSi82Nhb19fWCThUAfvzxR8HjyN566y3I5XI8evSIXFu0aBESEhJw7NgxXLx4EWfOnAHDMBCJRDoDcM2yawbdLFVVVf/yPo+IiAj8+OOPvPXHr0NjYyPZnAQA27dvR/fu3dG5c2cy4shSWlqqc3RYm9fRHaB7EyXQPPrBrg3VXAcLNI/YlJeXk81omhgbG/Ma2f79+yM2NhbHjh1Dx44dIZFIyFF+Li4unHKyetK0ic6dO/PW7LPU1taS4yNbsp2zZ89i27ZtsLa2hkgkalFWM+9Dhw5BX18fP//8M4DmGRkLCwsMHToUhYWFePToEb766isAQGBgIBobG3VurmfTZW1Vc2RWU0/a/oA9PlWIixcvwtDQEI2Njbw63bl2apdGAAAaDElEQVRzB9nZ2URPbLr19fVwdXXl2BfQvHk+JiYGMTExOHbsGG7cuIEPPvgAKpUKZWVlaGhoaNGeXr16BRsbG44/0oWQ72Jhvwkyffp0zJ07V6ecJn5+ftDX1+fkr60rTZvq0qULfvvttxY337NL2FxcXEiaLdlT27ZtYWRkpLOsMTExcHV1hZeXF6dO2npicXFxQefOnXlpSiQS1NXVISgoCDt37sRPP/2EIUOGoKmpCQYGBsTHs2X95ZdfeO0BOzLPymq3G+zGaKF2g5Xt1asXdu7ciQkTJmDcuHEtymrmz+5hq6ysJLLbt2+HUqnE5MmTkZGRgbt375IOuEKhwN27d0mnWyhN1uY082cHVHr27MlrC/X09FBRUSFYzpiYGDg6OsLKyopXJ1ZXjx494uRvYGAAIyMj1NXVceovZFNTpkyBUqkks34t2VRZWRnMzc1bbbMBfrvNomlP7Ei2LllN/Pz8OAcCtGRP7FKi1tJkbcrY2JjItmRT5ubmOg82Ye2J3dOgWaeWbKpTp05kdJ+F3bt37tw5jp7YDfma9sTOPmmWt6ysjNxvrV664iY2lli2bBmvA9EadJnQ30i3bt1w5MgR1NXVcXqvbMDU2qZFXTQ2NmLOnDnIz8/HDz/8gE6dOv2p3zc0NIBhGNTV1cHY2JhMaYeFhSEsLIwn7+vri+DgYCxdulRnms+fP+eM5Ht4eJA1zpqBd3FxMQDoXCIUHR0NU1NTwaARaB5pEPotOwOjvTRAIpFwPj5069Yt9OrVS+eadwCk4cnIyOB9S6GysrLVzdUtcezYMYSHhyMoKAj9+/dv8WNrutBcj/ry5Us8evRI8MMqs2bNQtu2bcmazpbQfKZsnUtKSnhyVVVVOnUXHx+vc+nbq1evAIC3zABo3oAn5LybmpqwY8cOlJaW4ocffiAfwmHXgkqlUhgYGCAjIwMjRowgNhEVFYVZs2YJdihZ21EoFHB3d9dpO7GxsVi1ahWsra3R0NDQop1p26OjoyNUKhXRU1FREV6+fIlRo0bxfrt7927s3r0b6enpvJlCzXRDQ0Oxbt06zrN3c3ODWCxGUVERzx+UlJQI6unOnTt4/vw5DAwMEBkZyauTpp6067Vy5UpBPYlEIs5yj+vXr5P/19XVcfSk+QwUCgWysrLg5OSE0tJS4o9aQtt3Ac26Wr16NUaNGkWmyYXktFEqlVCpVJDL5US2JV2x9aqsrBRc5w6AjEgaGBiQNFk9CdlTSUkJjIyMBMt6//59PHv2DPPnz+fVqSV7ampqIh8q1PbxP/zwA0++qqqK+PjZs2dDX18fTU1NrbYHb7/99mu3G2z+7NKNCxcucD60JSQrlK5mWdlnvX//fuzfv58jV1ZWhunTp5NNsi2lWVFRQdL08fEBANy+fVvQp7548QJRUVG8cmrWQ7tObDv/Os+UbWN12RQ7ut6aTVlYWLzWRlLtdhsQtiddstqwp9+w73FL9sTOorU2uMbqWS6Xk/xbsqmamhrB5dna9qRdp9ZsqqGhQTDGsbCwIJvxNTel29jYkEFLVm9sPFRSUoLi4mISm7C+WjNu0kQobtKMJdgVD38G2hn4GxkzZgwOHDiAU6dOISgoCECzsZ49exZ9+vQR3FzcGiqVCgsXLkRaWhr27NnD2WCpTUVFBS8gkMlkuHz5Muzt7cnGKUdHR8FNwzt37oRcLsfKlSvJaKxQmnfv3kVycjLnRI4xY8YgKioKp0+fJpsTGYbBqVOnYGpqKljuiooKJCYm4u2339bZ2Lq6uiIhIQEFBQWcY+x+/vln6OvrtzhNdunSJTx48EDwa7uadO3aFZ06dcJPP/2E999/n7NOVSQSCTq21+HSpUvYuHEj/P39sWLFCs4IvyZVVVWwsLDQeXKA5kkNX3zxBedowPv37+O7774j99hgjz25RXOan+1AGRsbc/TRuXNnSKVSREdHY86cOZwgtaGhQefJL9HR0eRjWtqw78/PP/+Mzz77jHOvsbGROFMW7ffc2dkZixYtwtChQ8kHrywsLDBo0CCcP38ejx49IrL5+fmQy+UYM2aMzjTZY16FuHPnDhYtWkQ2AuqyM5lMBn19fSxevJhjj4cOHQLDMKRTNXv2bLz77rtQq9X47rvvkJmZifHjx+PixYuYNWsWPD09SeMlk8lgaGgIfX19Utbw8HAcP34cenp6nGdvbm6OIUOGkGME9+7dCy8vL9y7dw9PnjzhPWeVSoUVK1YAANatWydYJ1ZPMTExOHLkCKmXWCxGXl4eAgICOPLa/qChoQHbt2+HgYEB2rZtS3zMoEGDcO7cOcyePZsMjFy4cAFyuRzl5eUcfySULvtstH1XXFwcFi9ejH79+iEsLAx6eno8OfaZymQyTpqnT58GwzAoLi4msrNnz8bIkSM568izs7Oxa9cumJubQywWk4/AaaepUqkQGRkJkUiEp0+fcso5dOhQxMbGcurF6snCwoIjy8poLmnQrhOrp7Nnz3L252RmZiI3NxempqYt+niFQoHt27ejpKQEtra2xMdbWFjA29sbWVlZWLNmDQnqEhIS8OOPP6Jt27b45z//CRcXF7Rv356T5ubNm8kBBtrtRmlpKQwMDODq6op58+aR9127jZHJZGjXrh2vPYqPj8eZM2dgZWWFTZs2wcXFBUOGDOG9w0VFRYiJiYGFhQU++OAD8uy001SpVOQr03Z2dlizZg2pU48ePfD06VOsW7eOvAdbtmxBYWEhxowZQ9o59pmePHkS169fx7p162Bra8urEzs7M2jQILIHAWjerPzVV1/BzMwMX3/9tc42tqGhgaylZzsrrO/TZVP19fWcmefXbbdZ36dpT0KyMpkMMpmMjNqzsPtQ2AEz1vfV1taSZ8na0zvvvIPo6GhyPGprNpWfn0/yNzc3h7e3N+Li4jh1O378OOrr63kDrRUVFRx7EqpTazYF/HHENMCPcRoaGrBz506YmpqCYRh4eXnB3NwcnTp1IicksbLHjx+HSCTCy5cvOfGQZposQnGTdizxf4F2Bv5GPD09MWbMGISFhZHjys6dO4eioiJs2bKFJ8/u8mc3CV24cAEpKSmwtLQkTmTr1q2Ij4+Hj48PqqqqOKMrZmZmZB020LxBx8jICL1794atrS1evnyJs2fPko17LBYWFpzfsbDLHbTTNDExQe/evWFtbY0nT57gp59+grW1NUJCQohcjx49MHHiRERGRuLVq1fo3r07rl+/jps3b2LZsmWCgdilS5fQ1NSkc4kQAMyYMQO///47PvjgA0yfPh0SiQTXrl3D77//jmnTppHGLzExEZGRkRgyZAisrKyQlpaGc+fOwd/fH8+ePcOePXtafM7Lly/H3LlzMXr0aEilUiLr6uqKX375hSMbHx+Pw4cPA/hjDefWrVvJrMTnn3+O9PR0LF++HFZWVqivr8eCBQtI7z88PBw3btyAnZ0dAgMDER8fj71792LkyJHIy8uDUqkkyzPs7Oxw79495OTkIDAwkIySs+8O63SA5pMJ2Gnv+Ph47Nu3D6NHj8bTp085S3rc3d1x6NAhTp1WrFiB4OBg+Pn5wd3dnaxdtrKywsuXL3H06FFOw7Z9+3Zcu3YNdnZ2KCoq4j1THx8fdO3aFeHh4bhy5Qrs7OzIyRjGxsaoqqripDlixAiUlZWhW7duOHPmDJYtWwaGYTBs2DDExsaSd3LRokV4//33UVJSAqlUihMnTuD3338nX+fWlo2Pj4erqyvKy8tRV1dHRon69OmDoKAgvHjxAnPnziVHG7q7uyM+Pp6cvOLi4gInJyf4+fkhMzMTs2fPRn19PaRSKWJiYhAREYH09HROZ8PT0xMAsGnTJjx48AA+Pj5kCVNjYyPq6uoQHx9P0lyyZAlsbW3x8OFDdO7cGZs2bUJhYSH+8Y9/IDU1FY8fPyZ1srS0hEqlgomJCS5evIjTp0/jxo0bkEgkpHFjYQMaS0tLGBoaCvqOHj16YMiQIThz5gyA5hHIkydPIiEhAWKxGB06dOA803HjxsHU1JSM1N2+fZsszQgNDSXpL1q0CO+99x6GDx+O/v37k3XFRkZGqKio4PijO3fuYMWKFeSr34aGhvjwww/x8OFD1NXVEdkXL14gJCQEDMPAxMQE69atQ3V1Ne7evYvq6mpy8gb7TPX19WFubg4HBweUl5cjMzMTYrEY1dXV+PLLL4muvvnmG47ffPbsGQCQvPX09Hhp2tnZITc3F0VFRTAzM0NpaSmnTosXL8aECRPw1ltvoV+/fhCLxUhISCCdl/Xr1xPZhQsXwtDQECkpKXBycsL58+d5fpvVU3R0NBITE8mxh7du3QLQHIxv3LiRpMluQu7SpQtqa2tx9uxZVFRUoGvXrlCpVBwfv2zZMkybNg0HDhzA5MmTUVxcjDNnzkAikaBt27YcWfZoZ4C7fr2xsRGOjo7o0qULXrx4gSVLlsDAwAAffPABFAoFkVWpVDA2NiZpJicnY8mSJRg7dixcXFygUqmQkpKCy5cvw9TUFO3btyeyXbp04Q1MJCcnIyYmBpaWluRoSjbN8ePHw9nZGXK5HL/88gsePnwIe3t7SCQSTp22bNmCKVOmYN++fZg2bRrkcjlevnwJAwMD/POf/yT7HCwsLODj44Mvv/wSXl5e5PAKoXaTPXXH0tISgwYNQllZGY4ePQo9PT1OnYA/bKpbt27Q19dHcnIyqqurIZFIOKPamjbl7e2NpqYmJCQkQCQSwcbGhtMez5gxA3K5HPb29mSJ1EcffQQjIyOMGzcOAIjva2pqQkVFBZYtWwZTU1OUlJQgOTkZlpaWJM3MzEzMmDED7dq1g1QqhbGxMTIzM1FQUAB9fX3yZWTW93300UckbmCXEF26dIlTTk2bsrCwgJ2dHXJyclBUVAR9fX1YWVlx6lRbWwu5XI6xY8di4MCBePnyJe7fvw89PT2yDJNl4cKFSE1Nhb29PRITE3H48GFe3KJpU0lJSejZsyfUajVu3boFhmF4+bMzq5GRkbh16xaKiopQWVkJlUrFiXHYWMLW1haRkZGIjY1FTk4O7O3tkZKSwpEtLS2Fu7s79u3bBz09PSQmJmLMmDHIz8/HrFmzyFeO2Vhi0KBBuHjxIqeuQ4YMEVw+pY2I+TNffqL8yzQ2NmLnzp2Ijo5GdXU13NzcsHjxYsHTVnSNajs4OJBg5MMPP8Tt27dblQOae6EXLlzA06dPUVNTAwsLC3h5eeHTTz+Ft7d3q2X/8MMPUVNTwwkaDh8+jOjoaBQUFJAe/NChQxESEsI7Wk6hUGDPnj04f/48ysvL4ejoiKCgIM7pB5pMnToVz58/x40bN1o8Tzc9PR3h4eHIyspCVVUVHBwc8N5773HO683Pz8f69etJAOHi4oLJkycjMDBQ5zIf7ecXGxur89PemrIrVqzQudyHXaZz9uzZVj/kxqaZnZ2NyMhI3Lt3T+cHRLTL2tq7k5GRgYiICDx8+FBwalUozd9//518GOhfzR8AOaFFaKmCtuzw4cNfu5wTJ04km7FbkvXx8eF0ljSxsrJCcnIykpOT8dFHHwnKaKdZXFyM9957T+fHrbTL+Tq2+/z5c2zbtg1Xr14VnGHRTvfP+AN/f3+yprol2YaGBowbN+613r2QkBD8/vvvZPRTLBajd+/eCAkJ4fmYsLAwHD9+nMxkGRkZYcCAAQgODubIhoeHIyIiQjBvzaUUrelqy5YtePfdd1FcXIzdu3fj2rVrqKysJMsAjI2N0b9/f8yaNYuTv7bfNDExQW1tLRYuXEhOg2L1xAZqbLNqZmYGb29vQR+7c+dOHD16lCwfE4vF6Nu3L+bNm8fLnz1pRE9PDxKJRNBvNzQ0YPHixUhISOA8fy8vL8yfP58jGxkZSQaiTExMMHDgQCxYsABffvklz8cDzaOmYWFhePjwIczNzTFu3DjiSzVlW9IV+/xb05O9vT05BY3V1d27d1FaWgqVSgVnZ2eMHDkSt2/f5uWvDZuX5jvK6iojIwPl5eXQ09ND165dERAQgLNnzwrWPz09Hdu2bcODBw+gr68PsVgMGxsbXLp0iSN348YNzJw5E6tXryanwgm1mw0NDfj+++9x6dIlFBYWwtDQEH379kVZWRmampo4srNnz0ZiYiLnoJHhw4dj5cqVvDZ248aNOHPmDDk738TEBKNGjcLChQs5sjNnziTn52vzunoKDQ0lm3mLi4sxf/58ZGVlET+lr6+Prl274ptvvkGXLl04v9WMG2pra6FSqTBw4EBs2bKFlJPVU1JSEmpqaohNWVpaws/PjxdjsAF9Xl4eVCoVRCIROnTogLCwMM6JhwDw5Zdf4sSJEzAxMYFSqdQZtzQ0NCAkJATJycnk+RsaGmLYsGFYvXo1RzYyMhJnz57F8+fPiU9xcHBAcHAwL8aJjY1FeHg4x/927NiRFw+1FEscPnwYAwYMaDWWYOVag3YGKBQKhUKhUCiUNxR6mhCFQqFQKBQKhfKGQjsDFAqFQqFQKBTKGwrtDFAoFAqFQqFQKG8otDNAoVAoFAqFQqG8odDOAIVCoVAoFAqF8oZCOwMUCoVCoVAoFMobCu0MUCgUCoVCoVAobyi0M0ChUCiU/28oLCyEm5sbwsPD/9NFoVAolP8JaGeAQqFQKITk5GS4ublx/vXs2RO+vr744osvkJOT8y+lHx4ejtjY2L+otH8dV65cgZubG/nS9aVLl9CtWzfU1NT8h0tGoVAo/14M/tMFoFAoFMp/H+PHj8fw4cMBAI2NjXj8+DFOnTqFy5cvIzo6Gg4ODv+ndCMiIjBp0iT4+fn9lcX9l0lNTYWjoyPat28PAEhJSUGXLl1gaWn5Hy4ZhUKh/HuhnQEKhUKh8OjevTsmTJjAudaxY0ds2rQJV65cQVBQ0H+mYP8m7t27hz59+pC/U1JS0Lt37/9giSgUCuXvgXYGKBQKhfJatGvXDgAgFos5148dO4a4uDg8efIElZWVsLKywsCBA7Fw4UI4OjoCaF7r7+vrCwA4d+4czp07R37/+PFj8v+kpCQcOHAA9+/fh1wuR7t27TBgwAAsXboUNjY2nHyvXr2KiIgIZGdnQyKRwN/fH0uWLIGBQetNm1KpRG1tLQBApVIhMzMTvr6+qKioQENDA7Kzs/Huu++ioqICAGBlZQU9PbqylkKh/O8hYhiG+U8XgkKhUCj/HSQnJ+Ojjz5CSEgIAgICADQvE8rOzsbmzZtRXV2N6Oho2Nrakt/4+vrCy8sLbm5usLKyQnZ2Nk6fPg1zc3NER0fD2toacrkcV65cwfLly9GvXz9MmTKF/J6dgThx4gTWrVuH9u3bY+LEiXBwcEBRURGuXr2KrVu3wt3dnXQqevbsiRcvXmDatGmwtbVFXFwcbt68iUWLFmHOnDmvXc/XJS4ujnRsKBQK5X8J2hmgUCgUCqGlILlLly7YvXs3OnfuzLkul8thamrKuZaYmIigoCAsXboUwcHB5LqbmxsmTZqErVu3cuSLi4vh5+cHZ2dnnDhxgrdWX61WQ09Pj3QGTExMEBMTQwJ0hmHg7++Pqqoq3Lx5s9V6VldXIzMzEwBw8uRJ3L59G2FhYQCAH3/8EZmZmdi0aROR79u3L4yMjFpNl0KhUP5/gy4TolAoFAqPqVOnYsyYMQCaZwaePn2KgwcPYtasWTh8+DBnAzHbEVCr1airq4NSqYSbmxssLCyQnp7+Wvn9+uuvUCqV+PzzzwU37Wov0fH19eWM1ItEIgwYMABHjx5FXV0dzMzMWsxPIpFg8ODBAIBdu3Zh8ODB5O9t27Zh6NCh5G8KhUL5X4Z2BigUCoXCo2PHjpxg2MfHB97e3pgyZQrCwsKwY8cOci8xMRF79uzB/fv30djYyEmnurr6tfLLz88HALi7u7+WvJOTE++alZUVAKCqqqrFzoDmfoG6ujo8ePAA/v7+qKioQG1tLbKyshAQEED2C2jvVaBQKJT/JWhngEKhUCivhaenJywsLJCUlESupaenY8aMGXB2dsaSJUvg6OgIY2NjiEQiLFq0CP+ulaj6+vo677WWZ2pqKm8p1IYNG7Bhwwby9+rVq7F69WoA3A3OFAqF8r8G7QxQKBQK5bVRqVRQKBTk75iYGKhUKkRFRXFG6+Vy+Z/6YJeLiwsAICsrC66urn9ZeYXo1q0bDh48CAA4evQosrOzsX79egDA999/j6KiIqxZs+bfWgYKhUL5b4Gek0ahUCiU1yIhIQFyuRweHh7kmq4R+sjISKjVat51U1NTVFVV8a6PGTMGYrEY3377LWQyGe/+XznDwO4XGDx4MEpLSzFw4EDyd3FxMfm/5j4CCoVC+V+FzgxQKBQKhcfDhw9x4cIFAIBCocDTp09x8uRJiMViLFy4kMj5+fnhhx9+QHBwMKZOnQqxWIyEhAQ8fvwY1tbWvHS9vLyQmJiI7777Dh06dIBIJMLbb78NOzs7rFy5EuvXr4e/vz8mTJgABwcHlJSUIC4uDps3b37t/QSvi0wmw8OHDxEYGAgAqKioQE5ODj7//PO/NB8KhUL5b4Z2BigUCoXCIyYmBjExMQCaT/KxsrLCkCFDMGvWLPTq1YvI9e3bF+Hh4dizZw927doFIyMjDB48GEePHiVBtiZffvkl1q9fj3379qGurg4A8PbbbwMAAgIC4OzsjO+//x5HjhyBQqFAu3btMGjQINjZ2f3ldUxNTYVKpUL//v0BNH91mGEY8jeFQqG8CdDvDFAoFAqFQqFQKG8odM8AhUKhUCgUCoXyhkI7AxQKhUKhUCgUyhsK7QxQKBQKhUKhUChvKLQzQKFQKBQKhUKhvKHQzgCFQqFQKBQKhfKGQjsDFAqFQqFQKBTKGwrtDFAoFAqFQqFQKG8otDNAoVAoFAqFQqG8odDOAIVCoVAoFAqF8oZCOwMUCoVCoVAoFMobyv8DVSgxKrD0/vgAAAAASUVORK5CYII=\n" }, "metadata": {} } ] }, { "cell_type": "code", "source": [ "flat_predictions = np.concatenate(predictions, axis=0)\n", "flat_true_labels = np.concatenate(true_labels, axis=0)\n", "\n", "mcc = matthews_corrcoef(flat_true_labels, flat_predictions)\n", "print('Total MCC: %.3f' % mcc)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "rkonN244_HPz", "outputId": "41d38d16-d647-45b5-8afc-ea2e29ff82ec" }, "execution_count": 34, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Total MCC: 0.000\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Save model" ], "metadata": { "id": "GPhCp068_Iwq" } }, { "cell_type": "code", "source": [ "from google.colab import drive\n", "\n", "drive.mount('/content/gdrive/', force_remount=True)\n", "\n", "output_dir = '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model'\n", "print(\"Saving model to %s\" % output_dir)\n", "\n", "model_to_save = model.module if hasattr(model, 'module') else model \n", "model_to_save.save_pretrained(output_dir)\n", "tokenizer.save_pretrained(output_dir)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "avafCMoS_KDF", "outputId": "46e0d66e-ba84-485e-8188-beaee2a89d9e" }, "execution_count": 35, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Mounted at /content/gdrive/\n", "Saving model to /content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model\n" ] }, { "output_type": "execute_result", "data": { "text/plain": [ "('/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/tokenizer_config.json',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/special_tokens_map.json',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/spiece.model',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/added_tokens.json')" ] }, "metadata": {}, "execution_count": 35 } ] }, { "cell_type": "markdown", "source": [ "# Bibliografia\n", "- https://github.com/Shivanandroy/T5-Finetuning-PyTorch/blob/main/notebook/T5_Fine_tuning_with_PyTorch.ipynb\n", "- https://mccormickml.com/2019/07/22/BERT-fine-tuning/#a1-saving--loading-fine-tuned-model\n", "- https://huggingface.co/docs/transformers/model_doc/t5#training" ], "metadata": { "id": "wHzm2_nDA6i-" } } ] }