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

什么是向量化?

之前计算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 ),它们十分擅长并行计算,也就是说,运用向量化,可以充分发挥计算机的性能

相关推荐
房产中介行业研习社12 分钟前
2026年1月房产中介管理系统排名
大数据·人工智能
沛沛老爹24 分钟前
Web转AI架构篇 Agent Skills vs MCP:工具箱与标准接口的本质区别
java·开发语言·前端·人工智能·架构·企业开发
ZKNOW甄知科技35 分钟前
IT自动分派单据:让企业服务流程更智能、更高效的关键技术
大数据·运维·数据库·人工智能·低代码·自动化
OpenCSG37 分钟前
如何通过 AgenticOps x CSGHub 重塑企业 AI 生产力
人工智能
Nautiluss1 小时前
一起调试XVF3800麦克风阵列(十四)
linux·人工智能·音频·语音识别·dsp开发
地瓜伯伯1 小时前
elasticsearch性能调优方法原理与实战
人工智能·elasticsearch·语言模型·数据分析
ZCXZ12385296a1 小时前
YOLO13改进模型C3k2-SFHF实现:阻尼器类型识别与分类系统详解
人工智能·分类·数据挖掘
黑客思维者1 小时前
2025年AI垃圾(AI Slop)现象综合研究报告:规模、影响与治理路径
人工智能·搜索引擎·百度
Aspect of twilight1 小时前
QwenVL 模型输入细节
人工智能·qwen
悟纤1 小时前
Suno 电子舞曲创作指南:102 个实用 Prompt 精选 | Suno高级篇 | 第20篇
人工智能·prompt·suno·suno ai·suno api·ai music