Requisitos de la entrevista: comparación de ventajas y desventajas de los algoritmos de aprendizaje automático (resumen)

El propósito de este artículo es proporcionar un inventario pragmático y conciso de los algoritmos de aprendizaje automático actuales.

¡Revise principalmente los escenarios de adaptación y las ventajas y desventajas de varios algoritmos de uso común!

Hay demasiados algoritmos de aprendizaje automático, como clasificación, regresión, agrupación, recomendación, reconocimiento de imágenes, etc. Realmente no es fácil encontrar un algoritmo adecuado, por lo que en aplicaciones prácticas, generalmente usamos métodos de aprendizaje heurístico para experimentar. Por lo general, al principio, elegiremos algoritmos que generalmente son reconocidos por todos, como SVM, GBDT y Adaboost. Ahora, el aprendizaje profundo está muy de moda y las redes neuronales también son una buena opción.

Si le importa la precisión, la mejor manera es probar y comparar cada algoritmo uno por uno a través de la validación cruzada, luego ajustar los parámetros para garantizar que cada algoritmo logre la solución óptima y, finalmente, elegir el mejor.

Pero si solo está buscando un algoritmo "suficientemente bueno" para resolver su problema, o aquí hay algunos consejos como referencia, analicemos las ventajas y desventajas de cada algoritmo, según las ventajas y desventajas del algoritmo, es más fácil para nosotros para elegirlo.

Intercambio de Tecnología

La tecnología debe aprender a compartir y comunicar, y no se recomienda trabajar a puerta cerrada. Una persona puede ir rápido y un grupo de personas puede ir más lejos.

Los buenos artículos son inseparables del intercambio y la recomendación de fans, los datos secos, el intercambio de datos, la mejora del intercambio de datos y técnicas, todo lo cual se puede obtener agregando el grupo de comunicación. El grupo tiene más de 2,000 amigos. La mejor manera de agregar notas es: fuente + direcciones de interés, lo que facilita encontrar amigos con ideas afines.

Método ①, agregar cuenta de WeChat: dkl88191, comentarios: de CSDN +
método python ②, cuenta oficial de búsqueda de WeChat: aprendizaje de Python y extracción de datos, respuesta en segundo plano: agregar grupo

1. No existe tal cosa como un almuerzo gratis

En el campo del aprendizaje automático, un teorema básico es que "no existe tal cosa como un almuerzo gratis". En otras palabras, ningún algoritmo es perfecto para todos los problemas, especialmente para el aprendizaje supervisado (por ejemplo, modelado predictivo).

Por ejemplo, no se puede decir que una red neuronal es mejor que un árbol de decisión en ningún caso, y viceversa. Están influenciados por muchos factores, como el tamaño o la estructura de su conjunto de datos.

Como resultado, al evaluar el rendimiento y seleccionar algoritmos en un conjunto de prueba determinado, debe usar diferentes algoritmos según el problema específico.

Por supuesto, el algoritmo elegido debe ser aplicable a su propio problema, lo que requiere elegir la tarea de aprendizaje automático correcta. Como analogía, si necesita limpiar su casa, puede usar una aspiradora, una escoba o un trapeador, pero nunca debe sacar una pala y cavar.

2. Sesgo y varianza

En estadística, la calidad de un modelo se mide por el sesgo y la varianza, así que primero popularicemos el sesgo y la varianza:

  • Desviación: Describe la brecha entre el E' esperado del valor predicho (valor estimado) y el valor real Y. Cuanto mayor sea la desviación, más se desvía de los datos reales.

  • Varianza: Describe el rango de variación y el grado de dispersión del valor predicho P, que es la varianza del valor predicho, es decir, la distancia de su valor esperado E. Cuanto mayor sea la varianza, más dispersa será la distribución de los datos.

El verdadero error del modelo es la suma de los dos, como en la Ecuación 3:

En general, si el conjunto de entrenamiento es pequeño, un clasificador con alto sesgo/baja varianza (p. ej., Naive Bayes NB) es más ventajoso que un clasificador con bajo sesgo/alta varianza (p. ej., KNN), porque este último ocurrirá sobreajuste. Sin embargo, a medida que su conjunto de entrenamiento crece, el modelo se vuelve mejor en la predicción de los datos originales y el sesgo disminuye, momento en el que los clasificadores de bajo sesgo/varianza alta mostrarán gradualmente su ventaja (ya que tienen un error asintótico más bajo), y un alto clasificador de sesgo ya no es suficiente para proporcionar un modelo preciso.

¿Por qué Naive Bayes tiene un alto sesgo y una baja varianza?

El siguiente contenido se cita de Zhihu:

Primero, suponga que conoce la relación entre el conjunto de entrenamiento y el conjunto de prueba. En pocas palabras, necesitamos aprender un modelo en el conjunto de entrenamiento y luego usarlo en el conjunto de prueba. Si el efecto es bueno o no, depende de la tasa de error del conjunto de prueba. Pero en muchos casos, solo podemos suponer que el conjunto de prueba y el conjunto de entrenamiento se ajustan a la misma distribución de datos, pero no podemos obtener los datos de prueba reales. En este momento, ¿cómo medir la tasa de error de prueba cuando solo se ve la tasa de error de entrenamiento?

Dado que hay pocas muestras de entrenamiento (al menos no suficientes), el modelo obtenido a través del conjunto de entrenamiento no siempre es cierto. (Incluso si la tasa correcta es del 100 % en el conjunto de entrenamiento, no significa que represente la distribución de datos real. Debemos saber que representar la distribución de datos real es nuestro propósito, en lugar de solo representar los puntos de datos limitados del entrenamiento). colocar). Además, en la práctica, las muestras de entrenamiento a menudo tienen ciertos errores de ruido, por lo que si persigue demasiado la perfección del conjunto de entrenamiento y utiliza un modelo muy complejo, hará que el modelo considere los errores en el conjunto de entrenamiento como características reales de distribución de datos. dando como resultado una estimación incorrecta de la distribución de datos. En este caso, será un desastre cuando se trata del conjunto de prueba real (este fenómeno se denomina sobreajuste). Pero no puede usar un modelo demasiado simple, de lo contrario, cuando la distribución de datos es más compleja, el modelo no es suficiente para describir la distribución de datos (refleja que incluso la tasa de error en el conjunto de entrenamiento es muy alta, este fenómeno es menor adecuado). El sobreajuste significa que el modelo adoptado es más complicado que la distribución de datos real, mientras que el ajuste insuficiente significa que el modelo adoptado es más simple que la distribución de datos real.

Bajo el marco del aprendizaje estadístico, cuando describimos la complejidad del modelo, tenemos una visión tal que Error = Sesgo + Varianza. El error aquí probablemente se puede entender como la tasa de error de predicción del modelo, que se compone de dos partes, una parte es la parte inexacta (sesgo) causada por el modelo demasiado simple, y la otra parte es causada por el modelo demasiado simple. complejo Mayor espacio para el cambio y la incertidumbre (Varianza).

Por lo tanto, es fácil analizar Naive Bayes de esta manera. Simplemente asume que los diversos datos son irrelevantes y es un "modelo seriamente simplificado"**. Por lo tanto, para un modelo tan simple, la parte de sesgo es mayor que la parte de varianza en la mayoría de los casos, es decir, alto sesgo y baja varianza.

En la práctica, para que el Error sea lo más pequeño posible, necesitamos equilibrar la proporción de Sesgo y Varianza al seleccionar un modelo, es decir, equilibrar el ajuste excesivo y el ajuste insuficiente.

Cuando la complejidad del modelo aumenta, la desviación disminuirá gradualmente, mientras que la varianza aumentará gradualmente.

3. Ventajas y desventajas de los algoritmos comunes

3.1 Bayesiano ingenuo

Naive Bayes pertenece al modelo generativo (con respecto al modelo generativo y al modelo discriminante, lo principal es si se requiere la distribución conjunta), es relativamente simple, solo necesita hacer un montón de conteos. Los clasificadores bayesianos ingenuos convergerán más rápido que los modelos discriminativos, como la regresión logística, si existe una suposición de independencia condicional (una más estricta), por lo que solo necesita menos datos de entrenamiento. Incluso si la suposición de independencia condicional de NB no se cumple, el clasificador de NB aún funciona muy bien en la práctica. Su principal desventaja es que no puede aprender la interacción entre funciones.En términos de R en mRMR, es redundancia de funciones. Para citar un ejemplo más clásico, por ejemplo, aunque te gustan las películas de Brad Pitt y Tom Cruise, no puede aprender que no te gustan las películas que jugaron juntos.

ventaja

  • El modelo bayesiano ingenuo se originó a partir de la teoría matemática clásica, tiene una base matemática sólida y una tasa de eficiencia de clasificación estable;

  • Tiene alta velocidad cuando entrena y consulta grandes números. Incluso con un conjunto de entrenamiento a gran escala, generalmente solo hay una cantidad relativamente pequeña de características para cada elemento, y el entrenamiento y la clasificación de los elementos es solo una operación matemática de probabilidad de características;

  • Funciona bien con datos a pequeña escala, puede manejar múltiples tareas de clasificación y es adecuado para el entrenamiento incremental (es decir, puede entrenar nuevas muestras en tiempo real);

  • Menos sensible a los datos faltantes, el algoritmo es relativamente simple y se usa a menudo en la clasificación de texto;

  • Naive Bayes es fácil de entender para la interpretación de resultados;

defecto

  • Necesidad de calcular la probabilidad previa;

  • Hay una tasa de error en la decisión de clasificación;

  • Sensible a la forma de expresión de los datos de entrada;

  • Dado que **"utiliza el supuesto de independencia de los atributos de la muestra, no funciona bien si los atributos de la muestra están relacionados"**;

Campo de aplicación Naive Bayes

  • Es ampliamente utilizado en la detección de fraudes;

  • si un correo electrónico es spam;

  • Si un artículo se clasifica en tecnología, política o deportes;

  • ¿Un fragmento de texto expresa una emoción positiva o negativa?

  • Reconocimiento facial.

3.2 Regresión logística

La regresión logística es un modelo discriminativo, acompañado de muchos métodos de regularización del modelo (L0, L1, L2, etc.), y no tiene que preocuparse por si sus características están correlacionadas como si estuviera utilizando Naive Bayes. También obtiene una interpretación probabilística decente en comparación con árboles de decisión, SVM e incluso puede actualizar fácilmente el modelo con nuevos datos (utilizando el descenso de gradiente en línea). Úselo si necesita un marco probabilístico (p. ej., para ajustar simplemente los umbrales de clasificación, indicar incertidumbre u obtener intervalos de confianza), o si desea incorporar rápidamente más datos de entrenamiento en el modelo más adelante.

Función sigmoidea : la expresión es la siguiente:

ventaja

  • Fácil de implementar y ampliamente utilizado en problemas industriales;

  • La cantidad de cálculo es muy pequeña, la velocidad es muy rápida y los recursos de almacenamiento son bajos;

  • Fracción de probabilidad de muestra de observación conveniente;

  • Para la regresión logística, la multicolinealidad no es un problema, se puede combinar con la regularización L2 para resolver el problema;

  • Computacionalmente económico, fácil de entender e implementar;

defecto

  • Cuando el espacio de características es grande, el rendimiento de la regresión logística no es muy bueno;

  • Fácil de **"desajustar"**, generalmente la precisión no es muy alta

  • No maneja bien un gran número de características o variables de varias clases;

  • Solo puede manejar dos problemas de clasificación (el softmax derivado sobre esta base se puede usar para clasificación múltiple) y debe **"separarse linealmente"**;

  • Para características no lineales, se requiere conversión;

Campo de aplicación de regresión logística

  • Utilizado en el campo de la clasificación binaria, se puede obtener el valor de probabilidad, que es adecuado para el campo clasificado según la probabilidad de clasificación, como clasificación de búsqueda, etc.;

  • El softmax extendido de la regresión logística se puede aplicar a campos de varias categorías, como el reconocimiento de escritura a mano, etc.;

  • evaluación crediticia;

  • medir el éxito del marketing;

  • Predecir los ingresos de un producto;

  • Si ocurrirá un terremoto en un día determinado.

3.3 Regresión lineal

La regresión lineal se usa para la regresión. No se usa para la clasificación como la regresión logística. Su idea básica es optimizar la función de error en la forma del método de mínimos cuadrados con ** "método de descenso de gradiente". Por supuesto, también puede ser utilizado directamente por la ecuación normal Encontrar la solución para los rendimientos de los parámetros:

En LWLR (regresión lineal ponderada localmente), la expresión de cálculo de los parámetros es:

Se puede ver que LWLR es diferente de LR LWLR es un modelo no paramétrico, porque cada cálculo de regresión debe atravesar la muestra de entrenamiento al menos una vez.

ventaja

  • Simple de implementar y simple de calcular;

defecto

  • No se pueden ajustar datos no lineales.

3.4 Algoritmo del vecino más cercano - KNN

KNN es el algoritmo del vecino más cercano, y su proceso principal es:

1. 计算训练样本和测试样本中每个样本点的距离(常见的距离度量有欧式距离,马氏距离等);
2. 对上面所有的距离值进行排序(升序);
3. 选前k个最小距离的样本;
4. 根据这k个样本的标签进行投票,得到最后的分类类别;

Cómo elegir un valor K óptimo depende de los datos. En general, un valor K mayor puede reducir la influencia del ruido durante la clasificación, pero desdibujará los límites entre las categorías. Se puede obtener un buen valor de K a través de varias técnicas heurísticas, como la validación cruzada. Además, la existencia de vectores de características de ruido y de no correlación reducirá la precisión del algoritmo del vecino más cercano. El algoritmo del vecino más cercano tiene un resultado de consistencia fuerte.Como los datos tienden a ser infinitos, el algoritmo garantiza que la tasa de error no excederá el doble de la tasa de error del algoritmo bayesiano. Para algunos buenos valores de K, K-Nearest Neighbors garantiza que la tasa de error no excederá la tasa de error teórica bayesiana.

ventaja

  • La teoría es madura y el pensamiento es simple, que puede usarse tanto para la clasificación como para la regresión;

  • Puede usarse para clasificación no lineal;

  • La complejidad del tiempo de entrenamiento es O(n);

  • Sin suposiciones sobre los datos, alta precisión, insensible a valores atípicos;

  • KNN es una tecnología en línea, los nuevos datos se pueden agregar directamente al conjunto de datos sin volver a entrenar;

  • La teoría KNN es simple y fácil de implementar;

defecto

  • El problema del desequilibrio muestral (es decir, algunas categorías tienen una gran cantidad de muestras, mientras que otras tienen una pequeña cantidad de muestras) no es efectivo;

  • Requiere mucha memoria;

  • Para conjuntos de datos con tamaños de muestra grandes, la cantidad de cálculo es relativamente grande (reflejada en el cálculo de distancia);

  • Cuando la muestra está desequilibrada, la desviación de la predicción es relativamente grande. Por ejemplo, hay menos muestras en una determinada categoría, mientras que hay más muestras en otras categorías;

  • KNN volverá a realizar una operación global para cada clasificación;

  • La elección del tamaño del valor k no es óptima en teoría y, a menudo, se combina con la validación cruzada de K-fold para obtener la selección óptima del valor k;

Campo de aplicación del algoritmo KNN

Clasificación de texto, reconocimiento de patrones, análisis de conglomerados, campos multicategoría.

3.5 Árbol de decisiones

Una de las grandes ventajas de los árboles de decisión es que son fáciles de interpretar. Puede lidiar con la interacción entre características sin presión y no es paramétrico, por lo que no tiene que preocuparse por los valores atípicos o si los datos son separables linealmente (por ejemplo, un árbol de decisión puede manejar fácilmente la clase A en alguna dimensión de característica x Al final, la categoría B está en el medio, y luego la categoría A aparece en el extremo frontal de la dimensión de característica x). Una de sus deficiencias es que no admite el aprendizaje en línea, por lo que después de la llegada de nuevas muestras, el árbol de decisiones debe reconstruirse por completo. Otra desventaja es que es propenso al sobreajuste, pero aquí es donde entran en juego los métodos de conjunto como Random Forest RF (o Boost Tree). Además, el bosque aleatorio a menudo es el ganador de muchos problemas de clasificación (generalmente un poco mejor que la máquina de vectores de soporte), su entrenamiento es rápido y ajustable, y no tiene que preocuparse por ajustar muchos parámetros como la máquina de vectores de soporte. , por lo que en el pasado Ambos siempre son populares.

Un punto muy importante en el árbol de decisión es seleccionar un atributo para ramificar, así que presta atención a la fórmula de cálculo de la ganancia de información y entiéndela en profundidad.

La fórmula de cálculo de la entropía de la información es la siguiente:

Entre ellos, n significa que hay n categorías de clasificación (por ejemplo, si es un problema de segunda clase, entonces n=2). Calcule la suma de probabilidad de estos dos tipos de muestras que aparecen en las muestras totales respectivamente, de modo que se pueda calcular la entropía de la información antes de la rama de atributo no seleccionada.

Ahora seleccione un atributo para la ramificación En este momento, la regla de ramificación es: si es así, divida la muestra en una rama del árbol, si no es igual, ingrese otra rama. Obviamente, es probable que las muestras en la rama incluyan dos categorías, y la suma de entropía de las dos ramas se calcula por separado, y se calcula la entropía de información total después de la rama, luego la ganancia de información en este momento. Con base en el principio de ganancia de información, se prueban todos los atributos y se selecciona un atributo que maximiza la ganancia como atributo de rama para este momento.

ventaja

  • El árbol de decisiones es fácil de entender y explicar, se puede visualizar y analizar, y las reglas se pueden extraer fácilmente;

  • Puede manejar datos nominales y numéricos al mismo tiempo;

  • Es más adecuado para procesar muestras con atributos faltantes;

  • Capaz de manejar características irrelevantes;

  • Al probar el conjunto de datos, la velocidad de ejecución es relativamente rápida;

  • Capacidad para producir resultados procesables y efectivos en grandes fuentes de datos en un período de tiempo relativamente corto.

defecto

  • Es propenso al sobreajuste (el bosque aleatorio puede reducir en gran medida el sobreajuste);

  • Es fácil pasar por alto la correlación de atributos en el conjunto de datos;

  • Para aquellos datos con números inconsistentes de muestras en cada categoría, en el árbol de decisión, al realizar la división de atributos, diferentes criterios de juicio traerán diferentes tendencias de selección de atributos; el criterio de ganancia de información tiene preferencia por atributos más deseables (típicamente algoritmo ID3 representativo), mientras que el Criterio de Tasa de Ganancia (CART) tiene una preferencia por los atributos menos deseables, pero cuando CART divide los atributos, ya no usa simplemente la Tasa de Ganancia para dividir los atributos directamente, sino que usa una regla heurística) (siempre que sea el uso de ganancia de información, que tiene esta deficiencia, como RF).

  • Cuando el algoritmo ID3 calcula la ganancia de información, el resultado está sesgado hacia las características con más valores numéricos.

medidas de mejora

  • Poda del árbol de decisión. Puede usar validación cruzada y agregar regularización.

  • El uso de algoritmos de combinación basados ​​en árboles de decisión, como el algoritmo de embolsado y el algoritmo de bosque aleatorio, puede resolver el problema del sobreajuste;

"Campos de aplicación de algoritmos de árboles de decisión"

Práctica de gestión empresarial, toma de decisiones de inversión empresarial, debido a la buena capacidad de análisis del árbol de decisiones, se usa ampliamente en el proceso de toma de decisiones.

3.5.1 ID3, algoritmo C4.5

El algoritmo ID3 se basa en la teoría de la información, con la entropía de la información y la ganancia de información como estándar de medición, para realizar la inducción y clasificación de datos. El algoritmo ID3 calcula la ganancia de información de cada atributo y selecciona el atributo con la mayor ganancia como atributo de prueba dado. La idea central del algoritmo C4.5 es el algoritmo ID3, que es una mejora del algoritmo ID3. Las mejoras incluyen:

  • El uso de la tasa de ganancia de información para seleccionar atributos supera la desventaja de elegir atributos con más valores al usar la ganancia de información;

  • poda durante la construcción de árboles;

  • Puede manejar datos no discretos;

  • Puede manejar datos incompletos.

ventaja

  • Las reglas de clasificación resultantes son fáciles de entender y tienen una alta precisión.

defecto

  • En el proceso de construcción del árbol, el conjunto de datos debe escanearse y clasificarse varias veces, lo que conduce a la ineficiencia del algoritmo;

  • C4.5 solo es adecuado para conjuntos de datos que pueden residir en la memoria. Cuando el conjunto de entrenamiento es demasiado grande para caber en la memoria, el programa no puede ejecutarse.

3.5.2 Clasificación CART y árbol de regresión

Es un método de clasificación de árbol de decisión que utiliza la función de estimación del índice de Gini basada en la distancia mínima para determinar la forma extendida del árbol de decisión generado por el subconjunto de datos. Si la variable objetivo es nominal, se denomina árbol de clasificación; si la variable objetivo es continua, se denomina árbol de regresión. Los árboles de clasificación son métodos para separar datos en clases discretas utilizando algoritmos estructurados en árbol.

ventaja

  • Muy flexible, puede permitir algunos costos de clasificación errónea, también puede especificar una distribución de probabilidad a priori y puede usar la poda automática de complejidad de costos para obtener un árbol más inductivo;

  • CART es muy robusto ante problemas como valores faltantes y gran cantidad de variables.

3.6 Adecuación

Adaboost es un modelo aditivo. Cada modelo se establece en función de la tasa de error del modelo anterior. Presta demasiada atención a las muestras incorrectas y reduce la atención a las muestras clasificadas correctamente. Después de sucesivas iteraciones, un modelo relativamente relativamente agradable. Este algoritmo es un algoritmo de refuerzo típico, y las ventajas de su teoría de la suma pueden explicarse mediante la desigualdad de Hoeffding. Los estudiantes interesados ​​pueden leer la descripción detallada del algoritmo AdaBoost en este artículo que escribí antes. A continuación se resumen sus ventajas y desventajas.

ventaja

  • Adaboost es un clasificador con una precisión muy alta.

  • Los subclasificadores se pueden construir usando varios métodos, y el algoritmo Adaboost proporciona el marco.

  • Cuando se utilizan clasificadores simples, los resultados calculados son comprensibles y la construcción de clasificadores débiles es extremadamente simple.

  • Sencillo, sin cribado de funciones.

  • No es propenso al sobreajuste.

Para conocer la diferencia entre los algoritmos Adaboost, GBDT y XGBoost, consulte este artículo: Diferencias entre Adaboost, GBDT y XGBoost

defecto

  • Sensible a valores atípicos

3.7 Máquina de vectores de soporte SVM

La máquina de vectores de soporte, un algoritmo duradero con alta precisión, proporciona una buena garantía teórica para evitar el sobreajuste, e incluso si los datos son linealmente inseparables en el espacio de características original, siempre que se proporcione una función kernel adecuada, puede funcionar muy bien . Es especialmente popular en problemas de clasificación de texto que son propensos a dimensiones ultra altas. Es una pena que el consumo de memoria sea grande, es difícil de explicar, y la operación y el ajuste de parámetros también son un poco molestos, pero el bosque aleatorio simplemente evita estas deficiencias y es más práctico.

ventaja

  • Puede resolver problemas de alta dimensión, es decir, grandes espacios de características;

  • Resolver problemas de aprendizaje automático con muestras pequeñas;

  • Capacidad para manejar interacciones de características no lineales;

  • Sin problema mínimo local; (en relación con la red neuronal y otros algoritmos)

  • No es necesario confiar en todos los datos;

  • Gran capacidad de generalización;

defecto

  • Cuando hay muchas muestras de observación, la eficiencia no es muy alta;

  • No existe una solución general para los problemas no lineales y, a veces, es difícil encontrar una función kernel adecuada;

  • El poder explicativo del mapeo de alta dimensión de las funciones del kernel no es fuerte, especialmente las funciones de base radial;

  • SVM convencional solo admite la clasificación binaria;

  • Sensible a los datos faltantes ;

La elección del kernel también es hábil (libsvm viene con cuatro funciones de kernel: kernel lineal, kernel polinomial, RBF y kernel sigmoide):

  • Primero, si el número de muestras es menor que el número de características, entonces no hay necesidad de elegir un kernel no lineal, simplemente use un kernel lineal;

  • En segundo lugar, si el número de muestras es mayor que el número de características, se puede usar un kernel no lineal para mapear las muestras a una dimensión más alta y, en general, se pueden obtener mejores resultados;

  • En tercer lugar, si el número de muestras y el número de características son iguales, en este caso se puede usar un kernel no lineal, y el principio es el mismo que el segundo.

Para el primer caso, también es posible reducir primero la dimensionalidad de los datos y luego usar un kernel no lineal, que también es un método.

Campo de aplicación de SVM

Clasificación de texto, reconocimiento de imágenes (principalmente dos campos de clasificación, después de todo, SVM convencional solo puede resolver dos problemas de clasificación).

3.8 Red neuronal artificial

ventaja

  • Alta precisión de clasificación;

  • Fuerte capacidad de procesamiento distribuido paralelo, almacenamiento distribuido y capacidad de aprendizaje,

  • Fuerte robustez y tolerancia a fallas a los nervios de ruido;

  • Con la función de memoria asociativa, puede abordar completamente relaciones no lineales complejas;

defecto

  • Las redes neuronales requieren una gran cantidad de parámetros, como topología de red, valores iniciales de pesos y umbrales;

  • Proceso de caja negra, el proceso de aprendizaje no se puede observar y los resultados de salida son difíciles de explicar, lo que afectará la credibilidad y aceptabilidad de los resultados;

  • Si el tiempo de aprendizaje es demasiado largo, puede caer en un mínimo local e incluso puede no lograr el propósito del aprendizaje.

Campo de aplicación de la red neuronal artificial.

En la actualidad, las redes neuronales profundas se han aplicado a la visión artificial, el procesamiento del lenguaje natural, el reconocimiento de voz y otros campos y han obtenido buenos resultados.

3.9 Agrupación de K-Means

Es un algoritmo de agrupamiento simple que divide n objetos en k particiones según sus atributos, k<n. El núcleo del algoritmo es optimizar la función de distorsión J para que converja a un mínimo local pero no a un mínimo global.

Para obtener artículos sobre la agrupación en clústeres de K-Means, consulte Algoritmos de aprendizaje automático - Agrupación de K-means. Con respecto a la derivación de K-Means, hay mucho conocimiento en él y contiene poderosas ideas de EM.

ventaja

  • El algoritmo es simple y fácil de implementar;

  • El algoritmo es rápido;

  • El algoritmo es relativamente escalable y eficiente para procesar grandes conjuntos de datos, ya que su complejidad es aproximadamente O(nkt), donde n es el número de todos los objetos, k es el número de grupos y t es el número de iteraciones. Generalmente k<<n. Este algoritmo **"normalmente converge localmente"**.

  • El algoritmo trata de encontrar las k divisiones que minimizan el valor de la función de error al cuadrado. La agrupación en clústeres funciona mejor cuando los clústeres son densos, esféricos o grumosos, y los clústeres son distintos entre sí.

defecto

  • Tiene altos requisitos en tipos de datos y es adecuado para datos numéricos;

  • Puede converger a un mínimo local, lento para converger en datos a gran escala

  • El número de grupos k es un parámetro de entrada, un k inapropiado puede arrojar resultados deficientes.

  • Es sensible al valor del centro del conglomerado del valor inicial, lo que puede conducir a diferentes resultados de conglomerados para diferentes valores iniciales;

  • No es adecuado para encontrar conglomerados de forma no convexa o conglomerados de tamaños muy variados.

  • Sensible al "ruido" y a los datos atípicos, una pequeña cantidad de estos datos puede tener un gran impacto en el promedio.

3.10 Algoritmo de expectativa máxima de EM

El algoritmo EM es un método de agrupamiento basado en modelos, que es un algoritmo para encontrar la estimación de máxima verosimilitud de los parámetros en un modelo de probabilidad que depende de variables ocultas que no se pueden observar. El paso E estima variables ocultas, el paso M estima otros parámetros y, alternativamente, lleva el valor extremo al máximo.

El algoritmo EM es más complejo que el algoritmo K-means y la convergencia es más lenta. No es adecuado para conjuntos de datos a gran escala y datos de alta dimensión, pero es más estable y preciso que el algoritmo K-means. EM se usa a menudo en el campo de la agrupación de datos en el aprendizaje automático y la visión por computadora.

3.11 Algoritmo integrado (algoritmo AdaBoost)

ventaja

  • Buen uso de clasificadores débiles para cascada;

  • Se pueden utilizar diferentes algoritmos de clasificación como clasificadores débiles;

  • AdaBoost tiene alta precisión;

  • En comparación con el algoritmo de embolsado y el algoritmo Random Forest, AdaBoost considera completamente el peso de cada clasificador;

defecto

  • El número de iteraciones de AdaBoost, es decir, el número de clasificadores débiles no es fácil de establecer y puede determinarse mediante validación cruzada;

  • El desequilibrio de datos conduce a una disminución en la precisión de la clasificación;

  • El entrenamiento requiere mucho tiempo y el mejor punto de segmentación del clasificador actual se vuelve a seleccionar cada vez;

Campo de aplicación de AdaBoost

En el campo del reconocimiento de patrones y la visión artificial, se utiliza en escenarios de clasificación binaria y multiclasificación.

3.12 Algoritmo de clasificación (PageRank)

PageRank es el algoritmo de clasificación de páginas de Google, que determina la importancia de todas las páginas web en función de la relación de regresión de las páginas web vinculadas desde muchas páginas web de alta calidad, que aún deben ser páginas web de alta calidad. (Es decir, cuantos más amigos increíbles tenga una persona, mayor será la probabilidad de que sea increíble).

ventaja

  • Es completamente independiente de la consulta, solo depende de la estructura de enlace de la página web y se puede calcular sin conexión.

defecto

  • El algoritmo PageRank ignora la puntualidad de la búsqueda web.

  • Las páginas antiguas tienen una clasificación alta, han existido durante mucho tiempo y han acumulado una gran cantidad de enlaces internos, mientras que las páginas nuevas con la información más reciente tienen clasificaciones bajas porque casi no tienen enlaces internos.

3.13 Algoritmo de regla de asociación (algoritmo a priori)

El algoritmo Apriori es un algoritmo para la minería de reglas de asociación, que se utiliza para extraer las relaciones de datos inherentes, desconocidas pero realmente existentes. Su núcleo es un algoritmo recursivo basado en la idea de conjuntos de frecuencia de dos etapas.

El algoritmo Apriori se divide en dos etapas.

  • Encuentra conjuntos de elementos frecuentes

  • Encontrar reglas de asociación de conjuntos de elementos frecuentes

defecto

  • Cuando el conjunto de elementos candidatos se genera en cada paso, se generan demasiadas combinaciones en un ciclo, y los elementos que no deberían estar involucrados en la combinación no se excluyen;

  • Cada vez que se calcula el grado de soporte de un conjunto de elementos, todos los registros de la base de datos se escanean y comparan una vez, lo que requiere una gran carga de E/S.

4. Referencia de selección de algoritmo

El autor ha traducido algunos artículos extranjeros antes, y uno de ellos proporcionó una técnica de selección de algoritmo simple:

  1. La primera opción debe ser la regresión logística, si su efecto no es muy bueno, entonces sus resultados pueden usarse como referencia para comparar con otros algoritmos sobre la base;

  2. Luego pruebe árboles de decisión (bosques aleatorios) para ver si puede mejorar drásticamente el rendimiento de su modelo. Incluso si no lo usa como el modelo final al final, puede usar un bosque aleatorio para eliminar las variables de ruido y hacer una selección de características;

  3. Si la cantidad de características y muestras de observación es muy grande, entonces cuando los recursos y el tiempo son suficientes (esta premisa es muy importante), usar SVM es una opción.

Por lo general: [GBDT>=SVM>=RF>=Adaboost>=Other...], el aprendizaje profundo es muy popular ahora y se usa en muchos campos. Se basa en redes neuronales. En la actualidad, el autor también es aprendiendo, pero el conocimiento teórico no es sólido y la comprensión no es lo suficientemente profunda, por lo que no lo presentaré aquí. Espero poder escribir un artículo en el futuro.

Los algoritmos son importantes, "pero buenos datos son mejores que buenos algoritmos ". Diseñar buenas características es de gran beneficio. Si tiene un conjunto de datos muy grande, cualquiera que sea el algoritmo que utilice, es posible que no tenga mucho impacto en el rendimiento de la clasificación (en este punto, puede tomar una decisión en función de la velocidad y la facilidad de uso).

referencias

  1. Comparación de algoritmos de aprendizaje automático

  2. Aprendizaje automático: ventajas y desventajas de los algoritmos comunes

  3. Selección del mejor algoritmo de aprendizaje automático para su problema de regresión

Supongo que te gusta

Origin blog.csdn.net/qq_34160248/article/details/130757328
Recomendado
Clasificación