Что такое векторизация в NumPy?

Middle
299 просмотров
AFK Offer AI

Векторизация — замена Python циклов на NumPy операции, выполняемые в C. Плохо: for i in range(len(a)): result[i] = a[i] * b[i]. Хорошо: result = a * b. Ускорение в 10-100 раз. np.where(condition, x, y) вместо if/else в цикле. np.sum(), np.mean(), np.max() — агрегация без циклов. np.vectorize() — обёртка Python функции, но не настоящая векторизация (медленнее). Universal functions (ufunc): np.sin(), np.exp() — поэлементные операции. Правило: если пишешь цикл по массиву NumPy — ты делаешь что-то не так.

Следующий вопрос

Как работают serializers в DRF?