A medida que profundizamos en la literatura sobre redes neuronales , podemos identificar otros métodos con topologías neuromórficas (arquitecturas similares a "redes neuronales"). Y no estoy hablando del teorema de aproximación universal . A continuación se dan ejemplos.
Entonces, me hace preguntarme: ¿cuál es la definición de una red neuronal artificial? Su topología parece cubrir todo.
Ejemplos:
Una de las primeras identificaciones que hacemos es entre PCA y un Autoencoder lineal con pesos atados en el codificador y decodificador y activaciones con umbral en la capa de cuello de botella.
Además, se realiza una identificación común entre modelos lineales (regresión logística en especial) y una red neuronal sin capa oculta y una sola capa de salida. Esta identificación abre varias puertas.
¿Serie de Fourier y Taylor? ANNs . SVM ? ANA. Proceso Gaussiano? ANN (con una sola capa oculta con infinitas unidades ocultas).
Y así, con la misma facilidad, podemos incorporar versiones arbitrarias regularizadas con funciones de pérdida especializadas de estos algoritmos en un marco de red neuronal.
Pero cuanto más cavamos, más similitudes aparecen. Me topé con los árboles de decisión neuronales profundos , que identifican una arquitectura ANN específica con árboles de decisión, lo que permite que estos se aprendan mediante métodos ANN (como la propagación hacia atrás de Pendiente de gradiente). A partir de esto, podemos construir bosques aleatorios y árboles de decisión potenciados por gradientes a partir de topologías de redes neuronales únicamente.
Si todo se puede expresar como una red neuronal artificial, ¿qué define una red neuronal artificial?
Respuestas:
Jürgen Schmidhuber, " Aprendizaje profundo en redes neuronales: una visión general " traza la historia de conceptos clave en redes neuronales y aprendizaje profundo. En su opinión, las redes neuronales parecerían abarcar esencialmente cualquier modelo que pueda caracterizarse como un gráfico dirigido donde cada nodo represente alguna unidad computacional. Schmidhuber es un destacado investigador de redes neuronales, y escribió el artículo original sobre redes LSTM con Sepp Hochreiter.
Por otro lado, no estoy seguro de que sea necesariamente rentable intentar construir una taxonomía de cubos mutuamente excluyentes para las estrategias de aprendizaje automático. Creo que podemos decir que hay perspectivas desde las cuales los modelos pueden verse como redes neuronales. No creo que esa perspectiva sea necesariamente la mejor o útil en todos los contextos. Por ejemplo, todavía planeo referirme a bosques aleatorios y árboles impulsados por gradientes como "conjuntos de árboles" en lugar de abstraer sus distinciones y llamarlos "árboles de redes neuronales". Además, Schmidhuber distingue las NN de las máquinas del núcleo, a pesar de que las máquinas del núcleo tienen algunas conexiones con las NN, cuando escribe "En el nuevo milenio, las NN profundas finalmente han atraído la atención generalizada, principalmente superando los métodos alternativos de aprendizaje automático, como las máquinas kernel ... en numerosas aplicaciones importantes. "
fuente
Si desea una definición básica de un ANN, podría decir que es un modelo gráfico dirigido, donde las entradas y salidas se procesan en cada nodo a través de una función de activación, y la mayor parte del descenso del gradiente de tiempo se usa para entrenarlo. Entonces, la pregunta realmente es: ¿qué modelos se pueden expresar como modelos gráficos?
No soy un experto, pero creo que, en teoría, se puede demostrar que algunos ANN están completos, lo que significa que deberían poder hacer cualquier conjunto de cálculos posible (con un posible número infinito de recursos, eso sí).
También voy a interpretar su pregunta de la siguiente manera:
Una red neuronal vainilla puede emular un árbol de decisión, mediante el uso de activaciones escalonadas laterales. El problema es que tales activaciones de unidad tienen gradiente cero, por lo que el descenso normal del gradiente no funcionará. Puede decir, "no hay problema, solo use una forma modificada de descenso de gradiente". Sin embargo, eso todavía no es suficiente. Para un mejor ejemplo, tome algo como XGBOOST, que no es solo bosques impulsados por gradientes. Hay mucho trabajo adicional para elegir puntos divididos, podar, optimizar la velocidad, etc. Tal vez después de suficientes modificaciones puedas hacer un ANN de aspecto similar, pero no está del todo claro que tal ANN funcione al menos como bueno, ni si está optimizado para hacer el trabajo.
fuente
"For any given model, can I slap together an ANN model to emulate that model, as close as possible, and in a reasonable amount of time?"
tengo miedo de decir que ese no es el punto. El punto es que la topología de ANN es tan general que parece cubrir todo, y la estrategia de optimización no parece ser capaz de determinar qué es y qué no es un ANN. Por lo tanto, la pregunta, ¿qué define un ANN? Porque de lo contrario, todo es, en cierto modo, un ANN expresado en otros términos."A vanilla neural network can emulate a decision tree, by using heaviside step-activations. The problem is that such unit activations have zero gradient, so normal gradient descent won't work. You might say, "no problem, just use a modified form of gradient descent." However, that's still not enough. [...]"
- Como podríamos afirmar, la optimización no es un factor determinante para la definición de lo que constituye un ANN. Si puede escribir cada árbol de decisión como una red neuronal (y podemos hacerlo), entonces podemos decir con seguridad que los DT son (un tipo de) NN, mientras que lo contrario no es cierto."If you want a basic definition of an ANN, you might say that it's a directed-graphical-model, where inputs and outputs are processed at each node via an activation function, and most of the time gradient descent is used to train it. So the question really becomes: what models out there can be expressed as graphical models?"
- Estoy de acuerdo con ésto. Entonces, "Red neuronal" puede interpretarse como la clase más general de modelos, quizás solo menos general que "Modelos de gráficos", que es un superconjunto de modelos de gráficos no dirigidos y dirigidos. Quizás podría explicar más sobre esto;)Quizás, un nombre más exacto para ANNs es "redes diferenciables", es decir, funciones parametrizadas complejas que se pueden optimizar utilizando el descenso de gradiente o su variante. Esta es una definición muy general que enfatiza la diferenciabilidad, pero no dice nada sobre las ideas principales, las tareas para las que es adecuada, el marco matemático subyacente, etc.
Tenga en cuenta que la diferenciabilidad es un rasgo, no necesariamente el principal. Por ejemplo, SVM se puede entrenar usando el descenso de gradiente y, por lo tanto, exhibe propiedades de una red neural / diferenciable, pero la idea principal es la separación de datos usando hiperplanos. El codificador automático variable utiliza MLP para codificador y decodificador, pero la función que optimiza proviene de estadísticas bayesianas, etc.
También hay algunos modelos que a menudo se denominan redes neuronales, pero no usan GD para aprender. Un buen ejemplo es RBM. Mi conjetura es que la etiqueta "red neuronal" se le atribuyó principalmente por razones históricas; eventualmente, el creador de RBM es Geoffrey Hinton, y Hinton es un tipo de red neuronal, ¿verdad? Sin embargo, si analiza el modelo, verá que la estructura de RBM es una función de costo neto basada en energía de Markov, proviene de la física estadística de principios del siglo XX y el muestreo de MCMC / Gibbs se ha desarrollado en paralelo y totalmente independiente de las redes neuronales. .
fuente
Podría intentar postular algunas cosas que ayudan a definir una red neuronal.
Estoy bastante seguro de que esto cubre todas las redes neuronales de uso común hoy en día y también algunas esotéricas.
Es independiente de la optimización (si impusiéramos una optimización basada en gradiente, las redes evolucionadas no serían redes neuronales).
No menciona neuronas / nodos o capas (algunas redes neuronales hoy en día apenas se describen con estos términos), pero supongo que podríamos incorporar eso y ser un poco más restrictivo.
fuente