[PYTHON] Mémo d'apprentissage automatique d'un ingénieur débutant Partie 1

introduction

Ceci est la partie 1 du mémo d'apprentissage pour "Deep-Learning from scratch".

Opération de tranche facile à oublier

tranche


x=[1,2,3,4,5]
#Affichage complet
x[:]
#1 à 2
x[0:2]
#Passer deux des 1, 3 et 5
x[::2]
#Ordre inverse,-Si défini sur 2, sautez deux de l'opposé
x[::-1]

Correspondance de forme numpy

numpy


#Forme 3x2
A = np.array([[1,2], 
              [3,4],
              [5,6]])
#Forme 2 x 1
B = np.array([7,
              8])
#Calcul du produit intérieur
np.dot(A,B)
>>>array([23,53,83])

Implémentation d'un réseau neuronal (chapitre 3)

monter


from google.colab import drive
drive.mount('/content/drive')

cd drive/My Drive/deep-learning-from-scratch-master/ch03

neuralnet


# coding: utf-8
import sys, os
sys.path.append(os.pardir)  #Paramètres d'importation des fichiers dans le répertoire parent
import numpy as np
import pickle
from dataset.mnist import load_mnist
from common.functions import sigmoid, softmax

neuralnet


def get_data():
    (x_train, t_train), (x_test, t_test) = load_mnist(normalize=True, flatten=True, one_hot_label=False)
    return x_test, t_test

neuralnet


def init_network():
    with open("sample_weight.pkl", 'rb') as f:
        network = pickle.load(f)
    return network

neuralnet


def predict(network, x):
    W1, W2, W3 = network['W1'], network['W2'], network['W3']
    b1, b2, b3 = network['b1'], network['b2'], network['b3']

    a1 = np.dot(x, W1) + b1
    z1 = sigmoid(a1)
    a2 = np.dot(z1, W2) + b2
    z2 = sigmoid(a2)
    a3 = np.dot(z2, W3) + b3
    y = softmax(a3)

    return y

neuralnet


x, t = get_data()
network = init_network()
accuracy_cnt = 0
for i in range(len(x)):
    y = predict(network, x[i])
    p= np.argmax(y) #Obtenez l'index de l'élément le plus probable
    if p == t[i]:
        accuracy_cnt += 1

print("Accuracy:" + str(float(accuracy_cnt) / len(x)))

Traitement par lots (suite au chapitre 3)

Le traitement par lots


x, t = get_data()
network = init_network()

batch_size = 100 #Nombre de lots
accuracy_cnt = 0

#range(start,stop,step)
for i in range(0, len(x), batch_size):
    x_batch = x[i:i+batch_size]
    y_batch = predict(network, x_batch)
    p = np.argmax(y_batch, axis=1)
    accuracy_cnt += np.sum(p == t[i:i+batch_size])

print("Accuracy:" + str(float(accuracy_cnt) / len(x)))

référence

Apprentissage profond à partir de zéro

Recommended Posts

Mémo d'apprentissage automatique d'un ingénieur débutant Partie 1
Mémo d'apprentissage automatique d'un ingénieur débutant Partie 2
[Memo] Apprentissage automatique
Classification des images de guitare par apprentissage automatique Partie 1
Mémo d'étude Python & Machine Learning ⑤: Classification d'Ayame
Mémo d'étude Python & Machine Learning ②: Introduction de la bibliothèque
Mémo du cours d'apprentissage automatique
Classification des images de guitare par apprentissage automatique, partie 2
Touchons une partie de l'apprentissage automatique avec Python
Un jeune ingénieur a réussi le test G, alors notez ce que vous avez appris
Impressions d'avoir obtenu le nano-diplôme Udacity Machine Learning Engineer
Installation de TensorFlow, une bibliothèque d'apprentissage automatique de Google
Mémo de construction d'environnement d'apprentissage automatique par Python
Bases de l'apprentissage automatique (mémoire)
Mémo pratique du système d'apprentissage automatique
Créer un environnement d'apprentissage automatique
Importance des ensembles de données d'apprentissage automatique
Vérification des performances du prétraitement des données pour l'apprentissage automatique (données numériques) (partie 2)
Un résumé de l'apprentissage automatique Python pour débutant est très concis.
Vérification des performances du prétraitement des données pour l'apprentissage automatique (données numériques) (partie 1)
Importance de l'apprentissage automatique et de l'apprentissage par mini-lots
Apprentissage automatique ③ Résumé de l'arbre de décision
Analyse inverse du modèle d'apprentissage automatique
Mémo d'apprentissage "Scraping & Machine Learning avec Python"
Une histoire coincée avec l'installation de la bibliothèque de machine learning JAX
Mémorandum of scraping & machine learning [technique de développement] par Python (chapitre 4)
Mémorandum of scraping & machine learning [technique de développement] par Python (chapitre 5)
Mémo d'étude Python & Machine Learning: Préparation de l'environnement
Algorithme d'apprentissage automatique (généralisation de la régression linéaire)
J'ai changé de travail pour devenir ingénieur en apprentissage automatique chez AtCoder Jobs
Prédire la demande de puissance avec l'apprentissage automatique, partie 2
[Mémo d'apprentissage] Bases de la classe par python
Une compréhension approximative de python-fire et un mémo
Viser à devenir un ingénieur en apprentissage automatique en utilisant des MOOC depuis des postes de vente
Apprendre le latin dans le but d'écrire un programme d'analyse de phrases latines (partie 1)
Une histoire sur l'apprentissage automatique avec Kyasuket
Devenez bientôt un ingénieur IA! Apprenez complètement Python / AI / Machine learning / Deep learning / Analyse statistique en quelques jours!
20 sélections recommandées en 2020 de livres d'introduction à l'apprentissage automatique
Apprentissage automatique
Algorithme d'apprentissage automatique (implémentation de la classification multi-classes)
Mémo d'apprentissage Python pour l'apprentissage automatique par Chainer Chapitre 13 Bases du réseau neuronal
Un mémo expliquant la spécification de l'axe de l'axe
[Apprentissage automatique] Liste des packages fréquemment utilisés
Mémo d'étude Python & Machine Learning ③: Réseau neuronal
Mémo d'étude Python & Machine Learning ④: Machine Learning par rétro-propagation
Mémo sur Sphinx Partie 1 (Création d'un projet)
[Livre d'images sur l'apprentissage automatique] Mémo lorsque l'exercice Python à la fin du livre a été effectué lors de la vérification des données
Mémo d'apprentissage Python pour l'apprentissage automatique par Chainer jusqu'à la fin du chapitre 2
Créer un environnement de développement pour l'apprentissage automatique
Mémo d'étude Python & Machine Learning ⑥: Reconnaissance des nombres
Mémo d'auto-apprentissage "Deep Learning from scratch" (partie 12) Deep learning
Classification EV3 x Pyrhon Machine Learning Partie 3
Version gratuite de DataRobot! ?? Introduction à «PyCaret», une bibliothèque qui automatise l'apprentissage automatique
Prédire les travaux de courte durée de Weekly Shonen Jump par apprentissage automatique (Partie 2: Apprentissage et évaluation)
Une histoire sur l'obtention d'un taux de récupération des courses de chevaux de plus de 100% grâce à l'apprentissage automatique
Apprentissage automatique appris par des ingénieurs système de haut niveau à Coursera (tours 1-2)
Résumé des techniques de commande Linux que je connaissais quand j'étais un ingénieur débutant
Mise en place d'un modèle de prédiction des taux de change (taux dollar-yen) par machine learning