DevBox: Aprende en Contenedores en la nube
DevBox: Desarrollo Remoto &
DevBox: Desarrollo Remoto &
Clústers de Kubernetes
-
Ven y conoce DevBox la nube en tu PC
-
Entrena en contenedores docker y kubernetes
-
Obten tu propio Cluster de Kubernetes
-
Aprende con nuestros Modulos Interactivos
-
Practica en entornos de desarrollos en la Nube
-
Construye tus propios Roadmap
from tensorflow.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
import tensorflow as tf
x = tf.placeholder(tf.float32, [None, 784])
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x, W) + b)
y_ = tf.placeholder(tf.float32, [None, 10])
cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))
train_step = tf.train.GradientDescentOptimizer(0.05).minimize(cross_entropy)
sess = tf.InteractiveSession()
tf.global_variables_initializer().run()
for _ in range(1000):
batch_xs, batch_ys = mnist.train.next_batch(100)
sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
print("Accuracy: ", sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels}))
Las tecnologías modernas y sus operaciones de aprendizaje requieren configurar entornos Descubra qué principios DevOps ayudan a escalar un proyecto de aprendizaje automático desde la experimentación hasta la producción.
Descubra el poder de Docker & Kubernetes para crear aplcaciones ML aisladas y escalables
Practica en entornos Cloud reales junto con laboratorios practicos y simulaciones
- Azure ML Studio
- Docker & Kubernetes
- Laboratorios
Azure ML Studio
import azureml.core
#Verifique la versión del SDK que está instalado.
print("Ready to use Azure ML", azureml.core.VERSION)
# Aprenda y acelere la creación de modelos automatizados.
# Personalice modelos rápidamente y tenga más control
# sobre los criterios de finalización de experimentos,
# los umbrales, las validaciones y los algoritmos bloqueados.
# Detecte errores e incoherencias comunes en los datos
# a través de los límites de protección y corríjalos automáticamente.
¿Qué es el diseñador de Azure Machine Learning?
# Conozca como el diseñador de Azure Machine Learning es una interfaz
# de tipo arrastrar y soltar (drag and drop) que se usa para entrenar
# e implementar modelos en Azure Machine Learning.
# En este bootcamp aprenderás las tareas que puedes realizar en el diseñador.
from azureml.core import Workspace
ws = Workspace.from_config()
print(ws.name, "loaded")
# Aprenda a usar el SDK de Python de Azure Machine Learning para crear
# y administrar soluciones de aprendizaje automático.
Docker & Kubernetes
FROM mcr.microsoft.com/azureml/o16n-base/python-assets
FROM ubuntu:18.04
USER root:root
# Install Common Dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends
# Docker nos permite crear imágenes personalizadas con todas
# las dependencias necesarias, así como el código de cualquier
# aplicación. En ciencia de datos son altamente relevantes tanto
# para el desarrollo de modelos y más aún para el despligue de estos.
# En MLOps docker es un estandar y un requerimiento.
# En este bootcamp, sino conoces docker, aprenderás sobre esta tecnología.
# Aprenderás a crar tus primeros containers y, en nuestros laboratorios,
# como es de eperar - docker será nuestro entorno de despligue de modelos
# en kubernetes.
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-python
spec:
replicas: 4
template:
metadata:
labels:
app: hello-python
spec:
containers:
- name: hello-python
image: hello-python:latest
imagePullPolicy: Never
ports:
- containerPort: 5000
# Kubernetes es una plataforma de orquestación de contenedores que proporciona
# un mecanismo para definir implementaciónes de aplicaciones contenerizadas y
# es independiente del proveedor de la nube.
# Todas las cargas de MLOps a escala - tanto en la nube o localmente - estan soportadas
# en esta poderosa tecnología. Por lo que, al igual que docker, es un pilar en MLOPs.
# En este Bootacamp aprenderás los conceptos básicos de Kubernetes y como desplegar
# aplicaciones soportadas en contenedores - Nuestros laboratorios estan desarrollados
# en docker y kubernetes.
Laboratorios
En este bootcamp no necesitas nada para practicar nuestros Labs
¿Qué te ofrecemos?
Una cuenta Azure Sanbox con Azure ML Studio
Un Cluster de Kubernetes AKS para inferencias
Un Cluster de Kubernetes para pruebas en localhost y desarrollo remoto
Accede a tu propio cluster de Kubernetes
Estudia desde tu PC conectado con nuestros entornos de desarrollo remoto
Conectate a un cotenedor remoto como si fuese una VM
Accede a Potencia de Computo desde la Nube
Nuestros Workspaces cuentan con 8/Cores 64 Gigas de Ram
root/
|-- prepare_data/
|-- prepare_data.py
|...
|-- train_svm/
|-- train_svm.py
|...
|-- train_random-forest/
|-- train_random_forest.py
|...
|-- choose_model/
|-- choose_model.py
|...
|-- prediction_service/
|-- flask_prediction_api.py
|...
|-- raise_alerts.py
|-- bodywork.yaml
# Bodywork es una herramienta de línea de comandos que implementa
# canalizaciones de aprendizaje automático en Kubernetes.
# Se ocupa de todo lo relacionado con los contenedores y la orquestación,
# para que usted no tenga que hacerlo.
# En este laboratorio veremos como podemos contruir canalizaziones ML
# con herramientas open source fáciles de implementar como bodywork
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
import tensorflow as tf
# Kubeflow es un proyecto de código abierto que contiene un conjunto seleccionado
# de herramientas y frameworks. El objetivo principal de Kubeflow es facilitar
# el desarrollo, la implementación y la administración de flujos de trabajo
# de aprendizaje automático escalables y portátiles.
# Kubeflow es quizas el proyecto MLaaS Open Source de mayor relevancia
# por lo que nos brindará una excelente introducción al concepto MLOps.
mlflow run https://github.com/amesar/mlflow-examples.git#hello_world \
--experiment-name=hello_world \
-P alpha=100 -P run_origin=RemoteRun \
--backend databricks --backend-config cluster.json
# MLflow es una plataforma para administrar todo el ciclo de vida del aprendizaje
# automático (ML). Es un proyecto de código abierto creado por Databricks,
# los creadores de Spark.
# MLFlow puede realizar un seguimiento de los experimentos, los parámetros utilizados
# y los resultados. Le permite empaquetar código ML en un formato reproducible y reutilizable
# que puede compartir con colegas o pasar a entornos de producción llamados proyectos MLflow.
# MLflow junto a Kubeflow son los frameworks Open Source mas usados y demandados en en mercado
# MLOPs. Al igual que con Kubeflow aprenderás los conceptos basicos de esta poderosa plataforma.