sábado, 19 de septiembre de 2020

Preparación de un entorno aislado Windows para Anaconda

Para preparar un entorno Windows en Machine Learning lo más fácil y rápido es instalar Anaconda, que además es gratuito y viene con varios módulos muy útiles, como Jupyter.

La instalacíón de anaconda y los primeros pasos con  Jupyter notebook se explicaron ya aquí.

Ahora vamos a crear un entorno aislado e instalar algunos de los módulos más utilizados en Machine Learning. Para ello, una vez instalado Anaconda, abrimos el editor de comando de Anaconda Prompt tecleando en búsqueda de windows: anaconda, nos debe salir esto (previamente hay que instalar Anaconda en nuestro equipo)

Anaconda prompt

sábado, 12 de septiembre de 2020

AWS in a Nutshell 1: Gestión de AWS

La GUI es una interfaz gráfica dispodnible en AWS para gestionar multitud de operaciones , además dispone de herramientas de línea de comandos que se pueden usar para administrar los recursos de AWS. Son las llamadas CLI y PowerShell.

1.1 Herramientas de administración de AWS

Los técnicos de AWS tienen varias herramientas a su disposición para administrar AWS. A nivel de GUI, tenemos el AWS Management Console, así como la aplicación móvil de la consola de AWS. AWS Management Console es una GUI web herramienta basada en navegador que proporciona capacidades de administración completas para todos los servicios de AWS. Podemos iniciar sesión en la consola utilizando la cuenta raíz de AWS o una cuenta de usuario de IAM. La aplicación  móvil Console también es una herramienta GUI, pero en comparación con la consola de administración de AWS, solo  proporciona una administración limitada. Por ejemplo, podemos comenzar y detener instancias o supervisar varios  aspectos relacionados con nuestro entorno de AWS, incluidas las métricas de rendimiento y facturación. Podemos iniciar  sesión en la aplicación móvil de la consola con una cuenta raíz de AWS, un usuario de IAM o una combinación de acceso y clave secreta vinculada a una cuenta.

AWS Professional Solutions Architect: gestión de AWS

1.2 Administración de la GUI de AWS

Cuando deseemos utilizar la consola de administración de AWS, navegaremos en un navegador web a aws.amazon.com, donde Iniciaremos la sesión en la consola.

Nos pedirá que abramos una cuenta en AWS

Aquí está la información sobre la consola de administración de AWS


1.3 AWS CLI

La interfaz de línea de comandos de AWS, o CLI, permite a los técnicos de AWS crear y administrar recursos de AWS, desde la línea de comandos. Ya sea que se hayamos instalado y ejecutado en la plataforma Windows, Linux o incluso Mac OS.

Aquí está la información sobre la consola de administración CLI de AWS

Podemos instalar la AWS CLI, no solo en la plataforma Windows, sino también en las plataformas Linux y MacOS, ya sean máquinas físicas o virtuales. Si estamos utilizando Amazon Linux, la CLI ya está preinstalada, pero si estamos usando Ubuntu Linux, la CLI no está preinstalada automáticamente.

Otra forma de trabajar con la AWS CLI, la interfaz de línea de comandos, además de descargarla e instalarla en un host  local, es implementar una instancia de Amazon Linux EC2. En otras palabras, una máquina virtual, porque incluye  automáticamente la CLI. 

Se puede gestionar desde la Consola GUI de AWS donde ponemos EC2 y vamos a la pestaña Instancias

1.4 Herramientas AWS PowerShell

Podemos utilizar los cmdlets de PowerShell para implementar y administrar sus recursos de AWS.

1.5 AWS Toolkit para Visual Studio

Los desarrolladores podemos utilizar una gran variedad de herramientas diferentes para administrar aplicaciones en la nube de AWS.

Se abre un sitio web llamado 

https://aws.amazon.com/es/visualstudio/ 

Se abre una página llamada "AWS Toolkit for Visual Studio". Incluye botones llamados "AWS Toolkit for Visual Studio 2017 and 2019" y "AWS Toolkit for Visual Studio 2013-2015". 

AWS Toolkit para Visual Studio

Pulsamos Descargar la versión deseada y pulsamos el botón Download de la siguiente página.

1.6 Diseñador de CloudFormation

CloudFormation hace que implementar recursos de AWS sea muy fácil. Es mucho más fácil que hacerlo manualmente a través de la GUI. Pues tiene una plantilla con instrucciones sobre la implementación, o incluso la administración de los recursos de AWS.

Desde la consola de AWS tecleamos

CloudFormation → create stack

Aquí el tutorial de Amazon

Una plantilla de formación de cloud es solo un archivo de texto. Puede estar formateado en formato JSON o YAML, pero en realidad solo es un archivo de texto

1.7 Plantillas de muestra de CloudFormation

Según nuestros requisitos, cuando utilicemos CloudFormation para implementar recursos de AWS, para admitir una aplicación web, con o sin soporte de base de datos, es posible que ya haya una plantilla de muestra disponible.

Consola → cloudformation → create Stack → uses a template → Elegimos la deseada, por ejemplo wordpress blog

1.8 AWS GUI y etiquetado de recursos

Etiquetar un recurso de AWS significa agregar datos o metadatos adicionales sobre ese elemento. Como asignar una instancia específica de AWS EC2 a un proyecto. O marcarlo como desarrollo en lugar de producción. Por lo tanto, facilita la organización de los recursos de AWS incluso con fines de facturación. Si, por ejemplo, deseamos ver todos los cargos incurridos por nuestro proyecto. Podemos especificar el etiquetado a través de la GUI, y también, a través de herramientas de línea de comandos.

Consola → EC2 → instances → Launch Instance

AWS GUI y etiquetado de recursos

También podemos utilizar la CLI de AWS y PowerShell para administrar el etiquetado de recursos de AWS.

Aquí tenemos la información sobre el etiquetado de recursos



sábado, 5 de septiembre de 2020

Curso de Deep Learning con Keras


Aquí dejo los enlaces correspondientes a los post que fui publicando recientemente hasta completar este cursillo de Deep Learning con Keras. El curso se puede hacer con Anaconda y Jupyter, aunque yo he utilizado Colaboratory de Google que es online, gratuito y se ejecuta en la nube. Aunque algunas capturas de pantalla son de la red  CNTK de Microsoft, da igual, lo importante son los comandos y sobre todo los conceptos en este curso introductorio.

A continuación se marcan los capítulos del curso, con su correspondiente enlace.

Imágenes similares a esta.

sábado, 29 de agosto de 2020

Introducción a las Redes Antagónicas Generativas (GAN)

Las Redes Antagónicas (o Adversarias) Generativas (Generative Adversarial Networks) , o GAN para abreviar, son un enfoque para el modelado generativo utilizando métodos de aprendizaje profundo, como las redes neuronales convolucionales.

El modelado generativo consiste en una tarea de aprendizaje no supervisada en aprendizaje automático que implica descubrir y aprender automáticamente las regularidades o patrones en los datos de entrada de tal manera que puede utilizarse una red neuronal para generar nuevos ejemplos que podrían haberse extraído del conjunto de datos de entrenamiento original.

Mujer trabajando en un CPD
Mujer trabajando en un CPD, click para ver más fotos como esta.
El paradigma GAN es una forma ingeniosa de entrenar una red generativa al enmarcar el problema como un problema de aprendizaje supervisado con dos subredes: una red generadora que entrenamos para generar nuevos ejemplos, y una red discriminadora que trata de clasificar las salidas de la red anterior como reales (del dominio de entrenamiento) o falsos (generado por la red generadora). Las dos redes se entrenan juntas en un juego de suma cero, (las ganancias de un jugador son las pérdidas del adversario) hasta que se engaña a la red discriminadora aproximadamente la mitad del tiempo, lo que significa que la red generadora está generando ejemplos tan buenos como las entradas utilizadas para entrenar la red.

sábado, 15 de agosto de 2020

Google App Script: Pasar datos desde un spreadsheet a otro por programación


En este caso vamos a trasladar datos desde varios spreadsheets de google drive hasta otro que recepcionará todos los datos. Lo primero que hay que hacer es definir variables para cada spreadshhet y sus correspondientes hojas si hay más de una.


Pasar datos desde un spreadsheet de google drive a otro spreadsheet.



sábado, 1 de agosto de 2020

Establecer un control de versiones en la nube con Bitbucket y SourceTree

Bitbucket es un repositorio de código fuente y archivos versionados que ofrece un sitio en la nube para planificar proyectos, colaborar en el código, probar y desplegar. 

Aquí se explica como descargar e instalar BitBucket. 


Para llevar el control de versiones además es necesario el software de versionado SourceTree. 


Una vez instaladas ambas aplicaciones, abrimos Bitbucket y subimos los archivos de los cuales deseamos realizar el mantenimiento de versiones, a continuación pulsamos sobre el botón Clonar (recuadrado en rojo en la imagen inferior) esto abre un panel sobre el cual debemos pulsar en Clone in SourceTree.

Clone en BitBucket