Alpha's Manifesto

La madriguera de una insignificante figurita blanquinegra.

Udacity

Otra iniciativa más de enseñanza online

Me encontré como noticia en ALT 1040 que Sebastian Thrun dejó Stanford para comenzar su propia iniciativa de enseñanza online, llamada Udacity. En este preciso momento se están enseñando sólo dos cursos: Cómo construir un auto que se maneja solo y Cómo construir un motor de búsqueda. Ambos están dados por Thrun y el del motor de búsqueda está también asociado con David Evans.

Se vienen nuevos cursos durante este año, que también parecen ser muy interesantes, como Sistemas Operativos, Sistemas Distribuidos, Redes, Seguridad, Algoritmos y estructura de datos, Prácticas de Ingeniería de Software, Construir aplicaciones web, etc. Nombré los cursos que están nombrados en la página al día de hoy, pero quién sabe qué traerá el futuro. Parece que por hoy está teniendo mucho éxito.

Soy un zorrinito estudioso.

Link del día: Damn Cool Algorithms

Hoy mismo me crucé con un post de la serie de Damn Cool Algorithms, una serie de posts del blog de Nick Johnsonz, en donde explica determinados algoritmos de forma relativamente simple. Hace falta conocimiento técnico, pero aún así los simplifica lo suficiente como para que sean entendibles. Y son realmente útiles, son de mucha utilidad y además, en cierta forma, bonitos.

Soy un zorrinito algorítmico.

Link del día: Interrelacionando datos

Para quienes es sólo una palabra difícil, interpolación significa en el ámbito de funciones matemáticas, calcular valores aproximados de datos que no tenemos realmente. Esto se lleva al punto en donde para interpolar, podemos calcular una fórmula que rige los valores con los que estamos trabajando. Cuando estas funciones realmente predicen los datos con los que estamos trabajando, logramos obtener la “regla” por la que estos valores se guían.

Y esto es interesante cuando tenemos un conjunto de valores y luego tenemos que predecir su comportamiento en el futuro. Más que nada, en casos de la vida cotidiana. ¿A qué hora estará peor el tránsito? ¿Cuántas llamadas voy a recibir en cada momento del día?

Eureqa es un software que nos permite hacer este trabajo. Tomando un conjunto de datos y permitiéndonos cierto margen de error (muchos algoritmos de interpolación los permiten) nos permite identificar con cierta exactitud una fórmula que describa el comportamiento de nuestros datos. Se hace generando distintos bloques de operaciones aritméticas que den lugar a un resultado más o menos cercano a nuestro conjunto de datos. Personalmente no reconozco si este es un algoritmo de interpolación en particular, o sólo se trata de un algoritmo de búsqueda (en pocas palabras: prueba y error).

Muy relacionado, quiero dejar un link a Google Correlate, uno de los productos de Google que ahora se encuentran en sus laboratorios, que básicamente nos devuelve cuáles son las búsquedas más íntimamente relacionadas en cuanto a números con una búsqueda que a nosotros nos interese. Como extra, nos permite loggearnos y relacionar nuestro propio conjunto de datos con los que ellos tienen de sus búsqueda. O mejor aún, podemos dibujar nuestro propio gráfico y saber qué búsquedas tuvieron esa característica de interés (por ejemplo, una curva creciente y luego decreciente, algo que a la gente ya le aburrió).

Soy un zorrinito de datos relacionados.

Link del día: Visualizar las estructuras

Los trabajadores de la informática tienen muy asimilados estos conceptos: pilas, colas, árboles, el camino más corto, ordenamiento, algoritmo, grafo, etc. Todos estos conceptos los hemos ido aprendiendo de una forma u otra, pero al momento de aplicarlos es cuando realmente se prueba nuestro aprendizaje. Personalmente creo que ningún aprendizaje está completo sin una buena visualización de la materia, y es aquí en donde, para las estructuras de datos, hay que inventar algo.

Seguramente lo mismo pensó David Galles, quién desarrolló  un software en Java que nos permite visualizar el funcionamiento de estas estructuras. Data Structure Visualizations es el nombre que le otorgó, pero la historia no se queda ahí, sino que HTML5 hizo su entrada y ahora también tenemos la versión web. Denle una mirada, no sólo es interesante, sino entretenido.

Recuerdan La Belleza de Los Algoritmos? Creo que este link calificaba totalmente para estar en ese listado.

Soy un zorrinito estructurado.

Link del día: El algoritmo del Kinect

Si es que han visto demos, publicidades, o han jugado personalmente con el Kinect, probablemente se habrán dado cuenta que tiene mucho trabajo volcado en ese producto, y mucha tecnología novedosa sobre la forma en la que se pueden reconocer los cuerpos, las caras y los movimientos. Simplemente, una forma que resultó ser viable de utilizar el reconocimiento de gestos de una forma muy amplia.

Hace no mucho tiempo Microsoft reveló públicamente el algoritmo que utiliza Kinect para hacer estos reconocimientos. Toda esa información está presente en un paper publicado bajo el nombre de Real-Time Human Pose Recognition in Parts from Single Depth Images. El paper es bastante conciso y no muy largo, pero claro, hay que tener ciertos conocimientos de probabilidad, grafos y procesamiento de imágenes para poder apreciarlo en su totalidad.

Siendo esto público ahora, ¿quién de nosotros será el próximo en armar su aplicación Kinect-like?

Soy un zorrinito en movimiento.