Von nun an werde ich die wissenschaftliche Berechnungsbibliothek, die beim maschinellen Lernen verwendet wird, in mehreren Artikeln erläutern. Diesmal ist Numpy Edition. Wir werden uns auf die Funktionen konzentrieren, die beim maschinellen Lernen verwendet werden, nicht auf das Ganze.
Außerdem werde ich den Code in Jupyter Notebook schreiben, also Beachten Sie, dass es sich anders verhält als die Eingabeaufforderung.
version
import numpy as np
np.__version__
#'1.16.4'
Numpy ist eine Bibliothek, die mehrdimensionale Array-Daten verarbeitet. Dies ist sehr praktisch, wenn Sie mit mehreren Arrays und Matrizen arbeiten. Wenn Sie die Berechnung der Matrix verstehen, wird sie reibungslos eingehen. (Ich war in der Prozession unreif, also lernte ich beim Betrachten von Mathematiklehrbüchern. Ich rechne manchmal auf Papier.)
Numpy importieren
import numpy as np
Numpy übersetzt oft in den Modulnamen ** np **. (Ich habe keine anderen Modulnamen gesehen.)
Array-Definition
a = np.array([1,2,3,4,5])
# []Vergiss nicht
Ausgabe
>>>a
array([1, 2, 3, 4, 5])
>>>print(a)
[1 2 3 4 5]
>>>type(a) #Typbestätigung
numpy.ndarray
Zum Zeitpunkt der Mehrfachanordnung
>>>b = np.array([[1,2,3,4,5],[6,7,8,9,10]])
>>>b
array([[ 1, 2, 3, 4, 5],
[ 6, 7, 8, 9, 10]])
>>>print(b)
[[ 1 2 3 4 5]
[ 6 7 8 9 10]]
Zeilen / Spalten anzeigen
>>>a.shape
(5,)
>>>b.shape
(2,5)
np.Erstellen Sie automatisch Elemente mit Bereich
>>>np.arange(1,10,2)
array([1, 3, 5, 7, 9])
>>>np.arange(2,11,2)
array([ 2, 4, 6, 8, 10])
np.Konvertieren Sie die Matrix mit Umformung
>>>d = np.arange(1,11,1)
array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>>d.shape #Zeigen Sie die Form des Arrays mit Form an
(10,)
>>>d.reshape(2,5) #2 Zeilen x 5 Spalten
array([[ 1, 2, 3, 4, 5],
[ 6, 7, 8, 9, 10]])
>>>d.reshape(5,2) #5 Zeilen x 2 Spalten
array([[ 1, 2],
[ 3, 4],
[ 5, 6],
[ 7, 8],
[ 9, 10]])
>>>d.reshape(10,1) #10 Zeilen x 1 Spaltenmatrix
array([[ 1],
[ 2],
[ 3],
[ 4],
[ 5],
[ 6],
[ 7],
[ 8],
[ 9],
[10]])
np.Sie können dies auch mit Anordnen und Umformen tun
>>>np.arange(1,10).reshape((3,3))
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Sie können auch zwischen Arrays berechnen. Stellen Sie jedoch sicher, dass das von Ihnen berechnete Array mit der Anzahl der Zeilen und Spalten übereinstimmt.
Arithmetik
>>>x = np.array([1.0,2.0,3.0])
>>>y = np.array([4.0,5.0,6.0])
>>>x+y
array([5., 7., 9.])
>>>x*y
array([ 4., 10., 18.])
>>>x-y
array([-3., -3., -3.])
>>>x/y
array([0.25, 0.4 , 0.5 ])
Sie können direkt auf den internen Daten des Arrays berechnen. Das innere Produkt kommt beim maschinellen Lernen immer zum Tragen. Lernen wir also, wie es funktioniert. Passen Sie für die inneren Produkte A und B die Anzahl der Spalten in A an die Anzahl der Zeilen in B an.
Matrix Produkt(Innenprodukt, Punktprodukt)
>>>z = np.array([1,2,3])
>>>z.shape
(3,)
>>>v =np.array([[2],[3],[4]])
>>>v.shape
(3, 1)
>>>np.dot(z,v)
array([20])
Innenprodukt
>>>e = np.array([[1,2,3],[4,5,6]])
>>>e
array([[1, 2, 3],
[4, 5, 6]])
>>>f =np.array([[3,3],[3,3],[3,3]])
>>>f
array([[3, 3],
[3, 3],
[3, 3]])
np.dot(e,f)
array([[18, 18],
[45, 45]])
Diesmal habe ich einen einfachen Teil von Numpy geschrieben. Als nächstes werde ich den Berechnungsmechanismus des neuronalen Netzwerks unter Verwendung der Matrix schreiben.
Recommended Posts