
Questo è un articolo relativamente breve. In esso, utilizzerò uno scenario del mondo reale come esempio per spiegare come utilizzarlo Espressioni espressionenum in array Numpy multidimensionali per ottenere miglioramenti sostanziali delle prestazioni.
Non ci sono molti articoli che spiegano come utilizzare Numexpr negli array Numpy multidimensionali e come utilizzare le espressioni Numexpr, quindi spero che questo ti possa aiutare.
Recentemente, mentre rivedevo alcuni dei miei vecchi lavori, mi sono imbattuto in questo pezzo di codice:
def predict(X, w, b):
z = np.dot(X, w)
y_hat = sigmoid(z)
y_pred = np.zeros((y_hat.shape(0), 1))for i in range(y_hat.shape(0)):
if y_hat(i, 0) < 0.5:
y_pred(i, 0) = 0
else:
y_pred(i, 0) = 1
return y_pred
Questo codice trasforma i risultati della previsione da probabilità in risultati di classificazione pari a 0 o 1 nel modello di regressione logistica dell’apprendimento automatico.
Ma cielo, chi userebbe a for loop
ripetere su Numpy ndarray?
Puoi prevedere che quando i dati raggiungono una certa quantità, non solo occuperanno molta memoria, ma anche le prestazioni saranno inferiori.
Esatto, la persona che ha scritto questo codice ero io quando ero più giovane.
Con senso di responsabilità, oggi ho intenzione di riscrivere questo codice con la libreria Numexpr.
Lungo il percorso, ti mostrerò come utilizzare Numexpr e Numexpr where
espressione in array Numpy multidimensionali per ottenere miglioramenti significativi delle prestazioni.
Se non hai familiarità con l’utilizzo di base di Numexpr, puoi fare riferimento a questo articolo:
Fonte: towardsdatascience.com