¿Qué son los algoritmos?

Un algoritmo es, desde un punto de vista técnico, un conjunto de instrucciones diseñadas para realizar una tarea específica; una lista de reglas a seguir para resolver un problema. Podemos encontrar algoritmos en todas partes dando respuesta a múltiples desafíos. Pero, cuando hablamos de algoritmos, nos solemos referir a unos específicos, llamados Algoritmos de Aprendizaje Automático, que son los más implementados durante las dos últimas décadas.

Los algoritmos más tradicionales, de acuerdo con un enfoque matemático y computacional, son secuencias de pasos que han sido programados para lograr un objetivo. Si se desea mejorar esos algoritmos, deben implementarse en ellos los nuevos pasos. En cambio, los algoritmos de aprendizaje automático mejoran su rendimiento automáticamente. Se actualizan a sí mismos sin que sea necesario que por parte humana se añadan nuevos pasos o reglas, por lo que la fortaleza de los algoritmos de aprendizaje automático, en comparación con los algoritmos tradicionales, es que consisten en un modelo estadístico que descubre, a partir de los datos disponibles, la información que resulta más significativa para la predicción, y puede mejorar su precisión automáticamente cada vez que entran nuevos datos. Desde el algoritmo de reconocimiento de imágenes de Google hasta el algoritmo de recomendación de Amazon, hoy en día existe una gran cantidad de sistemas algorítmicos de ese tipo.

Machine Learning Algorithms

Traditional algorithms are sequences of steps programmed to achieve a particular goal. If you want to improve the algorithm’s performance, you need to modify those steps until you get the newly desired outcome. However, these days digital technology has made that traditional approach obsolete, and currently most algorithms being developed and implemented are machine-learning algorithms, in which the programme updates itself as it tries to improve its performance automatically and without human intervention: it’s as if the machine were trying to learn.

Machine-learning algorithms often consist on statistical models that, based on particular datasets, try to find out the most relevant information to enhance the algorithm’s performance as more data gets into the algorithmic system. In other words: machine-learning algorithms are statistical models design to predict something or to classify information according to some particular categories, and those algorithmic systems try to improve the accuracy of their prediction or classification independently of human intervention by iteratively updating their statistical models by processing new data.

The fact that machine-learning algorithms are able to modify or even develop new rules and steps for their programme on their own, without human intervention, means that we need to have procedures in place to make sure we can understand how these algorithms work: we need to be able to audit them.

Aprendizaje automático en la práctica

Imagine un grupo de científicos que un día se reúnen con la intención de desarrollar un clasificador de imágenes muy preciso para clasificar las fotos de gatos y perros en carpetas separadas. Si optan por un algoritmo tradicional, deben inventar un conjunto infinitesimal de reglas como ésta:

-> si el animal es más grande que “x” tamaño — > es un perro

-> si es más pequeño que ese “x” tamaño — > es un gato

–> y así con innumerables posibles características físicas…

Pero si optan por un algoritmo de aprendizaje automático, pueden elegir un modelo estadístico que sintetice lo suficientemente bien los datos y dé una buena predicción. Así, después de haber ajustado el modelo (podemos suponer que los científicos han elegido el algoritmo de discriminación multilineal) con imágenes previamente clasificadas (los datos de entrenamiento), la precisión de la predicción del modelo puede mejorar continuamente, si se programa una automatización para que que cada vez que haya nuevos datos disponibles el modelo deba ajustarse de nuevo basándose en los datos anteriores y nuevos.

However, the way machine learning works also has limitations and carries its own set of challenges. If the data used to train the system are biased, if for example the data don’t contain enough images of a particular type of cat or dog (or, as in real-life cases, if they don’t contain enough images of women or people of colour or any other minority or disadvantaged group), then the algorithm may develop a wrong set of rules that will make it commit systematic mistakes. In addition to that, the fact that a machine-learning algorithm can write its own sets of rules without human intervention or even knowledge means that it may be very hard to understand how the algorithms works and to make it accountable.

 

¿Te interesa nuestro trabajo?

Puedes colaborar con el proyecto enviándonos algoritmos que se estén implementando a tu alrededor, o bien que conozcas de otros lugares, y también utilizando la información de este directorio para fomentar cambios y mejoras en tu comunidad.