Experts: Exemple d'utilisation d'un modèle ONNX pour reconnaître des chiffres manuscrits

 

Exemple d'utilisation d'un modèle ONNX pour reconnaître des chiffres manuscrits:

Cet Expert Advisor ne fait pas de transactions. Un simple panneau, implémenté à l'aide de la bibliothèque standard Canvas, vous permet de dessiner des chiffres à l'aide de la souris. Le modèle mnist.onnx formé est utilisé pour reconnaître les chiffres.

Exemple d'utilisation d'un modèle ONNX pour reconnaître des chiffres manuscrits

Auteur : Slava

 
Je comprends qu'en matière de commerce, il sera utile d'identifier les configurations graphiques d'une manière différente des configurations ZZ, ce qui peut même améliorer la qualité des configurations trouvées.
 
J'ai regardé la réalisation de Canvas avec intérêt, merci. Est-il exact que la complexité de calcul de ce modèle ONNX pour la reconnaissance d'images est égale à la complexité de calcul de l'apprentissage divisée par le nombre d'échantillons d'apprentissage ?
 

Bien. Les 9 sont moins reconnaissables

cela n'a pas d'importance, car le prix ne tourne pas en rond ;)

Il reconnaît les chiffres linéaires et c'est très bien.

peut être utile pour la classification des formes

 

value 7 predicted with probability 0.9998406767845154
Le modèle est très rapide - OnnxRun est exécuté en 100 microsecondes.
 
fxsaber #:
Est-il exact que la complexité de calcul de ce modèle ONNX pour la reconnaissance d'images est égale à la complexité de calcul de l'apprentissage divisée par le nombre d'échantillons d'apprentissage ?

Également divisée par environ 2. Au cours du processus d'apprentissage, en plus de la fonction de progression, la fonction de rétropropagation (rétropropagation) est appelée.

Environ 2 fois, parce que la fonction d'activation et la fonction dérivée de la fonction d'activation peuvent avoir une complexité de calcul différente.

 
Slava #:

Également divisé par environ 2. Dans le processus d'apprentissage, en plus de la fonction de propagation vers l'avant, la fonction de propagation vers l'arrière est appelée.

Approximativement par 2, parce que la fonction d'activation et la fonction dérivée de la fonction d'activation peuvent avoir une complexité de calcul différente.

Il s'avère que même sur un seul cœur, l'apprentissage a duré moins de 10 secondes. Cela semble très rapide.

Je me demande quel est le nombre de poids dans le modèle. Il est probablement beaucoup plus primitif que les réseaux neuronaux des organismes les plus simples.

 
fxsaber #:

Il s'avère que même sur un seul cœur, l'entraînement a duré moins de 10 secondes. C'est assez rapide.

Je me demande combien de poids il y a dans le modèle. Il est probablement beaucoup plus primitif que les réseaux neuronaux des organismes les plus simples.

C'est rapide parce que le modèle est primitif. Il faut également garder à l'esprit que l'apprentissage ne se fait pas en une seule fois. Il faut au moins 15 époques, en mélangeant à chaque fois 60 000 images. C'est donc vraiment très rapide.

Le nombre de poids entre les couches est le produit de la taille des couches. Des informations sur les couches de mnist.onnx peuvent être trouvées dans netrona