Gracias al entrenamiento de la máquina, un programador no tiene que escribir instrucciones que tengan en cuenta todos los posibles problemas y contengan todas las soluciones. En cambio, la computadora (o un programa separado) se utiliza para crear un algoritmo de búsqueda de soluciones independientes mediante el uso complejo de datos estadísticos, a partir de los cuales se derivan las regularidades y sobre la base de las cuales se hacen los pronósticos.
La tecnología de aprendizaje automático sobre la base del análisis de datos comenzó en 1950, cuando comenzaron a desarrollar los primeros programas para jugar a las damas. A lo largo de las décadas, el principio general no ha cambiado. Pero gracias al crecimiento explosivo de la potencia informática, las computadoras complicaron repetidamente las leyes y los pronósticos creados por ellos, y expandieron la gama de problemas y problemas resueltos con el uso del aprendizaje automático.
Para iniciar el proceso de aprendizaje automático, primero debe descargar a un conjunto de datos de computadora (una cierta cantidad de datos de origen), en el que el algoritmo aprenderá a procesar solicitudes. Por ejemplo, puede haber fotos de perros y gatos que ya tengan etiquetas que indiquen a quién pertenecen. Después del proceso de aprendizaje, el software podrá reconocer perros y gatos en nuevas imágenes sin etiquetas. El proceso de aprendizaje continúa incluso después de que se hayan realizado los pronósticos; cuantos más datos analicemos, con mayor precisión el software reconoce las imágenes que se necesitan.
Las computadoras aprenden a reconocer no solo caras, sino también paisajes, objetos, texto y números en fotografías y dibujos. En lo que respecta al texto, el aprendizaje automático también es fundamental: la función de revisión gramatical ya está disponible en todos los procesadores de texto e incluso en los teléfonos. Y no solo se tiene en cuenta la escritura de palabras, sino también el contexto, matices de significado y otros sutiles aspectos lingüísticos. Además, ya existe un software que puede escribir artículos de noticias (sobre el tema de la economía y, por ejemplo, los deportes) sin participación humana.
Tipos de tareas de aprendizaje automático
Todas las tareas realizadas con ML se incluyen en una de las siguientes categorías.
1) El problema de regresión es un pronóstico basado en una muestra de objetos con diferentes características. La salida debe ser un número real (2, 35, 76.454, etc.), por ejemplo, el precio del apartamento, el valor de la seguridad después de seis meses, los ingresos esperados de la tienda para el próximo mes, la calidad de vino en prueba a ciegas.
2) El propósito de la clasificación es obtener una respuesta categórica basada en un conjunto de atributos. Tiene un número final de respuestas (generalmente en formato “sí” o “no”): si la foto tiene un gato, si la imagen es un rostro humano, si el paciente tiene cáncer.
3) Tarea de agrupamiento – distribución de datos en grupos: división de todos los clientes del operador móvil por el nivel de solvencia, asignando objetos espaciales a una u otra categoría (planeta, estrella, agujero negro, etc.).
4) La tarea de reducir la dimensionalidad es reducir una gran cantidad de características a un número menor (generalmente 2-3) para la conveniencia de su visualización posterior (por ejemplo, compresión de datos).
5) La tarea de detectar anomalías es separar las anomalías de los casos estándar. A primera vista, coincide con la tarea de clasificación, pero hay una diferencia esencial: las anomalías son un fenómeno raro, y ejemplos de entrenamiento, sobre los que se puede arrastrar un modelo de aprendizaje automático para identificar tales objetos, ya sea que desaparezcan pequeños o simplemente no, por lo que los métodos de clasificación no funcionan aquí. En la práctica, tal tarea es, por ejemplo, la detección de actividad fraudulenta con tarjetas bancarias.
Principales tipos de entrenamiento con máquinas
La mayor parte de las tareas realizadas por el aprendizaje automático son de dos tipos diferentes: aprendizaje supervisado o aprendizaje no supervisado. Sin embargo, este maestro no es necesariamente el programador mismo, que se para frente a la computadora y controla cada acción del programa. Un "maestro" en términos de aprendizaje automático es la interferencia misma de una persona en el proceso de procesamiento de la información. Ambos tipos de aprendizaje proporcionan a la máquina datos sin procesar que tiene que analizar y encontrar patrones. La única diferencia es que hay una serie de hipótesis que deben refutarse o confirmarse cuando se aprende con un profesor. Esta diferencia es fácil de entender a partir de los ejemplos.
Aprendizaje automático con el profesor
Supongamos que tenemos a nuestra disposición información sobre diez mil apartamentos en Moscú: área, piso, distrito, presencia o ausencia de estacionamiento cerca de la casa, distancia del metro, precio del apartamento, etc. Necesitamos crear un modelo que prediga el Valor de mercado del departamento por sus parámetros. Este es un ejemplo ideal de aprendizaje automático con un profesor: tenemos los datos iniciales (el número de apartamentos y sus propiedades, que se llaman atributos) y una respuesta lista para cada uno de los apartamentos: su costo. El programa deberá resolver el problema de la regresión.
Otro ejemplo de la práctica: confirmar o refutar la presencia de cáncer en el paciente, conociendo todos sus indicadores médicos. Descubra si una carta entrante es spam analizando su texto. Todas estas son tareas de clasificación.
Entrenamiento de máquinas sin profesor
En el caso de la formación sin profesor, cuando el sistema no cuenta con “respuestas correctas” listas, la situación es aún más interesante. Por ejemplo, tenemos información sobre el peso y la altura de un cierto número de personas, y este dato debe dividirse en tres grupos, cada uno de los cuales habrá que coser camisas de tallas adecuadas. Ésta es la tarea de la agrupación. En este caso, debe dividir todos los datos en 3 grupos (pero, por regla general, no existe una división tan estricta y única posible).
Si tomamos otra situación, cuando cada uno de los objetos de la muestra tiene cien características diferentes, la principal dificultad será presentar gráficamente dicha muestra. Por tanto, el número de atributos se reduce a dos o tres, y es posible visualizarlos en un plano o en 3D. Esta es la tarea de reducir la dimensionalidad.
Algoritmos básicos de modelos de aprendizaje automático
1. Árbol de toma de decisiones
Este es un método de apoyo a la decisión basado en el uso de un gráfico de árbol: un modelo de toma de decisiones que tiene en cuenta sus posibles consecuencias (con el cálculo de la probabilidad de que ocurra uno u otro evento), eficiencia, consumo de recursos.
Para los procesos comerciales, este árbol consta de un número mínimo de preguntas que requieren una única respuesta: "sí" o "no". Habiendo respondido constantemente a todas estas preguntas, llegamos a la elección correcta. Ventajas metodológicas de un árbol de toma de decisiones – que estructura y sistematiza un problema, y la decisión final es aceptada sobre la base de conclusiones lógicas.
2. Clasificación bayesiana ingenua
Los clasificadores bayesianos ingenuos pertenecen a la familia de los clasificadores de probabilidad simples y se originan en el teorema bayesiano, que en este caso considera las funciones como independientes (se le llama suposición estricta o ingenua). En la práctica, se utiliza en las siguientes áreas de aprendizaje automático:
Definición de spam que llega al correo electrónico;
Enlace automático de artículos de noticias a títulos temáticos;
Identificar el colorido emocional del texto;
Identificar rostros y otros patrones en imágenes.
3. método de mínimos cuadrados
Todo el que haya estudiado estadística al menos un poco está familiarizado con el concepto de regresión lineal. Los cuadrados más pequeños también pertenecen a las variantes de su implementación. Por lo general, con la ayuda de la regresión lineal se resuelve el problema de ajustar una línea recta, que pasa por muchos puntos. Así es como se hace con el método de mínimos cuadrados: dibuja una línea, mide la distancia de ella a cada uno de los puntos (puntos y una línea conectados por segmentos verticales), la suma resultante se transfiere hacia arriba. Como resultado, la curva en la que la suma de distancias será menor es la deseada (esta línea pasará por los puntos con una desviación distribuida normalmente del valor real).
La función lineal se usa generalmente para seleccionar datos para el aprendizaje automático y el método de mínimos cuadrados para minimizar los errores mediante la creación de métricas de error.
4. Regresión logística
La regresión logística es una forma de determinar la dependencia entre variables, una de las cuales es categóricamente dependiente y las otras independientes. Para ello se utiliza la función logística (distribución logística acumulativa). El valor práctico de la regresión logística es que es un poderoso método estadístico para predecir eventos, que incluye una o más variables independientes. Esto es necesario en las siguientes situaciones:
puntuacion de credito;
Medición del éxito de campañas publicitarias;
Previsión de beneficios para un determinado producto;
una estimación de la probabilidad de un terremoto en una fecha determinada.
5. Método de vector de referencia (SVM)
Se trata de un conjunto completo de algoritmos necesarios para resolver los problemas de clasificación y análisis de regresión. Suponiendo que un objeto en el espacio N-dimensional pertenece a una de dos clases, el método del vector de referencia construye un hiperplano con una dimensión (N – 1) de modo que todos los objetos están en uno de los dos grupos. En el papel, esto se puede representar de la siguiente manera: hay puntos de dos puntos de vista diferentes y se pueden dividir linealmente. Además de la separación de puntos, este método genera un hiperplano para que esté lo más lejos posible del punto más cercano de cada grupo.
SVM y sus modificaciones ayudan a resolver problemas tan complejos de aprendizaje automático como el empalme de ADN, la determinación del sexo de una persona a partir de una foto, la visualización de banners publicitarios en sitios.
6. Método de conjuntos
Se basa en algoritmos de aprendizaje automático que generan múltiples clasificadores y separan todos los objetos de los datos recién recibidos en función de sus promedios o resultados de votación. Inicialmente, el método de conjuntos era un caso especial de promediado bayesiano, pero luego se volvió más complicado y se cubrió de algoritmos adicionales:
impulso: convierte los modelos débiles en fuertes formando un conjunto de clasificadores (desde el punto de vista matemático es una mejora que se superpone);
ensacado: recopila clasificadores sofisticados, mientras que simultáneamente enseña clasificadores básicos (mejorando la unión);
Corrección de errores de codificación de salida.
El método de conjunto es una herramienta más poderosa que los modelos de pronóstico independientes, porque:
minimiza el impacto de los accidentes promediando los errores de cada clasificador básico;
reduce la dispersión, porque varios modelos diferentes basados en diferentes hipótesis tienen más posibilidades de lograr el resultado correcto que uno tomado por separado;
excluye ir más allá del alcance del conjunto: si la hipótesis agregada está más allá del alcance del conjunto de hipótesis básicas, entonces en la etapa de formación de la hipótesis combinada se expande de una forma u otra, y la hipótesis ya está incluida en ella .
7. Algoritmos de agrupamiento
La agrupación consiste en distribuir un conjunto de objetos en categorías para que en cada categoría, un grupo, estén los elementos más similares entre sí.
Es posible agrupar objetos utilizando diferentes algoritmos. Con mayor frecuencia, se utilizan los siguientes:
basado en el centro de gravedad del triángulo;
sobre la base de la conexión;
reducción de dimensionalidad;
densidad (basada en la agrupación espacial);
probabilístico
aprendizaje automático, incluidas las redes neuronales.
Los algoritmos de agrupamiento se utilizan en biología (el estudio de la interacción de genes en un genoma de hasta varios miles de elementos), sociología (el procesamiento de los resultados de la investigación sociológica por el método de Ward, que produce grupos con mínima dispersión y aproximadamente del mismo tamaño) y tecnología de la información.
8. Método del componente principal (PCA)
El método del componente principal, o PCA, es una operación de transformación ortogonal estadística que tiene como objetivo convertir las observaciones de variables que pueden estar interrelacionadas de alguna manera en un conjunto de componentes principales, valores que no están correlacionados linealmente.
Las tareas prácticas en las que se utiliza PCA son la visualización y la mayoría de los procedimientos de compresión, simplificación y minimización de datos con el fin de facilitar el proceso de aprendizaje. Sin embargo, el método de componentes principales no es adecuado para situaciones en las que los datos iniciales están mal ordenados (es decir, todos los componentes del método se caracterizan por una alta dispersión). Entonces, su aplicabilidad está determinada por qué tan bien se estudia y describe el área temática.
9. Descomposición singular
En álgebra lineal, la descomposición singular, o SVD, se define como la descomposición de una matriz rectangular que consta de números complejos o reales. Así, la matriz M con dimensión (m * n) se puede disponer de tal manera que M = UΣV, donde U y V serán matrices unitarias, y Σ – diagonal.
Uno de los casos particulares de descomposición singular es el método de componentes principales. Las primeras tecnologías de visión por computadora se desarrollaron sobre la base de SVD y PCA y funcionaron de la siguiente manera: primero, las caras (u otros patrones que se encuentran) se representaron en forma de suma de componentes básicos, luego se redujeron su dimensión, y luego los comparó con imágenes de la muestra. Los algoritmos modernos de descomposición singular en el aprendizaje automático son, por supuesto, mucho más complejos y sofisticados que sus predecesores, pero su esencia en general ha cambiado.
10. Análisis de componentes independientes (ICA)
Este es uno de los métodos estadísticos que revela factores ocultos que influyen en variables aleatorias, señales, etc. El ICA forma el modelo generador de bases de datos multifactoriales. Las variables del modelo contienen algunas variables ocultas y no hay información sobre las reglas para mezclarlas. Estas variables ocultas son componentes independientes de la muestra y se consideran señales no gaussianas.
A diferencia del análisis de los componentes principales, que está asociado con este método, el análisis de componentes independientes es más efectivo, especialmente cuando los enfoques clásicos son impotentes. Detecta las causas ocultas de los fenómenos y, debido a esto, ha encontrado una amplia aplicación en varios campos, desde la astronomía y la medicina hasta el reconocimiento de voz, las pruebas automáticas y el análisis de la dinámica de los indicadores financieros.
1.5 Ejemplos de aplicaciones de la vida real
Ejemplo 1. Diagnóstico de enfermedades
Los pacientes en este caso son los objetos, y los signos son todos los síntomas, antecedentes, resultados de pruebas, medidas de tratamiento ya tomadas (de hecho, la historia clínica completa, formalizada y desglosada en criterios separados). Algunos síntomas (sexo, presencia o ausencia de dolor de cabeza, tos, erupciones y otros) se consideran binarios. La evaluación de la gravedad de la afección (extremadamente grave, moderada, etc.) es una característica común, y muchas otras: cuantitativa: el volumen del medicamento, el nivel de hemoglobina en la sangre, la presión arterial y la frecuencia del pulso, la edad, el peso. . Una vez recopilada información sobre el estado del paciente, que contiene muchos de estos signos, se puede descargar a una computadora y con la ayuda de un programa capaz de aprendizaje automático, para resolver los siguientes problemas:
Para realizar diagnósticos diferenciales (determinación del tipo de enfermedad);
Elija la estrategia de tratamiento más óptima;
Predecir el desarrollo de la enfermedad, su duración y resultado;
Calcule el riesgo de posibles complicaciones;
Identificar síndromes: conjuntos de síntomas asociados con una determinada enfermedad o trastorno.
Ningún médico es capaz de procesar instantáneamente toda la gama de información de cada paciente, resumir una gran cantidad de historias de casos similares e inmediatamente dar un resultado claro. Por tanto, el entrenamiento con máquinas se convierte en una ayuda indispensable para los médicos.
Ejemplo 2. Búsqueda de depósitos minerales
Los signos aquí son la información obtenida con la ayuda de la exploración geológica: la presencia de cualquier roca en el área (y será un signo de tipo binario), sus propiedades físicas y químicas (que se establecen en una serie de factores cuantitativos y signos cualitativos).
Para la muestra de entrenamiento, se toman dos tipos de precedentes: áreas donde los depósitos minerales están precisamente presentes y áreas con características similares donde no se han encontrado estos minerales. Pero la extracción de minerales raros es específica: en muchos casos, el número de características es significativamente mayor que el número de sitios, y los métodos estadísticos tradicionales no se adaptan bien a tales situaciones. Por lo tanto, el aprendizaje automático se centra en detectar patrones en el conjunto de datos que ya se ha recopilado. Para ello, se determinan los conjuntos de características más pequeños e informativos, que son los más indicativos para responder a la pregunta del estudio: si hay un fósil en particular en un área determinada o no. Es posible establecer una analogía con la medicina: también es posible revelar los síndromes en los depósitos. El valor de utilizar el aprendizaje automático en este campo es que los resultados obtenidos no solo son de naturaleza práctica, sino también de gran interés científico para los geólogos y geofísicos.
Ejemplo 3. Evaluación de la fiabilidad y solvencia de los candidatos a préstamos
Este es un desafío que todos los bancos involucrados en la emisión de préstamos enfrentan a diario. La necesidad de automatizar este proceso se necesitaba desde hace mucho tiempo, en las décadas de 1960 y 1970, cuando Estados Unidos y otros países comenzaron un auge de las tarjetas de crédito.
Las personas que solicitan un préstamo a un banco son objetos, pero los signos serán diferentes según se trate de una persona física o jurídica. La descripción característica de un particular que solicita un préstamo se forma a partir de los datos del cuestionario, que rellena. A continuación, el cuestionario se complementa con alguna otra información sobre el cliente potencial, que el banco recibe a través de sus canales. Algunos de ellos se refieren a características binarias (sexo, número de teléfono), otros, a las características seriales (educación, posición), la mayoría de ellos son cuantitativos (el tamaño del préstamo, el monto total de las deudas con otros bancos, la edad, número de miembros de la familia, ingresos, antigüedad en el servicio) o nominal (nombre, nombre del empleador, profesión, dirección).
Para el aprendizaje automático, se elabora una muestra que incluye prestatarios cuyo historial crediticio se conoce. Todos los prestatarios se dividen en clases, en el caso más simple hay 2 de ellos: prestatarios “buenos” y “malos”, y la decisión positiva de otorgar un préstamo se toma solo a favor de los “buenos”.
Un algoritmo de aprendizaje automático más sofisticado, llamado calificación crediticia, implica asignar puntos condicionales a cada prestatario para cada atributo, y la decisión de otorgar un préstamo dependerá de la cantidad de puntos obtenidos. Durante el entrenamiento de la máquina del sistema de puntuación de crédito, primero se asigna una cierta cantidad de puntos a cada atributo, y luego se determinan las condiciones para otorgar el préstamo (plazo, tasa de interés y otros parámetros, que se reflejan en el contrato de préstamo) . Pero también hay otro algoritmo de entrenamiento del sistema, basado en precedentes.