L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 75

 
Yury Reshetov:

C'est pourquoi Dr. Trader n'a pas pu exécuter une libVMR complète réécrite en R - trop de calculs et trop de consommation de mémoire.

J'avais une erreur dans mon code dans la fonction de conversion des grands noyaux. Atach a la même vieille version 3.01 mais avec des corrections. La mémoire est maintenant ok, ainsi que le gros noyau. Mais il sera plus lent que java.

Dossiers :
libVMR.txt  12 kb
 
Dr. Trader:

J'avais un bug dans mon code dans la fonction de conversion des grands noyaux. Atach a la même vieille version 3.01, mais avec un correctif. La mémoire est OK maintenant, ainsi que la grosse machine à noyaux. Mais la vitesse est plus lente qu'en java.

Le plus dégoûtant, c'est que la vitesse est en dessous de la plinthe.

De plus, libVMR est un classificateur binaire, ce qui n'est pas bon. Ternary peut faire un bel objet avec de la merde :

Mihail Marchukajtes:
Dans le prédicteur lui-même, le niveau de généralisation des données est de 90 %, mais dans le modèle non chargé, il n'est que de 47 %. Ce n'est pas clair..... Et cela n'a pas encore fonctionné dans MQL.....
C'est-à-dire que le classificateur binaire ne généralise que 47% des exemples, ce qui est bien pire que le hasard - 50%. Et le ternaire filtre les déchets, obtenant déjà une capacité de généralisation de 90% sur les exemples restants.
 
J'ai lentement augmenté le niveau de généralisation du modèle à 100%, voyons comment cela fonctionne dans le futur :-)
 
Mihail Marchukajtes:
Lentement, j'ai augmenté le niveau de généralisation du modèle jusqu'à 100%, voyons comment cela fonctionne dans le futur :-)

La généralisation à 100% n'est pas la limite. Nous pouvons encore l'améliorer en sélectionnant les prédicteurs par biais. Si deux classificateurs ternaires ont une capacité de généralisation de 100%, mais des biais différents, alors le classificateur avec le biais le plus faible sera meilleur - il a plus de prédicteurs significatifs.

Plus le biais est faible, moins les exemples de l'échantillon de test sont marqués d'un tiret (incertitude).

 
Yury Reshetov:

La généralisation à 100% n'est pas la limite. Nous pouvons encore améliorer ce résultat en sélectionnant les prédicteurs par biais. Si deux classificateurs ternaires ont une généralisabilité de 100% mais des biais différents, le classificateur avec le biais le plus faible sera le meilleur, car il a plus de prédicteurs significatifs.

Plus le biais est faible, moins les exemples de l'échantillon de test sont marqués par des tirets (incertitude).

LLongtemps j'ai été intéressé et je peux dire que j'ai été perplexe par la question. Que signifie le paramètre Indicateur de Reshetov et sa signification ? Qu'est-ce que ça veut dire ? Et le biais est égal à zéro dans ma formation à 100% de généralisation...
 
Mihail Marchukajtes:
Je m'interroge et me demande depuis longtemps. Que signifie l'indicateur du paramètre de Reshetov et qu'est-ce qu'il signifie ? Qu'est-ce que cela signifie ?

Le fait est qu'il s'agit d'un bon indicateur de la capacité d'apprentissage, mais qu'il n'a aucune signification pour la capacité de généralisation. C'est pourquoi je vais le supprimer dans les prochaines versions de jPrediction, afin qu'il ne soit pas une nuisance.

 
Yury Reshetov:

Le fait est qu'il s'agit d'un bon indicateur pour la capacité d'apprentissage, mais qu'il n'a aucun sens pour la capacité de généralisation. C'est pourquoi dans les prochaines versions de jPrediction je le supprimerai pour le rendre moins gênant.

Yuri, une question. Le prédicteur peut-il donner des probabilités au lieu de classes ?
 
Je me demande si cela va nous aider d'une manière ou d'une autre. https://news.mail.ru/society/26600207/?frommail=10
 
Alexey Burnakov:
Yuri, une question. Un prédicteur peut-il donner des probabilités au lieu de classes ?
Si par probabilité vous entendez le degré d'expression des caractéristiques, alors oui, c'est possible. Mais pas en comité, car il sort soit 0, soit 1, soit -1, mais en binaire. Construisez un modèle t sur l'ensemble du marché et vous verrez comment le modèle saute au-dessus de zéro et plus le zéro est élevé, plus la classe est probable. Mais en termes de pourcentage, ....mmm... à moins que vous ne preniez la valeur maximale comme 100% et que vous calculiez à partir de celle-ci. Supposons que j'ai un signal d'achat et que le modèle est supérieur à zéro avec une valeur de, disons, 0,1, et que la valeur maximale était de 1, je sais que ce signal d'achat a un état de vérité de 10%, comme ceci..... si c'est ce que je pense que c'est....
 
Alexey Burnakov:
Yuri, une question. Un prédicteur peut-il produire des probabilités au lieu de classes ?

Non, les probabilités étaient calculées dans les toutes premières versions de libVMR, mais il y avait un gros problème : tous les prédicteurs doivent être strictement indépendants les uns des autres pour calculer correctement la valeur de la probabilité. Et l'application d'une telle condition dans de nombreux domaines d'application n'est pas du tout réaliste. Par exemple, presque tous les indicateurs et oscillateurs utilisés dans le commerce sont corrélés les uns aux autres, c'est-à-dire qu'ils ne sont pas indépendants. En outre, la condition d'indépendance dans l'algorithme, en son absence dans les données, a un impact négatif sur la capacité de généralisation. Il fallait donc abandonner une telle direction sans issue.

Maintenant, jPrediction ne prête aucune attention à l'indépendance des prédicteurs, mais seulement à la valeur de la généralisabilité. En effet, plusieurs prédicteurs peuvent se compléter, c'est-à-dire que certains exemples donneront de bons résultats pour certains prédicteurs, d'autres pour d'autres, et des combinaisons de prédicteurs pour d'autres. Le calcul des probabilités dans ces conditions peut avoir une marge d'erreur très importante et très discutable.