小编Mat*_*ora的帖子

自定义损失函数中的张量索引

基本上,我希望我的自定义损失函数在通常的 MSE 和从不同索引中减去值的自定义 MSE 之间交替。

为了澄清,假设我有一个 [1, 2, 4, 5] 的 y_pred 张量和一个 [2, 5, 1, 3] 的 y_true 张量。在通常的 MSE 中,我们应该得到:

return K.mean(K.squared(y_pred - y_true))
Run Code Online (Sandbox Code Playgroud)

这将执行以下操作:

[1, 2, 4, 5] - [2, 5, 1, 3] = [-1, -3, 3, 2]

[-1, -3, 3, 2]² = [1, 9, 9, 4]

平均值([1, 9, 9, 4]) = 5.75

我需要我的自定义损失函数来选择这个平均值和其他从 y_pred 张量切换索引 1 和 3 之间的最小值,即:

[1, 5, 4, 2] - [2, 5, 1, 3] = [-1, 0, 3, 1]

[-1, 0, 3, …

neural-network keras tensorflow

7
推荐指数
1
解决办法
3061
查看次数

带有函数的参数和指针在C中的函数内部

我在尝试将指针用作另一个函数内的函数的参数时遇到了一些麻烦.我的目标是在每个函数中保留变量'counter'的值,换句话说,当最低函数声明'counter ++'时,它的值必须为程序中的每个其他'counter'变量递增.

我的代码看起来像这样:

int main(int argc, const char * argv[]) {

    Hash tableHash;
    char command[6];
    int id = 0, counter = -1;
    int flags[4] = {0, 0, 0, 0};

    while(1) {
         identifyCommand(command, id, &tableHash, flags, &counter);
    }

    return 0;
    }
Run Code Online (Sandbox Code Playgroud)

在我的.h内:

void identifyCommand(char* command, int id, Hash* tableHash, int* flag, int* counter){

    scanf("%s", command);

    /* ... */

    if(strcmp(command, "INSERT") == 0){
        scanf("%i", &id);
        commandInsert(id, tableHash, counter, flag);
    }

    /* ... */

    return;
}

void commandInsert(int id, Hash* tableHash, int* counter, …
Run Code Online (Sandbox Code Playgroud)

c parameters pointers function dereference

1
推荐指数
1
解决办法
614
查看次数