深度学习记录--初识向量化

什么是向量化?

之前计算logistic回归损失函数时,在代码实现时,讨论了for循环:过多的for循环会拖慢计算的速度(尤其当数据量很大时)

因此,为了加快计算,向量化是一种手段

运用pythonnumpy 库,我们可以使用库函数,这些函数一般可以并行计算(类似矩阵计算),加快计算的速度

向量化的作用

向量化能加快计算速度,能加快多少呢?

下面是一个例子:

要计算百万量级数组的相乘,运用numpy 里的**np.dot()**函数计算,大大加快计算速度(相较于for循环)

python 复制代码
import numpy as np
import time

a = np.random.rand(10000000)
b = np.random.rand(10000000)

tic = time.time()
c = np.dot(a,b)
toc = time.time()

print(c)
print("vectorized version: " + str(1000*(toc-tic)) + "ms")

c = 0
tic = time.time()
for i in range(10000000):
    c += a[i]*b[i]
toc = time.time()

print(c)
print("for loop: " + str(1000*(toc-tic)) + "ms")

运行结果如下:

可以看到,运用函数只需要5ms 不到就可以完成计算,而for循环需要2100ms才可以完成计算

向量化加快计算的原因

numpy里的np,dot函数实际运用了并行计算的方法

对于计算机的GPU (Graphics Processing Unit )和CPU (Central Processing Unit ),它们十分擅长并行计算,也就是说,运用向量化,可以充分发挥计算机的性能

相关推荐
AdCj35 分钟前
OpenAI 如何安全运行 Codex:Agent 时代的“AI 安全操作系统
人工智能·安全
Vwms5 分钟前
2026年电商行业WMS系统选型指南
大数据·人工智能·产品运营
Bnews14 分钟前
机器人高精度轨迹定位设备选型指南:赋能前沿科研创新
人工智能
nashane14 分钟前
HarmonyOS 6学习:Navigation Dialog模式与智能Web长截图融合实践
人工智能·pytorch·python
月光技术杂谈20 分钟前
拆解中国移动AI-eSIM:当一张SIM卡开始“调用大模型”,运营商到底在赌什么?
人工智能·esim·安全认证·中国移动·ai-esim·tocken·大模型调度
用户43305141438121 分钟前
CLI 和 REPL 工作流
人工智能
xiaoxiaoxiaolll22 分钟前
Nature Communications:三维超原子库+原子层保护,突破全彩VR超透镜量产瓶颈
人工智能·算法
用户43305141438123 分钟前
编写一个最基本的 ReAct Agent
人工智能
用户51914958484525 分钟前
WordPress Portfolleo 插件漏洞利用工具 (CVE-2024-49653)
人工智能·aigc
俊哥V26 分钟前
每日 AI 研究简报 · 2026-05-13
人工智能·ai