gpt4 book ai didi

c++ - 展开恒定数量的论点

转载 作者:行者123 更新时间:2023-11-28 06:23:28 25 4
gpt4 key购买 nike

<分区>

我想在 C++ 上为具有 5 个参数的函数编写一个简单的梯度下降。现在我偶然发现了一个实现模型问题:我是否应该牺牲速度来折叠 vector/数组中的参数。这就是我的意思。我可以像这样实现函数值和梯度计算:

double function(double arg1, double arg2, ..., double arg5);
double functionGradient1(double arg1, double arg2, ..., double arg5);
double functionGradient2(double arg1, double arg2, ..., double arg5);
...
double functionGradient5(double arg1, double arg2, ..., double arg5);

或:

double function(double * args);
double functionGradientAt(double * args, int i);

最后一个更容易实现,但是如果我要不断分配/释放内存,恐怕我会失去很多速度。

我的问题是:

  1. 你会选择哪一个?
  2. 如果您曾经实现过梯度下降法,您是如何处理这种情况的?

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