Sitio del autor: Qiuma Records
Ejemplos del mundo real de aprendizaje automático
A través de la explicación del artículo anterior, entendemos 机器学习
un poco (aprendizaje automático) y, al mismo tiempo, ya 机器学习
no nos resistimos tanto al término (aprendizaje automático).
Entonces, ¿ 机器学习
qué problemas nos resuelve en la vida real? O actualmente es imposible de lograr con soluciones tradicionales.
-
1. Puede analizar imágenes de productos en la línea de producción y clasificarlas. Esto cae dentro de
图像分类
la categoría, generalmente usando卷积神经网络
(CNN) oTransformer
. -
2. Puede usarse para detectar si hay un tumor en el cerebro. Es decir
图像语义分割
, se clasifica cada píxel de la imagen (porque queremos determinar la ubicación exacta y la forma del tumor), normalmente utilizando卷积神经网络
(CNN), oTransformer
. -
3. Clasificación automática de artículos periodísticos. Esto entra en
自然语言处理
la categoría de (PNL), más específicamente debería ser文本分类
. Aunque se puede resolver usando循环神经网络
(RNN) y , obviamente el efecto de procesamiento es mejor.卷积神经网络
Transformer
-
4. Marcar automáticamente los comentarios maliciosos. Esta es también
文本分类
la categoría y la solución también esNLP
la herramienta elegida. -
5. Resuma automáticamente documentos largos. ¿Es como leer un cuento y luego resumir de qué trata? O una trama. Esta es
NLP
una rama de , llamada文本摘要
, que también utilizaNLP
herramientas para su procesamiento. -
6. Construya
聊天机器人
o个人助理
. Esto involucra muchosNLP
componentes, incluidos自然语言理解
(NLU) y问答模块
. -
7. Predecir la rentabilidad de la empresa para el próximo año basándose en una gran cantidad de indicadores de desempeño. Esto pertenece a un
回归任务
(es decir, valor predicho) que se puede resolver utilizando cualquier回归模型
(modelo de regresión), como modelos线性回归
(regresión lineal) y (regresión polinómica).多项式回归
Si considera una secuencia de métricas de desempeño anteriores, usaríaRNN
,CNN
yTransformer
. -
8. La aplicación responde a comandos de voz. Es decir
语音识别
, necesita procesar muestras de audio, que son secuencias largas y complejas, y generalmente se procesan usandoRNN
,CNN
y .Transformer
-
9. Detectar fraudes con tarjetas de crédito. Esto pertenece
异常检测
. Se pueden utilizar隔离森林
(bosques de aislamiento),高斯混合模型
(modelos de mezcla gaussiana) y (codificadores automáticos)自动编码器
. -
10. Segmentar a los clientes según la situación de compra y luego elaborar diferentes estrategias de marketing para cada segmento de mercado. Esto es
聚类
(agrupación) y se puede lograr usandok-means
,DBSCAN
etc. -
11. Utilice diagramas para representar conjuntos de datos complejos de alta dimensión. Esto
数据可视化
generalmente está relacionado con降维技术
. -
12. Recomendar productos interesados según las compras anteriores de los clientes. Esto pertenece
推荐系统
. Un enfoque es introducir compras pasadas (y otra información sobre el cliente) en la人工神经网络
(ANN) y hacer que genere la próxima compra más probable. Esta red neuronal normalmente se entrena en las secuencias de compra anteriores de todos los clientes. -
13. Crea bots inteligentes para juegos. Esto a menudo se puede
强化学习
resolver usando (RL), que es机器学习
una rama de , que entrena a un agente (por ejemplo, un bot) para elegir acciones que maximicen su recompensa a lo largo del tiempo (por ejemplo, un bot puede ganar una recompensa) cada vez que un jugador juega un determinado juego. Cuando se pierde algo de salud dentro de un entorno (como un juego).AlphaGo
El famoso programa que derrotó al campeón mundial de Go seRL
creó utilizando .
Por supuesto, esta lista de ejemplos podría seguir y seguir, pero es de esperar que le dé una idea 机器学习
de la increíble amplitud y complejidad de las tareas que puede abordar y los tipos de técnicas que utilizará para cada una.
Tipos de sistemas de aprendizaje automático
机器学习
Hay muchos tipos de sistemas, pero se pueden dividir a grandes rasgos en varias categorías según los siguientes criterios, pero es mucho más que eso.
- 1. La forma en que son supervisados durante su capacitación se puede subdividir en, entre otros
监督
, ,无监督
, ,半监督
etc.自我监督
- 2. Si es posible el aprendizaje incremental instantáneo durante su formación se puede dividir en
在线学习
y批量学习
. - 3. ¿Cómo funcionan simplemente comparando
新数据点
y ?已知数据点
¿O funciona examinando patrones en los datos de entrenamiento y construyendo modelos predictivos? Esto se puede dividir en基于实例的学习
y模型的学习
.
Por supuesto, estos estándares no son fijos y siempre puedes combinarlos como quieras. ¡ 垃圾邮件过滤器
Déjame explicarte! Puede 深度神经网络
aprender dinámicamente utilizando un modelo (red neuronal profunda) que se 垃圾邮件
entrena con datos de muestra y proporcionados por humanos, lo que lo convierte en un sistema 在线
de aprendizaje 基于模型
eficiente 监督
.
supervisión de entrenamiento
机器学习
El sistema se puede dividir según 监督数量
las sumas recibidas durante la formación . 类型
Hay muchas categorías, pero por ahora solo se tratan Hablar , 监督
, 无监督
y 自我监督
Aprender .半监督
强化
Aprendizaje supervisado
En 监督学习
, la solución proporcionada al algoritmo, 训练集
incluida la solución deseada, se denomina 标签
.
El filtro de spam está entrenado en muchos correos electrónicos y su clasificación (spam), y debe aprender a clasificar el correo nuevo.
También es posible predecir el valor objetivo en función de un grupo 特征
(kilometraje, edad, marca, etc.). Para la formación, es necesario proporcionarle muchos ejemplos de automóviles, incluidas sus características y precios. Esta tarea se llama 回归
.
Nota: Algunos
回归模型
también se pueden utilizar para clasificación y viceversa.逻辑回归
(regresión logística) se utiliza a menudo para la clasificación, ya que puede generar un valor correspondiente a la probabilidad de una clase determinada (por ejemplo: 20 % de probabilidad de spam).
回归问题
: Dada una característica de entrada, predice un valor (generalmente hay múltiples características de entrada, a veces múltiples valores de salida).
Aprendizaje sin supervisión
En 无监督
el aprendizaje 训练数据
no es necesario 标记
. El sistema intenta aprender sin profesor.
Suponiendo que tiene muchos datos sobre los visitantes de su blog, es posible que desee ejecutar 聚类算法
para intentar detectar grupos de visitas similares. Y nunca le dices 算法
a Access a qué grupo pertenece, puede encontrar estos enlaces sin tu ayuda. Podrías notar que el 40% de tus visitantes son adolescentes a quienes les gustan los cómics y generalmente leen tu blog después de la escuela, mientras que el 20% son adultos a quienes les gusta la ciencia ficción y lo visitan los fines de semana. Si utiliza 层次聚类算法
un (algoritmo de agrupación jerárquica), también puede subdividir cada grupo en grupos más pequeños, lo que puede ayudarle a orientar sus publicaciones a cada grupo.
(conjunto de entrenamiento sin etiquetar para aprendizaje no supervisado)
(agrupación)
可视化算法
También un 无监督学习
buen ejemplo. Les proporciona grandes cantidades de datos complejos y sin etiquetar, y pueden generar fácilmente una representación 2D o 3D de los datos trazados. Estos algoritmos intentan preservar la mayor estructura posible (por ejemplo, intentan evitar que grupos separados en el espacio de entrada se superpongan en la visualización), para que pueda comprender cómo se organizan los datos y posiblemente identificar patrones inesperados.
Una tarea relacionada 降维
, donde el objetivo es simplificar datos sin perder demasiada información. Una forma de lograrlo es 特征
combinar múltiples correlaciones en una. Por ejemplo, el kilometraje de un automóvil puede estar estrechamente relacionado con su antigüedad, por lo que 降维算法
se combinan en una única representación del desgaste del automóvil 特征
, llamada 特征提取
.
Por lo general, es una buena idea intentar reducirlo antes de pasarlo
训练数据
a otro algoritmo de aprendizaje automático (por ejemplo监督学习算法
) . Se ejecutará más rápido, los datos ocuparán menos espacio en disco y memoria y, en algunos casos, también puede funcionar mejor.降维算法
训练数据
维数
异常检测
También uno 无监督任务
. Por ejemplo, detectar transacciones inusuales con tarjetas de crédito para evitar fraudes, detectar defectos de fabricación o eliminar automáticamente valores atípicos de un conjunto de datos antes de introducirlos en otro algoritmo de aprendizaje. Al sistema se le muestran principalmente instancias normales durante el entrenamiento, por lo que aprende a reconocerlas; luego, cuando ve una nueva instancia, puede decir si parece una instancia normal o si puede haber una anomalía.
Una tarea muy similar 新颖性检测
: tiene como objetivo detectar 训练集
nuevas instancias que se ven diferentes de todas las instancias en . Esto debe estar muy "limpio" para cualquier instancia 训练集
que desee 算法
detectar. Por ejemplo, si tienes miles de fotografías de perros y el 1% de ellas representan chihuahuas, 新颖性检测算法
no debes considerar nuevas fotografías de chihuahuas 新颖性
. Por otro lado, 异常检测算法
se podría argumentar que estos perros son tan raros y tan diferentes de otros perros que podrían clasificarlos como 异常
(sin ofender a los chihuahuas).
(detección anormal)
关联规则学习
(aprendizaje de reglas de asociación) es uno común 无监督任务
cuyo objetivo es extraer grandes cantidades de datos y descubrir relaciones interesantes entre atributos. Por ejemplo, supongamos que usted es dueño de un supermercado. Realizar un registro de ventas 关联规则
podría revelar que las personas que compran salsa BBQ y patatas fritas también tienden a comprar bistec. Por lo tanto, es posible que desee colocar estos elementos uno cerca del otro.
Aprendizaje semisupervisado
Dado que 标记数据
suele llevar mucho tiempo y ser costoso, normalmente tendrás 大量未标记
instancias y muy pocas instancias de etiquetado. Algunos algoritmos pueden manejar datos parcialmente etiquetados. Esto se llama 半监督学习
.
En la figura, con dos clases (triángulo y cuadrado) 半监督学习
: un ejemplo sin etiquetar (círculo) ayuda a clasificar una nueva instancia (cruz) como una clase de triángulo en lugar de una clase de cuadrado, aunque esté más cerca del cuadrado etiquetado.
Por ejemplo, algunos servicios de alojamiento de fotografías (Google Photos), al subir fotos al servicio, reconoce automáticamente que aparece la misma persona A en las fotos 1, 5 y 11 y otra persona B aparece en las fotos 2, 5 y 7 del medio. . Esta es 无监督
la parte del algoritmo (agrupación). Ahora todo lo que el sistema necesita es que usted le diga quiénes son estas personas. Simplemente agregue uno para cada persona 标签
y nombrará a cada persona en cada foto, lo cual es útil para buscar fotos.
La mayoría de 半监督学习
los algoritmos son combinaciones de 无监督
y 监督
algoritmos. Por ejemplo, se podría utilizar un algoritmo 聚类
para agrupar instancias similares 聚类
y 标签
luego etiquetar cada instancia con la más común de ellas 未标记
. 数据集
Una vez cubierto el conjunto , 标记
se puede utilizar cualquier 监督学习
algoritmo .
Aprendizaje autosupervisado
机器学习
El otro enfoque en realidad implica comenzar desde una construcción 未标记
completa . Nuevamente, se puede utilizar cualquier algoritmo una vez que se identifica la totalidad . Este método se llama . Por ejemplo, si tiene una gran cantidad de imágenes , puede enmascarar aleatoriamente una pequeña porción de cada imagen y luego restaurar la imagen original. Durante el entrenamiento, usado como , usado como .数据集
完全标记
数据集
数据集
标记
监督学习
自我监督学习
未标记
数据集
训练模型
蒙版图像
模型的输入
原始图像
标签
(Se ingresa la imagen de la izquierda, se emite la imagen de la derecha)
El modelo resultante puede ser muy útil en sí mismo, por ejemplo, 修复损坏
para eliminar una imagen o eliminar objetos no deseados de una imagen. Pero a menudo, utilizar 自我监督学习
el modelo entrenado no es el objetivo final. A menudo es necesario ajustar y ajustar el modelo para una tarea ligeramente diferente (la que realmente le interesa).
Suponiendo que lo que realmente deseas es tener uno 宠物分类模型
: ante una fotografía de cualquier mascota, te dirá a qué especie pertenece. Si tiene una gran colección 未标记
de fotografías de mascotas 数据集
, puede comenzar 自我监督学习
entrenando un 修复
modelo de imagen con . Una vez que se porte bien, debería ser capaz de distinguir entre diferentes especies de mascotas: cuando tenga 修复
la imagen de un gato con la cara cubierta, debe saber que no debe añadir la cara de un perro.
Suponiendo que la arquitectura de su modelo lo permita (y la mayoría 神经网络
lo permite), es posible modificar el modelo para que aborde 预测
especies en lugar de 修复
imágenes. El último paso implica ajustar el modelo: el modelo ya sabe cómo son los gatos, los perros y otras especies de mascotas, por lo que este paso solo es necesario para que el modelo pueda aprender el mapeo entre 标记``````数据集
lo que ya sabe sobre la especie y lo que ya sabe sobre la especie. lo que esperamos de él.标签
Transferir conocimiento de una tarea a otra
迁移学习
es机器学习
una de las técnicas más importantes hoy en día, especialmente cuando se utiliza深度神经网络
(es decir,神经元
se compone de múltiples capas神经网络
).
自监督学习
Algunos lo consideran 无监督学习
una parte porque lo maneja 未标记
por completo 数据集
. pero 自我监督学习
se usa (genera) durante el entrenamiento 标签
, por lo que está más cerca en ese sentido 监督学习
. 无监督学习
Generalmente se usa para tareas como procesamiento 聚类
, 降维
o 异常检测
, 自我监督学习
mientras se enfoca en 监督学习
las mismas tareas que y: principalmente 分类
y 回归
. En resumen, es mejor 自我监督学习
considerarlo como una categoría separada.
Aprendizaje reforzado
强化学习
es un tipo muy diferente 机器学习
. 学习系统
A lo que se refiere este artículo 代理
, es posible observar el entorno, seleccionar y ejecutar acciones y ser recompensado (o castigado en forma de recompensas negativas). Luego, tiene que ser 自行学习
lo mejor 策略
(llamado 策略
) para poder obtener el mayor retorno en el tiempo. Una política define qué acción debe elegir un agente en una situación determinada.
Por ejemplo, muchos 机器人
emplean 强化学习
algoritmos para aprender a caminar. DeepMind
También es un buen ejemplo del AlphaGo
programa 强化学习
: saltó a los titulares en mayo de 2017 cuando derrotó a Ke Jie, entonces número uno del mundo, en un partido de Go. Aprende su estrategia ganadora analizando millones de juegos y luego jugando muchos juegos contra sí mismo. Tenga en cuenta que el aprendizaje se desactiva durante los partidos contra el campeón; AlphaGo
simplemente aplica la política que aprendió.