La première étape de l'apprentissage automatique ~ Pour ceux qui veulent essayer l'implémentation avec python ~

Début de l'apprentissage automatique à partir de la première partie

introduction

Bonjour. Je m'appelle mizutakawater et je serai membre de la société à partir d'avril 2020. J'aime le baseball et la crosse. J'apprends à renforcer l'apprentissage dans mes recherches de fin d'études, mais l'apprentissage automatique! Intelligence artificielle! AI! N'y a-t-il rien qui l'explique de manière facile à comprendre? J'ai ressenti cela. (En premier lieu, je pense souvent que les livres académiques et les livres techniques d'ingénieurs sont trop hostiles aux débutants par rapport aux études littéraires. Est-ce la culture des ingénieurs de dire des choses faciles à comprendre incompréhensibles? ??) ← Il semble avoir été tué par un ingénieur qualifié

Au fait, _C'est vraiment facile à comprendre pour les débutants (← concept important) _Introduction de l'apprentissage automatique, j'aimerais utiliser python! !! Il peut y avoir des différences dans les détails, mais je poursuivrai des recherches faciles à comprendre, comme un ingénieur issu des arts libéraux.

introduction

Termes dont vous voulez vous souvenir

C'est un mot soudain, mais je dois le supporter car il n'y en a que deux (rires). Même si vous ne vous souvenez pas des mots, il n'y a pas de problème si vous ne comprenez que le contour.

Aperçu Notation(Douane)
Variable explicative Données utilisées pour la prédiction, également appelées quantité de caractéristiques X
Variable objective Valeurs numériques et données que vous souhaitez prédire y

Exemple: Prédire le temps de course de 100 m (variable objective) à partir de la taille, du poids et de l'âge (variable explicative) des athlètes d'athlétisme

Types d'apprentissage automatique

L'apprentissage automatique peut être divisé en trois catégories principales! Immédiatement, j'apprendrai en utilisant les variables explicatives et les variables objectives qui sont sorties plus tôt (également en tant que revue)

―― 1 Apprendre avec un enseignant

Variable explicative(X)Variable objective utilisant(y)Prédire.
Corriger les données de réponse(Variable explicative)Préparez les données que vous souhaitez à partir de là(Variable objective)Image à prédire

―― 2 Apprendre sans professeur

Prédire ce que la variable objective elle-même est bonne à partir de la variable explicative lorsque la variable objective est inconnue

―― 3 Renforcer l'apprentissage

Le programme apprend seul de meilleurs choix

Cette fois, le concept est __ facile à comprendre pour tout le monde, alors apprenons-en à l'apprentissage supervisé, qui est à la base des bases! L'apprentissage non supervisé et l'apprentissage amélioré sont des programmes différents!

Dans l'apprentissage de l'apprentissage supervisé

Il existe deux types d'apprentissage supervisé.

type Contenu Exemple
Revenir Prédiction numérique Prédiction du temps de fonctionnement à 100 m
Classification Prédiction de catégorie Prédiction d'homme ou de femme

Il y a des mots qui semblent difficiles à renvoyer, comme la classification, → En fin de compte, c'est la différence entre prédire les nombres (= régression) et prédire les attributs (= classification)!

Maintenant, apprenons tout en pratiquant __Return __ of __Teacher Learning __!

Entraine toi

Prédiction numérique

Tout d'abord un problème simple. Réfléchissons

Il y a A ~ D. Leur taille et leur poids sont les suivants. M. A: 40 kg, 150 cm M. B: 50 kg, 160 cm M. C: 60 kg, 170 cm M. D: 70 kg, 180 cm

Alors, quelle est la taille de M. E, qui pèse 55 kg (peut être prédit)?

question1

Probablement, connectez les quatre lignes avec une ligne droite comme indiqué sur la figure, et cette ligne droite ne chevauche que 55 kg! !! !! Oui, 165 cm! Je pense que c'est comme ça. C'est la formule du premier ordre pour x (celle que j'ai apprise en 1!), Et ça ressemble à ça dans la formule.

y(la taille) = x(poids) + 110

C'est vraiment facile, c'est vrai. Et cette ligne droite est la fonction objective pour prédire la variable objectif. __ L'apprentissage automatique (retour) est presque l'objectif de trouver cette fonction objective __! (Il existe différentes approches pour différents algorithmes, mais ignorez-les! Je suis désolé!) Parce que «Si vous connaissez la formule de cette ligne droite, vous pouvez trouver la hauteur en remplaçant X = 55» C'est facile Mais je ne pense pas qu'il existe des données aussi pratiques!

Donc, ce sera long, alors la prochaine fois, apprenons à trouver la fonction objectif quand les données (variable explicative) sont plus compliquées ~ (Oh, quel est le but? Le but est __ d'en savoir plus sur le retour de l'apprentissage automatique supervisé __! Comment prédire la taille d'une personne pesant 55 kg alors que les variables explicatives sont un peu plus compliquées? ?? Je suis content si vous comprenez l'histoire ~)

C'est la fin de la partie 1 de la section théorie. Ce qui suit est l'implémentation du code par python.

Implémentation du graphe ci-dessus par python!

Nous avons également chanté __ en utilisant __python comme thème, alors apprenons à créer ce graphique. C'est peut-être parfait pour les débutants! Puisque c'est pour les débutants, commençons par construire l'environnement! (La mise en œuvre à grande échelle de l'apprentissage automatique par python sera mise en œuvre la prochaine fois!)

Environnement

--Environnement utilisé: Anaconda, MacOs --Editeur, environnement d'exécution: Jupyter Notebook

Avantages de l'utilisation d'Anaconda et Jupyter Notebook

Anaconda est un outil qui vous permet de gérer facilement l'environnement d'exécution de Pytho. Construire l'environnement pour le premier obstacle à la programmation. Vous pouvez le faire rapidement avec Anaconda. Il n'y a aucun moyen de ne pas en profiter.

Installation d'Anaconda

Ici, allez sur la page d'accueil officielle et installez-la, pas le terminal.

https://www.anaconda.com/distribution/#macos

Suivez les instructions à l'écran pour installer, mais installez la version python3 au lieu de python2. Si vous vous perdez, veuillez vous référer à cette page Installation d'Anaconda

Ouvrez JupyterNoteBook et passez à la page ci-dessous et vous avez terminé!

Voici le code à implémenter dans l'éditeur ci-dessus

#Importation du module dans le graphe mural
import matplotlib.pyplot as plt
#Définition de variables explicatives
X = [40, 50, 60, 70]
#Définition de la variable objectif
y = [x+110 for x in X]
#Murale graphique
#Instanciation de graphe
plt.figure(facecolor="w", figsize=(8, 6))
#la grille(Engrener)Mettre en
plt.grid(True)
#La taille et le poids de chaque personne
plt.scatter(X, y)
plt.scatter(55, 165, color="red")
#Ligne droite rose de la fonction objectif
plt.plot(X, y, color="pink")

#Présentation du graphique
plt.xlabel("weight(kg)")
plt.ylabel("height(cm)")
plt.title("predict")
# plt.savefig("Chemin du répertoire que vous souhaitez enregistrer"/Nom du fichier que vous souhaitez enregistrer") #Si vous souhaitez enregistrer le graphique

Maintenant, si vous appuyez sur quelque chose comme le bouton de lecture en haut à gauche, le graphique devrait être affiché!

À la fin Prochain avis

Cette fois, j'ai appris l'introduction de "Learn Machine Learning", la construction d'un environnement d'exécution de programmation et l'implémentation de graphiques simples. Je les ai tous écrits que j'aurais aimé avoir. la prochaine fois

Recommended Posts

La première étape de l'apprentissage automatique ~ Pour ceux qui veulent essayer l'implémentation avec python ~
La première étape pour ceux qui sont amateurs de statistiques mais qui souhaitent implémenter des modèles d'apprentissage automatique en Python
Pour ceux qui souhaitent démarrer l'apprentissage automatique avec TensorFlow2
Pour ceux qui veulent écrire Python avec vim
Technique Python pour ceux qui veulent se débarrasser des débutants
Pour vous qui regardez soudainement le journal tout en apprenant avec l'apprentissage automatique ~ Entraînement musculaire avec LightGBM ~
Résumé du flux de base de l'apprentissage automatique avec Python
Bilan du premier défi du machine learning avec Keras
Pour ceux qui veulent apprendre Excel VBA et se lancer avec Python
5 raisons pour lesquelles le traitement est utile pour ceux qui veulent se lancer avec Python
Alignez le nombre d'échantillons entre les classes de données pour l'apprentissage automatique avec Python
Construction d'environnement pour ceux qui veulent étudier Python facilement avec VSCode (pour Mac)
Je suis un amateur le 14e jour de python, mais je veux essayer l'apprentissage automatique avec scicit-learn
Résumé des sites et des procédures d'apprentissage qui seront utiles pour ceux qui essaient de créer des jeux avec pygame pour la première fois
Quel type d'environnement les personnes qui apprennent Python pour la première fois devraient-elles créer?
Je veux sortir le début du mois prochain avec Python
Comment utiliser l'apprentissage automatique pour le travail? 01_ Comprendre l'objectif de l'apprentissage automatique
Amplifiez les images pour l'apprentissage automatique avec Python
[Shakyo] Rencontre avec Python pour l'apprentissage automatique
Une introduction à Python pour l'apprentissage automatique
Une procédure de création d'environnement moderne pour ceux qui veulent se lancer immédiatement avec Python
[Phrase courte] easygui pour ceux qui veulent utiliser une interface graphique simple avec Python très facilement
Prenons la version gratuite "Introduction à Python pour l'apprentissage automatique" en ligne jusqu'au 27/04
Signifie mémo lorsque vous essayez de faire de l'apprentissage automatique avec 50 images
Mémo d'apprentissage Python pour l'apprentissage automatique par Chainer jusqu'à la fin du chapitre 2
[Python] Introduction facile à l'apprentissage automatique avec python (SVM)
L'histoire selon laquelle le coût d'apprentissage de Python est faible
[Python] Collectez des images avec Icrawler pour l'apprentissage automatique [1000 feuilles]
100 coups de traitement du langage pour ceux qui ne comprennent pas la signification des phrases à problèmes
Rejoignez Azure avec Go ~ Pour ceux qui veulent démarrer et connaître Azure avec Go ~
Ce que vous voulez mémoriser avec la grammaire de base de "manipulation de chaînes" de python
Remarque: Comment obtenir le dernier jour du mois avec python (ajouté le premier jour du mois)
GTUG Girls + PyLadiesTokyo Meetup Je suis allé au premier machine learning
Mémo d'apprentissage Python pour l'apprentissage automatique par Chainer Chapitres 11 et 12 Introduction à Pandas Matplotlib
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
Je veux hériter de l'arrière avec la classe de données python
Prédire le sexe des utilisateurs de Twitter grâce à l'apprentissage automatique
Préparation au démarrage de «Python Machine Learning Programming» (pour macOS)
La première étape pour obtenir Blender disponible à partir de Python
Points ennuyeux pour ceux qui veulent présenter Ansible
Prédire le temps objectif d'un marathon complet avec l'apprentissage automatique-③: j'ai essayé de visualiser les données avec Python-
Pour ceux qui débutent en programmation mais qui ont décidé d'analyser les données avec Python
J'ai essayé de créer un environnement d'apprentissage automatique avec Python (Mac OS X)
Apprentissage automatique avec Python! Préparation
Commencer avec l'apprentissage automatique Python
J'ai essayé de trouver l'entropie de l'image avec python
Je souhaite spécifier une autre version de Python avec pyvenv
Essayez d'évaluer les performances du modèle d'apprentissage automatique / de régression
Le résultat de l'apprentissage automatique des ingénieurs Java avec Python www
La première API à créer avec le framework Python Djnago REST
La première étape de la création d'une application sans serveur avec Zappa
Essayez d'évaluer les performances du modèle d'apprentissage automatique / de classification
Comment utiliser l'apprentissage automatique pour le travail? 03_Procédure de codage Python
[Python] Je souhaite utiliser l'option -h avec argparse
Comment augmenter le nombre d'images de jeux de données d'apprentissage automatique
Essayez d'automatiser le fonctionnement des périphériques réseau avec Python
J'ai essayé d'implémenter ListNet d'apprentissage de rang avec Chainer