From f0d3871b49ce7c3b86be58c96c2790f189dafe20 Mon Sep 17 00:00:00 2001 From: FrankEscobar <39060989+FrankEscobar@users.noreply.github.com> Date: Sun, 21 Feb 2021 12:36:16 +0100 Subject: [PATCH] Add files via upload --- PerroMapacheGatoCocheDeploy.ipynb | 217 ++++++++++++++++++++++++++++++ 1 file changed, 217 insertions(+) create mode 100644 PerroMapacheGatoCocheDeploy.ipynb diff --git a/PerroMapacheGatoCocheDeploy.ipynb b/PerroMapacheGatoCocheDeploy.ipynb new file mode 100644 index 0000000..c0a3360 --- /dev/null +++ b/PerroMapacheGatoCocheDeploy.ipynb @@ -0,0 +1,217 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 61, + "id": "happy-remedy", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: voila in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (0.2.7)\n", + "Requirement already satisfied: nbclient<0.6,>=0.4.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from voila) (0.5.2)\n", + "Requirement already satisfied: jupyter-client<7,>=6.1.3 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from voila) (6.1.7)\n", + "Requirement already satisfied: jupyter-server<2.0.0,>=0.3.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from voila) (1.4.0)\n", + "Requirement already satisfied: nbconvert<7,>=6.0.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from voila) (6.0.7)\n", + "Requirement already satisfied: jupyter-core>=4.6.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-client<7,>=6.1.3->voila) (4.7.1)\n", + "Requirement already satisfied: python-dateutil>=2.1 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-client<7,>=6.1.3->voila) (2.8.1)\n", + "Requirement already satisfied: pyzmq>=13 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-client<7,>=6.1.3->voila) (20.0.0)\n", + "Requirement already satisfied: tornado>=4.1 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-client<7,>=6.1.3->voila) (6.1)\n", + "Requirement already satisfied: traitlets in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-client<7,>=6.1.3->voila) (5.0.5)\n", + "Requirement already satisfied: pywin32>=1.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-core>=4.6.0->jupyter-client<7,>=6.1.3->voila) (227)\n", + "Requirement already satisfied: nbformat in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (5.1.2)\n", + "Requirement already satisfied: Send2Trash in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (1.5.0)\n", + "Requirement already satisfied: anyio>=2.0.2 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (2.1.0)\n", + "Requirement already satisfied: prometheus-client in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (0.9.0)\n", + "Requirement already satisfied: ipython-genutils in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (0.2.0)\n", + "Requirement already satisfied: jinja2 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (2.11.3)\n", + "Requirement already satisfied: terminado>=0.8.3 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jupyter-server<2.0.0,>=0.3.0->voila) (0.9.2)\n", + "Requirement already satisfied: typing-extensions in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from anyio>=2.0.2->jupyter-server<2.0.0,>=0.3.0->voila) (3.7.4.3)\n", + "Requirement already satisfied: sniffio>=1.1 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from anyio>=2.0.2->jupyter-server<2.0.0,>=0.3.0->voila) (1.2.0)\n", + "Requirement already satisfied: idna>=2.8 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from anyio>=2.0.2->jupyter-server<2.0.0,>=0.3.0->voila) (2.10)\n", + "Requirement already satisfied: async-generator in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbclient<0.6,>=0.4.0->voila) (1.10)\n", + "Requirement already satisfied: nest-asyncio in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbclient<0.6,>=0.4.0->voila) (1.5.1)\n", + "Requirement already satisfied: testpath in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (0.4.4)\n", + "Requirement already satisfied: jupyterlab-pygments in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (0.1.2)\n", + "Requirement already satisfied: bleach in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (3.3.0)\n", + "Requirement already satisfied: entrypoints>=0.2.2 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (0.3)\n", + "Requirement already satisfied: mistune<2,>=0.8.1 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (0.8.4)\n", + "Requirement already satisfied: defusedxml in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (0.6.0)\n", + "Requirement already satisfied: pandocfilters>=1.4.1 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (1.4.3)\n", + "Requirement already satisfied: pygments>=2.4.1 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbconvert<7,>=6.0.0->voila) (2.7.4)\n", + "Requirement already satisfied: MarkupSafe>=0.23 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jinja2->jupyter-server<2.0.0,>=0.3.0->voila) (1.1.1)\n", + "Requirement already satisfied: jsonschema!=2.5.0,>=2.4 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from nbformat->jupyter-server<2.0.0,>=0.3.0->voila) (3.0.2)\n", + "Requirement already satisfied: pyrsistent>=0.14.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat->jupyter-server<2.0.0,>=0.3.0->voila) (0.17.3)\n", + "Requirement already satisfied: setuptools in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat->jupyter-server<2.0.0,>=0.3.0->voila) (52.0.0.post20210125)\n", + "Requirement already satisfied: six>=1.11.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat->jupyter-server<2.0.0,>=0.3.0->voila) (1.15.0)\n", + "Requirement already satisfied: attrs>=17.4.0 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat->jupyter-server<2.0.0,>=0.3.0->voila) (20.3.0)\n", + "Requirement already satisfied: pywinpty>=0.5 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from terminado>=0.8.3->jupyter-server<2.0.0,>=0.3.0->voila) (0.5.7)\n", + "Requirement already satisfied: webencodings in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from bleach->nbconvert<7,>=6.0.0->voila) (0.5.1)\n", + "Requirement already satisfied: packaging in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from bleach->nbconvert<7,>=6.0.0->voila) (20.9)\n", + "Requirement already satisfied: pyparsing>=2.0.2 in c:\\users\\victor\\.conda\\envs\\fastai\\lib\\site-packages (from packaging->bleach->nbconvert<7,>=6.0.0->voila) (2.4.7)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Enabling: voila\n", + "- Writing config: C:\\Users\\Victor\\.conda\\envs\\FastAI\\etc\\jupyter\n", + " - Validating...\n", + " voila 0.2.7 ok\n" + ] + } + ], + "source": [ + "!pip install voila\n", + "!jupyter serverextension enable --sys-prefix voila\n", + "import fastbook\n", + "fastbook.setup_book()\n", + "from fastbook import *\n", + "from fastai.vision.widgets import *\n", + "from fastai import *" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "front-independence", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "learn_inf = load_learner('./export.pkl')\n", + "learn_inf" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "potential-poetry", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "a46c0541b0f741ebbb725e007329717e", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "FileUpload(value={}, description='Upload')" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from fastai import *\n", + "btn_upload = vision.widgets.FileUpload()\n", + "out_pl = vision.widgets.Output()\n", + "btn_run = vision.widgets.Button(description='Clasificar')\n", + "lbl_prediction_a = widgets.Label()\n", + "lbl_prediction_b = widgets.Label()\n", + "btn_upload" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "infrared-treasury", + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "def on_click_classify(change):\n", + " img = PILImage.create(btn_upload.data[0])\n", + " out_pl.clear_output()\n", + " with out_pl: display(img.to_thumb(128,128))\n", + " res_category,res_idx,res_probs = learn_inf.predict(img)\n", + " lbl_prediction_a.value = f'Predicción: {res_category}, probabilidad: {(res_probs[res_idx]*100.0):.02f}%' \n", + " lbl_prediction_b.value = f'Coche: {(res_probs[0]*100.0):.02f}% '\n", + " lbl_prediction_b.value += f'Estafa: {(res_probs[1]*100.0):.02f}% '\n", + " lbl_prediction_b.value += f'Gato: {(res_probs[2]*100.0):.02f}% '\n", + " lbl_prediction_b.value += f'Mapache: {(res_probs[3]*100.0):.02f}% '\n", + " lbl_prediction_b.value += f'Perro: {(res_probs[4]*100.0):.02f}% ' \n", + "btn_run.on_click(on_click_classify)" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "allied-people", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "FileUpload(value={}, description='Upload')\n", + "Button(description='Clasificar', style=ButtonStyle())\n", + "Output()\n", + "Label(value='')\n", + "Label(value='')\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "83695b40705242b6803bf11b55dc7355", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "VBox(children=(Label(value='Selecciona tu cosa'), FileUpload(value={}, description='Upload'), Button(descripti…" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#hide_output\n", + "print(btn_upload)\n", + "print(btn_run)\n", + "print(out_pl)\n", + "print(lbl_prediction_a)\n", + "print(lbl_prediction_b)\n", + "VBox([widgets.Label('Selecciona tu cosa'), \n", + " btn_upload, btn_run, out_pl, lbl_prediction_a,lbl_prediction_b])" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}