使用tf.train

问题描述

当我尝试在我的代码中实现此功能tf.train.stg(learningRate).minimize(loss)以便进行反向传播时。我遇到了多个错误,例如在variableGrads(f)中传递的f必须是一个函数。我如何将上述功能成功实现到下面的代码中?为什么会出现此错误?

神经网络:

var X = tf.tensor([[1,2,3],[4,5,6],[7,8,9]])
    var Y = tf.tensor([[0,1]])
    var m = X.shape[0]
    var a0 = tf.zeros([1,3])

    var parameters = {
        "Wax": tf.randomUniform([3,3]),"Waa": tf.randomUniform([3,"ba": tf.zeros([1,"Wya": tf.randomUniform([3,"by": tf.zeros([1,3])
    }

   

    function RNN_cell_Foward(xt,a_prev,parameters){
        var Wax = parameters["Wax"]
        var Waa = parameters["Waa"]
        var ba = parameters["ba"]

        var a_next = tf.sigmoid(tf.add(tf.add(tf.matMul(xt,Wax),tf.matMul(a_prev,Waa)),ba) )

        return a_next
    }
    function RNN_FowardProp(X,a0,parameters){
        var T_x  = X.shape[0]
        var a_next = a0
        var i = 1
        var Wya = parameters["Wya"]
        var by = parameters["by"]
        
        for(; i <= T_x; i++){
            var xt = X.slice([i-1,0],[1,-1])
            a_next = RNN_cell_Foward(xt,a_next,parameters)
        }
        var y_pred = tf.sigmoid(tf.add(tf.matMul(a_next,Wya),by))
      return y_pred
    }
    const learningRate = 0.01;
    var optimizer = tf.train.sgd(learningRate);
    var model = RNN_FowardProp(X,parameters)
    var loss = tf.losses.meanSquaredError(Y,model)



    for (let i = 0; i < 10; i++) {
        optimizer.minimize(loss)
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...