Full Stack Web Development and AI With Python (Django) - Apuntes
Full Stack Web Development and AI With Python (Django) - Apuntes
Los forms son muy utilizados en ML para que el usuario meta datos (inputs) y se realice la
predicción.
IFRAMES
Están buenos para meter videos de youtube, o incluso un buscador dentro de nuestra web. Ej
en youtube cuando le das compartir y elegís “embebed”, copias todo ese link y lo pegás en la
web, y listo. Tenés el video embebido en al web.
Cómo lograr que una imagen se coloree al pasar por arriba (pasar de gris a color):
Ej.:
BOOTSTRAP
CÓMO CONFIGURARLO:
Listo.
CÓMO USARLO:
Copiás y pegás el HTML que te da boostrap (de cada componente/elemento) y listo. El CSS ya
está listo.
2)Linkeás el CSS que usás para editar justo debajo del link al css de Bootstrap en el <head>. Ej.:
Tip: si no se te cambia el color o algo, fijate la última clase (o clases más específicas) del
elemento, quizás que hagan referencia a un color, etc, y eliminala.
Tip: podés acomodar los elementos (ej cards) con el sistema grid de bootstrap, creando un
container, rows, etc. Igual yo lo haría con display grid o flexbox.
Tip: podés buscar directamente un elemento + bootstrap en google. Ej.: “footer bootstrap” y
te van a salir.
JAVASCRIPT
NOTA IMPORTANTE: para repasar JAVASCRIPT para meterle a React, es buenísimo el video de
Fazt Code: “Javascript para Aprender React”
(https://www.youtube.com/watch?v=lVqHiTCIRQg&t=1s)
JQuery
Es una librería de JavaScript. Es codear en JS pero de una forma más fácil y liviana.
$(elemento).html(“xxxx”)
Seleccionás el elemento y:
Elemento.css({declaracionesCSS})
Se hace entonces:
elemento.evento(función)
Ej.:
Animate (JQuery)
Se hace entonces:
elemento.animate(declaracionesCSS, milisegundos)
DJANGO
FORMULARIOS
Para capturar data del cliente es tan sencillo como crear un formulario y en “action” poner el
nombre de la URL de la template que va a renderizar el resultado (“hacia allá va la info”). En las
views, para capturar el input hacés request.GET[“nombreInput”] y ya con eso tenés el dato y
podés usarlo y hacer lo que quieras. Luego, acordate que para devolver un resultado/un dato a
una template lo pasás como variable de contexto, que es un diccionario en el tercer argumento
del método render(request, plantilla, ACÁ). Luego, en la template destino usás el resultado/la
variable de contexto haciendo {{nombreVariable}}. Nota: fijate que en este caso la manipulación
que hace del input es aplicarle una función de ML “ficticia” que creó en otro módulo.
Generalmente así funcionan los modelos de ML, necesitan cierto input para devolver un
resultado (una clasificación o una predicción).
URLS:
VIEWS:
INDEX HTML:
GITHUB
Tip: antes de que hagamos cualquier push, debemos hacer un pull para tener los últimos
cambios de otros miembros del equipo!
DATA SCIENCE
Librerías necesarias: jupyter notebook, sklearn, pandas, matplotlib.
Tip: para abrir jupyter notebook exactamente en el directorio donde vos querés trabajar. En
la Shell te dirigís a la carpeta destino con cd y escribís jupyter notebook, y listo. Se te abre JN
ahí.
Factorplot de Seaborn: interesante para apreciar las diferencias entre distintas categorías entre
dos variables. EJ.:
Las 4 “C” del Data Cleaning: Corregir, Completar, Crear, Convertir.
CORRECTING
Para corregir valores recomienda identificar outliers con el gráfico FacetGrid de Seaborn y luego
imputar valores con la media (depende de la decisión). Ej.:
COMPLETING
Acá recomienda buscar valores faltantes con df[columna].isnull().sum() y para esas columnas
imputar valores faltantes con media. Las columnas que tienen demasiados valores faltantes
directamente las elimina (del columna). Ej.:
CREATING (Feature Engineering)
CONVERTING
Convertir todos los datos a números, que es lo que necesitan los modelos de ML. Para ello se
puede usar la función replace.
MACHINE LEARNING
En los negocios no se usa tanto Regresión lineal, sino más bien ÁRBOLES DE DECISIÓN y
RANDOM FORESTS.
Los árboles de decisión son importantes porque permiten identificar las variables más
importantes para predecir o explicar la variable dependiente seleccionada. Ej. en el dataset del
Titanic, si Y es Survived, las variables más determinantes que elige el modelo son: 1) Sex; 2)
PClass; 3) Age; 4) Embarked.
286 => 00.00
ML MODEL:
O bien:
VIEWS (FUNCIONES):
1. Crear un formulario que recibe los input del usuario en la template home
2. El formulario, al enviarlo, acciona la template result.html, que tiene asociada la función
(view) result, y que lo que hace es obtener los datos del formulario y alimentar un
modelo de ML, obtener la predicción y renderizar la template result html, pasándole
como variable de contexto el resultado de la predicción. Y ya.
O sea, usar un modelo de ML es tan sencillo como crear un módulo py para leer el modelo de
ML guardado usando pickle, importarlo desde una view (método) que recuperará los datos que
el usuario cargó en un formulario y alimentará el modelo de ML, devolviendo el resultado como
variable de contexto a la template (entregándole el resultado al usuario).
Si vos modificás algo en la PC local, lo pusheas al repo de github y luego logueás en la instancia
(la PC de Amazon) y hacés un git pull para actualizar todo.
DEEP LEARNING