¿Qué es el aprendizaje automático?

Rostro de hombre en una aplicación de reconocimiento facial en un teléfono inteligente
Zapp2Photo / Shutterstock.com

Para aprender una habilidad, recopilamos conocimientos, practicamos con cuidado y monitoreamos nuestro desempeño. Eventualmente, mejoramos en esa actividad. El aprendizaje automático es una técnica que permite a las computadoras hacer precisamente eso.

¿Pueden aprender las computadoras?

Definir la inteligencia es difícil. Todos sabemos lo que entendemos por inteligencia cuando la decimos, pero describirla es problemático. Dejando de lado la emoción y la autoconciencia, una descripción funcional podría ser la capacidad de aprender nuevas habilidades y absorber conocimientos y aplicarlos a nuevas situaciones para lograr el resultado deseado.

Dada la dificultad para definir la inteligencia, definir la inteligencia artificial no será más fácil. Entonces, haremos un poco de trampa. Si un dispositivo informático puede hacer algo que normalmente requeriría razonamiento e inteligencia humanos, diremos que está utilizando inteligencia artificial.

Por ejemplo, altavoces inteligentes como Amazon Echo y Google Nest pueden escuchar nuestras instrucciones habladas, interpretar los sonidos como palabras, extraer el significado de las palabras y luego intentar cumplir con nuestra solicitud. Podríamos pedirle que reproduzca música, responda una pregunta o apagar las luces.

RELACIONADA: Los mejores chistes, juegos y huevos de Pascua para el Asistente de Google

En todas las interacciones, excepto en las más triviales, sus comandos hablados se transmiten a potentes computadoras en las nubes de los fabricantes, donde se lleva a cabo el trabajo pesado de la inteligencia artificial. El comando se analiza, se extrae el significado y la respuesta se prepara y se envía de vuelta al altavoz inteligente.

El aprendizaje automático es la base de la mayoría de los sistemas de inteligencia artificial con los que interactuamos. Algunos de estos son elementos de su hogar, como dispositivos inteligentes, y otros son parte de los servicios que usamos en línea. El video recomendaciones en YouTube y Netflix y las listas de reproducción automáticas en Spotify utilizan el aprendizaje automático. Los motores de búsqueda se basan en el aprendizaje automático y las compras en línea utilizan el aprendizaje automático para ofrecerle sugerencias de compra basadas en su historial de navegación y compras.

Las computadoras pueden acceder a enormes conjuntos de datos. Pueden repetir incansablemente procesos miles de veces dentro del espacio que le tomaría a un humano realizar una iteración, si es que un humano pudiera hacerlo una vez. Entonces, si el aprendizaje requiere conocimiento, práctica y retroalimentación del desempeño, la computadora debería ser el candidato ideal.

Eso no quiere decir que la computadora pueda realmente pensar en el sentido humano, o para comprender y percibir como lo hacemos. Pero será aprendery mejorar con la práctica. Hábilmente programado, un sistema de aprendizaje automático puede lograr una impresión decente de una entidad consciente y consciente.

Solíamos preguntar: «¿Pueden aprender las computadoras?» Eso eventualmente se transformó en una pregunta más práctica. ¿Cuáles son los desafíos de ingeniería que debemos superar para permitir que las computadoras aprendan?

Redes neuronales y redes neuronales profundas

Los cerebros de los animales contienen redes de neuronas. Las neuronas pueden enviar señales a través de una sinapsis a otras neuronas. Esta pequeña acción, replicada millones de veces, da lugar a nuestros procesos de pensamiento y recuerdos. A partir de muchos bloques de construcción simples, la naturaleza creó mentes conscientes y la capacidad de razonar y recordar.

Inspirándose en las redes neuronales biológicas, se crearon redes neuronales artificiales para imitar algunas de las características de sus contrapartes orgánicas. Desde la década de 1940, se han desarrollado hardware y software que contienen miles o millones de nodos. Los nodos, como las neuronas, reciben señales de otros nodos. También pueden generar señales para alimentar a otros nodos. Los nodos pueden aceptar entradas y enviar señales a muchos nodos a la vez.

Si un animal concluye que los insectos voladores amarillos y negros siempre le dan una picadura desagradable, evitará todos los insectos voladores amarillos y negros. El hoverfly se aprovecha de esto. Es amarillo y negro como una avispa, pero no pica. Los animales que se han enredado con las avispas y han aprendido una lección dolorosa también le dan un amplio margen a la mosca flotante. Ven un insecto volador con una combinación de colores llamativa y deciden que es hora de retirarse. El hecho de que el insecto pueda flotar, y las avispas no, ni siquiera se toma en consideración.

RELACIONADA: Esto es lo que sucede cuando la inteligencia artificial de Google te ayuda a escribir poemas

La importancia de las rayas voladoras, zumbantes y amarillas y negras anula todo lo demás. La importancia de esas señales se llama ponderación de esa información. Las redes neuronales artificiales también pueden usar la ponderación. Un nodo no necesita considerar todas sus entradas iguales. Puede favorecer algunas señales sobre otras.

El aprendizaje automático usa estadísticas para encontrar patrones en los conjuntos de datos en los que está entrenado. Un conjunto de datos puede contener palabras, números, imágenes, interacciones del usuario, como clics en un sitio web, o cualquier otra cosa que se pueda capturar y almacenar digitalmente. El sistema necesita caracterizar los elementos esenciales de la consulta y luego hacerlos coincidir con los patrones que ha detectado en el conjunto de datos.

Si está tratando de identificar una flor, necesitará saber la longitud del tallo, el tamaño y estilo de la hoja, el color y la cantidad de pétalos, etc. En realidad, necesitará muchos más hechos que esos, pero en nuestro ejemplo simple, los usaremos. Una vez que el sistema conoce esos detalles sobre la muestra de prueba, comienza un proceso de toma de decisiones que produce una coincidencia a partir de su conjunto de datos. Sorprendentemente, los sistemas de aprendizaje automático crean el árbol de decisiones por sí mismos.

Un sistema de aprendizaje automático aprende de sus errores actualizando sus algoritmos para corregir fallas en su razonamiento. Las redes neuronales más sofisticadas son redes neuronales profundas. Conceptualmente, se componen de una gran cantidad de redes neuronales superpuestas una encima de otra. Esto le da al sistema la capacidad de detectar y utilizar incluso pequeños patrones en sus procesos de decisión.

Las capas se utilizan comúnmente para proporcionar ponderación. Las denominadas capas ocultas pueden actuar como capas «especializadas». Proporcionan señales ponderadas sobre una sola característica del sujeto de prueba. Nuestro ejemplo de identificación de flores tal vez podría usar capas ocultas dedicadas a la forma de las hojas, el tamaño de las yemas o la longitud de los estambres.

Diferentes tipos de aprendizaje

Hay tres técnicas generales que se utilizan para entrenar sistemas de aprendizaje automático: aprendizaje supervisado, aprendizaje no supervisado y aprendizaje reforzado.

Aprendizaje supervisado

El aprendizaje supervisado es la forma de aprendizaje más utilizada. Eso no se debe a que sea inherentemente superior a otras técnicas. Tiene más que ver con la idoneidad de este tipo de aprendizaje para los conjuntos de datos utilizados en los sistemas de aprendizaje automático que se están escribiendo en la actualidad.

En el aprendizaje supervisado, los datos se etiquetan y estructuran de manera que se definan los criterios utilizados en el proceso de toma de decisiones para el sistema de aprendizaje automático. Este es el tipo de aprendizaje que se utiliza en los sistemas de aprendizaje automático detrás de las sugerencias de listas de reproducción de YouTube.

Aprendizaje sin supervisión

El aprendizaje no supervisado no requiere preparación de datos. Los datos no están etiquetados. El sistema escanea los datos, detecta sus propios patrones y deriva sus propios criterios de activación.

Se han aplicado técnicas de aprendizaje no supervisado a la ciberseguridad con altas tasas de éxito. Los sistemas de detección de intrusos mejorados por el aprendizaje automático pueden detectar la actividad de red no autorizada de un intruso porque no coincide con los patrones de comportamiento observados anteriormente de los usuarios autorizados.

RELACIONADA: Cómo se superponen la IA, el aprendizaje automático y la seguridad de endpoints

Aprendizaje reforzado

El aprendizaje por refuerzo es la más nueva de las tres técnicas. En pocas palabras, un algoritmo de aprendizaje por refuerzo utiliza prueba y error y retroalimentación para llegar a un modelo óptimo de comportamiento para lograr un objetivo determinado.

Esto requiere retroalimentación de los humanos que “puntúan” los esfuerzos del sistema según si su comportamiento tiene un impacto positivo o negativo en la consecución de su objetivo.

El lado práctico de la IA

Debido a que es tan frecuente y tiene éxitos demostrables en el mundo real, incluidos los éxitos comerciales, el aprendizaje automático se ha denominado «el lado práctico de la inteligencia artificial». Es un gran negocio y existen muchos marcos comerciales escalables que le permiten incorporar el aprendizaje automático en sus propios desarrollos o productos.

Si no tiene una necesidad inmediata de ese tipo de potencia de fuego, pero está interesado en hurgar en un sistema de aprendizaje automático con un lenguaje de programación amigable como Python, también existen excelentes recursos gratuitos para eso. De hecho, estos se ampliarán con usted si desarrolla un mayor interés o una necesidad comercial.

Antorcha es un marco de aprendizaje automático de código abierto conocido por su velocidad.

Scikit-Learn es una colección de herramientas de aprendizaje automático, especialmente para usar con Python.

Caffe es un marco de aprendizaje profundo, especialmente competente en el procesamiento de imágenes.

Keras es un marco de aprendizaje profundo con una interfaz Python.

Deja un comentario

En esta web usamos cookies para personalizar tu experiencia de usuario.    Política de cookies
Privacidad