Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 162

 
SanSanych Fomenko:

Gracias, lo he leído.

Creo que el autor es demasiado optimista.

En principio, el problema del sobreentrenamiento no tiene solución.

...

En teoría, es solucionable desde el punto de vista de la determinación universal de Laplace, por ejemplo, si se conocen de antemano todos los factores necesarios y se dispone de información de acceso a ellos. Pero en la práctica esta "decidibilidad" tiene muchos problemas (no se conocen todos los factores y no todos están disponibles, y los que están disponibles, a menudo son ruidosos).

SanSanych Fomenko:


...

Según mi convicción, si los predictores de entrada no están despejados primero de los de ruido, es decir, son "irrelevantes" para la variable objetivo, entonces el método de "coarsening" no funciona y otros métodos que utilizan el concepto de "importancia" de los predictores tampoco funcionan.

Que según tu creencia, y basada en la confirmación por mis experiencias con jPrediction, parece ser exactamente lo que debería ser?

Pero la tragedia es que no todas las experiencias confirman la afirmación anterior. Todo depende del tipo de métodos de aprendizaje automático que se utilicen.

Por ejemplo, Viktor Tsaregorodtsev llevó a cabo una investigación sobre redes neuronales con BackPropagation y, basándose en los resultados, llegó a conclusiones bastante opuestas en su artículo"Reduction of neural network size does not lead to increased generalization ability", y cito:

"Esto contradice la opinión de que la eliminación de rasgos ruidosos y poco informativos y de neuronas redundantes es obligatoria y útil en la práctica".

En otras palabras, resulta que es absolutamente inútil sacar conclusiones generales para todos los métodos de aprendizaje automático sin excepción (para hacer un enfoque único). Para algunos métodos, estas "conclusiones" serán correctas, mientras que para otros pueden resultar deliberadamente erróneas.

 
Yury Reshetov:

Al aumentar la complejidad de los modelos en jPrediction nos referimos a incrementar gradualmente el número de predictores. Porque en jPrediction el número de neuronas en la capa oculta es 2^(2*n+1), donde n es el número de predictores. Por tanto, al aumentar el número de predictores, aumenta la complejidad del modelo (número de neuronas en la capa oculta).


Si hay 100 predictores, según tu fórmula el número de neuronas en una capa oculta será casi igual al número de átomos del Universo (me da miedo pensar en 200 predictores). Parece que tienes recursos divinos: computacionales y de tiempo.



 
Andrey Dik:

CC acaba de dar un ejemplo muy desafortunado mientras sigue persistiendo en su ignorancia...

¿Qué quiere decir con "otras fuerzas"? Sobre el balón y la pelusa actúan las mismas fuerzas: la fuerza de la gravedad (peso) y la fuerza del flujo del viento distribuidas en la mitad de la superficie del cuerpo.

...

Andrew, te recuerdo que este hilo es sobre aprendizaje automático, no sobre problemas de física.

Por favor, tened la amabilidad de no meter la pata en temas distraídos, que no son bienvenidos en este hilo.

Si tienes tantas ganas de presumir de tus conocimientos de física, abre un hilo aparte dedicado a ello.

Sobre todo porque tratas de desafiar la metáfora con cara de listo, poniéndote en una posición deliberadamente estúpida.

 
Yury Reshetov:

Andrew, te recuerdo que este hilo es sobre aprendizaje automático, no sobre problemas de física.

Por favor, tened la amabilidad de no meter la pata en temas distraídos, que no son bienvenidos en este hilo.

Si quieres presumir de tus conocimientos de física, inicia un hilo aparte sobre física.

Más aún cuando tratas de poner una cara inteligente para desafiar una metáfora, poniéndote en una posición deliberadamente estúpida.

Bueno, si crees que las metáforas basadas en ejemplos erróneos tienen algún valor, no voy a interferir más.

Lo siento. Y tú CC me disculpas.

 
sibirqk:

Si hay 100 predictores, según tu fórmula el número de neuronas en una capa oculta se acercará al número de átomos del Universo (no me atrevo a pensar en 200 predictores). Parece que tienes recursos divinos: computacionales y de tiempo.

No me importa si hay 10.000 predictores. No es seguro que todos ellos sean informativos. Es decir, jPrediction encontrará algunos de los más informativos entre ellos, complicando gradualmente los modelos. Se detendrá tan pronto como la generalizabilidad comience a disminuir.

No llega a los recursos divinos. Un ordenador personal ordinario es suficiente.

 
Andrey Dik:

De acuerdo, si crees que las metáforas basadas en ejemplos erróneos tienen algún valor, entonces no me entrometeré a partir de ahora.

Lo siento. Y tú CC me disculpas.

Las metáforas no tienen más valor que el retórico, independientemente de su éxito en la retórica. Y meterse con ellos es una mauvais ton.

Disculpa aceptada, por supuesto.

 
Yury Reshetov:
Las metáforas no tienen más valor que el retórico, independientemente de su éxito en la retórica. Y meterse con ellos es una mauvais ton.

Si algo que se dice no tiene valor, es bolabolismo. No creo que CC haya querido hacer bola-bola-bola-bola, simplemente es la forma en que lo hizo.

Y las metáforas se utilizan cuando se quiere transmitir una idea en un lenguaje accesible mediante la comparación. Así que unos ejemplos son buenos para un político, y otros ejemplos son comprensibles para un físico nuclear, por lo que el político y el físico nuclear se entienden, utilizan comparaciones, metáforas. Así pues, las metáforas tienen un propósito definido: facilitar la comprensión de los interlocutores.

No importa, olvídalo.

 
Andrey Dik:

Si algo que se dice no tiene valor, es bolabolismo. No creo que CC quisiera hacer bola-bola-bola, simplemente le salió así.

Todo lo que hizo fue dar una mala metáfora. ¿Y qué? ¿A la pared para ponerlo por eso?

Todos somos humanos y a veces cometemos errores.

Otra cosa es que haya tanto florecimiento por ello, lo que reduce excesivamente el valor informativo del tema. Y eso no es suficiente.

 
Yury Reshetov:

En teoría, se puede resolver en términos de determinismo universal de Laplace, por ejemplo, si se conocen todos los factores necesarios y se tiene acceso a ellos. Pero en la práctica esa "decidibilidad" tiene muchos problemas (no se conocen todos los factores y no todos están disponibles, y los que están disponibles, a menudo son ruidosos).

Esto, según tu creencia, y basándome en la confirmación de mis experimentos con jPrediction, parece ser exactamente como debería ser...

Pero el problema es que no todas las experiencias confirman la afirmación anterior. Todo depende del tipo de métodos de aprendizaje automático que se utilicen.

Por ejemplo, Victor Tsaregorodtsev ha realizado una investigación sobre redes neuronales con BackPropagation, y los resultados llegaron a conclusiones bastante opuestas en su artículo"Reduction of neural network size does not lead to higher generalization ability", y cito:

"Esto contradice la opinión de que la eliminación de rasgos ruidosos y poco informativos y de neuronas redundantes es obligatoria y útil en la práctica".

En otras palabras, resulta que es absolutamente inútil sacar conclusiones generales para todos los métodos de aprendizaje automático sin excepción (para hacer un enfoque único). Para algunos métodos estas "conclusiones" serán correctas, mientras que para otros pueden ser deliberadamente erróneas.

Si miras las primeras publicaciones del autor de los algoritmos randomforest, el autor con toda seriedad afirmaba que el rf no es propenso al sobreentrenamiento en absoluto y daba muchos ejemplos. El propio paquete randomforest está construido de manera que excluye la más mínima sospecha de sobreentrenamiento.

Al mismo tiempo, el algoritmo más sobreentrenado es randomforest. Me he quemado personalmente.

Sólo creo en las cifras obtenidas por la siguiente metodología.

Tomamos dos archivos que se suceden en el tiempo.

Dividimos el primer archivo de forma aleatoria en tres partes: enseñanza, prueba y validación.

  • Enseñamos en la parte de entrenamiento, que a su vez se utiliza para enseñar el algoritmo, y en la parte de evaluación - la muestra AOB - se llama fuera de la muestra. Tenemos el error de aprendizaje. Obtenemos una tajada para ALE mediante algoritmos de validación cruzada, es decir, es diferente todo el tiempo.
  • Comprobamos el modelo entrenado en la parte de prueba y validación del primer archivo.
  • obtenemos el error de aplicar el modelo previamente entrenado. Los tres errores deberían estar cerca.

Pasa al segundo archivo, que está detrás del primero en el tiempo.

Aplique el modelo entrenado a este segundo archivo. El error resultante NO debería ser muy diferente de los 3 errores.

ESTO DA COMO RESULTADO CUATRO VALORES DE ERROR QUE NO SON MUY DIFERENTES ENTRE SÍ.

Para mí esta es la única prueba de la falta de sobreentrenamiento. Y si además obtenemos un error cercano a estos cuatro en el probador, podemos operar.

Eso es todo en lo que creo.

Un número abrumador de publicaciones sobre el aprendizaje automático no se ha probado en ningún segundo archivo análogo. La razón es trivial. Los algoritmos NO se aplican a las series temporales. Y resulta que una división aleatoria del archivo número uno es suficiente. Y este es el caso del reconocimiento de la escritura a mano, por ejemplo.

 

En cuanto a mis metáforas y analogías.

Me gradué en matemáticas aplicadas. Y mis profesores creían que yo, como todos mis compañeros, era capaz de dominar cualquier herramienta matemática. Y mis profesores consideraban que el principal problema de nuestro trabajo futuro era resolver el problema de la aplicabilidad de una herramienta concreta a un problema práctico concreto. Esto es lo que he hecho toda mi vida, pero dominar cualquier herramienta .... En R hay cientos o miles de ellos, ¿y qué?

Todo este trolling en mi dirección...

Contradecir al troll sólo es alimentarlo.

Por supuesto, me gustaría poder limpiar el hilo, era un gran hilo.