[PYTHON] J'ai créé une application d'estimation de l'entraînement musculaire à l'aide du SDK Qore

tl;dr

stratégie

Collecte de données

―― Voici les données brutes de l'accélération réellement mesurée.

image.png

--Muscle abdominal

image.png

--S'accroupir

image.png

image.png

«C'est périodique, et j'ai obtenu de plus belles données que je ne m'y attendais.

Prétraitement des données

Apprentissage et raisonnement

client = WebQoreClient(username=username, 
                       password=password, 
                       endpoint=endpoint)   

--Apprenez ci-dessous

res = client.classifier_train(X=X_train, Y=y_train)
print(res)
# {'res': 'ok', 'train_time': 7.2200915813446045}

――L'apprentissage s'est terminé en 7,2 secondes environ --Assez tôt --Test (inférence)

res = client.classifier_test(X=X_test, Y=y_test)
print(res)
{'accuracy': 0.9964285714285714, 'f1': 0.9964301018846474, 'res': 'ok'}

--La précision est de 0,9964

Régression linéaire, comparaison avec un apprentissage profond simple

Impressions que j'ai essayé d'utiliser

--SDK était simple et facile à utiliser ――La précision était élevée, mais la régression linéaire et la MLP ont également donné une précision suffisante.

Ci-dessous, ce que j'ai étudié et organisé

L'algorithme de Qore

L'article suivant (1er jour du calendrier de l'Avent) a une brève explication.

[Le monde de l'informatique de réservoir ~ Avec Qore ~ --Qiita](https://qiita.com/ryoppippi/items/f607c8828238094eade0#qore%E3%81%AB%E3%81%A4%E3%81%84%E3% 81% A6)

C'est une application du calcul des réservoirs et a été légèrement modifiée.

Obtenez un modèle très précis même avec une petite taille de réservoir en l'améliorant à plusieurs reprises indépendamment et en développant un mécanisme unique non seulement pour l'intérieur du réservoir mais aussi pour le prétraitement et le post-traitement.

Il paraît que.

Cela semble-t-il basé sur l'article suivant? Van der Sande, Guy & Brunner, Daniel & Soriano, Miguel. (2017). Advances in photonic reservoir computing. Nanophotonics. 6. 561-576. 10.1515/nanoph-2016-0132.

Je veux le lire quand j'en ai le temps.

Code de procédure spécifique

Le notebook jupyter a été publié dans le référentiel suivant. Consultez les scripts README et notebook pour obtenir des instructions.

GitHub - hnishi/muscle_QoreSDK_AdvCal2019

Ce que vous pouvez faire avec le SDK Qore

--Tâche de classification de classification

――Parce que c'est un gros problème, je voulais utiliser toutes les fonctionnalités du SDK Qure. ――Je souhaite que vous puissiez détecter les points de changement et les anomalies.

Lien vers le document officiel

advent repo GitHub --qcore-info / advent-calendar-2019: Apprentissage automatique et technologies appliquées autres que l'apprentissage en profondeur par QuantumCore Advent Calendar 2019

QoreSDK doc QoreSDK 0.1.0 documentation

2019/12/22 postscript

Featurizer le rend encore plus précis

L'extraction de caractéristiques est effectuée par décomposition de fréquence de sorte que le nombre de classes soit de 40.

n_filters = 40
featurizer = Featurizer(n_filters)
X = featurizer.featurize(X, axis=2)

La précision QoreSDK pour les données de test est ci-dessous

acc= 1.0 f1= 1.0 elapsed_time:52.20956110954285[sec]

Le résultat est une précision de 1.

Au contraire, la régression logistique et le MLP sont moins précis qu'avant d'utiliser Featurizer.

===LogisticRegression(Using Sklearn)===
elapsed_time:0.2480778694152832[sec]
acc= 0.6291666666666667
f1= 0.630372638509498
===MLP(Using Sklearn)===
elapsed_time:8.673331499099731[sec]
acc= 0.95
f1= 0.9502859082452324

Ajout de l'état sans entraînement musculaire

Ajout de l'état d'entraînement non musculaire à la classe de tâches de classification. (Les données ont été collectées à titre de contrôle lors de la préparation du déjeuner.) Encore une fois, la précision était de 1.

Cliquez ici pour le cahier utilisé pour le travail. https://github.com/hnishi/muscle_QoreSDK_AdvCal2019/blob/master/muscle_QoreSDK_v2.ipynb

Valider avec les données nouvellement acquises

Créez un ensemble de données différent de celui utilisé au moment de l'apprentissage avec le rouleau de muscle abdominal. Une inférence a été faite en utilisant ces données.

Cliquez ici pour le cahier utilisé pour le travail. https://github.com/hnishi/muscle_QoreSDK_AdvCal2019/blob/master/muscle_QoreSDK_v2.ipynb

En conséquence, l'exactitude de ces données de vérification est la suivante

Avec le QoreSDK, le taux de réponse correcte était d'environ 70%. Afin d'améliorer la précision, il semble nécessaire d'étendre et d'apprendre divers modèles de données d'apprentissage pour chaque élément d'entraînement musculaire.

Recommended Posts

J'ai créé une application d'estimation de l'entraînement musculaire à l'aide du SDK Qore
J'ai fait un Line-bot avec Python!
Débutant: j'ai créé un lanceur à l'aide d'un dictionnaire
〇✕ J'ai fait un jeu
J'ai effectué un processus de connexion / déconnexion en utilisant Python's Bottle.
J'ai créé une application de notification de nouvelles en ligne avec Python
J'ai créé un jeu d'introduction au festival scolaire avec Ren'py
J'ai créé un lecteur de flux rapide en utilisant feedparser en Python
J'ai fait une putain d'application qui ne te laisse pas sauter
J'ai fait un modèle VGG16 en utilisant TensorFlow (en chemin)
J'ai fait un robot discord
J'ai créé Chatbot en utilisant l'API LINE Messaging et Python
J'ai créé un jeu appelé Battle Ship en utilisant pygame et tkinter
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow - (1) Introduction
J'ai créé un classificateur de visage Dir en gray en utilisant l'extraction de visage TensorFlow-④
J'ai créé un chat-holdem de serveur de jeu de poker en utilisant websocket avec python
J'ai créé Chatbot en utilisant l'API LINE Messaging et Python (2) ~ Server ~
[Kaggle] J'ai fait une collection de problèmes en utilisant le didacticiel Titanic
J'ai créé un site d'apprentissage C ++
J'ai créé un script de traduction basé sur CUI (2)
J'ai fait un wikipedia gacha bot
J'ai créé un script de traduction basé sur CUI
J'ai créé un démon avec Python
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow - Test de classification de visage
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow --⑥ Programme d'apprentissage
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow --⑧ Exécution d'apprentissage
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow --⑦ Modèle d'apprentissage
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow --② Construction de l'environnement
Création d'un modèle de discrimination d'image (cifar10) à l'aide d'un réseau neuronal convolutif
J'ai créé un nouveau compartiment AWS S3
J'ai créé un docset de tableau de bord pour Holoviews
J'ai fait un programme de gestion de la paie en Python!
J'ai touché "Orator" alors j'ai fait une note
J'ai fait un compteur de caractères avec Python
J'ai essayé de jouer au jeu ○ ✕ en utilisant TensorFlow
J'ai créé une application d'analyse de fréquence en ligne
J'ai essayé de dessiner une ligne en utilisant une tortue
J'ai fait un interlocuteur comme Siri
J'ai fait un script pour afficher des pictogrammes
J'ai fait une carte hexadécimale avec Python
J'ai fait un jeu de vie avec Numpy
J'ai fait un générateur Hanko avec GAN
J'ai créé un outil d'estampage automatique du navigateur.
Après avoir étudié Python3, j'ai créé un Slackbot
J'ai essayé d'utiliser pipenv, alors prenez note
J'ai fait un jeu rogue-like avec Python
J'ai fait un simple blackjack avec Python
J'ai créé un fichier de configuration avec Python
J'ai fait une bibliothèque pour l'assurance actuarielle
J'ai fait une application WEB avec Django
J'ai fait un simulateur de neurones avec Python
J'ai essayé de prédire la détérioration de la batterie lithium-ion en utilisant le SDK Qore
J'ai créé un LINE BOT qui renvoie une image de riz terroriste en utilisant l'API Flickr
J'ai créé une commande appdo pour exécuter des commandes dans le contexte de l'application
J'ai créé un classificateur de visage Dir en gray en utilisant TensorFlow - Préparation de la version Web
J'ai fait un script pour enregistrer la fenêtre active en utilisant win32gui de Python