Machen Sie sich eine Notiz von Grund auf neu, damit Sie nicht vergessen, was Sie nach dem Lesen von Deep Learning 2 verstanden haben. Zum Beispiel
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
Wenn ja Wenn a = b Wenn a [...] = b ist, ist das Ergebnis von a dasselbe, Es heißt ** "flache Kopie" ** und ** "tiefe Kopie" **, und die Art und Weise, wie sie kopiert werden, ist unterschiedlich. In ** flache Kopie ** zeigt a bei Betrachtung des Speichers, wenn a = b, auf dieselbe Position wie der Speicher von b, so dass a denselben Wert wie b anzeigt. Das heißt, a und b zeigen auf dieselbe Position. Im Vergleich dazu ist in ** Deep Copy ** die Zahl [1, 2, 3] an der Speicherposition, auf die ursprünglich hingewiesen wurde Ersetzen Sie durch [4, 5, 6]. Ich denke, dass dies eine Substitution ist, die allgemein vorgestellt wird.
Was ist der Unterschied zwischen ihnen? Wenn Sie eine ** flache Kopie ** erstellen, zeigen a und b auf denselben Speicherort. Wenn Sie also den Wert eines der beiden ändern, ändert sich der Wert des anderen entsprechend. Andererseits funktioniert ** Deep Copy ** nicht zusammen, da sie auf unterschiedliche Speicherorte verweisen.
Recommended Posts