Heim  >  Artikel  >  Backend-Entwicklung  >  Interpretation von Numpy-Versionsaktualisierungen: neue Funktionen und verbesserte Leistung

Interpretation von Numpy-Versionsaktualisierungen: neue Funktionen und verbesserte Leistung

WBOY
WBOYOriginal
2024-01-19 10:11:05564Durchsuche

Interpretation von Numpy-Versionsaktualisierungen: neue Funktionen und verbesserte Leistung

Mit der kontinuierlichen Weiterentwicklung von Datenwissenschaft und Deep Learning ist Python eine der Mainstream-Programmiersprachen, und auch seine wissenschaftliche Computerbibliothek Numpy wird ständig innoviert. Numpy hat kürzlich eine neue Version veröffentlicht, die einige neue Funktionen und Leistungsverbesserungen enthält. In diesem Beitrag tauchen wir tief in die neue Version von Numpy ein und stellen einige ihrer wichtigen Funktionen und Verbesserungen vor.

  1. Verbesserungen der Shuffle-Funktion

Vor Numpy 1.17.0 ordnete die Shuffle-Funktion die Array-Elemente in zufälliger Reihenfolge neu an. Da sich die Implementierung der Shuffle-Funktion jedoch vom Standard-Zufallsalgorithmus unterscheidet, kann sie unter bestimmten Umständen die Leistung beeinträchtigen. In Numpy 1.17.0 wurde die Shuffle-Funktion aktualisiert, um einen neuen Zufallsalgorithmus zu verwenden, der ihre Leistung und Zufälligkeit verbessert.

Hier ist ein Beispielcode, der zeigt, wie die Shuffle-Funktion in Numpy 1.17.0 verwendet wird:

import numpy as np

# 创建一个有序数组
arr = np.arange(10)

# 将数组随机排序
np.random.shuffle(arr)

print(arr)

Ausgabeergebnisse:

[2 6 5 7 0 9 3 1 4 8]
  1. Neue Methode der Array-Deduplizierung

Numpy 1.13.0 Version führt eine neue Array-Deduplizierungsmethode ein unique kann Duplikate schneller und einfacher verarbeiten. In früheren Versionen verwendete Numpy die Sortierfunktion, um ein Array zu sortieren, bevor Duplikate entfernt wurden. Allerdings kann dieser Ansatz bei der Arbeit mit großen Arrays zu Leistungseinbußen führen. In Numpy 1.13.0 verwendet die Unique-Funktion einen Hash-Tabellen-Algorithmus, der eine bessere Leistung beim Umgang mit Duplikaten bietet.

Hier ist ein Beispielcode, der zeigt, wie die Unique-Funktion in Numpy 1.13.0 verwendet wird:

import numpy as np

# 创建一个有重复项的数组
arr = np.array([1, 2, 3, 2, 4, 1, 5, 6, 4])

# 去掉数组中的重复项
arr = np.unique(arr)

print(arr)

Ausgabeergebnis:

[1 2 3 4 5 6]
  1. Neue Methode der Array-Zuweisung

Numpy 1.16.0 Version führt eine neue Array-Zuweisungsmethode ein at kann die Elemente des Arrays schneller und direkter ändern. In früheren Versionen verwendete Numpy Schleifen für Array-Änderungen, was zu Leistungseinbußen führte. In Numpy 1.16.0 ist die at-Funktion in C-Code implementiert und weist eine höhere Leistung auf.

Hier ist ein Beispielcode, der zeigt, wie die at-Funktion in Numpy 1.16.0 verwendet wird:

import numpy as np

# 创建一个3x3的数组
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# 使用at函数修改数组元素
np.add.at(arr, [0, 1, 2], 1)

print(arr)

Ausgabeergebnisse:

[[ 2  3  4]
 [ 5  6  7]
 [ 8  9 10]]
  1. Neue Methoden für Array-Berechnungen

Numpy 1.14.0 Version führt einige neue Array-Berechnungsmethoden ein, einschließlich Matmul, Einsum und Tensordot. Diese Methoden erleichtern die Durchführung von Aufgaben wie Matrixberechnungen und Tensorberechnungen. In früheren Versionen erforderte Numpy die Verwendung verschiedener Funktionen, um diese Aufgaben zu erfüllen, aber die neue Methode macht es schneller und einfacher.

Das Folgende ist ein Beispielcode, der zeigt, wie die Matmul-Funktion für Matrixberechnungen in Numpy 1.14.0 verwendet wird:

import numpy as np

# 创建两个矩阵
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

# 使用matmul函数计算矩阵积
c = np.matmul(a, b)

print(c)

Ausgabeergebnisse:

[[19 22]
 [43 50]]
  1. Leistungsverbesserungen

Zusätzlich zu den oben genannten neuen Funktionen gibt es die neuen Version von Numpy Enthält auch einige Leistungsverbesserungen. Die bedeutendsten Verbesserungen liegen unter anderem beim Array-Kopieren und der Array-Ansicht. In früheren Versionen erforderte Numpy zusätzliche Kopiervorgänge zum Erstellen von Array-Ansichten, was zu Leistungseinbußen führte. In den neuesten Versionen hat Numpy die Leistung verbessert, indem eine schnellere Methode zum Erstellen von Array-Ansichten verwendet wurde. Darüber hinaus hat numpy auch die Transponierungsoperation, die in1d-Funktion und die Sortierfunktion usw. optimiert und gute Leistungsverbesserungen erzielt.

Zusammenfassend lässt sich sagen, dass die neue Version von Numpy einige wichtige neue Funktionen und Leistungsverbesserungen enthält, die Numpy komfortabler und effizienter machen. Wenn Sie mit großen Arrays umgehen oder Datenwissenschafts- und Deep-Learning-Aufgaben durchführen müssen, sollten Sie unbedingt ein Upgrade auf die neueste Version von Numpy durchführen, um eine bessere Leistung und Funktionalität zu erzielen.

Das obige ist der detaillierte Inhalt vonInterpretation von Numpy-Versionsaktualisierungen: neue Funktionen und verbesserte Leistung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn