Si ya hemos conocido una función, ¿podemos generar una red neuronal para la inferencia, sin pasar por el proceso de capacitación que consume tiempo y energía?

Vamos a pensarlo:

Esto es como ajustar, por ejemplo, una aproximación polinómica a una función dada. Lo que haría en ese caso es expresar el error entre su función y su aproximación polinómica en términos de los parámetros de la función de aproximación (por ejemplo, coeficientes polinómicos) y luego minimizar el error.

Para redes neuronales, calculará el error entre la salida de la red y la función deseada. Este cálculo de error puede ser simbólico / analítico (como en dx ^ 2 / dx = 2x), o numérico (usando cálculos numéricos, en puntos de muestra de las funciones). Creo que expresar analíticamente una gran red neuronal sería prohibitivo. Por lo tanto, el enfoque práctico sería calcular el error numéricamente (por ejemplo, revisar muchos valores de entrada posibles y calcular las salidas y luego los errores); y luego minimiza el error. Pero entonces, la forma práctica de hacerlo es básicamente el entrenamiento de una red.

En resumen, la forma más práctica de adaptar una red neuronal a una función dada es a través del entrenamiento convencional, que es casi por definición, si lo piensas. Pero si está preguntando si podría hacer este ajuste completamente en el dominio analítico / simbólico, no creo que sea posible, excepto en algunos casos muy limitados.

Sí. Si la función es indefinidamente diferenciable en el rango de interés, puede definir un NN con una capa oculta. La neurona de salida es una función de identidad y las funciones de activación de las capas ocultas son la identidad, el cuadrado, el cúbico, la cuarta potencia, la quinta, etc. Las ganancias que simplemente obtiene de la serie Taylor (expansión polinómica).

La pregunta es: ¿por qué harías eso? Los NN son interpoladores generales que se utilizan como último recurso cuando no tienes idea de la topología de tu función objetivo. Si conoce la función, úsela, por el amor de Dios. O, en caso de que le preocupe el costo computacional de su función, simplemente use una expansión en serie para aproximarlo. En realidad, mi sugerencia hace precisamente eso, con la diferencia de que podrías usar un buen hardware NN moderno para calcular aún más rápido.

No, no puede, ya que necesita la función correcta, así como los pesos y sesgos correctos para tener la red neuronal precisa, y obtener los pesos y sesgos correctos es el propósito del proceso de capacitación.

No. Si ya conoce la función, simplemente evalúe la función. Es casi seguro que será más rápido que evaluar una red neuronal.

Si desea utilizar una red neuronal por cualquier razón, debe entrenarla.