Aprendizaje automático

El aprendizaje automático (MA) es un campo de inteligencia artificial que utiliza técnicas estadísticas para que los sistemas informáticos puedan «aprender» (por ejemplo, mejorar progresivamente el rendimiento en una tarea específica) a partir de los datos, sin ser programados explícitamente.

El aprendizaje automático de nombres fue acuñado en 1959 por Arthur Samuel. El aprendizaje automático explora el estudio y la construcción de algoritmos que pueden aprender de y hacer predicciones sobre los datos; dichos algoritmos se superan siguiendo instrucciones estrictamente estáticas del programa al hacer predicciones o decisiones basadas en datos, mediante la construcción de un modelo a partir de entradas de muestra. El aprendizaje automático se emplea en una variedad de tareas informáticas en las que diseñar y programar algoritmos explícitos con buen rendimiento es difícil o inviable; las aplicaciones de ejemplo incluyen filtrado de correo electrónico, detección de intrusos en la red y visión por computadora.

El aprendizaje automático está estrechamente relacionado con (y con frecuencia se superpone con) las estadísticas computacionales, que también se centra en la elaboración de predicciones mediante el uso de computadoras. Tiene fuertes vínculos con la optimización matemática, que proporciona métodos, teoría y dominios de aplicación al campo. El aprendizaje automático a veces se combina con la minería de datos, donde el último subcampo se enfoca más en el análisis exploratorio de datos y se conoce como aprendizaje no supervisado.

Dentro del campo del análisis de datos, el aprendizaje automático es un método utilizado para diseñar modelos complejos y algoritmos que se prestan a la predicción; En uso comercial, esto se conoce como análisis predictivo. Estos modelos analíticos permiten a los investigadores, científicos de datos, ingenieros y analistas «producir decisiones y resultados confiables y repetibles» y descubrir «ideas ocultas» a través del aprendizaje de relaciones históricas y tendencias en los datos.

Visión general
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 rendimiento P si su desempeño en las tareas en T, medido por P, mejora con la experiencia E. » Esta definición de las tareas en las que se refiere 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 «Computing Machinery and Intelligence», en el que aparece la pregunta «¿Pueden las máquinas pensar?» se reemplaza con la pregunta «¿Pueden las máquinas hacer lo que nosotros (como entidades pensantes) podemos hacer?». En la propuesta de Turing, se exponen las diversas características que podría poseer una máquina pensante y las diversas implicaciones en la construcción de una.

Tareas de aprendizaje automático

Las tareas de aprendizaje automático se clasifican típicamente en varias categorías amplias:

Aprendizaje supervisado: la computadora se presenta con entradas de ejemplo y sus salidas deseadas, dadas por un «maestro», y el objetivo es aprender una regla general que asigne entradas a salidas. Como casos especiales, la señal de entrada solo puede estar parcialmente disponible o restringida a retroalimentación especial.
Aprendizaje semi-supervisado: la computadora recibe solo una señal de entrenamiento incompleta: falta un conjunto de entrenamiento con algunas (a menudo muchas) de las salidas objetivo.
Aprendizaje activo: la computadora solo puede obtener etiquetas de entrenamiento para un conjunto limitado de instancias (basado en un presupuesto), y también tiene que optimizar su elección de objetos para adquirir etiquetas. Cuando se utilizan de forma interactiva, se pueden presentar al usuario para el etiquetado.
Aprendizaje no supervisado: no se asignan etiquetas al algoritmo de aprendizaje, dejándolo solo para encontrar la estructura en su entrada. El aprendizaje no supervisado puede ser un objetivo en sí mismo (descubrir patrones ocultos en los datos) o un medio hacia un fin (aprendizaje de características).
Aprendizaje de refuerzo: los datos (en forma de recompensas y castigos) se dan solo como retroalimentación a las acciones del programa en un entorno dinámico, como conducir un vehículo o jugar un juego contra un oponente.

Aplicaciones de aprendizaje automático.
Otra categorización de las tareas de aprendizaje automático surge cuando uno considera el resultado deseado de un sistema aprendido por máquina:
En la clasificación, las entradas se dividen en dos o más clases, y el alumno debe producir un modelo que asigne entradas invisibles a una o más (clasificación de múltiples etiquetas) de estas clases. Esto es típicamente abordado de una manera supervisada. El filtrado de spam es un ejemplo de clasificación, donde las entradas son mensajes de correo electrónico (u otros) y las clases son «spam» y «no spam».
En regresión, también un problema supervisado, las salidas son continuas en lugar de discretas.
En la agrupación en clúster, un conjunto de entradas se dividirá en grupos. A diferencia de la clasificación, los grupos no se conocen de antemano, por lo que esta tarea suele ser una tarea no supervisada.
La estimación de densidad encuentra la distribución de entradas en algún espacio.
La reducción de la dimensión simplifica las entradas al mapearlas en un espacio de dimensión inferior. El modelado de temas es un problema relacionado, donde un programa recibe una lista de documentos en lenguaje humano y se encarga de averiguar qué documentos cubren temas similares.

Entre otras categorías de problemas de aprendizaje automático, aprender a aprender aprende su propio sesgo inductivo basado en la experiencia anterior. El aprendizaje evolutivo, elaborado para el aprendizaje de robots, genera sus propias secuencias (también llamadas currículo) de situaciones de aprendizaje para adquirir repertorios de habilidades novedosas a través de la autoexploración autónoma y la interacción social con maestros humanos y el uso de mecanismos de orientación como aprendizaje activo, maduración, motricidad. Sinergias, e imitaciones.

Historia y relaciones con otros campos.
Arthur Samuel, un pionero estadounidense en el campo de los juegos de computadora y la inteligencia artificial, acuñó el término «Aprendizaje automático» en 1959 mientras trabajaba en IBM.Como un esfuerzo científico, el aprendizaje automático surgió de la búsqueda de inteligencia artificial. Ya 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 luego se denominaron «redes neuronales»; estos fueron en su mayoría perceptrones y otros modelos que luego se descubrieron como reinvenciones de los modelos lineales de estadística generalizados. También se empleó el razonamiento probabilístico, especialmente en el diagnóstico médico automatizado.

Sin embargo, un énfasis creciente en el enfoque lógico y basado en el conocimiento causó una ruptura entre la inteligencia artificial 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 fuera de favor. El trabajo sobre aprendizaje simbólico / basado en el conocimiento continuó dentro de la inteligencia artificial, lo que llevó a la programación de lógica inductiva, pero la línea de investigación más estadística se encontraba ahora fuera del campo de la inteligencia artificial propiamente dicha, en reconocimiento de patrones y recuperación de información. La investigación sobre redes neuronales había sido abandonada por la inteligencia artificial y la informática casi al mismo tiempo.Esta línea, también, fue continuada fuera del campo AI / CS, como «conexionismo», por investigadores de otras disciplinas, incluyendo Hopfield, Rumelhart y Hinton. Su principal éxito se produjo a mediados de la década de 1980 con la reinvención de la propagación hacia atrás.

El aprendizaje automático, reorganizado como un campo separado, comenzó a florecer en los años noventa. El campo cambió su objetivo de lograr inteligencia artificial para abordar problemas resueltos de naturaleza práctica. Alejó el enfoque de los enfoques simbólicos que había heredado de la inteligencia artificial y hacia los métodos y modelos tomados de la estadística y la teoría de la probabilidad. También se benefició de la creciente disponibilidad de información digitalizada y de la capacidad de distribuirla a través de Internet.

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 centra en la predicción, en función de las propiedades conocidas aprendidas de los datos de capacitación, la minería de datos se centra en el descubrimiento de propiedades (previamente) desconocidas en los datos (esto es El paso de análisis del descubrimiento de conocimiento en 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 extracción 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 excepción importante) proviene de los supuestos básicos con los que trabajan: en el aprendizaje automático, el desempeño generalmente se evalúa con respecto a la capacidad de reproducir el 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 desconocido. Evaluado con respecto al conocimiento conocido, un método no informado (no supervisado) será fácilmente superado 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 los datos de entrenamiento.

El aprendizaje automático también tiene vínculos íntimos con la optimización: muchos problemas de aprendizaje se formulan como minimización de alguna función de pérdida en un conjunto de ejemplos de capacitación. 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 están entrenados para predecir correctamente las etiquetas preasignadas de un conjunto de ejemplos). La diferencia entre los dos campos surge del objetivo de la generalización: si bien 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 invisibles.

Relación con las estadísticas
El aprendizaje automático y las estadísticas son campos estrechamente relacionados. Según Michael I. Jordan, las ideas de aprendizaje automático, desde principios metodológicos hasta herramientas teóricas, han tenido una larga historia prehistórica en estadística. También sugirió el término ciencia de datos como un marcador de posición para llamar al campo general.

Leo Breiman distinguió dos paradigmas de modelado estadístico: el modelo de datos y el modelo algorítmico, en donde «modelo algorítmico» significa más o menos los algoritmos de aprendizaje automático como el bosque aleatorio.

Algunos estadísticos han adoptado métodos de aprendizaje automático, lo que lleva a un campo combinado al 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 desempeñarse con precisión en tareas / ejemplos nuevos e invisibles después de haber experimentado un conjunto de datos de aprendizaje. Los ejemplos de capacitación provienen de una distribución de probabilidad generalmente desconocida (considerada representativa del espacio de ocurrencias) y el alumno tiene que construir un modelo general sobre este espacio que le permita producir predicciones suficientemente precisas en casos nuevos.

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 ofrece garantías del rendimiento de los algoritmos. En cambio, los límites probabilísticos en el rendimiento son bastante comunes. La descomposición sesgo-varianza es una forma de cuantificar el error de generalización.

Para el mejor desempeño 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 tiene información sobre 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 un ajuste excesivo y la generalización será más pobre.

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

Enfoques

Árbol de decisiones de aprendizaje
El aprendizaje en el árbol de decisión utiliza un árbol de decisión como modelo predictivo, que asigna las observaciones sobre un elemento a las conclusiones sobre el valor objetivo del elemento.

Aprendizaje de reglas de asociación
El aprendizaje de reglas de asociación es un método para descubrir relaciones interesantes entre variables en grandes bases de datos.

Redes neuronales artificiales
Un algoritmo de aprendizaje de redes neuronales artificiales (ANN), generalmente llamado «red neuronal» (NN), es un algoritmo de aprendizaje que está vagamente inspirado en las redes neuronales biológicas. Los cálculos se estructuran en términos de un grupo interconectado de neuronas artificiales, procesando información utilizando un enfoque conexionista para el cálculo. Las redes neuronales modernas son herramientas de modelado de datos estadísticos no lineales.Generalmente se usan para modelar relaciones complejas entre entradas y salidas, para encontrar patrones en los datos o para capturar la estructura estadística en una distribución de probabilidad conjunta desconocida entre las variables observadas.

Aprendizaje profundo
La caída de los precios del hardware y el desarrollo de GPU para uso personal en los últimos años han contribuido al desarrollo del concepto de aprendizaje profundo que consiste en múltiples capas ocultas en una red neuronal artificial. Este enfoque trata de modelar la manera 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 artificial y el reconocimiento de voz.

Programación lógica inductiva
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, conocimiento de fondo e hipótesis. Dada una codificación del conocimiento de fondo 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 incluye todos los ejemplos positivos y no negativos. 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.

Máquinas de vectores de apoyo
Las máquinas de vectores de soporte (SVM) 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 dentro de una categoría u otra.

Agrupación
El análisis de conglomerados es la asignación de un conjunto de observaciones en subconjuntos (denominados conglomerados), de modo que las observaciones dentro del mismo conglomerado son similares de acuerdo con algunos criterios o criterios predeterminados, mientras que las observaciones extraídas de diferentes conglomerados son diferentes. Las diferentes técnicas de agrupación hacen diferentes suposiciones sobre la estructura de los datos, a menudo definidas por alguna métrica de similitud y evaluadas, por ejemplo, por la compacidad interna (similitud entre los miembros de la misma agrupación) y la separación entre diferentes agrupaciones. Otros métodos se basan en densidad estimada y conectividad gráfica. El agrupamiento es un método de aprendizaje no supervisado y una técnica común para el análisis de datos estadísticos.

Redes bayesianas
Una red bayesiana, una red de creencias o un modelo gráfico acíclico dirigido es un modelo gráfico probabilístico que representa un conjunto de variables aleatorias y sus independencias condicionales a través de 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.

Aprendizaje de la representación
Varios algoritmos de aprendizaje, en su mayoría algoritmos de aprendizaje no supervisados, apuntan a descubrir mejores representaciones de los insumos proporcionados durante el entrenamiento. Los ejemplos clásicos incluyen el análisis de componentes principales y el análisis de conglomerados. Los algoritmos de aprendizaje de representación a menudo intentan preservar la información en su entrada pero 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, lo que permite la reconstrucción de las entradas provenientes de la distribución de datos desconocida que genera. no ser necesariamente fiel para configuraciones que son inverosímiles bajo esa distribución.

Los algoritmos de aprendizaje múltiple 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 dispersa (tiene muchos ceros). Los algoritmos de aprendizaje subespacial multilineal tienen como objetivo aprender las representaciones de baja dimensión directamente de las representaciones de tensor para datos multidimensionales, sin cambiarlas en vectores (de alta 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 y de mayor nivel definidas en términos de (o generando) características de menor nivel.Se ha argumentado que una máquina inteligente es aquella que aprende una representación que desenreda los factores subyacentes de variación que explican los datos observados.

Similitud y aprendizaje métrico.
En este problema, la máquina de aprendizaje recibe pares de ejemplos que se consideran similares y pares de objetos menos similares. Luego, necesita aprender una función de similitud (o una función de métrica de distancia) que pueda predecir si los nuevos objetos son similares. A veces se utiliza en sistemas de recomendación.

Aprendizaje de diccionario escaso
En este método, un dato se representa como una combinación lineal de funciones básicas y se supone que los coeficientes son escasos. Sea x una referencia d-dimensional, D sea una matriz n, donde cada columna de D representa una función básica. r es el coeficiente para representar x usando D. Matemáticamente, el aprendizaje de un diccionario disperso significa resolver donde r es escaso. En términos generales, se supone que n es mayor que d para permitir la libertad de una representación dispersa.

Aprender un diccionario junto con representaciones dispersas es muy difícil para NP y también es difícil de resolver aproximadamente. Un método heurístico popular para el aprendizaje de diccionarios dispersos es K-SVD.

El aprendizaje de diccionarios dispersos se ha aplicado en varios contextos. En la clasificación, el problema es determinar a qué clases pertenece un dato previamente no visto. Supongamos que ya se ha construido un diccionario para cada clase. Luego, se asocia un nuevo dato con la clase, de modo que se represente mejor con el diccionario correspondiente. El aprendizaje de diccionarios dispersos también se ha aplicado en la eliminación de la imagen. La idea clave es que un parche de imagen limpio puede ser representado de forma dispersa por un diccionario de imágenes, pero el ruido no puede.

Algoritmos genéticos
Un algoritmo genético (GA) es una heurística de búsqueda que imita el proceso de selección natural y utiliza métodos como la mutación y el cruce para generar un nuevo genotipo con la esperanza de encontrar buenas soluciones para un problema dado. En el aprendizaje automático, los algoritmos genéticos encontraron algunos usos en los años 80 y 90. Por el contrario, las técnicas de aprendizaje automático se han utilizado para mejorar el rendimiento de los algoritmos genéticos y evolutivos.

Aprendizaje automático basado en reglas
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 el conocimiento. La característica definitoria de un aprendiz de máquina 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 aprendices de máquina que comúnmente identifican un modelo singular que puede aplicarse 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 inmunes artificiales.

Aprendizaje de sistemas clasificadores.
Los sistemas de clasificador de aprendizaje (LCS) son una familia de algoritmos de aprendizaje automático basados ​​en reglas que combinan un componente de descubrimiento (por ejemplo, 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 almacenen y apliquen colectivamente el conocimiento de manera fragmentada para hacer predicciones.

Aplicaciones
Las aplicaciones para el aprendizaje automático incluyen:

Agricultura
Demostración automatizada del teorema
Sitios web adaptativos
Computacion afectiva
Bioinformática
Interfaces cerebro-máquina
Cheminformatics
Clasificando secuencias de ADN
Anatomia computacional
Red de computadoras
Telecomunicación
Visión por computadora, incluyendo reconocimiento de objetos
Detectando fraude en tarjetas de crédito.
Juego general jugando
Recuperación de información
Detección de fraude en internet
Ligüística computacional
Márketing
Control de aprendizaje automático
Percepción de la máquina
Diagnóstico médico automatizado
Economia computacional
Seguro
Procesamiento natural del lenguaje
Comprensión del lenguaje natural
Optimización y metaheurística.
Publicidad online
Sistemas de recomendación
Locomoción de robot
Los motores de búsqueda
Análisis de sentimiento (o minería de opinión)
Secuencia minera
Ingeniería de software
Reconocimiento de habla y escritura.
Análisis del mercado financiero
Vigilancia de la salud estructural
Reconocimiento de patrones sintácticos.
Predicción de series de tiempo
Análisis de comportamiento del usuario.
Máquina traductora

En 2006, la compañía de películas en línea Netflix organizó el primer concurso «Premio Netflix» para encontrar un programa para predecir mejor las preferencias del usuario y mejorar la precisión en su algoritmo de recomendación de películas Cinematch existente en al menos un 10%. Un equipo conjunto formado por investigadores de AT & amp; T Labs-Research en colaboración con los equipos Big Chaos y Pragmatic Theory construyó un modelo conjunto para ganar el Gran Premio en 2009 por $ 1 millón. Poco después de otorgar 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 cambiaron su motor de recomendación en consecuencia.

En 2010, The Wall Street Journal escribió sobre la firma Rebellion Research y su uso de Machine Learning para predecir la crisis financiera.

En 2012, el cofundador de Sun Microsystems Vinod Khosla predijo que el 80% de los empleos de los médicos se perderían en las próximas dos décadas para el software de diagnóstico médico automatizado de aprendizaje automático.

En 2014, se informó que se aplicó un algoritmo de aprendizaje automático en Historia del Arte para estudiar pinturas de bellas artes, y que puede haber revelado influencias no reconocidas previamente entre artistas.

Limitaciones
Aunque el aprendizaje automático ha sido transformador en algunos campos, el aprendizaje automático efectivo es difícil porque encontrar patrones es difícil y, con frecuencia, no se dispone de suficientes datos de entrenamiento; como resultado, muchos programas de aprendizaje automático a menudo fallan en entregar el valor esperado. Las razones para esto son numerosas: falta de datos (adecuados), falta de acceso a los datos, sesgo de datos, problemas de privacidad, tareas y algoritmos mal seleccionados, herramientas y personas incorrectas, falta de recursos y problemas de evaluación.

En 2018, un auto de Uber no detectó a un peatón que murió en el accidente. Los intentos de utilizar el aprendizaje automático en la asistencia sanitaria con el sistema IBM Watson no se pudieron realizar incluso después de años y miles de millones de inversión.

Parcialidad
En particular, los enfoques de aprendizaje automático pueden sufrir diferentes sesgos de datos. Es posible que un sistema de aprendizaje automático entrenado solo para sus clientes actuales no pueda predecir las necesidades de los nuevos grupos de clientes que no están representados en los datos de capacitación. Cuando se capacita en datos hechos por el hombre, es probable que el aprendizaje automático capte los mismos sesgos constitucionales e inconscientes que ya existen en la sociedad. Se ha demostrado que los modelos de lenguaje aprendidos de los datos contienen sesgos de tipo humano. Se ha encontrado que los sistemas de aprendizaje automático utilizados para la evaluación de riesgos criminales están sesgados en contra de los negros. En 2015, las fotos de Google a menudo etiquetaban a los negros como gorilas, y en 2018 esto aún no estaba bien resuelto, pero se dice que Google todavía estaba usando la solución para eliminar a todos los gorilas de los datos de entrenamiento, y por lo tanto no pudo reconocer gorilas reales en todos.Problemas similares con el reconocimiento de personas no blancas se han encontrado en muchos otros sistemas. En 2016, Microsoft probó un chatbot que aprendió de Twitter y rápidamente aprendió un lenguaje racista y sexista. Debido a tales desafíos, el uso efectivo del aprendizaje automático puede tardar más en ser adoptado en otros dominios.

Evaluaciones de modelos
Los modelos de clasificación de aprendizaje automático se pueden validar mediante técnicas de estimación de precisión como el método Holdout, que divide los datos en un conjunto de entrenamiento y prueba (convencionalmente 2/3 conjunto de entrenamiento y 1/3 designación de conjunto de prueba) y evalúa el rendimiento del modelo de entrenamiento en el conjunto de pruebaEn comparación, el método de validación cruzada de N pliegues aleatoriamente los datos en k subconjuntos donde las instancias k-1 de los datos se usan para entrenar el modelo, mientras que la instancia kth se usa para probar la capacidad predictiva del modelo de entrenamiento. Además de los métodos de retención y validación cruzada, bootstrap, que muestra n instancias con reemplazo del conjunto de datos, se puede usar para evaluar la precisión del modelo.

Además de la precisión general, los investigadores informan con frecuencia sensibilidad y especificidad, lo que significa tasa de verdad positiva (TPR) y tasa de tasa negativa verdadera (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 ratios que no revelan sus numeradores y denominadores. La característica de operación 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 de funcionamiento del receptor (ROC) utilizada comúnmente y el Área bajo la curva (AUC) asociada de ROC.

Ética
El aprendizaje automático plantea una serie de cuestiones éticas. Los sistemas que se entrenan en conjuntos de datos recopilados con sesgos pueden mostrar estos sesgos en el uso (sesgo algorítmico), por lo tanto, digitalizar prejuicios culturales. Por ejemplo, el uso de datos de contratación de trabajo de una empresa con políticas de contratación racista puede llevar a un sistema de aprendizaje automático que duplique el sesgo al calificar a los solicitantes de empleo en comparación con los candidatos 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 crítica del aprendizaje automático.

Debido a que el lenguaje contiene sesgos, las máquinas entrenadas en corpus lingüísticos necesariamente también aprenderán sesgos.

Otras formas de desafíos éticos, no relacionados con los prejuicios personales, se ven más en la atención médica. Existe una preocupación entre los profesionales de la salud de que estos sistemas pueden no estar diseñados para el 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 perpetuo 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 propietarios del algoritmo tienen intereses. Existe un gran potencial para que el aprendizaje automático en la atención de la salud proporcione a los profesionales una excelente herramienta para diagnosticar, medicar e incluso planificar. rutas de recuperación para los pacientes, pero esto no sucederá hasta que se aborden los sesgos personales mencionados anteriormente, y estos sesgos de «codicia».

Software
Los conjuntos de software que contienen una variedad de algoritmos de aprendizaje automático incluyen los siguientes:

Software libre y de código abierto.
CNTK
Deeplearning4j
ELKI
H2O
Cuidador de elefantes
Mazo
mlpack
MXNet
OpenNN
naranja
scikit-learn
Shogun
Spark MLlib
TensorFlow
Antorcha / PyTorch
Weka / MOA
Yooreeka

Software propietario con ediciones gratuitas y de código abierto.
Cangrejo
RapidMiner

Software propietario
Amazon Machine Learning
Conocimiento De AngossSTUDIO
Ayasdi
IBM Data Science Experience
API de predicción de Google
IBM SPSS Modeler
KXEN Modeler
LIONsolver
Matemática
MATLAB
Pitón
Aprendizaje automático de Microsoft Azure
Diseñador neural
NeuroSoluciones
Oracle Data Mining
Oracle AI Platform Cloud Service
RCASE
SAS Enterprise Miner
Secuencia
Splunk
STATISTICA Data Miner