Tengo este blog fundamentalmente para aprender. La forma en la que aprendo alguna cosa es la siguiente: decido sobre qué quiero aprender, decido qué material voy a utilizar para ello (libros, cursos web, blogs,…) y preparo unos apuntes basados en ese material. Esos apuntes consisten en entradas en este blog donde explico aquello que creo haber entendido.

Por lo tanto, en este tipo de entradas hablo sobre cosas de las que sé entre poco y nada, y lo hago resumiendo, traduciendo, y reformulando las explicaciones de alguien que sí sabe de qué habla (o eso espero).

Python Machine learning

Esta entrada es la primera de una serie dedicada a la inteligencia artificial, específicamente a la rama conocida como machine learning. La guía para ello va a ser el libro Python Machine Learning, de Sebastian Raschka.

La portada del libro
La portada del libro

Es un libro muy práctico, tiene muchos ejemplos en Python, todo el código fuente está disponible en GitHub, tiene buenas críticas en Amazon, y está bien escrito. Es un libro muy recomendable para quien quiera iniciarse en el tema.

En GitHub se incluye una faq en la se autoriza usar hasta el 10% del contenido del libro siempre que se cite y acredite correctamente, y no se venda o redistribuya la información. Esto me permite incluir imágenes y algún párrafo suelto para ir ilustrando las entradas.

En la próxima entrada de la serie comenzaremos con el tema 1 del libro, con la idea de ir repasando todo el libro por orden. Hasta entonces resumo algunas respuestas de la faq mencionada.

Machine Learning

Ver What are data science and machine learning?

Casi todas las definiciones de machine learning (prefiero el término inglés a la traducción española, que suele ser ‘aprendizaje automático’) hacen refencia a los algoritmos empleados, ya que en realidad el machine learning es una forma concreta de programación.

El autor define un algoritmo de machine learning como aquel que aprende, e incluso predice, modelos a partir de datos.

El aprendizaje automático es el campo de estudio que proporciona a los ordenadores la capacidad de aprender sin haber sido explícitamente programados para ello - Arthur Samuel (1959)
El aprendizaje automático es el campo de estudio que proporciona a los ordenadores la capacidad de aprender sin haber sido explícitamente programados para ello - Arthur Samuel (1959)

Uno de los ejemplos más clásicos es el filtro de spam. Un programa convencional que tuviese que separar el spam del correo legítimo tendría que incorporar una serie de reglas if/then que comprobasen una serie de términos, especificados por expertos en la materia, y discriminasen los correos en base a esas reglas.

La forma ‘machine learning’ de realizar esta tarea comenzaría con una muestra de correos, algunos spam y otros no, a los que unos clasificadores humanos hubiesen etiquetado correspondientemente. El algoritmo de machine learning examinaría estos correos y extraería un conjunto de reglas para clasificar los correos que se le suministrasen en el futuro. A este tipo de aproximación se le llama aprendizaje supervisado.

Machine learnign e Inteligencia Artificial

Ver How are Artificial Intelligence and Machine Learning related?

La inteligencia artificial es la disciplina que se centra en las tareas en las que los humanos son mucho mejor que las máquinas, como detectar spam o identificar objetos en una imagen.

El autor no considera el machine learning como una subdisciplina de la inteligencia artificial. Ambas disciplinas se solapan, pero también tienen áreas de conocimiento independientes. En el caso del machine learning se incluirían las técnicas de data mining (término que se aplica en general a las técnicas de extracción de información a partir de datos en bruto), que no son parte de la inteligencia artificial.

El 'deep learning' sí es una subdisciplina del 'machine learning', pero lo trataremos más adelante
El 'deep learning' sí es una subdisciplina del 'machine learning', pero lo trataremos más adelante

Python

Ver Why did you choose Python for Machine Learning?

Cualquier cosa interesante que quiera decir ya la ha dicho Randall Munroe mejor que yo
Cualquier cosa interesante que quiera decir ya la ha dicho Randall Munroe mejor que yo