gpt4 book ai didi

python - 加速嵌套循环来操作嵌套列表的每个值

转载 作者:行者123 更新时间:2023-12-01 05:15:29 24 4
gpt4 key购买 nike

我通过将 numpy 矩阵转换为列表生成了一个嵌套列表:

[
[0.65, 0.66, 4.29, 2.91, 0.17, 3.92, 2.24, 0.56, 8.99, 0.34, 0.0],
[0.012, 0.038, 0.072, 0.236, 0.012, 0.258, 0.075, 0.003, 0.0, 0.002, 0.0],
[0.003, 0.039, 0.138, 0.02, 0.002, 0.32, 0.013, 0.001, 0.999, 0.0, 0.0],
[0.154, 0.043, 0.737, 0.475, 0.028, 0.002, 0.485, 0.145, 0.0, 0.035, 0.0],
[0.018, 0.0, 0.019, 0.175, 0.01, 0.0, 0.065, 0.0, 0.0, 0.0, 0.0],
[0.0801, 0.0, 0.6707, 0.1496, 0.0112, 0.0, 0.2668, 0.0798, 0.0, 0.0385, 0.0],
[118.0, 88.0, 120.0, 186.0, 220.0, 146.0, 157.0, 150.0, 50.0, 50.0, 0.0],
[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]
]

我当前正在循环每个元素以执行以下操作:

A1 = A.tolist()

for index, v in enumerate(A1):
for index2, v2 in enumerate(v):
A1[index][index2] = float(v2 + offsets[index]) / norms[index] * priorita[index]

A1 = np.matrix(A1)

由于此操作执行次数超过 3,000,000 次,因此它是我的应用程序的瓶颈。

  1. 有没有 numpy 的原生方法可以帮助我提高性能?
  2. 用 map 替换 enumerate 之类的东西可以帮助我提高性能吗?

请提供示例和文档链接。

谢谢。

最佳答案

在以下假设下,这应该会给出相同的结果。

A1 = (A1+offsets)*(priorita/norms)

假设:

  1. A1:n*m 矩阵
  2. 偏移量:n*1向量
  3. 范数:n*1向量
  4. 优先级:n*1向量
  5. 这些都是numpy.array

关于python - 加速嵌套循环来操作嵌套列表的每个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23305216/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com