Je suis un amateur le 14e jour de python, mais je veux essayer l'apprentissage automatique avec scicit-learn

C'est juste un blog

Chose que tu veux faire

J'ai des données d'enseignant comme une table, et je veux créer un programme d'apprentissage automatique qui prédit s'il s'agit d'un programmeur ou non lorsque des fonctionnalités sont données et jouer avec

sexe âge Métier
Homme 28 Programmeur
femme 20 Pas un programmeur
Homme 32 Programmeur
Homme 67 Pas un programmeur
femme 8 Programmeur
sexe âge Métier
femme 28 ?

connaissance

L'apprentissage automatique peut être globalement divisé en apprentissage supervisé et apprentissage non supervisé, et ce que je veux faire cette fois, ce sont ceux avec un enseignant. Il y a ** régression ** et ** classification ** dans la méthode d'apprentissage automatique supervisé, et celle qui devrait être utilisée cette fois est la classification (je pense). ** La régression ** semble être utilisée pour prédire les nombres à partir des données, ** La classification ** semble être utilisée pour prédire la classification à partir des données Je veux classer si je suis programmeur ou non en fonction du sexe et de l'âge.

environnement

python 2.7.10 scikit-learn 0.19.0

Essayez d'utiliser scikit-learn

Il semble que scikit-learn dispose d'un exemple de jeu de données qui sert de données pour les enseignants, je vais donc l'utiliser pour le moment. スクリーンショット 2017-09-01 17.31.53.png

J'essaierai d'utiliser l'iris. Ce sont les données de la fleur appelée Ayame. Le flux entraîne les données des variétés d'iris qui sont associées aux données de la quantité de caractéristiques, Si vous donnez une quantité caractéristique et prédisez la classification (variété), vous atteindrez l'objectif pour le moment

learn_iris.py


from sklearn import datasets
#Lire des exemples de données
iris = datasets.load_iris()

iris.data est la quantité de données d'échantillons iris.target correspond aux données de classification

>>> iris.data  #Données de fonction Sepal(Ferraille), Petal(pétale)Largeur de, Petal(pétale)Longueur de
array([[ 5.1,  3.5,  1.4,  0.2],
       [ 4.9,  3. ,  1.4,  0.2],
       [ 4.7,  3.2,  1.3,  0.2],
       [ 4.6,  3.1,  1.5,  0.2],
       [ 5. ,  3.6,  1.4,  0.2],
       ...,
       [ 5.9,  3. ,  5.1,  1.8]])

>>> iris.target  #Données des variétés associées à la quantité de caractéristiques(Types d'iris) 0:"setosa”, 1:“versicolor”, 2:“virginica”
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
       0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
       1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
       2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
       2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])

Il apprendra avec la méthode fit Si vous donnez un montant de fonction avec la méthode de prédiction, elle prédira le type.

Je ne sais pas ce que fait svm.SVC (). Cela semble être un modèle d'apprentissage d'apprentissage supervisé appelé machine à vecteurs de support.

Cette fois, je vais donner la quantité de caractéristiques de setosa et essayer de la classer correctement

learn_iris.py


from sklearn import datasets
#Lire des exemples de données
iris = datasets.load_iris()

#Apprentissage
clf = svm.SVC()
clf.fit(iris.data, iris.target)

#Donnez les caractéristiques setosa et essayez de les classer correctement
test_data = [[ 5.1,  3.5,  1.4,  0.2]]
print(clf.predict(test_data))

résultat


[0]

Ils l'ont classé en toute sécurité!

Essayez de jouer

Créez des données sur les enseignants en vous basant sur le tableau du début et demandez à une femme de 28 ans d'estimer si elle est programmeuse

learn_pg.py


from sklearn import datasets, svm
#Données sur les fonctionnalités[0:Homme 1:femme,âge]
feature = [
    [0, 28],
    [1, 20],
    [0, 32],
    [0, 67],
    [1, 8]
]
#Corriger les données de réponse 0:Pas un programmeur 1:Programmeur
job = [1, 0, 1, 0, 1]

#Données prédictives Femme 28 ans
test_data = [[1, 28]]

#Apprentissage
clf = svm.SVC()
clf.fit(feature, job)

print("Programmeur" if clf.predict(test_data)[0] else "Programmeurじゃない")

résultat


Programmeur

Cela semble être un programmeur! Il semble que vous puissiez choisir un modèle d'apprentissage et connaître le taux de réponse correct pour chaque modèle, mais pour le moment, c'est la fin. Même une personne qui n'avait ni connaissance de Python ni connaissance de l'apprentissage automatique pouvait faire de l'apprentissage automatique.

Recommended Posts

Je suis un amateur le 14e jour de python, mais je veux essayer l'apprentissage automatique avec scicit-learn
Je souhaite envoyer Gmail avec Python, mais je ne peux pas en raison d'une erreur
La première étape de l'apprentissage automatique ~ Pour ceux qui veulent essayer l'implémentation avec python ~
Je souhaite extraire une URL arbitraire de la chaîne de caractères de la source html avec python
Je souhaite utiliser Python dans l'environnement de pyenv + pipenv sous Windows 10
Je veux hériter de l'arrière avec la classe de données python
Je veux AWS Lambda avec Python sur Mac!
Résumé du flux de base de l'apprentissage automatique avec Python
Je veux tracer les informations de localisation de GTFS Realtime sur Jupyter! (Avec ballon)
Un moyen simple de remplir le début de 0 en fonction du nombre de chiffres dans le nombre [Python]
J'ai essayé de créer un environnement d'apprentissage automatique avec Python (Mac OS X)
Le 15e temps réel hors ligne, j'ai essayé de résoudre le problème de l'écriture avec python
J'en ai marre de Python, alors j'ai essayé d'analyser les données avec nehan (je veux aller vivre même avec Corona) -Partie 2)
La première étape pour ceux qui sont amateurs de statistiques mais qui souhaitent implémenter des modèles d'apprentissage automatique en Python
J'en ai marre de Python, alors j'ai essayé d'analyser les données avec nehan (je veux aller vivre même avec Corona) -Partie 1)
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
Essayez d'évaluer les performances du modèle d'apprentissage automatique / de classification
[Python] Je souhaite utiliser l'option -h avec argparse
[Apprentissage automatique] J'ai essayé de résumer la théorie d'Adaboost
Je veux connaître la nature de Python et pip
[Pour les débutants] Je souhaite expliquer le nombre d’apprentissage d’une manière facile à comprendre.
J'ai créé une API avec Docker qui renvoie la valeur prédite du modèle d'apprentissage automatique
SVM essayant l'apprentissage automatique avec scikit-learn
Je veux déboguer avec Python
Je veux connaître la météo avec LINE bot avec Heroku + Python
Je veux vérifier la position de mon visage avec OpenCV!
J'ai essayé d'améliorer l'efficacité du travail quotidien avec Python
J'ai essayé de créer Othello AI avec tensorflow sans comprendre la théorie de l'apprentissage automatique ~ Introduction ~
J'ai essayé de créer Othello AI avec tensorflow sans comprendre la théorie de l'apprentissage automatique ~ Implémentation ~
[Python] J'ai visualisé les paroles d'Arashi avec WordCloud et j'ai essayé de démêler ce que je voulais transmettre aux fans en 20e année de formation.
[Python] J'ai essayé de visualiser la nuit du chemin de fer de la galaxie avec WordCloud!
Mettez Cabocha 0.68 dans Windows et essayez d'analyser la dépendance avec Python
Je veux le faire avec Python lambda Django, mais je vais m'arrêter
J'ai installé Python 3.5.1 pour étudier l'apprentissage automatique
Remarque Python: lorsque vous souhaitez connaître les attributs d'un objet
Essayez d'imaginer les données d'élévation du National Land Research Institute avec Python
J'ai essayé de sortir la liste rpm de la destination de connexion SSH sur une feuille Excel avec Python + openpyxl.
Je veux expliquer en détail la classe abstraite (ABCmeta) de Python
J'ai essayé d'obtenir le code d'authentification de l'API Qiita avec Python.
Je veux analyser les journaux avec Python
Je veux jouer avec aws avec python
Je veux colorer une partie de la chaîne Excel avec Python
J'ai essayé avec les 100 meilleurs packages PyPI> J'ai essayé de représenter graphiquement les packages installés sur Python
J'ai essayé de rationaliser le rôle standard des nouveaux employés avec Python
J'ai essayé de visualiser le modèle avec la bibliothèque d'apprentissage automatique low-code "PyCaret"
Une introduction à Python pour l'apprentissage automatique
Signifie mémo lorsque vous essayez de faire de l'apprentissage automatique avec 50 images
Je souhaite arrêter la suppression automatique de la zone tmp dans RHEL7
J'ai essayé d'obtenir les informations sur le film de l'API TMDb avec Python
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
J'ai commencé l'apprentissage automatique avec Python (j'ai également commencé à publier sur Qiita) Préparation des données
Essayez de piquer la base de données sur IBM i avec python + JDBC à l'aide de JayDeBeApi
J'ai essayé de créer Othello AI avec tensorflow sans comprendre la théorie de l'apprentissage automatique ~ Battle Edition ~
Essayez de mesurer la position d'un objet sur le bureau (système de coordonnées réel) à partir de l'image de la caméra avec Python + OpenCV
Le fichier édité avec vim était en lecture seule, mais je veux le sauvegarder