Python vs Ruby "Deep Learning from scratch" Chapitre 1 Graphique de la fonction sin et de la fonction cos

Aperçu

Ecrivez un programme pour dessiner un graphe sinus-cosinus en Python et Ruby, en vous référant au code du chapitre 1 du livre "Deep Learning from scratch - La théorie et l'implémentation du deep learning appris avec Python".

Environnement

Python

Dans le livre "Deep Learning from scratch", la distribution Anaconda a été installée pour construire l'environnement, mais ici nous n'installerons que numpy et matplotlib avec pip.

Cet environnement.

macOS Sierra + Homebrew + pyenv + Python 3.6.1

Installez NumPy, une bibliothèque de calculs numériques, et Matplotlib, une bibliothèque de dessins de graphiques.

$ pip install numpy matplotlib

Ruby

Cet environnement.

macOS Sierra + Homebrew + rbenv + Ruby 2.4.1

Installez Numo :: NArray, une bibliothèque de tableaux numériques multidimensionnels, et Numo :: Gnuplot, une bibliothèque de dessins de graphes.

$ gem install numo-narray numo-gnuplot

Numo :: Gnuplot utilise Gnuplot, donc installez-le avec Homebrew.

$ brew install gnuplot

Code pour dessiner un graphique de la fonction sin et de la fonction cos

Python

import numpy as np
import matplotlib
matplotlib.use("AGG") #AGG dans la bibliothèque de dessins(Anti-Grain Geometry)utilisation
import matplotlib.pyplot as plt

#Créer des données
x = np.arange(0, 6, 0.1) #0 à 6 0.Générer par incréments de 1
y1 = np.sin(x)
y2 = np.cos(x)

#Sortie des données numériques pour confirmation
print("x:", *x)
print("y1:", *y1)
print("y2:", *y2)

#Dessiner un graphique
plt.figure(figsize=(4, 3), dpi=160) #Taille de l'image
plt.plot(x, y1, label="sin")
plt.plot(x, y2, linestyle = "--", label="cos") #Dessiner avec des lignes brisées
plt.xlabel("x") #étiquette de l'axe des x
plt.ylabel("y") #étiquette de l'axe y
plt.title("sin & cos") #Titre
plt.legend() #Guide d'utilisation
plt.savefig("python_graph.png ")

Ruby

require 'numo/narray'
require 'numo/gnuplot'

#Créer des données
x = Numo::DFloat.new(60).seq(0, 0.1) #0 à 6 0.Générer par incréments de 1
y1 = Numo::DFloat::Math.sin(x)
y2 = Numo::DFloat::Math.cos(x)

#Sortie des données numériques pour confirmation
puts "x: #{x.to_a.join(' ')}"
puts "y1: #{y1.to_a.join(' ')}"
puts "y2: #{y2.to_a.join(' ')}"

#Dessiner un graphique
g = Numo::gnuplot do
  set term: {png: {size: [640, 480]}} #Taille de l'image
  set output: 'ruby_graph.png'
  set title: 'sin \& cos' #Titre
  set key: 'box left bottom'
  set offset: [0, 0, 0, 0]
  plot x, y1, {w: 'lines', lw: 3, title: 'sin'},
       x, y2, {w: 'lines', lw: 3, title: 'cos'}
end

Image de sortie

Python

python_graph.png

Ruby

ruby_graph.png

Matériel de référence

--Python vs Ruby "Deep Learning from scratch" Résumé --Qiita http://qiita.com/niwasawa/items/b8191f13d6dafbc2fede --O'Reilly Japan - Apprendre en profondeur à partir de zéro https://www.oreilly.co.jp/books/9784873117584/ --GitHub --oreilly-japan / deep-learning-from-scratch: Dépôt pour "Deep Learning from scratch" https://github.com/oreilly-japan/deep-learning-from-scratch

Recommended Posts

Python vs Ruby "Deep Learning from scratch" Chapitre 1 Graphique de la fonction sin et de la fonction cos
Python vs Ruby "Deep Learning from scratch" Chapitre 3 Graphique de la fonction step, fonction sigmoid, fonction ReLU
Python vs Ruby "Deep Learning from scratch" Chapitre 4 Implémentation de la fonction de perte
Python vs Ruby "Deep Learning from scratch" Chapitre 3 Implémentation d'un réseau neuronal à 3 couches
Résumé Python vs Ruby "Deep Learning from scratch"
Python vs Ruby «Deep Learning from scratch» Chapitre 2 Circuit logique par Perceptron
Deep Learning from scratch La théorie et la mise en œuvre de l'apprentissage profond appris avec Python Chapitre 3
[Deep Learning from scratch] Implémentation de la méthode Momentum et de la méthode AdaGrad
[Mémo d'apprentissage] Le Deep Learning fait de zéro [Chapitre 7]
Deep learning / Deep learning made from scratch Chapitre 6 Mémo
[Mémo d'apprentissage] Le Deep Learning fait de zéro [Chapitre 6]
Deep learning / Deep learning made from scratch Chapitre 7 Mémo
Enregistrement d'apprentissage de la lecture "Deep Learning from scratch"
[Mémo d'apprentissage] Deep Learning fait de zéro [~ Chapitre 4]
Chapitre 1 Introduction à Python Découpez uniquement les bons points de Deeplearning à partir de zéro
Deep Learning from scratch ① Chapitre 6 "Techniques liées à l'apprentissage"
Deep Learning from scratch Chapter 2 Perceptron (lecture du mémo)
À propos des copies superficielles et profondes de Python / Ruby
Apprentissage profond à partir de zéro
Application de Deep Learning 2 à partir de zéro Filtre anti-spam
Apprentissage profond à partir de zéro 1 à 3 chapitres
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 1
Un amateur a trébuché dans le Deep Learning ❷ fait à partir de zéro Note: Chapitre 5
Un amateur a trébuché dans le Deep Learning ❷ fait à partir de zéro Note: Chapitre 2
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 3
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 7
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 5
Un amateur a trébuché dans le Deep Learning ❷ fait de zéro Note: Chapitre 1
Un amateur a trébuché dans le Deep Learning ❷ fait à partir de zéro Note: Chapitre 4
Un amateur a trébuché dans le Deep Learning à partir de zéro.
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 2
Chapitre 3 Réseau de neurones Ne découpez que les bons points de Deeplearning à partir de zéro
Mémo d'auto-apprentissage "Deep Learning from scratch" (partie 8) J'ai dessiné le graphique du chapitre 6 avec matplotlib
Chapitre 2 Implémentation de Perceptron Ne découpez que les bons points de Deeplearning à partir de zéro
Deep learning / Deep learning made from scratch Chapitre 3 Mémo
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 5 Mémo
Apprentissage profond à partir de zéro (calcul des coûts)
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 7 Mémo
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 8 Mémo
Écrivez vos impressions sur l'édition du framework Deep Learning 3 créée à partir de zéro
Deep learning / Deep learning made from scratch Chapitre 5 Mémo
Deep learning / Deep learning made from scratch Chapitre 4 Mémo
Deep learning / Deep learning from scratch 2 Chapitre 3 Mémo
Mémo d'apprentissage profond créé à partir de zéro
Mémo d'auto-apprentissage «Deep Learning from scratch» (n ° 10-2) Valeur initiale du poids
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 6 Mémo
Réaliser la construction d'environnement pour "Deep Learning from scratch" avec docker et Vagrant
Créez un environnement d'apprentissage pour le «Deep learning from scratch» avec Cloud9 (jupyter miniconda python3)
Apprentissage profond à partir de zéro - Conseils du chapitre 4 pour la théorie de l'apprentissage profond et la mise en œuvre apprise en Python
Apprentissage profond à partir de zéro (propagation vers l'avant)
Notes d'apprentissage depuis le début de Python 1
Signification des modèles et paramètres d'apprentissage en profondeur
Apprentissage profond / Apprentissage profond à partir de zéro 2-Essayez de déplacer GRU
"Deep Learning from scratch" avec Haskell (inachevé)
[Windows 10] Construction de l'environnement "Deep Learning from scratch"
Notes d'apprentissage depuis le début de Python 2
[Deep Learning from scratch] À propos de l'optimisation des hyper paramètres
Mémo d'auto-apprentissage "Deep Learning from scratch" (partie 12) Deep learning
[Python] [Traitement du langage naturel] J'ai essayé le Deep Learning ❷ fait de toutes pièces en japonais ①