Aprendizaje automático

Compartir Imprimir Citar

El aprendizaje automático (Machine learning) es el estudio de algoritmos informáticos que pueden mejorar automáticamente a través de la experiencia y el uso de datos. Se considera parte de la inteligencia artificial. Los algoritmos de aprendizaje automático construyen un modelo basado en datos de muestra, conocidos como datos de entrenamiento, para hacer predicciones o tomar decisiones sin estar programados explícitamente para hacerlo. Los algoritmos de aprendizaje automático se utilizan en una amplia variedad de aplicaciones, como en medicina, filtrado de correo electrónico, reconocimiento de voz y visión artificial, donde es difícil o inviable desarrollar algoritmos convencionales para realizar las tareas necesarias.

Un subconjunto del aprendizaje automático está estrechamente relacionado con las estadísticas computacionales, que se enfoca en hacer predicciones usando computadoras; pero no todo el aprendizaje automático es aprendizaje estadístico. El estudio de la optimización matemática ofrece métodos, teoría y dominios de aplicación al campo del aprendizaje automático. La minería de datos es un campo de estudio relacionado, que se centra en el análisis exploratorio de datos a través del aprendizaje no supervisado. Algunas implementaciones de aprendizaje automático usan datos y redes neuronales de una manera que imita el funcionamiento de un cerebro biológico. En su aplicación a través de problemas comerciales, el aprendizaje automático también se conoce como análisis predictivo.

Visión de conjunto

Los algoritmos de aprendizaje funcionan sobre la base de que es probable que las estrategias, los algoritmos y las inferencias que funcionaron bien en el pasado continúen funcionando bien en el futuro. Estas inferencias pueden ser obvias, como "dado que el sol salió todas las mañanas durante los últimos 10.000 días, probablemente también saldrá mañana por la mañana". Se pueden matizar, como "X% de las familias tienen especies geográficamente separadas con variantes de color, por lo que existe un Y% de posibilidades de que existan cisnes negros sin descubrir".

Los programas de aprendizaje automático pueden realizar tareas sin estar programados explícitamente para hacerlo. Implica que las computadoras aprendan de los datos proporcionados para llevar a cabo ciertas tareas. Para tareas simples asignadas a las computadoras, es posible programar algoritmos que le digan a la máquina cómo ejecutar todos los pasos necesarios para resolver el problema en cuestión; por parte de la computadora, no se necesita aprendizaje. Para tareas más avanzadas, puede ser un desafío para un ser humano crear manualmente los algoritmos necesarios. En la práctica, puede resultar más efectivo ayudar a la máquina a desarrollar su propio algoritmo, en lugar de que los programadores humanos especifiquen cada paso necesario.

La disciplina del aprendizaje automático emplea varios enfoques para enseñar a las computadoras a realizar tareas en las que no se dispone de un algoritmo totalmente satisfactorio. En los casos en que exista un gran número de posibles respuestas, un enfoque consiste en etiquetar algunas de las respuestas correctas como válidas. Esto se puede usar como datos de entrenamiento para que la computadora mejore los algoritmos que usa para determinar las respuestas correctas. Por ejemplo, para entrenar un sistema para la tarea de reconocimiento de caracteres digitales, a menudo se ha utilizado el conjunto de datos MNIST de dígitos escritos a mano.

Historia y relaciones con otros campos

El término aprendizaje automático fue acuñado en 1959 por Arthur Samuel, un miembro estadounidense de IBM y pionero en el campo de los juegos de computadora y la inteligencia artificial. También se utilizó el sinónimo de computadoras de autoaprendizaje en este período de tiempo. Un libro representativo de la investigación del aprendizaje automático durante la década de 1960 fue el libro de Nilsson sobre máquinas de aprendizaje, que trata principalmente del aprendizaje automático para la clasificación de patrones. El interés relacionado con el reconocimiento de patrones continuó en la década de 1970, como lo describen Duda y Hart en 1973. En 1981 se presentó un informe sobre el uso de estrategias de enseñanza para que una red neuronal aprenda a reconocer 40 caracteres (26 letras, 10 dígitos y 4 símbolos especiales).) desde una terminal de computadora.

Tom M. Mitchell proporcionó una definición más formal y ampliamente citada de los algoritmos estudiados en el campo del aprendizaje automático: "Se dice que un programa de computadora aprende de la experiencia E con respecto a alguna clase de tareas T y mide el desempeño P si su desempeño en las tareas en T, medida por P, mejora con la experiencia E.Esta definición de las tareas en las que se relaciona el aprendizaje automático ofrece una definición fundamentalmente operativa en lugar de definir el campo en términos cognitivos. Esto sigue la propuesta de Alan Turing en su artículo "Maquinaria informática e inteligencia", en el que la pregunta "¿Pueden pensar las máquinas?" se reemplaza con la pregunta "¿Pueden las máquinas hacer lo que nosotros (como entidades pensantes) podemos hacer?".

El aprendizaje automático moderno tiene dos objetivos, uno es clasificar los datos en función de los modelos que se han desarrollado, el otro propósito es hacer predicciones para los resultados futuros en función de estos modelos. Un algoritmo hipotético específico para clasificar datos puede usar la visión por computadora de los lunares junto con el aprendizaje supervisado para entrenarlo para clasificar los lunares cancerosos. Un algoritmo de aprendizaje automático para el comercio de acciones puede informar al comerciante de futuras predicciones potenciales.

Inteligencia artificial

Como esfuerzo científico, el aprendizaje automático surgió de la búsqueda de la inteligencia artificial. En los primeros días de la IA como disciplina académica, algunos investigadores estaban interesados ​​en que las máquinas aprendieran de los datos. Intentaron abordar el problema con varios métodos simbólicos, así como lo que entonces se denominó "redes neuronales"; estos eran en su mayoría perceptrones y otros modelos que luego se descubrió que eran reinvenciones de los modelos lineales generalizados de estadísticas. También se empleó el razonamiento probabilístico, especialmente en el diagnóstico médico automatizado.

Sin embargo, un énfasis cada vez mayor en el enfoque lógico basado en el conocimiento provocó una brecha entre la IA y el aprendizaje automático. Los sistemas probabilísticos estaban plagados de problemas teóricos y prácticos de adquisición y representación de datos. Para 1980, los sistemas expertos habían llegado a dominar la IA y las estadísticas estaban en desgracia. El trabajo sobre el aprendizaje simbólico/basado en el conocimiento continuó dentro de la IA, lo que condujo a la programación lógica inductiva, pero la línea de investigación más estadística estaba ahora fuera del campo de la IA propiamente dicha, en el reconocimiento de patrones y la recuperación de información.La investigación de redes neuronales había sido abandonada por la IA y la informática casi al mismo tiempo. Esta línea también continuó fuera del campo AI/CS, como "conexionismo", por investigadores de otras disciplinas, incluidos Hopfield, Rumelhart y Hinton. Su principal éxito llegó a mediados de la década de 1980 con la reinvención de la retropropagación.

El aprendizaje automático (ML), reorganizado como un campo separado, comenzó a florecer en la década de 1990. El campo cambió su objetivo de lograr inteligencia artificial a abordar problemas solucionables de naturaleza práctica. Cambió el enfoque lejos de los enfoques simbólicos que había heredado de la IA y hacia métodos y modelos tomados de la estadística y la teoría de la probabilidad.

La diferencia entre ML e IA a menudo se malinterpreta. ML aprende y predice en base a observaciones pasivas, mientras que AI implica un agente que interactúa con el entorno para aprender y tomar acciones que maximicen sus posibilidades de lograr sus objetivos con éxito.

A partir de 2020, muchas fuentes continúan afirmando que ML sigue siendo un subcampo de AI. Otros tienen la opinión de que no todo el ML es parte de la IA, sino que solo un 'subconjunto inteligente' del ML debe considerarse IA.

Procesamiento de datos

El aprendizaje automático y la minería de datos a menudo emplean los mismos métodos y se superponen significativamente, pero mientras que el aprendizaje automático se enfoca en la predicción, basada en propiedades conocidas aprendidas de los datos de entrenamiento, la minería de datos se enfoca en el descubrimiento de (anteriormente) desconocidos.propiedades en los datos (este es el paso de análisis del descubrimiento de conocimiento en las bases de datos). La minería de datos utiliza muchos métodos de aprendizaje automático, pero con diferentes objetivos; por otro lado, el aprendizaje automático también emplea métodos de minería de datos como "aprendizaje no supervisado" o como un paso de preprocesamiento para mejorar la precisión del alumno. Gran parte de la confusión entre estas dos comunidades de investigación (que a menudo tienen conferencias y revistas separadas, ECML PKDD es una gran excepción) proviene de los supuestos básicos con los que trabajan: en el aprendizaje automático, el rendimiento generalmente se evalúa con respecto a la capacidad de reproducir conocimiento conocido, mientras que en el descubrimiento de conocimiento y la minería de datos (KDD) la tarea clave es el descubrimiento de conocimiento previamente desconocidoconocimiento. Evaluado con respecto al conocimiento conocido, un método no informado (no supervisado) será superado fácilmente por otros métodos supervisados, mientras que en una tarea típica de KDD, los métodos supervisados ​​no se pueden usar debido a la falta de disponibilidad de datos de entrenamiento.

Mejoramiento

El aprendizaje automático también tiene vínculos íntimos con la optimización: muchos problemas de aprendizaje se formulan como la minimización de alguna función de pérdida en un conjunto de ejemplos de entrenamiento. Las funciones de pérdida expresan la discrepancia entre las predicciones del modelo que se está entrenando y las instancias reales del problema (por ejemplo, en la clasificación, uno quiere asignar una etiqueta a las instancias y los modelos se entrenan para predecir correctamente las etiquetas preasignadas de un conjunto de ejemplos).

Generalización

La diferencia entre la optimización y el aprendizaje automático surge del objetivo de la generalización: mientras que los algoritmos de optimización pueden minimizar la pérdida en un conjunto de entrenamiento, el aprendizaje automático se ocupa de minimizar la pérdida en muestras no vistas. Caracterizar la generalización de varios algoritmos de aprendizaje es un tema activo de investigación actual, especialmente para algoritmos de aprendizaje profundo.

Estadísticas

El aprendizaje automático y las estadísticas son campos estrechamente relacionados en términos de métodos, pero distintos en su objetivo principal: las estadísticas extraen inferencias de población de una muestra, mientras que el aprendizaje automático encuentra patrones predictivos generalizables. Según Michael I. Jordan, las ideas del aprendizaje automático, desde los principios metodológicos hasta las herramientas teóricas, han tenido una larga prehistoria en las estadísticas. También sugirió el término ciencia de datos como marcador de posición para llamar al campo general.

Leo Breiman distinguió dos paradigmas de modelado estadístico: modelo de datos y modelo algorítmico, donde "modelo algorítmico" significa más o menos los algoritmos de aprendizaje automático como Random forest.

Algunos estadísticos han adoptado métodos de aprendizaje automático, lo que lleva a un campo combinado que llaman aprendizaje estadístico.

Teoría

Un objetivo central de un alumno es generalizar a partir de su experiencia. La generalización en este contexto es la capacidad de una máquina de aprendizaje para realizar con precisión ejemplos/tareas nuevos e invisibles después de haber experimentado un conjunto de datos de aprendizaje. Los ejemplos de entrenamiento provienen de una distribución de probabilidad generalmente desconocida (considerada representativa del espacio de ocurrencias) y el alumno debe construir un modelo general sobre este espacio que le permita producir predicciones suficientemente precisas en nuevos casos.

El análisis computacional de los algoritmos de aprendizaje automático y su rendimiento es una rama de la informática teórica conocida como teoría del aprendizaje computacional. Debido a que los conjuntos de entrenamiento son finitos y el futuro es incierto, la teoría del aprendizaje generalmente no brinda garantías del desempeño de los algoritmos. En cambio, los límites probabilísticos en el desempeño son bastante comunes. La descomposición de sesgo-varianza es una forma de cuantificar el error de generalización.

Para obtener el mejor rendimiento en el contexto de la generalización, la complejidad de la hipótesis debe coincidir con la complejidad de la función subyacente a los datos. Si la hipótesis es menos compleja que la función, entonces el modelo no ha ajustado bien los datos. Si la complejidad del modelo aumenta en respuesta, entonces el error de entrenamiento disminuye. Pero si la hipótesis es demasiado compleja, entonces el modelo está sujeto a sobreajuste y la generalización será más pobre.

Además de los límites de rendimiento, los teóricos del aprendizaje estudian la complejidad del tiempo y la viabilidad del aprendizaje. En la teoría del aprendizaje computacional, un cálculo se considera factible si se puede realizar en tiempo polinomial. Hay dos tipos de resultados de complejidad de tiempo: Los resultados positivos muestran que cierta clase de funciones se pueden aprender en tiempo polinomial. Los resultados negativos muestran que ciertas clases no se pueden aprender en tiempo polinomial.

Enfoques

Los enfoques de aprendizaje automático se dividen tradicionalmente en tres categorías amplias, según la naturaleza de la "señal" o "retroalimentación" disponible para el sistema de aprendizaje:

Aprendizaje supervisado

Los algoritmos de aprendizaje supervisado construyen un modelo matemático de un conjunto de datos que contiene tanto las entradas como las salidas deseadas. Los datos se conocen como datos de entrenamiento y consisten en un conjunto de ejemplos de entrenamiento. Cada ejemplo de entrenamiento tiene una o más entradas y la salida deseada, también conocida como señal de supervisión. En el modelo matemático, cada ejemplo de entrenamiento está representado por una matriz o vector, a veces llamado vector de características, y los datos de entrenamiento están representados por una matriz. A través de la optimización iterativa de una función objetivo, los algoritmos de aprendizaje supervisado aprenden una función que puede usarse para predecir la salida asociada con nuevas entradas.Una función óptima permitirá que el algoritmo determine correctamente la salida para las entradas que no formaban parte de los datos de entrenamiento. Se dice que un algoritmo que mejora la precisión de sus resultados o predicciones a lo largo del tiempo ha aprendido a realizar esa tarea.

Los tipos de algoritmos de aprendizaje supervisado incluyen aprendizaje activo, clasificación y regresión. Los algoritmos de clasificación se usan cuando las salidas están restringidas a un conjunto limitado de valores, y los algoritmos de regresión se usan cuando las salidas pueden tener cualquier valor numérico dentro de un rango. Como ejemplo, para un algoritmo de clasificación que filtra correos electrónicos, la entrada sería un correo electrónico entrante y la salida sería el nombre de la carpeta en la que se archiva el correo electrónico.

El aprendizaje de similitud es un área de aprendizaje automático supervisado estrechamente relacionada con la regresión y la clasificación, pero el objetivo es aprender de ejemplos utilizando una función de similitud que mide qué tan similares o relacionados son dos objetos. Tiene aplicaciones en clasificación, sistemas de recomendación, seguimiento de identidad visual, verificación de rostros y verificación de hablantes.

Aprendizaje sin supervisión

Los algoritmos de aprendizaje no supervisados ​​toman un conjunto de datos que contiene solo entradas y encuentran una estructura en los datos, como agrupar o agrupar puntos de datos. Los algoritmos, por lo tanto, aprenden de datos de prueba que no han sido etiquetados, clasificados o categorizados. En lugar de responder a la retroalimentación, los algoritmos de aprendizaje no supervisados ​​identifican los puntos en común en los datos y reaccionan en función de la presencia o ausencia de dichos puntos en común en cada nuevo dato. Una aplicación central del aprendizaje no supervisado se encuentra en el campo de la estimación de densidad en estadística, como encontrar la función de densidad de probabilidad. Aunque el aprendizaje no supervisado abarca otros dominios que implican resumir y explicar las características de los datos.

El análisis de conglomerados es la asignación de un conjunto de observaciones en subconjuntos (llamados conglomerados) de modo que las observaciones dentro del mismo conglomerado sean similares de acuerdo con uno o más criterios predeterminados, mientras que las observaciones extraídas de diferentes conglomerados sean diferentes. Diferentes técnicas de agrupamiento hacen suposiciones diferentes sobre la estructura de los datos, a menudo definidas por alguna métrica de similitud y evaluadas, por ejemplo, por compacidad interna, o la similitud entre miembros del mismo grupo, y separación, la diferencia entre grupos. Otros métodos se basan en la densidad estimada y la conectividad de gráficos.

Aprendizaje semisupervisado

El aprendizaje semisupervisado se encuentra entre el aprendizaje no supervisado (sin datos de entrenamiento etiquetados) y el aprendizaje supervisado (con datos de entrenamiento completamente etiquetados). A algunos de los ejemplos de capacitación les faltan etiquetas de capacitación, sin embargo, muchos investigadores de aprendizaje automático han descubierto que los datos sin etiqueta, cuando se usan junto con una pequeña cantidad de datos etiquetados, pueden producir una mejora considerable en la precisión del aprendizaje.

En el aprendizaje supervisado débilmente, las etiquetas de entrenamiento son ruidosas, limitadas o imprecisas; sin embargo, estas etiquetas suelen ser más baratas de obtener, lo que da como resultado conjuntos de entrenamiento efectivos más grandes.

Aprendizaje reforzado

El aprendizaje por refuerzo es un área del aprendizaje automático que se ocupa de cómo los agentes de software deben realizar acciones en un entorno para maximizar alguna noción de recompensa acumulativa. Debido a su generalidad, el campo se estudia en muchas otras disciplinas, como la teoría de juegos, la teoría de control, la investigación de operaciones, la teoría de la información, la optimización basada en simulación, los sistemas multiagente, la inteligencia de enjambre, las estadísticas y los algoritmos genéticos. En el aprendizaje automático, el entorno suele representarse como un proceso de decisión de Markov (MDP). Muchos algoritmos de aprendizaje por refuerzo utilizan técnicas de programación dinámica.Los algoritmos de aprendizaje por refuerzo no asumen el conocimiento de un modelo matemático exacto del MDP y se utilizan cuando los modelos exactos no son factibles. Los algoritmos de aprendizaje por refuerzo se utilizan en vehículos autónomos o para aprender a jugar contra un oponente humano.

Reducción de dimensionalidad

La reducción de dimensionalidad es un proceso de reducción del número de variables aleatorias bajo consideración mediante la obtención de un conjunto de variables principales. En otras palabras, es un proceso de reducción de la dimensión del conjunto de características, también llamado "número de características". La mayoría de las técnicas de reducción de dimensionalidad pueden considerarse como eliminación o extracción de características. Uno de los métodos populares de reducción de dimensionalidad es el análisis de componentes principales (PCA). PCA implica cambiar datos de dimensiones superiores (p. ej., 3D) a un espacio más pequeño (p. ej., 2D). Esto da como resultado una dimensión más pequeña de los datos (2D en lugar de 3D), manteniendo todas las variables originales en el modelo sin cambiar los datos. La hipótesis de la variedad propone que los conjuntos de datos de alta dimensión se encuentran a lo largo de variedades de baja dimensión, y muchas técnicas de reducción de la dimensionalidad hacen esta suposición, lo que lleva al área del aprendizaje de la variedad y la regularización de la variedad.

Otros tipos

Se han desarrollado otros enfoques que no encajan perfectamente en esta categorización triple y, a veces, el mismo sistema de aprendizaje automático utiliza más de uno. Por ejemplo, modelado de temas, metaaprendizaje.

A partir de 2020, el aprendizaje profundo se ha convertido en el enfoque dominante para gran parte del trabajo en curso en el campo del aprendizaje automático.

Auto aprendizaje

El autoaprendizaje como paradigma de aprendizaje automático se introdujo en 1982 junto con una red neuronal capaz de autoaprendizaje denominada matriz adaptativa de barra transversal (CAA). Es un aprendizaje sin recompensas externas y sin consejos de maestros externos. El algoritmo de autoaprendizaje CAA calcula, de forma transversal, tanto las decisiones sobre acciones como las emociones (sentimientos) sobre situaciones de consecuencia. El sistema está impulsado por la interacción entre la cognición y la emoción. El algoritmo de autoaprendizaje actualiza una matriz de memoria W =||w(a,s)|| tal que en cada iteración ejecuta la siguiente rutina de aprendizaje automático:

En la situación s realizar una acción a;
 Recibir situaciones de consecuencia s';
 Calcular la emoción de estar en la situación de consecuencia v(s');
 Actualice la memoria de la barra transversal w'(a,s) = w(a,s) + v(s').

Es un sistema con una sola entrada, situación s, y una sola salida, acción (o comportamiento) a. No hay una entrada de refuerzo separada ni una entrada de consejo del entorno. El valor retropropagado (refuerzo secundario) es la emoción hacia la situación de consecuencia. El CAA existe en dos ambientes, uno es el ambiente conductual donde se comporta, y el otro es el ambiente genético, de donde inicialmente y solo una vez recibe emociones iniciales sobre situaciones que se encontrarán en el ambiente conductual. Después de recibir el vector del genoma (especie) del entorno genético, el CAA aprende un comportamiento de búsqueda de objetivos, en un entorno que contiene situaciones deseables e indeseables.

Aprendizaje de características

Varios algoritmos de aprendizaje tienen como objetivo descubrir mejores representaciones de las entradas proporcionadas durante el entrenamiento. Los ejemplos clásicos incluyen análisis de componentes principales y análisis de conglomerados. Los algoritmos de aprendizaje de características, también llamados algoritmos de aprendizaje de representación, a menudo intentan conservar la información en su entrada, pero también la transforman de una manera que la hace útil, a menudo como un paso de preprocesamiento antes de realizar la clasificación o las predicciones. Esta técnica permite la reconstrucción de las entradas provenientes de la distribución generadora de datos desconocida, mientras que no es necesariamente fiel a las configuraciones que son inverosímiles bajo esa distribución. Esto reemplaza la ingeniería de funciones manual y permite que una máquina aprenda las funciones y las use para realizar una tarea específica.

El aprendizaje de características puede ser supervisado o no supervisado. En el aprendizaje de funciones supervisado, las funciones se aprenden utilizando datos de entrada etiquetados. Los ejemplos incluyen redes neuronales artificiales, perceptrones multicapa y aprendizaje de diccionario supervisado. En el aprendizaje de funciones no supervisado, las funciones se aprenden con datos de entrada sin etiquetar. Los ejemplos incluyen el aprendizaje de diccionarios, el análisis de componentes independientes, los codificadores automáticos, la factorización de matrices y varias formas de agrupamiento.

Los múltiples algoritmos de aprendizaje intentan hacerlo bajo la restricción de que la representación aprendida es de baja dimensión. Los algoritmos de codificación dispersa intentan hacerlo bajo la restricción de que la representación aprendida es escasa, lo que significa que el modelo matemático tiene muchos ceros. Los algoritmos de aprendizaje del subespacio multilineal tienen como objetivo aprender representaciones de baja dimensión directamente a partir de representaciones de tensor para datos multidimensionales, sin remodelarlos en vectores de mayor dimensión.Los algoritmos de aprendizaje profundo descubren múltiples niveles de representación, o una jerarquía de características, con características más abstractas de nivel superior definidas en términos de (o generación) de características de nivel inferior. Se ha argumentado que una máquina inteligente es aquella que aprende una representación que desentraña los factores subyacentes de variación que explican los datos observados.

El aprendizaje de características está motivado por el hecho de que las tareas de aprendizaje automático, como la clasificación, a menudo requieren una entrada que sea matemática y computacionalmente conveniente para procesar. Sin embargo, los datos del mundo real, como imágenes, videos y datos sensoriales, no han cedido ante los intentos de definir algorítmicamente características específicas. Una alternativa es descubrir tales características o representaciones a través del examen, sin depender de algoritmos explícitos.

Aprendizaje de diccionario escaso

El aprendizaje de diccionario disperso es un método de aprendizaje de funciones en el que un ejemplo de entrenamiento se representa como una combinación lineal de funciones básicas y se supone que es una matriz dispersa. El método es fuertemente NP-duro y difícil de resolver aproximadamente.Un método heurístico popular para el aprendizaje de diccionarios escasos es el algoritmo K-SVD. El aprendizaje de diccionario escaso se ha aplicado en varios contextos. En la clasificación, el problema es determinar la clase a la que pertenece un ejemplo de entrenamiento nunca antes visto. Para un diccionario en el que ya se ha creado cada clase, se asocia un nuevo ejemplo de entrenamiento con la clase que está mejor representada escasamente por el diccionario correspondiente. El aprendizaje de diccionario escaso también se ha aplicado en la eliminación de ruido de imágenes. La idea clave es que un parche de imagen limpio puede representarse escasamente mediante un diccionario de imágenes, pero el ruido no.

Detección de anomalías

En la minería de datos, la detección de anomalías, también conocida como detección de valores atípicos, es la identificación de elementos, eventos u observaciones raros que generan sospechas al diferir significativamente de la mayoría de los datos. Por lo general, los artículos anómalos representan un problema como un fraude bancario, un defecto estructural, problemas médicos o errores en un texto. Las anomalías se denominan valores atípicos, novedades, ruido, desviaciones y excepciones.

En particular, en el contexto del abuso y la detección de intrusiones en la red, los objetos interesantes a menudo no son objetos raros, sino ráfagas inesperadas de inactividad. Este patrón no se adhiere a la definición estadística común de un valor atípico como un objeto raro, y muchos métodos de detección de valores atípicos (en particular, algoritmos no supervisados) fallarán con dichos datos a menos que se hayan agregado de manera adecuada. En cambio, un algoritmo de análisis de conglomerados puede detectar los microconglomerados formados por estos patrones.

Existen tres amplias categorías de técnicas de detección de anomalías. Las técnicas de detección de anomalías no supervisadas detectan anomalías en un conjunto de datos de prueba sin etiquetar bajo el supuesto de que la mayoría de las instancias en el conjunto de datos son normales, al buscar instancias que parecen ajustarse menos al resto del conjunto de datos. Las técnicas supervisadas de detección de anomalías requieren un conjunto de datos que se haya etiquetado como "normal" y "anormal" e implica el entrenamiento de un clasificador (la diferencia clave con muchos otros problemas de clasificación estadística es la naturaleza inherentemente desequilibrada de la detección de valores atípicos). Las técnicas de detección de anomalías semisupervisadas construyen un modelo que representa el comportamiento normal a partir de un conjunto de datos de entrenamiento normal dado y luego prueban la probabilidad de que el modelo genere una instancia de prueba.

Aprendizaje de robots

El aprendizaje de robots está inspirado en una multitud de métodos de aprendizaje automático, comenzando por el aprendizaje supervisado, el aprendizaje por refuerzo y, finalmente, el metaaprendizaje (p. ej., MAML).

Reglas de asociación

El aprendizaje de reglas de asociación es un método de aprendizaje automático basado en reglas para descubrir relaciones entre variables en grandes bases de datos. Su objetivo es identificar reglas sólidas descubiertas en bases de datos utilizando alguna medida de "interés".

El aprendizaje automático basado en reglas es un término general para cualquier método de aprendizaje automático que identifica, aprende o desarrolla "reglas" para almacenar, manipular o aplicar conocimientos. La característica definitoria de un algoritmo de aprendizaje automático basado en reglas es la identificación y utilización de un conjunto de reglas relacionales que representan colectivamente el conocimiento capturado por el sistema. Esto contrasta con otros algoritmos de aprendizaje automático que comúnmente identifican un modelo singular que se puede aplicar universalmente a cualquier instancia para hacer una predicción. Los enfoques de aprendizaje automático basados ​​en reglas incluyen sistemas de clasificación de aprendizaje, aprendizaje de reglas de asociación y sistemas inmunológicos artificiales.

Basados ​​en el concepto de reglas estrictas, Rakesh Agrawal, Tomasz Imieliński y Arun Swami introdujeron reglas de asociación para descubrir regularidades entre productos en datos de transacciones a gran escala registrados por sistemas de punto de venta (POS) en supermercados. Por ejemplo, la regla{displaystyle {mathrm {cebollas, papas} }Rightarrow {mathrm {hamburguesa} }}{{mathrm {cebollas, papas}}}Rightarrow {{mathrm {hamburguesa}}}encontrado en los datos de ventas de un supermercado indicaría que si un cliente compra cebollas y papas juntas, es probable que también compre carne para hamburguesas. Dicha información se puede utilizar como base para decisiones sobre actividades de marketing, como precios promocionales o colocación de productos. Además del análisis de la canasta de mercado, las reglas de asociación se emplean hoy en día en áreas de aplicación que incluyen minería de uso web, detección de intrusos, producción continua y bioinformática. A diferencia de la minería de secuencias, el aprendizaje de reglas de asociación generalmente no considera el orden de los elementos dentro de una transacción o entre transacciones.

Los sistemas de clasificación de aprendizaje (LCS) son una familia de algoritmos de aprendizaje automático basados ​​en reglas que combinan un componente de descubrimiento, generalmente un algoritmo genético, con un componente de aprendizaje, que realiza aprendizaje supervisado, aprendizaje por refuerzo o aprendizaje no supervisado. Buscan identificar un conjunto de reglas dependientes del contexto que almacenan y aplican colectivamente el conocimiento por partes para hacer predicciones.

La programación lógica inductiva (ILP) es un enfoque para el aprendizaje de reglas que utiliza la programación lógica como una representación uniforme para ejemplos de entrada, conocimientos previos e hipótesis. Dada una codificación del conocimiento previo conocido y un conjunto de ejemplos representados como una base de datos lógica de hechos, un sistema ILP derivará un programa lógico hipotético que implica todos los ejemplos positivos y ninguno negativo. La programación inductiva es un campo relacionado que considera cualquier tipo de lenguaje de programación para representar hipótesis (y no solo programación lógica), como los programas funcionales.

La programación lógica inductiva es particularmente útil en bioinformática y procesamiento de lenguaje natural. Gordon Plotkin y Ehud Shapiro sentaron las bases teóricas iniciales para el aprendizaje automático inductivo en un entorno lógico. Shapiro construyó su primera implementación (Model Inference System) en 1981: un programa Prolog que infirió inductivamente programas lógicos a partir de ejemplos positivos y negativos. El término inductivo aquí se refiere a la inducción filosófica, lo que sugiere una teoría para explicar los hechos observados, en lugar de la inducción matemática, demostrando una propiedad para todos los miembros de un conjunto bien ordenado.

Modelos

Realizar el aprendizaje automático implica crear un modelo, que se entrena en algunos datos de entrenamiento y luego puede procesar datos adicionales para hacer predicciones. Se han utilizado e investigado varios tipos de modelos para los sistemas de aprendizaje automático.

Redes neuronales artificiales

Las redes neuronales artificiales (ANN), o sistemas conexionistas, son sistemas informáticos vagamente inspirados en las redes neuronales biológicas que constituyen los cerebros de los animales. Dichos sistemas "aprenden" a realizar tareas considerando ejemplos, generalmente sin estar programados con ninguna regla específica de tareas.

Una ANN es un modelo basado en una colección de unidades o nodos conectados llamados "neuronas artificiales", que modelan vagamente las neuronas en un cerebro biológico. Cada conexión, como las sinapsis en un cerebro biológico, puede transmitir información, una "señal", de una neurona artificial a otra. Una neurona artificial que recibe una señal puede procesarla y luego enviar señales a otras neuronas artificiales conectadas a ella. En las implementaciones comunes de ANN, la señal en una conexión entre neuronas artificiales es un número real, y la salida de cada neurona artificial se calcula mediante alguna función no lineal de la suma de sus entradas. Las conexiones entre las neuronas artificiales se denominan "bordes". Las neuronas artificiales y los bordes suelen tener un peso que se ajusta a medida que avanza el aprendizaje. El peso aumenta o disminuye la fuerza de la señal en una conexión. Las neuronas artificiales pueden tener un umbral tal que la señal solo se envíe si la señal agregada cruza ese umbral. Por lo general, las neuronas artificiales se agregan en capas. Diferentes capas pueden realizar diferentes tipos de transformaciones en sus entradas. Las señales viajan desde la primera capa (la capa de entrada) hasta la última capa (la capa de salida), posiblemente después de atravesar las capas varias veces.

El objetivo original del enfoque ANN era resolver problemas de la misma manera que lo haría un cerebro humano. Sin embargo, con el tiempo, la atención se desplazó hacia la realización de tareas específicas, lo que provocó desviaciones de la biología. Las redes neuronales artificiales se han utilizado en una variedad de tareas, que incluyen visión por computadora, reconocimiento de voz, traducción automática, filtrado de redes sociales, juegos de mesa y videojuegos y diagnóstico médico.

El aprendizaje profundo consiste en múltiples capas ocultas en una red neuronal artificial. Este enfoque trata de modelar la forma en que el cerebro humano procesa la luz y el sonido en visión y audición. Algunas aplicaciones exitosas del aprendizaje profundo son la visión por computadora y el reconocimiento de voz.

Árboles de decisión

El aprendizaje del árbol de decisiones utiliza un árbol de decisiones como modelo predictivo para pasar de las observaciones sobre un elemento (representado en las ramas) a las conclusiones sobre el valor objetivo del elemento (representado en las hojas). Es uno de los enfoques de modelado predictivo utilizados en estadísticas, minería de datos y aprendizaje automático. Los modelos de árbol en los que la variable de destino puede tomar un conjunto discreto de valores se denominan árboles de clasificación; en estas estructuras de árbol, las hojas representan etiquetas de clase y las ramas representan conjunciones de características que conducen a esas etiquetas de clase. Los árboles de decisión en los que la variable objetivo puede tomar valores continuos (normalmente números reales) se denominan árboles de regresión. En el análisis de decisiones, se puede usar un árbol de decisiones para representar visual y explícitamente las decisiones y la toma de decisiones. En la minería de datos, un árbol de decisión describe los datos,

Máquinas de vectores de soporte

Las máquinas de vectores de soporte (SVM), también conocidas como redes de vectores de soporte, son un conjunto de métodos de aprendizaje supervisado relacionados que se utilizan para la clasificación y la regresión. Dado un conjunto de ejemplos de entrenamiento, cada uno marcado como perteneciente a una de dos categorías, un algoritmo de entrenamiento SVM construye un modelo que predice si un nuevo ejemplo cae en una categoría u otra. Un algoritmo de entrenamiento de SVM es un clasificador lineal, binario y no probabilístico, aunque existen métodos como el escalado de Platt para usar SVM en una configuración de clasificación probabilística. Además de realizar una clasificación lineal, las SVM pueden realizar de manera eficiente una clasificación no lineal utilizando lo que se denomina el truco del kernel, mapeando implícitamente sus entradas en espacios de características de alta dimensión.

Análisis de regresión

El análisis de regresión abarca una gran variedad de métodos estadísticos para estimar la relación entre las variables de entrada y sus características asociadas. Su forma más común es la regresión lineal, en la que se dibuja una sola línea para que se ajuste mejor a los datos dados de acuerdo con un criterio matemático, como los mínimos cuadrados ordinarios. Este último a menudo se amplía mediante métodos de regularización (matemáticas) para mitigar el sobreajuste y el sesgo, como en la regresión de cresta. Cuando se trata de problemas no lineales, los modelos de referencia incluyen la regresión polinomial (por ejemplo, utilizada para el ajuste de la línea de tendencia en Microsoft Excel), la regresión logística (a menudo utilizada en la clasificación estadística) o incluso la regresión kernel, que introduce la no linealidad aprovechando del truco del kernel para mapear implícitamente las variables de entrada a un espacio de mayor dimensión.

Redes bayesianas

Una red bayesiana, red de creencias o modelo gráfico acíclico dirigido es un modelo gráfico probabilístico que representa un conjunto de variables aleatorias y su independencia condicional con un gráfico acíclico dirigido (DAG). Por ejemplo, una red bayesiana podría representar las relaciones probabilísticas entre enfermedades y síntomas. Dados los síntomas, la red se puede utilizar para calcular las probabilidades de la presencia de diversas enfermedades. Existen algoritmos eficientes que realizan inferencia y aprendizaje. Las redes bayesianas que modelan secuencias de variables, como señales de voz o secuencias de proteínas, se denominan redes bayesianas dinámicas. Las generalizaciones de las redes bayesianas que pueden representar y resolver problemas de decisión bajo incertidumbre se denominan diagramas de influencia.

Algoritmos genéticos

Un algoritmo genético (GA) es un algoritmo de búsqueda y una técnica heurística que imita el proceso de selección natural, utilizando métodos como la mutación y el cruce para generar nuevos genotipos con la esperanza de encontrar buenas soluciones a un problema determinado. En el aprendizaje automático, los algoritmos genéticos se utilizaron en las décadas de 1980 y 1990. Por el contrario, las técnicas de aprendizaje automático se han utilizado para mejorar el rendimiento de los algoritmos genéticos y evolutivos.

Modelos de entrenamiento

Por lo general, los modelos de aprendizaje automático requieren una gran cantidad de datos confiables para que los modelos realicen predicciones precisas. Al entrenar un modelo de aprendizaje automático, los ingenieros de aprendizaje automático deben apuntar y recopilar una muestra de datos grande y representativa. Los datos del conjunto de entrenamiento pueden ser tan variados como un corpus de texto, una colección de imágenes, datos de sensores y datos recopilados de usuarios individuales de un servicio. El sobreajuste es algo a tener en cuenta al entrenar un modelo de aprendizaje automático. Los modelos entrenados derivados de datos sesgados o no evaluados pueden generar predicciones sesgadas o no deseadas. Los modelos sesgados pueden generar resultados perjudiciales, lo que aumenta los impactos negativos para la sociedad o los objetivos. El sesgo algorítmico es un resultado potencial de los datos que no están completamente preparados para el entrenamiento.

Aprendizaje federado

El aprendizaje federado es una forma adaptada de inteligencia artificial distribuida para entrenar modelos de aprendizaje automático que descentraliza el proceso de entrenamiento, lo que permite mantener la privacidad de los usuarios al no tener que enviar sus datos a un servidor centralizado. Esto también aumenta la eficiencia al descentralizar el proceso de capacitación a muchos dispositivos. Por ejemplo, Gboard utiliza el aprendizaje automático federado para entrenar modelos de predicción de consultas de búsqueda en los teléfonos móviles de los usuarios sin tener que enviar búsquedas individuales a Google.

Aplicaciones

Hay muchas aplicaciones para el aprendizaje automático, que incluyen:

En 2006, el proveedor de servicios de medios Netflix realizó el primer concurso "Premio Netflix" para encontrar un programa que predijera mejor las preferencias de los usuarios y mejorara la precisión de su algoritmo de recomendación de películas Cinematch existente en al menos un 10%. Un equipo conjunto formado por investigadores de AT&T Labs-Research en colaboración con los equipos Big Chaos y Pragmatic Theory construyeron un modelo conjunto para ganar el Gran Premio en 2009 por $1 millón. Poco después de que se otorgara el premio, Netflix se dio cuenta de que las calificaciones de los espectadores no eran los mejores indicadores de sus patrones de visualización ("todo es una recomendación") y cambió su motor de recomendaciones en consecuencia. En 2010, The Wall Street Journal escribió sobre la firma Rebellion Research y su uso del aprendizaje automático para predecir la crisis financiera.En 2012, el cofundador de Sun Microsystems, Vinod Khosla, predijo que el 80 % de los trabajos de los médicos se perderían en las próximas dos décadas debido al software de diagnóstico médico de aprendizaje automático automatizado. En 2014, se informó que se había aplicado un algoritmo de aprendizaje automático en el campo de la historia del arte para estudiar pinturas de bellas artes y que puede haber revelado influencias no reconocidas previamente entre los artistas. En 2019, Springer Nature publicó el primer libro de investigación creado con aprendizaje automático. En 2020, la tecnología de aprendizaje automático se utilizó para ayudar a realizar diagnósticos y ayudar a los investigadores a desarrollar una cura para el COVID-19. El aprendizaje automático se aplica recientemente para predecir el comportamiento ecológico del ser humano.Recientemente, la tecnología de aprendizaje automático también se aplica para optimizar el rendimiento y el comportamiento térmico de los teléfonos inteligentes en función de la interacción del usuario con el teléfono.

Limitaciones

Aunque el aprendizaje automático ha sido transformador en algunos campos, los programas de aprendizaje automático a menudo no logran los resultados esperados. Las razones de esto son numerosas: falta de datos (adecuados), falta de acceso a los datos, sesgo de datos, problemas de privacidad, tareas y algoritmos mal elegidos, herramientas y personas equivocadas, falta de recursos y problemas de evaluación.

En 2018, un automóvil autónomo de Uber no pudo detectar a un peatón, que murió después de una colisión. Los intentos de utilizar el aprendizaje automático en el cuidado de la salud con el sistema IBM Watson fracasaron incluso después de años y miles de millones de dólares invertidos.

El aprendizaje automático se ha utilizado como una estrategia para actualizar la evidencia relacionada con la revisión sistemática y el aumento de la carga del revisor relacionado con el crecimiento de la literatura biomédica. Si bien ha mejorado con conjuntos de entrenamiento, aún no se ha desarrollado lo suficiente como para reducir la carga de trabajo sin limitar la sensibilidad necesaria para la investigación de hallazgos en sí.

Parcialidad

Los enfoques de aprendizaje automático en particular pueden sufrir diferentes sesgos de datos. Es posible que un sistema de aprendizaje automático capacitado específicamente en clientes actuales no pueda predecir las necesidades de nuevos grupos de clientes que no están representados en los datos de capacitación. Cuando se entrena con datos creados por el hombre, es probable que el aprendizaje automático detecte los sesgos constitucionales e inconscientes que ya están presentes en la sociedad. Se ha demostrado que los modelos de lenguaje aprendidos de los datos contienen sesgos similares a los humanos. Se ha descubierto que los sistemas de aprendizaje automático utilizados para la evaluación del riesgo criminal están sesgados contra las personas negras. En 2015, las fotos de Google a menudo etiquetaban a las personas negras como gorilas,y en 2018 esto aún no estaba bien resuelto, pero según los informes, Google todavía estaba usando la solución alternativa para eliminar a todos los gorilas de los datos de entrenamiento y, por lo tanto, no pudo reconocer a los gorilas reales en absoluto. Se han encontrado problemas similares con el reconocimiento de personas que no son blancas en muchos otros sistemas. En 2016, Microsoft probó un chatbot que aprendió de Twitter y rápidamente detectó lenguaje racista y sexista. Debido a tales desafíos, el uso eficaz del aprendizaje automático puede tardar más en adoptarse en otros dominios.Los científicos de inteligencia artificial, incluida Fei-Fei Li, expresan cada vez más la preocupación por la equidad en el aprendizaje automático, es decir, la reducción del sesgo en el aprendizaje automático y la promoción de su uso para el bien humano, quien les recuerda a los ingenieros que "no hay nada artificial en la IA... es inspirado por personas, es creado por personas y, lo más importante, impacta a las personas. Es una herramienta poderosa que apenas estamos comenzando a comprender, y esa es una responsabilidad profunda".

Sobreajuste

Decidir sobre una teoría mala y demasiado compleja manipulada para ajustarse a todos los datos de entrenamiento anteriores se conoce como sobreajuste. Muchos sistemas intentan reducir el sobreajuste recompensando una teoría según lo bien que se ajuste a los datos, pero penalizándola según su complejidad.

Otras limitaciones

Los alumnos también pueden decepcionarse al "aprender la lección equivocada". Un ejemplo de juguete es que un clasificador de imágenes entrenado solo en imágenes de caballos marrones y gatos negros podría concluir que es probable que todas las manchas marrones sean caballos. Un ejemplo del mundo real es que, a diferencia de los humanos, los clasificadores de imágenes actuales a menudo no emiten juicios principalmente a partir de la relación espacial entre los componentes de la imagen, y aprenden relaciones entre píxeles que los humanos ignoran, pero que aún se correlacionan con imágenes de ciertos tipos de objetos reales. La modificación de estos patrones en una imagen legítima puede dar como resultado imágenes "adversarias" que el sistema clasifica erróneamente.

Las vulnerabilidades antagónicas también pueden dar lugar a sistemas no lineales o a perturbaciones que no siguen patrones. Algunos sistemas son tan frágiles que cambiar un solo píxel adversario induce previsiblemente una clasificación errónea.

Evaluaciones modelo

La clasificación de los modelos de aprendizaje automático se puede validar mediante técnicas de estimación de precisión como el método de retención, que divide los datos en un conjunto de entrenamiento y prueba (convencionalmente, 2/3 del conjunto de entrenamiento y 1/3 de la designación del conjunto de prueba) y evalúa el rendimiento del modelo de entrenamiento. en el conjunto de prueba. En comparación, el método de validación cruzada K-fold divide aleatoriamente los datos en K subconjuntos y luego se realizan K experimentos, cada uno considerando respectivamente 1 subconjunto para evaluación y los K-1 subconjuntos restantes para entrenar el modelo. Además de los métodos de retención y validación cruzada, se puede usar bootstrap, que muestrea n instancias con reemplazo del conjunto de datos, para evaluar la precisión del modelo.

Además de la precisión general, los investigadores informan con frecuencia la sensibilidad y la especificidad, es decir, la tasa de verdaderos positivos (TPR) y la tasa de verdaderos negativos (TNR), respectivamente. De manera similar, los investigadores a veces informan la tasa de falsos positivos (FPR) así como la tasa de falsos negativos (FNR). Sin embargo, estas tasas son razones que no revelan sus numeradores y denominadores. La característica operativa total (TOC) es un método eficaz para expresar la capacidad de diagnóstico de un modelo. TOC muestra los numeradores y denominadores de las tasas mencionadas anteriormente, por lo que TOC proporciona más información que la característica operativa del receptor (ROC) comúnmente utilizada y el área asociada de ROC bajo la curva (AUC).

Ética

El aprendizaje automático plantea una serie de cuestiones éticas. Los sistemas que están entrenados en conjuntos de datos recopilados con sesgos pueden exhibir estos sesgos en el uso (sesgo algorítmico), digitalizando así los prejuicios culturales. Por ejemplo, en 1988, la Comisión para la Igualdad Racial del Reino Unido descubrió que la Escuela de Medicina de St. George había estado usando un programa de computadora entrenado a partir de datos del personal de admisiones anterior y este programa había rechazado a casi 60 candidatos que resultaron ser mujeres o no tenían -Nombres que suenan europeos. El uso de datos de contratación laboral de una empresa con políticas de contratación racistas puede conducir a un sistema de aprendizaje automático que duplique el sesgo al calificar a los solicitantes de empleo por similitud con los solicitantes exitosos anteriores.La recopilación responsable de datos y la documentación de las reglas algorítmicas utilizadas por un sistema es, por lo tanto, una parte fundamental del aprendizaje automático.

La IA puede estar bien equipada para tomar decisiones en campos técnicos, que dependen en gran medida de datos e información histórica. Estas decisiones se basan en la objetividad y el razonamiento lógico. Debido a que los lenguajes humanos contienen sesgos, las máquinas entrenadas en corpus de lenguaje necesariamente también aprenderán estos sesgos.

Otras formas de desafíos éticos, no relacionados con sesgos personales, se ven en el cuidado de la salud. Hay preocupaciones entre los profesionales de la salud de que estos sistemas podrían no estar diseñados en interés del público sino como máquinas generadoras de ingresos. Esto es especialmente cierto en los Estados Unidos, donde existe un dilema ético de larga data de mejorar la atención médica, pero también aumentar las ganancias. Por ejemplo, los algoritmos podrían diseñarse para proporcionar a los pacientes pruebas o medicamentos innecesarios en los que los propietarios del algoritmo tienen intereses. Existe la posibilidad de que el aprendizaje automático en el cuidado de la salud brinde a los profesionales una herramienta adicional para diagnosticar, medicar y planificar vías de recuperación para los pacientes, pero esto requiere que se mitiguen estos sesgos.

Hardware

Desde la década de 2010, los avances tanto en los algoritmos de aprendizaje automático como en el hardware informático han dado lugar a métodos más eficientes para entrenar redes neuronales profundas (un subdominio particular y estrecho del aprendizaje automático) que contienen muchas capas de unidades ocultas no lineales. Para 2019, las unidades de procesamiento gráfico (GPU), a menudo con mejoras específicas de IA, habían desplazado a las CPU como el método dominante para entrenar IA en la nube comercial a gran escala. OpenAI estimó el cómputo de hardware utilizado en los proyectos de aprendizaje profundo más grandes desde AlexNet (2012) hasta AlphaZero (2017), y encontró un aumento de 300 000 veces en la cantidad de cómputo requerido, con una línea de tendencia de tiempo de duplicación de 3,4 meses.

Redes neuronales neuromórficas/físicas

Una red neuronal física o computadora neuromórfica es un tipo de red neuronal artificial en la que se utiliza un material ajustable eléctricamente para emular la función de una sinapsis neuronal. La red neuronal "física" se usa para enfatizar la confianza en el hardware físico que se usa para emular neuronas en oposición a los enfoques basados ​​en software. Más generalmente, el término es aplicable a otras redes neuronales artificiales en las que se utiliza un memristor u otro material de resistencia ajustable eléctricamente para emular una sinapsis neuronal.

Aprendizaje automático integrado

El aprendizaje automático integrado es un subcampo del aprendizaje automático, donde el modelo de aprendizaje automático se ejecuta en sistemas integrados con recursos informáticos limitados, como computadoras portátiles, dispositivos periféricos y microcontroladores. La ejecución del modelo de aprendizaje automático en dispositivos integrados elimina la necesidad de transferir y almacenar datos en servidores en la nube para su posterior procesamiento, lo que reduce las violaciones de datos y las filtraciones de privacidad que ocurren debido a la transferencia de datos, y también minimiza el robo de propiedad intelectual, datos personales y secretos comerciales. El aprendizaje automático integrado podría aplicarse a través de varias técnicas, incluida la aceleración de hardware, el uso de computación aproximada, la optimización de modelos de aprendizaje automático y muchas más.