Notas de papel en inglés clásico ———— Deep Forest Zhou Zhihua
Resumen
Traducción personal: la
mayoría de los modelos actuales de aprendizaje profundo se basan en redes neuronales, por ejemplo: modelos no lineales multicapa parametrizados y diferenciables que pueden entrenarse mediante algoritmos de retropropagación. En este artículo, exploramos una solución para construir un modelo profundo basado en un modelo de árbol de decisión no diferenciable. Este artículo analiza los secretos detrás de las redes neuronales profundas, especialmente después de comparar las redes neuronales profundas con las técnicas tradicionales de aprendizaje automático como las redes neuronales básicas, los árboles de decisión y los algoritmos de elevación, especulamos que el éxito de las redes neuronales profundas se puede atribuir a tres aspectos: primero, Procesamiento de capa a capa; segundo, transferencia de características dentro del modelo; tercero, suficiente complejidad del modelo. Por un lado, nuestra conjetura puede ayudar a la comprensión del campo del aprendizaje profundo; por otro lado, para confirmar nuestra conjetura, proponemos un algoritmo de bosque profundo que contiene las tres características anteriores. Los experimentos muestran que el rendimiento de este algoritmo es más robusto para la configuración de hiperparámetros. En muchos casos, en diferentes campos y conjuntos de datos, encontramos que este algoritmo puede lograr un buen rendimiento utilizando parámetros predeterminados. Esta investigación abre la puerta al campo de los modelos de aprendizaje profundo que se pueden construir sin cálculos de gradiente y muestra la posibilidad de construir modelos de aprendizaje profundo sin algoritmos de retropropagación.
Introducción
El primer párrafo de la introducción presenta una descripción general de DNN (Deep Neural Network).
Punto de inflexión --- pero DNN tiene muchas deficiencias --- Comience a enumerar las deficiencias: resumen personal : las deficiencias de DNN
:
- Hay demasiados hiperparámetros, el diseño de entrenamiento es muy hábil y hay demasiados factores que influyen dentro del modelo que son difíciles de analizar.
- Necesita una gran cantidad de conjuntos de datos de entrenamiento etiquetados (costo excesivo)
- El modelo se ha arreglado antes de que comience el entrenamiento Hay algunos problemas que no requieren un modelo tan complicado, lo que desperdicia potencia de cálculo.
- La red neuronal es una caja negra. Actualmente no podemos saber por qué los resultados de entrenamiento de la red neuronal son inferiores al algoritmo de bosque aleatorio y XGboost en algunos problemas.
Se dibujan puntos contradictorios: para mejorar la tasa de precisión, debemos diseñar el modelo más profundamente, pero los algoritmos actuales se basan todos en gradientes.
Se plantean tres preguntas:
1. ¿Es necesario utilizar métodos diferenciales para explorar modelos más profundos?
2. ¿Es factible sin el algoritmo de retropropagación?
3. ¿Cómo aplicamos los algoritmos de aprendizaje profundo para ganar en algunos problemas en los que los algoritmos XBboost y RF funcionan mejor?
Explique la relevancia de los resultados de ese artículo en 2017 para este artículo.
¿Presenta de manera concisa lo que hace cada parte del artículo?
1. Aprendizaje integrado
El primer párrafo describe la relación de integración entre clasificadores débiles y clasificadores fuertes. El
segundo párrafo escribe expresiones matemáticas y cómo describir la diversidad. El
tercer párrafo escribe cuatro soluciones en aplicaciones prácticas.
- Estrategia de ensacado (muestreo)
- Subespacio de características de partición
- Diseñar diferentes parámetros de aprendizaje inicial
- Use diferentes expresiones de salida para diferentes clasificadores como ECOC
En segundo lugar, la clave del aprendizaje profundo
Se demuestra por qué el procesamiento de capa a capa es la clave para el aprendizaje profundo. Este descubrimiento proporciona ideas a GCforest.
Al mismo tiempo, la comparación encontró que la complejidad del modelo también es muy importante.
Tres, algoritmo gcForest
1. Estructura en cascada
Descripción de la imagen traducida:
La estructura del bosque en cascada. Suponiendo que cada nivel de cascada incluye dos bosques aleatorios completos y dos bosques aleatorios incompletos, asumiendo que hay tres categorías que pueden clasificarse; por lo tanto, cada bosque generará un vector tridimensional. Luego, estos vectores se conectan en cascada con el vector de características de entrada.
Explique el bosque completamente aleatorio y el bosque aleatorio incompleto:
asigne características al azar en cada nodo y luego continúe creciendo hasta el nodo hoja, este tipo de árbol se llama árbol completamente aleatorio.
n árboles completamente aleatorios forman un bosque completamente aleatorio.
Ingrese d características, seleccione aleatoriamente las características raíz d como características candidatas y luego use el algoritmo de división basado en el coeficiente de Gini para generar un árbol aleatorio incompleto. n árboles aleatorios incompletos forman un bosque aleatorio incompleto.
Donde n es un hiperparámetro del algoritmo Gcforest.
Por ejemplo:
las formas de los diferentes nodos de hojas (triángulo, círculo, cuadrado) indican diferentes categorías. La línea roja representa el camino.
Para cada árbol, cuente los porcentajes de las tres categorías en los nodos de hojas y resúmalos en el bosque, de modo que cada bosque pueda dar un resultado de evaluación de este tipo .
Este resultado de la evaluación tridimensional se conecta en cascada con otros resultados de la evaluación forestal como un vector de características mejorado y luego se envía a la siguiente capa de la red.
Determine el número de capas en cascada mediante la validación cruzada de k veces. Esto es mejor que DNN.
Escaneo de granularidad múltiple
Inspirado por CNN y RNN, use el mismo método de extracción de características.
Hiperparámetros (en comparación con CNN):