L'Apprentissage Automatique dans le trading : théorie, modèles, pratique et trading algo - page 2831

 
Aleksey Nikolayev #:

Je n'ai pas étudié la question en détail. L'idée semble simple, mais les modalités de mise en œuvre comportent de nombreuses subtilités techniques.

On peut également se demander ce que signifie trouver le maximum dans une fonction bruyante....

Si j'ai bien compris la définition - "optimiser une fonction bruyante" - cela signifie que la fonction est complexe et qu'il est difficile de trouver le maximum, que les algorithmes de gradient ne sont pas applicables, et ainsi de suite... En gros, ce n'est pas grave, il a appliqué un algorithme d'optimisation globale et il est parti à la recherche du maximum global....


Mais je vois les choses différemment : je veux trouver le maximum d'une fonction bruyante mais débarrassée du bruit, non pas le maximum global d'une fonction bruyante, mais le maximum global d'une fonction débruitée.....

(Et ce n'est pas trivial, parce que la fonction n'est pas connue et que les paramètres du bruit ne sont pas connus....).

What optimization algorithm can be used to find the maximum in a noisy multidimensional parameter space
What optimization algorithm can be used to find the maximum in a noisy multidimensional parameter space
  • 2022.12.07
  • mr.T mr.T 113 6 6 bronze badges
  • stats.stackexchange.com
I tried several algorithms that seem to be able to handle this, but it didn't work for me. Here is my fitness function which just looks for the max by index
 
СанСаныч Фоменко #:

1. La question de Dick est parfaitement valable et correcte. Je n'utilise pas les NS, mais je sais que toute fonction d'un package R contient nécessairement une référence à l'auteur de l'algorithme et, pour les algorithmes sérieux, une référence à l'article/au livre qui décrit l'algorithme mis en œuvre dans R. Puisque vous connaissez bien les NS, si vous utilisiez R, vous pourriez rechercher dans R le type de NS correspondant et trouver la référence correspondante où l'algorithme correspondant est décrit, trouver une discussion sur l'algorithme, découvrir toutes les nuances des professionnels ... et répondre à Dick au plus haut niveau professionnel, au lieu de marmonner quelque chose d'obscène.


2. le nom R : le langage des statistiques et des graphiques. L'essence de R révèle la rubrique de son appareil de référence.

Voici une liste de sujets que les paquets R couvrent. L'un de ces thèmes est l'apprentissage automatique.

Voici une liste de paquets liés à l'apprentissage automatique.

Il y a quelques années, on pouvait trouver des concurrents de R parmi d'autres langages statistiques spécialisés. Par exemple, SPPS, aujourd'hui je n'en ai trouvé aucun. R est resté le seul langage statistique, soutenu et modéré, a un grand nombre de miroirs, inclus dans les logiciels Microsoft.


3. la comparaison entre R et Python est totalement injustifiée.

R est un langage spécialisé. Python est un langage universel. Python dépasse de loin R en nombre d'utilisateurs, mais l'utilisateur principal de Python est le web design. Le fait que Python dispose de paquets statistiques ne lui permet PAS d'être classé comme un langage statistique. Sur cette base, le C++, dans lequel les paquets utilisés dans R et Python sont implémentés, peut être classé comme un langage statistique. En raison de sa rubrique détaillée et de ses références aux algorithmes des fonctions proposées, R peut être utilisé pour étudier la théorie et la pratique des statistiques, ce qui n'est pas le cas de Python.

Je citerai ici Prado, mais pas textuellement, car j'ai oublié que "l'apprentissage automatique offre davantage de possibilités, par rapport aux statistiques classiques, dans le domaine du commerce"

et que les bibles MO sont très bien développées pour Python, bien que d'autres aiment aussi les modèles statistiques. Il est donc inutile de discuter de ces faits et de prouver quelque chose à l'autre.

D'après moi, R est destiné aux étudiants, aux professeurs et aux amateurs. Vous pouvez donc vous citer les uns les autres et vous vanter de quelque chose. Pour les professeurs, peut-être quelques professeurs qui enseignent. Python pour les projets sérieux et la production. Je n'ai pas entendu parler d'un grand projet de MO en R en production.
 
Maxim Dmitrievsky #:

Je citerai ici Prado, mais pas mot pour mot, car j'ai oublié que "l'apprentissage automatique offre davantage de possibilités, par rapport aux statistiques classiques, dans le domaine du commerce"

et que les bibles MO sont très bien développées pour python, bien que d'autres aiment aussi les modèles statistiques. Il est donc inutile de discuter de ces faits et de prouver quelque chose à l'autre.

D'après moi, R est destiné aux étudiants, aux professeurs et aux amateurs. Vous pouvez donc vous citer les uns les autres et vous vanter de quelque chose. Pour les professeurs, peut-être quelques professeurs qui enseignent. Python pour les projets sérieux et la production. Je n'ai pas entendu parler d'un grand projet de MO en R en production.

Pourquoi discutez-vous de quelque chose que vous dites vous-même ne pas connaître ?

Microsoft a fait des efforts pour faire de R un outil permettant à un grand nombre de développeurs de développer de grands projets.

Voici la liste des produits/services Microsoft qui nous permettront de travailler avec R :
.
  1. Microsoft R Server / R Server for Azure HDInsight
  2. Data Science VM
  3. Azure Machine Learning
  4. SQL Server R Services
  5. Power BI
  6. Outils R pour Visual Studio

Quels sont les hobbyistes et les professeurs qui ont besoin de l'écosystème Microsoft R Server ?



Et des machines virtuelles VM qui permettent d'unifier tout et n'importe quoi ?

Et le service cloud Azura avec ses packages d'apprentissage automatique et ses outils de développement collaboratif ?


R est désormais un système industriel intégré par Microsoft dans ses propres développements et dans ceux qui ne le sont pas.


Et vous êtes "pour les amateurs"...

 
СанСаныч Фоменко #:

Pourquoi spéculez-vous sur quelque chose que vous affirmez vous-même ne pas savoir ?

Microsoft a fait des efforts pour faire de R un outil permettant à un grand nombre de développeurs de développer de grands projets.

Voici la liste des produits/services Microsoft qui nous permettront de travailler avec R :
.
  1. Microsoft R Server / R Server for Azure HDInsight
  2. Data Science VM
  3. Azure Machine Learning
  4. SQL Server R Services
  5. Power BI
  6. Outils R pour Visual Studio

Quel type d'amateur, quel type de professeur a besoin de l'écosystème Microsoft R Server ?



Et des machines virtuelles VM qui permettent d'unifier tout et n'importe quoi ?

Et le service cloud Azura avec ses packages d'apprentissage automatique et ses outils de développement collaboratif ?


R est désormais un système industriel intégré par Microsoft dans ses propres développements et dans ceux qui ne le sont pas.


Et vous êtes "pour les amateurs"...

Il est clair qu'il y a quelque chose à faire.

Je parle d'après mon expérience de communication avec des implémenteurs, y compris de grands implémenteurs, du moins en Russie.

Ils l'ont tous fait en Python.

Microsoft a des sdk pour l'apprentissage automatique en C# et Asure, mais personne ne les utilise.

Vous avez donc réalisé un gros projet en R et l'avez mis sur un serveur. Et qui va le maintenir ? Personne, parce qu'il n'y a pas de spécialistes dans ce domaine et que personne ne veut apprendre R à cause d'une seule statistique.

Pour Python, engagez n'importe quel étudiant pour un bâton de saucisse et tout ira bien.

"personne" est le mot qui signifie que PERSONNE n'écrit en R, sous quelque prétexte que ce soit. Parce qu'il y a Python.

et vous poussez les tradduns à écrire en R pour qu'ils perdent leur temps dans un langage inutile.

 
mytarmailS #:

Il y a aussi la question de savoir ce que l'on entend par trouver le maximum d'une fonction bruyante...

Si j'ai bien compris la définition - "optimisation d'une fonction bruyante" - cela signifie que la fonction est complexe et qu'il est difficile d'en trouver le maximum, que les algorithmes de gradient ne sont pas applicables, et ainsi de suite.... En gros, ce n'est pas grave, vous appliquez un algorithme d'optimisation globale et il recherche le maximum global....


Mais je vois les choses différemment : je veux trouver le maximum d'une fonction bruyante mais débarrassée du bruit, non pas le maximum global d'une fonction bruyante, mais le maximum global d'une fonction débruitée....

(Et ce n'est pas trivial, parce que la fonction n'est pas connue et que les paramètres du bruit ne sont pas connus....)

Vous avez besoin d'informations a priori sur le bruit. De plus, vous avez besoin d'un modèle matriciel clair du bruit - additif, multiplicatif ou autre. Il n'est pas possible de créer un filtre sans modèle. Et ce modèle doit être similaire aux données réelles.

Peut-être devriez-vous vous pencher sur les méthodes de traitement des géodonnées qui fonctionnent avec des données bidimensionnelles ou tridimensionnelles. Ou quelque chose comme la transformée de Fourier, comme dans les images jpg, ou les ondelettes - comme dans la nouvelle version de jpg, ou les splines multidimensionnelles, etc.

 
Maxim Dmitrievsky #:

Je citerais le slogan "combattre et chercher - trouver et cacher".

définir n'importe quel critère comme métrique personnalisée, en particulier les critères standard. L'optimisation se fera toujours en fonction de la perte logarithmique, mais elle s'arrêtera à ces critères personnalisés, ce qui est probablement logique.

et c'est en effet le cas, car l'arrêt au même endroit est toujours basé sur un critère de distribution tel que la précision.

Jusqu'à présent, je suppose, il n'y a que cela. Vous pouvez également élaguer les arbres en fonction d'un critère personnalisé.

 
Maxim Dmitrievsky #:

il est clair qu'"il y a"

Je parle d'expérience en matière de communication avec les responsables de la mise en œuvre, y compris les plus importants, du moins dans la Fédération de Russie.

tout a été fait en Python

microsoft dispose de sdk pour l'apprentissage automatique en C# et Asure, mais personne ne les utilise

Vous avez donc réalisé un gros projet en R et l'avez mis sur le serveur. Personne, parce qu'il n'y a pas de spécialistes dans un si grand nombre de projets et que personne ne veut apprendre R à cause d'une statistique.

Et pour Python, engagez n'importe quel étudiant pour un bâton de saucisse et tout ira bien.

"personne" est le mot pour AUCUNE des personnes qui écrivent en R, sous quelque prétexte que ce soit. Parce qu'il y a Python.

et vous poussez les tradduns à écrire en R, pour qu'ils perdent leur temps dans un langage inutile.

RF est un mauvais exemple, car il est extrêmement dormant au sens de matstat. Notre forum est rempli de techniciens, mais la plupart d'entre eux ont des idées extrêmement pauvres sur matstat. Dans les instituts, les professeurs enseignent matstat dans Excel) Tout cela caractérise très mal notre école scientifique et technique - les solutions sérieuses de l'époque de l'URSS sont bien plus souvent achetées toutes faites à l'étranger, plutôt que développées dans le pays.

 
Aleksey Nikolayev #:

Il a été correctement répondu que vous avez besoin d'informations a priori sur le bruit. En outre, vous avez besoin d'un modèle matriciel clair du bruit - additif, multiplicatif ou autre. Il n'est pas possible de créer un filtre sans modèle. Et ce modèle doit être similaire aux données réelles.

Peut-être devriez-vous vous pencher sur les méthodes de traitement des géodonnées qui fonctionnent avec des données bidimensionnelles ou tridimensionnelles. Ou quelque chose comme la transformée de Fourier, comme dans les images jpg, ou les ondelettes - comme dans la nouvelle version de jpg, ou les splines multidimensionnelles, etc.

Je peux créer un modèle sans problème, n'importe quelle décomposition, même l'ACP, et continuer...

Mais qu'en est-il des données ? elles n'existent pas, c'est une fonction inconnue, et même multidimensionnelle....

TOUTES les données sont les points épars des résultats de la recherche AO (si on les enregistre).

Ce n'est pas une série temporelle, il n'y a pas de structure ou d'ordre.

 
Aleksey Nikolayev #:

RF est un mauvais exemple, parce qu'il est extrêmement stupide au sens de matstat. Notre forum est rempli de technologues, mais la plupart d'entre eux ont des idées extrêmement pauvres sur les statistiques mathématiques. Dans les instituts, les professeurs enseignent matstat dans Excel) Tout cela caractérise très mal notre école scientifique et technique - les solutions sérieuses de l'époque de l'URSS sont bien plus souvent achetées toutes faites à l'étranger, plutôt que développées dans le pays.

Excel leur sera plus utile plus tard dans la vie :D

 
mytarmailS #:

Je peux créer un modèle sans problème, n'importe quelle décomposition, même l'ACP, et aller de l'avant.

Mais les données n'existent pas, c'est une fonction inconnue, et elle est multidimensionnelle...

Les données sont les points épars de la recherche AO (si vous les sauvegardez).

Ce n'est pas une série chronologique, il n'y a pas de structure ou d'ordre.

La première chose qui me vient à l'esprit est de diviser l'espace par une grille dont les cellules ne sont ni trop grandes ni trop petites (la taille est déterminée par le modèle de bruit). Commencez par une cellule (choisie au hasard, par exemple) - quelques points dans cette cellule déterminent la direction du gradient de la fonction lissée et passez à la cellule suivante, et ainsi de suite jusqu'à ce qu'il n'y ait plus de transition ou de bouclage. La position de l'extremum est fixée avec précision en fonction de la taille de la cellule, de sorte qu'elle ne doit pas être trop grande, mais en même temps elle doit donner la possibilité d'un lissage, de sorte qu'elle n'est pas trop petite. Nous devons accepter le fait qu'il n'y a pas de position exacte de l'extremum en principe, car elle varie en fonction de la méthode de lissage.