Un vistazo al Neural Compute Stick de Movidius/Intel

Recientemente Intel Corporation adquirió la empresa Movidius para adentrarse de lleno en el mundo de la así llamada inteligencia artificial.

Luego de esto sacaron al mercado el Neural Compute Stick (NCS); un “stick” USB capaz de realizar grandes cantidades de ciclos computacionales de inteligencia artificial con un bajo consumo de electricidad, liberando al procesador principal de dichas tareas y brindando la capacidad de realizar análisis de inteligencia artificial de tipo TensorflowCaffe sin necesidad de intercambiar datos con la nube.

En esta entrega vamos a darle un pequeño vistazo a este dispositivo, haciendo un poco de reconocimiento de imágenes “in situ” usando un modesto Raspberry PI 3 conectado a un Movidius NCS. Continuar leyendo “Un vistazo al Neural Compute Stick de Movidius/Intel”

QuickTIP: Plantillas Literales en Javascript

Recientemente me econtré con una funcionalidad interesante de Javascript denominada “Plantillas Literales” (referencia)

Básicamente consiste en el uso de “coma invertida”   `  para definir cadenas que se comportan como plantillas donde el patron ${expresión} es reemplazado por el resultado evaluado de la expresión.

El siguiente ejemplo retornaría la cadena “hola 2”

console.log(`hola ${1+1}`);

 

… mientras que el siguiente ejemplo retornaría el valor “hola mundo”

var variable = "mundo";
console.log(`hola ${variable}`);

Es todo.

Anaconda y Jupyter Notebook como plataforma de Machine Learning en Python

¿Qué es Anaconda?

Anaconda es una de las plataformas más prominentes de ciencia de datos para Python. Se puede descargar Anaconda de este enlace: http://www.continuum.io/downloads 


Distribución Anaconda

Expanda para ver Distribución ANACONDA

La distribución gratuita incluye una serie de librerías y programas utilitarios avanzados tales como

Image tomada de https://www.anaconda.com/distribution/

Dentro de los paquetes que me han resultado más interesantes podemos mencionar:

  1. Numpy: Librería de Python para computación científica
  2. Scipy: Meta-librería de computación científica para Python
  3. Pandas: Librerías para estructuras de datos y analítica de datos para Python
  4. Jupyter Notebook: Es un IDE que permite crear documentación “activa/viva” incluyendo visualizaciones, scripts, ejemplos, etc

Jupyter Notebook

Expanda para ver ¿Cómo iniciar con Jupyter Notebook?

Jupyter Notebook perimte generar documentación viva que incluya scripts, datos y visualizaciones de ejemplo.

En Windows, para ejecutar Jupyter Notebook se abre la consola de Anaconda (Windows > Anaconda Prompt) y se ejecuta el comando jupyter notebook

Este comando levanta un servidor jupyter y una ventana de navegador apuntando a http://localhost:8888 (el puerto puede variar)

Cada línea del documento puede ser de tipo Markup, Titulo o Código.

En las líneas que son de tipo código puede ejecutarse este con solo presionar [CTRL] [ENTER]

Desde esa ventana web se pueden crear o modificar proyectos Jupyter que incluyan código de ejemplo Python que puede ser ejecutado en el documento.


Flujo de Trabajo para Aprendizaje de Máquinas

Expanda para ver más sobre Machine Learning Workflow

Machine Learning Workflow: Es un patrón repetible y orquestado que permite la transformación y el procesamiento sistemático de informació para crear soluciones de predicción.

  1. Definir la pregunta a responder
  2. Preparar los datos
  3. Seleccionar un algoritmo
  4. Entrenar un modelo
  5. Validar el modelo
  6. Retro-alimentación